<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">/*! For license information please see app.0258b72cf706ef50e6e0.js.LICENSE.txt */
(()=&gt;{var e,t,n,r={76637:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;s});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i)()(o());a.push([e.id,'@keyframes c_wave-animation__f0d {\n  from {\n    transform: translateX(-100%);\n  }\n\n  to {\n    transform: translateX(100%);\n  }\n}\n\n.c_waveAnimated__b39 {\n  transition: width 0.6s ease;\n  position: relative;\n  z-index: 1;\n}\n\n.c_waveAnimated__b39::after {\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  animation: c_wave-animation__f0d 2000ms linear infinite;\n  opacity: 0.7;\n  background-image: linear-gradient(\n    to right,\n    rgba(255, 255, 255, 0),\n    var(--ring-content-background-color),\n    rgba(255, 255, 255, 0)\n  );\n  background-repeat: no-repeat;\n  content: "";\n}\n\n.c_container__c03 {\n  overflow: hidden;\n  display: flex;\n  flex-direction: row;\n}\n\n.c_line__fbe {\n  height: 11px;\n  background-color: var(--ring-secondary-color);\n  opacity: 0.2;\n  border-radius: var(--ring-border-radius);\n}\n\n.c_line__fbe:not(:last-child) {\n  margin-right: var(--ring-unit);\n}\n',"",{version:3,sources:["webpack://./../common/components/item-placeholder/item-placeholder.css"],names:[],mappings:"AAAA;EACE;IACE,4BAA4B;EAC9B;;EAEA;IACE,2BAA2B;EAC7B;AACF;;AAEA;EACE,2BAA2B;EAC3B,kBAAkB;EAClB,UAAU;AACZ;;AAEA;EACE,kBAAkB;EAClB,MAAM;EACN,QAAQ;EACR,SAAS;EACT,OAAO;EACP,uDAAgD;EAChD,YAAY;EACZ;;;;;GAKC;EACD,4BAA4B;EAC5B,WAAW;AACb;;AAEA;EACE,gBAAgB;EAChB,aAAa;EACb,mBAAmB;AACrB;;AAEA;EACE,YAAY;EACZ,6CAA6C;EAC7C,YAAY;EACZ,wCAAwC;AAC1C;;AAEA;EACE,8BAA8B;AAChC",sourcesContent:['@keyframes wave-animation {\n  from {\n    transform: translateX(-100%);\n  }\n\n  to {\n    transform: translateX(100%);\n  }\n}\n\n.waveAnimated {\n  transition: width 0.6s ease;\n  position: relative;\n  z-index: 1;\n}\n\n.waveAnimated::after {\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  animation: wave-animation 2000ms linear infinite;\n  opacity: 0.7;\n  background-image: linear-gradient(\n    to right,\n    rgba(255, 255, 255, 0),\n    var(--ring-content-background-color),\n    rgba(255, 255, 255, 0)\n  );\n  background-repeat: no-repeat;\n  content: "";\n}\n\n.container {\n  overflow: hidden;\n  display: flex;\n  flex-direction: row;\n}\n\n.line {\n  height: 11px;\n  background-color: var(--ring-secondary-color);\n  opacity: 0.2;\n  border-radius: var(--ring-border-radius);\n}\n\n.line:not(:last-child) {\n  margin-right: var(--ring-unit);\n}\n'],sourceRoot:""}]),a.locals={waveAnimated:"c_waveAnimated__b39","wave-animation":"c_wave-animation__f0d",container:"c_container__c03",line:"c_line__fbe"};const s=a},19262:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;s});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i)()(o());a.push([e.id,".c_articlesTableWrapper__dce {\n  min-width: 50%;\n  max-width: 100%;\n  position: relative;\n  overflow: auto;\n}\n\n.c_articlesTableWrapper__dce &gt; table {\n  min-width: 100%;\n  margin-bottom: 0;\n}\n\n@media only screen and (min-width: 1800px) {\n  .c_articlesTableWrapper__dce {\n    --content-padding: calc((100vw - 1080px - var(--sidebar-width)) / 2);\n    --content-padding-wide: calc((100vw - 1080px - var(--sidebar-collapsed-width)) / 2);\n\n    min-width: calc(100vw - (var(--sidebar-width) + var(--content-padding)) - 15px);\n  }\n\n  .c_articlesTableWrapper__dce.c_articlesTableWrapperWide__ed6 {\n    min-width: calc(100vw - (var(--sidebar-collapsed-width) + var(--content-padding-wide)) - 15px);\n  }\n}\n","",{version:3,sources:["webpack://./../common/components/markdown/markdown-it-extensions/articles-table-wrapper.css"],names:[],mappings:"AAAA;EACE,cAAc;EACd,eAAe;EACf,kBAAkB;EAClB,cAAc;AAChB;;AAEA;EACE,eAAe;EACf,gBAAgB;AAClB;;AAEA;EACE;IACE,oEAAoE;IACpE,mFAAmF;;IAEnF,+EAA+E;EACjF;;EAEA;IACE,8FAA8F;EAChG;AACF",sourcesContent:[".articlesTableWrapper {\n  min-width: 50%;\n  max-width: 100%;\n  position: relative;\n  overflow: auto;\n}\n\n.articlesTableWrapper &gt; table {\n  min-width: 100%;\n  margin-bottom: 0;\n}\n\n@media only screen and (min-width: 1800px) {\n  .articlesTableWrapper {\n    --content-padding: calc((100vw - 1080px - var(--sidebar-width)) / 2);\n    --content-padding-wide: calc((100vw - 1080px - var(--sidebar-collapsed-width)) / 2);\n\n    min-width: calc(100vw - (var(--sidebar-width) + var(--content-padding)) - 15px);\n  }\n\n  .articlesTableWrapper.articlesTableWrapperWide {\n    min-width: calc(100vw - (var(--sidebar-collapsed-width) + var(--content-padding-wide)) - 15px);\n  }\n}\n"],sourceRoot:""}]),a.locals={articlesTableWrapper:"c_articlesTableWrapper__dce",articlesTableWrapperWide:"c_articlesTableWrapperWide__ed6"};const s=a},14714:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;s});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i)()(o());a.push([e.id,".embedded-iframe {\n  height: 600px;\n  width: 100%;\n  box-sizing: border-box;\n  border: 1px solid var(--ring-borders-color);\n}\n","",{version:3,sources:["webpack://./../common/components/markdown/markdown-it-extensions/attachments.css"],names:[],mappings:"AAAA;EACE,aAAa;EACb,WAAW;EACX,sBAAsB;EACtB,2CAA2C;AAC7C",sourcesContent:[":global(.embedded-iframe) {\n  height: 600px;\n  width: 100%;\n  box-sizing: border-box;\n  border: 1px solid var(--ring-borders-color);\n}\n"],sourceRoot:""}]),a.locals={};const s=a},76945:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;s});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i)()(o());a.push([e.id,".c_container__c89 {\n  position: relative;\n  margin-top: 10px;\n}\n\n.c_container__c89.c_withBanner__d24 {\n  background-color: var(--ring-sidebar-background-color);\n  border-radius: var(--ring-border-radius);\n}\n\n.c_banner__b1b {\n  display: flex;\n  flex-direction: row;\n  padding-top: calc(var(--ring-unit) * 2);\n  padding-bottom: calc(var(--ring-unit) * 1);\n  margin-right: calc(var(--ring-unit) * 2);\n  margin-left: calc(var(--ring-unit) * 2);\n\n  border-bottom: solid 1px var(--ring-line-color);\n}\n\n.c_warningIcon__c35 {\n  padding-top: 2px;\n  margin-right: calc(var(--ring-unit) * 1);\n  color: var(--ring-icon-warning-color);\n}\n\n.c_warningIcon__c35 &gt; svg {\n  fill: currentColor;\n}\n\n.c_container__c89.c_withBanner__d24.c_withBanner__d24 &gt; pre {\n  margin-top: 0;\n}\n","",{version:3,sources:["webpack://./../common/components/markdown/markdown-it-extensions/code-wrapper.css"],names:[],mappings:"AAAA;EACE,kBAAkB;EAClB,gBAAgB;AAClB;;AAEA;EACE,sDAAsD;EACtD,wCAAwC;AAC1C;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,uCAAuC;EACvC,0CAA0C;EAC1C,wCAAwC;EACxC,uCAAuC;;EAEvC,+CAA+C;AACjD;;AAEA;EACE,gBAAgB;EAChB,wCAAwC;EACxC,qCAAqC;AACvC;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,aAAa;AACf",sourcesContent:[".container {\n  position: relative;\n  margin-top: 10px;\n}\n\n.container.withBanner {\n  background-color: var(--ring-sidebar-background-color);\n  border-radius: var(--ring-border-radius);\n}\n\n.banner {\n  display: flex;\n  flex-direction: row;\n  padding-top: calc(var(--ring-unit) * 2);\n  padding-bottom: calc(var(--ring-unit) * 1);\n  margin-right: calc(var(--ring-unit) * 2);\n  margin-left: calc(var(--ring-unit) * 2);\n\n  border-bottom: solid 1px var(--ring-line-color);\n}\n\n.warningIcon {\n  padding-top: 2px;\n  margin-right: calc(var(--ring-unit) * 1);\n  color: var(--ring-icon-warning-color);\n}\n\n.warningIcon &gt; svg {\n  fill: currentColor;\n}\n\n.container.withBanner.withBanner &gt; pre {\n  margin-top: 0;\n}\n"],sourceRoot:""}]),a.locals={container:"c_container__c89",withBanner:"c_withBanner__d24",banner:"c_banner__b1b",warningIcon:"c_warningIcon__c35"};const s=a},65280:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;s});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i)()(o());a.push([e.id,".c_color__d58 {\n  display: inline-flex;\n  align-items: center;\n}\n\n.c_colorBox__d8d {\n  --color-box-size: calc(1.5 * var(--ring-unit));\n\n  margin-left: 1px;\n  display: inline-block;\n  width: var(--color-box-size);\n  height: var(--color-box-size);\n  border: 1px solid var(--ring-line-color);\n  border-radius: calc(2 * var(--ring-border-radius-small));\n}\n","",{version:3,sources:["webpack://./../common/components/markdown/markdown-it-extensions/color/color.css"],names:[],mappings:"AAAA;EACE,oBAAoB;EACpB,mBAAmB;AACrB;;AAEA;EACE,8CAA8C;;EAE9C,gBAAgB;EAChB,qBAAqB;EACrB,4BAA4B;EAC5B,6BAA6B;EAC7B,wCAAwC;EACxC,wDAAwD;AAC1D",sourcesContent:[".color {\n  display: inline-flex;\n  align-items: center;\n}\n\n.colorBox {\n  --color-box-size: calc(1.5 * var(--ring-unit));\n\n  margin-left: 1px;\n  display: inline-block;\n  width: var(--color-box-size);\n  height: var(--color-box-size);\n  border: 1px solid var(--ring-line-color);\n  border-radius: calc(2 * var(--ring-border-radius-small));\n}\n"],sourceRoot:""}]),a.locals={color:"c_color__d58",colorBox:"c_colorBox__d8d"};const s=a},5969:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;s});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i)()(o());a.push([e.id,"/* A container class that marks external integration HTML blocks, where most of our styles should not be applied */\n\n.c_importedHtmlPage__b8a table {\n  all: unset;\n}\n\n.c_importedHtmlPage__b8a.c_importedHtmlPage__b8a table td,\n.c_importedHtmlPage__b8a.c_importedHtmlPage__b8a table th {\n  border: none;\n}\n\n.c_importedHtmlPage__b8a.c_importedHtmlPage__b8a.c_importedHtmlPage__b8a img {\n  min-width: auto;\n  min-height: auto;\n}\n","",{version:3,sources:["webpack://./../common/components/markdown/markdown-it-extensions/markdown-html.css"],names:[],mappings:"AAAA,kHAAkH;;AAElH;EACE,UAAU;AACZ;;AAEA;;EAEE,YAAY;AACd;;AAEA;EACE,eAAe;EACf,gBAAgB;AAClB",sourcesContent:["/* A container class that marks external integration HTML blocks, where most of our styles should not be applied */\n\n.importedHtmlPage table {\n  all: unset;\n}\n\n.importedHtmlPage.importedHtmlPage table td,\n.importedHtmlPage.importedHtmlPage table th {\n  border: none;\n}\n\n.importedHtmlPage.importedHtmlPage.importedHtmlPage img {\n  min-width: auto;\n  min-height: auto;\n}\n"],sourceRoot:""}]),a.locals={importedHtmlPage:"c_importedHtmlPage__b8a"};const s=a},2164:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;s});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i)()(o());a.push([e.id,".c_resolvedTask__d8f {\n  color: var(--ring-secondary-color);\n  -webkit-text-decoration: line-through;\n  text-decoration: line-through;\n  text-decoration-thickness: 1px;\n}\n\n.c_userCardSpaced__f3e {\n  padding: calc(var(--ring-unit) * 2);\n}\n\n.c_entityLinkContainer__a81 {\n  --icon-width: 18px;\n\n  padding-left: 18px;\n\n  padding-left: var(--icon-width);\n}\n\n.c_entityIcon__fb0 {\n  margin-left: calc(-1 * var(--icon-width));\n  padding-right: 4px;\n  color: var(--ring-icon-color);\n  line-height: var(--ring-unit);\n  vertical-align: 1px;\n}\n\n.c_entityLinkContainer__a81:hover .c_entityIcon__fb0 {\n  color: var(--ring-link-hover-color);\n}\n\n.c_error__de0 {\n  color: var(--ring-error-color);\n}\n","",{version:3,sources:["webpack://./../common/components/markdown/markdown-it-extensions/mentions/mentions.css"],names:[],mappings:"AAAA;EACE,kCAAkC;EAClC,qCAA6B;EAA7B,6BAA6B;EAC7B,8BAA8B;AAChC;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,kBAAkB;;EAElB,kBAA+B;;EAA/B,+BAA+B;AACjC;;AAEA;EACE,yCAAyC;EACzC,kBAAkB;EAClB,6BAA6B;EAC7B,6BAA6B;EAC7B,mBAAmB;AACrB;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,8BAA8B;AAChC",sourcesContent:[".resolvedTask {\n  color: var(--ring-secondary-color);\n  text-decoration: line-through;\n  text-decoration-thickness: 1px;\n}\n\n.userCardSpaced {\n  padding: calc(var(--ring-unit) * 2);\n}\n\n.entityLinkContainer {\n  --icon-width: 18px;\n\n  padding-left: var(--icon-width);\n}\n\n.entityIcon {\n  margin-left: calc(-1 * var(--icon-width));\n  padding-right: 4px;\n  color: var(--ring-icon-color);\n  line-height: var(--ring-unit);\n  vertical-align: 1px;\n}\n\n.entityLinkContainer:hover .entityIcon {\n  color: var(--ring-link-hover-color);\n}\n\n.error {\n  color: var(--ring-error-color);\n}\n"],sourceRoot:""}]),a.locals={resolvedTask:"c_resolvedTask__d8f",userCardSpaced:"c_userCardSpaced__f3e",entityLinkContainer:"c_entityLinkContainer__a81",entityIcon:"c_entityIcon__fb0",error:"c_error__de0"};const s=a},60162:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;s});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i)()(o());a.push([e.id,".c_tableWrapper__a48 {\n  min-width: 50%;\n  max-width: 100%;\n  position: relative;\n\n  overflow: auto;\n}\n\n.c_tableWrapper__a48.c_tableWrapper__a48 &gt; table {\n  min-width: 100%;\n  margin-bottom: 0;\n}\n","",{version:3,sources:["webpack://./../common/components/markdown/markdown-it-extensions/table-wrapper.css"],names:[],mappings:"AAAA;EACE,cAAc;EACd,eAAe;EACf,kBAAkB;;EAElB,cAAc;AAChB;;AAEA;EACE,eAAe;EACf,gBAAgB;AAClB",sourcesContent:[".tableWrapper {\n  min-width: 50%;\n  max-width: 100%;\n  position: relative;\n\n  overflow: auto;\n}\n\n.tableWrapper.tableWrapper &gt; table {\n  min-width: 100%;\n  margin-bottom: 0;\n}\n"],sourceRoot:""}]),a.locals={tableWrapper:"c_tableWrapper__a48"};const s=a},59792:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;s});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i)()(o());a.push([e.id,'.c_taskList__a91.c_taskList__a91.c_taskList__a91 {\n  list-style-type: none;\n}\n\n.c_taskList__a91 li {\n  min-height: var(--ring-line-height);\n}\n\n.c_taskList__a91.c_taskList__a91.c_taskList__a91 .c_taskCheckbox__fc5 {\n  position: absolute;\n  margin-left: -24px;\n  margin-right: 8px;\n  margin-top: 4px;\n  vertical-align: top;\n}\n\n.compactUiMode .c_taskList__a91.c_taskList__a91.c_taskList__a91 .c_taskCheckbox__fc5 {\n    margin-top: 2px;\n    margin-left: -22px;\n  }\n\n@supports ((-webkit-appearance: none) or (-moz-appearance: none) or (appearance: none)) {\n  /* Inspired by https://css-tricks.com/custom-styling-form-inputs-with-modern-css-features/ */\n  .c_taskCheckbox__fc5 {\n    position: relative;\n    -webkit-appearance: none;\n       -moz-appearance: none;\n            appearance: none;\n\n    height: 16px;\n    width: 16px;\n    vertical-align: -2px;\n    margin: 0 2px 0 0;\n    cursor: pointer;\n\n    border: 1px solid var(--ring-borders-color);\n    background: var(--ring-content-background-color);\n    border-radius: var(--ring-border-radius-small);\n    transition:\n      background 0.3s, border-color 0.3s;\n\n    -webkit-print-color-adjust: exact;\n    print-color-adjust: exact;\n  }\n\n  .c_taskCheckbox__fc5::after {\n    position: absolute;\n    top: 0.5px;\n    left: 4px;\n    content: "";\n    display: block;\n    transition:\n      transform 0.6s cubic-bezier(0.2, 0.85, 0.32, 1.2), opacity 0.3s;\n    opacity: 0;\n    width: 4px;\n    height: 8px;\n    border: 2px solid var(--ring-content-background-color);\n    border-top: 0;\n    border-left: 0;\n    transform: rotate(43deg);\n  }\n\n  .c_taskCheckbox__fc5:checked {\n    border: 1px solid var(--ring-main-color);\n    background: var(--ring-main-color);\n  }\n\n  .c_taskCheckbox__fc5:checked::after {\n    opacity: 1;\n  }\n\n  .c_taskCheckbox__fc5:disabled {\n    cursor: not-allowed;\n    border: 1px solid var(--ring-border-disabled-color);\n    background: var(--ring-sidebar-background-color);\n  }\n\n  .c_taskCheckbox__fc5:disabled:checked {\n    background: var(--ring-icon-disabled-color);\n  }\n\n  .c_taskCheckbox__fc5:hover:not(:checked):not(:disabled) {\n    background: var(--ring-hover-background-color);\n  }\n}\n',"",{version:3,sources:["webpack://./../common/components/markdown/markdown-it-extensions/task-list.css"],names:[],mappings:"AAAA;EACE,qBAAqB;AACvB;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,kBAAkB;EAClB,kBAAkB;EAClB,iBAAiB;EACjB,eAAe;EACf,mBAAmB;AAMrB;;AAJE;IACE,eAAe;IACf,kBAAkB;EACpB;;AAGF;EACE,4FAA4F;EAC5F;IACE,kBAAkB;IAClB,wBAAgB;OAAhB,qBAAgB;YAAhB,gBAAgB;;IAEhB,YAAY;IACZ,WAAW;IACX,oBAAoB;IACpB,iBAAiB;IACjB,eAAe;;IAEf,2CAA2C;IAC3C,gDAAgD;IAChD,8CAA8C;IAC9C;wCAEmB;;IAEnB,iCAAiC;IAEjC,yBAAyB;EAC3B;;EAEA;IACE,kBAAkB;IAClB,UAAU;IACV,SAAS;IACT,WAAW;IACX,cAAc;IACd;qEAEc;IACd,UAAU;IACV,UAAU;IACV,WAAW;IACX,sDAAsD;IACtD,aAAa;IACb,cAAc;IACd,wBAAwB;EAC1B;;EAEA;IACE,wCAAwC;IACxC,kCAAkC;EACpC;;EAEA;IACE,UAAU;EACZ;;EAEA;IACE,mBAAmB;IACnB,mDAAmD;IACnD,gDAAgD;EAClD;;EAEA;IACE,2CAA2C;EAC7C;;EAEA;IACE,8CAA8C;EAChD;AACF",sourcesContent:['.taskList.taskList.taskList {\n  list-style-type: none;\n}\n\n.taskList li {\n  min-height: var(--ring-line-height);\n}\n\n.taskList.taskList.taskList .taskCheckbox {\n  position: absolute;\n  margin-left: -24px;\n  margin-right: 8px;\n  margin-top: 4px;\n  vertical-align: top;\n\n  :global(.compactUiMode) &amp; {\n    margin-top: 2px;\n    margin-left: -22px;\n  }\n}\n\n@supports (appearance: none) {\n  /* Inspired by https://css-tricks.com/custom-styling-form-inputs-with-modern-css-features/ */\n  .taskCheckbox {\n    position: relative;\n    appearance: none;\n\n    height: 16px;\n    width: 16px;\n    vertical-align: -2px;\n    margin: 0 2px 0 0;\n    cursor: pointer;\n\n    border: 1px solid var(--ring-borders-color);\n    background: var(--ring-content-background-color);\n    border-radius: var(--ring-border-radius-small);\n    transition:\n      background 0.3s,\n      border-color 0.3s;\n\n    -webkit-print-color-adjust: exact;\n    color-adjust: exact;\n    print-color-adjust: exact;\n  }\n\n  .taskCheckbox::after {\n    position: absolute;\n    top: 0.5px;\n    left: 4px;\n    content: "";\n    display: block;\n    transition:\n      transform 0.6s cubic-bezier(0.2, 0.85, 0.32, 1.2),\n      opacity 0.3s;\n    opacity: 0;\n    width: 4px;\n    height: 8px;\n    border: 2px solid var(--ring-content-background-color);\n    border-top: 0;\n    border-left: 0;\n    transform: rotate(43deg);\n  }\n\n  .taskCheckbox:checked {\n    border: 1px solid var(--ring-main-color);\n    background: var(--ring-main-color);\n  }\n\n  .taskCheckbox:checked::after {\n    opacity: 1;\n  }\n\n  .taskCheckbox:disabled {\n    cursor: not-allowed;\n    border: 1px solid var(--ring-border-disabled-color);\n    background: var(--ring-sidebar-background-color);\n  }\n\n  .taskCheckbox:disabled:checked {\n    background: var(--ring-icon-disabled-color);\n  }\n\n  .taskCheckbox:hover:not(:checked, :disabled) {\n    background: var(--ring-hover-background-color);\n  }\n}\n'],sourceRoot:""}]),a.locals={taskList:"c_taskList__a91",taskCheckbox:"c_taskCheckbox__fc5"};const s=a},72225:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;s});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i)()(o());a.push([e.id,".c_permamlink__aa7 {\n  visibility: hidden;\n  -webkit-user-select: none;\n     -moz-user-select: none;\n          user-select: none;\n  opacity: 0;\n  transition:\n    visibility 0.3s linear, opacity 0.3s linear;\n  font-weight: 400;\n\n  color: var(--ring-secondary-color);\n  padding-left: var(--ring-unit);\n}\n\nh1:hover &gt; .c_permamlink__aa7,\nh2:hover &gt; .c_permamlink__aa7,\nh3:hover &gt; .c_permamlink__aa7,\nh4:hover &gt; .c_permamlink__aa7,\nh5:hover &gt; .c_permamlink__aa7,\nh6:hover &gt; .c_permamlink__aa7 {\n  visibility: visible;\n  opacity: 1;\n}\n","",{version:3,sources:["webpack://./../common/components/markdown/markdown-permalink.css"],names:[],mappings:"AAAA;EACE,kBAAkB;EAClB,yBAAiB;KAAjB,sBAAiB;UAAjB,iBAAiB;EACjB,UAAU;EACV;+CAEqB;EACrB,gBAAgB;;EAEhB,kCAAkC;EAClC,8BAA8B;AAChC;;AAEA;;;;;;EAME,mBAAmB;EACnB,UAAU;AACZ",sourcesContent:[".permamlink {\n  visibility: hidden;\n  user-select: none;\n  opacity: 0;\n  transition:\n    visibility 0.3s linear,\n    opacity 0.3s linear;\n  font-weight: 400;\n\n  color: var(--ring-secondary-color);\n  padding-left: var(--ring-unit);\n}\n\nh1:hover &gt; .permamlink,\nh2:hover &gt; .permamlink,\nh3:hover &gt; .permamlink,\nh4:hover &gt; .permamlink,\nh5:hover &gt; .permamlink,\nh6:hover &gt; .permamlink {\n  visibility: visible;\n  opacity: 1;\n}\n"],sourceRoot:""}]),a.locals={permamlink:"c_permamlink__aa7"};const s=a},70019:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;s});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i)()(o());a.push([e.id,".c_container__eef {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  flex-direction: column;\n\n  background-color: var(--ring-sidebar-background-color);\n  height: 600px;\n  width: 100%;\n  box-sizing: border-box;\n  border: 1px solid var(--ring-line-color);\n}\n\n.c_showPreviewButton__c5f {\n  margin-top: var(--ring-unit);\n}\n\n.c_message__aba {\n  text-align: center;\n  padding: 0 calc(var(--ring-unit) * 4);\n  max-width: 50%;\n}\n","",{version:3,sources:["webpack://./../common/components/markdown/ui/confirmed-preview/confirmed-preview.css"],names:[],mappings:"AAAA;EACE,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,sBAAsB;;EAEtB,sDAAsD;EACtD,aAAa;EACb,WAAW;EACX,sBAAsB;EACtB,wCAAwC;AAC1C;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,kBAAkB;EAClB,qCAAqC;EACrC,cAAc;AAChB",sourcesContent:[".container {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  flex-direction: column;\n\n  background-color: var(--ring-sidebar-background-color);\n  height: 600px;\n  width: 100%;\n  box-sizing: border-box;\n  border: 1px solid var(--ring-line-color);\n}\n\n.showPreviewButton {\n  margin-top: var(--ring-unit);\n}\n\n.message {\n  text-align: center;\n  padding: 0 calc(var(--ring-unit) * 4);\n  max-width: 50%;\n}\n"],sourceRoot:""}]),a.locals={container:"c_container__eef",showPreviewButton:"c_showPreviewButton__c5f",message:"c_message__aba"};const s=a},76424:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;s});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i)()(o());a.push([e.id,".c_ytLatex__cc8 {\n  display: block;\n  width: calc(100% - 2px);\n}\n\n.c_latexErrorContainer__ec8 {\n  border-radius: var(--ring-border-radius-small);\n  background-color: var(--ring-sidebar-background-color);\n  font-size: var(--ring-font-size-smaller);\n  color: var(--ring-error-color);\n  padding: var(--ring-unit);\n}\n\n.c_latexErroredCode__e57 {\n  font-family: var(--ring-font-family-monospace);\n}\n","",{version:3,sources:["webpack://./../common/components/markdown/ui/latex/latex.css"],names:[],mappings:"AAAA;EACE,cAAc;EACd,uBAAuB;AACzB;;AAEA;EACE,8CAA8C;EAC9C,sDAAsD;EACtD,wCAAwC;EACxC,8BAA8B;EAC9B,yBAAyB;AAC3B;;AAEA;EACE,8CAA8C;AAChD",sourcesContent:[".ytLatex {\n  display: block;\n  width: calc(100% - 2px);\n}\n\n.latexErrorContainer {\n  border-radius: var(--ring-border-radius-small);\n  background-color: var(--ring-sidebar-background-color);\n  font-size: var(--ring-font-size-smaller);\n  color: var(--ring-error-color);\n  padding: var(--ring-unit);\n}\n\n.latexErroredCode {\n  font-family: var(--ring-font-family-monospace);\n}\n"],sourceRoot:""}]),a.locals={ytLatex:"c_ytLatex__cc8",latexErrorContainer:"c_latexErrorContainer__ec8",latexErroredCode:"c_latexErroredCode__e57"};const s=a},14444:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;s});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i)()(o());a.push([e.id,".c_mermaid__a1a {\n  display: block;\n}\n.c_mermaid__a1a &gt; svg {\n    -o-object-fit: contain;\n       object-fit: contain;\n    max-width: 100%;\n  }\n","",{version:3,sources:["webpack://./../common/components/markdown/ui/mermaid/mermaid.css"],names:[],mappings:"AAAA;EACE,cAAc;AAMhB;AAJE;IACE,sBAAmB;OAAnB,mBAAmB;IACnB,eAAe;EACjB",sourcesContent:[".mermaid {\n  display: block;\n\n  &amp; &gt; svg {\n    object-fit: contain;\n    max-width: 100%;\n  }\n}\n"],sourceRoot:""}]),a.locals={mermaid:"c_mermaid__a1a"};const s=a},70134:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;s});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i)()(o());a.push([e.id,".c_widgetWrapper__bea {\n  display: contents;\n}\n\n.c_errorMessage__aae svg {\n    display: none;\n  }\n\n@container errorMessageContainer (max-width: 250px) {\n  .c_errorMessage__aae svg {\n    display: none;\n  }\n}\n","",{version:3,sources:["webpack://./../common/components/markdown/ui/widget-renderer/widget-renderer.css"],names:[],mappings:"AAAA;EACE,iBAAiB;AACnB;;AAGE;IACE,aAAa;EACf;;AAGF;EACE;IACE,aAAa;EACf;AACF",sourcesContent:[".widgetWrapper {\n  display: contents;\n}\n\n.errorMessage {\n  &amp; svg {\n    display: none;\n  }\n}\n\n@container errorMessageContainer (max-width: 250px) {\n  .errorMessage svg {\n    display: none;\n  }\n}\n"],sourceRoot:""}]),a.locals={widgetWrapper:"c_widgetWrapper__bea",errorMessage:"c_errorMessage__aae"};const s=a},24996:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;s});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i)()(o());a.push([e.id,"/*\n  Fix for dashboard iframes. For some reason color-scheme: dark; breaks them. They flicker at loading time with dark\n  theme enabled until styles are applied in iframe.\n*/\n:root.yt-dark-theme iframe {\n  color-scheme: normal;\n}\n","",{version:3,sources:["webpack://./../common/components/theme/theme.css"],names:[],mappings:"AAAA;;;CAGC;AACD;EACE,oBAAoB;AACtB",sourcesContent:["/*\n  Fix for dashboard iframes. For some reason color-scheme: dark; breaks them. They flicker at loading time with dark\n  theme enabled until styles are applied in iframe.\n*/\n:root:global(.yt-dark-theme) iframe {\n  color-scheme: normal;\n}\n"],sourceRoot:""}]),a.locals={};const s=a},4538:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;d});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i),s=n(77672),c=n.n(s),l=new URL(n(55959),n.b),g=a()(o()),u=c()(l);g.push([e.id,".c_frame__d73 {\n  border: none;\n  height: 100%;\n  width: 100%;\n}\n\n.c_widgetDialog__a84 {\n  display: block;\n  height: 100%;\n  width: 100%;\n}\n\n.c_widgetDialog__a84:not([open]) {\n    all: unset;\n  }\n\n.c_widgetDialog__a84[open] {\n    border: none;\n    margin: 0;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    overscroll-behavior: none;\n    background-color: transparent;\n  }\n\n.c_widgetDialog__a84[open] &gt; .c_widgetIsland__ad5 {\n      width: 600px;\n      height: 100%;\n    }\n\n.c_widgetDialog__a84::backdrop {\n    background-color: rgba(var(--ring-dialog-overlay-components), var(--ring-dialog-overlay-opacity));\n  }\n\n.c_widgetIsland__ad5 {\n  height: 100%;\n  width: 100%;\n}\n\n.c_widgetHeader__bb8 {\n  display: flex;\n  justify-content: space-between;\n  align-items: baseline;\n  margin-right: calc(var(--ring-unit) * -1);\n}\n\n.c_widgetTitle__eae {\n  display: block;\n  float: left;\n\n  margin: 0;\n\n  transform-origin: 0 50%;\n  word-break: break-word;\n\n  color: var(--ring-heading-color);\n\n  font-size: var(--ring-font-size-larger);\n\n  font-weight: 600;\n  overflow: hidden;\n  text-overflow: ellipsis;\n  white-space: nowrap;\n  vertical-align: bottom;\n}\n\n.c_widgetActions__acb {\n  display: flex;\n  flex-wrap: nowrap;\n}\n\n.c_widgetUpdateButton__ea4 {\n}\n\n@keyframes c_widget__control_rotating__dff {\n  0% {\n    transform: rotate(0deg);\n  }\n\n  100% {\n    transform: rotate(360deg);\n  }\n}\n\n.c_widgetUpdateButtonReloading__d79 svg {\n  animation: c_widget__control_rotating__dff 0.5s linear infinite;\n}\n\n.c_widgetIslandContent__ba4 {\n  flex-grow: 2;\n}\n\n.c_widgetScrollable__c92.c_widgetScrollable__c92 {\n  padding: 0;\n  overflow: visible;\n}\n\n.c_widgetScrollable__c92 &gt; div {\n  height: 100%;\n}\n\n.c_widget__df2 {\n  height: 100%;\n}\n\n.c_resizable__d69 {\n  display: inline-block;\n  vertical-align: bottom;\n  margin: 0 calc(var(--ring-unit) * 0.5);\n}\n\n.c_bottomRightHandle__b84 {\n  opacity: 0;\n  background: url("+u+")\n    no-repeat;\n}\n\n.c_resizable__d69:hover .c_bottomRightHandle__b84 {\n  transition: 0.1s opacity;\n  transition-delay: 0.5s;\n  opacity: 1;\n}\n\n.c_errorMessage__eaf.c_errorMessage__eaf {\n  container-type: inline-size;\n\n  height: auto;\n  padding: 0 4px;\n}\n\n@container (width &lt; 250px) {\n  .c_errorMessage__eaf svg {\n    display: none;\n  }\n}\n","",{version:3,sources:["webpack://./../common/components/widget/dashboard-compatible-widget.css"],names:[],mappings:"AAAA;EACE,YAAY;EACZ,YAAY;EACZ,WAAW;AACb;;AAEA;EACE,cAAc;EACd,YAAY;EACZ,WAAW;AAwBb;;AAtBE;IACE,UAAU;EACZ;;AAEA;IACE,YAAY;IACZ,SAAS;IACT,aAAa;IACb,mBAAmB;IACnB,uBAAuB;IACvB,yBAAyB;IACzB,6BAA6B;EAM/B;;AAJE;MACE,YAAY;MACZ,YAAY;IACd;;AAGF;IACE,iGAAiG;EACnG;;AAGF;EACE,YAAY;EACZ,WAAW;AACb;;AAEA;EACE,aAAa;EACb,8BAA8B;EAC9B,qBAAqB;EACrB,yCAAyC;AAC3C;;AAEA;EACE,cAAc;EACd,WAAW;;EAEX,SAAS;;EAET,uBAAuB;EACvB,sBAAsB;;EAEtB,gCAAgC;;EAEhC,uCAAuC;;EAEvC,gBAAgB;EAChB,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;EACnB,sBAAsB;AACxB;;AAEA;EACE,aAAa;EACb,iBAAiB;AACnB;;AAEA;AACA;;AAEA;EACE;IACE,uBAAuB;EACzB;;EAEA;IACE,yBAAyB;EAC3B;AACF;;AAEA;EACE,+DAAwD;AAC1D;;AAEA;EACE,YAAY;AACd;;AAEA;EACE,UAAU;EACV,iBAAiB;AACnB;;AAEA;EACE,YAAY;AACd;;AAEA;EACE,YAAY;AACd;;AAEA;EACE,qBAAqB;EACrB,sBAAsB;EACtB,sCAAsC;AACxC;;AAEA;EACE,UAAU;EACV;aACW;AACb;;AAEA;EACE,wBAAwB;EACxB,sBAAsB;EACtB,UAAU;AACZ;;AAEA;EACE,2BAA2B;;EAE3B,YAAY;EACZ,cAAc;AAChB;;AAEA;EACE;IACE,aAAa;EACf;AACF",sourcesContent:['.frame {\n  border: none;\n  height: 100%;\n  width: 100%;\n}\n\n.widgetDialog {\n  display: block;\n  height: 100%;\n  width: 100%;\n\n  &amp;:not([open]) {\n    all: unset;\n  }\n\n  &amp;[open] {\n    border: none;\n    margin: 0;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    overscroll-behavior: none;\n    background-color: transparent;\n\n    &amp; &gt; .widgetIsland {\n      width: 600px;\n      height: 100%;\n    }\n  }\n\n  &amp;::backdrop {\n    background-color: rgba(var(--ring-dialog-overlay-components), var(--ring-dialog-overlay-opacity));\n  }\n}\n\n.widgetIsland {\n  height: 100%;\n  width: 100%;\n}\n\n.widgetHeader {\n  display: flex;\n  justify-content: space-between;\n  align-items: baseline;\n  margin-right: calc(var(--ring-unit) * -1);\n}\n\n.widgetTitle {\n  display: block;\n  float: left;\n\n  margin: 0;\n\n  transform-origin: 0 50%;\n  word-break: break-word;\n\n  color: var(--ring-heading-color);\n\n  font-size: var(--ring-font-size-larger);\n\n  font-weight: 600;\n  overflow: hidden;\n  text-overflow: ellipsis;\n  white-space: nowrap;\n  vertical-align: bottom;\n}\n\n.widgetActions {\n  display: flex;\n  flex-wrap: nowrap;\n}\n\n.widgetUpdateButton {\n}\n\n@keyframes widget__control_rotating {\n  0% {\n    transform: rotate(0deg);\n  }\n\n  100% {\n    transform: rotate(360deg);\n  }\n}\n\n.widgetUpdateButtonReloading svg {\n  animation: widget__control_rotating 0.5s linear infinite;\n}\n\n.widgetIslandContent {\n  flex-grow: 2;\n}\n\n.widgetScrollable.widgetScrollable {\n  padding: 0;\n  overflow: visible;\n}\n\n.widgetScrollable &gt; div {\n  height: 100%;\n}\n\n.widget {\n  height: 100%;\n}\n\n.resizable {\n  display: inline-block;\n  vertical-align: bottom;\n  margin: 0 calc(var(--ring-unit) * 0.5);\n}\n\n.bottomRightHandle {\n  opacity: 0;\n  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3IiBoZWlnaHQ9IjciPjxwYXRoIGZpbGw9IiM4ODgiIGQ9Ik0wIDZoMXYxSDB6TTEgNWgxdjFIMXpNMiA0aDF2MUgyek0zIDNoMXYxSDN6TTQgMmgxdjFINHpNNCA2aDF2MUg0ek01IDVoMXYxSDV6TTYgNGgxdjFINnpNNSAxaDF2MUg1ek02IDBoMXYxSDZ6Ii8+PC9zdmc+")\n    no-repeat;\n}\n\n.resizable:hover .bottomRightHandle {\n  transition: 0.1s opacity;\n  transition-delay: 0.5s;\n  opacity: 1;\n}\n\n.errorMessage.errorMessage {\n  container-type: inline-size;\n\n  height: auto;\n  padding: 0 4px;\n}\n\n@container (width &lt; 250px) {\n  .errorMessage svg {\n    display: none;\n  }\n}\n'],sourceRoot:""}]),g.locals={frame:"c_frame__d73",widgetDialog:"c_widgetDialog__a84",widgetIsland:"c_widgetIsland__ad5",widgetHeader:"c_widgetHeader__bb8",widgetTitle:"c_widgetTitle__eae",widgetActions:"c_widgetActions__acb",widgetUpdateButton:"c_widgetUpdateButton__ea4",widgetUpdateButtonReloading:"c_widgetUpdateButtonReloading__d79",widget__control_rotating:"c_widget__control_rotating__dff",widgetIslandContent:"c_widgetIslandContent__ba4",widgetScrollable:"c_widgetScrollable__c92",widget:"c_widget__df2",resizable:"c_resizable__d69",bottomRightHandle:"c_bottomRightHandle__b84",errorMessage:"c_errorMessage__eaf"};const d=g},18168:(e,t,n)=&gt;{"use strict";n.d(t,{Z:()=&gt;s});var r=n(92629),o=n.n(r),i=n(70370),a=n.n(i)()(o());a.push([e.id,".c_frame__c47 {\n  display: block;\n  border: none;\n  height: 100%;\n  width: 100%;\n}\n\n.c_wrapper__c14 {\n  position: relative;\n  height: 100%;\n  width: 100%;\n  overflow: auto;\n}\n\n.c_wrapper__c14.c_modal__b3a.c_modal__b3a {\n  position: fixed;\n  box-sizing: border-box;\n  z-index: var(--ring-overlay-z-index);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  padding: calc(var(--ring-unit) * 4);\n  overscroll-behavior: none;\n  background-color: rgba(0, 0, 0, 0.4);\n}\n\n.c_loaderLines__c97 {\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  overflow: hidden;\n}\n\n.c_loaderLines__c97 &gt; * {\n    margin-bottom: calc(var(--ring-unit) * 2);\n    overflow: hidden;\n  }\n\n.c_errorMessage__b37 {\n  padding: 0 4px;\n}\n","",{version:3,sources:["webpack://./../common/components/widget/widget.css"],names:[],mappings:"AAAA;EACE,cAAc;EACd,YAAY;EACZ,YAAY;EACZ,WAAW;AACb;;AAEA;EACE,kBAAkB;EAClB,YAAY;EACZ,WAAW;EACX,cAAc;AAChB;;AAEA;EACE,eAAe;EACf,sBAAsB;EACtB,oCAAoC;EACpC,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,MAAM;EACN,QAAQ;EACR,SAAS;EACT,OAAO;EACP,mCAAmC;EACnC,yBAAyB;EACzB,oCAAoC;AACtC;;AAEA;EACE,kBAAkB;EAClB,MAAM;EACN,QAAQ;EACR,SAAS;EACT,OAAO;EACP,gBAAgB;AAMlB;;AAJE;IACE,yCAAyC;IACzC,gBAAgB;EAClB;;AAGF;EACE,cAAc;AAChB",sourcesContent:[".frame {\n  display: block;\n  border: none;\n  height: 100%;\n  width: 100%;\n}\n\n.wrapper {\n  position: relative;\n  height: 100%;\n  width: 100%;\n  overflow: auto;\n}\n\n.wrapper.modal.modal {\n  position: fixed;\n  box-sizing: border-box;\n  z-index: var(--ring-overlay-z-index);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  padding: calc(var(--ring-unit) * 4);\n  overscroll-behavior: none;\n  background-color: rgba(0, 0, 0, 0.4);\n}\n\n.loaderLines {\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  overflow: hidden;\n\n  &amp; &gt; * {\n    margin-bottom: calc(var(--ring-unit) * 2);\n    overflow: hidden;\n  }\n}\n\n.errorMessage {\n  padding: 0 4px;\n}\n"],sourceRoot:""}]),a.locals={frame:"c_frame__c47",wrapper:"c_wrapper__c14",modal:"c_modal__b3a",loaderLines:"c_loaderLines__c97",errorMessage:"c_errorMessage__b37"};const s=a},4670:(e,t,n)=&gt;{"use strict";function r(){const e=getComputedStyle(document.body).getPropertyValue("--ring-content-background-color").replace(/ /g,"");return!/#fff|\(255,255,255/.test(e)}n.d(t,{Z:()=&gt;r})},86480:(e,t,n)=&gt;{var r={"./locale_cs.po":11166,"./locale_de.po":12114,"./locale_en.po":23563,"./locale_eo.po":66413,"./locale_es.po":94106,"./locale_fr.po":60868,"./locale_he.po":46022,"./locale_hu.po":29470,"./locale_it.po":44702,"./locale_ja.po":67963,"./locale_ko.po":56318,"./locale_pl.po":98320,"./locale_pt.po":51031,"./locale_ru.po":96710,"./locale_uk.po":13392,"./locale_zh.po":59484,"./locale_zu.po":24832};function o(e){var t=i(e);return n(t)}function i(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}o.keys=function(){return Object.keys(r)},o.resolve=i,e.exports=o,o.id=86480},62158:(e,t,n)=&gt;{var r={"./youtrack-report__average-age/youtrack-report__average-age.html":31254,"./youtrack-report__burndown/youtrack-report__burndown.html":39504,"./youtrack-report__cumulative-flow/youtrack-report__cumulative-flow.html":41099,"./youtrack-report__custom-distribution/youtrack-report__custom-distribution.html":4575,"./youtrack-report__estimation/youtrack-report__estimation.html":52634,"./youtrack-report__event-transition/youtrack-report__event-transition.html":51496,"./youtrack-report__fix-rate/youtrack-report__fix-rate.html":9475,"./youtrack-report__flat-distribution/youtrack-report__flat-distribution.html":52445,"./youtrack-report__interval-widget/youtrack-report__interval-widget.html":54921,"./youtrack-report__issue-distribution/youtrack-report__issue-distribution.html":33920,"./youtrack-report__issues-per-assignee/youtrack-report__issues-per-assignee.html":62911,"./youtrack-report__issues-per-project/youtrack-report__issues-per-project.html":85854,"./youtrack-report__legend/youtrack-report__legend.html":72289,"./youtrack-report__rate-widget/youtrack-report__rate-widget.html":20920,"./youtrack-report__reopened-distribution/youtrack-report__reopened-distribution.html":73401,"./youtrack-report__resolution-time/youtrack-report__resolution-time.html":33899,"./youtrack-report__resolve-rate/youtrack-report__resolve-rate.html":46754,"./youtrack-report__select/youtrack-report__select.html":96785,"./youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget-dynamic-title.html":4586,"./youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget-static-title.html":82925,"./youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget.html":585,"./youtrack-report__time/youtrack-report__time.html":58285,"./youtrack-report__title.html":75632,"./youtrack-report__verified-distribution/youtrack-report__verified-distribution.html":68921,"./youtrack-report__verify-rate/youtrack-report__verify-rate.html":8458,"./youtrack-report__x-axis.html":24777};function o(e){var t=i(e);return n(t)}function i(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}o.keys=function(){return Object.keys(r)},o.resolve=i,e.exports=o,o.id=62158},37495:(e,t,n)=&gt;{"use strict";n(41539),n(88674),n(17727),n(92222),n(68309),n(96649),n(96078),n(82526),n(41817),n(9653),n(69070),n(47941),n(57327),n(38880),n(89554),n(54747),n(49337),n(33321),n(32165),n(66992),n(78783),n(33948),n(12003),n(23839);var r=n(66695),o=n.n(r),i=(n(27181),n(67294)),a=n(89854),s=(n(10344),n(76075)),c=(n(12931),n(57098),n(6442),n(93377),n(20110),n(26422),n(43478),n(30636),n(20453),n(26700),n(65866),n(88448),n(71762),n(22286),n(15362),n(54918),n(54043),n(6720),n(6754),n(47654),n(59350),n(64275),n(3364),n(83766),n(61602),n(21305),n(6776),n(84281)),l=n.n(c);function g(e){return g="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},g(e)}function u(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,d(r.key),r)}}function d(e){var t=function(e,t){if("object"!=g(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=g(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==g(t)?t:t+""}var p=function(){function e(){for(var t,n,r,o,i=this,a=arguments.length,s=new Array(a),c=0;c&lt;a;c++)s[c]=arguments[c];!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),n=this,o={},(r=d(r="$inject"))in n?Object.defineProperty(n,r,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[r]=o,(null!==(t=this.constructor.$inject)&amp;&amp;void 0!==t?t:[]).forEach((function(e,t){i.$inject[e]=s[t]}))}var t,n;return t=e,n=[{key:"controller",get:function(){return this}}],null&amp;&amp;u(t.prototype,null),n&amp;&amp;u(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}(),A=n(96915),C=(n(15846),n(73257),n(24369),n(42797),n(10889),n(40879),n(342),n(51347),n(45045),n(73617),n(31203),n(15567)),I=n(53636),f=n(29938),m=n(93608),h=(n(64141),n(71171)),v=n(10696),b=(n(67030),n(23059),n(25198),n(15593),n(15928),n(27315),n(61701)),y=n.n(b),w=n(65646),_=n(69464),j=n(6686),x=(n(32514),n(63594)),E=n(99048);function S(e){return S="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},S(e)}function T(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,D(r.key),r)}}function M(e,t,n){return t=k(t),function(e,t){if(t&amp;&amp;("object"===S(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return O(e)}(e,L()?Reflect.construct(t,n||[],k(e).constructor):t.apply(e,n))}function L(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(L=function(){return!!e})()}function k(e){return k=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},k(e)}function O(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function P(e,t){return P=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},P(e,t)}function N(e,t,n){return(t=D(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function D(e){var t=function(e,t){if("object"!=S(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=S(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==S(t)?t:t+""}var R=o().module("Ring.template",[]),U=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];N(O(e=M(this,t,[].concat(r))),"currentScope",null),N(O(e),"render",(function(t){var n=e.$inject,r=n.$scope,o=n.$element,i=n.$compile;e.cleanup(),e.currentScope=r.$new(),e.currentScope.$evalAsync((function(){o.html(t),e.addInnerClass(),i(o.contents())(e.currentScope)}))})),N(O(e),"addInnerClass",(function(){var t=e.$inject.$attrs.rgTemplateClass;t&amp;&amp;e.$inject.$element.contents().addClass(t)}));var i=e.$inject,a=i.$scope,s=i.$attrs;return a.$watch(s.rgTemplate||s.template,e.render),e}var n,r;return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;P(e,t)}(t,e),n=t,(r=[{key:"cleanup",value:function(){this.currentScope&amp;&amp;(this.currentScope.$destroy(),this.currentScope=null)}}])&amp;&amp;T(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),t}(p);U.$inject=["$scope","$element","$attrs","$compile"],R.directive("rgTemplate",(function(){return{controller:U}}));const z=R.name;function $(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var G=o().module("Ring.icon",[z]),B="data:image/svg+xml;base64,";G.directive("rgIcon",(function(){return{restrict:"E",scope:{glyph:"@",loading:"=?",color:"@?",size:"@?",height:"@?",width:"@?"},template:'&lt;span class="'.concat(E.Z.icon,'" rg-template="normalizedGlyph" rg-template-class="').concat(E.Z.glyph,'"&gt;&lt;/span&gt;'),controller:["$scope",function(e){e.$watch("glyph",(function(t){var n;t&amp;&amp;(e.normalizedGlyph=0===(n=t).indexOf(B)?window.atob(n.replace(B,"")):n)}))}],link:function(e,t,n){n.$addClass("ring-icon"),e.$watch("loading",(function(e){e?n.$addClass(E.Z.loading):n.$removeClass(E.Z.loading)})),e.$watch((function(){return e.color&amp;&amp;x.I[e.color]&amp;&amp;E.Z[x.I[e.color]]}),(function(e,t){e&amp;&amp;(n.$addClass(e),t&amp;&amp;t!==e&amp;&amp;n.$removeClass(t))})),e.$watchGroup(["size","width","height"],(function(e){var n=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return $(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?$(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(e,3),r=n[0],o=n[1],i=n[2],a=t[0].querySelector("svg");if(a)if(!r||o||i)o&amp;&amp;a.setAttribute("style","width: ".concat(o,"px;")),i&amp;&amp;a.setAttribute("style","height: ".concat(i,"px;"));else{var s="".concat(r,"px"),c="width: ".concat(s,"; height: ").concat(s,";");a.setAttribute("style",c)}}))}}}));const F=G.name;var Z=n(95006),Y=n.n(Z);function W(e){return W="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},W(e)}function H(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function q(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,re(r.key),r)}}function Q(e,t,n){return t=K(t),function(e,t){if(t&amp;&amp;("object"===W(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return J(e)}(e,V()?Reflect.construct(t,n||[],K(e).constructor):t.apply(e,n))}function V(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(V=function(){return!!e})()}function K(e){return K=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},K(e)}function J(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function X(e,t){return X=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},X(e,t)}function ee(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function te(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ee(Object(n),!0).forEach((function(t){ne(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ee(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ne(e,t,n){return(t=re(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function re(e){var t=function(e,t){if("object"!=W(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=W(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==W(t)?t:t+""}var oe=Y().ringIconDefaultColor,ie=Y().iconMarginFix,ae=Y().transcludeSpacer,se=o().module("Ring.button",[F]),ce="-1",le=Object.values(te(te({},_.Z),Y())).reduce((function(e,t){return t.split(" ").forEach((function(t){return e[t]=!0})),e}),{}),ge=".js-button-loader",ue=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];ne(J(e=Q(this,t,[].concat(r))),"updateClasses",(function(){var t=e.$inject.$attrs,n=function(e){return function(e){if(Array.isArray(e))return H(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return H(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?H(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(e.element.classList).filter((function(e){return!le[e]}));e.element.className=y()(n,(0,j.y)({height:t.height||w.oW.S,className:_.Z.button,active:e.getAttrValue(t.active),disabled:e.getAttrValue(t.disabled),loader:e.getAttrValue(t.loader),primary:"primary"===t.mode||"blue"===t.mode,short:e.getAttrValue(t.short),text:e.getAttrValue(t.text),inline:e.getAttrValue(t.inline),danger:e.getAttrValue(t.danger),delayed:e.getAttrValue(t.delayed),icon:t.icon}),ne(ne({},Y().buttonWithoutIcon,!t.icon),Y().narrowRight,e.getAttrValue(t.narrowRight))),t.hasOwnProperty("mode")?(0,I.GK)(e.findTranscludeNode().classList,oe):(0,I.PT)(e.findTranscludeNode().classList,oe)})),ne(J(e),"findTranscludeNode",(function(){return e.element.querySelector("ng-transclude")})),ne(J(e),"updateIcon",(function(){var t=e.$inject,n=t.$attrs,r=t.$compile,o=t.$scope,i=e.element.querySelector("rg-icon"),a=e.findTranscludeNode(),s=n.icon,c=n.iconSize,l=e.getAttrValue(n.loader);s&amp;&amp;l?i.setAttribute("loading",!0):i.setAttribute("loading",!1),s?((0,I.PT)(a.classList,ae),i.setAttribute("glyph",s),c&amp;&amp;i.setAttribute("size",c)):((0,I.GK)(a.classList,ae),i.removeAttribute("glyph"),i.removeAttribute("size")),r(i)(o)}));var i=e.$inject,a=i.$element,s=i.$attrs,c=i.$scope;c.styles=_.Z,e.element=a[0],["delayed","loader","danger","short","active","text","inline","narrowRight"].forEach((function(t){c.$watch((function(){return c.$eval(s[t])}),(function(n){e.updateClasses();var r="data-test-".concat(t);if(n?e.element.setAttribute(r,!0):e.element.removeAttribute(r),"loader"===t){var o=e.getAttrValue(s.text),i=!!s.icon;(0,I.nk)(!n||o||i?"remove":"add")(e.element.querySelector(ge).classList,_.Z.loaderBackground)}}))}));var l=s.tabindex||ce;return l!==ce&amp;&amp;e.element.setAttribute("tabindex",l),c.$watch((function(){return c.$eval(s.loader)}),(function(t){t?e.element.setAttribute("tabindex",ce):l!==ce?e.element.setAttribute("tabindex",l):e.element.removeAttribute("tabindex")})),e}var n,r;return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;X(e,t)}(t,e),n=t,(r=[{key:"$postLink",value:function(){var e=this;this.updateClasses();var t=this.$inject.$attrs;t.$observe("mode",this.updateClasses),t.$observe("icon",(function(){e.updateClasses(),e.updateIcon()})),t.$observe("iconSize",(function(){e.updateClasses(),e.updateIcon()}))}},{key:"getAttrValue",value:function(e){return this.$inject.$scope.$eval(e)}}])&amp;&amp;q(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),t}(p);function de(e){return function(){return{restrict:"E",transclude:!0,replace:!0,template:"\n  &lt;".concat(e,' class="').concat(_.Z.button,'"&gt;\n  &lt;span class="').concat(_.Z.content,'"\n  &gt;&lt;rg-icon class="').concat(y()(_.Z.icon,Y().iconNg,ie),'"&gt;&lt;/rg-icon\n  &gt;&lt;ng-transclude&gt;&lt;/ng-transclude\n  &gt;&lt;/span\n  &gt;&lt;div class="js-button-loader"&gt;&lt;/div&gt;\n  &lt;/').concat(e,"&gt;\n    "),controller:ue}}}ue.$inject=["$element","$attrs","$scope","$compile","$log"],se.directive("rgButton",de("button")),se.directive("rgButtonLink",de("a"));const pe=se.name;function Ae(e){return Ae="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Ae(e)}function Ce(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,Ie(r.key),r)}}function Ie(e){var t=function(e,t){if("object"!=Ae(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=Ae(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Ae(t)?t:t+""}function fe(e,t,n){return t=he(t),function(e,t){if(t&amp;&amp;("object"===Ae(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,me()?Reflect.construct(t,n||[],he(e).constructor):t.apply(e,n))}function me(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(me=function(){return!!e})()}function he(e){return he=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},he(e)}function ve(e,t){return ve=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},ve(e,t)}var be=o().module("Ring.promised-click",[]),ye=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];var i=(e=fe(this,t,[].concat(r))).$inject,a=i.$scope,s=i.$element,c=i.$attrs,l=i.$parse;e.element=s[0],e.active=!1,c.rgPromisedClick&amp;&amp;e.onClick((function(e){return l(c.rgPromisedClick)(a,{event:e})}));var g=null;e.toggleActive=function(t){"loader"===g?((0,I.nk)(t?"add":"remove")(e.element.classList,_.Z.loader),e.element.querySelector(ge)&amp;&amp;(0,I.nk)(t?"add":"remove")(e.element.querySelector(ge).classList,_.Z.loaderBackground)):"active"===g&amp;&amp;(0,I.nk)(t?"add":"remove")(e.element.classList,_.Z.active)};var u=function(e){g=e};return u(c.promisedMode||"active"),c.promisedMode&amp;&amp;-1!==c.promisedMode.indexOf("{{")&amp;&amp;c.$observe("promisedMode",(function(t){t!==g&amp;&amp;(e.toggleActive(!1),u(t))})),e}var n,r;return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;ve(e,t)}(t,e),n=t,(r=[{key:"onClick",value:function(e){var t=this;this.element.addEventListener("click",(function(n){t.active?n.preventDefault():t.process(e,n)}))}},{key:"process",value:function(e,t){var n=this.$inject.$scope;this.promise=e(t),this.promise&amp;&amp;this.activate(),n.$root.$$phase||n.$apply()}},{key:"activate",value:function(){var e=this;this.active=!0,this.toggleActive(!0);var t=function(){e.active=!1,e.toggleActive(!1)};this.promise.then(t,t)}}])&amp;&amp;Ce(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),t}(p);ye.$inject=["$scope","$element","$attrs","$parse"],be.directive("rgPromisedClick",(function(){return{controller:ye}}));const we=be.name;n(75256);var _e=o().module("Ring.compiler",[]).factory("rgCompiler",["$q","$controller","$injector","$compile",function(e,t,n,r){return function(i){var a=i.template,s=i.controller,c=i.controllerAs,l=o().extend({},i.resolve),g=i.bindToController;return o().forEach(l,(function(e,t){o().isString(e)?l[t]=n.get(e):l[t]=n.invoke(e)})),o().extend(l,i.locals),e.all(l).then((function(e){var n=i.element||o().element("&lt;div&gt;").html(a.trim()).contents(),l=r(n,e.$transclude);return e.$element=n,{locals:e,element:n,link:function(r){if(e.$scope=r,s){var i=t(s,e,!0);g&amp;&amp;o().extend(i.instance,e);var a=i();n.data("$ngControllerController",a),c&amp;&amp;(r[c]=a)}return l(r)}}}))}}]);const je=_e.name;var xe=n(96786),Ee=n.n(xe);function Se(e){return Se="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Se(e)}function Te(e,t){if(e){if("string"==typeof e)return Me(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Me(e,t):void 0}}function Me(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function Le(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function ke(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,Ge(r.key),r)}}function Oe(e,t,n){return t&amp;&amp;ke(e.prototype,t),n&amp;&amp;ke(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function Pe(e,t,n){return t=De(t),function(e,t){if(t&amp;&amp;("object"===Se(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return Re(e)}(e,Ne()?Reflect.construct(t,n||[],De(e).constructor):t.apply(e,n))}function Ne(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Ne=function(){return!!e})()}function De(e){return De=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},De(e)}function Re(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Ue(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;ze(e,t)}function ze(e,t){return ze=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},ze(e,t)}function $e(e,t,n){return(t=Ge(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ge(e){var t=function(e,t){if("object"!=Se(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=Se(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Se(t)?t:t+""}qe.$inject=["$compile","$q"],He.$inject=["$timeout"];var Be=o().module("Ring.dialog",[pe,we,je]),Fe=function(e){function t(){var e;Le(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return $e(Re(e=Pe(this,t,[].concat(r))),"hide",(function(){e.inSidebar||e.scrollPreventer.reset(),e.active=!1,e.content="",e.focusTrap.deactivate(),Reflect.deleteProperty(Re(e),"DIALOG_NAMESPACE"),f.Z.indexOfScope(e.dialogService.DIALOG_NAMESPACE)&gt;-1&amp;&amp;f.Z.setScope(e.currentShortcutsScope),e._resetFormState(),e.$inject.$scope.$broadcast("dialog.hide")})),$e(Re(e),"serverErrorFields",[]),e.styles=Ee(),e.dialogStyles=h.Z,e.islandStyles=v.Z,e.scrollPreventer=(0,m.u)(),e.$inject.$q((function(t,n){e.resolve=t,e.reject=n})),e}return Ue(t,e),Oe(t,[{key:"$onInit",value:function(){var e=this,t=this.$inject,n=t.dialog,r=t.dialogInSidebar,o=t.$scope,i=this.inSidebar?r:n;this.focusTrap=(0,C.v)(this.$inject.$element[0],{fallbackFocus:'[data-anchor="focus-trap-fallback"]',escapeDeactivates:!1}),this.dialogService=i,this.previousBodyWidth=null,o.$on("$routeChangeSuccess",this.hide),o.$on("$routeUpdate",this.hide),o.$on("$destroy",(function(){e.hide(),i.unregister()})),o.$watch((function(){return e.active}),(function(){e.active?f.Z.bindMap(e.getShortcuts(),{scope:e.DIALOG_NAMESPACE}):e.reset()})),i.register(this)}},{key:"getShortcuts",value:function(){var e=function(){this.active=!1,this.focusTrap.deactivate(),this.$inject.$scope.$apply()}.bind(this),t={esc:e,enter:this.applyDefaultHandler(!1),"mod+enter":this.applyDefaultHandler(!0)};if(o().extend(t,this.shortcuts),this.shortcuts&amp;&amp;this.shortcuts.esc){var n=t.esc;t.esc=function(){var t=n();return e(),t}}return t}},{key:"handleClick",value:function(e){var t=e.target===e.currentTarget;!this.inSidebar&amp;&amp;this.closeOnClick&amp;&amp;t&amp;&amp;this.hide()}},{key:"setTitle",value:function(e){this.title=e}},{key:"compileTemplate",value:function(){var e=this;if(this.config.data){var t=o().element(this.template);return{element:t,link:this.$inject.$compile(t)}}return this.$inject.rgCompiler(this.config).catch((function(t){return e.reject(t),e.$inject.$q.reject(t)}))}},{key:"show",value:function(e){var t=this,n=this.$inject,r=n.$q,o=n.$scope;return this.inSidebar||(this.scrollPreventer.prevent(),e&amp;&amp;!0===e.trapFocus&amp;&amp;this.focusTrap.activate()),this.active&amp;&amp;this.reset(),this.error=null,this.dialogForm&amp;&amp;this.dialogForm.$setPristine(),e&amp;&amp;(this.title=e.title,this.buttons=e.buttons,this.data=e.data||{},this.wideDialog=e.wideDialog,this.autoWidth=e.autoWidth,this.scrollableWrapperClassName=e.scrollableWrapperClassName,this.cssClass=e.cssClass||"",this.shortcuts=e.shortcuts,this.content=e.content,this.template=e.template,this.config=e,this.description=e.description&amp;&amp;e.description.split("\n")||[],this.closeOnClick=e.closeOnClick,o.data=this.data),this.currentShortcutsScope=f.Z.getScope(),this.DIALOG_NAMESPACE=this.dialogService.DIALOG_NAMESPACE,f.Z.setScope(this.dialogService.DIALOG_NAMESPACE),this.active=!0,o.$broadcast("dialog.show"),r((function(e,n){t.resolve=e,t.reject=n}))}},{key:"update",value:function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:{};Object.assign(this.data,e.data),Object.assign(this.buttons,e.buttons)}},{key:"_resetFormState",value:function(){var e=this.dialogForm;e&amp;&amp;(e.$setPristine(),e.$setUntouched(),e.$valid=!0,e.$invalid=!1,e.$error={})}},{key:"done",value:function(e){this.resetPosition(),this.resolve(e),this.hide()}},{key:"reset",value:function(e){this.done(e)}},{key:"getErrorMessage",value:function(e){var t,n;return null!=e&amp;&amp;null!==(t=e.data)&amp;&amp;void 0!==t&amp;&amp;t.error_description?e.data.error_description:null!=e&amp;&amp;null!==(n=e.data)&amp;&amp;void 0!==n&amp;&amp;n.error?e.data.error:e}},{key:"getFieldErrorMessage",value:function(e){return e&amp;&amp;e.data&amp;&amp;e.data.error?e.data.error:null}},{key:"action",value:function(e){var t=this;if(!e.inProgress){var n=function(e){var n=e&amp;&amp;e.data&amp;&amp;e.data.error_field;n&amp;&amp;t.dialogForm[n]?(t.dialogForm[n].$invalid=!0,t.dialogForm[n].$error[n]=[{message:t.getFieldErrorMessage(e)}],t.serverErrorFields.push(n)):t.error=t.$inject.$sce.trustAsHtml(t.getErrorMessage(e))};if(e.action){e.keepServerErrors||(this.serverErrorFields.forEach((function(e){t.dialogForm[e].$invalid=!1,t.dialogForm[e].$error={}})),this.serverErrorFields=[]);var r=e.action(this.data,e,n,this.dialogForm,this.buttons);return e.inProgress=!0,this.$inject.$q.resolve(r).then((function(n){!1===n||!1===e.close||t.done(n)})).catch(n).finally((function(){e.inProgress=!1}))}!1!==e.close&amp;&amp;this.reset(!1)}}},{key:"applyDefaultHandler",value:function(e){var t=this;return function(n){if(n.target.matches("textarea")===e&amp;&amp;!n.target.matches("button")&amp;&amp;(n.stopPropagation(),n.preventDefault(),t.dialogForm.$valid&amp;&amp;t.buttons)){var r,o=function(e,t){var n="undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=Te(e))){n&amp;&amp;(e=n);var r=0,o=function(){};return{s:o,n:function(){return r&gt;=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){s=!0,i=e},f:function(){try{a||null==n.return||n.return()}finally{if(s)throw i}}}}(t.buttons);try{for(o.s();!(r=o.n()).done;){var i=r.value;if(i.default&amp;&amp;!i.hidden&amp;&amp;!i.disabled)return t.action(i),void t.$inject.$scope.$apply()}}catch(e){o.e(e)}finally{o.f()}}}}}]),t}(p);Fe.$inject=["$scope","$q","dialog","$element","dialogInSidebar","$compile","$injector","$controller","rgCompiler","$sce"];var Ze=function(e){function t(){var e;Le(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return $e(Re(e=Pe(this,t,[].concat(r))),"DIALOG_NAMESPACE","ring-dialog"),$e(Re(e),"fallbackDialog",null),$e(Re(e),"unregister",(function(){Reflect.deleteProperty(Re(e),"ctrl")})),["show","hide","update","done","reset"].forEach((function(t){e[t]=function(){var e,n;return this.ctrl?(e=this.ctrl)[t].apply(e,arguments):this.fallbackDialog?(n=this.fallbackDialog)[t].apply(n,arguments):void this.$inject.$log.error("No dialog directive is found")}.bind(Re(e))})),e}return Ue(t,e),Oe(t,[{key:"register",value:function(e){this.ctrl=e}}]),t}(p);Ze.$inject=["$log"];var Ye,We=function(e){function t(){var e;Le(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return $e(Re(e=Pe(this,t,[].concat(r))),"DIALOG_NAMESPACE","ring-dialog-in-sidebar"),e.fallbackDialog=e.$inject.dialog,e}return Ue(t,e),Oe(t)}(Ze);function He(e){return{scope:{},controller:Fe,bindToController:{inSidebar:"@?",active:"=?"},replace:!0,template:'&lt;div\n  ng-show="dialog.active"\n  ng-class="[!dialog.inSidebar &amp;&amp; dialog.dialogStyles.container]"\n  ng-click="dialog.handleClick($event)"\n  ng-attr-data-portaltarget="{{!dialog.inSidebar  ? \'dialog-ng-popup-container\' : null}}"\n  ng-attr-data-test="ring-dialog-container"\n&gt;\n  &lt;div ng-class="[dialog.dialogStyles.innerContainer]"&gt;\n    &lt;div data-anchor="dialog-container"\n      ng-attr-data-in-sidebar="{{dialog.inSidebar  ? \'true\' : \'false\'}}"\n      ng-attr-data-test="{{dialog.active ? \'ring-dialog\' : null}}"\n      ng-class="[\n        dialog.styles.dialogContainer,\n        dialog.cssClass,\n        dialog.wideDialog &amp;&amp; dialog.styles.wide,\n        dialog.autoWidth &amp;&amp; dialog.styles.autoWidth,\n        dialog.inSidebar &amp;&amp; dialog.styles.inSidebar,\n        !dialog.inSidebar &amp;&amp; dialog.dialogStyles.content,\n        !dialog.inSidebar &amp;&amp; dialog.islandStyles.island\n      ]"\n    &gt;\n      &lt;div ng-class="[dialog.islandStyles.header, dialog.styles.header]"\n        data-anchor="dialog-header"\n        ng-show="dialog.title"&gt;\n        &lt;span ng-class="dialog.islandStyles.title"&gt;{{ dialog.title }}&lt;/span&gt;\n      &lt;/div&gt;\n\n      &lt;div ng-class="[dialog.styles.scrollableWrapper, dialog.islandStyles.scrollableWrapper, dialog.scrollableWrapperClassName]"&gt;\n        &lt;div ng-class="[dialog.styles.content, dialog.islandStyles.content]"&gt;\n          &lt;form name="dialog.dialogForm" class="ring-form ring-js-shortcuts"\n            novalidate&gt;\n            &lt;rg-dialog-content&gt;&lt;/rg-dialog-content&gt;\n\n            &lt;div class="ring-form__group" ng-show="dialog.error"&gt;\n              &lt;div ng-class="dialog.styles.error" ng-bind-html="dialog.error"&gt;&lt;/div&gt;\n            &lt;/div&gt;\n          &lt;/form&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div ng-class="dialog.styles.footer"\n        ng-if="dialog.description.length || dialog.buttons.length"&gt;\n        &lt;div ng-class="dialog.styles.footerDescription"\n          ng-if="dialog.description &amp;&amp; dialog.description.length"&gt;\n          &lt;div ng-repeat="line in dialog.description"&gt;{{ line }}&lt;/div&gt;\n        &lt;/div&gt;\n\n        &lt;div ng-class="dialog.styles.footerItems"&gt;\n          &lt;rg-button\n            ng-repeat="button in dialog.buttons"\n            ng-class="[dialog.styles.footerItem , button.cssClasses]"\n            mode="{{button.default ? \'primary\' : \'\'}}"\n            text="button.text"\n            ng-disabled="(button.default &amp;&amp; dialog.dialogForm.$invalid) || button.disabled"\n            ng-if="!button.hidden"\n            data-test="dialog-footer-button"\n\n            rg-promised-click="dialog.action(button)"\n            promised-mode="loader"\n          &gt;{{ button.label }}\n          &lt;/rg-button&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div data-anchor="dialog-custom-footer-container"&gt;&lt;/div&gt;\n\n      &lt;div tabindex="-1" ng-show="false" data-anchor="focus-trap-fallback"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;',controllerAs:"dialog",link:function(t,n,r,i){var a=n[0],s=a.querySelector("*[data-anchor=dialog-container]"),c=a.querySelector("*[data-anchor=dialog-header]"),l=a.querySelector("*[data-anchor=dialog-custom-footer-container]");function g(e,t){Object.assign(s.style,{top:"".concat(e,"px"),left:"".concat(t,"px")})}function u(){var e=Array.from(a.querySelectorAll("input,select,button,textarea,*[contentEditable=true]")).filter((function(e){return"none"!==(0,I.Wi)(e).display}));e.length&amp;&amp;e[0].focus()}function d(e){e.preventDefault();var t=window.innerHeight-10,n=window.innerWidth-10,r=(0,I.Dz)(c).top+e.movementY,o=(0,I.Dz)(c).left+e.movementX;if(!(r&gt;t||r&lt;10||o&gt;n||o&lt;10)){var i=parseFloat(s.style.top)||0,a=parseFloat(s.style.left)||0;g(i+e.movementY,a+e.movementX)}}function p(){document.removeEventListener("mousemove",d),document.removeEventListener("mouseup",p)}function A(){i.inSidebar||(a.dispatchEvent(new CustomEvent("ring.popup-close")),document.addEventListener("mousemove",d),document.addEventListener("mouseup",p))}function C(e){!a.contains(e.target)&amp;&amp;e.target.classList.contains("ring-popup")&amp;&amp;(e.preventDefault(),u())}t.dialogForm=i.dialogForm,i.resetPosition=function(){return s.removeAttribute("style")},i.setCustomFooter=function(e){var t=o().element(l),n=o().element('&lt;div class="'.concat(this.styles.footer,'"&gt;&lt;/div&gt;')).append(e);t.empty(),t.append(n)},c.addEventListener("mousedown",A),document.addEventListener("focusin",C),t.$on("rgDialogContentLoaded",(function(){return e(u)})),t.$on("$includeContentLoaded",(function(){return e(u)})),t.$on("dialog.hide",(function(){o().element(l).empty()})),t.$on("$destroy",(function(){c.removeEventListener("mousedown",A),document.removeEventListener("mousemove",d),document.removeEventListener("mouseup",p),document.removeEventListener("focusin",C),window.removeEventListener("resize",g)}))}}}function qe(e,t){return{link:function(n,r){var i,a=r[0];function s(){i&amp;&amp;(i.$destroy(),function(e){for(;e.childNodes.length;)o().element(e.childNodes[0]).remove()}(a))}n.$on("dialog.hide",s),n.$on("dialog.show",(function(){s(),function(){if(i=n.$new(),o().isDefined(n.dialog.content)){var r=o().element(((s=document.createElement("ng-include")).setAttribute("src","dialog.content"),s));return a.appendChild(r[0]),e(r)(i)[0]}var s;t.when(n.dialog.compileTemplate()).then((function(e){var t=n.dialog.config.data?i:n.dialog.config.scope||i;o().element(a).append(e.element),e.link(t),n.$broadcast("rgDialogContentLoaded")})).catch(o().noop)}()}))}}}We.$inject=[].concat(function(e){if(Array.isArray(e))return Me(e)}(Ye=Ze.$inject)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(Ye)||Te(Ye)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),["dialog"]),Be.directive("rgDialog",He),Be.directive("rgDialogTitle",(function(){return{scope:{title:"@rgDialogTitle"},require:"^rgDialog",link:function(e,t,n,r){r.setTitle(e.title)}}})),Be.directive("rgDialogFooter",(function(){return{require:"^rgDialog",transclude:!0,link:function(e,t,n,r,o){e.$on("rgDialogContentLoaded",(function(){o(e,(function(e){r.setCustomFooter(e)}))}))}}})),Be.directive("rgDialogContent",qe),Be.service("dialog",Ze),Be.service("dialogInSidebar",We);const Qe=Be.name;function Ve(e){return Ve="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Ve(e)}n(53840),n(17678);var Ke=o().module("Ring.shortcuts",[]);Ke.provider("shortcuts",(function(){var e={},t={},n=[];function r(r){return e[r.id]=r.shortcuts,t[r.id]=!!r.main,r.hasOwnProperty("title")&amp;&amp;n.push(r),this}this.mode=r,this.$get=["$rootScope",function(i){return{addMode:r,bind:function(t,n,r){var a=e[t];if("object"===Ve(n)){if(!a)throw new Error("Shortcut mode ".concat(t," is not declared"));a.forEach((function(e){o().isFunction(n[e.action])&amp;&amp;f.Z.bind({key:e.key,scope:r||t,handler:function(){var t=n[e.action].apply(n,arguments);return i.$$phase||i.$apply(),t}})}))}},triggerAction:function(t,n){for(var r=e[t],o=r.length-1;o&gt;=0;o--)if(r[o].action===n)return f.Z.trigger(r[o].key[0]||r[o].key)},isMainMode:function(e){return t[e]},getRegisteredShortcuts:function(){return n},shortcuts:f.Z}}]})),Ke.directive("rgShortcutsApp",(function(){return{restrict:"A",controller:["$scope","$rootScope","$attrs","shortcuts",function(e,t,n,r){var o=this;function i(t,n){var r,o=t&amp;&amp;e.zones.indexOf(t);return o&gt;=0&amp;&amp;(r=n?e.zones[o-1]:e.zones[o+1]),r||!e.loop&amp;&amp;t||(r=n?e.zones[e.zones.length-1]:e.zones[0]),r||(r=e.zones[0]),!r||document.documentElement.contains(r.element)&amp;&amp;"none"!==(0,I.Wi)(r.element).display||(r=i(r,n)),r}e.zones=[],e.loop="shortcutsLoop"in n,this.deselect=function(){e.current.onBlur(),e.current=null},this.getCurrent=function(){return e.current},this.select=function(t){e.current!==t&amp;&amp;(e.current&amp;&amp;(f.Z.spliceScope(e.current.scope),o.deselect()),t&amp;&amp;(f.Z.pushScope(t.scope),e.current=t))},this.route=function(t,n,a,s){var c;return!!e.zones.length&amp;&amp;(e.current&amp;&amp;e.current.scope!==f.Z.getScope().pop().scopeId&amp;&amp;o.deselect(),"main"===t?e.zones.forEach((function(t,n){r.isMainMode(t.name)&amp;&amp;(c=e.zones[n])})):c=i(e.current,"prev"===t),c?(o.select(c),f.Z.hasKey(a,c.scope)&amp;&amp;f.Z.trigger(a)):r.triggerAction(s,"next"===t?"prev":"next"),!1)},this.sort=function(){var t=Array.from(document.querySelectorAll("[rg-shortcuts]"));e.zones.forEach((function(e){e.order=t.indexOf(e.element)})),e.zones.sort((function(e,t){return e.order-t.order}))},this.setup=function(t,n){r.bind(t.name,n,t.scope),e.zones.push(t),o.sort()},this.destroy=function(t){f.Z.spliceScope(t.scope),f.Z.unbindScope(t.scope);var n=e.zones.indexOf(t);-1!==n&amp;&amp;e.zones.splice(n,1)};var a={next:this.route.bind(this,"next"),prev:this.route.bind(this,"prev"),main:this.route.bind(this,"main")};r.bind("ring-shortcuts",a),f.Z.pushScope("ring-shortcuts")}]}})),Ke.directive("rgShortcuts",["$parse",function(e){return{restrict:"A",require:["^rgShortcutsApp"],link:function(t,n,r,i){var a=i[i.length-1],s=r.rgShortcuts,c=e(r.shortcutsFocus),l=e(r.shortcutsBlur),g={name:s,scope:"".concat(s,"-").concat(t.$id),element:n[0],onBlur:l(t)||o().noop};t.$evalAsync((function(){a.setup(g,t.$eval(r.shortcutsMap))})),t.$watch((function(){return c(t)}),(function(e){e&amp;&amp;a.select(g)})),t.$on("$destroy",(function(){a.destroy(g)}))}}}]),Ke.directive("rgShortcutsGlobal",["shortcuts",function(e){return{restrict:"A",link:function(t,n,r){var o=r.rgShortcutsGlobal,i="".concat(o,"-").concat(t.$id);t.$evalAsync((function(){e.bind(o,t.$eval(r.shortcutsMap),i),f.Z.pushScope(i)})),t.$on("$destroy",(function(){f.Z.spliceScope(i),f.Z.unbindScope(i)}))}}}]);const Je=Ke.name;var Xe=n(13612),et=n.n(Xe),tt=n(68113),nt=n(80880),rt=n(15717),ot=n.n(rt);function it(e){return it="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},it(e)}function at(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,dt(r.key),r)}}function st(e,t,n){return t=lt(t),function(e,t){if(t&amp;&amp;("object"===it(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,ct()?Reflect.construct(t,n||[],lt(e).constructor):t.apply(e,n))}function ct(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(ct=function(){return!!e})()}function lt(e){return lt=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},lt(e)}function gt(e,t){return gt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},gt(e,t)}function ut(e,t,n){return(t=dt(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function dt(e){var t=function(e,t){if("object"!=it(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=it(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==it(t)?t:t+""}var pt=o().module("Ring.input",[pe]),At=function(e){function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),st(this,t,arguments)}var n,r;return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;gt(e,t)}(t,e),n=t,(r=[{key:"$onInit",value:function(){var e=this;this.closeIcon=et(),this.ngModelCtrl&amp;&amp;(this.ngModelCtrl.$render=function(){e.value=e.ngModelCtrl.$viewValue})}},{key:"onInputChange",value:function(){this.ngModelCtrl&amp;&amp;this.ngModelCtrl.$setViewValue(this.value)}},{key:"stretch",value:function(e){e&amp;&amp;(e.style.height="".concat(e.scrollHeight,"px"))}},{key:"onKeyUp",value:function(){this.inputNode||(this.inputNode=this.$inject.$element[0].querySelector('[data-test="ring-input"]')),this.multiline&amp;&amp;this.inputNode.scrollHeight&gt;this.inputNode.clientHeight&amp;&amp;this.stretch(this.inputNode)}},{key:"onClear",value:function(){this.value=""}},{key:"getContainerClasses",value:function(){return y()(tt.Z.outerContainer,this.size?[tt.Z["size".concat(this.size)]]:null,tt.Z.heightS,ut(ut(ut(ut(ut(ut({},tt.Z.active,this.active),tt.Z.error,null!=this.error),tt.Z.empty,!this.value),tt.Z.noLabel,!this.label),tt.Z.clearable,this.clearable),tt.Z.borderless,this.borderless))}}])&amp;&amp;at(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),t}(p);ut(At,"require",{ngModelCtrl:"?ngModel"}),ut(At,"bindings",{name:"@",required:"@",ngMinlength:"@",ngMaxlength:"@",placeholder:"@",ngModel:"&lt;",onChange:"&amp;",label:"@",hint:"@",size:"@",disabled:"@",active:"&lt;",error:"@",empty:"&lt;",clearable:"&lt;",borderless:"&lt;",multiline:"&lt;"}),ut(At,"template",'\n&lt;div\n  data-test="ring-input-container"\n  ng-class="$ctrl.getContainerClasses()"\n&gt;\n  &lt;label\n    ng-if="!$ctrl.borderless"\n    class="'.concat(nt.Z.label," ").concat(nt.Z.secondaryLabel,'"\n  &gt;{{$ctrl.label}}&lt;/label&gt;\n  &lt;div class="').concat(tt.Z.container,'"&gt;\n    &lt;input\n      aria-label="{{$ctrl.label || $ctrl.placeholder}}"\n      type="text"\n      data-test="ring-input"\n      class="').concat(tt.Z.input,'"\n      name="{{$ctrl.name}}"\n      ng-if="!$ctrl.multiline"\n      placeholder="{{$ctrl.placeholder}}"\n      ng-model="$ctrl.value"\n      ng-required="$ctrl.required"\n      ng-disabled="$ctrl.disabled"\n      ng-minlength="$ctrl.ngMinlength"\n      ng-maxlength="$ctrl.ngMaxlength"\n      ng-change="$ctrl.onInputChange()"\n      ng-keyup="$ctrl.onKeyUp()"\n    /&gt;\n\n    &lt;textarea\n      aria-label="{{$ctrl.label || $ctrl.placeholder}}"\n      data-test="ring-input"\n      ng-if="$ctrl.multiline"\n      class="').concat(tt.Z.input,'"\n      rows="1"\n      name="{{$ctrl.name}}"\n      placeholder="{{$ctrl.placeholder}}"\n      ng-model="$ctrl.value"\n      ng-required="$ctrl.required"\n      ng-disabled="$ctrl.disabled"\n      ng-minlength="$ctrl.ngMinlength"\n      ng-maxlength="$ctrl.ngMaxlength"\n      ng-change="$ctrl.onInputChange()"\n      ng-keyup="$ctrl.onKeyUp()"\n    &gt;&lt;/textarea&gt;\n\n    &lt;rg-button\n      ng-if="$ctrl.clearable"\n      data-test="ring-input-clear"\n      class="').concat(tt.Z.clear," ").concat(ot().clear,'"\n      icon="{{:: $ctrl.closeIcon}}"\n      ng-click="$ctrl.onClear()"\n    &gt;&lt;/rg-button&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-if="!$ctrl.borderless &amp;&amp; $ctrl.error" class="').concat(tt.Z.errorText," ").concat(ot().errorText,'"&gt;{{$ctrl.error}}&lt;/div&gt;\n&lt;/div&gt;\n  ')),At.$inject=["$element"],pt.component("rgInput",At);const Ct=pt.name;function It(e){return It="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},It(e)}function ft(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,mt(r.key),r)}}function mt(e){var t=function(e,t){if("object"!=It(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=It(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==It(t)?t:t+""}function ht(e,t,n){return t=bt(t),function(e,t){if(t&amp;&amp;("object"===It(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,vt()?Reflect.construct(t,n||[],bt(e).constructor):t.apply(e,n))}function vt(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(vt=function(){return!!e})()}function bt(e){return bt=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},bt(e)}function yt(e,t){return yt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},yt(e,t)}n(89397);var wt=o().module("Ring.shortcuts.hint-popup",[Qe,Je,F,Ct,z]),_t=function(e){return"function"==typeof e?e():e},jt=function(e){function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),ht(this,t,arguments)}var n,r;return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;yt(e,t)}(t,e),n=t,r=[{key:"show",value:function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:{},t=arguments.length&gt;1?arguments[1]:void 0,n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:"Got it",r=arguments.length&gt;3&amp;&amp;void 0!==arguments[3]?arguments[3]:"Search",o=this.$inject,i=o.dialog,a=o.shortcuts,s=t||a.getRegisteredShortcuts();return s.forEach((function(e){e.shortcuts.forEach((function(e){e.titles=e.titles||[],e.title&amp;&amp;!e.titles.includes(e.title)&amp;&amp;e.titles.push(e.title)}))})),i.show(Object.assign({template:'&lt;div class="shortcuts-hint"&gt;\n\n  &lt;div class="shortcuts-hint__search-input-wrapper"&gt;\n    &lt;rg-input\n      ng-attr-placeholder="{{hintPopupCtrl.searchPlaceholder}}"\n      ng-model="hintPopupCtrl.searchText"\n    &gt;&lt;/rg-input&gt;\n    &lt;rg-icon\n      class="shortcuts-hint__search-icon"\n      glyph="{{hintPopupCtrl.searchIcon}}"\n    &gt;&lt;/rg-icon&gt;\n  &lt;/div&gt;\n\n  &lt;div class="shortcuts-hint__columns"&gt;\n    &lt;div class="shortcuts-hint__table"&gt;\n      &lt;div ng-repeat="mode in hintPopupCtrl.modes"\n        class="shortcuts-hint__shortcut-block"&gt;\n\n        &lt;div class="shortcuts-hint__table-title" ng-if="mode.title"&gt;\n          &lt;div&gt;&lt;/div&gt;\n          &lt;div class="shortcuts-hint__shortcuts-title"&gt;{{hintPopupCtrl.getTitle(mode.title)}}&lt;/div&gt;\n        &lt;/div&gt;\n\n        &lt;div ng-repeat="shortcut in mode.shortcuts | shortcutSearch:hintPopupCtrl.searchText"\n          class="shortcuts-hint__table-row"&gt;\n          &lt;div class="shortcuts-hint__shortcut-cell"&gt;\n            &lt;div class="shortcuts-hint__shortcut"\n              ng-if="hintPopupCtrl.isArray(shortcut.key)"\n              ng-repeat="key in shortcut.key track by $index"&gt;\n              {{key | shortcutKeySymbol}}\n            &lt;/div&gt;\n            &lt;span class="shortcuts-hint__shortcut"\n              ng-if="!hintPopupCtrl.isArray(shortcut.key)"&gt;{{shortcut.key | shortcutKeySymbol}}&lt;/span&gt;\n          &lt;/div&gt;\n          &lt;div class="shortcuts-hint__hint"&gt;\n            &lt;span ng-repeat="title in shortcut.titles"&gt;\n              {{hintPopupCtrl.getTitle(title)}}\n              &lt;br ng-if="!$last"&gt;\n            &lt;/span&gt;\n          &lt;/div&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div rg-template="hintPopupCtrl.tailTemplate"&gt;&lt;/div&gt;\n\n&lt;/div&gt;',closeOnClick:!0,autoWidth:!0,cssClass:"shortcuts-hint__dialog",controllerAs:"hintPopupCtrl",buttons:[{label:n,default:!0}],controller:function(){var t=this;t.searchIcon=l(),t.modes=s,t.tailTemplate=e.tailTemplate,t.isArray=function(e){return Array.isArray(e)},t.searchText="",t.searchPlaceholder=r,t.getTitle=_t}},e))}}],r&amp;&amp;ft(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),t}(p);function xt(e){return(0,A.o)(e)}function Et(e){var t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:"";return(e||[]).filter((function(e){var n=e.key.join?e.key.join(" "):e.key,r=xt(n);if(e.titles.length){var o=-1!==n.toLowerCase().indexOf(t.toLowerCase()),i=-1!==e.titles.map(_t).join(" ").toLowerCase().indexOf(t.toLowerCase()),a=-1!==r.toLowerCase().indexOf(t.toLowerCase());return o||i||a}return!1}))}jt.$inject=["dialog","shortcuts"],wt.service("rgShortcutsHintPopup",jt),wt.filter("shortcutKeySymbol",(function(){return xt})),wt.filter("shortcutSearch",(function(){return Et}));const St=wt.name;var Tt=n(38969),Mt=o().module("Ring.auth",[]);Mt.provider("auth",["$httpProvider",function(e){var t,n,r={cleanHash:!1};this.init=function(e){t=e},this.initWithInitializedAuth=function(e){t=e.authInstance,n=e.authInitPromise},this.config=function(e){var n=o().extend({},r,e);t=new Tt.ZP(n)},e.interceptors.push(["$q","$injector","auth",function(e,t,n){function r(e,t){return e&amp;&amp;e.url&amp;&amp;e.url.indexOf(t)===e.url.length-t.length}return{request:function(e){return!n||r(e,".html")||e&amp;&amp;e.noAuthorization?e:n.promise.then((function(){return n.auth.requestToken()})).then((function(t){return t&amp;&amp;(e.headers.Authorization="Bearer ".concat(t)),e}))},responseError:function(o){if(n&amp;&amp;!r(o.config,".html")&amp;&amp;null!=o.data&amp;&amp;Tt.ZP.shouldRefreshToken(o.data.error)){var i=t.get("$http"),a=o.config,s=a.data,c=a.method,l=a.params,g=a.url;return n.auth.forceTokenUpdate().then((function(){return i({data:s,method:c,params:l,url:g})}))}return e.reject(o)}}}]),this.$get=["$injector","$log","$sniffer",function(e,r,o){return t?(!1===t.config.reloadOnUserChange&amp;&amp;t.addListener("userChange",(function(){e.get("$route").reload()})),n||(n=t.init()).then((function(n){if(n){var r=document.getElementsByTagName("base"),i=t.config.redirectUri;if(r.length&gt;0&amp;&amp;(i=r[0].href),0===n.indexOf(i)){var a=e.get("$location"),s=n.substr(i.length);a.$$html5&amp;&amp;!o.history&amp;&amp;(s=s.replace(/^#\//,"")),a.url(s).replace()}}}),(function(e){e.authRedirect||r.error(e)})),{auth:t,requestUser:t.requestUser.bind(t),clientId:t.config.clientId,logout:t.logout.bind(t),promise:n}):(r.warn("Auth wasn't initialized"),null)}]}]);const Lt=Mt.name;n(32207),n(49141),n(989),n(62921),n(59134);var kt=n(51341),Ot=n(48331);function Pt(e){return Pt="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Pt(e)}function Nt(){Nt=function(){return t};var e,t={},n=Object.prototype,r=n.hasOwnProperty,o=Object.defineProperty||function(e,t,n){e[t]=n.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",s=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function l(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{l({},"")}catch(e){l=function(e,t,n){return e[t]=n}}function g(e,t,n,r){var i=t&amp;&amp;t.prototype instanceof f?t:f,a=Object.create(i.prototype),s=new M(r||[]);return o(a,"_invoke",{value:x(e,n,s)}),a}function u(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=g;var d="suspendedStart",p="suspendedYield",A="executing",C="completed",I={};function f(){}function m(){}function h(){}var v={};l(v,a,(function(){return this}));var b=Object.getPrototypeOf,y=b&amp;&amp;b(b(L([])));y&amp;&amp;y!==n&amp;&amp;r.call(y,a)&amp;&amp;(v=y);var w=h.prototype=f.prototype=Object.create(v);function _(e){["next","throw","return"].forEach((function(t){l(e,t,(function(e){return this._invoke(t,e)}))}))}function j(e,t){function n(o,i,a,s){var c=u(e[o],e,i);if("throw"!==c.type){var l=c.arg,g=l.value;return g&amp;&amp;"object"==Pt(g)&amp;&amp;r.call(g,"__await")?t.resolve(g.__await).then((function(e){n("next",e,a,s)}),(function(e){n("throw",e,a,s)})):t.resolve(g).then((function(e){l.value=e,a(l)}),(function(e){return n("throw",e,a,s)}))}s(c.arg)}var i;o(this,"_invoke",{value:function(e,r){function o(){return new t((function(t,o){n(e,r,t,o)}))}return i=i?i.then(o,o):o()}})}function x(t,n,r){var o=d;return function(i,a){if(o===A)throw Error("Generator is already running");if(o===C){if("throw"===i)throw a;return{value:e,done:!0}}for(r.method=i,r.arg=a;;){var s=r.delegate;if(s){var c=E(s,r);if(c){if(c===I)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(o===d)throw o=C,r.arg;r.dispatchException(r.arg)}else"return"===r.method&amp;&amp;r.abrupt("return",r.arg);o=A;var l=u(t,n,r);if("normal"===l.type){if(o=r.done?C:p,l.arg===I)continue;return{value:l.arg,done:r.done}}"throw"===l.type&amp;&amp;(o=C,r.method="throw",r.arg=l.arg)}}}function E(t,n){var r=n.method,o=t.iterator[r];if(o===e)return n.delegate=null,"throw"===r&amp;&amp;t.iterator.return&amp;&amp;(n.method="return",n.arg=e,E(t,n),"throw"===n.method)||"return"!==r&amp;&amp;(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),I;var i=u(o,t.iterator,n.arg);if("throw"===i.type)return n.method="throw",n.arg=i.arg,n.delegate=null,I;var a=i.arg;return a?a.done?(n[t.resultName]=a.value,n.next=t.nextLoc,"return"!==n.method&amp;&amp;(n.method="next",n.arg=e),n.delegate=null,I):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,I)}function S(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function T(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function M(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(S,this),this.reset(!0)}function L(t){if(t||""===t){var n=t[a];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,i=function n(){for(;++o&lt;t.length;)if(r.call(t,o))return n.value=t[o],n.done=!1,n;return n.value=e,n.done=!0,n};return i.next=i}}throw new TypeError(Pt(t)+" is not iterable")}return m.prototype=h,o(w,"constructor",{value:h,configurable:!0}),o(h,"constructor",{value:m,configurable:!0}),m.displayName=l(h,c,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===m||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,h):(e.__proto__=h,l(e,c,"GeneratorFunction")),e.prototype=Object.create(w),e},t.awrap=function(e){return{__await:e}},_(j.prototype),l(j.prototype,s,(function(){return this})),t.AsyncIterator=j,t.async=function(e,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new j(g(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},_(w),l(w,c,"Generator"),l(w,a,(function(){return this})),l(w,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},t.values=L,M.prototype={constructor:M,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(T),!t)for(var n in this)"t"===n.charAt(0)&amp;&amp;r.call(this,n)&amp;&amp;!isNaN(+n.slice(1))&amp;&amp;(this[n]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function o(r,o){return s.type="throw",s.arg=t,n.next=r,o&amp;&amp;(n.method="next",n.arg=e),!!o}for(var i=this.tryEntries.length-1;i&gt;=0;--i){var a=this.tryEntries[i],s=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc&lt;=this.prev){var c=r.call(a,"catchLoc"),l=r.call(a,"finallyLoc");if(c&amp;&amp;l){if(this.prev&lt;a.catchLoc)return o(a.catchLoc,!0);if(this.prev&lt;a.finallyLoc)return o(a.finallyLoc)}else if(c){if(this.prev&lt;a.catchLoc)return o(a.catchLoc,!0)}else{if(!l)throw Error("try statement without catch or finally");if(this.prev&lt;a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n&gt;=0;--n){var o=this.tryEntries[n];if(o.tryLoc&lt;=this.prev&amp;&amp;r.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,I):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),I},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),T(n),I}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;T(n)}return o}}throw Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:L(t),resultName:n,nextLoc:r},"next"===this.method&amp;&amp;(this.arg=e),I}},t}function Dt(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function Rt(e){var t=e.controller("rgSomePermissions");return t&amp;&amp;t.registerPermission()||o().noop}n(59019);var Ut=o().module("Ring.permissions",["Ring.auth"]);Ut.provider("userPermissions",(function(){var e={};this.config=function(t){e=t},this.$get=["auth","$q","$http",function(t,n,r){var o=t.auth.getAPIPath()+kt.Z.API_PERMISSION_CACHE_PATH;function i(){var e;return e=Nt().mark((function e(t,n){var r,i;return Nt().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,n.get(o,{params:{fields:"permission/key,global,projects(id,ringId)",query:t}});case 2:return r=e.sent,i=r.data,e.abrupt("return",i);case 5:case"end":return e.stop()}}),e)})),i=function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Dt(i,r,o,a,s,"next",e)}function s(e){Dt(i,r,o,a,s,"throw",e)}a(void 0)}))},i.apply(this,arguments)}var a=e.datasource||function(e,t){return i.apply(this,arguments)};e.datasource=function(e){return a(e,r)};var s=new kt.Z(t.auth,e);return s.load=function(){return n.when(kt.Z.prototype.load.call(this))},s}]})),Ut.directive("rgPermission",["userPermissions","$interpolate",function(e,t){return{controller:["$scope","$element","$attrs",function(n,r,o){var i=this,a=r[0];this.permitted=!1,a.classList.add("ring-permission-hide");var s=t(o.rgPermission)(n),c=o.hasOwnProperty("inGlobal")?Ot.Z.GLOBAL_PROJECT_ID:n.$eval(o.inProject);e.check(s,c).then((function(e){return i.permitted=e,e&amp;&amp;a.classList.remove("ring-permission-hide"),e})).then(Rt(r))}]}}]),Ut.directive("rgPermissionIf",["$animate","userPermissions","$interpolate",function(e,t,n){return{transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,require:"^?rgSomePermissions",link:function(r,o,i,a,s){var c,l,g=i.hasOwnProperty("inGlobal")?Ot.Z.GLOBAL_PROJECT_ID:r.$eval(i.inProject),u=n(i.rgPermissionIf)(r);t.check(u,g).then((function(t){t?l||(l=r.$new(),s(l,(function(t){c={startNode:t[0],endNode:t[t.length++]=document.createComment(" end rgPermissionIf: ".concat(i.rgPermissionIf," "))},e.enter(t,o.parent(),o)}))):(l&amp;&amp;(l.$destroy(),l=null),c&amp;&amp;(e.leave(getBlockElements(c)),c=null))})).then(Rt(o))}}}]),Ut.directive("rgSomePermissions",(function(){return{scope:{rgSomePermissions:"="},controller:["$scope",function(e){var t=[];e.rgSomePermissions=!1,this.registerPermission=function(){var n={permitted:!1};return t.push(n),function(r){n.permitted=r,function(){for(var n=t.length-1;n&gt;=0;n--)if(t[n].permitted)return void(e.rgSomePermissions=!0);e.rgSomePermissions=!1}()}}}]}}));const zt=Ut.name;n(3636),n(39391);var $t=n(34863);function Gt(e){return Gt="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Gt(e)}var Bt=o().module("Ring.tabs",[]);Bt.directive("rgTabs",["$location","$rootScope",function(e,t){return{restrict:"E",transclude:!0,template:'&lt;div\n  ng-class=":: styles.tabs"\n  rg-shortcuts="ring-tabs"\n  shortcuts-map="keyMap"\n  shortcuts-focus="focus"\n&gt;\n  &lt;div\n    ng-class=":: [styles.titles, tabsClass]"\n    role="tablist"\n  &gt;\n    &lt;button\n      role="tab"\n      type="button"\n      ng-repeat="pane in panes | orderBy:\'tabIndex\'"\n      ng-click="control.select(pane)"\n      ng-attr-tabindex="{{(pane.selected || pane.ngDisabled) ? -1 : 0}}"\n      ng-disabled="pane.ngDisabled"\n      data-test="ring-tab"\n      ng-attr-data-test-active="{{pane.selected  ? \'true\' : \'false\'}}"\n      ng-attr-class="{{ tabClass(pane) }}"\n    &gt;&lt;span\n      ng-class=":: styles.visible"&gt;{{pane.title}}&lt;span\n      ng-class=":: styles.tabCounter"\n      ng-show="pane.counter !== undefined"&gt;{{ pane.counter }}&lt;/span\n    &gt;&lt;/span&gt;\x3c!--\n      hack for preserving constant tab width\n    --\x3e&lt;span ng-class=":: styles.hidden"&gt;{{pane.title}}&lt;span\n      ng-class=":: styles.tabCounter" ng-show="pane.counter !== undefined"&gt;{{ pane.counter }}&lt;/span&gt;&lt;/span&gt;\n      &lt;span ng-class=":: styles.hiddenBold"&gt;{{pane.title}}&lt;span\n        ng-class=":: styles.tabCounter" ng-show="pane.counter !== undefined"&gt;{{ pane.counter }}&lt;/span&gt;&lt;/span&gt;\n      &lt;span ng-class=":: styles.hiddenRegular"&gt;{{pane.title}}&lt;span\n        ng-class=":: styles.tabCounter" ng-show="pane.counter !== undefined"&gt;{{ pane.counter }}&lt;/span&gt;&lt;/span&gt;\n    &lt;/button&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-transclude&gt;&lt;/div&gt;\n\n&lt;/div&gt;',replace:!0,scope:{tabParameter:"@",tabsClass:"=",control:"=?",disableLocationChanging:"="},controller:["$scope",function(n){function r(){return e.search()[n.tabParameter]}function o(t,r){if(t!==n.current&amp;&amp;!t.ngDisabled)for(var o=0;o&lt;n.panes.length;o++){var i=n.panes[o];i===t||i.tabId===t?(n.current=t,i.selected=!0,r||e.search(n.tabParameter,t.tabId)):i.selected=!1}}function i(e){var t=n.panes.indexOf(n.current),r=t;do{r+=e?-1:1}while(r&gt;-1&amp;&amp;r&lt;n.panes.length&amp;&amp;n.panes[r].ngDisabled);return r&gt;=n.panes.length?r=n.panes.length-1:r&lt;0&amp;&amp;(r=0),n.panes[r].ngDisabled?t:r}function a(){n.panes.length&amp;&amp;o(function(){var e=r();if(e){var t=n.panes.find((function(t){return t.tabId===e}));return t&amp;&amp;!t.ngDisabled?t:n.panes[i()]}return n.panes[0]}(),!0)}n.panes=[],n.current=null,n.styles=$t.Z,this.addTab=function(e){n.panes.push(e),1!==n.panes.length&amp;&amp;e.tabId!==r()||o(e,!0)},this.removeTab=function(e){var t=n.panes.indexOf(e);n.panes.splice(t,1),a()},this.checkPane=a,n.$on("$destroy",t.$on("$routeUpdate",a)),n.control={},n.control.isLast=function(){return n.panes.indexOf(n.current)===n.panes.length-1},n.control.isFirst=function(){return 0===n.panes.indexOf(n.current)},n.control.select=function(e){o(e,n.disableLocationChanging)},n.control.next=function(){var e=i();o(n.panes[e],n.disableLocationChanging)},n.control.prev=function(){var e=i(!0);o(n.panes[e],n.disableLocationChanging)},n.keyMap={next:n.control.next,prev:n.control.prev,focus:function(){return n.focus=!n.focus,!n.focus}},n.tabClass=function(e){return y()($t.Z.title,$t.Z.titleLegacy,function(e,t,n){var r;return r=function(e,t){if("object"!=Gt(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=Gt(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(t),(t="symbol"==Gt(r)?r:r+"")in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}({},$t.Z.selected,e.selected))},this.$onInit=function(){n.tabParameter||(n.tabParameter="tab")}}]}}]),Bt.directive("rgTabsPane",(function(){return{require:"^rgTabs",restrict:"E",transclude:!0,scope:{title:"@",counter:"@",tabId:"@?",tabIndex:"@?",selected:"=?",ngDisabled:"=?"},link:function(e,t,n,r){e.tabId=e.tabId||e.title.toLowerCase().replace(" ","-"),e.tabIndex=e.tabIndex?+e.tabIndex:0,r.addTab(e),e.$on("$destroy",(function(){r.removeTab(e)}))},template:'&lt;div class="ring-tabs__content" ng-class="{\'ring-tabs__content_active\':selected}" ng-if="selected" ng-transclude&gt;&lt;/div&gt;'}}));const Ft=Bt.name;n(12412);var Zt=o().module("Ring.title",[]);Zt.directive("rgPageTitle",(function(){return{scope:{rgPageTitle:"@?",noTitle:"@?",delimiter:"@"},controller:["$rootScope","$scope","$element","$attrs","pageTitle","$injector",function(e,t,n,r,i,a){var s=n[0].textContent,c=o().noop,l=e.$on("$routeChangeSuccess",(function(e,n){if(!n.$$route||!n.$$route.redirectTo){var r=n.$$route&amp;&amp;n.$$route.title;i.setCurrent(t.rgPageTitle||s),!1!==r&amp;&amp;((o().isArray(r)||o().isFunction(r))&amp;&amp;(r=a.invoke(r)),i.addElement(r||t.noTitle))}}));t.$on("$destroy",(function(){l(),c()})),this.$onInit=function(){i.setDelimiter(t.delimiter),r.rgPageTitle&amp;&amp;(c=t.$watch("rgPageTitle",(function(e){i.setRootElement(e)})))}}]}})),Zt.service("pageTitle",["$interpolate","$document",function(e,t){var n=this,r=" | ",o=t[0].title;function i(t){a(o=t&amp;&amp;e(t)())}function a(e){t[0].title=e}function s(e){var t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:0,n=o.split(r);n[-1===t?n.length-1:t]=e,i(n.join(r))}this.setDelimiter=function(e){r=e||r},this.setCurrent=function(e){o=e},this.setText=function(e){return a(e)},this.addElement=function(e,t){e.$promise?e.$promise.then((function(e){n.addElement(e[t||"name"])})):function(e){i(o?e+r+o:e)}(t?e[t]:e)},this.updateElement=function(e,t){e.$promise?e.$promise.then((function(e){n.updateElement(e[t||"name"])})):s(t?e[t]:e)},this.setRootElement=function(e){s(e,-1)}}]);const Yt=Zt.name;var Wt=n(55684),Ht=n.n(Wt),qt=n(36835),Qt=o().module("Ring.link",[]);Qt.directive("rgLink",(function(){return{restrict:"E",transclude:!0,replace:!0,template:'\n&lt;a class="'.concat(qt.Z.link," ").concat(qt.Z.compatibilityUnderlineMode,'"\n&gt;&lt;span class="').concat(qt.Z.inner,'" ng-transclude&gt;&lt;/span&gt;&lt;/a&gt;\n    ')}}));const Vt=Qt.name;var Kt=n(88576),Jt=n.n(Kt),Xt=o().module("Ring.breadcrumb",[Vt,F]);Xt.filter("breadcrumbNgChevronIcon",(function(){return function(){return Ht()}})),Xt.directive("rgBreadcrumb",(function(){return{template:'\n&lt;div class="'.concat(Jt().breadcrumb,'"&gt;\n  &lt;span class="').concat(Jt().breadcrumbElement,'" data-test="ring-breadcrumb" ng-show="label"&gt;\n    &lt;rg-link\n      ng-if="link"\n      ng-href="{{link}}"\n    &gt;{{label}}&lt;/rg-link&gt;\n\n    &lt;rg-link ng-if="!link &amp;&amp; onClick"\n          ng-class="onClick &amp;&amp; \'ring-link\'"\n          data-test="ring-breadcrumb-link"\n          ng-click="onClick({$event: $event})"&gt;{{label}}&lt;/rg-link&gt;\n\n    &lt;span ng-if="!link &amp;&amp; !onClick" ng-click="onClick({$event: $event})"&gt;{{label}}&lt;/span&gt;\n  &lt;/span&gt;\n\n  &lt;span ng-show="label"&gt;\n    &lt;rg-icon\n      class="').concat(Jt().separatorIcon,'"\n      glyph="{{\'\' | breadcrumbNgChevronIcon}}"\n    &gt;&lt;/rg-icon&gt;\n  &lt;/span&gt;\n\n  &lt;span class="').concat(Jt().breadcrumbElement," ").concat(Jt().active,'" data-test="ring-breadcrumb-element" ng-transclude&gt;&lt;/span&gt;\n&lt;/div&gt;\n\n    '),replace:!0,transclude:!0,restrict:"E",scope:{label:"@",link:"@",onClick:"&amp;"}}}));const en=Xt.name;var tn=n(59166),nn=n(8474);function rn(e){return rn="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},rn(e)}function on(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,gn(r.key),r)}}function an(e,t,n){return t=cn(t),function(e,t){if(t&amp;&amp;("object"===rn(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,sn()?Reflect.construct(t,n||[],cn(e).constructor):t.apply(e,n))}function sn(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(sn=function(){return!!e})()}function cn(e){return cn=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},cn(e)}function ln(e,t){return ln=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},ln(e,t)}function gn(e){var t=function(e,t){if("object"!=rn(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=rn(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==rn(t)?t:t+""}var un,dn,pn,An=o().module("Ring.loader",[]),Cn=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];var i=(e=an(this,t,[].concat(r))).$inject.$element;return e.loader=new nn.Z(i[0],{message:e.message}),e}var n,r;return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;ln(e,t)}(t,e),n=t,(r=[{key:"$onDestroy",value:function(){this.loader.destroy()}},{key:"$onChanges",value:function(e){this.loader.updateMessage(e.message.currentValue)}}])&amp;&amp;on(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),t}(p);un=Cn,pn={message:"@"},(dn=gn(dn="bindings"))in un?Object.defineProperty(un,dn,{value:pn,enumerable:!0,configurable:!0,writable:!0}):un[dn]=pn,Cn.$inject=["$element"],An.component("rgLoader",Cn);const In=An.name;var fn=o().module("Ring.loader-screen",[In]);fn.service("loaderScreen",["$timeout","$rootScope",function(e,t){var n,r,o=this,i=!1,a=!1;this.startLoading=function(){r||(r=e((function(){o.setVisible(!0)}),arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:100))},this.stopLoading=function(){r&amp;&amp;(e.cancel(r),r=null),o.setVisible(!1)},this.startInitialLoading=function(){i=!0,o.setVisible(!0)},this.stopInitialLoading=function(){i=!1,o.setVisible(!1)},t.isInitialLoading=function(){return i},t.isLoaderVisible=function(){return n},t.isLoadingFailed=function(){return a},this.failInitialLoading=function(e){o.stopInitialLoading(),a=!0,t.error=e},this.setVisible=function(e){n=e},t.$on("$routeChangeSuccess",(function(){o.stopInitialLoading()})),t.$on("$routeChangeError",(function(e,t,n,r){r&amp;&amp;(r.silent||r.authRedirect)||o.failInitialLoading(r)}))}]),fn.directive("rgLoaderScreen",(function(){return{restrict:"A",scope:{message:"@rgLoaderScreen"},template:'\n&lt;div class="'.concat(tn.Z.loaderScreen,'" ng-if="$root.isLoaderVisible()"&gt;\n  &lt;rg-loader class="').concat(tn.Z.loader,'"\n    message="{{$root.isInitialLoading() ? message : \'\'}}"&gt;&lt;/rg-loader&gt;\n&lt;/div&gt;\n    ')}}));const mn=fn.name;var hn=n(16032),vn=o().module("Ring.error-message",[F,Vt]);vn.directive("rgErrorMessage",(function(){return{replace:!0,transclude:!0,template:'\n&lt;div class="'.concat(hn.Z.errorMessage,'" data-test="ring-error-message"&gt;\n\n    &lt;rg-icon class="').concat(hn.Z.icon,'" glyph="{{icon}}" color="gray" size="64"&gt;&lt;/rg-icon&gt;\n    \n    &lt;div class="').concat(hn.Z.content,'"&gt;\n      &lt;div class="').concat(hn.Z.title,'" data-test="ring-error-message-title"\n      &gt;&lt;span ng-if="code"&gt;{{ code }}:&lt;/span&gt; {{ message }}&lt;/div&gt;\n      \n      &lt;div class="').concat(hn.Z.description,'" ng-transclude&gt;&lt;/div&gt;\n      \n      \n       &lt;div ng-if="links"&gt;\n          &lt;span ng-repeat="link in links"&gt;\n            &lt;rg-link ng-if="link.target" ng-href="{{link.href}}" target="{{link.target}}"&gt;{{link.text}}&lt;/rg-link&gt;&lt;rg-link\n            ng-if="!link.target" ng-href="{{link.href}}"&gt;{{link.text}}&lt;/rg-link&gt;{{$last ? \'\' : \',\'}}\n          &lt;/span&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n    '),restrict:"E",scope:{code:"@",message:"@",links:"=",icon:"@"}}}));const bn=vn.name;var yn=n(50417),wn=n(56039),_n=n.n(wn);function jn(e){return function(e){if(Array.isArray(e))return xn(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return xn(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?xn(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function xn(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var En=o().module("Ring.button-group",[]),Sn=y()(yn.Z.buttonGroup,_n().buttonGroup);En.directive("rgButtonGroup",(function(){return{restrict:"A",link:function(e,t,n){var r,o,i=t[0];n.split?(r=i.classList).add.apply(r,jn(yn.Z.split.split(" "))):(o=i.classList).add.apply(o,jn(Sn.split(" ")))}}})),En.directive("rgButtonGroupCaption",(function(){return{restrict:"A",link:function(e,t){var n;(n=t[0].classList).add.apply(n,jn(yn.Z.caption.split(" ")))}}}));const Tn=En.name;var Mn=n(62698);function Ln(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var kn=o().module("Ring.button-toolbar",[]);kn.directive("rgButtonToolbar",(function(){return{restrict:"A",link:function(e,t){var n;(n=t[0].classList).add.apply(n,function(e){return function(e){if(Array.isArray(e))return Ln(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Ln(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ln(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(Mn.Z.buttonToolbar.split(" ")))}}}));const On=kn.name;n(14032);var Pn=n(49637),Nn=o().module("Ring.table-legacy.toolbar",[]);Nn.directive("rgLegacyTableToolbar",(function(){var e=(0,Pn.Z)();return{restrict:"E",replace:!0,transclude:!0,template:'&lt;div class="ring-table__toolbar"&gt;&lt;div class="ring-table__toolbar-controls ring-popup-container-mark" ng-transclude&gt;&lt;/div&gt;&lt;/div&gt;',scope:{toolbarIsReady:"=?"},link:function(t,n,r,o){var i,a=n[0],s=a.querySelector(".ring-table__toolbar-controls"),c=function(){return e((function(){var e=(0,I.c6)(),t=a.getBoundingClientRect().top+e,n=i||t;if(e&gt;n&amp;&amp;!i?(a.style.height="".concat(a.offsetHeight,"px"),i=n,s.classList.add("ring-table__toolbar-controls_fixed")):e&lt;=n&amp;&amp;i&gt;=0&amp;&amp;(i=null,a.style.height=null,s.classList.remove("ring-table__toolbar-controls_fixed")),r.container){var o=s.closest(r.container);o&amp;&amp;(s.style.width="".concat(o.getBoundingClientRect().width,"px"),s.style.left="unset",s.style.boxSizing="border-box")}}))};void 0!==r.stick&amp;&amp;(window.addEventListener("scroll",c),t.$on("$destroy",(function(){window.removeEventListener("scroll",c)}))),t.toolbarIsReady=!0}}}));const Dn=Nn.name;var Rn=n(11815),Un=n.n(Rn),zn=n(54598),$n=n.n(zn),Gn=n(32077),Bn=o().module("Ring.message-bundle",[]);Bn.factory("ringI18n",(function(){return function(e){return e}})),Bn.service("RingMessageBundle",["ringI18n",function(e){var t=e;this.form_required=function(){return t("Value is required")},this.form_invalid=function(){return t("Value is invalid")},this.form_url=function(){return t("Should be a valid URL")},this.form_email=function(){return t("Should be a valid email")},this.form_number=function(){return t("Should be a number")},this.form_maxlength=function(){return t("Is too long")},this.form_minlength=function(){return t("Is too short")},this.form_pattern=function(){return t("Doesn't match the pattern")},this.form_equalvalue=function(){return t("Is not the same")},this.form_unique=function(){return t("Is not unique")},this.form_max=function(){return t("Is out of range")},this.form_min=function(){return t("Is out of range")},this.form_save=function(){return t("Save")},this.form_saved=function(){return t("Saved")},this.form_cancel=function(){return t("Cancel")},this.avatareditor_nosupport=function(){return t("Sorry, your browser doesn't support File API")},this.avatareditor_noselected=function(){return t("No image file was selected")},this.avatareditor_delete=function(){return t("Delete Image")},this.avatareditor_add=function(){return t("Add Image")},this.errorpage_seriouslywrong=function(){return t("Oh-oh... Something went seriously wrong.")},this.errorpage_offline=function(){return t("There's nothing we can do: The server seems to be offline.")},this.errorpage_disconnected=function(){return t("Disconnected")},this.errorpage_disconnectedmsg=function(){return t("No, no one's there.")},this.errorpage_401=function(){return t("Authorization required")},this.errorpage_401msg=function(){return t("You have requested access to a page that requires authorization, but the request is missing valid authentication credentials. It can also mean that your account has been banned.")},this.errorpage_403=function(){return t("Woah, you can't touch this!")},this.errorpage_403msg=function(){return t("Unfortunately, you are not allowed to access the page you've requested. It seems you don't have sufficient permissions.")},this.errorpage_404=function(){return t("Nope, can't find it!")},this.errorpage_404msg=function(){return t("Despite our best efforts, there's nothing here to show you with the URL you requested. Most likely the URL is invalid or you don't have permissions to access the page.")},this.errorpage_500=function(){return t("Oh-oh... Something went seriously wrong")},this.errorpage_500msg=function(){return t("Despite our best efforts, the server is not working properly.")},this.select_options_not_found=function(){return t("No options found")},this.select_loading=function(){return t("Loading...")},this.select_label=function(){return t("Select an option")},this.previous_page=function(){return t("previous")},this.next_page=function(){return t("next page")},this.first_page=function(){return t("First page")},this.last_page=function(){return t("Last page")},this.items_per_page=function(){return t("per page")},this.confirmation_ok=function(){return t("Ok")},this.confirmation_cancel=function(){return t("Cancel")}}]);const Fn=Bn.name;var Zn=n(67802),Yn=n.n(Zn),Wn=o().module("Ring.error-page",["ngRoute",bn,zt,Fn]);Wn.provider("errorPageConfiguration",(function(){var e={};this.config=function(t){e=t},this.$get=["$injector","$log",function(t,n){function r(e){try{return t.get(e)}catch(t){return void n.debug("errorPageConfiguration: unable to load ".concat(e))}}var i,a;return e.responseToMessageConverter&amp;&amp;(i=r(e.responseToMessageConverter)),e.links&amp;&amp;(a=r(e.links)),{responseToMessageConverter:i||o().noop,links:a||[]}}]})),Wn.factory("getErrorPagePresentation",["RingMessageBundle",function(e){return function(t){var n={401:{status:401,title:e.errorpage_401(),description:e.errorpage_401msg(),icon:$n()},404:{status:404,title:e.errorpage_404(),description:e.errorpage_404msg(),icon:Un()},403:{status:403,title:e.errorpage_403(),description:e.errorpage_403msg(),icon:$n()},500:{status:500,title:e.errorpage_500(),description:e.errorpage_500msg(),icon:Un()},0:{status:e.errorpage_disconnected(),title:e.errorpage_disconnectedmsg(),description:e.errorpage_offline(),icon:Un()},default:{title:e.errorpage_seriouslywrong(),icon:Un()}};return t.status in n?n[t.status]:o().extend({status:t.status,description:t.message},n.default)}}]),Wn.directive("rgErrorPageBackground",(function(){return{restrict:"A",controller:["$scope",function(e){this.setApplicationError=function(t){e.applicationError=t}}],link:function(e,t){var n=t[0];n.classList.add(Gn.Z.errorPage),e.$watch("applicationError",(function(e){e?n.classList.add(Gn.Z.enabled):n.classList.remove(Gn.Z.enabled)}))}}})),Wn.directive("rgErrorPage",["errorPageConfiguration","$route","userPermissions","$log","getErrorPagePresentation","$q","$compile",function(e,t,n,r,i,a,s){return{replace:!0,transclude:!0,template:"&lt;div&gt;&lt;/div&gt;",require:"?^rgErrorPageBackground",link:function(c,l,g,u,d){function p(t){d(c,(function(n){var r=document.createElement("div");r.className="ng-hide",o().element(r).append(n),l.append(r),c.error=i(t),c.links=e.links;var a='\n              &lt;div class="'.concat(Yn().errorPageNg,'"&gt;\n                &lt;rg-error-message\n                  code="{{ error.status }}"\n                  message="{{ error.title }}"\n                  links="links"\n                  icon="{{ error.icon }}"\n                &gt;\n                  &lt;span&gt;{{ error.description }}&lt;/span&gt;\n                &lt;/rg-error-message&gt;\n              &lt;/div&gt;\n            '),g=s(o().element(a))(c);if(l.append(g),u&amp;&amp;u.setApplicationError(!0),u){var d=c===c.$root?"$routeChangeStart":"$destroy";c.$on(d,(function(){u.setApplicationError(!1)}))}}))}function A(){d(c,(function(e){l.append(e)}))}(function(){if(t.current&amp;&amp;t.current.$$route&amp;&amp;t.current.$$route.permission){var e,o,i=t.current.$$route.permission;return n.load().then((function(t){t.has(i)?e():(r.debug("Navigation: no page".concat(i," permission, status 403")),o({status:403}))})),a((function(){for(var t=arguments.length,n=new Array(t),r=0;r&lt;t;r++)n[r]=arguments[r];e=n[0],o=n[1]}))}return a.resolve()})().then((function(){var t=c.$eval(g.rgErrorPage);t&amp;&amp;t.error?(p(t.error),r.debug("Navigation: errorSource ".concat(g.rgErrorPage," not permitted, status: ").concat(status))):function(t,n){var o=t&amp;&amp;(t.$promise||t.promise);return o?a((function(t,i){o.then((function(e){return t(),e})).catch((function(t){return r.debug("Navigation: errorSource ".concat(n," not permitted, status: ").concat(status)),i({status:t&amp;&amp;t.status,message:e.responseToMessageConverter(t)}),t}))})):a.resolve()}(t,g.rgErrorPage).then(A).catch(p)}),p)}}}]);const Hn=Wn.name;var qn=n(73935),Qn=qn.render,Vn=qn.unmountComponentAtNode,Kn=qn.hydrate,Jn=n(1596),Xn=n(75459),er=(n(40466),n(74181)),tr=n.n(er);function nr(e){return nr="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},nr(e)}function rr(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,ir(r.key),r)}}function or(e,t,n){return(t=ir(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ir(e){var t=function(e,t){if("object"!=nr(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=nr(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==nr(t)?t:t+""}var ar=function(){function e(t,n){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.scope=t;var r,o=this.constructor.$parse,i=this.constructor.MATCHES;if(!(r=n.match(this.constructor.OPTIONS_REGEXP)))throw new Error("Bad rgSelect expression format. Expected: [{item}] [[as] item.text] [select as item.selectLabel]"+" [describe as {item.description}] [for] {item} in {items|dataSource(query)} [track by item.id], Received: ".concat(n));this.hasItemGetter=Boolean(r[i.ITEM]&amp;&amp;r[i.LABEL]),this.itemGetter=o(r[i.ITEM]),this.labelGetter=r[i.LABEL]&amp;&amp;o(r[i.LABEL])||this.itemGetter,this.selectedLabelGetter=r[i.SELECTED_LABEL]&amp;&amp;o(r[i.SELECTED_LABEL]),this.descriptionGetter=r[i.DESCRIPTION]&amp;&amp;o(r[i.DESCRIPTION]),this.optionVariableName=r[i.OPTION],this.datasourceGetter=o(r[i.ITEMS]),this.trackByGetter=r[i.TRACK]&amp;&amp;o(r[i.TRACK]),this.datasourceIsFunction=r[i.ITEMS].indexOf("(")&gt;0}var t,n;return t=e,n=[{key:"getProperty",value:function(e,t){if(t){var n={};return n[this.optionVariableName]=e,t.call(this,this.scope,n)}}},{key:"getValue",value:function(e){if(!this.hasItemGetter)return e;var t=this.getProperty(e,this.itemGetter);return void 0===t?e:t}},{key:"getOptionByValue",value:function(e,t){var n=this;if(!this.hasItemGetter)return e;var r,o=t.filter((function(t){var r=n.getValue(t);return"object"===nr(e)?tr()(r,e):r===e}));if(o.length&gt;1)throw new Error("Error(rg-select): You can not have two options with same value(".concat("object"===nr(r=e)?JSON.stringify(r):String(r),")"));return o[0]}},{key:"getKey",value:function(e){return this.getProperty(e,this.trackByGetter)||e[this.constructor.defaultKeyField]||e}},{key:"getLabel",value:function(e){var t="string"==typeof e?e:null;return this.getProperty(e,this.labelGetter)||e[this.constructor.defaultLabelField]||t}},{key:"getSelectedLabel",value:function(e){return this.getProperty(e,this.selectedLabelGetter)||e[this.constructor.defaultSelectedLabelField]}},{key:"getDescription",value:function(e){return this.getProperty(e,this.descriptionGetter)||e[this.constructor.defaultDescriptionField]}},{key:"getOptions",value:function(e,t){return this.datasourceGetter(this.scope,{query:e,skip:t})}}],n&amp;&amp;rr(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),e}();or(ar,"OPTIONS_REGEXP",/^\s*(.*?)(?:\s+as\s+(.*?))?(?:\s+select\s+as\s+(.*?))?(?:\s+describe\sas\s+(.*?))?(?:\s+for\s+)?([$\w]+)\s+in\s+(.*?)(?:\s+track\sby\s+(.*?))?$/),or(ar,"MATCHES",{ITEM:1,LABEL:2,SELECTED_LABEL:3,DESCRIPTION:4,OPTION:5,ITEMS:6,TRACK:7}),or(ar,"defaultKeyField","key"),or(ar,"defaultLabelField","label"),or(ar,"defaultSelectedLabelField","selectedLabel"),or(ar,"defaultDescriptionField","description");var sr=o().module("Ring.select.options",[]);sr.factory("SelectOptions",["$parse",function(e){return ar.$parse=e,ar}]);const cr=sr.name;function lr(e){return lr="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},lr(e)}function gr(){return gr=Object.assign?Object.assign.bind():function(e){for(var t=1;t&lt;arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&amp;&amp;(e[r]=n[r])}return e},gr.apply(this,arguments)}function ur(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,dr(r.key),r)}}function dr(e){var t=function(e,t){if("object"!=lr(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=lr(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==lr(t)?t:t+""}var pr=function(){function e(t,n,r,i,a){var s=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),function(e,t,n){(t=dr(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(this,"onClick",(function(){s._clickHandler()})),this.container=t,this.ctrl=r,this.props=n||{},this.type=i,this.node=t,this.selectInstance=null,this.selectRef=function(e){s.selectInstance=e,a(e)},this._popup={isVisible:o().noop},this.attachEvents(),this.render()}var t,r;return t=e,r=[{key:"rerender",value:function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:{};for(var t in e)if(e.hasOwnProperty(t)){if(e[t]==this.props[t])break;return void this.render(e)}}},{key:"attachEvents",value:function(){this.container.addEventListener("click",this.onClick,{capture:!0})}},{key:"detachEvents",value:function(){this.container.removeEventListener("click",this.onClick,{capture:!0})}},{key:"render",value:function(e){if(this.reactSelect=i.createElement(Xn.r2,gr({},Object.assign({},this.props,e||{}),{ref:this.selectRef})),this.props=this.reactSelect.props,"dropdown"!==this.type){var t=n(97762);this.container.innerHTML=t.renderToString(this.reactSelect)}}},{key:"_clickHandler",value:function(){var e=this;this.detachEvents();var t=!1;"dropdown"===this.type?Qn((0,i.cloneElement)(this.reactSelect,{ref:function(n){var r;e.selectRef(n),n&amp;&amp;!t&amp;&amp;(null===(r=n._openPopupIfClosed)||void 0===r||r.call(n),t=!0)}}),this.container):Kn(this.reactSelect,this.container)}}],r&amp;&amp;ur(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),e}();const Ar=pr;function Cr(){return Cr=Object.assign?Object.assign.bind():function(e){for(var t=1;t&lt;arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&amp;&amp;(e[r]=n[r])}return e},Cr.apply(this,arguments)}function Ir(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function fr(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ir(Object(n),!0).forEach((function(t){mr(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ir(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function mr(e,t,n){var r;return r=function(e,t){if("object"!=hr(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=hr(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(t),(t="symbol"==hr(r)?r:r+"")in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function hr(e){return hr="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},hr(e)}var vr=o().module("Ring.select",[cr,Fn]);vr.directive("rgSelect",(function(){var e={input:Xn.ZP.Type.INPUT,button:Xn.ZP.Type.BUTTON,dropdown:Xn.ZP.Type.CUSTOM,suggest:Xn.ZP.Type.INPUT},t={FULL:Xn.ZP.Size.FULL,S:Xn.ZP.Size.S,M:Xn.ZP.Size.M,L:Xn.ZP.Size.L};return{scope:{ngModel:"=",selectType:"@",lazy:"=?",withInfiniteScroll:"=?",infiniteScrollPackSize:"@",options:"@",optionsScope:"=",label:"@",selectedLabel:"@",externalFilter:"=?",filter:"=?",tags:"=?",multiple:"=?",clear:"=?",onSelect:"&amp;",onDeselect:"&amp;",onOpen:"&amp;",onClose:"&amp;",onChange:"&amp;",notFoundMessage:"@",loadingMessage:"@",config:"=?",configAutoUpdate:"=",selectInstance:"=?",size:"@",dir:"@"},bindToController:!0,controllerAs:"selectCtrl",require:["?ngModel","rgSelect"],link:function(e,t,n,r){var o=r[0];r[1].setNgModelCtrl(o)},controller:["$q","$scope","$element","$attrs","$timeout","SelectOptions","RingMessageBundle",function(n,r,a,s,c,l,g){var u=this,d=a[0],p=document.createElement("span"),A=Number(u.infiniteScrollPackSize)||(u.withInfiniteScroll?50:0);u.selectInstance=null,u.ngModelCtrl=null,u.query=null,u.dataReceived=!1,u.skipNextModelSync=!1;var C=u.optionsScope?u.optionsScope:r.$parent;function I(e,t){return u.loadedOptions&amp;&amp;t&gt;0?(u.loadedOptions=u.loadedOptions.concat(e),u.stopLoadingNewOptions=0===e.length&amp;&amp;A):u.loadedOptions=e,u.lastSkip=t,u.loadedOptions}function f(){return u.selectType||s.type}u.setNgModelCtrl=function(e){u.ngModelCtrl=e},u.syncSelectToNgModel=function(e){function t(e){return e&amp;&amp;e.originalModel?u.optionsParser.getValue(e.originalModel):u.optionsParser.getValue(e)}u.ngModelCtrl&amp;&amp;(u.skipNextModelSync=!0,"suggest"===f()?u.ngModelCtrl.$setViewValue(e.label):Array.isArray(e)?u.ngModelCtrl.$setViewValue(e.map(t)):u.ngModelCtrl.$setViewValue(t(e)))},u.convertNgModelToSelect=function(e){function t(e){var t=u.optionsParser.getOptionByValue(e,u.loadedOptions||[]);return void 0===t&amp;&amp;(t=e),o().extend({key:u.optionsParser.getKey(t),label:u.optionsParser.getLabel(t),selectedLabel:u.optionsParser.getSelectedLabel(t),description:u.optionsParser.getDescription(t),originalModel:t},"object"===hr(t)?t:null)}if(null!=e)return Array.isArray(e)?e.map(t):t(e)};var m=null,h=0;u.getOptions=function(e,t){return n.when(u.optionsParser.getOptions(e,t))};var v=null;function b(e){u.skipNextModelSync?u.skipNextModelSync=!1:u.ngModelCtrl&amp;&amp;j({selected:u.convertNgModelToSelect(e)})}function y(){return u.selectInstance._popup.isVisible()}function _(e){null!=e&amp;&amp;(u.selectInstance=e)}function j(e){var t;null!==(t=u.selectInstance)&amp;&amp;void 0!==t&amp;&amp;t.node&amp;&amp;u.selectInstance.rerender(fr(fr({},e),{},{ref:_}))}function x(e,t){I(e,0),e!==t&amp;&amp;u.ngModelCtrl&amp;&amp;b(u.ngModelCtrl.$modelValue)}u.showLoader=function(){"suggest"!==f()&amp;&amp;j({loading:!0})},u.loadOptionsToSelect=function(e){if(u.stopLoadingNewOptions&amp;&amp;e===m)return n.resolve();u.stopLoadingNewOptions=!1;var t=function(e,t){return A&amp;&amp;e===t&amp;&amp;u.loadedOptions?u.lastSkip&lt;0?0:u.lastSkip+A:0}(e,m);return m=e,c.cancel(v),u.dataReceived?v=c(u.showLoader,150):u.showLoader(),h++,u.getOptions(e,t).then((function(n){if(h--,!(e!==m||t&amp;&amp;-1!==u.lastSkip&amp;&amp;t!==u.lastSkip+A&amp;&amp;u.infiniteScrollPackSize)){var r=I(n.data||n,t).map(u.convertNgModelToSelect);c.cancel(v),u.dataReceived=!0,j({data:r,loading:!1})}})).catch((function(e){return h--,c.cancel(v),j({loading:!1}),n.reject(e)}))},u.$onDestroy=function(){Vn(p),u.defaultConfig&amp;&amp;u.config&amp;&amp;Object.keys(u.defaultConfig).filter((function(e){return u.config[e]===u.defaultConfig[e]})).forEach((function(e){delete u.config[e]}))},u.$onInit=function(){var n,a;u.optionsParser=new l(C,u.options),u.lazy=!u.hasOwnProperty("lazy")||u.lazy,u.externalFilter&amp;&amp;(u.filter=u.filter||{},u.filter.fn=function(){return!0}),u.defaultConfig=(a={label:u.label||g.select_label(),selectedLabel:u.selectedLabel,allowAny:"suggest"===f(),hideArrow:"suggest"===f(),filter:u.filter,tags:u.tags,dir:u.dir,multiple:u.multiple,popupClassName:s.popupClass,clear:u.clear,ringPopupTarget:(n=document.querySelector("[data-anchor=dialog-container][data-in-sidebar=false]"),n&amp;&amp;n.contains(d)?"dialog-ng-popup-container":null),renderOptimization:"dropdown"!==f(),type:e[f()]||e.material,loadingMessage:u.loadingMessage||g.select_loading(),notFoundMessage:u.notFoundMessage||g.select_options_not_found(),targetElement:"dropdown"===f()?d:null,size:t[u.size]||t.FULL,height:w.oW.S,onBeforeOpen:function(){u.lastSkip=-1,u.loadedOptions=[],u.stopLoadingNewOptions=!1,u.loadOptionsToSelect(u.query),r.$evalAsync((function(){}))},onOpen:function(){r.$evalAsync((function(){u.onOpen()}))},onClose:function(){u.query=null,r.$evalAsync((function(){u.onClose()}))},onSelect:function(e,t){r.$evalAsync((function(){u.onSelect({selected:e,event:t})}))},onDeselect:function(e,t){r.$evalAsync((function(){u.onDeselect({deselected:e,event:t})}))},onChange:function(e,t){u.syncSelectToNgModel(e),r.$evalAsync((function(){u.onChange({selected:e,event:t})}))},onFilter:function(e){r.$evalAsync((function(){u.query=e,u.externalFilter&amp;&amp;u.loadOptionsToSelect(e),u.onFilter&amp;&amp;u.onFilter(e)}))},reloadOptions:function(e){r.$evalAsync((function(){u.loadOptionsToSelect(e||u.query)}))},getLoadedOptions:function(){return u.loadedOptions}},A&amp;&amp;(a.onLoadMore=function(){0===h&amp;&amp;r.$evalAsync((function(){u.loadOptionsToSelect(u.query)}))}),a),u.config=o().extend({},u.defaultConfig,u.config||{}),"suggest"===f()||"input"===f()?Qn(i.createElement(Xn.r2,Cr({ref:_},u.config)),p):u.selectInstance=new Ar(p,u.config,u,f(),_),d.appendChild(p),u.lazy||(u.optionsParser.datasourceIsFunction?u.loadOptionsToSelect(u.query):r.$watch((function(){return u.optionsParser.getOptions(u.query,0)}),x,!0)),r.$watch((function(){return u.ngModelCtrl&amp;&amp;u.ngModelCtrl.$modelValue}),b,!0),s.$observe("disabled",(function(e){j({disabled:e})})),r.$watch((function(){return u.multiple}),(function(){o().isDefined(u.multiple)&amp;&amp;j({multiple:u.multiple})})),u.configAutoUpdate&amp;&amp;r.$watchCollection((function(){return u.config}),(function(e,t){e!==t&amp;&amp;j(e)})),function(){if("dropdown"===f()){var e=function(){u.selectInstance._clickHandler()};d.addEventListener("click",e),d.addEventListener("keydown",(function(t){var n=(0,Jn.Z)(t),r=t.ctrlKey||t.altKey||t.metaKey||t.shiftKey;("Enter"===n&amp;&amp;!r||" "===n)&amp;&amp;(y()||(e(),t.preventDefault(),t.stopPropagation()))}))}}(),r.$on("$locationChangeSuccess",(function(){y()&amp;&amp;u.selectInstance._hidePopup()}))}}]}}));const br=vr.name;var yr=n(61661);function wr(e){return wr="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},wr(e)}function _r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function jr(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?_r(Object(n),!0).forEach((function(t){xr(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):_r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function xr(e,t,n){var r;return r=function(e,t){if("object"!=wr(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=wr(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(t),(t="symbol"==wr(r)?r:r+"")in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}n(35683);var Er="ring-tooltip-ng_open",Sr=o().module("Ring.tooltip",[]);Sr.directive("rgTooltip",["RgTooltipPopup",function(e){return{restrict:"A",link:function(t,n,r){var o=n[0],i=new e(o,(function(){try{return t.$eval(r.rgTooltip)}catch(e){return r.rgTooltip}}));o.addEventListener("mouseover",(function(){i.displayTooltip(r.rgTooltipClass),o.classList.add(Er)})),o.addEventListener("mouseout",(function(){i.hideTooltip(),o.classList.remove(Er)}))}}}]),Sr.factory("RgTooltipPopup",(function(){return function(e,t){var n=this;this.wrapperElement=document.createElement("span"),this.defaultProps={anchorElement:e,maxHeight:400,attached:!1,dontCloseOnAnchorClick:!0,trapFocus:!1},this.renderPopup=function(e){return Qn((0,i.createElement)(yr.ZP,jr(jr(jr({},n.defaultProps),e),{},{ref:function(e){null!=e&amp;&amp;(n.popup=e)}}),n.text),n.wrapperElement)},this.displayTooltip=function(e){var r=t();if(r){n.text=r;var o=y()({"ring-tooltip-ng":!0},e);n.renderPopup({hidden:!1,className:o})}},this.hideTooltip=function(){n.renderPopup({hidden:!0})}}}));const Tr=Sr.name;var Mr=n(27405),Lr=o().module("Ring.button-set",[]);Lr.directive("rgButtonSet",(function(){return{restrict:"E",replace:!0,scope:!1,transclude:!0,template:'&lt;div class="'.concat(Mr.Z.buttonSet,'" ng-transclude&gt;&lt;/div&gt;')}}));const kr=Lr.name;n(13712),n(52472);var Or=o().module("Ring.form",[Fn]);Or.factory("getFormErrorMessages",["RingMessageBundle",function(e){function t(t,n){var r="form_".concat(t);if(e.hasOwnProperty(r))return e[r]();for(var o=n&amp;&amp;n[t]||[],i=0;i&lt;o.length;++i)if(o[i]&amp;&amp;o[i].message)return o[i].message}return function(e){var n=[];for(var r in e)e.hasOwnProperty(r)&amp;&amp;e[r]&amp;&amp;n.push(t(r,e));return n}}]),Or.directive("rgErrorBubble",["getFormErrorMessages",function(e){return{scope:{errorBubble:"&amp;rgErrorBubble"},replace:!0,template:'&lt;div class="ring-error-bubble" ng-class="{ active: active, \'ring-error-bubble_material\': material }" ng-style="style"&gt;\n  &lt;div ng-repeat="errorMessage in getFormErrorMessages(errorBubble().$error)"&gt;{{ errorMessage }}&lt;/div&gt;\n&lt;/div&gt;',link:function(t,n,r){t.style={};for(var o,i,a=Array.from(n[0].parentNode.children),s=0;s&lt;a.length;s++)if("input"===(i=a[s].tagName.toLowerCase())||"textarea"===i){o=a[s];break}t.material=void 0!==r.material,t.$watch((function(){var e=t.errorBubble();return e.$invalid&amp;&amp;e.$dirty}),(function(e){t.active=e,e&amp;&amp;o&amp;&amp;(t.style.left=o.offsetWidth+2)})),t.getFormErrorMessages=e}}}]),Or.directive("rgEqualValue",(function(){return{require:"ngModel",link:function(e,t,n,r){var o=t[0];function i(e,t){r.$setValidity("equalvalue",e===t)}e.$watch(n.rgEqualValue,(function(e){i(o.value,e)})),o.addEventListener("keyup",(function(){var t=e.$eval(n.rgEqualValue);e.$apply((function(){i(o.value,t)}))}))}}})),Or.filter("rgInputClass",(function(){return function(e,t){return{"ring-input":!0,"ring-input_error":e.$invalid&amp;&amp;(e.$dirty||t),"ring-input_correct":!e.$invalid&amp;&amp;(e.$dirty||t)}}})),Or.directive("rgFormAutofillFix",["$timeout",function(e){return{require:"?form",priority:10,link:function(t,n,r,i){if(i){var a,s=0;!function t(){var r;o().forEach(n.find("input"),(function(e){var t=o().element(e),n=t.controller("ngModel"),i=t.val(),a=t.attr("type");n&amp;&amp;i&amp;&amp;"checkbox"!==a&amp;&amp;"radio"!==a&amp;&amp;(n.$setViewValue(i),r=!0)})),(!r||s&lt;5)&amp;&amp;(a=e(t,150),s++)}(),n.on("$destroy",(function(){e.cancel(a)}))}}}}]);const Pr=Or.name;function Nr(e){return Nr="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Nr(e)}n(50225);var Dr=o().module("Ring.save-field",[Fn,Pr,Je,pe,kr,we]);Dr.constant("rgSaveFieldShortcutsMode",{id:"ring-save-field",shortcuts:[{key:"ctrl+enter",action:"comboSubmit"},{key:"enter",action:"submit"},{key:"esc",action:"cancel"},{key:"up",action:"noop"},{key:"down",action:"noop"}]}),Dr.directive("rgSaveField",["RingMessageBundle","$timeout","$q","$compile","$parse",function(e,t,n,r,i){var a=/(\r\n|\n|\r)/gm,s="customError";return{require:"rgSaveField",transclude:!0,template:'&lt;div class="ring-save-field" ng-form="saveFieldForm" rg-shortcuts="ring-save-field" shortcuts-map="keyMap" shortcuts-focus="focus"&gt;\n  &lt;span class="ring-save-field__transclude-placeholder" ng-transclude=""&gt;&lt;/span&gt;\n\n  &lt;rg-button\n    ng-show="saveFieldForm.$dirty &amp;&amp; saveFieldForm.$valid"\n    mode="primary"\n    class="ring-save-field__button ng-hide"\n    ng-mousedown="cancelBlur()"\n\n    rg-promised-click="submitChanges($event)"\n    promised-mode="loader"\n  &gt;\n    {{wording.save}}\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    ng-show="saveFieldForm.$dirty &amp;&amp; !loading"\n    class="ring-save-field__button ng-hide"\n    ng-click="cancelChanges($event)"\n    ng-mousedown="cancelBlur()"\n  &gt;\n    {{wording.cancel}}\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    ng-show="done"\n    ng-disabled="true"\n    class="ring-save-field__button ng-hide"\n  &gt;\n    {{wording.saved}}\n  &lt;/rg-button&gt;\n&lt;/div&gt;',scope:{api:"=?",value:"=",workingValue:"=",onSave:"&amp;",afterSave:"&amp;?",validate:"&amp;?",parseElement:"&amp;?",formatElement:"&amp;?",multiline:"@"},link:function(c,l,g,u){var d=o().element(l[0].querySelector(".ring-save-field__transclude-placeholder"));r(o().element('&lt;div rg-error-bubble="saveFieldForm"&gt;&lt;/div&gt;'))(c,(function(e){d.append(e)}));var p={message:""},A=null,C=!1,I=g.workingValue,f=I?"workingValue":"value";function m(){if(!c.saveFieldForm.$valid||c.loading||o().equals(c.initial,c[f]))return!1;function e(){return n.when(c.afterSave({value:c[f]}))}c.cancelBlur(),c.loading=!0;var r=u.getSave();return(r=r?n.when(r(c[f])):n.when(c.onSave({value:c[f]}))).then((function(){if(c.initial=o().copy(c[f]),c.saveFieldForm.$setPristine(),c.done=!0,I&amp;&amp;(c.value=c.workingValue),t((function(){c.done=!1}),1e3),c.afterSave)return I?t(e):e()}),(function(e){var t;if("string"==typeof e)t=e;else if("object"===Nr(e)){var n=e.data||e;t=n.error_description||n.error_developer_message}p.message=t,c.saveFieldForm.$setValidity(s,!1,p)})).then((function(){c.loading=!1}))}function h(){c.loading||c.$evalAsync((function(){c[f]=c.initial?c.initial:"",c.saveFieldForm.$setValidity(s,!0,p),c.saveFieldForm.$setPristine()}))}c.cancelBlur=function(){t((function(){A&amp;&amp;(t.cancel(A),A=null)}),10)},I&amp;&amp;c.$watch("value",(function(e){c.workingValue=o().copy(e),c.initial=e})),c.$watch(f,(function(e){var t=null;c.saveFieldForm.$pristine?c.initial=e:c.initial&amp;&amp;o().equals(c.initial,e)?h():c.validate&amp;&amp;(t=c.validate({value:e})),n.when(t).then((function(e){return e?n.reject(e):(p.message="",void c.saveFieldForm.$setValidity(s,!0,p))})).catch((function(e){p.message=e,c.saveFieldForm.$setValidity(s,!1,p)}))}));var v,b,y=l[0].querySelector("input, .ring-save-field__input");y||(y=l[0].querySelector("textarea"),C=!!y),y&amp;&amp;(y.classList.add("ring-js-shortcuts"),y.addEventListener("focus",(function(){c.$evalAsync((function(){c.focus=!0}))})),y.addEventListener("blur",(function(){c.$evalAsync((function(){c.focus=!1}))})),C&amp;&amp;"list"===c.multiline&amp;&amp;(v=y.name,b=c.$watch("saveFieldForm.".concat(v),(function(e){e&amp;&amp;e.$formatters&amp;&amp;e.$parsers&amp;&amp;(e.$formatters.push((function(e){return e?(g.formatElement?e.map((function(e){return c.formatElement({element:e})})):e).join("\n"):e})),e.$parsers.push((function(e){var t=e&amp;&amp;e.split(a)||[];return t=t.filter((function(e){return e&amp;&amp;e.trim()&amp;&amp;"\n"!==e})),g.parseElement&amp;&amp;(t=t.map((function(e){return c.parseElement({element:e.trim()})}))),t})),b())})))),c.wording={save:e.form_save(),saved:e.form_saved(),cancel:e.form_cancel()},c.keyMap={comboSubmit:function(e){C&amp;&amp;(e.preventDefault(),m())},submit:function(e){C||(e.preventDefault(),m())},cancel:h,noop:o().noop},c.api={save:m,cancel:h},c.submitChanges=u.submitChanges=m,c.cancelChanges=u.cancelChanges=h,c.focus=!1,c.$on("$destroy",(function(){g.value&amp;&amp;i(g.value).assign(c.$parent,c.initial)}))},controller:function(){var e=null;this.setSave=function(t){e=t},this.getSave=function(){return e}}}}]);const Rr=Dr.name;var Ur=n(29615),zr=n.n(Ur);function $r(e){return $r="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},$r(e)}function Gr(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,qr(r.key),r)}}function Br(e,t,n){return t=Zr(t),function(e,t){if(t&amp;&amp;("object"===$r(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return Yr(e)}(e,Fr()?Reflect.construct(t,n||[],Zr(e).constructor):t.apply(e,n))}function Fr(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Fr=function(){return!!e})()}function Zr(e){return Zr=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Zr(e)}function Yr(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Wr(e,t){return Wr=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Wr(e,t)}function Hr(e,t,n){return(t=qr(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function qr(e){var t=function(e,t){if("object"!=$r(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=$r(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==$r(t)?t:t+""}var Qr=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return Hr(Yr(e=Br(this,t,[].concat(r))),"nodeRef",(function(t){e.node=t})),e}var n,r;return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;Wr(e,t)}(t,e),n=t,(r=[{key:"componentDidMount",value:function(){var e=this.node,t=this.props.nodes;e&amp;&amp;t&amp;&amp;t.length&amp;&amp;Array.from(this.props.nodes).forEach((function(t){return e.appendChild(t)}))}},{key:"render",value:function(){var e=this.props.className;return i.createElement("div",{className:e,ref:this.nodeRef})}}])&amp;&amp;Gr(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),t}(i.Component);function Vr(e){return Vr="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Vr(e)}function Kr(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,no(r.key),r)}}function Jr(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Jr=function(){return!!e})()}function Xr(e){return Xr=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Xr(e)}function eo(e,t){return eo=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},eo(e,t)}function to(e,t,n){return(t=no(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function no(e){var t=function(e,t){if("object"!=Vr(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=Vr(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Vr(t)?t:t+""}function ro(e){var t=Object.keys(e.propTypes),n={};t.forEach((function(e){n[e]="&lt;"}));var r=function(n){function r(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,r),e=this,n=arguments,t=Xr(t=r),function(e,t){if(t&amp;&amp;("object"===Vr(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,Jr()?Reflect.construct(t,n||[],Xr(e).constructor):t.apply(e,n));var e,t,n}var o,a;return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;eo(e,t)}(r,n),o=r,a=[{key:"$postLink",value:function(){var e=this;(0,this.$inject.$transclude)((function(t){e.container=document.createElement("div");for(var n=0;n&lt;t.length;n++)e.container.appendChild(t[n]);e.render()}))}},{key:"$onChanges",value:function(){this.container&amp;&amp;this.render()}},{key:"$onDestroy",value:function(){Vn(this.$inject.$element[0])}},{key:"render",value:function(){var n=this,r=this.$inject,o=r.$scope,a=r.$element[0],s={};t.forEach((function(e){void 0!==n[e]&amp;&amp;("function"==typeof n[e]?s[e]=function(){var t=n[e].apply(n,arguments);return o.$applyAsync(),t}:s[e]=n[e])}));var c=this.container.hasChildNodes();Qn(i.createElement(e,s,c?i.createElement(Qr,{nodes:this.container.childNodes}):null),a)}}],a&amp;&amp;Kr(o.prototype,a),Object.defineProperty(o,"prototype",{writable:!1}),r}(p);return to(r,"bindings",n),to(r,"transclude",!0),r.$inject=["$scope","$element","$transclude"],r}Hr(Qr,"propTypes",{className:zr().string,nodes:zr().oneOfType([zr().array,zr().object])});const oo=function(e,t){var n="Ring.".concat(t[0].toLowerCase()+t.slice(1));return o().module(n,[]).component(function(e){return"rg".concat(e)}(t),ro(e))};var io=n(74026);const ao=oo(io.Z,"Badge").name;var so=n(54303),co=o().module("Ring.loader-inline",[]);co.component("rgLoaderInline",{template:'&lt;div data-test="ring-loader-inline-ng" class="'.concat(so.Z.loader,'"&gt;&lt;/div&gt;')});const lo=co.name,go=oo(n(75409).Z,"Toggle").name;var uo=n(26013),po=o().module("Ring.panel",[]);po.directive("rgPanel",(function(){return{link:function(e,t){(0,I.PT)(t[0].classList,uo.Z.panel)}}}));const Ao=po.name;n(22288),n(23066),n(10585),n(72443),n(39341),n(73706),n(10408),n(78011),n(30489),n(68304),n(65069),n(47042);var Co=n(11355),Io=(n(24812),n(12419),n(83710),n(39714),n(24603),n(74916),n(82772),n(15306),n(67618)),fo="Hub-API-Version";function mo(e){return mo="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},mo(e)}function ho(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function vo(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ho(Object(n),!0).forEach((function(t){_o(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ho(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function bo(){bo=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==mo(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function yo(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function wo(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){yo(i,r,o,a,s,"next",e)}function s(e){yo(i,r,o,a,s,"throw",e)}a(void 0)}))}}function _o(e,t,n){return(t=xo(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function jo(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,xo(r.key),r)}}function xo(e){var t=function(e,t){if("object"!==mo(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==mo(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===mo(t)?t:String(t)}var Eo=function(e,t){var n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]&amp;&amp;arguments[2],r=e;return Object.keys(t).forEach((function(o){var i=t[o].toString(),a=new RegExp("([?&amp;])".concat(o,"(=[^&amp;#]+)*"),"ig");a.test(e)?void 0===t[o]&amp;&amp;n?r=r.replace(a,""):n&amp;&amp;(r=r.replace(a,"$1".concat(o,"=").concat(i))):(r+=-1===r.indexOf("?")?"?":"&amp;",r+="".concat(o,"=").concat(i))})),r},So=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.auth=t,this.http=new Io.ZP(t,null,{headers:_o({},fo,4)}),this.hubApiUrl=t.getAPIPath()},t=[{key:"_get",value:(i=wo(bo().mark((function e(t,n){return bo().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this._request(t,"GET",n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return i.apply(this,arguments)})},{key:"_post",value:(o=wo(bo().mark((function e(t,n){return bo().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this._request(t,"POST",n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return o.apply(this,arguments)})},{key:"_delete",value:(r=wo(bo().mark((function e(t,n){return bo().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this._request(t,"DELETE",n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"_request",value:(n=wo(bo().mark((function e(t,n){var r,o,i,a,s=arguments;return bo().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length&gt;2&amp;&amp;void 0!==s[2]?s[2]:{},o=!(s.length&gt;3&amp;&amp;void 0!==s[3])||s[3],i=this.hubApiUrl+t,a="GET"!==n?Eo(i,{failOnPermissionReduce:o}):i,e.abrupt("return",this.http.request(a,vo({method:n},r)));case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})}],t&amp;&amp;jo(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t,n,r,o,i}();function To(e){return To="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},To(e)}function Mo(){Mo=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==To(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function Lo(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function ko(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Lo(i,r,o,a,s,"next",e)}function s(e){Lo(i,r,o,a,s,"throw",e)}a(void 0)}))}}function Oo(e){return Oo=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Oo(e)}function Po(e,t){return Po=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Po(e,t)}function No(e,t,n){return(t=Do(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Do(e){var t=function(e,t){if("object"!==To(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==To(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===To(t)?t:String(t)}var Ro="endUserAgreementConsent(accepted,majorVersion,minorVersion)",Uo=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return No(e=function(e,t,n){return t=Oo(t),function(e,t){if(t&amp;&amp;("object"===To(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],Oo(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"getUserAgreement",ko(Mo().mark((function t(){var n;return Mo().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,e._get("settings/public",{query:{fields:"endUserAgreement(enabled,text,majorVersion,minorVersion,requiredForREST)"}});case 2:return n=t.sent,t.abrupt("return",n.endUserAgreement);case 4:case"end":return t.stop()}}),t)})))),No(e,"getUserConsent",ko(Mo().mark((function t(){return Mo().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",e._get("users/me",{query:{fields:"guest,".concat(Ro)}}));case 1:case"end":return t.stop()}}),t)})))),No(e,"setUserConsent",ko(Mo().mark((function t(){return Mo().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",e._post("users/endUserAgreementConsent",{body:{fields:Ro}}));case 1:case"end":return t.stop()}}),t)})))),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;Po(e,t)}(t,e),n=t,Object.defineProperty(n,"prototype",{writable:!1}),n;var n}(So),zo=n(9524),$o=n(53486),Go=n.n($o),Bo=n(66116),Fo=n.n(Bo),Zo=n(46222),Yo=n.n(Zo),Wo=n(64443),Ho=n.n(Wo),qo=n(94760),Qo=n.n(qo),Vo=n(56194),Ko=n.n(Vo),Jo=n(72225),Xo={};Xo.styleTagTransform=Ko(),Xo.setAttributes=Ho(),Xo.insert=Yo().bind(null,"head"),Xo.domAPI=Fo(),Xo.insertStyleElement=Qo(),Go()(Jo.Z,Xo);const ei=Jo.Z&amp;&amp;Jo.Z.locals?Jo.Z.locals:void 0;var ti=n(59792),ni={};ni.styleTagTransform=Ko(),ni.setAttributes=Ho(),ni.insert=Yo().bind(null,"head"),ni.domAPI=Fo(),ni.insertStyleElement=Qo(),Go()(ti.Z,ni);const ri=ti.Z&amp;&amp;ti.Z.locals?ti.Z.locals:void 0,oi={disabled:!1,ulClass:ri.taskList,checkboxClass:ri.taskCheckbox},ii="data-task-list",ai="data-task",si="data-task-done",ci="data-task-num",li=4;function gi(e,t){const n={...oi,...t};e.core.ruler.after("inline","github-task-lists",(function(e){const t=e.tokens;let r=0,o=-1;for(let e=0;e&lt;t.length;e++)if(!(e&lt;=o)&amp;&amp;Ai(t,e)){const i=Ci(t,e,r,n);r=i.counter,o=i.lastProcessedIndex}}));const r=e.renderer.rules.list_item_open||e.renderer.rules.inline;e.renderer.rules.list_item_open=(e,t,o,i,a)=&gt;{const s=r||a.renderToken.bind(a),c=e[t].attrGet(ai),l=c&amp;&amp;e[t].attrGet(si),g=c?`&lt;input type="checkbox" class="${n.checkboxClass}"${l?" checked":""}${n.disabled?" disabled":""}/&gt;`:"";return s(e,t,o,i,a)+g}}function ui(e){return"bullet_list_open"===e.type}function di(e){return"bullet_list_close"===e.type}function pi(e,t,n,r){let o=-1;const i=[];for(let a=t;a&lt;e.length;a++){const t=e[a];if(ui(t))o++,i.push(t),r?.(t,a);else if(di(t)){if(i.pop(),o&lt;=0)return a;o--}else fi(t)&amp;&amp;n(t,a,o,i[i.length-1])}return e.length}function Ai(e,t){if("bullet_list_open"!==e[t].type)return!1;let n=!0;return pi(e,t,((t,r,o)=&gt;{o&gt;0||function(e,t){return"paragraph_open"===e[t+1].type&amp;&amp;function(e){return"inline"===e.type}(e[t+2])&amp;&amp;function(e){return/^\[[xX \u00A0]][ \u00A0]?/.test(e.content)||/^\[[xX \u00A0]]$/.test(e.content)}(e[t+2])}(e,r)||(n=!1)})),n}function Ci(e,t,n,r){let o=n;const i=pi(e,t,((t,n,r,i)=&gt;{if(!Ai(e,e.indexOf(i)))return;Ii(t,ai,"true"),Ii(t,ci,o.toString()),o++;const a=e[n+2];/^\[[xX]]/.test(a.content)&amp;&amp;Ii(t,si,"true");const s=a.children?.[0];s&amp;&amp;(s.content=s.content.slice(li),"start"in(s.meta??{})&amp;&amp;(s.meta.start+=li))}),((t,n)=&gt;{Ai(e,n)&amp;&amp;function(e,t){Ii(e,ii,"true"),Ii(e,"class",t.ulClass)}(e[n],r)}));return{counter:o,lastProcessedIndex:i}}function Ii(e,t,n){const r=e.attrIndex(t),o=[t,n];r&lt;0?e.attrPush(o):e.attrs&amp;&amp;(e.attrs[r]=o)}function fi(e){return"list_item_open"===e.type}var mi=n(14714),hi={};hi.styleTagTransform=Ko(),hi.setAttributes=Ho(),hi.insert=Yo().bind(null,"head"),hi.domAPI=Fo(),hi.insertStyleElement=Qo(),Go()(mi.Z,hi),mi.Z&amp;&amp;mi.Z.locals&amp;&amp;mi.Z.locals,n(88942),customElements.get("lite-youtube")||n(63966);var vi=n(43173),bi=n(36543);let yi=null;function wi(e,t,n){return yi?yi(e,t,n):e}var _i=n(70019),ji={};ji.styleTagTransform=Ko(),ji.setAttributes=Ho(),ji.insert=Yo().bind(null,"head"),ji.domAPI=Fo(),ji.insertStyleElement=Qo(),Go()(_i.Z,ji);const xi=_i.Z&amp;&amp;_i.Z.locals?_i.Z.locals:void 0;var Ei=n(20745),Si=n(84808),Ti=n(88333);function Mi(){const e={};for(const[t,n]of Object.entries(Ti))e[t]=wi(n);return e}function Li({reactComponent:e,onMount:t}){return(0,i.useLayoutEffect)((()=&gt;{t()}),[t]),i.createElement(Si.O,{messages:Mi()},i.createElement(w.pS.Provider,{value:w.oW.S},e))}function ki(e,t){return new Promise((n=&gt;t.render(i.createElement(i.StrictMode,void 0,i.createElement(Li,{reactComponent:e,onMount:n})))))}function Oi(e,t,n){if(n)return n.render(e),n;const r=(0,Ei.s)(t);let o=ki(e,r),i=!1;return{unmount:async()=&gt;{i=!0,await o,r.unmount()},render:e=&gt;{i||(o=ki(e,r))}}}new WeakMap;const Pi="yt-confirmed-preview",Ni="filename",Di="iframe-class";class Ri extends HTMLElement{static get observedAttributes(){return["src","filename","iframe-class"]}constructor(){super(),this.previewIsActivated=!1,this.renderPlaceholder()}attributeChangedCallback(){this.previewIsActivated?this.showPreview():this.renderPlaceholder()}renderPlaceholder(){this.classList.add(xi.container);const e=this.getAttribute(Ni)??"unknown";Oi(i.createElement(i.Fragment,null,i.createElement(vi.Z,{info:!0,className:xi.message},wi('The PDF file "{{fileName}}" can contain executable scripts that run in the browser when you preview the embedded content. You should show the preview only if you are sure it is safe.',{fileName:e})),i.createElement(bi.ZP,{primary:!0,onClick:()=&gt;this.showPreview(),className:xi.showPreviewButton},wi("Show preview"))),this)}showPreview(){const e=document.createElement("iframe");e.classList.add(this.getAttribute(Di)??""),e.src=this.getAttribute("src")??"",this.replaceChildren(e),this.previewIsActivated=!0}}var Ui=n(14443),zi=n.n(Ui);function $i(e){const t=e.toLowerCase();let n="file";return t.includes("image")&amp;&amp;(n=e.includes("gif")?"animatedImage":e.includes("svg")?"vectorImage":"image"),t.includes("video")&amp;&amp;(n="video"),n}var Gi=n(10618),Bi=n.n(Gi),Fi=n(6496);const Zi=(new(n.n(Fi)())).sniff(),Yi="windows"===Zi.os.name,Wi=(e,t,n=!1)=&gt;`\n  window.location.hash = 'locale=' + ${JSON.stringify(e)} + '&amp;editable=${n}';\n\n  document.addEventListener('click', function onDocumentClick() {\n    Websandbox.connection.remote?._closePopups();\n  });\n\n  window.YTApp = {\n    locale: ${JSON.stringify(e)},\n    entity: ${t?JSON.stringify({id:t.id,type:t.type}):"null"},\n    register: async function (plugin = {}) {\n      await Websandbox.connection.remoteMethodsWaitPromise;\n      await Websandbox.connection.setLocalApi(plugin);\n      return Websandbox.connection.remote;\n    }\n  };\n\n  // For backward compatibility\n  Object.defineProperty(window, 'YTPlugin', {\n    get: function() {\n      console.warn('Accessing obsolete property "YTPlugin"! Please rename to "YTApp"!');\n      return window.YTApp;\n    }\n  });\n\n  document.addEventListener('DOMContentLoaded', function() {\n    const resizeObserver = new window.ResizeObserver(() =&gt; {\n      const rect = document.body.getBoundingClientRect();\n      Websandbox.connection.remote?.reportWidgetSize?.({height: rect.height, width: rect.width});\n    });\n\n    resizeObserver.observe(document.body);\n  });\n`;function Hi(e,t="NotNull assertion failed"){if(null==e)throw new Error(t)}const qi=["allow-pointer-lock","allow-downloads","allow-top-navigation","allow-popups allow-popups-to-escape-sandbox"];var Qi=n(77641),Vi=n(14148),Ki=n(89613),Ji=n(39901),Xi=n(4538),ea={};ea.styleTagTransform=Ko(),ea.setAttributes=Ho(),ea.insert=Yo().bind(null,"head"),ea.domAPI=Fo(),ea.insertStyleElement=Qo(),Go()(Xi.Z,ea);const ta=Xi.Z&amp;&amp;Xi.Z.locals?Xi.Z.locals:void 0;var na=n(96844),ra=n.n(na),oa=n(16567),ia=n.n(oa),aa=n(22146),sa=n.n(aa),ca=n(24330),la=n.n(ca),ga=n(79130),ua=n.n(ga),da=n(22098),pa=n(99388),Aa=n.n(pa),Ca=n(4797),Ia=n(11602),fa=n(32829),ma=n(12411);const ha="style",va={allowCommentTag:!0,onIgnoreTag:(e,t)=&gt;e.startsWith("!--")||e.startsWith("![endif")?t:"",onIgnoreTagAttr:(e,t,n)=&gt;{if(t.startsWith("data-"))return`${t}="${(0,ma.safeAttrValue)(e,t,n,!1)}"`},onTagAttr:(e,t,n)=&gt;{if("a"===e&amp;&amp;"target"===t)return`${t}="${(0,ma.safeAttrValue)(e,t,n,!1)}" rel="noopener noreferrer nofollow"`},stripIgnoreTagBody:["head","style","script"],whiteList:{a:["href","title","id","name","target","rel",ha,"class"],b:[ha],s:[ha],bar:[ha],blockquote:["href","title",ha],br:[ha],caption:[ha],center:[ha],cite:[ha],code:[ha,"class"],col:["span","width",ha],colgroup:[ha],dd:[ha],details:[ha,"class"],div:[ha,"class"],dl:[ha],dt:[ha],em:[ha],hr:["class",ha],font:["color","size","face",ha],h1:[ha],h2:[ha],h3:[ha],h4:[ha],h5:[ha],h6:[ha],kbd:[ha],i:[ha],img:["align","alt","height","src","title","width",ha],li:[ha,"class"],ol:["start","type","class",ha],p:[ha],pre:[ha,"class"],q:["cite",ha],small:[ha],span:[ha,"class"],strike:[ha],strong:[ha],sub:[ha],summary:[ha,"class"],sup:[ha],table:["summary","width","border","cellSpacing","cellPadding","background","class",ha],tbody:[ha],td:["abbr","axis","colspan","rowspan","width","class",ha],tfoot:[ha],th:["abbr","axis","colspan","rowspan","scope","width","class",ha],thead:[ha],tr:[ha],u:[ha],ul:["type","class",ha]},css:{whiteList:{...(0,n(56786).getDefaultWhiteList)(),direction:!0}},safeAttrValue:(e,t,n,r)=&gt;"img"===e&amp;&amp;"src"===t&amp;&amp;n&amp;&amp;(n.startsWith("!")&amp;&amp;n.endsWith("!")||(n.startsWith("![](")||n.startsWith("[]("))&amp;&amp;n.endsWith(")"))||"a"===e&amp;&amp;"href"===t&amp;&amp;n.startsWith("[](")&amp;&amp;n.endsWith(")")?n:(0,ma.safeAttrValue)(e,t,n,r)};function ba(e,t=va){return(0,ma.filterXSS)(e,t)}const ya=async(e,t,n,r=1e3)=&gt;{try{(e=&gt;{navigator.clipboard&amp;&amp;window.isSecureContext?navigator.clipboard.writeText(e):Promise.resolve(function(e){const t=document.createElement("textarea");t.value=e,t.setAttribute("readonly",""),t.style.position="absolute",t.style.left="-9999px",document.body.appendChild(t);const n=!document.getSelection().isCollapsed&amp;&amp;document.getSelection().rangeCount&gt;0&amp;&amp;document.getSelection().getRangeAt(0);t.select(),document.execCommand("copy"),document.body.removeChild(t),n&amp;&amp;(document.getSelection().removeAllRanges(),document.getSelection().addRange(n))}(e))})(e),t&amp;&amp;s.Z.successMessage(t,r)}catch(e){n&amp;&amp;s.Z.error(n,r),console.error(e)}};var wa;!function(e){e.UI_UNLIMITED_WIDTH="UI:global:unlimitedWidthContent",e.UI_LIST_COLUMNS_QUICK_VIEW_OFF="UI:list:columnsWithoutQuickView",e.UI_LIST_COLUMNS_QUICK_VIEW_ON="UI:list:columnsWithQuickView",e.UI_LIST_FILTERS="UI:list:filters",e.UI_DRAFTS_SIDEBAR="UI:list:drafts",e.UI_LIST_EXPERT_MODE="UI:list:expertMode",e.UI_LIST_LAST_POSITION="UI:list:lastPosition",e.UI_HELPDESK_LIST_LAST_POSITION="UI:helpdesk-list:lastPosition",e.UI_FILEDS_COLLAPSED_FULL="UI:ticket:fieldsCollapsed",e.UI_FILEDS_COLLAPSED_COMPACT="UI:ticket:fieldsCollapsedCopact",e.UI_TICKET_UNLIMITED_WIDTH="UI:ticket:unlimitedWidthContent",e.UI_CUSTOM_FIELDS_VALUE_FILTERING="UI:custom-fields:value-filtering",e.UI_TICKET_SHOW_COMMENTS="com.jetbrains.youtrack.IssueComment",e.UI_TICKET_SHOW_HISTORY="com.jetbrains.youtrack.Issue",e.UI_TICKET_SHOW_TIME="com.jetbrains.youtrack.IssueWorkItem",e.UI_TICKET_SHOW_VCS="com.jetbrains.youtrack.VcsItem",e.UI_TICKET_EXPAND_MARKDOWN_PREVIEW="UI:ticket:expandPreview",e.UI_GLOBAL_RECENT_TICKETS_ENABLED="com.jetbrains.youtrack.showRecentIssues",e.UI_RECENT_TICKETS_LAST_UPDATE="UI:recentEntitiesLastUpdate",e.UI_ARTICLES_TOC="UI:articles:toc",e.UI_ARTICLES_UNRESOLVED_INLINE_COMMENTS="UI:articles:unresolvedInlineComments",e.UI_ARTICLES_RESOLVED_INLINE_COMMENTS="UI:articles:resolvedInlineComments",e.UI_ARTICLES_EXPANDED_TREE_ITEMS="UI:articles:expandedTreeItems",e.UI_ARTICLES_FULL_WIDTH_VIEW_TIP_HAS_SHOWN="UI:articles:articlesFullWidthViewTipHasShown",e.UI_ARTICLES_RESOLVED_COMMENTS_TIP_HAS_SHOWN="UI:articles:resolvedCommentsTipHasShown",e.UI_ATTACHMENTS_TICKET_CONTENT_TAB_COLLAPSED="UI:attachments:ticketContentTabCollapsed",e.UI_TICKET_VISUAL_WORKFLOW_EDITOR_CHANGE_RULE_TYPE_TIP_SHOWN="UI:vwe:changeRuleTypeTipShown",e.UI_COMMAND_WINDOW_TIP="UI:commandWindowTipShown",e.UI_TEXT_RECOGNITION_TIP_SHOWN="UI:textRecognitionTipShown",e.UI_STANDALONE_DARK="UI:standalone:darkMode",e.UI_LAST_PROMO="UI:lastPromo",e.UI_FIELDS_INFO="UI:fields:info",e.UI_FEEDBACK_FORM_DESIGN="UI:feedback:form:design",e.UI_PLUGIN_SANDBOX_URL="com.jetbrains.youtrack.pluginSandboxUrl",e.UI_ADMIN_PAGE_SHOW_DESCRIPTION="com.jetbrains.youtrack.descriptionPanel",e.UI_GLOBAL_CUSTOM_FIELDS_SHOW_DESCRIPTION="com.jetbrains.youtrack.globalCustomFieldsDescriptionPanel",e.UI_DEV_LOG_ANALYTICS="UI:development:loganalytics",e.UI_DEV_API_ENTITY_ID_COLLISION_MONITORING="UI:development:API:entityIdCollisionMonitoring",e.UI_DEV_API_UNUSED_DATA_MONITORING="UI:development:API:unusedDataMonitoring",e.UI_DEV_LOGLEVELS="UI:development:loglevels",e.UI_DEV_LINKS_ALTERNATIVE_MODE="UI:development:linksAlternativeMode",e.UI_DEV_VISUAL_WORKFLOW_EDITOR="UI:development:workflowEditorDevMode",e.UI_TIME_TRACKING_PROJECTS_FILTER="UI:timesheets:filters:projects",e.UI_TIME_TRACKING_QUERY_FILTER="UI:timesheets:filters:query",e.UI_TIME_TRACKING_WORK_TYPES_FILTER="UI:timesheets:filters:work-types",e.UI_TIME_TRACKING_WORK_ATTRIBUTES_FILTER="UI:timesheets:filters:work-attributes",e.UI_TIME_TRACKING_PERIOD="UI:timesheets:period",e.UI_TIME_TRACKING_WORK_AUTHOR="UI:timesheets:work-author",e.UI_VISUAL_WORKFLOW_EDITOR_CONSOLE="UI:vwe:console",e.UI_VISUAL_WORKFLOW_EDITOR_STATES_PANEL="UI:vwe:states-panel",e.UI_TIME_TRACKING_EXPANDED_WIDGETS_LINES="UI:time-tracking:expanded-widgets-lines",e.TEST_ATTACHMENT_LINKS_REFRESH="TEST:attachment-links-refresh",e.LATEST_KNOWN_APP_VERSION="com.jetbrains.youtrack.LatestKnownAppVersion",e.UI_EXPERIMENTS_DESKTOP_NOTIFICATIONS="EXPERIMENTS:desktop-notifications",e.UI_USE_SIMPLIFIED_UI="com.jetbrains.youtrack.useSimplifiedUI"}(wa||(wa={}));const _a={debug:"ðŸ›&nbsp;",info:"â„¹ï¸",log:"âœ‰ï¸",warn:"âš&nbsp;ï¸",error:"ðŸš¨"},ja=["error","warn"],xa=["debug","info","log","warn","error"],Ea=new class{constructor(){this.limit=5e3,this.messages=[],this.storage=new class{constructor(e,t){this.key=e,this.defaultValue=t}get(e){const t=localStorage.getItem(this.key);if(null===t)return e??this.defaultValue;try{return JSON.parse(t)}catch(t){return e??this.defaultValue}}set(e){localStorage.setItem(this.key,JSON.stringify(e))}has(){return localStorage.hasOwnProperty(this.key)}destroy(){localStorage.removeItem(this.key)}}(wa.UI_DEV_LOGLEVELS,ja),this.consoleBypassCategories=this.storage.get(),this.showAll=()=&gt;this.setBypassCategories(xa),this.showDefault=()=&gt;this.setBypassCategories(ja)}setBypassCategories(e){this.consoleBypassCategories=e,this.storage.set(e)}clear(){this.messages=[]}export(){console.dir(JSON.stringify(this.messages))}copyToClipboard(){ya(JSON.stringify(this.messages))}withTag(e){return{debug:(...t)=&gt;this.message("debug",t,e),info:(...t)=&gt;this.message("info",t,e),log:(...t)=&gt;this.message("log",t,e),warn:(...t)=&gt;this.message("warn",t,e),error:(...t)=&gt;this.message("error",t,e)}}message(e,t,n){try{const r=JSON.parse(JSON.stringify(t)),o={type:e,component:n,timestamp:Date.now(),args:r};this.messages.push(o),this.messages.length&gt;this.limit&amp;&amp;this.messages.shift(),this.consoleBypassCategories.includes(e)&amp;&amp;this.printMessage(o)}catch(r){console.error("Failed to log message",r,e,t,n)}}byCategory(e){return this.messages.filter((t=&gt;t.type===e))}byComponent(e){return this.messages.filter((t=&gt;t.component===e))}printMessage(e){const t=new Date(e.timestamp).toLocaleTimeString(),n=e.component?`${e.component} `:"";e.type in console&amp;&amp;console[e.type](`%c${_a[e.type]??""}[${n}${t}]`,"color: #777",...e.args)}printMessages(e){e.forEach(this.printMessage)}print(e){if(e)return"function"==typeof e?(console.group(`Messages, filtered with "${e.toString()}"`),this.printMessages(this.messages.filter(e)),void console.groupEnd()):void(xa.includes(e)?(console.group(`Messages of category "${e}"`),this.printMessages(this.byCategory(e)),console.groupEnd()):(console.group(`Messages of component "${e}"`),this.printMessages(this.byComponent(e)),console.groupEnd()));this.messages.forEach(this.printMessage)}};window.__logger=Ea;const Sa=Ea;var Ta=n(60102),Ma=n(4670),La=n(24996),ka={};ka.styleTagTransform=Ko(),ka.setAttributes=Ho(),ka.insert=Yo().bind(null,"head"),ka.domAPI=Fo(),ka.insertStyleElement=Qo(),Go()(La.Z,ka),La.Z&amp;&amp;La.Z.locals&amp;&amp;La.Z.locals;const Oa="THEME_CHANGE";function Pa(e){const t=t=&gt;{const n=t.detail;e(n)};return document.addEventListener(Oa,t),()=&gt;document.removeEventListener(Oa,t)}window.matchMedia("(prefers-color-scheme: dark)");const Na=new WeakSet,Da=e=&gt;(t,n)=&gt;{e((()=&gt;{!Na.has(t)&amp;&amp;(Na.add(t),t())}),n)},Ra=(Da(i.useEffect),Da(i.useLayoutEffect));var Ua=n(18168),za={};za.styleTagTransform=Ko(),za.setAttributes=Ho(),za.insert=Yo().bind(null,"head"),za.domAPI=Fo(),za.insertStyleElement=Qo(),Go()(Ua.Z,za);const $a=Ua.Z&amp;&amp;Ua.Z.locals?Ua.Z.locals:void 0;var Ga=n(76637),Ba={};Ba.styleTagTransform=Ko(),Ba.setAttributes=Ho(),Ba.insert=Yo().bind(null,"head"),Ba.domAPI=Fo(),Ba.insertStyleElement=Qo(),Go()(Ga.Z,Ba);const Fa=Ga.Z&amp;&amp;Ga.Z.locals?Ga.Z.locals:void 0,Za=({className:e,children:t,height:n,blocksWidths:r=[],itemClassName:o,animated:a=!0})=&gt;i.createElement("div",{className:ua()(Fa.container,{[Fa.waveAnimated]:a},e)},r.map(((e,t)=&gt;i.createElement("div",{key:e+t,className:ua()(Fa.line,o),style:{width:e,height:n}}))),t),Ya=Sa.withTag("PLUGIN");var Wa=n(19658),Ha=n(1866),qa=n.n(Ha),Qa=n(48132);const Va=({frameSrc:e,appName:t,widgetName:n,locale:r="en",entity:o,size:c={width:50,height:1},editable:l=!1,place:g,className:u,hubBackendURL:d,makeRequest:p,backendURL:A,configStorage:C,onRemove:I,getParentWidth:f,onResize:m})=&gt;{const h=(0,i.useRef)(null),v=(0,i.useRef)(null),b=(0,i.useRef)(null),[y,w]=i.useState({text:n}),[_,j]=i.useState(null),[x,E]=i.useState(!1),[S]=i.useState({cache:null}),[T,M]=i.useState(!1),[L,k]=i.useState({onRefresh:null,onConfigure:null}),O=i.useCallback((()=&gt;{E(!0),b.current?.showModal()}),[]),P=i.useCallback((async()=&gt;{E(!1),b.current?.close();const e=await C.get();(null===e||0===Object.keys(e??{}).length)&amp;&amp;I?.()}),[C,I]);!function({appName:e,place:t,renderLoader:n,runSandbox:r,onError:o,wrapperRef:a},c){const l=(0,i.useRef)(null),g=(0,i.useRef)(null),[u]=function(){const[e,t]=(0,i.useState)((0,Ma.Z)());return(0,i.useEffect)((()=&gt;{const e=Pa((()=&gt;t((0,Ma.Z)())));return()=&gt;e()}),[]),[e]}(),d=(0,i.useCallback)((()=&gt;{l.current?.run(u?'document.body.classList.add("ring-ui-theme-dark")':'document.body.classList.remove("ring-ui-theme-dark")')}),[u]),p=(0,i.useCallback)((()=&gt;{const e=document.createElement("div");return e.className=$a.loaderLines,Oi(n?n():i.createElement("div",{className:$a.loaderLines},["100%","80%","100%","60%","100%","80%","60%"].map(((e,t)=&gt;i.createElement(Za,{key:t,blocksWidths:[e],height:16})))),e),e}),[n]);Ra((()=&gt;{const n=(0,Ta.Z)("p"),i=new AbortController;if(!g.current)return a.current&amp;&amp;(Ya.debug(`[${n}] init plugin |${e}| for ${t}`),a.current.innerHTML="",a.current.appendChild(p()),(0,fa.Z)(r(),15e3,{error:new Error("YouTrack couldn't register the widget. Please ensure that the YTApp.register() method is properly invoked.")}).then((r=&gt;{Ya.debug(`[${n}] loaded |${e}| for ${t}`),l.current=r,d()})).catch((r=&gt;{i.signal.aborted||(a.current&amp;&amp;(a.current.innerHTML=""),o(r),Ya.error(`[${n}] errored |${e}| for ${t}`,r),s.Z.error(r.message))}))),()=&gt;{i.abort(),Ya.debug(`[${n}] unmount |${e}| for ${t}`),l.current?.destroy(),g.current?.then((e=&gt;e.destroy())),g.current=null}}),c),(0,i.useEffect)(d,[d])}({appName:t,place:g,wrapperRef:h,onError:j,runSandbox:()=&gt;{if(!h.current)return Promise.reject(new Error("No wrapper"));const n={setTitle:(e,t)=&gt;w({text:e,url:t}),setLoadingAnimationEnabled:e=&gt;M(e),enterConfigMode:O,exitConfigMode:P,enterModalMode:O,exitModalMode:()=&gt;E(!1),setError:e=&gt;j(e),clearError:()=&gt;j(null),readCache:async()=&gt;S.cache,storeCache:async e=&gt;{S.cache=e},readConfig:()=&gt;C.get(),storeConfig:e=&gt;C.set(e),downloadFile:("downloadFile",()=&gt;(console.warn('"downloadFile" is not implemented'),null)),fetch:(e,t,n)=&gt;p(`${A}/${t}`,n),fetchHub:(e,t)=&gt;p(`${d}${e}`,t),loadServices:async e=&gt;(await n.fetchHub("api/rest/services",{query:{fields:"id,key,name,homeUrl,applicationName,vendor,version,trusted",query:`applicationName: ${e}`}})).services,alert:s.Z.addAlert.bind(s.Z),removeWidget:()=&gt;I?.(),fetchYouTrack:(e,t)=&gt;p(`${A}/api/${e}`,t),fetchApp:(e,t)=&gt;p(`${A}/api/scriptableApi/workflow/plugin/${e}`,t),reportWidgetSize:()=&gt;{}};return async function(e,t){const n=new DOMException("Aborted","AbortError"),{locale:r,entity:o,editable:i,extensionPoint:a,additionalHostAPI:c,appName:l,onChangeMode:g,ytBackendURL:u,frameSrc:d,frameClassName:p,makeRequest:A,onChangeBodySize:C}=t,I={alert:s.Z.addAlert.bind(s.Z),enterModalMode:()=&gt;g("MODAL"),exitModalMode:()=&gt;g("INPLACE"),fetchYouTrack:(e,t)=&gt;A(`${u}/api/${e}`,t),reportWidgetSize:e=&gt;C?.(e),fetchApp:(e,t)=&gt;{if(!t.scope)return A(`${u}/api/scriptableApi/${l}/${e}`,t);Hi(o,"Plugin must have entity to fetch it's backend endpoint");const n={user:`${u}/api/users/${o.id}/scriptableApi/${l}/${e}`,article:`${u}/api/articles/${o.id}/scriptableApi/${l}/${e}`,project:`${u}/api/admin/projects/${o.id}&gt;/scriptableApi/${l}/${e}`,ticket:`${u}/api/issues/${o.id}/scriptableApi/${l}/${e}`,app:`${u}/api/admin/apps/${o.id}/adminWidgets/${l}/${e}`}[o.type];return Hi(n,`Entity of type ${o.type} is not supported`),A(n,t)},_closePopups:()=&gt;{document.dispatchEvent(new MouseEvent("pointerdown"))},...c},f=await t.makeRequest(t.frameSrc,{headers:{Accept:"text/html","Content-Type":"text/html; charset=utf-8"},signal:t.signal});if(e.innerHTML="",t.signal?.aborted)return Promise.reject(n);const m=function(e,t,n,r,o={}){const i=Bi().create(r,{sandboxAdditionalAttributes:qi.join(" "),codeToRunBeforeInit:Wi(e,t,n),initialStyles:`\n  body {\n    margin: 0;\n    padding: 0;\n    font-size: var(--ring-font-size, 13px);\n    color: var(--ring-text-color, #444);\n    font-family: ${function(){const e=window.getComputedStyle(document.body).getPropertyValue("--ring-font-family");return Yi?e:`Inter, ${e}`}()};\n  }\n\n  ${(()=&gt;{if(!Yi)return"";const e=document.getElementsByTagName("style");for(let t=0;t&lt;e.length;t++){const n=e[t].innerHTML;if(n.includes("@font-face")&amp;&amp;n.includes("Inter"))return n}return""})()}\n  `,allowAdditionalAttributes:"",...o});return o.iframeAttributes&amp;&amp;Object.entries(o.iframeAttributes).forEach((([e,t])=&gt;{i.iframe.setAttribute(e,t)})),i}(r,o,i??!1,I,{frameContent:f.data,frameContainer:e,baseUrl:d,iframeAttributes:{"data-extension-point":a},frameClassName:p});return await m.promise,t.signal?.aborted?(m.destroy(),Promise.reject(n)):(await(m.connection?.remoteMethodsWaitPromise),t.signal?.aborted?(m.destroy(),Promise.reject(n)):m)}(h.current,{additionalHostAPI:n,ytBackendURL:A,makeRequest:p,appName:t,locale:r,entity:o,extensionPoint:g,frameSrc:e,onChangeMode:e=&gt;E("MODAL"===e),frameClassName:ta.frame,editable:l}).then((e=&gt;(k({onRefresh:e.connection?.remote.onRefresh??null,onConfigure:e.connection?.remote.onConfigure??null}),e)))}},[o?.id,e,r,g]);const N=i.useCallback((async()=&gt;{M(!0);try{await(L.onRefresh?.())}finally{M(!1)}}),[L]),D=i.useCallback((async()=&gt;{O(),L.onConfigure?.()}),[O,L]);return i.createElement(Ia.e,{defaultSize:{width:c.width,height:c.height},enable:l??m?{bottomRight:!0,right:!0,bottom:!0}:{},minWidth:160,maxWidth:"100%",minHeight:160,grid:[f()/10,80],onResizeStop:(e,t,n)=&gt;{const r=n.offsetWidth,o=f(),i=Math.round(r/o*100);m?.(`${i}%`,n.offsetHeight)},className:ta.resizable,handleClasses:{bottomRight:ta.bottomRightHandle},ref:v},i.createElement("dialog",{ref:b,open:x,className:ua()(ta.widgetDialog),"data-test":"dashboard-compatible-widget","data-portaltarget":"widget-modal"},i.createElement(Qa.x,{id:x?"widget-modal":""},(()=&gt;i.createElement(Qi.ZP,{className:ua()(ta.widgetIsland,u),narrow:!0},i.createElement(Vi.Z,{border:!0,wrapWithTitle:!1},i.createElement("div",{className:ta.widgetHeader},i.createElement("h6",{className:ta.widgetTitle},i.createElement(Ca.Z,{title:y.text,delay:800},y.url?i.createElement(a.Z,{href:y.url},y.text):y.text)),i.createElement("div",{className:ta.widgetActions},!x&amp;&amp;L.onRefresh?i.createElement(bi.ZP,{icon:ra(),onClick:N,className:ua()(ta.widgetUpdateButton,{[ta.widgetUpdateButtonReloading]:T})}):null,l&amp;&amp;i.createElement(Ji.Z,{anchor:i.createElement(bi.ZP,{icon:ia(),className:ua()(ta.widgetUpdateButton)}),data:[!x&amp;&amp;L.onConfigure?{key:"edit",label:wi("Edit..."),glyph:sa(),onClick:()=&gt;D()}:null,{key:"remove",label:wi("Remove"),glyph:la(),onClick:()=&gt;I?.()}].filter((e=&gt;!!e))}),_&amp;&amp;i.createElement(Ca.Z,{title:_.toString()},i.createElement(da.ZP,{glyph:Aa()}))))),i.createElement(Ki.Z,{className:ta.widgetIslandContent,scrollableWrapperClassName:ta.widgetScrollable},i.createElement("div",{ref:h,className:ta.widget},_&amp;&amp;i.createElement(Wa.Z,{className:ta.errorMessage,"data-test":"widget-error-message",icon:qa(),message:wi("There was a problem loading the widget"),description:wi("Please contact the app vendor for further assistance")},_.toString()))))))))};var Ka=n(38718);const Ja=Sa.withTag("MD_ATTACHMENTS"),Xa="widget:",es={appKey:"app-key",widgetKey:"widget-key",embeddingId:"embedding-id"};var ts=n(70134),ns={};ns.styleTagTransform=Ko(),ns.setAttributes=Ho(),ns.insert=Yo().bind(null,"head"),ns.domAPI=Fo(),ns.insertStyleElement=Qo(),Go()(ts.Z,ns);const rs=ts.Z&amp;&amp;ts.Z.locals?ts.Z.locals:void 0,os="yt-md-widget",is=Sa.withTag("MD_WIDGET_ELEMENT");class as extends HTMLElement{constructor(){super(),this.renderer=Oi(i.createElement("div",null),this),this.host=null,this.className=rs.widgetWrapper,this.renderLoader(),this.embeddedWidget=this.extractEmbeddedWidget()}initialize(e){this.host=e;try{this.validate(),this.renderWidget(e)}catch(e){this.renderError(e)}}validate(){this.getEmbedding(),this.getWidget()}extractEmbeddedWidget(){const e=this.getAttribute(es.appKey),t=this.getAttribute(es.widgetKey),n=this.getAttribute(es.embeddingId);return Hi(e,"app-key attribute is required"),Hi(t,"widget-key attribute is required"),Hi(n,"embedding-id attribute is required"),{appKey:e,widgetKey:t,embeddingId:n}}getEmbedding(){const{embeddingId:e,widgetKey:t,appKey:n}=this.embeddedWidget;if(!e)return is.warn("No embedding found",this.embeddedWidget),null;Hi(this.host,"Host is not passed");const r=this.host.getEmbeddings().find((t=&gt;t.id===e));return Hi(r,`Embedding "${e}" not found for widget "${t}"`),is.debug(`Embedding "${e}" found for widget "${n}:${t}"`,r),r}async saveConfig(e){const t=this.getEmbedding();Hi(this.host?.updateEmbeddings,"Could not update embeddings"),Hi(t,"Embedding not found"),t.settings=e,this.host.updateEmbeddings(this.host.getEmbeddings().map((e=&gt;e.id===t.id?t:e))),is.debug("embedding updated",t)}getWidget(){Hi(this.host,"Host is not passed");const e=this.host.getAvailablePlugins().find((e=&gt;e.appName===this.embeddedWidget.appKey&amp;&amp;e.key===this.embeddedWidget.widgetKey))??null;return Hi(e,`Widget "${this.embeddedWidget.widgetKey}" not found`),e}getSize(){const e=this.getAttribute("width"),t=this.getAttribute("height");if(e&amp;&amp;t)return{width:e,height:t}}renderLoader(){this.renderer.render(i.createElement(Ka.Z,null))}renderError(e){this.renderer.render(i.createElement(Wa.Z,{"data-test":"widget-error",message:wi("There was a problem loading the widget"),description:e.message+"\n"+wi("Check browser console for additional information"),icon:qa()}))}renderWidget(e){const t=this.getWidget();this.renderer.render(i.createElement(Va,{getParentWidth:()=&gt;this.parentElement?.clientWidth??800,hubBackendURL:e.hubURL,makeRequest:(t,n)=&gt;e.makeRequest(t,n),backendURL:e.backendURL,frameSrc:`${t.base}${t.indexPath}`,appName:t.appName,widgetName:t.name,place:"MARKDOWN",entity:e.entity,size:this.getSize(),configStorage:{get:()=&gt;Promise.resolve(this.getEmbedding()?.settings),set:e=&gt;this.saveConfig(e)}}))}}const ss=/^.*((youtu.be\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#&amp;?]*).*/;function cs(e){return t=&gt;{try{return[e,decodeURIComponent(e)].includes(t.name)}catch{return e.includes(t.name)}}}function ls(e){try{const t=new URL(e);if(t.host.includes("figma.com")&amp;&amp;["/file/","/proto/","/design/"].some((e=&gt;t.pathname.includes(e))))return`https://www.figma.com/embed?embed_host=share&amp;url=${encodeURIComponent(t.toString())}`;if(t.host.includes("app.diagrams.net"))return`https://viewer.diagrams.net/${new URL(t).hash}`;if(t.host.includes("drive.google.com"))return t.pathname=t.pathname.replace(/\/view.*/,"/preview"),t.toString()}catch{}return e}function gs(e){const t=e.match(/\d+([^\d]+)/i);if(!t)return"";const[,n]=t;return n||""}function us(e){return gs(e)?e:`${e}px`}function ds(e,t,n){const r=e.width/e.height;if(t)return`${parseFloat(t)/r}${gs(t)}`;if(n)return`${parseFloat(n)*r}${gs(n)}`;throw new Error("Width or height is not passed")}function ps(e){const t=e.attrGet("width"),n=e.attrGet("height");return[t?`width: ${us(t)}`:null,n?`height: ${us(n)}`:null].filter((e=&gt;!!e)).join("; ")}const As=function(e,t){const n=e.renderer.rules.image;e.renderer.rules.image=function(r,o,i,a,s){const c=r[o],l=c.attrs?.[c.attrIndex("src")][1];if(!l||!c.attrs)return n(r,o,i,a,s);const g=function(e){if(!e.startsWith(Xa))return null;try{const[t,n,r]=e.replace(Xa,"").split(":");return t&amp;&amp;n&amp;&amp;r?{appKey:t,widgetKey:n,embeddingId:r}:null}catch(t){return Ja.error("Failed to parse MdWidget syntax",e,":",t),null}}(l);if(g)return c.tag=(customElements.get(os)||window.customElements.define(os,as),os),c.attrs=[[es.appKey,g.appKey],[es.widgetKey,g.widgetKey],[es.embeddingId,g.embeddingId],["width",c.attrGet("width")],["height",c.attrGet("height")]].filter((e=&gt;null!==e[1]&amp;&amp;void 0!==e[1])),s.renderToken(r,o,i).replace("/&gt;",`&gt;&lt;/${c.tag}&gt;`);const u=function(e){const t=e.match(ss);return t&amp;&amp;11===t[7].length?t[7]:null}(l);if(u)return function(e,t,n,r){const o=new URL(e).searchParams;o.has("t")&amp;&amp;(o.set("start",o.get("t")),o.delete("t")),o.delete("v");const i=ps(t);return`&lt;lite-youtube videoid="${n.utils.escapeHtml(r)}" params="${n.utils.escapeHtml(o.toString())}" style="${n.utils.escapeHtml(i)}"&gt;&lt;/lite-youtube&gt;`}(l,c,e,u);const d=t.find(cs(l));if(function(e){try{const{pathname:t,host:n}=new URL(e);return"docs.google.com"===n||"drive.google.com"===n||"calendar.google.com"===n&amp;&amp;t.startsWith("/calendar/embed")||"www.figma.com"===n&amp;&amp;(t.startsWith("/file")||t.startsWith("/proto")||t.startsWith("/design")||t.startsWith("/embed"))||"app.diagrams.net"===n||"viewer.diagrams.net"===n||"miro.com"===n&amp;&amp;(t.includes("/app/live-embed")||t.includes("/app/board"))}catch(e){return!1}}(l)){const e=ps(c);return c.tag="iframe",c.attrs=[["src",ls(d?.URL??l)],["class","embedded-iframe"],["allow","fullscreen"]],e&amp;&amp;c.attrPush(["style",e]),s.renderToken(r,o,i).replace("/&gt;","&gt;&lt;/iframe&gt;")}if(l.endsWith(".pdf"))return c.tag=(customElements.get(Pi)||window.customElements.define(Pi,Ri),Pi),c.attrs=[["src",ls(d?.URL??l)],[Di,"embedded-iframe"],[Ni,d?.name??l]],s.renderToken(r,o,{...i,xhtmlOut:!1});if(c.attrs[c.attrIndex("src")][1]=d?d.URL:l,d){if("img"===c.tag&amp;&amp;0===c.children?.length){const e=new(zi())("text","",0);e.content=d.name,c.children.push(e)}c.attrs.push(["data-file-name",d.name])}(d&amp;&amp;"video"===$i(d.mimeType)||l.endsWith(".mp4")||l.endsWith(".mkv"))&amp;&amp;(c.tag="video",c.attrs.push(["controls","controls"])),d&amp;&amp;"animatedImage"===$i(d.mimeType)&amp;&amp;c.attrs.push(["data-animated","true"]),function(e,t){const n=t.attrGet("width"),r=t.attrGet("height");n&amp;&amp;r||!e?.dimensions||(n||r||(t.attrs?.push(["width",e.dimensions.width.toString()]),t.attrs?.push(["height",e.dimensions.height.toString()])),n&amp;&amp;"%"!==gs(n)&amp;&amp;t.attrs?.push(["height",ds(e?.dimensions,n,r)]),r&amp;&amp;"%"!==gs(r)&amp;&amp;t.attrs?.push(["width",ds(e?.dimensions,n,r)]))}(d,c);let p=n(r,o,i,a,s);return"img"!==c.tag&amp;&amp;(p=p.replace("/&gt;",`&gt;&lt;/${c.tag}&gt;`)),p};const r=e.renderer.rules.link_open;e.renderer.rules.link_open=(e,n,...o)=&gt;{const i=e[n],a=i.attrs?.[i.attrIndex("href")][1];if(!a||!i.attrs)return r(e,n,...o);const s=t.find(cs(a));return s?(i.attrs[i.attrIndex("href")][1]=s.URL+"&amp;forceDownload=true",i.attrs.push(["download",s.name]),r(e,n,...o)):r(e,n,...o)}};var Cs=n(97762),Is=n(2164),fs={};fs.styleTagTransform=Ko(),fs.setAttributes=Ho(),fs.insert=Yo().bind(null,"head"),fs.domAPI=Fo(),fs.insertStyleElement=Qo(),Go()(Is.Z,fs);const ms=Is.Z&amp;&amp;Is.Z.locals?Is.Z.locals:void 0;var hs=n(47195),vs=n.n(hs),bs=n(12224),ys=n.n(bs);ys(),vs();const ws=({summary:e,icon:t,className:n,...r})=&gt;{const o=ua()(n,{[ms.entityLinkContainer]:!!t});return i.createElement(a.Z,{...r,className:o},t?i.createElement(da.ZP,{glyph:"article"===t?vs():ys(),className:ms.entityIcon}):null,i.createElement("span",null,e))},_s="data-pos",js="pos:",xs="size:";function Es(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&amp;")}const Ss={USER:"user-id",TICKET:"ticket-id",ARTICLE:"article-id"},Ts={NONE:"NONE",BOLD:"BOLD",LINK:"LINK"},Ms=":",Ls="data-user-tooltip";function ks(e,t){return e+Ms+t}function Os(e){return new RegExp(`(?:[^\`]|^)${Es(e)}(?=[^\`]|$)(?!\\.\\p{L}|\\d|\\p{L})`,"igu")}function Ps(e){return new RegExp(`(?:[^\`*&gt;]|^)${Es(e)}(?=[^\`]|$)(?!\\.\\p{L}|\\d|\\p{L})`,"igu")}function Ns(e,t=!0){return(n,r,o)=&gt;{let i=n;return e.forEach(((e,n)=&gt;{const a=t?n:new RegExp(Es(n),"i");i=i.replace(e.regexp,((t,n)=&gt;t.replace(a,((t,i)=&gt;{const a=r+n+i,s=a+t.length,c=o?`\x3c!--${js}${a};${xs}${t.length}--\x3e`:"",l=o?`\x3c!--${js}${s}--\x3e`:"";return c+e.replacer()+l}))))})),i}}var Ds=n(60653);const Rs=/^[a-z]+:(\/\/|\\\\)/i;function Us(e,t,n){const r=t?.attrGet("href");return!("text"!==n?.type||"link_open"!==t?.type||!n.content.startsWith("unfurl:")||!r||3!==e.length)}var zs=n(60162),$s={};$s.styleTagTransform=Ko(),$s.setAttributes=Ho(),$s.insert=Yo().bind(null,"head"),$s.domAPI=Fo(),$s.insertStyleElement=Qo(),Go()(zs.Z,$s);const Gs=zs.Z&amp;&amp;zs.Z.locals?zs.Z.locals:void 0,Bs=function(e){return e.renderer.rules.table_open=()=&gt;`&lt;div class="${Gs.tableWrapper}"&gt;\n&lt;table&gt;\n`,e.renderer.rules.table_close=()=&gt;"&lt;/table&gt;\n&lt;/div&gt;\n",e};var Fs=n(19262),Zs={};Zs.styleTagTransform=Ko(),Zs.setAttributes=Ho(),Zs.insert=Yo().bind(null,"head"),Zs.domAPI=Fo(),Zs.insertStyleElement=Qo(),Go()(Fs.Z,Zs);const Ys=Fs.Z&amp;&amp;Fs.Z.locals?Fs.Z.locals:void 0;var Ws=n(76424),Hs={};Hs.styleTagTransform=Ko(),Hs.setAttributes=Ho(),Hs.insert=Yo().bind(null,"head"),Hs.domAPI=Fo(),Hs.insertStyleElement=Qo(),Go()(Ws.Z,Hs);const qs=Ws.Z&amp;&amp;Ws.Z.locals?Ws.Z.locals:void 0,Qs="yt-latex";class Vs extends HTMLElement{constructor(){super(),this.classList.add(qs.ytLatex),this.renderLatex()}renderLatex(){(async()=&gt;Promise.all([n.e(736),n.e(793)]).then(n.bind(n,80037)))().then((e=&gt;{const t=this;e.renderLatex(this,{errorCallback(e,n){const r=document.createElement("div");r.classList.add(qs.latexErrorContainer),r.textContent=n.message,t.appendChild(r)}})}))}}var Ks=n(14444),Js={};Js.styleTagTransform=Ko(),Js.setAttributes=Ho(),Js.insert=Yo().bind(null,"head"),Js.domAPI=Fo(),Js.insertStyleElement=Qo(),Go()(Ks.Z,Js);const Xs=Ks.Z&amp;&amp;Ks.Z.locals?Ks.Z.locals:void 0,ec="yt-mermaid",tc="mermaid";class nc extends HTMLElement{constructor(){super(),this.loaderNode=document.createElement("div"),this.disposables=[],this.onThemeChanged=()=&gt;{this.renderMermaid()},this.className=Xs.mermaid,this.storedId=(0,Ta.Z)(tc),this.text=this.textContent,this.innerHTML="",this.appendChild(this.loaderNode);const{unmount:e}=Oi(i.createElement(Ka.Z,null),this.loaderNode);this.disposables.push(e),this.renderMermaid(),this.disposables.push(Pa(this.onThemeChanged))}async renderMermaid(){try{await(async()=&gt;Promise.all([n.e(736),n.e(552)]).then(n.bind(n,10363)))().then((e=&gt;e.renderMermaid(this.storedId,this,this.text)))}catch(e){const{unmount:t}=Oi(i.createElement(Wa.Z,{"data-test":"mermaid-error-message",icon:qa(),message:wi("Failed to render Mermaid diagram")},e.toString?.()),this);this.disposables.push(t)}}disconnectedCallback(){this.disposables.forEach((e=&gt;e()))}}var rc=n(5969),oc={};oc.styleTagTransform=Ko(),oc.setAttributes=Ho(),oc.insert=Yo().bind(null,"head"),oc.domAPI=Fo(),oc.insertStyleElement=Qo(),Go()(rc.Z,oc);const ic=rc.Z&amp;&amp;rc.Z.locals?rc.Z.locals:void 0,ac={...va,onIgnoreTag:(e,t,n)=&gt;"html"===e?n.isClosing?"&lt;/div&gt;":`&lt;div data-test="html-container" class="${ic.importedHtmlPage}"&gt;`:va.onIgnoreTag(e,t)};function sc(e){return ba(e,ac)}function cc(e){e.renderer.rules.html_inline=(e,t)=&gt;sc(e[t].content),e.renderer.rules.html_block=(e,t)=&gt;sc(e[t].content)}var lc=n(76945),gc={};gc.styleTagTransform=Ko(),gc.setAttributes=Ho(),gc.insert=Yo().bind(null,"head"),gc.domAPI=Fo(),gc.insertStyleElement=Qo(),Go()(lc.Z,gc);const uc=lc.Z&amp;&amp;lc.Z.locals?lc.Z.locals:void 0,dc=(customElements.get(Qs)||window.customElements.define(Qs,Vs),Qs),pc=(customElements.get(ec)||window.customElements.define(ec,nc),ec),Ac="data-indented",Cc="data-code-block";function Ic(e){const t=e.renderer.rules.fence;return e.renderer.rules.fence=function(e,n,...r){const o=e[n],i=o.info?.trim().toLowerCase();if(["latex","tex"].includes(i))return o.info=function(e){if(e){const t=e.indexOf("-");if(t&gt;=0&amp;&amp;(e.startsWith("latex")||e.startsWith("tex")))return e.substr(0,t)}return e}(o.info),`&lt;${dc}&gt;${sc(o.content)}&lt;/${dc}&gt;`;if(i===tc)return`&lt;${pc}&gt;${sc(o.content)}&lt;/${pc}&gt;`;const a=t(e,n,...r);var s;let c="";if(s=o.content,new RegExp(`[${["Øœ","â€Ž","â€","â€ª","â€«","â€¬","â€­","â€®","â¦","â§","â¨","â©"].join("")}]`,"ig").test(s)){const e=wi("This code snippet contains bidirectional Unicode characters that may be interpreted in unexpected ways when compiled as software. To verify its content, copy the snippet to an editor that displays hidden Unicode characters."),t=wi("Learn more");c=`\n&lt;div class="${uc.banner}"&gt;\n    &lt;div class="${uc.warningIcon}"&gt;${Aa()}&lt;/div&gt;\n    &lt;div&gt;\n        ${e}\n        &lt;a class="${qt.Z.link}" href="https://trojansource.codes" target="_blank" rel="noopener noreferrer nofollow"&gt;${t}&lt;/a&gt;\n    &lt;/div&gt;\n&lt;/div&gt;`}return`&lt;div ${Cc} class="${uc.container} ${c?uc.withBanner:""}"&gt;${c}${a}&lt;/div&gt;`},e.renderer.rules.code_block=function(t,n,r,o,i){return t[n].attrSet(Ac,"true"),e.renderer.rules.fence(t,n,r,o,i)},e}var fc=n(49856),mc=n.n(fc),hc=n(21768);const vc=n.n(hc)().prototype.skipEmptyLines;function bc(e){e.block.State.prototype.skipEmptyLines=function(e){if("root"===this.parentType)return e;const t=vc.call(this,e),n=function(e){const t=e.reduce(((e,t)=&gt;{switch(t.type){case"list_item_open":e.listsCounter+=1;break;case"list_item_close":e.listsCounter-=1;break;case"paragraph_open":e.paragraphsCounter+=1;break;case"paragraph_close":e.paragraphsCounter-=1}return e}),{listsCounter:0,paragraphsCounter:0});return Object.values(t).some((e=&gt;e&gt;=1))}(this.tokens);return"paragraph"!==this.parentType||n||1==t-e?t:e}}const yc=function(e){const t=e.helpers.parseLinkDestination;e.helpers.parseLinkDestination=(e,n,r)=&gt;{const o=e.replace(/ (?!")/gi,"â–ˆ"),i=t(o,n,r);return i.str=i.str.replace(new RegExp("â–ˆ","ig")," "),i}},wc=/^{((?:width|height)=\S+?)\s?((?:width|height)=\S+?)?}/i,_c=/\d+%?/i,jc="data-overriden-size",xc={width:"width",height:"height"};function Ec(e){return e.split("=")}function Sc(e){e.inline.ruler.before("image","imageSizeExtension",(function(e){const{pos:t,tokens:n,src:r}=e;if(t&lt;=0)return!1;const o=n[n.length-1],i=r[t-1];if("image"!==o?.type||"{"!==r[t]||")"!==i)return!1;const a=r.substr(t).match(wc);if(!a)return!1;const[s,c,l]=a;return[c,l].filter((e=&gt;!!e)).map(Ec).filter((([e,t])=&gt;e in xc&amp;&amp;_c.test(t))).forEach((([e,t])=&gt;{o.attrs&amp;&amp;o.attrs.push([e,t])})),o.attrs?.some((([e])=&gt;e in xc))&amp;&amp;o.attrs.push([jc,"true"]),e.pos+=s.length,!0}))}function Tc(e){e.linkify.add("file:",{validate(e,t){const[n]=e.slice(t).split(/\s/i);try{return new URL(`file:${n}`),n.length}catch{return 0}}}),e.validateLink=function(e){const t=e.trim().toLowerCase();return!/^(vbscript|javascript|data):/.test(t)||/^data:image\/(gif|png|jpeg|webp|svg\+xml);/.test(t)}}var Mc=n(65280),Lc={};Lc.styleTagTransform=Ko(),Lc.setAttributes=Ho(),Lc.insert=Yo().bind(null,"head"),Lc.domAPI=Fo(),Lc.insertStyleElement=Qo(),Go()(Mc.Z,Lc);const kc=Mc.Z&amp;&amp;Mc.Z.locals?Mc.Z.locals:void 0,Oc=new Set([3,6,8]),Pc=new Set([48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,97,98,99,100,101,102]),Nc=e=&gt;{const t=e.src.substring(e.pos);let n;if(92===t.charCodeAt(0)&amp;&amp;35===t.charCodeAt(1))n=e.pos+1;else{if(35!==t.charCodeAt(0))return!1;n=e.pos}if(e.src[e.pos-1]&amp;&amp;!/[\s,.)\]!?]/.test(e.src[e.pos-1]))return!1;const r=function(e,t){const n=e.src,r=t+1;let o=0;for(;Pc.has(n.charCodeAt(r+o))&amp;&amp;o&lt;=8;)o++;return Oc.has(o)?r+o:-1}(e,n);if(-1===r)return!1;if(e.src[r]&amp;&amp;!/[\s,.)\]!?]/.test(e.src[r]))return!1;const o=e.posMax;e.posMax=r;const i=e.src.substring(n,r);e.push("color_open","span",1).attrSet("class",kc.color),e.push("text","",0).content=i;const a=e.push("color_box","span",0);return a.attrSet("class",kc.colorBox),a.attrSet("style",`background-color:${i}`),e.push("color_close","span",-1),e.pos=r,e.posMax=o,!0};function Dc(e){e.inline.ruler.before("text","color",Nc),e.renderer.rules.color_box=(e,t,n,r,o)=&gt;{const i=e[t];return`&lt;span${o.renderAttrs(i)}&gt;&lt;/span&gt;`}}var Rc=n(49232),Uc=n.n(Rc);Uc().extend({".":".","/":"-"});var zc=n(86e3),$c=n.n(zc),Gc=n(21415),Bc=n.n(Gc),Fc=n(90552),Zc=n.n(Fc);const Yc={link_open:e=&gt;"linkify"===e.markup?[0,0]:[`[${e.attrGet("alt")}](`.length,`${e.content})`.length],link_close:e=&gt;"linkify"===e.markup?[0,0]:[e.markup.length,e.content.length],image:e=&gt;{const t=e.meta?.originalSrc??e.attrGet("src"),n=e.attrGet("width"),r=n?`{width=${n}}`.length:0;return[`![${e.content}](`.length,`${t})`.length+r]},text_special:e=&gt;[0,e.markup.length],code_inline:e=&gt;[e.markup.length,e.content.length+e.markup.length],fence:e=&gt;[e.markup.length+(e.info?.length??0),e.content.length+e.markup.length],softbreak:()=&gt;[0,1]};function Wc(e,t=0){const n=t+e.meta.start;e.meta.start=n,e.attrSet(_s,n.toString())}function Hc(e){return e.nesting&gt;=0}function qc(e,t,n=!1){const r=e.attrGet(_s)??"0",o=Yc[e.type]?.(e)[1]??e.content.length;return r?`\x3c!--${js}${r}${n?`;${xs}${o}`:""}--\x3e${t}`:t}class Qc extends(Bc()){pushPending(){const e=super.pushPending();if("text"===e.type){const t=this.pos-e.content.length,n=this.src.substring(t-1);if(!n.startsWith(e.content)&amp;&amp;!n.substring(1).startsWith(e.content))return e;const r=this.src.substring(t).startsWith(e.content)?0:1;e.meta={...e.meta,start:t-r}}return e}}class Vc extends($c()){constructor(){super(...arguments),this.State=Qc}tokenize(e){super.tokenize(e);let t=0;for(const n of e.tokens){const[e,r]=Yc[n.type]?.(n)??[n.markup.length,n.content.length];t+=e??n.markup.length,n.meta?.start||(n.meta={...n.meta,start:t,prefix:e,size:r}),t+=r}}}class Kc extends(Zc()){tokenize(e,t,n){super.tokenize(e,t,n);const r=(o=e.src,o.match(/^(\n+)/)?.[0]?.length??0);var o;let i=null;e.tokens.forEach(((t,n)=&gt;{i=t.map??i;const o=e.tokens[n-1];if(Hc(t)&amp;&amp;i){if(!t.meta?.start){const n=i[0],s=e.bMarks[n]+e.tShift[n],c=e.eMarks[n],l=function(e){return["ordered_list_open","bullet_list_open","list_item_open","blockquote_open"].includes(e.type)?0:e.markup.length}(t),g=e.src.substring(s+l,c);let u=r+s+l+(a=g,a.match(/^\s*/)?.[0].length??0);"fence"===t.type&amp;&amp;(u+=t.info.length+1),t.meta={...t.meta,start:Math.max(o?.meta?.start??0,u)}}Wc(t)}var a}))}}const Jc=e=&gt;{const t=e.inline.ruler;e.inline=new Vc,e.inline.ruler=t,e.block=new Kc,e.renderer.rules.hardbreak=function(e,t,n){return n.xhtmlOut?`&lt;br data-pos="${e[t].meta.start}"/&gt;\n`:"&lt;br&gt;\n"},e.renderer.rules.softbreak=function(e,t,n){return n.breaks?n.xhtmlOut?`&lt;br data-pos="${e[t].meta.start}"/&gt;\n`:"&lt;br&gt;\n":"\n"};const n=e.renderer.rules.text;e.renderer.rules.text=function(e,t,...r){const o=n(e,t,...r),i=e[t].attrGet(_s);return""!==o&amp;&amp;i?`\x3c!--${js}${parseInt(i,10)}--\x3e${o}`:o},e.core.ruler.after("linkify","linkifyTokensFixer",(function(e){e.tokens.forEach((e=&gt;{let t=0;for(const n of e.children??[])n.meta?.start||(n.meta={...n.meta,start:t}),t+="text_special"===n.type?n.markup.length:n.content.length}))})),e.core.ruler.push("sourceMapInserter",(function(e){const t=e.tokens;let n,r;for(n=0,r=t.length;n&lt;r;n++){const e=t[n];if("inline"===e.type){let t=0;e.children?.forEach((n=&gt;{"softbreak"===n.type&amp;&amp;t++,n.meta&amp;&amp;Hc(n)&amp;&amp;Wc(n,e.meta.start+(e.level&gt;1?t*e.level:0))}))}"code_block"===e.type&amp;&amp;e.attrSet("data-indented","true")}})),e.core.ruler.disable("text_join"),e.renderer.rules.text_special=(e,t)=&gt;qc(e[t],e[t].content);const r=e.renderer.rules.html_block;e.renderer.rules.html_block=(e,t,...n)=&gt;qc(e[t],r(e,t,...n),!0);const o=e.renderer.rules.fence;e.renderer.rules.fence=(e,t,...n)=&gt;{const r=o(e,t,...n);return r.startsWith(`&lt;${ec}`)?qc(e[t],r,!0):r},e.inline.ruler2.at("fragments_join",(function(e){let t,n,r=0;const o=e.tokens,i=e.tokens.length;for(t=n=0;t&lt;i;t++)o[t].nesting&lt;0&amp;&amp;r--,o[t].level=r,o[t].nesting&gt;0&amp;&amp;r++,"text"===o[t].type&amp;&amp;t+1&lt;i&amp;&amp;"text"===o[t+1].type?(o[t+1].content=o[t].content+o[t+1].content,o[t].content.length&gt;0&amp;&amp;(o[t+1].meta=o[t].meta)):(t!==n&amp;&amp;(o[n]=o[t]),n++);return t!==n&amp;&amp;(o.length=n),!1})),e.inline.ruler2.before("fragments_join","positionsCorrector",(function(e){return e.tokens.filter((e=&gt;"strong_open"===e.type||"em_open"===e.type||"s_open"===e.type)).forEach((e=&gt;{e.meta.start+="s_open"===e.type?2:1})),!1}))},Xc="markedTransparent";function el(e){return e.meta?.isPermalinkSymbol??!1}function tl(e,t){const n=new e.Token("mark_open","mark",1);return n.attrSet("class",Xc),n.meta={...t},n}function nl(e,t,n){const r=[],o=n-e.meta.start,i=new(zi())(e.type,e.tag,0);i.content=e.content.slice(0,o),i.attrs=e.attrs?[...e.attrs]:i.attrs,i.meta=e.meta;const a=new(zi())(e.type,e.tag,0);return a.content=e.content.slice(o),a.attrs=e.attrs?[...e.attrs]:a.attrs,a.attrSet(_s,n.toString()),a.meta={...e.meta??{},start:n},i.content.length&gt;=0&amp;&amp;r.push(i),r.push(t),{replace:r,tail:a.content?a:null}}function rl(e,t){if(!e||"linkify"===e.markup)return 0;const n=1===e.nesting||"html_inline"===e.type&amp;&amp;e.content.startsWith("&lt;")&amp;&amp;!e.content.endsWith("/&gt;"),r=-1===e.nesting||"html_inline"===e.type&amp;&amp;e.content.startsWith("&lt;/");return t&amp;&amp;n||!t&amp;&amp;r?"html_inline"===e.type?e.content.length:e.markup.length:0}function ol(e,t,n){let r=[...e.children??[]];const o=e.meta.start+e.content.length;return n.forEach((n=&gt;{const i=new t.Token("mark_open","mark",1);i.meta={start:r[0].meta?.start??0,entityId:n.entityId,className:n.className};const a=new t.Token("mark_close","mark",-1);if(n.start&lt;=e.meta.start&amp;&amp;n.end&gt;=o&amp;&amp;r.every((e=&gt;"image"!==e.type))){r.unshift(i);const e=r.findIndex(el);return e&gt;=0?void r.splice(e-2,0,a):void r.push(a)}let s=n.start&lt;=e.meta.start&amp;&amp;n.end&gt;e.meta.start;r=r.reduce(((e,o,c)=&gt;{if(o.type.startsWith("mark")||0!==o.nesting||!o.meta||"html_inline"===o.type||el(o))return e.push(o),e;const l=r[c-1],g=r[c+1],u=rl(l,!0),d=rl(g,!1),p="image"===o.type||"color_box"===o.type,[A,C]=Yc[o.type]?.(o)??[u,o.content.length+d],I=o.meta.start-A,f=I+A+C;if("code_inline"===o.type)return function(e,t,n){if(!e.children){const n=new t.Token("text","",0);n.content=e.content,n.meta=e.meta,e.children=[n]}e.children=ol(e,t,[n])}(o,t,n),s=(s||n.start&gt;=I)&amp;&amp;n.start&lt;=f&amp;&amp;n.end&gt;f,e.push(o),e;if(s){let n=i;"image"===o.type&amp;&amp;(n=tl(t,i.meta)),e.push(n)}let m=o;if(!s&amp;&amp;n.start&gt;=I&amp;&amp;n.start&lt;f){const r=Math.max(n.start,o.meta.start);if(i.meta.start=r,p){let n=i;"image"===o.type&amp;&amp;(n=tl(t,i.meta)),e.push(n)}else{const{replace:t,tail:n}=nl(o,i,r);m=n,e.push(...t)}s=!0}if(m&amp;&amp;n.end&gt;I&amp;&amp;n.end&lt;=f){if(p)m=null,e.push(o,a);else{const{replace:t,tail:r}=nl(m,a,n.end);m=r,e.push(...t)}s=!1}return m&amp;&amp;e.push(m),s&amp;&amp;e.push(a),e}),[])})),r}function il(e){const t=e.match(/^&lt;([a-zA-Z0-9]+)(\s|&gt;)/);if(t)return Boolean(e.match(new RegExp("&lt;/"+t[1]+"&gt;[^&lt;]*\n")));const n=e.match(/&lt;\/([a-zA-Z][a-zA-Z0-9]*)&gt;.*\n/g);return null!==n&amp;&amp;n.length&gt;0}const al=e=&gt;{const t=e.renderer.rules.image;e.renderer.rules.image=(e,n,r,o,i)=&gt;{const a=e[n];return a.meta?.originalSrc&amp;&amp;a.attrs?.push(["data-original-src",a.meta.originalSrc]),t(e,n,r,o,i)}};var sl=n(20196);function cl({receiveHeader:e},t=!1,n=!0,r,o=!1){let i=function(e){const t=new(mc())("commonmark",{html:e,linkify:!0,breaks:!0,maxNesting:100}).enable("strikethrough",!0).enable("linkify").use(cc).use(bc).enable("table").use(yc).use(Sc).use(Tc).use(Dc);return t.linkify.set({fuzzyLink:!1}),t}(n);t||(i=i.use(zo.Z,{permalink:zo.Z.permalink.linkInsideHeader({class:ei.permamlink,renderHref:e=&gt;`${r?.pathname||location.pathname}#${e}`,symbol:"#"}),slugify:e=&gt;encodeURIComponent(function(e,t=!1){try{return Uc()(e,{lower:t,remove:t?/[.]/g:void 0})}catch(t){return e}}(e,!0)),callback:(t,n)=&gt;{const o=r?.pathname||location.pathname,i=(0,sl.ZK)((0,sl.Lw)()?.replace(/.$/,""),`${o}#${n.slug}`),a=n.title,s=parseInt(t.tag.substr(1),10),c=t.attrGet("id")??"";e?.({id:c,title:a,url:i,level:s})}}));const a="article"!==r?.entity||!r.wideTable||r?.fullWidth||r?.showToc?Bs:(s=r.expandedSidebar,e=&gt;{const t=Ys.articlesTableWrapper+(s?"":` ${Ys.articlesTableWrapperWide}`);return e.renderer.rules.table_open=()=&gt;`&lt;div class="${t}"&gt;\n&lt;table&gt;\n`,e.renderer.rules.table_close=()=&gt;"&lt;/table&gt;\n&lt;/div&gt;\n",e});var s;return i=i.use(function(e){return function(t){return t.renderer.rules.link_open=(t,n)=&gt;{const r=t[n],o=r.attrGet("href")||"",i=r.attrGet("title")||"",a=r.attrGet("download")||"",s=ua()(r.attrGet("class"),qt.Z.link),c=r.attrGet(_s),l=i?` title="${i}"`:"",g=a?` download="${a}"`:"",u=function(e){return Rs.test(e)}(p=o)&amp;&amp;!p.startsWith(location.origin)||a?` target="_blank" rel="noopener ${e?.unsafeLinks?"":"noreferrer "}nofollow"`:"",d=c?` ${_s}="${c}"`:"";var p;return`&lt;a class="${s}" href="${(0,Ds.escapeHtml)(o)}"${l}${u}${g}${d}&gt;`},t.renderer.rules.link_close=()=&gt;"&lt;/a&gt;",t}}({unsafeLinks:o})).use(a).use(Ic),i}const ll={readOnly:!0,highlightMentions:()=&gt;Ts.LINK,onTOC:void 0,attachments:[],html:!0,mentions:{users:[],tickets:[],articles:[]},mentionsUnfurling:{users:!0,tickets:!0,articles:!0},forceInline:!1,commands:[],disablePermalinks:!1,sourceMap:!1,unsafeLinks:!1,entityConfig:void 0};function gl(e,t,n){const r={...ll,...n},o=[],s=cl({receiveHeader:e=&gt;o.push(e)},r.disablePermalinks,r.html,r.entityConfig,r.unsafeLinks).use(gi,{disabled:r.readOnly});As(s,r.attachments),function(e,t,n,r,o,s,c=!1){const l=function(e,t,n){const r=new Map;return e.forEach((e=&gt;{const o=ua()({[ms.resolvedTask]:e.resolved});r.set(e.id,{regexp:Os(e.id),replacer:()=&gt;(0,Cs.renderToStaticMarkup)(i.createElement(ws,{summary:n?e.summary:e.id,href:t(e),title:`${e.id}: ${e.summary}`,className:o,icon:n?"ticket":void 0,"data-md-type":ks(Ss.TICKET,e.id),"data-issue-id":e.id}))})})),Ns(r,!1)}(t.tickets,s,o.tickets),g=function(e,t,n){const r=new Map;return e.forEach((e=&gt;{r.set(e.id,{regexp:Os(e.id),replacer:()=&gt;(0,Cs.renderToStaticMarkup)(i.createElement(ws,{summary:n?e.summary:e.id,icon:n?"article":void 0,href:t(e),title:`${e.id}: ${e.summary}`,"data-md-type":ks(Ss.ARTICLE,e.id),"data-article-id":e.id}))})})),Ns(r,!0)}(t.articles,s,o.articles),u=function(e,t,n){const r=new Map;return[...e].sort(((e,t)=&gt;t.login.length-e.login.length)).forEach((e=&gt;{let o;const s=t(e);o=s===Ts.LINK?()=&gt;(0,Cs.renderToStaticMarkup)(i.createElement(a.Z,{href:e.profileUrl,"data-md-type":ks(Ss.USER,e.login),"data-user-id":e.id,[Ls]:e.login},"@",n?e.name:e.login)):s===Ts.BOLD?()=&gt;(0,Cs.renderToStaticMarkup)(i.createElement("strong",{title:e.login,"data-md-type":ks(Ss.USER,e.login)},"@",n?e.name:e.login)):()=&gt;(0,Cs.renderToStaticMarkup)(i.createElement("span",{title:e.login,"data-md-type":ks(Ss.USER,e.login)},"@",e.name)),r.set(`@${e.login}`,{regexp:Ps(`@${e.login}`),replacer:o})})),Ns(r,!1)}(t.users,r,o.users),d=e.renderer.rules.text;e.renderer.rules.text=function(t,r,...o){const a=t[r-1];if("link_open"===a?.type)return d(t,r,...o);const s=function(e,t){let n=e;for(const r of t){const t=(0,Cs.renderToStaticMarkup)(i.createElement("span",{"data-vcs-command":!0,title:r.errorText,className:ua()({[ms.error]:r.errorText})},e.substring(r.start,r.end)));n=e.substring(0,r.start)+t+e.substring(r.end)}return n}(e.utils.escapeHtml(t[r].content),n),p=function(e){return e.replace(/'/g,"&amp;#39;")}(s),A=t[r].meta?.start??0,C=u(p,A,c),I=l(C,A,c);return g(I,A,c)}}(s,r.mentions,r.commands,r.highlightMentions,r.mentionsUnfurling,(e=&gt;t.buildEntityLink(e)),r.sourceMap),function(e,n){const r=e.renderer.rules.text,o=e.renderer.rules.link_close;e.renderer.rules.text=(e,t,...n)=&gt;{const o=r(e,t,...n);return Us(e,e[t-1],e[t])?o.replace(/^unfurl:/,""):o},e.renderer.rules.link_close=(e,n,...r)=&gt;{const i=o(e,n,...r),a=e[n-2],s=e[n-1];if(Us(e,a,s)){const e=s.content.replace(/^unfurl:/,""),n=a.attrGet("href");return n?`${i}&lt;unfurl-tickets query="${encodeURIComponent((c=n,t.parseEntityIdFromUrl(c)))}" label="${e}"/&gt;`:i}var c;return i}}(s),(r.sourceMap||r.markedFragments)&amp;&amp;(s.use(al),s.use(Jc)),r.markedFragments&amp;&amp;s.use(function(e){return t=&gt;{if(0===e.fragments.length)return;t.core.ruler.push("mark",(t=&gt;{const n=[...t.tokens];let r=null;n.forEach((n=&gt;{if("fence"!==n.type&amp;&amp;"code_block"!==n.type){if("html_block"===n.type){const o=function(e,t,n,r){function o(e,t){const n=e.meta.start,r=n+e.content.length,o=t.start&lt;n&amp;&amp;t.end&gt;r,i=t.start&gt;=n&amp;&amp;t.start&lt;=r||t.end&gt;=n&amp;&amp;t.end&lt;=r;return o||i}const i=!e.content.startsWith("&lt;/"),a=il(e.content),s=[e];for(const c of r){const r=t&amp;&amp;o(t,c)&amp;&amp;!il(t.content);if(o(e,c)&amp;&amp;i){const e=new n.Token("mark_open","mark",1);e.meta={start:c.start,entityId:c.entityId,className:c.className},s.unshift(e)}if(o(e,c)&amp;&amp;a||r){const e=new n.Token("mark_close","mark",-1);s.push(e)}}return s.length&gt;0?s:null}(n,r,t,e.fragments);return o&amp;&amp;(t.tokens=function(e,t,n){const r=[...e],o=e.indexOf(t);return r.splice(o,1,...Array.isArray(n)?n:[n]),r}(t.tokens,n,o)),void(r=n)}"inline"===n.type&amp;&amp;n.children&amp;&amp;0!==n.children.length&amp;&amp;n.meta&amp;&amp;(n.children=ol(n,t,e.fragments))}else n.children=function(e,t,n){if("code_block"===e.type){let n=e.meta.start;const r=e.content.split(/\n/);e.children=r.map(((e,o)=&gt;{const i=r.length===o+1,a=new t.Token("text","",0);return a.content=e+(i?"":"\n"),a.meta={start:n},n+=e.length+4+1,a}))}else{const n=new t.Token("text","",0);n.meta=e.meta,n.content=e.content,e.children=[n]}return ol(e,t,n)}(n,t,e.fragments)}))})),t.renderer.rules.mark_open=(e,t)=&gt;{const n=e[t],{entityId:r}=n.meta;return`&lt;mark class="${ua()("marked",n.attrGet("class"),n.meta.className)}" data-entity-id="${r}"&gt;`},t.renderer.rules.mark_close=()=&gt;"&lt;/mark&gt;",t.renderer.rules.code_inline=(e,n,r,o,i)=&gt;{const a=e[n],s=a.children?t.renderer.renderInline(a.children,r,o):(0,Ds.escapeHtml)(a.content);return`&lt;code${i.renderAttrs(a)}&gt;${s}&lt;/code&gt;`};const n=t.renderer.rules.fence;t.renderer.rules.fence=function(e,r,o,i,a){const s=n(e,r,o,i,a),c=e[r];if(!c.children)return s;if(c.info===tc&amp;&amp;c.children&amp;&amp;c.children.length&gt;1){const e=c.children.filter((e=&gt;1===e.nesting)),n=c.children.filter((e=&gt;-1===e.nesting));return c.children=null,t.renderer.renderInline([...e,c,...n],o,i)}const l=t.renderer.renderInline(c.children,o,i);return s.replace((0,Ds.escapeHtml)(c.content),l)},t.renderer.rules.code_block=t.renderer.rules.fence}}({fragments:r.markedFragments}));const c=function(e){return e.replace(/\\@/g,"@Í")}(e.replace(/&lt;!doctype/g,(e=&gt;e.toUpperCase()))),l=r.forceInline?s.renderInline(c):s.render(c);return r.onTOC?.(o),l}function ul(e){return ul="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},ul(e)}function dl(){dl=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==ul(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function pl(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function Al(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){pl(i,r,o,a,s,"next",e)}function s(e){pl(i,r,o,a,s,"throw",e)}a(void 0)}))}}function Cl(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Il(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Cl(Object(n),!0).forEach((function(t){ml(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Cl(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function fl(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,hl(r.key),r)}}function ml(e,t,n){return(t=hl(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function hl(e){var t=function(e,t){if("object"!==ul(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==ul(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ul(t)?t:String(t)}var vl=function(){return e=function e(t){var n=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),ml(this,"_defaultConfig",{auth:null,getUserAgreement:null,getUserConsent:null,setUserConsent:null,translations:null,interval:null,forceLogout:!0,onAccept:function(){},onDecline:function(){}}),ml(this,"_isDialogVisible",!1),ml(this,"_dialogShowListeners",[]),ml(this,"_dialogHideListeners",[]),ml(this,"startChecking",(function(){n._checkConfig(),n.userAgreementService.startChecking()})),ml(this,"showDialog",(function(){var e;(e=n.userAgreementService).showDialog.apply(e,arguments)})),ml(this,"stopChecking",(function(){n._checkConfig(),n.userAgreementService.stopChecking()})),ml(this,"checkConsentAndShowDialog",(function(){return n._checkConfig(),n.userAgreementService.checkConsentAndShowDialog()})),ml(this,"onDialogShow",(function(){n._isDialogVisible=!0,n._dialogShowListeners.forEach((function(e){return e()}))})),ml(this,"onDialogHide",(function(){n._isDialogVisible=!1,n._dialogHideListeners.forEach((function(e){return e()}))})),ml(this,"_onDecline",(function(){var e=n._config,t=e.onDecline,r=e.forceLogout,o=e.auth;t(),r&amp;&amp;o&amp;&amp;o.logout({message:"user-agreement-was-declined"})})),this.i18n=t},t=[{key:"configure",value:function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:{},t=this.i18n;if(this._config=Il(Il({},this._defaultConfig),e),this._configureBackend(),!this.getUserAgreement||!this.getUserConsent||!this.setUserConsent)throw new Error("Please provide either authInstance or getUserAgreement, getUserConsent and setUserConsent options to hcUserAgreement service");var n=this.getUserAgreement,r=this.getUserConsent,o=this.setUserConsent,i=this.onDialogShow,a=this.onDialogHide,s=this._onDecline,c={accept:t("Accept"),decline:t("Decline"),close:t("Close"),scrollToAccept:t("View the entire agreement to continue"),userAgreement:t("User Agreement"),reviewNow:t("Review now"),remindLater:t("Remind me later")},l=this._config,g=l.interval,u=l.onAccept;this.userAgreementService=new Co.ZP({getUserAgreement:n,getUserConsent:r,setUserConsent:o,onAccept:u,onDecline:s,interval:g,translations:c,onDialogShow:i,onDialogHide:a})}},{key:"_configureBackend",value:function(){var e=this._config,t=e.auth,n=e.getUserAgreement,r=e.getUserConsent,o=e.setUserConsent;if(t){var a=new Uo(t);this.getUserAgreement=Al(dl().mark((function e(){var t,n;return dl().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,a.getUserAgreement();case 2:return t=e.sent,n=gl(t.text||"",{buildEntityLink:function(){return""},parseEntityIdFromUrl:function(){return""}}),t.content=i.createElement("div",{"data-test":"rendered-user-agreement",dangerouslySetInnerHTML:{__html:n}}),e.abrupt("return",t);case 6:case"end":return e.stop()}}),e)}))),this.getUserConsent=a.getUserConsent,this.setUserConsent=a.setUserConsent}this.getUserAgreement=n||this.getUserAgreement,this.getUserConsent=r||this.getUserConsent,this.setUserConsent=o||this.setUserConsent}},{key:"_checkConfig",value:function(){if(!this._config)throw new Error("Please configure a hcUserAgreement service")}},{key:"addDialogShowListener",value:function(e){this._dialogShowListeners.push(e),this._isDialogVisible&amp;&amp;e()}},{key:"removeDialogShowListener",value:function(e){this._dialogShowListeners=this._dialogShowListeners.filter((function(t){return t!==e}))}},{key:"addDialogHideListener",value:function(e){this._dialogHideListeners.push(e),this._isDialogVisible||e()}},{key:"removeDialogHideListener",value:function(e){this._dialogHideListeners=this._dialogHideListeners.filter((function(t){return t!==e}))}}],t&amp;&amp;fl(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();const bl=vl;function yl(e){var t=angular.module("hub-components.user-agreement",[]);return e?t.value("hcUserAgreement",e):t.service("hcUserAgreement",["i18n",bl]),t.name}var wl=n(84074),_l=n(23113),jl="Hub",xl="VCS Hosting",El="Upsource",Sl="TeamCity",Tl="YouTrack",Ml=angular.module("HUB.config",[]),Ll=[Tl,El,xl,Sl,jl];Ml.constant("hubConfig",{language:{current:{name:"en"}},serverUri:".",help:{baseUrl:"https://www.jetbrains.com/help/hub/2024.2/"},debug:!1,build:{version:"2024.2",number:"2024.2.34646",date:"12-06-2024 06:57"},apiVersion:4,apiVersionHeader:fo,permissions:{prefix:"jetbrains.jetpass."},embedded:!0==={debug:!1,serverUri:"",helpBaseUrl:"https://www.jetbrains.com/help/hub/2024.2/",build:{date:"12-06-2024 06:57",timeStamp:1718175448207,version:"2024.2",number:"2024.2.34646"}}.embedded});const kl=Ml.name;function Ol(e){return Ol="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Ol(e)}function Pl(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Nl(e,t,n){return t=function(e){var t=function(e,t){if("object"!==Ol(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Ol(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Ol(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Dl="embeddedLogin",Rl=!1;try{Rl="true"===localStorage.getItem(Dl)||!1}catch(e){}var Ul,zl={cleanHash:!1,serverUri:"",userFields:["requiredTwoFactorAuthentication","twoFactorAuthentication/enabled","webauthnDevice/enabled"],redirect:!1,scope:Ll,optionalScopes:Ll,fetchCredentials:"same-origin",embeddedLogin:Rl,EmbeddedLoginFlow:wl.Z,onLogout:function(){var e="dashboard";-1!==window.location.href.indexOf("/".concat(e,"?id="))&amp;&amp;window.history.replaceState({},document.title,e)},onPostponeChangedUser:function(){s.Z.warning("You are now in read-only mode",0)},onPostponeLogout:function(){s.Z.warning("You are now in read-only mode",0)}};function $l(){return Ul||(Ul=new Tt.ZP(function(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Pl(Object(n),!0).forEach((function(t){Nl(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Pl(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({},zl)),Ul.setAuthDialogService(_l.Z)),Ul}n(64765),n(69600);var Gl=n(13530);const Bl=oo(Gl.C,"QueryAssist").name;var Fl=n(52674);const Zl=oo(Fl.Z,"Heading").name;var Yl=n(85255),Wl=new Yl.Z,Hl="com.jetbrains.hub.descriptionPanel",ql=angular.module("hub-components.hub-header",[Bl,Zl]);ql.directive("hubHeader",["$location",function(e){return{template:n(58866),replace:!0,transclude:!0,restrict:"E",scope:{placeholder:"@",datasource:"="},require:["?hubResource","?^^hubResource"],link:{pre:function(t,n,r,o){var i=o[0]||o[1];t.padded="padded"in r||"embedded"in r,t.embedded="embedded"in r,t.docked="docked"in r,t.focus=!t.embedded&amp;&amp;!t.docked,t.keys={toggleFocus:function(){return t.focus=!t.focus,!t.loading&amp;&amp;!t.focus},setFocus:function(){return t.focus=!0,!1}},t.focusChange=function(e){var r=e.focus;n[0].querySelector(".hub-header__form").classList[r?"add":"remove"]("hub-header__form_active"),t.$evalAsync((function(){t.focus=r}))},t.source=function(e){var n=e.query,r=e.caret,o=e.omitSuggestions;t.loading=!0;var a=t.datasource?t.datasource({query:n,caret:r}):i.resource.queryAssist({query:n,caret:r,fields:"query,caret,styleRanges".concat(o?"":",suggestions")}).$promise;return a.then((function(){t.loading=!1})),a},t.query=e.search().query||"",t.search=function(n){var r=n.query;t.query=r,t.$evalAsync((function(){e.search("query",""===r?void 0:r)}))},t.change=function(e){var n=e.query;t.query=n};var a=e.search().tab;t.$on("$destroy",(function(){var t=e.search().tab;a!==t&amp;&amp;e.search("query",null)}))}}}}]),ql.directive("hubHeaderDelete",["i18n","hubI18nPlural","HubErrorMessageBundle","hubNotify","$location",function(e,t,r,o,i){return{template:n(75239),scope:{label:"@",inline:"=",item:"=",redirectOnSuccess:"@",confirmMessage:"@",descriptionMessage:"@?",successMessage:"@",errorMessage:"@"},controller:["$scope",function(n){function a(e){return t.format(e,1,{name:n.item.name,item:n.item})}n.onClick=function(){var t=n.redirectOnSuccess||i.path().split("/").slice(0,-1).join("/");return o.confirm({label:a(n.confirmMessage),description:n.descriptionMessage,okButtonLabel:e("Delete",null,"Remove action"),actionPromise:function(){return n.item.$remove({id:n.item.id}).then((function(){var e=a(n.successMessage);o.success(e),i.path(t)}),(function(e){var t=r.msg(e,n.errorMessage,n.item);o.error(t)}))}})}}]}}]),ql.directive("hubHeaderWithDescription",(function(){return{template:n(19128),transclude:{title:"hubHeaderWithDescriptionTitle",description:"?hubHeaderWithDescriptionDescription"},scope:{descriptionId:"=?"},controller:["$scope","hubConfig",function(e,t){var n=e.descriptionId?"".concat(Hl,".").concat(e.descriptionId):void 0;e.isAvailable=t.embedded,e.isEnabled=!0,n&amp;&amp;Wl.get(n).then((function(t){null!==t&amp;&amp;(e.isEnabled=t)})),e.onToggle=function(){e.isEnabled=!e.isEnabled,n&amp;&amp;Wl.set(n,e.isEnabled)}}]}}));const Ql=ql.name,Vl=angular.module("HUB.directives.hub-header",[Ql]).name;var Kl=n(534),Jl=n(59169);function Xl(e){return Xl="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Xl(e)}function eg(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,gg(r.key),r)}}function tg(e,t,n){return t&amp;&amp;eg(e.prototype,t),n&amp;&amp;eg(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function ng(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function rg(e,t,n){return t=ig(t),function(e,t){if(t&amp;&amp;("object"===Xl(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return ag(e)}(e,og()?Reflect.construct(t,n||[],ig(e).constructor):t.apply(e,n))}function og(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(og=function(){return!!e})()}function ig(e){return ig=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},ig(e)}function ag(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function sg(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;cg(e,t)}function cg(e,t){return cg=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},cg(e,t)}function lg(e,t,n){return(t=gg(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function gg(e){var t=function(e,t){if("object"!=Xl(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=Xl(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Xl(t)?t:t+""}var ug=o().module("Ring.footer",[]),dg=function(e){function t(){var e;ng(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return lg(ag(e=rg(this,t,[].concat(r))),"styles",Jl.Z),e}return sg(t,e),tg(t)}(p);lg(dg,"transclude",{left:"?rgFooterLeft",center:"?rgFooterCenter",right:"?rgFooterRight"}),lg(dg,"template",'&lt;footer ng-class=":: $ctrl.styles.footer" data-test="ring-footer"&gt;\n  &lt;div ng-class=":: $ctrl.styles.columnLeft"&gt;\n    &lt;div ng-transclude="left" ng-class=":: $ctrl.styles.columnItem"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-class=":: $ctrl.styles.columnCenter"&gt;\n    &lt;div ng-transclude="center" ng-class=":: $ctrl.styles.columnItem"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-class=":: $ctrl.styles.columnRight"&gt;\n    &lt;div ng-transclude="right" ng-class=":: $ctrl.styles.columnItem"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/footer&gt;');var pg=function(e){function t(){return ng(this,t),rg(this,t,arguments)}return sg(t,e),tg(t)}(p);lg(pg,"transclude",!0),lg(pg,"template",'&lt;div class="'.concat(Jl.Z.line,'" ng-transclude&gt;&lt;/div&gt;'));var Ag=function(e){function t(){return ng(this,t),rg(this,t,arguments)}return sg(t,e),tg(t,[{key:"$onInit",value:function(){this.copyrightYears=(0,Kl.i)(this.year)}}]),t}(p);lg(Ag,"template","&lt;span&gt;{{:: $ctrl.copyrightYears}} {{:: $ctrl.companyName}}&lt;/span&gt;"),lg(Ag,"bindings",{year:"@",companyName:"@"}),ug.component("rgFooter",dg),ug.component("rgFooterLine",pg),ug.component("rgFooterCopyright",Ag);const Cg=ug.name;var Ig=angular.module("hub.directives.footer",[Cg]);Ig.component("hubFooter",{template:n(64935),bindings:{installation:"@"},controller:["hubConfig","getHubHelpUrlFilter",function(e,t){var n=this;this.config=e,this.documentationUrl=t("HUB-Documentation.html"),this.copyrightYears=(0,Kl.i)(2e3),this.isDockerInstallation=function(){return"DOCKER"===n.installation}}]});const fg=Ig.name;n(33161),n(9494),n(21249),n(26699),n(32023),n(2707),n(79753),n(91038);var mg=n(87301);const hg=oo(mg.Z,"SmartTable").name,vg=oo(n(31059).Z,"Pager").name;var bg=n(13554),yg=n(94969),wg=n(48816),_g=n.n(wg),jg=(n(75114),n(46466),n(83711)),xg=n(8769),Eg=n.n(xg)()(),Sg=o().module("Ring.place-under",[]);Sg.directive("rgPlaceUnder",["$window","getClosestElementWithCommonParent","rgPlaceUnderHelper",function(e,t,n){return{restrict:"A",link:function(e,r,o){var i=r[0],a=n.createPositionSynchronizer(i,o,e);o.$observe("rgPlaceUnder",(function(n){n&amp;&amp;e.$evalAsync((function(){var e=t(i,n);if(!e)throw new Error("rgPlaceUnder cannot find element to sync with.");a.syncPositionWith(e)}))}))}}}]),Sg.factory("getClosestElementWithCommonParent",(function(){return function e(t,n){var r=t.parentNode;return r?r.querySelector(n)||e(r,n):null}})),Sg.factory("rgPlaceUnderHelper",["$window",function(e){return{DEBOUNCE_INTERVAL:10,AFTER_SCROLL_RECHECK_INTERVAL:50,HEIGHT_CHECK_INTERVAL:50,createPositionSynchronizer:function(t,n,r){var o=parseInt(n.placeTopOffset,10)||0,i=n.syncHeight,a=[],s=[];function c(){s.map((function(e){return e()})),s=[]}return n.syncBottom&amp;&amp;(a=n.syncBottom.split(",")),r.$on("$destroy",c),{waitForNonZeroHeight:function(t){return new Promise((function(n){!function r(){0===t.offsetHeight?e.setTimeout(r,50):n()}()}))},onScroll:function(n){var r=(0,I.c6)(),s=e.document.documentElement&amp;&amp;e.document.documentElement.offsetHeight||e.document.body.offsetHeight,c=n.offsetHeight,l=n.getBoundingClientRect().top+r+c,g=Math.max(l-r,c);if(t.style.marginTop="".concat(g+o,"px"),i){var u=0;if(a.length)for(var d=0;d&lt;a.length;d++){var p=a[d].split(";"),A=e.document.querySelector(p[0]),C=p[1]?parseInt(p[1],10):0;if(A){var f=A.getBoundingClientRect();if(0===f.top)continue;var m=parseInt(e.getComputedStyle(A).getPropertyValue("margin-top"),10);(u=s-f.top+m+C)&lt;0&amp;&amp;(u=0);break}}t.style.height="calc(100% - ".concat(parseInt(t.style.marginTop,10)+u,"px)")}},syncPositionWith:function(t){var o=this;c();var i=(0,jg.Z)((function(){return o.onScroll(t)}),50),a=(0,jg.Z)((function(){o.onScroll(t),i()}),10);this.waitForNonZeroHeight(t).then(a),e.addEventListener("scroll",a),s.push((function(){e.removeEventListener("scroll",a)})),s.push(r.$watch("show",a)),s.push(r.$on("rgPlaceUnder:sync",a));var l=n.listenToHeightChange?e.document.querySelector(n.listenToHeightChange):e.document.body;Eg.listenTo(l,a),s.push((function(){return Eg.removeAllListeners(l)}))}}}}}]);const Tg=Sg.name;function Mg(e){return Mg="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Mg(e)}function Lg(e,t,n){return t=Og(t),function(e,t){if(t&amp;&amp;("object"===Mg(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,kg()?Reflect.construct(t,n||[],Og(e).constructor):t.apply(e,n))}function kg(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(kg=function(){return!!e})()}function Og(e){return Og=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Og(e)}function Pg(e,t){return Pg=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Pg(e,t)}var Ng=o().module("Ring.sidebar",[Tg,F,pe]),Dg=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return(e=Lg(this,t,[].concat(r))).$onInit=function(){var t=e.$inject.$scope;e.dialogIsActive=!1,e.showed=e.show,t.$watch((function(){return e.dialogIsActive}),(function(){e.dialogIsActive?e.show=!0:e.showed||(e.show=!1)})),t.$watch((function(){return e.show}),(function(){e.dialogIsActive||(e.showed=e.show)}))},e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;Pg(e,t)}(t,e),n=t,Object.defineProperty(n,"prototype",{writable:!1}),n;var n}(p);Dg.$inject=["$scope"],Ng.directive("rgSidebar",(function(){return{restrict:"E",transclude:!0,replace:!0,scope:{},controller:Dg,bindToController:{show:"=",placeUnderSibling:"@",topOffset:"=?",dialogIsActive:"=?"},template:'&lt;div\n  class="ring-sidebar"\n  rg-place-under="{{sidebar.placeUnderSibling}}"\n  place-top-offset="{{sidebar.topOffset}}"\n  sync-height="true"\n  ng-class="{\'ring-sidebar_active\': sidebar.show}"\n&gt;\n  &lt;rg-dialog in-sidebar="true" active="sidebar.dialogIsActive"&gt;&lt;/rg-dialog&gt;\n  &lt;div class="ring-sidebar__content" ng-transclude ng-if="!sidebar.dialogIsActive"&gt;&lt;/div&gt;\n&lt;/div&gt;',controllerAs:"sidebar"}})),Ng.directive("rgSidebarToggleButton",(function(){return{restrict:"E",transclude:!0,replace:!0,scope:{},controller:function(){this.chevronRight=Ht(),this.chevronLeft=_g()},bindToController:{model:"=",dialogIsActive:"=?"},template:'&lt;span&gt;\n  &lt;rg-button\n    ng-click="button.model = !button.model"\n    ng-disabled="button.dialogIsActive"\n  &gt;\n    &lt;rg-icon\n      ng-show="button.model"\n      glyph="{{button.chevronRight}}"\n    &gt;&lt;/rg-icon&gt;\n\n    &lt;rg-icon\n      ng-show="!button.model"\n      glyph="{{button.chevronLeft}}"\n    &gt;&lt;/rg-icon&gt;\n\n    &lt;span ng-transclude&gt;&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/span&gt;',controllerAs:"button"}}));const Rg=Ng.name;function Ug(){return Ug=Object.assign?Object.assign.bind():function(e){for(var t=1;t&lt;arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&amp;&amp;(e[r]=n[r])}return e},Ug.apply(this,arguments)}n(19601);var zg=(0,i.createContext)(),$g=(0,i.createContext)();function Gg(e){return function(t){return i.createElement(zg.Consumer,null,(function(n){return i.createElement(e,Ug({},t,{$injector:n}))}))}}function Bg(e){return function(t){return i.createElement($g.Consumer,null,(function(n){return i.createElement(e,Ug({},t,{$scope:n}))}))}}n(29253);var Fg=n(45697),Zg=n.n(Fg),Yg=n(94184),Wg=n.n(Yg),Hg=n(67411),qg=n(9114),Qg=n.n(qg),Vg=n(20167),Kg=n.n(Vg);function Jg(e){return Jg="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Jg(e)}function Xg(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,ru(r.key),r)}}function eu(e){return eu=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},eu(e)}function tu(e,t){return tu=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},tu(e,t)}function nu(e,t,n){return(t=ru(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ru(e){var t=function(e,t){if("object"!==Jg(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Jg(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Jg(t)?t:String(t)}var ou=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return nu(e=function(e,t,n){return t=eu(t),function(e,t){if(t&amp;&amp;("object"===Jg(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],eu(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"state",{fixed:!1}),nu(e,"onSidebarToggle",(function(){var t=e.props,n=t.sidebarIsOpen;(0,t.onSidebarToggle)(!n)})),nu(e,"onScroll",(function(t){var n="inside"!==t.currentPosition;e.state.fixed!==n&amp;&amp;e.setState({fixed:n})})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;tu(e,t)}(t,e),n=t,r=[{key:"render",value:function(){var e=this.props,t=e.sidebarIsOpen,n=e.sticky,r=e.height,o=e.children,a=e.$injector,s=this.state.fixed,c=a.get("i18n"),l=Wg()({"ring-table__toolbar-controls":!0,"ring-popup-container-mark":!0,"ring-table__toolbar-controls_fixed":n&amp;&amp;s});return i.createElement(Hg.h,{onEnter:this.onScroll,onLeave:this.onScroll,topOffset:r},i.createElement("div",{className:"ring-table__toolbar",style:{height:r}},i.createElement("div",{className:l},o,i.createElement("span",{className:"hub-header__controls__sidebar"},i.createElement(bi.ZP,{onClick:this.onSidebarToggle,"data-test":"table-toolbar-toggle",height:w.oW.S},i.createElement(da.ZP,{glyph:t?Qg():Kg(),size:da.ZP.Size.Size16,className:"table-toolbar__sidebar-button-icon"}),c("Details"))))))}}],r&amp;&amp;Xg(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);nu(ou,"propTypes",{children:Zg().any,sidebarIsOpen:Zg().bool,onSidebarToggle:Zg().func.isRequired,sticky:Zg().bool,height:Zg().string.isRequired,$injector:Zg().object.isRequired}),nu(ou,"defaultProps",{sidebarIsOpen:!1,sticky:!1});const iu=Gg(ou);function au(e){return au="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},au(e)}function su(e){return su=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},su(e)}function cu(e,t){return cu=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},cu(e,t)}function lu(e,t,n){return(t=gu(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function gu(e){var t=function(e,t){if("object"!==au(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==au(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===au(t)?t:String(t)}var uu=function(e){function t(){var e,n=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var r=arguments.length,o=new Array(r),a=0;a&lt;r;a++)o[a]=arguments[a];return lu(e=function(e,t,n){return t=su(t),function(e,t){if(t&amp;&amp;("object"===au(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],su(e).constructor):t.apply(e,n))}(this,t,[].concat(o)),"$onInit",(function(){var t=e.$inject,n=t.$element,r=t.$scope;e.root=(0,Ei.s)(n[0]),e.render(),r.$watch((function(){return e.sidebarIsOpen}),e.render)})),lu(e,"$onChanges",(function(){e.selection&amp;&amp;e.container&amp;&amp;e.render()})),lu(e,"$onDestroy",(function(){e.root.unmount()})),lu(e,"onSidebarToggle",(function(t){var n=e.$inject.$scope;e.sidebarIsOpen=t,e.render(),n.$applyAsync()})),lu(e,"render",(function(){var t=e.$inject.$injector,r=i.createElement(zg.Provider,{value:t},i.createElement(iu,{sticky:!0,onSidebarToggle:e.onSidebarToggle,sidebarIsOpen:e.sidebarIsOpen,height:e.height},i.createElement(n.component,{selection:e.selection})));e.root.render(r)})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;cu(e,t)}(t,e),n=t,Object.defineProperty(n,"prototype",{writable:!1}),n;var n}(p);lu(uu,"$inject",["$element","$injector","$scope"]),lu(uu,"bindings",{component:"&lt;",selection:"&lt;",sidebarIsOpen:"=",height:"&lt;"});var du=angular.module("HUB.react-toolbar-wrapper",[]);du.component("reactToolbarWrapper",uu);const pu=du.name;n(32564),n(91058);var Au=n(61708),Cu=n.n(Au),Iu=n(63844),fu=["placeUnder","placeTopOffset","syncHeight","syncBottom","listenToHeightChange"];function mu(e){return mu="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},mu(e)}function hu(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function vu(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?hu(Object(n),!0).forEach((function(t){ju(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):hu(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function bu(){return bu=Object.assign?Object.assign.bind():function(e){for(var t=1;t&lt;arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&amp;&amp;(e[r]=n[r])}return e},bu.apply(this,arguments)}function yu(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,xu(r.key),r)}}function wu(e){return wu=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},wu(e)}function _u(e,t){return _u=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},_u(e,t)}function ju(e,t,n){return(t=xu(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function xu(e){var t=function(e,t){if("object"!==mu(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==mu(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===mu(t)?t:String(t)}var Eu=n.n(Iu)()();function Su(e,t){var n=e.parentNode;return n?n.query(t)||Su(n,t):null}function Tu(e){return Tu="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Tu(e)}function Mu(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,Pu(r.key),r)}}function Lu(e){return Lu=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Lu(e)}function ku(e,t){return ku=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},ku(e,t)}function Ou(e,t,n){return(t=Pu(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Pu(e){var t=function(e,t){if("object"!==Tu(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Tu(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Tu(t)?t:String(t)}var Nu=function(e){function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),e=this,r=arguments,n=Lu(n=t),function(e,t){if(t&amp;&amp;("object"===Tu(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(n,r||[],Lu(e).constructor):n.apply(e,r));var e,n,r}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;ku(e,t)}(t,e),n=t,(r=[{key:"render",value:function(){var e=this.props,t=e.show,n=e.children,r=Wg()({"ring-sidebar":!0,"ring-sidebar_active":t});return i.createElement("div",{className:r,"data-test":"table-sidebar"},n)}}])&amp;&amp;Mu(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.PureComponent);Ou(Nu,"propTypes",{show:Zg().bool.isRequired,children:Zg().any.isRequired}),Ou(Nu,"defaultProps",{show:!1});const Du=(Ru=Nu,Uu=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return ju(e=function(e,t,n){return t=wu(t),function(e,t){if(t&amp;&amp;("object"===mu(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],wu(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"removeScrollListener",[]),ju(e,"onRefUpdate",(function(t){e.node=(0,qn.findDOMNode)(t);var n=e.props.placeUnder;e.node&amp;&amp;n&amp;&amp;setTimeout((function(){var t=Su(e.node,n);e.syncPositionWith(t)}))})),ju(e,"waitForNonZeroHeight",(function(e){return new Promise((function(t){!function n(){0===e.offsetHeight?window.setTimeout(n,50):t()}()}))})),ju(e,"onScroll",(function(t){var n=e.props,r=n.placeTopOffset,o=n.syncHeight,i=n.syncBottom,a=(0,I.c6)(),s=document.documentElement&amp;&amp;document.documentElement.offsetHeight||document.body.offsetHeight,c=t.offsetHeight,l=t.getBoundingClientRect().top+a+c,g=Math.max(l-a,c),u=e.node.style;if(u.marginTop="".concat(g+r,"px"),o){var d=0;if(i.length)for(var p=0;p&lt;i.length;p++){var A=i[p].split(";"),C=document.querySelector(A[0]),f=A[1]?parseInt(A[1],10):0;if(C){var m=C.getBoundingClientRect();if(0===m.top)continue;var h=parseInt(window.getComputedStyle(C).getPropertyValue("margin-top"),10);(d=s-m.top+h+f)&lt;0&amp;&amp;(d=0);break}}u.height="calc(100% - ".concat(parseInt(u.marginTop,10)+d,"px)")}})),ju(e,"removeScrollListeners",(function(){e.removeScrollListener.map((function(e){return e()})),e.removeScrollListener=[]})),ju(e,"syncPositionWith",(function(t){var n=e.props.listenToHeightChange;e.removeScrollListeners();var r=Cu()((function(){return e.onScroll(t)}),50),o=Cu()((function(){e.onScroll(t),r()}),10);e.waitForNonZeroHeight(t).then(o),window.addEventListener("scroll",o),e.removeScrollListener.push((function(){window.removeEventListener("scroll",o)}));var i=n?document.querySelector(n):document.body;Eu.listenTo(i,o),e.removeScrollListener.push((function(){return Eu.removeAllListeners(i)}))})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;_u(e,t)}(t,e),n=t,(r=[{key:"componentWillUnmount",value:function(){this.removeScrollListeners()}},{key:"render",value:function(){var e=this.props,t=(e.placeUnder,e.placeTopOffset,e.syncHeight,e.syncBottom,e.listenToHeightChange,function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||Object.prototype.propertyIsEnumerable.call(e,n)&amp;&amp;(o[n]=e[n])}return o}(e,fu));return i.createElement(Ru,bu({},t,{ref:this.onRefUpdate}))}}])&amp;&amp;yu(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component),ju(Uu,"propTypes",vu(vu({},Ru.propTypes),{},{placeUnder:Zg().string,placeTopOffset:Zg().number,syncBottom:Zg().arrayOf(Zg().string),syncHeight:Zg().bool,listenToHeightChange:Zg().string})),ju(Uu,"defaultProps",vu(vu({},Ru.defaultProps),{},{placeTopOffset:0,syncBottom:[],syncHeight:!1})),Uu);var Ru,Uu;function zu(e){return zu="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},zu(e)}function $u(e){return $u=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},$u(e)}function Gu(e,t){return Gu=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Gu(e,t)}function Bu(e,t,n){return(t=Fu(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Fu(e){var t=function(e,t){if("object"!==zu(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==zu(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===zu(t)?t:String(t)}var Zu=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return Bu(e=function(e,t,n){return t=$u(t),function(e,t){if(t&amp;&amp;("object"===zu(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],$u(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"$onInit",(function(){var t=e.$inject.$element;e.root=(0,Ei.s)(t[0]),e.render()})),Bu(e,"$onChanges",(function(){e.container&amp;&amp;e.render()})),Bu(e,"$onDestroy",(function(){e.root.unmount()})),Bu(e,"render",(function(){var t=e,n=t.show,r=t.component,o=t.item,a=t.empty,s=t.icon,c=e.$inject.$injector,l=i.createElement(Du,{show:n,component:r,item:o,empty:a,icon:s,$injector:c,placeUnder:".ring-table__toolbar",syncBottom:['[data-test="table-pager"];2','[data-test="ring-footer"];-40'],listenToHeightChange:".app__content",placeTopOffset:1,syncHeight:!0});e.root.render(l)})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;Gu(e,t)}(t,e),n=t,Object.defineProperty(n,"prototype",{writable:!1}),n;var n}(p);Bu(Zu,"$inject",["$element","$injector"]),Bu(Zu,"bindings",{show:"&lt;",component:"&lt;",item:"&lt;",empty:"&lt;",icon:"&lt;"});var Yu=angular.module("HUB.react-sidebar-wrapper",[]);Yu.component("reactSidebarWrapper",Zu);const Wu=Yu.name;function Hu(e){return Hu="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Hu(e)}function qu(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function Qu(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Vu(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Qu(Object(n),!0).forEach((function(t){nd(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Qu(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Ku(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Ju(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,rd(r.key),r)}}function Xu(e,t,n){return t&amp;&amp;Ju(e.prototype,t),n&amp;&amp;Ju(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function ed(e){return ed=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},ed(e)}function td(e,t){return td=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},td(e,t)}function nd(e,t,n){return(t=rd(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function rd(e){var t=function(e,t){if("object"!==Hu(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Hu(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Hu(t)?t:String(t)}var od=angular.module("hub-components.hub-table",[hg,vg,Rg,pu,Wu,Dn]),id=[],ad=function(e){function t(){var e;Ku(this,t);for(var r=arguments.length,o=new Array(r),i=0;i&lt;r;i++)o[i]=arguments[i];return nd(e=function(e,t,n){return t=ed(t),function(e,t){if(t&amp;&amp;("object"===Hu(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],ed(e).constructor):t.apply(e,n))}(this,t,[].concat(o)),"defaultEmptyTemplate",n(33436)),nd(e,"defaultBadRequestTemplate",n(45321)),nd(e,"selection",new bg.Z),nd(e,"meta",{total:0,pageSizes:[20,50,100]}),nd(e,"loading",!1),nd(e,"toolbarHeight","56px"),nd(e,"showSidebar",(function(){e.view.showSidebar=!0,e.$inject.$scope.$evalAsync()})),nd(e,"hideSidebar",(function(){e.view.showSidebar=!1,e.$inject.$scope.$evalAsync()})),nd(e,"openItemPage",(function(){var t=e.$inject.$scope,n=e.selection.getFocused();t.$emit("item:open",n,!1),t.$evalAsync()})),nd(e,"shortcuts",{left:e.showSidebar,right:e.hideSidebar,enter:e.openItemPage}),nd(e,"getData",(function(){return e.data.items||id})),nd(e,"attachLoaderToHubResource",(function(){var t=e.$inject.$element.controller("hubResource");t&amp;&amp;t.setLoader(e.showLoader,e.hideLoader)})),nd(e,"onDataChange",(function(){e.loading=!1;var t=e.data,n=t.total,r=t.skip,o=t.top;if(Number.isInteger(n+r+o)){var i=Math.ceil((r+1)/o),a=Math.ceil(n/o),s=Math.min(i,a);i!==s&amp;&amp;e.onPageChange(s),e.meta=Vu(Vu({},e.meta),{},{total:n,currentPage:s,pageSize:o})}})),nd(e,"onSelect",(function(t){var n=e.$inject.$scope;e.selection=t,e.onSelectionChange({selection:t}),e.sidebarElement=t.getFocused(),n.$emit("selection:changed",(0,yg.Z)((function(){return t})))})),nd(e,"onPageChange",(function(t){var n=e.$inject.$location;t!==(Number.parseInt(n.search().page,10)||0)&amp;&amp;(e.loading=!0,t&gt;0?n.search("page",t):n.search("page",void 0))})),nd(e,"onPageSizeChange",(function(t){var n=e.$inject.$location;e.loading=!0,n.search("top",t)})),nd(e,"onSort",(function(t){var n=t.column.id,r=t.order;e._onSort(n,r)})),nd(e,"_onSort",(function(t,n){var r=e.$inject.$location;if(e.columns.filter((function(e){return e.id})).map((function(e){return e.id})).includes(t)){var o="".concat(t,":").concat(n?"asc":"desc");e.sortKey=t,e.sortOrder=n,e.orderBy=o,o!==r.search().sort&amp;&amp;(e.loading=!0,o==="".concat(e.defaultSortKey,":asc")?r.search("sort",void 0):r.search("sort",o))}})),nd(e,"onReorderHandler",(function(t){var n=t.data,r=t.oldIndex,o=t.newIndex;e.onReorder({data:n,oldIndex:r,newIndex:o})})),nd(e,"rerender",(function(){var t=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:function(e){return function(e){if(Array.isArray(e))return qu(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return qu(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?qu(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(e.data.items);e.data.items=t})),nd(e,"rerenderItem",(function(t){var n=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:{},r=e.data.items.map((function(e){return(e.id?e.id===t.id:e===t)?Vu(Vu({},e),n):e}));e.rerender(r)})),nd(e,"showLoader",(function(){e.loading=!0})),nd(e,"hideLoader",(function(){e.$inject.$scope.$applyAsync((function(){e.loading=!1}))})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;td(e,t)}(t,e),Xu(t,[{key:"$postLink",value:function(){var e=this,t=this.$inject,n=t.$scope,r=t.$location,o=t.hubI18nPlural,i=t.i18n,a=t.hubSidebarStateStorage;this.pagerTranslations={perPage:i("per page"),firstPage:i("First page"),lastPage:i("Last page"),nextPage:i("next"),previousPage:i("previous")};var s=this.titleFormat();this.getTitle=s?function(e){return o.format(s,e)}:null,this.view={sidebarEnabled:!!this.sidebarTemplate(),noHeader:!!this.noHeader,noPager:!!this.noPager,showSidebar:!1,showOverlayLoader:!1},a.read().then((function(t){e.view.sidebarEnabled&amp;&amp;(e.view.showSidebar=t)})),n.$watch((function(){return e.view.showSidebar}),(function(e){void 0!==e&amp;&amp;a.store(e)})),n.$watch((function(){return e.data}),this.onDataChange),r.replace();var c=r.search().sort||this.orderBy;if(c){var l=c.split(":");this._onSort(l[0],"desc"!==l[1])}else this.defaultSortKey&amp;&amp;this._onSort(this.defaultSortKey,!0);this.attachLoaderToHubResource()}}])}(p);nd(ad,"$inject",["$scope","$element","$location","hubI18nPlural","i18n","hubSidebarStateStorage"]),nd(ad,"template",n(11823)),nd(ad,"transclude",!0),nd(ad,"bindings",{data:"=",columns:"=",orderBy:"=",defaultSortKey:"@",onSelectionChange:"&amp;",draggable:"=",onReorder:"&amp;",selectable:"=?",multiSelectable:"=?",isItemSelectable:"=",isDisabledSelectionVisible:"=",getCheckboxTooltip:"=",getItemLevel:"=",isItemCollapsible:"=",isParentCollapsible:"=",isItemCollapsed:"=",onItemCollapse:"=",onItemExpand:"=",forceLoading:"&lt;?",embedded:"&lt;?",sidebar:"=",toolbarComponent:"=",sidebarEmpty:"@",sidebarIcon:"@",sidebarTemplate:"&amp;",toolbarTemplate:"&amp;",rightToolbarTemplate:"&amp;",emptyTemplate:"&amp;",titleFormat:"&amp;",noHeader:"@?",noPager:"@?",context:"&lt;",descriptionId:"@?",listenToHeightChangeSelector:"@?"});var sd=Xu((function e(t){Ku(this,e);var n=t.controller("hubTable");this.selection=(0,yg.Z)((function(){return n.selection}))}));nd(sd,"$inject",["$element"]),od.component("hubTable",ad),od.controller("HubTableSelectionCtrl",sd);const cd=od.name;var ld=n(8015),gd=n.n(ld);n(60207);var ud=o().module("Ring.avatar-editor",[Fn,F]);ud.directive("rgAvatarEditor",(function(){return{restrict:"E",scope:{model:"=ngModel",onSelect:"&amp;",default:"@",ngDisabled:"=",showDeleteButton:"=?",showAddButton:"=?",deleteLabel:"@",addMessage:"@"},template:'&lt;div&gt;\n  &lt;div ng-click="!ngDisabled &amp;&amp; controls.select()" class="ring-avatar-editor__frame" ng-class="{\n        \'ring-avatar-editor_controlled\': controlled,\n        \'ring-avatar-editor\': !ngDisabled\n    }" ng-show="model || default"&gt;\n    &lt;img alt="Avatar" class="ring-avatar-editor__img" ng-src="{{ model }}" ng-show="model"&gt;\n    &lt;img alt="Default avatar" class="ring-avatar-editor__img" ng-src="{{ default }}"\n         ng-show="!model &amp;&amp; default" ng-click="!ngDisabled &amp;&amp; controls.select()"&gt;\n    &lt;rg-icon glyph="{{editIcon}}" size="16" class="ring-avatar-editor__icon" ng-if="!ngDisabled"&gt;&lt;/rg-icon&gt;\n  &lt;/div&gt;\n  &lt;input class="ring-avatar-editor__file-input" rg-avatar-editor-file-input type="file" ng-model="fileInput" accept="image/*" ng-if="!ngDisabled"&gt;\n\n  &lt;rg-button\n    delayed="true"\n    ng-disabled="ngDisabled"\n    ng-if="showAddButton &amp;&amp; !model &amp;&amp; !default"\n    ng-click="controls.select()"\n  &gt;{{ getAddMessage() }}&lt;/rg-button&gt;\n\n  &lt;rg-button\n    ng-if="showDeleteButton&amp;&amp; model &amp;&amp; !ngDisabled"\n    danger="true"\n    class="ring-avatar-editor__remove"\n    ng-click="controls.remove()"\n  &gt;\n    &lt;span translate&gt;{{ getDeleteLabel() }}&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;',transclude:!0,controller:["$scope","$attrs","RingMessageBundle",function(e,t,n){var r;function o(t){return function(n){var r=n.target.result,o=e.onSelect({name:t.name,data:r});o&amp;&amp;o.then?o.then((function(){e.model=r})):!1!==o&amp;&amp;e.$apply((function(){e.model=r}))}}function i(e){e.stopPropagation()}e.editIcon=gd(),e.showAddButton=!("showAddButton"in e)||e.showAddButton,e.showDeleteButton=!("showDeleteButton"in e)||e.showDeleteButton,"controls"in t&amp;&amp;(e.controlled=!0),this.registerFileInput=function(e){(r=e).addEventListener("change",(function(e){for(var t=!1,r=0;r&lt;e.target.files.length;r++){var i=e.target.files[r];if(0===i.type.indexOf("image/")){t=!0;var a=new FileReader;a.onload=o(i),a.readAsDataURL(i);break}}e.target.files.length&amp;&amp;!t&amp;&amp;s.Z.error(n.avatareditor_noselected())}))},e.controls={},e.controls.select=function(){FileReader?(r.addEventListener("click",i),r.dispatchEvent(new MouseEvent("click")),r.removeEventListener("click",i)):s.Z.error(n.avatareditor_nosupport())},e.controls.remove=function(){var t=e.onSelect({name:"",data:""});t&amp;&amp;t.then?t.then((function(){e.model=""})):!1!==t&amp;&amp;(e.model="")},e.getDeleteLabel=function(){return e.deleteLabel||n.avatareditor_delete()},e.getAddMessage=function(){return e.addMessage||n.avatareditor_add()}}]}})),ud.directive("rgAvatarEditorFileInput",(function(){return{restrict:"A",require:"^rgAvatarEditor",link:function(e,t,n,r){r.registerFileInput(t[0])}}}));const dd=ud.name;function pd(e){return pd="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},pd(e)}function Ad(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Cd(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ad(Object(n),!0).forEach((function(t){Id(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ad(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Id(e,t,n){return t=function(e){var t=function(e,t){if("object"!==pd(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==pd(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===pd(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}n(40561),n(56046),n(85827);var fd=angular.module("hub-components.message-bundles",["gettext"]);fd.factory("HubErrorMessageBundle",["gettextCatalog",function(e){var t;function n(t){return function(n){return e.getString(t,n)}}var r={old_password_mismatch:n("Your old password is incorrect. Enter the correct value and try again."),extend_permission_change_password_less_permission_then_user:n("You cannot change password for the user. You have less granted permissions than the user.")};function o(){return{400:{"2fa-bad-code":n("Code {{ code }} is not a valid two-factor authentication code for user {{ username }}")},409:n("Already exists"),404:n("Cannot find"),403:Cd({extend_permission_role_permission_no_project_permission:n("You cannot add the selected permission to the role. This role is already granted to a user or a group in a project, in which you do not have the selected permission."),extend_permission_project_role_no_project_permission:n("You cannot grant this role in selected project. The role contains some permissions which you do not have in the selected project."),extend_permission_group_user_less_permission_then_group:n("Members of the {{group}} group are granted a higher level of permissions than those that are granted to your user account. You cannot add users to this group under these conditions."),extend_permission_group_subgroup_less_permission_then_group:n("You cannot nest subgroups under selected group. You have less granted permissions than the selected parent group."),extend_permission_team_user_less_permission_then_group:n("You cannot add users to selected team. You have less granted permissions than the selected team."),extend_permission_team_subgroup_less_permission_then_group:n("You cannot add subgroups to selected team. You have less granted permissions than the selected team."),extend_permission_group_mapping_less_permission_then_group:n("Mapping denied. The selected group has a higher level of permissions than those that are available to your user account."),extend_permission_add_details_less_permission_then_user:n("You cannot add details to the user. You have less granted permissions than the user."),license_users_number_exceeded:n("You have reached the user limit for your license"),license_empty_name:n("License name is undefined"),license_invalid_name:n("License name is not valid"),license_empty_key:n("License key is undefined"),license_invalid_format:n("License key is in not valid format"),license_invalid_signature:n("License signature is incorrect"),license_unknown_type:n("The type of the license is unknown"),license_unknown_product:n("The product of the license is unknown"),license_invalid_major_version:n("License major version is not valid"),license_invalid_minor_version:n("License minor version is not valid"),license_invalid_build:n("License build is not valid"),license_invalid_product:n("License product is not valid"),license_upgrade_expired:n("Upgrade period of your license has expired"),license_not_generated_yet:n("License is not generated yet, the time of its generation is in future"),license_cant_change_logo:n("Your license does not allow logo customization"),license_disk_space_exceeded:n("You have already reached your disk space license limit"),license_not_hosted:n("This license is only compatible with a YouTrack Cloud installation"),license_not_standalone:n("This license is only compatible with a YouTrack Server installation"),license_expired:n("Your license has already expired"),license_cant_ban_guest:n("Your license does not allow you to ban guest user account")},r),504:n("Operation took too long"),503:n("The service is currently under maintenance and is working in the read-only mode. Any changes cannot be saved")}}function a(e){return e.data&amp;&amp;e.data.error_description||e.toString()}return t={default:o(),"imports-upload":{409:n("You have unfinished migrations. Please finish or delete them to continue")},"test-login":{404:n("User not found"),other:n("Authentication failed")},"change-password":{400:{"auth.mergeDetails.credentials.ownedBy.current":n("Credentials match the current user. Enter new credentials or cancel to exit."),"auth.mergeDetails.username.busy":n("The username or email is already associated with another account. Enter new credentials or cancel to exit."),"auth.mergeDetails.credentials.busy":n("These credentials are already used by another Hub account or are assigned to an account in an active third-party authentication service. You can't add these credentials to this user account.")},403:Cd({},r),other:n("Cannot change password")},"upload-avatar":{other:n("Cannot upload avatar")},"test-notification-settings":{400:{notification_smtp_send_failed:n('The email message cannot be sent: "{{cause}}". Check the status of your mail server and your configuration.'),notification_smtp_auth_failed:n("The SMTP server does not authorize Hub to send email. Check the Security and Authorization settings. If you use a secure email protocol, verify that your SSL certificate is valid."),notification_smtp_connection_failed:n("Cannot connect to SMTP server. Check the status of your mail server and verify that you have set the correct hostname and port."),notification_template_render_failed:n("The email message did not render properly and cannot be sent. Please contact support."),other:n("Notification settings test failed")},other:n("Notification settings test failed")},"create-resource":{400:{user_already_exists:n("User with email {{email}} already exists"),ssl_keystore_invalid:n("Failed to load keystore data"),ssl_keystore_invalid_password:n("The password for the keystore is not valid"),notification_smtp_disabled:n("Cannot send new user invitation email. Email notifications are disabled in Hub. An administrator needs to configure and enable this feature."),notification_smtp_send_failed:n('The new user invitation email cannot be sent: "{{cause}}". An administrator needs to check the status of the mail server and verify the SMTP settings in Hub.'),notification_smtp_auth_failed:n("Cannot send new user invitation email. The SMTP server does not authorize Hub to send email. An administrator needs to check the credentials on the SMTP settings page and verify that the SSL certificate is valid, if used."),notification_smtp_connection_failed:n("Cannot send new user invitation email. Cannot connect to SMTP server. An administrator needs to check the status of the mail server and verify the hostname and port on the SMTP Settings page in Hub."),notification_template_render_failed:n("Cannot send new user invitation email. The email message did not render properly and cannot be sent. Please contact support."),free_cloud_notification_number_email_constraint_today:n("With a free plan, you can't send more than 15 emails per day"),email_number_constraint_today:n("You can't send more than 10 emails to the same address per day"),jira_cloud_unsupported:n("This authentication module does not support connections to Jira Cloud")},403:{license_users_number_exceeded:n("You have reached the user limit for your license"),extend_permission_group_user_less_permission_then_group:n("Your system is configured to add new users to the {{group}} group, which is granted a higher level of permissions than those that are granted to your user account. You are not allowed to create user accounts under these conditions.")},other:n("Cannot create resource")},"service-add-license":{403:n("Not valid license format")},query:{other:n("Bad query")},"change-contact":{other:n("Cannot change contact")},"verify-email":{400:{notification_smtp_disabled:n("Email verification is currently unavailable. Email notifications are disabled system-wide. An administrator needs to configure and enable this feature."),notification_smtp_send_failed:n('Cannot verify provided email address. The email message cannot be sent: "{{cause}}". An administrator needs to check the status of the mail server and verify the SMTP settings.'),notification_smtp_auth_failed:n("Email verification is currently unavailable. The connection to the email server that sends email verification messages is either offline or misconfigured. An administrator needs to check the email server settings and verify that the SSL certificate is valid, if used."),notification_smtp_connection_failed:n("Cannot verify provided email address. Cannot connect to SMTP server. An administrator needs to check the status of the mail server and verify the hostname and port on the SMTP Settings."),notification_template_render_failed:n("Cannot verify provided email address. The email message did not render properly and cannot be sent. Please contact support."),notification_smtp_invalid_address:n("Email address is not found on the receiving server"),free_cloud_notification_number_email_constraint_today:n("With a free plan, you can't send more than 15 emails per day"),email_number_constraint_today:n("You can't send more than 10 emails to the same address per day"),other:n("Cannot verify provided email address")},other:n("Cannot verify provided email address")},"update-text":{other:n("Cannot update field")},"update-icon":{other:n("Cannot update image")},"update-toggle":{other:n("Cannot toggle flag")},"change-secret":{other:n("Cannot change service secret")},"add-resource":{other:n("Cannot add resource")},"add-user":{403:{extend_permission_group_user_less_permission_then_group:n("Members of this group are granted a higher level of permissions than those that are granted to your user account. You cannot add users to this group under these conditions.")},other:n("Cannot add user")},"user-delete":{other:n("Cannot delete user account")},"users-delete":{400:n("User â€œ{{name}}â€ cannot be deleted!"),other:n("Cannot delete user â€œ{{name}}â€")},"projects-delete":{400:n("Project â€œ{{name}}â€ cannot be deleted!"),other:n("Cannot delete project â€œ{{name}}â€")},"roles-delete":{400:n("Role â€œ{{name}}â€ cannot be deleted!"),other:n("Cannot delete role â€œ{{name}}â€")},"add-role":{other:n("Cannot add role")},"search-user-duplicates":{404:n("Results of duplicate user search have expired"),other:n("Failed to find user duplicates")},"remove-cluster-user":{404:n("Results of duplicate user search have expired"),other:n("Failed to remove user from cluster")},"remove-duplicate-cluster":{404:n("Results of duplicate user search have expired"),other:n("Failed to remove duplicate user cluster")},"update-duplicate-cluster":{404:n("Results of duplicate user search have expired"),other:n("Failed to update duplicate user cluster")},"merge-user-duplicates":{404:n("Results of duplicate user search have expired"),other:n("Failed to merge user duplicates")},"error-page":{other:n("Problem")},"add-group":{403:{"restricted-operation":n("Cannot add group. Read Group and Update Group permissions are required."),extend_permission_group_user_less_permission_then_group:n("Members of the {{group}} group are granted a higher level of permissions than those that are granted to your user account. You cannot add users to this group under these conditions.")},other:n("Cannot add group")},"groups-delete":{400:n("Group â€œ{{name}}â€ cannot be deleted!"),other:n("Cannot delete group â€œ{{name}}â€")},"service-delete":{other:n("Cannot delete service â€œ{{name}}â€")},"store-delete":{other:n("Cannot delete SSL keystore â€œ{{name}}â€")},"certificate-delete":{other:n("Cannot delete trusted SSL certificate â€œ{{name}}â€")},"authmodule-delete":{other:n("Cannot delete authmodule â€œ{{name}}â€")},"reset-permissions":{other:n("Cannot reset permissions")},"add-permissions":{other:n("Cannot add permission")},"remove-permissions":{other:n("Cannot remove permission")},ban:{other:n("You cannot ban yourself")},"grant-permissions":{other:n("Cannot grant permission")},"dropdown-options":{other:n("Cannot load options")},"order-authmodules":{other:n("Cannot order Auth Modules")},"set-license":{other:n("Cannot set license")},"remove-license":{other:n("Cannot remove license")},"add-ssh-public-key":{409:n("Each SSH public key must be unique in your Hub instance. The selected SSH public key is already associated with an account in Hub."),other:n("Cannot add SSH public key")},"remove-ssh-public-key":{other:n("Cannot remove SSH public key")},"merge-user-details":{other:n("Failed to merge")},"create-user-details":{other:n("Failed to create user details")},"widgets-delete":{400:n("Widget â€œ{{name}}â€ cannot be deleted!"),other:n("Cannot delete widget â€œ{{name}}â€")},"emailVerification-requireVerificationFailed-smtpDisabled":{other:n("You cannot enable the email verification as the SMTP settings are disabled, enable it first")},"emailVerification-enableSmtpFailed-requireVerificationEnabled":{other:n("You cannot disable the SMTP notification as the email verification is enabled in the system settings, disable it first")},"hub-module-cert-creation-denied-feature-disabled":{other:n("Cannot create a client certificate auth module as the client certificate authentication feature is disabled")},"hub-module-cert-enable-denied-feature-disabled":{other:n("Cannot enable the {{moduleName}} auth module as the client certificate authentication feature is disabled")},"hub-module-cert-creation-denied-already-exists":{other:n("Cannot create a new client certificate auth module as one already exists: {{existingName}}")},"hub-module-cert-update-trusted-issuers-required":{other:n("The Trusted Issuers field cannot be empty")},"verify-certificate-authmodule":{400:{"hub-client-cert-auth-disabled":n("Client certificate authentication is disabled"),"hub-client-cert-empty-header":n("Current https session doesn't contain a client certificate"),"hub-client-cert-ambiguous-header":n("Certificate header is expected to have a single value but contains multiple values"),"hub-client-cert-invalid":n("The value in the {{ headerName }} header is not recognized as a client certificate"),"hub-client-cert-not-https":n("The connection to Hub is not secure"),other:n("Configuration is wrong")},"validation-certificate-expired":function(t){var n=new Date(parseInt(t.notAfter));return e.getString("Certificate {{ presentation }} is not valid after ".concat(n.toGMTString(),"."),t)},"validation-certificate-not-yet-valid":function(t){var n=new Date(parseInt(t.notBefore));return e.getString("Certificate {{ presentation }} is not valid until ".concat(n.toGMTString(),"."),t)},"validation-certificate-issuer-not-trusted":n("The issuer of the {{ presentation }} certificate is not trusted or the certificate signature is not valid."),"validation-certificate-failed":n("Failed to validate {{ presentation }} certificate."),"validation-certificate-trusted-issuers-required":n("The certificate {{ presentation }} couldn't be validated because the trusted issuer wasn't found"),"validation-certificate-ca-not-allowed":n("The certificate {{ presentation }} isn't valid â€” you can't use CA or intermediate certificates for authentication")},"projectTeams-unable-to-merge":{other:n("Unable to merge {{ otherName }} into {{ thisName }}")},"projectTeams-unable-to-include-guest":{other:n("The guest account is not eligible for membership in project teams. If you want to grant anonymous access to project resources, use the settings on the Access tab.")},"projectTeams-unable-to-include-group-with-guest":{other:n("The {{ groupName }} group includes the guest account, which is not eligible for membership in project teams. If you want to grant anonymous access to project resources, use the settings on the Access tab.")},"widget-metadata-empty-field":{other:n("The {{ field }} field in the {{ file }} is empty")},"widget-file-not-found":{other:n("The archive package does not contain the required {{ file }} file")},"widget-manifest-not-at-root":{other:n("The manifest.json file that was found in the {{ directory }} folder must be stored in the top-most directory of the archive package")},"widget-file-size-exceeded":{other:n("The {{ fileName }} file in the widget archive is too large. The maximum file size is {{ maxSize }} Mb")},"widget-archive-size-exceeded":{other:n("The widget archive is too large. The maximum archive size is {{ maxSize }} Mb")},"widget-archive-too-many-entries":{other:n("The widget archive contains too many files. The maximum number of files is {{ maxNumber }}")},"widget-archive-malformed":{other:n("The archive package is formatted incorrectly")},"widget-key-does-not-match":{other:n("The key does not match the key from the previous version")},"widget-metadata-malformed":{other:n("The manifest.json file is formatted incorrectly")},"widget-download-failed":{other:n("Widget download failed")},"widget-metadata-capabilities-wrong-format":{other:n("The capabilities attribute in the manifest.json file is formatted incorrectly")},"widget-repository-failure":{other:n("Failed to retrieve widget list from repository")},"widget-repository-error":{other:n("Cannot retrieve widgets from repository. {{ reason }}")},"cannot-parse-certificate-format-not-supported":n("Cannot parse provided certificate. Its format is not supported"),notification_smtp_invalid_address:n("Email address is not found on the receiving server"),"no-update-project-permission-is-given":n("You have no permission to {{action}} in project {{project}}"),"no-update-organization-permission-is-given":n("You have no permission to {{action}} in organization {{organization}}"),"hub-throttling-rate-exceeded":n("You or somebody else entered the wrong password for {{username}} too many times in a row. To try another password, please wait {{delay}} minutes."),"hub-throttling-rate-exceeded-captcha":n("You or somebody else entered the wrong password for {{username}} too many times in a row. To try another password, prove you're not a robot."),"hub-throttling-black-listed-ip":n('Login from your IP address "{{ ip }}" requires verification that you are not a robot.'),"hub-throttling-map-size-decrease-failed":function(t){return e.getPlural(t.currentSize,"The application is currently tracking failed requests from one login. To set the maximum below, wait until the next cooldown.","The application is currently tracking failed requests from {{ currentSize }} logins. To set the maximum below, wait until the next cooldown.",t)},"auth-recaptcha-key-missing":function(e){return i.createElement("span",{dangerouslySetInnerHTML:{__html:n('The connection to the reCAPTCHA service is not configured properly. Open the Common Settings page and check the value for the site key in the &lt;a class="ring-link" href="authmodules/settings"&gt;reCAPTCHA Settings&lt;/a&gt;')(e)}})},"auth-recaptcha-secret-missing":n("The connection to the reCAPTCHA service is not configured properly. Open the Common Settings page and check the value for the site key in the reCAPTCHA Settings")},{msg:function(e,r,o,i){if(e instanceof Error)return a(e);for(var s=function(e,t){var n=e||t&amp;&amp;t.data&amp;&amp;t.data.error_params;if(Array.isArray(n)){var r={};n.forEach((function(e){r[e.name]=e.value})),n=r}return n}(o,e),c=r,l=e.status,g=e&amp;&amp;e.data&amp;&amp;e.data.error,u=e&amp;&amp;e.data&amp;&amp;e.data.error_description||n("Failed"),d=null,p=function(e){var n=e||t;return[function(e,t,r){return e&amp;&amp;r&amp;&amp;n[e]&amp;&amp;n[e][t]&amp;&amp;n[e][t][r]},function(e,t,r){return e&amp;&amp;r&amp;&amp;n[e]&amp;&amp;n[e][r]},function(e,t,r){return r&amp;&amp;n[r]&amp;&amp;n[r][t]&amp;&amp;n[r][t].other},function(e,t,r){return r&amp;&amp;n[r]&amp;&amp;n[r][t]},function(e,t,r){return r&amp;&amp;n[r]&amp;&amp;n[r].other},function(e,t,r){return r&amp;&amp;n[r]},function(e,t){return e&amp;&amp;n[e]&amp;&amp;n[e][t]&amp;&amp;n[e][t].other},function(e,t){return e&amp;&amp;n[e]&amp;&amp;n[e][t]},function(e){return e&amp;&amp;n[e]&amp;&amp;n[e].other},function(e){return e&amp;&amp;n[e]},function(e,t,r){return r&amp;&amp;n.default[t]&amp;&amp;n.default[t][r]},function(e,t){return n.default[t]&amp;&amp;n.default[t].other},function(e,t){return n.default[t]},function(e,t,r){return n[r]},function(){return n.default.other}]}(i),A=0;A&lt;p.length;A++){var C=(0,p[A])(c,l,g);if(angular.isFunction(C)&amp;&amp;C(s)){d=C(s);break}}return d||u},getMessage:function(e){var n=function(e){return angular.extend({},(n=o(),Object.keys(n).reduce((function(t,r){var o=n[r],i="object"===pd(o)?o[e]:o;return i&amp;&amp;(t[r]=i),t}),{})),t[e]);var n}(e);return function(e,t){var r=e&amp;&amp;e.status||"other";return n[r]?n[r](t):a(e)}}}}]),fd.factory("HubPermissionMessages",["$rootScope","i18n",function(e,t){var n={};function r(){n={"jetbrains.jetpass.organization-create":{name:t("Create Organization",null,"Permission name"),description:t("Create new organizations.")},"jetbrains.jetpass.organization-update":{name:t("Update Organization",null,"Permission name"),description:t("Edit organization attributes, manage project assignments and access rights.")},"jetbrains.jetpass.organization-read":{name:t("Read Organization",null,"Permission name"),description:t("View organizations and their attributes.")},"jetbrains.jetpass.organization-delete":{name:t("Delete Organization",null,"Permission name"),description:t("Permanently remove organization records from the system.")},"jetbrains.jetpass.project-create":{name:t("Create Project",null,"Permission name"),description:t("Create new projects.")},"jetbrains.jetpass.project-read-basic":{name:t("Read Project Basic",null,"Permission name"),description:t("View basic project properties and content. With Read User Basic, view the members of the project team. With shared services or Read Service, view the list of resources for a project.")},"jetbrains.jetpass.project-read":{name:t("Read Project Full",null,"Permission name"),description:t("View all project properties and content. With Read Role, view roles that are granted to the project team and the roles that are assigned to other users and groups in the project. With shared services or Read Service, view the list of resources for a project.")},"jetbrains.jetpass.project-update":{name:t("Update Project",null,"Permission name"),description:t("Edit project properties and content, manage resources and access.")},"jetbrains.jetpass.project-delete":{name:t("Delete Project",null,"Permission name"),description:t("Delete projects.")},"jetbrains.jetpass.role-read":{name:t("Read Role",null,"Permission name"),description:t("View the list of roles and the set of permissions that are assigned to each role. With Read Project Full, view roles that are granted to the project team and the roles that are assigned to other users and groups in the project. With Read Service, view service-specific permissions.")},"jetbrains.jetpass.role-manage":{name:t("Manage Role",null,"Permission name"),description:t("Create new roles. Delete roles. Edit role properties. Modify the set of permissions that are assigned to a role.")},"jetbrains.jetpass.user-create":{name:t("Create User",null,"Permission name"),description:t("Create new user accounts. Invite users to register their own accounts.")},"jetbrains.jetpass.user-read-basic":{name:t("Read User Basic",null,"Permission name"),description:t("View the list of registered users and read the ID, login, name, and avatar for each user. With Update Group, manage group memberships.")},"jetbrains.jetpass.user-read":{name:t("Read User Full",null,"Permission name"),description:t("View all properties for all registered users, including authorization details.")},"jetbrains.jetpass.user-update":{name:t("Update User",null,"Permission name"),description:t("Edit user profile data. Ban, merge, and anonymize user accounts.")},"jetbrains.jetpass.user-delete":{name:t("Delete User",null,"Permission name"),description:t("Delete user accounts.")},"jetbrains.jetpass.profile-updateSelf":{name:t("Update Self",null,"Permission name"),description:t("Edit own profile data.")},"jetbrains.jetpass.group-create":{name:t("Create Group",null,"Permission name"),description:t("Create new groups.")},"jetbrains.jetpass.group-read":{name:t("Read Group",null,"Permission name"),description:t("View the list of groups and read group properties. With permission to read both parent and child groups, view subgroups. With Read User Basic, view the list of members.")},"jetbrains.jetpass.group-update":{name:t("Update Group",null,"Permission name"),description:t("Edit group properties. With permission to update both parent and child groups, manage subgroups. With Read User Basic, update group memberships.")},"jetbrains.jetpass.group-delete":{name:t("Delete Group",null,"Permission name"),description:t("Delete groups.")},"jetbrains.jetpass.low-level":{name:t("Low-level Admin Write",null,"Permission name"),description:t("Manage low-level administrative actions. Includes permission to integrate with third-party services and back up the database. Requires low-level read administration.")},"jetbrains.jetpass.low-level-read":{name:t("Low-level Admin Read",null,"Permission name"),description:t("Read-only access to low-level administrative settings. Includes permission to view integrations with third-party services and metrics.")}}}return r(),e.$on("gettextLanguageChanged",r),{msg:function(e){return n[e]}}}]),fd.factory("HubEntities",["$rootScope","i18n",function(e,t){var n={};function r(){n={Organization:t("Organization"),Project:t("Project"),Role:t("Role"),ProjectRole:t("Project Role"),User:t("User"),UserGroup:t("Group"),Service:t("Service"),AuthProvider:t("Authentication Module")}}return r(),e.$on("gettextLanguageChanged",r),{msg:function(e){return n[e]||e}}}]),fd.factory("HubOperations",["$rootScope","i18n",function(e,t){var n={};function r(){n={ADMIN:t("Admin",null,"Hub Operations"),CREATE:t("Create",null,"Hub Operations"),READ:t("Read",null,"Hub Operations"),UPDATE:t("Update",null,"Hub Operations"),DELETE:t("Delete",null,"Hub Operations"),"READ OWN":t("Read Own",null,"Hub Operations"),"READ BASIC":t("Read Basic",null,"Hub Operations"),"UPDATE OWN":t("Update Own",null,"Hub Operations"),"DELETE OWN":t("Delete Own",null,"Hub Operations"),EDIT:t("Edit",null,"Hub Operations"),PROJECT_ADMIN:t("Project Admin",null,"Hub Operations"),DELETE_NOT_OWN:t("Delete Not Own",null,"Hub Operations"),LINK:t("Link",null,"Hub Operations"),PRIVATE_READ:t("Private Read",null,"Hub Operations"),PRIVATE_UPDATE:t("Private Update",null,"Hub Operations"),READ_NOT_OWN:t("Read Not Own",null,"Hub Operations"),SHARE:t("Share",null,"Hub Operations"),UPDATE_NOT_OWN:t("Update Not Own",null,"Hub Operations"),UPDATE_WATCHES:t("Update Watchers",null,"Hub Operations"),VIEW_VOTERS:t("View Voters",null,"Hub Operations"),VIEW_WATCHERS:t("View Watchers",null,"Hub Operations")}}return r(),e.$on("gettextLanguageChanged",r),{msg:function(e){return n[e]||e}}}]),fd.value("hubPluralMessageWrapper",(function(e,t,n){return function(r){var o=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:{};return 0===r&amp;&amp;n?n(o):1===r&amp;&amp;t?t(o):(o.count=r,e(r,o))}})),fd.factory("HubPluralMessageBundle",["gettextCatalog","hubPluralMessageWrapper",function(e,t){var n={};function r(e){for(var r=arguments.length,o=new Array(r&gt;1?r-1:0),i=1;i&lt;r;i++)o[i-1]=arguments[i];n[e]=t.apply(void 0,o)}return r("users-total",(function(t,n){return e.getPlural(t,"{{ count }} user","{{ count }} users",n)})),r("as-a-member-of-groups",(function(t,n){return e.getPlural(t,"assigned to {{count}} group","assigned to {{count}} groups",n)})),r("users-total-title",(function(t,n){return e.getPlural(t,"{{ count }} User","{{ count }} Users",n)})),r("projects-total-title",(function(t,n){return e.getPlural(t,"{{ count }} Project","{{ count }} Projects",n)})),r("authmodule-total-title",(function(t,n){return e.getPlural(t,"{{ count }} Auth Module","{{ count }} Auth Modules",n)})),r("groups-total-title",(function(t,n){return e.getPlural(t,"{{ count }} Group","{{ count }} Groups",n)})),r("teams-total-title",(function(t,n){return e.getPlural(t,"{{ count }} Team","{{ count }} Teams",n)})),r("groups-and-teams-total-title",(function(t,n){return e.getPlural(t,"{{ count }} Group and Team","{{ count }} Groups and Teams",n)})),r("roles-total-title",(function(t,n){return e.getPlural(t,"{{ count }} Role","{{ count }} Roles",n)})),r("services-total-title",(function(t,n){return e.getPlural(t,"{{ count }} Service","{{ count }} Services",n)})),r("stores-total-title",(function(t,n){return e.getPlural(t,"{{ count }} SSL Key","{{ count }} SSL Keys",n)})),r("imports-total-title",(function(t,n){return e.getPlural(t,"{{ count }} Database Import","{{ count }} Database Imports",n)})),r("migrations-total-title",(function(t,n){return e.getPlural(t,"{{ count }} Migration","{{ count }} Migrations",n)})),r("features-total-title",(function(t,n){return e.getPlural(t,"{{ count }} Experimental Feature","{{ count }} Experimental Features",n)})),r("certificates-total-title",(function(t,n){return e.getPlural(t,"{{ count }} Trusted SSL Certificate","{{ count }} Trusted SSL Certificates",n)})),r("events-total-title",(function(t,n){return e.getPlural(t,"{{ count }} Audit Event","{{ count }} Audit Events",n)})),r("custom-attributes-total-title",(function(t,n){return e.getPlural(t,"{{ count }} Custom Attribute","{{ count }} Custom Attributes",n)})),r("repositories-total-title",(function(t,n){return e.getPlural(t,"{{ count }} repository","{{ count }} repositories",n)})),r("permissions-total-title",(function(t,n){return e.getPlural(t,"{{ $count }} Permission","{{ $count }} Permissions",n)})),r("invite-success",(function(t,n){return e.getPlural(t,"Successfully invited {{ $count }} user","Successfully invited {{ $count }} users",n)}),(function(t){return e.getString("User with email â€œ{{ email }}â€ successfully invited",t)})),r("remove-resources?",(function(t,n){return e.getPlural(t,"Do you want to move {{ count }} resource to Global project?","Do you want to move {{ count }} resources to Global project?",n)}),(function(t){return e.getString("Do you want to move resource {{ name }} to Global project?",t)})),r("resources-removed-from-project",(function(t,n){return e.getPlural(t,"Moved {{ count }} resource to Global project","Moved {{ count }} resources to Global project",n)}),(function(t){return e.getString("Moved resource {{ name }} to Global project",t)})),r("resources-moved-to-project-success",(function(t,n){return e.getPlural(t,"{{ count }} resource successfully moved to {{ project }} project","{{ count }} resources successfully moved to {{ project }} project",n)}),(function(t){return e.getString("Resource {{ name }} successfully moved to {{ project }} project",t)})),r("resources-moved-to-project-error",(function(t,n){return e.getPlural(t,"Failed to move {{ count }} resource to {{ project }} project","Failed to move {{ count }} resources to {{ project }} project",n)}),(function(t){return e.getString("Failed to move resource {{ name }} to {{ project }} project",t)})),r("users-added-to-group",(function(t,n){return e.getPlural(t,"Added {{count}} user to group {{groupName}}","Added {{count}} users to group {{groupName}}",n)}),(function(t){return e.getString("Added {{userName}} to group {{groupName}}",t)})),r("users-removed-from-group",(function(t,n){return e.getPlural(t,"Removed {{count}} user from group {{groupName}}","Removed {{count}} users from group {{groupName}}",n)}),(function(t){return e.getString("Removed {{userName}} from group {{groupName}}",t)})),r("users-removed-from-members",(function(t,n){return e.getPlural(t,"Removed {{ count }} user from the group","Removed {{ count }} users from the group",n)}),(function(t){return e.getString("Removed â€œ{{ name }}â€ from the group",t)})),r("user-license-revoked",(function(t,n){return e.getPlural(t,"Revoked license from {{ count }} user","Revoked license from {{ count }} users",n)}),(function(t){return e.getString("Revoked license from â€œ{{ name }}â€",t)})),r("project-roles-removed",(function(t,n){return e.getPlural(t,"{{ count }} role was successfully removed","{{ count }} roles were successfully removed",n)}),(function(t){return e.getString("Role â€œ{{ role.name }}â€ was successfully removed",t)})),r("users-success-merge",(function(t,n){return e.getPlural(t,"Merged {{ count }} user","Merged {{ count }} users",n)})),r("users-success-delete",(function(t,n){return e.getPlural(t,"{{ count }} user account was successfully deleted","{{ count }} user accounts were successfully deleted",n)}),(function(t){return e.getString("User account â€œ{{ name }}â€ was successfully deleted",{name:t.name||t.fullName||t.login||t})})),r("delete-projects?",(function(t,n){return e.getPlural(t,"Delete {{ count }} project?","Delete {{ count }} projects?",n)}),(function(t){return e.getString("Delete project {{ name }}?",t)})),r("delete-organizations?",(function(t,n){return e.getPlural(t,"Delete organization?","Delete {{ count }} organizations?",n)})),r("projects-success-delete",(function(t,n){return e.getPlural(t,"{{ count }} project was successfully deleted","{{ count }} projects were successfully deleted",n)}),(function(t){return e.getString("Project â€œ{{ name }}â€ was successfully deleted",t)})),r("projects-success-merge",(function(t,n){return e.getPlural(t,"Merged {{ count }} project","Merged {{ count }} projects",n)})),r("organizations-total-title",(function(t,n){return e.getPlural(t,"{{ count }} Organization","{{ count }} Organizations",n)})),r("organizations-success-delete",(function(t,n){return e.getPlural(t,"{{ count }} organization deleted","{{ count }} organizations deleted",n)}),(function(t){return e.getString("Organization â€œ{{ name }}â€ deleted",t)})),r("organizations-success-projects-detach",(function(t,n){return e.getPlural(t,"{{ count }} project removed from organization","{{ count }} projects removed from organization",n)}),(function(t){return e.getString("Project â€œ{{ name }}â€ removed from organization",t)})),r("delete-authmodules?",(function(t,n){return e.getPlural(t,"Delete {{ count }} auth module?","Delete {{ count }} auth modules?",n)}),(function(t){return e.getString("Delete auth module {{ name }}?",t)})),r("authmodules-success-delete",(function(t,n){return e.getPlural(t,"{{ count }} auth module was successfully deleted","{{ count }} auth modules were successfully deleted",n)}),(function(t){return e.getString("Auth module â€œ{{ name }}â€ was successfully deleted",t)})),r("groups-success-merge",(function(t,n){return e.getPlural(t,"Merged {{ count }} group","Merged {{ count }} groups",n)})),r("groups-success-delete",(function(t,n){return e.getPlural(t,"{{ count }} user group was successfully deleted","{{ count }} user groups were successfully deleted",n)}),(function(t){return e.getString("User group â€œ{{ name }}â€ was successfully deleted",t)})),r("groups-fail-delete",(function(t,n){return e.getPlural(t,"{{ count }} user group wasn't deleted","{{ count }} user groups weren't deleted",n)}),(function(t){return e.getString("User group â€œ{{ name }}â€ wasn't deleted",t)})),r("delete-roles?",(function(t,n){return e.getPlural(t,"Delete {{ count }} role?","Delete {{ count }} roles?",n)}),(function(t){return e.getString("Delete role {{ name }}?",t)})),r("roles-success-delete",(function(t,n){return e.getPlural(t,"{{ count }} role was successfully deleted","{{ count }} roles were successfully deleted",n)}),(function(t){return e.getString("Role â€œ{{ name }}â€ was successfully deleted",t)})),r("projectroles-revoke?",(function(t,n){return e.getPlural(t,"Revoke {{ count }} Role","Revoke {{ count }} Roles",n)}),(function(t){return e.getString("Revoke Role",t)})),r("groups-revoke?",(function(t,n){return e.getPlural(t,"Remove user from {{ count }} group?","Remove user from {{ count }} groups?",n)}),(function(t){return e.getString("Remove user from â€œ{{ name }}â€ group?",t)})),r("team-revoke?",(function(t,n){return e.getPlural(t,"Remove user from {{ count }} team?","Remove user from {{ count }} teams?",n)}),(function(t){return e.getString("Remove user from â€œ{{ name }}â€ team?",t)})),r("team-revoke-project?",(function(t,n){return e.getPlural(t,"Remove {{ count }} member from team?","Remove {{ count }} members from team?",n)}),(function(t){return e.getString("Remove â€œ{{ name }}â€ from team?",t)})),r("projectroles-success-grant",(function(t,n){return e.getPlural(t,"{{ count }} role was successfully granted","{{ count }} roles were successfully granted",n)}),(function(t){return e.getString("Role â€œ{{ roleName }}â€ in project â€œ{{scopeName}}â€ was successfully granted to â€œ{{targetName}}â€",t)})),r("projectroles-fail-grant",(function(t,n){return e.getPlural(t,"{{ count }} role wasn't granted","{{ count }} roles weren't granted",n)}),(function(t){return e.getString("Role â€œ{{ roleName }}â€ in project â€œ{{scopeName}}â€ wasn't granted to â€œ{{targetName}}â€",t)})),r("organizationroles-success-grant",(function(t,n){return e.getPlural(t,"{{ count }} role was successfully granted","{{ count }} roles were successfully granted",n)}),(function(t){return e.getString("Role â€œ{{ roleName }}â€ in organization â€œ{{scopeName}}â€ was successfully granted to â€œ{{targetName}}â€",t)})),r("organizationroles-fail-grant",(function(t,n){return e.getPlural(t,"{{ count }} role wasn't granted","{{ count }} roles weren't granted",n)}),(function(t){return e.getString("Role â€œ{{ roleName }}â€ in organization â€œ{{scopeName}}â€ wasn't granted to â€œ{{targetName}}â€",t)})),r("scoperoles-success-grant",(function(t,n){return e.getPlural(t,"{{ count }} role was successfully granted","{{ count }} roles were successfully granted",n)}),(function(t){return e.getString("Role â€œ{{ roleName }}â€ in scope â€œ{{scopeName}}â€ was successfully granted to â€œ{{targetName}}â€",t)})),r("scoperoles-fail-grant",(function(t,n){return e.getPlural(t,"{{ count }} role wasn't granted","{{ count }} roles weren't granted",n)}),(function(t){return e.getString("Role â€œ{{ roleName }}â€ in scope â€œ{{scopeName}}â€ wasn't granted to â€œ{{targetName}}â€",t)})),r("projectroles-success-revoke",(function(t,n){return e.getPlural(t,"{{ count }} role was successfully revoked","{{ count }} roles were successfully revoked",n)}),(function(t){return e.getString("Role â€œ{{ role.name }}â€ in project â€œ{{ accessScope.name }}â€ was successfully revoked",t)})),r("projectroles-fail-revoke",(function(t,n){return e.getPlural(t,"{{ count }} role wasn't revoked","{{ count }} roles weren't revoked",n)}),(function(t){return e.getString("Role â€œ{{ role.name }}â€ in project â€œ{{ accessScope.name }}â€ wasn't revoked",t)})),r("organizationroles-success-revoke",(function(t,n){return e.getPlural(t,"{{ count }} role was successfully revoked","{{ count }} roles were successfully revoked",n)}),(function(t){return e.getString("Role â€œ{{ role.name }}â€ in organization â€œ{{ accessScope.name }}â€ was successfully revoked",t)})),r("organizationroles-fail-revoke",(function(t,n){return e.getPlural(t,"{{ count }} role wasn't revoked","{{ count }} roles weren't revoked",n)}),(function(t){return e.getString("Role â€œ{{ role.name }}â€ in organization â€œ{{ accessScope.name }}â€ wasn't revoked",t)})),r("scoperoles-success-revoke",(function(t,n){return e.getPlural(t,"{{ count }} role was successfully revoked","{{ count }} roles were successfully revoked",n)}),(function(t){return e.getString("Role â€œ{{ role.name }}â€ in scope â€œ{{ accessScope.name }}â€ was successfully revoked",t)})),r("scoperoles-fail-revoke",(function(t,n){return e.getPlural(t,"{{ count }} role wasn't revoked","{{ count }} roles weren't revoked",n)}),(function(t){return e.getString("Role â€œ{{ role.name }}â€ in scope â€œ{{ accessScope.name }}â€ wasn't revoked",t)})),r("roles-success-merge",(function(t,n){return e.getPlural(t,"Merged {{ count }} role","Merged {{ count }} roles",n)})),r("delete-services?",(function(t,n){return e.getPlural(t,"Remove {{ count }} service?","Remove {{ count }} services?",n)}),(function(t){return e.getString("Remove service {{ name }}?",t)})),r("services-success-delete",(function(t,n){return e.getPlural(t,"{{ count }} service was successfully deleted","{{ count }} services were successfully deleted",n)}),(function(t){return e.getString("Service â€œ{{ name }}â€ was successfully deleted",t)})),r("custom-attributes-success-delete",(function(t,n){return e.getPlural(t,"Custom attribute â€œ{{ name }}â€ deleted","{{ count }} custom attributes deleted",n)})),r("custom-attributes?",(function(t,n){return e.getPlural(t,"Delete custom attribute?","Delete {{ count }} custom attributes?",n)})),r("custom-attributes-description",(function(t,n){return e.getPlural(t,'This action deletes the "{{ name }}" attribute from Hub. Any values for this attribute that are currently stored in user accounts are deleted as well. This operation cannot be undone.',"This action deletes {{ count }} attributes from Hub. Any values for these attributes that are currently stored in user accounts are deleted as well. This operation cannot be undone.",n)})),r("delete-service-providers?",(function(t,n){return e.getPlural(t,"Delete {{ count }} service provider?","Delete {{ count }} service providers?",n)}),(function(t){return e.getString("Delete service provider {{ name }}?",t)})),r("service-providers-success-delete",(function(t,n){return e.getPlural(t,"{{ count }} service provider was successfully deleted","{{ count }} services providers were successfully deleted",n)}),(function(t){return e.getString("Service provider â€œ{{ name }}â€ was successfully deleted",t)})),r("delete-stores?",(function(t,n){return e.getPlural(t,"Delete {{ count }} keystore?","Delete {{ count }} keystores?",n)}),(function(t){return e.getString("Delete keystore {{ name }}?",t)})),r("stores-success-delete",(function(t,n){return e.getPlural(t,"{{ count }} SSL keystore was successfully deleted","{{ count }} SSL keystores were successfully deleted",n)}),(function(t){return e.getString("SSL keystore â€œ{{ name }}â€ deleted",t)})),r("delete-certificates?",(function(t,n){return e.getPlural(t,"Delete {{ count }} certificate?","Delete {{ count }} certificates?",n)}),(function(t){return e.getString("Delete certificate {{ name }}?",t)})),r("certificates-success-delete",(function(t,n){return e.getPlural(t,"{{ count }} certificate was successfully deleted","{{ count }} certificates were successfully deleted",n)}),(function(t){return e.getString("Certificate â€œ{{ name }}â€ was successfully deleted",t)})),r("approved-scopes",(function(t,n){return e.getPlural(t,"{{ count }} approved scope","{{ count }} approved scopes",n)})),r("refresh-tokens",(function(t,n){return e.getPlural(t,"{{ count }} refresh token","{{ count }} refresh tokens",n)})),r("permanent-tokens",(function(t,n){return e.getPlural(t,"{{ count }} permanent token","{{ count }} permanent tokens",n)})),r("application-passwords",(function(t,n){return e.getPlural(t,"{{ count }} application password","{{ count }} application passwords",n)})),r("merge-duplicate-users?",(function(t,n){return e.getPlural(t,"You are merging {{ count }} set of similar users. Proceed?","You are merging {{ count }} sets of similar users. Proceed?",n)}),(function(t){return e.getString("You are merging one set of similar users. Proceed?",t)})),r("access-reasons-description",(function(t,n){return e.getPlural(t,"For {{ count }} reason","For {{ count }} reasons",n)}),(function(t){return e.getString("{{ name }}",t)})),r("access-roles-num",(function(t,n){return e.getPlural(t,"{{ count }} role","{{ count }} roles",n)}),(function(t){return e.getString("{{ name }}",t)})),r("access-projects-num",(function(t,n){return e.getPlural(t,"{{ count }} project","{{ count }} projects",n)}),(function(t){return e.getString("{{ name }}",t)})),r("access-members-num",(function(t,n){return e.getPlural(t,"{{ count }} user and group","{{ count }} users and groups",n)}),(function(t){return e.getString("{{ name }}",t)})),r("grant-license",(function(t,n){return e.getPlural(t,"License granted to {{ count }} user","License granted to {{ count }} users",n)})),r("revoke-license",(function(t,n){return e.getPlural(t,"License revoked from {{ count }} user","License revoked from {{ count }} users",n)})),r("return-license",(function(t,n){return e.getPlural(t,"License returned to {{ count }} user","License returned to {{ count }} users",n)})),r("custom-widgets-total-title",(function(t,n){return e.getPlural(t,"{{ count }} Custom Widget","{{ count }} Custom Widgets",n)})),r("widgets-success-delete",(function(t,n){return e.getPlural(t,"{{ count }} widget deleted","{{ count }} widgets deleted",n)}),(function(t){return e.getString("Widget â€œ{{ manifest.name }}â€ deleted",t)})),r("widgets-success-install",(function(t,n){return e.getPlural(t,"{{ count }} widget installed","{{ count }} widgets installed",n)}),(function(t){return e.getString("Widget â€œ{{ manifest.name }}â€ installed",t)})),r("widgets-success-update",(function(t,n){return e.getPlural(t,"{{ count }} widget updated","{{ count }} widgets updated",n)}),(function(t){return e.getString("Widget â€œ{{ manifest.name }}â€ updated",t)})),r("delete-widgets?",(function(t,n){return e.getPlural(t,"Delete {{ count }} widget?","Delete {{ count }} widgets?",n)}),(function(t){return e.getString("Delete widget {{ name }}?",t)})),r("members-of-a-group",(function(t,n){return e.getPlural(t,"{{ userCount }} member of","{{ userCount }} members of",n)}),(function(t){return e.getString("{{ userCount }} member of",t)}),(function(t){return e.getString("No members of",t)})),r("team-members",(function(t,n){return e.getPlural(t,"{{ userCount }} team member","{{ userCount }} team members",n)}),(function(t){return e.getString("{{ userCount }} team members",t)}),(function(t){return e.getString("No team members",t)})),n}]),fd.factory("hubI18nPlural",["HubPluralMessageBundle",function(e){return{format:function(t,n,r){return e[t]?e[t](n,r):t}}}]);const md=fd.name;var hd=angular.module("HUB.i18n",["gettext",md]);hd.factory("i18n",["gettextCatalog",function(e){return e.getString.bind(e)}]),hd.factory("getHubTranslationsUrl",["backend","hubConfig",function(e,t){return function(r){try{return n(86480)("./locale_"+r+".po")}catch(n){return"".concat(e.getAPIUrl(),"/settings/translation?name=hub-core.json&amp;version=").concat(t.build.date)}}}]),hd.provider("i18nCatalog",(function(){var e=!1;this.relyOnExternalLoadingOfTranslations=function(){e=!0},this.$get=["$rootScope","gettextCatalog","hubConfig","$log","getHubTranslationsUrl",function(t,n,r,o,i){var a=r;return n.debug=a.debug,{setDebug:function(e){n.debug=e},setLanguage:function(r){var a=function(){return t.$emit("translationsReady")};if(r&amp;&amp;r.language&amp;&amp;!e){var s=i(r.language);if(s)return n.loadRemote(s).then((function(){n.setCurrentLanguage(r.language),a()}),(function(){o.warn("Failed to load translation by url: '".concat(s,"'")),a()}));o.warn("Translation for language: '".concat(r.language,"' is not supported.")),a()}return r}}}]}));const vd=hd.name;var bd=n(19591),yd=o().module("Ring.confirm",[Fn]);yd.service("confirm",["$q","RingMessageBundle",function(e,t){return function(n,r,o,i,a,s){return e.when((0,bd.ZP)({text:n,description:r,confirmLabel:o||t.confirmation_ok(),rejectLabel:i||t.confirmation_cancel(),cancelIsDefault:a,onBeforeConfirm:s}))}}]);const wd=yd.name;function _d(e){return _d="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},_d(e)}function jd(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function xd(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?jd(Object(n),!0).forEach((function(t){Ed(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):jd(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Ed(e,t,n){return t=function(e){var t=function(e,t){if("object"!==_d(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==_d(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===_d(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Sd=1e4,Td=angular.module("hub-components.hub-notify",[wd,md]);Td.service("hubNotify",["HubErrorMessageBundle","i18n","confirm",function(e,t,n){var r=this;this.getMessage=function(e){return e},this.errorMessage=function(t,n){return e.msg(t,n)},this.message=function(e,t){return s.Z.message(r.getMessage(e),t||Sd)},this.success=function(e,t){return s.Z.successMessage(r.getMessage(e),t||Sd)},this.loading=function(e,t){return s.Z.loadingMessage(r.getMessage(e),t||0)},this.warn=function(e,t){s.Z.warning(r.getMessage(e),t||Sd)},this.warning=this.warn,this.error=function(e,t){s.Z.warning(r.getMessage(e),t||Sd)},this.confirm=function(e){var r={description:"",okButtonLabel:t("OK"),cancelButtonLabel:t("Cancel"),actionPromise:null};return"string"==typeof e?r.label=e:r=xd(xd({},r),e),n(r.label,r.description,r.okButtonLabel,r.cancelButtonLabel,!1,r.actionPromise)},this.successHandler=function(e){return function(){r.success(e)}},this.errorHandler=function(e){return function(t){t.ignore||r.error(r.errorMessage(t,e))}},this.errorMapper=function(e){return function(t){var n=t.data,r=n&amp;&amp;n.error||"default",o=n.error_params||[],i=e[r]||n&amp;&amp;n.error_description||"";return o.forEach((function(e){var t=e.name,n=e.value;i=i.replace("{{".concat(t,"}}"),n)})),i}}}]);const Md=Td.name,Ld=angular.module("HUB.hubNotify",[vd,Md]).name;function kd(e,t,n){return t=Od(t),function(e,t){if(t&amp;&amp;("object"===Rd(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],Od(e).constructor):t.apply(e,n))}function Od(e){return Od=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Od(e)}function Pd(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;Nd(e,t)}function Nd(e,t){return Nd=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Nd(e,t)}function Dd(e,t,n){return(t=Zd(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Rd(e){return Rd="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Rd(e)}function Ud(){Ud=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==Rd(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function zd(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function $d(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){zd(i,r,o,a,s,"next",e)}function s(e){zd(i,r,o,a,s,"throw",e)}a(void 0)}))}}function Gd(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Bd(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,Zd(r.key),r)}}function Fd(e,t,n){return t&amp;&amp;Bd(e.prototype,t),n&amp;&amp;Bd(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function Zd(e){var t=function(e,t){if("object"!==Rd(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Rd(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Rd(t)?t:String(t)}var Yd=function(){return Fd((function e(t,n,r){Gd(this,e),this.Resource=t,this.config=n,this.$inject=r,this.config.errorMessageId||(this.config.errorMessageId="create-resource"),this.action=this.action.bind(this),this.do=this.do.bind(this)}),[{key:"do",value:(n=$d(Ud().mark((function e(){return Ud().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.config.dialogTemplate){e.next=11;break}return e.prev=1,this.config.onDialogShow&amp;&amp;this.config.onDialogShow(),e.next=5,this.showDialog();case 5:e.next=9;break;case 7:e.prev=7,e.t0=e.catch(1);case 9:e.next=19;break;case 11:return e.prev=11,e.next=14,this.create();case 14:e.next=19;break;case 16:e.prev=16,e.t1=e.catch(11),this.$inject.hubNotify.errorHandler(this.config.errorMessageId)(e.t1);case 19:case"end":return e.stop()}}),e,this,[[1,7],[11,16]])}))),function(){return n.apply(this,arguments)})},{key:"showDialog",value:function(){var e=this.$inject,t=e.dialog,n=e.i18n,r=this.config,o=r.dialogData,i=r.item,a=r.dialogTemplate,s=r.dialogButtonLabel,c=Object.assign({item:i},o);return t.show({template:a,data:c,buttons:[{label:s,default:!0,close:!1,action:this.action},{label:n("Cancel")}]})}},{key:"action",value:(t=$d(Ud().mark((function e(){var t,n,r,o,i,a,s,c,l=arguments;return Ud().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=l.length&gt;0&amp;&amp;void 0!==l[0]?l[0]:{},n=l.length&gt;2?l[2]:void 0,r=l.length&gt;3?l[3]:void 0,o=this.$inject,i=o.dialog,a=o.HubErrorMessageBundle,e.prev=5,e.next=8,this.create(t.item);case 8:i.done(),e.next=15;break;case 11:e.prev=11,e.t0=e.catch(5),s=!1;try{s=409===e.t0.data.error_code,c=r[e.t0.data.error_field]}catch(e){}finally{s&amp;&amp;c?this.highlightNotUnique(c):n(a.msg(e.t0,this.config.errorMessageId))}case 15:case"end":return e.stop()}}),e,this,[[5,11]])}))),function(){return t.apply(this,arguments)})},{key:"create",value:(e=$d(Ud().mark((function e(){var t,n,r,o,i,a,s,c,l,g=arguments;return Ud().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=g.length&gt;0&amp;&amp;void 0!==g[0]?g[0]:this.config.item,n=this.$inject,r=n.$location,o=n.$rootScope,i=this.config,a=i.redirectUrl,s=i.dialogQuery,c=i.onCreate,l=new this.Resource(t),e.next=5,l.$save(s);case 5:c&amp;&amp;c(l),a&amp;&amp;r.path(a.replace(":id",l.id)),o.$evalAsync();case 8:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})},{key:"highlightNotUnique",value:function(e){e.$setDirty(!0),e.$setValidity("unique",!1);var t=[];(t=e.$viewChangeListeners).push((function n(){e.$setValidity("unique",!0);var r=t.indexOf(n);t.splice(r,1)}))}}]);var e,t,n}(),Wd=function(e){function t(){return Gd(this,t),kd(this,t,arguments)}return Pd(t,e),Fd(t,[{key:"create",value:(n=$d(Ud().mark((function e(t,n){var r;return Ud().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=new Yd(t,n,this.$inject),e.next=3,r.do();case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})}]);var n}(p);Dd(Wd,"$inject",["$rootScope","$location","HubErrorMessageBundle","dialog","hubNotify","i18n"]);var Hd=function(e){function t(){return Gd(this,t),kd(this,t,arguments)}return Pd(t,e),Fd(t,[{key:"$onInit",value:function(){var e=this.$inject.$element,t=e.controller("hubResource");if(this.rgPromisedClickCtrl=e.controller("rgPromisedClick"),!t)throw new Error("Couldn't find a hubResource directive's controller");this.Resource=t.resource,this.onClick=this.onClick.bind(this)}},{key:"$postLink",value:function(){var e=this.$inject,t=e.$attrs,n=e.$scope,r=e.$element,o=t.hubResourceCreate,i=t.redirectUrl,a=t.createDialogData,s=t.createDialogQuery,c=t.createDialogTemplate,l=t.createDialogButtonLabel,g=t.createDialogErrorId,u=t.onResourceCreation;this.config={item:Object.assign({},n.$eval(o)),redirectUrl:i,dialogData:n.$eval(a),dialogQuery:Object.assign({fields:"id"},n.$eval(s)),dialogTemplate:n.$eval(c),dialogButtonLabel:l,errorMessageId:g,onCreate:function(e){u&amp;&amp;n.$eval(u,{resource:e})}},this.rgPromisedClickCtrl?this.rgPromisedClickCtrl.onClick(this.onClick):r[0].addEventListener("click",this.onClick)}},{key:"onClick",value:(n=$d(Ud().mark((function e(){return Ud().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.$inject.hubResourceCreate.create(this.Resource,this.config);case 2:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})}]);var n}(p);Dd(Hd,"$inject",["$scope","$element","$attrs","hubResourceCreate"]);var qd=angular.module("HUB.directives.hub-resource.create",[Qe,vd,md,Ld]);qd.service("hubResourceCreate",Wd),qd.directive("hubResourceCreate",(function(){return{require:["^hubResource","?rgPromisedClick"],controller:Hd}}));const Qd=qd.name;function Vd(){for(var e=arguments.length,t=new Array(e),n=0;n&lt;e;n++)t[n]=arguments[n];return t.filter((function(e){return e})).map((function(e){return e.trim()})).filter((function(e){return e})).join(" and ")}function Kd(e){return Kd="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Kd(e)}function Jd(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function Xd(){return Xd="undefined"!=typeof Reflect&amp;&amp;Reflect.get?Reflect.get.bind():function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&amp;&amp;null!==(e=ap(e)););return e}(e,t);if(r){var o=Object.getOwnPropertyDescriptor(r,t);return o.get?o.get.call(arguments.length&lt;3?e:n):o.value}},Xd.apply(this,arguments)}function ep(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function tp(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ep(Object(n),!0).forEach((function(t){lp(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ep(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function np(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function rp(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,gp(r.key),r)}}function op(e,t,n){return t&amp;&amp;rp(e.prototype,t),n&amp;&amp;rp(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function ip(e,t,n){return t=ap(t),function(e,t){if(t&amp;&amp;("object"===Kd(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],ap(e).constructor):t.apply(e,n))}function ap(e){return ap=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},ap(e)}function sp(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;cp(e,t)}function cp(e,t){return cp=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},cp(e,t)}function lp(e,t,n){return(t=gp(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function gp(e){var t=function(e,t){if("object"!==Kd(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Kd(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Kd(t)?t:String(t)}n(74819),n(73210);var up=function(e){function t(){var e;np(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return lp(e=ip(this,t,[].concat(r)),"onSuccess",(function(t){t.items=t[e.itemsField],e.data=t,e.openItemPageIfItIsSingleton(t),e.onDataLoad({Data:t})})),lp(e,"onError",(function(t){var n=e.$inject.HubErrorMessageBundle;e.data={total:0,error:n.msg(t,"query")}})),lp(e,"search",(function(){e.hubResource.showLoader();var t=e.request(e.getParams(),e.onSuccess,e.onError);return t.$promise.finally(e.hubResource.hideLoader),t})),e}return sp(t,e),op(t,[{key:"$postLink",value:function(){var e=this,t=this.$inject.$scope;void 0===this.data?this.data={items:[]}:void 0===this.data.items&amp;&amp;(this.data.items=[]),this.hubResource.search=this.search,this.request=this.hubResource.resource.query,t.$on("$routeUpdate",this.search),t.$applyAsync((function(){e.search()}))}},{key:"openItemPageIfItIsSingleton",value:function(e){var t=e.items;e.queriedSingleton&amp;&amp;this.hubResource.openItemPage&amp;&amp;t&amp;&amp;this.hubResource.openItemPage(t[0],!0)}},{key:"getQuery",value:function(){return Vd(arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:"",this.extraQuery)}},{key:"getOrderBy",value:function(e){return e?{orderBy:e}:{}}},{key:"getParams",value:function(){var e=this.$inject.$routeParams;return this.query=e.query||"",this.top=e.top||50,this.skip=e.page?(e.page-1)*this.top:0,tp(tp({fields:"".concat(this.fields,",total"),query:this.getQuery(this.query),$skip:this.skip,$top:this.top},this.getOrderBy(this.orderBy())),this.params())}}])}(p);lp(up,"$inject",["$scope","$routeParams","HubErrorMessageBundle"]),lp(up,"require",{hubResource:"^hubResource"}),lp(up,"bindings",{fields:"@",params:"&amp;",data:"=",query:"=?",extraQuery:"@?",itemsField:"@",childrenField:"@?",onDataLoad:"&amp;",orderBy:"&amp;",onItemLevelChange:"=",collapsedItems:"=?"});var dp=function(e){function t(){var e;np(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return lp(e=ip(this,t,[].concat(r)),"onSuccess",(function(t){e.rawData=t;var n=e.flattenSubtree(e.rawData),r=n.filter((function(e){return!e.implicit}));e.data={items:n,total:n.length,headerTotal:r.length},e.onDataLoad({Data:e.data})})),e}return sp(t,e),op(t,[{key:"$postLink",value:function(){var e=this;Xd(ap(t.prototype),"$postLink",this).call(this),this.request=this.hubResource.resource.forest,this.$inject.$scope.$watch((function(){return e.collapsedItems}),(function(){e.collapsedItems&amp;&amp;e.rawData&amp;&amp;(e.data.items=e.flattenSubtree(e.rawData))}))}},{key:"getParams",value:function(){return this.query=this.$inject.$routeParams.query||"",tp({fields:this.fields,query:this.getQuery(this.query)},this.params())}},{key:"flattenSubtree",value:function(e){var t=this,n=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:0,r=function(e){return function(e){if(Array.isArray(e))return Jd(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Jd(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Jd(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(e),o=[];return r.sort((function(e,t){return e.name.localeCompare(t.name)})),r.forEach((function(e){if(t.onItemLevelChange&amp;&amp;t.onItemLevelChange(e,n),o.push(e),!t.collapsedItems.includes(e)){var r=e[t.childrenField];r&amp;&amp;t.flattenSubtree(r,n+1).forEach((function(e){o.push(e)}))}})),o}}])}(up);lp(dp,"$inject",up.$inject);var pp=angular.module("HUB.directives.hub-resource.query-data",[]);pp.component("hubResourceQueryData",up),pp.component("hubResourceQueryForest",dp);const Ap=pp.name;var Cp=angular.module("HUB.directives.hub-resource.query-redirect",[]);Cp.directive("hubResourceQueryRedirect",["$location",function(e){return{restrict:"E",require:"^hubResource",scope:{query:"=query",href:"@href"},link:function(t,n,r,o){o.search=function(){e.path(t.href),e.search("query",t.query||null)}}}}]);const Ip=Cp.name;var fp=angular.module("HUB.directives.hub-resource.item-open",[]);fp.directive("hubResourceItemOpen",["$location","$parse",function(e,t){return{restrict:"A",require:"hubResource",link:function(n,r,o,i){i.openItemPage=function(n,r){var i;i=-1!==o.hubResourceItemOpen.indexOf(":id")?o.hubResourceItemOpen.replace(":id",n.id):t(o.hubResourceItemOpen,{item:n}),e.url(i),r&amp;&amp;e.replace()},n.$on("item:open",(function(e,t,n){o.hubResourceItemOpen&amp;&amp;i.openItemPage(t,n)}))}}}]);const mp=fp.name;var hp=angular.module("HUB.directives.hub-resource",[mn,Qd,Ap,Ip,mp,dd]);hp.directive("hubResource",(function(){return{restrict:"A",controller:["$scope","$injector","$attrs","loaderScreen",function(e,t,n,r){var o=this,i=e.$eval(n.hubResource)||n.hubResource;this.resource=t.get(i),this.addSelectionListener=function(t){e.$on("selection:changed",t)};var a={state:!1,on:function(){r.startLoading()},off:function(){r.stopLoading()}};this.showLoader=function(){a.on(),a.state=!0},this.hideLoader=function(){a.off(),a.state=!1},this.setLoader=function(e,t){a.state&amp;&amp;a.off(),a.on=e,a.off=t,a.state&amp;&amp;a.on()},this.search=angular.noop,this.refresh=function(){return o.search()}}]}}));const vp=hp.name;var bp=n(12080),yp=n.n(bp);n(95662);const wp=function(e,t){return function(n,r){var o=t||Object.keys(r.$attr),i=e;return o.forEach((function(e){if(void 0!==r[e]){var t=r.$attr[e],n=r[e],o="".concat("data-proxy-").concat(t).replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&amp;"),a="".concat(t,'="').concat(n,'"');i=i.replace(RegExp("".concat(o,'(="")*'),"g"),a)}})),i}};var _p=n(77791),jp=o().module("Ring.checkbox",[F]),xp=0;jp.directive("rgCheckbox",(function(){return{restrict:"E",transclude:!0,replace:!0,template:wp('\n&lt;label class="'.concat(_p.Z.checkbox,'"&gt;\n  &lt;input\n    data-proxy-ng-disabled\n    data-proxy-ng-model\n    data-proxy-ng-change\n    data-proxy-ng-true-value\n    data-proxy-ng-false-value\n    data-proxy-name\n    data-proxy-title\n    data-proxy-aria-label\n    data-test="ring-checkbox"\n    type="checkbox"\n    class="').concat(_p.Z.input,'"\n  /&gt;\n  &lt;span class="').concat(_p.Z.cell,'"&gt;\n    &lt;rg-icon class="').concat(_p.Z.check,'" glyph="{{:: checkmarkIcon}}" /&gt;\n  &lt;/span&gt;&lt;span class="').concat(_p.Z.label,'" ng-transclude&gt;&lt;/span&gt;\n&lt;/label&gt;\n    ')),link:function(e,t,n,r,o){e.checkmarkIcon=yp();var i=t[0].querySelector('input[type="checkbox"]'),a=t[0].querySelector('*[class~="'.concat(_p.Z.label,'"]')),s="rg-checkbox-"+xp++;t[0].setAttribute("for",s),i.setAttribute("id",s),o((function(e){e.length?a.style.display="initial":a.style.display="none"}))}}}));const Ep=jp.name;n(51532);var Sp=["reduce-permission-remove-permission-from-role","reduce-permission-revoke-assigned-role","reduce-permission-remove-user-from-group","reduce-permission-remove-subgroup-from-group","reduce-permission-remove-user-from-team","reduce-permission-remove-group-from-team"];const Tp=function(e){return(0,bd.ZP)({text:e("Significant Permission Loss"),description:i.createElement("div",null,i.createElement("span",{contentEditable:"true"}),i.createElement("div",null,e("When you confirm this action, you will not have enough permissions to\nrestore the access rights that are removed in this operation.")),i.createElement("div",{className:"permissions-loss__warning"},e("WARNING! This operation cannot be undone."))),confirmLabel:e("Confirm",null,"Form field label"),rejectLabel:e("Cancel")})};var Mp=n(52208);function Lp(e){var t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:24,n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:1;if(e&amp;&amp;0!==e.indexOf("data:")){var r=window.devicePixelRatio||1;return"".concat(e).concat(e.indexOf("?")&gt;=0?"&amp;":"?","s=").concat(t,"&amp;dpr=").concat(r,"&amp;v=").concat(n)}return e}var kp=angular.module("HUB.hub-frame",[]);kp.value("dprDependantSrc",Lp),kp.filter("dpr",(function(){return Lp})),kp.directive("hubFrame",(function(){return{scope:{imageSrc:"@",imageSize:"@?",frameClass:"@",imageClass:"@"},restrict:"E",replace:!0,template:n(9066),link:function(e,t){var n=t[0],r=n.querySelector("img"),o=e.imageSize||24;e.src=Lp(e.imageSrc,o),r.onload=function(){r.style.left="".concat((n.offsetWidth-r.offsetWidth)/2,"px"),r.style.top="".concat((n.offsetHeight-r.offsetHeight)/2,"px"),r.style.visibility="visible"}}}}));const Op=kp.name;function Pp(e){return Pp="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Pp(e)}function Np(e){return function(e){if(Array.isArray(e))return Up(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||Rp(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Dp(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||Rp(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Rp(e,t){if(e){if("string"==typeof e)return Up(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Up(e,t):void 0}}function Up(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function zp(){zp=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==Pp(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function $p(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function Gp(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){$p(i,r,o,a,s,"next",e)}function s(e){$p(i,r,o,a,s,"throw",e)}a(void 0)}))}}function Bp(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,Zp(r.key),r)}}function Fp(e,t,n){return(t=Zp(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Zp(e){var t=function(e,t){if("object"!==Pp(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Pp(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Pp(t)?t:String(t)}var Yp=function(){return e=function e(t,n,r){var o=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),Fp(this,"getRoles",function(){var e=Gp(zp().mark((function e(t){var n,r;return zp().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=4,o.http._get("roles",{query:{query:t,fields:"id,name",orderBy:"name"}});case 4:return n=e.sent,r=n.roles,e.abrupt("return",r);case 7:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),Fp(this,"getProjects",function(){var e=Gp(zp().mark((function e(t){var n,r;return zp().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=4,o.http._get("projects",{query:{query:t,fields:"id,key,name,iconUrl",orderBy:"name"}});case 4:return n=e.sent,r=n.projects,e.abrupt("return",r);case 7:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),Fp(this,"getOrganizations",function(){var e=Gp(zp().mark((function e(t){var n,r;return zp().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=4,o.http._get("organizations",{query:{query:t,fields:"id,name,key,iconUrl,projectsCount",orderBy:"name"}});case 4:return n=e.sent,r=n.organizations,e.abrupt("return",r);case 7:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),Fp(this,"getProjectsAndOrganizations",function(){var t=Gp(zp().mark((function t(n){var r,i,a,s,c,l,g,u=arguments;return zp().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=u.length&gt;1&amp;&amp;void 0!==u[1]&amp;&amp;u[1],t.next=3,Promise.all([o.getProjects(n),r?o.getOrganizations(n):[]]);case 3:return i=t.sent,a=Dp(i,2),s=a[0],c=a[1],l=s.map((function(t){return{key:t.id,label:t.name,description:t.key,icon:t.iconUrl||e.emptyIcon,id:t.id,project:t}})),g=c.map((function(t){var n=t.projectsCount,r=o.gettextCatalog.getPlural(n,"{{ count }} project","{{ count }} projects",{count:n});return{key:t.id,label:t.name,description:r,icon:t.iconUrl||e.emptyIcon,id:t.id,organization:t}})),t.abrupt("return",[].concat(Np(l.length?[e.makeTitleOption(o.i18n("Projects"))].concat(Np(l)):[]),Np(g.length?[e.makeTitleOption(o.i18n("Organizations"))].concat(Np(g)):[])));case 10:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),Fp(this,"getUsers",function(){var e=Gp(zp().mark((function e(t,n){var r,i,a,s=arguments;return zp().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=[t,s.length&gt;2&amp;&amp;void 0!==s[2]&amp;&amp;s[2]?"not(type:Reporter)":""].filter((function(e){return!!e})).map((function(e){return"(".concat(e,")")})).join(" and "),e.next=6,o.http._get("users",{query:{query:r,fields:"id,login,name,banned,banBadge,profile(email,avatar)",orderBy:"name",$top:n}});case 6:return i=e.sent,a=i.users,e.abrupt("return",a);case 9:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),Fp(this,"getGroups",function(){var e=Gp(zp().mark((function e(t){var n,r;return zp().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=4,o.http._get("usergroups",{query:{query:t,fields:"id,name,icon,userCount",orderBy:"name"}});case 4:return n=e.sent,r=n.usergroups,e.abrupt("return",r);case 7:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),Fp(this,"getUsersAndGroups",function(){var t=Gp(zp().mark((function t(n){var r,i,a,s,c,l=arguments;return zp().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=l.length&gt;1&amp;&amp;void 0!==l[1]&amp;&amp;l[1],t.next=3,Promise.all([o.getUsers(n,void 0,r),o.getGroups(n)]);case 3:return i=t.sent,a=i.shift(),s=i.shift(),a=a.map((function(t){var n=t.profile&amp;&amp;t.profile.email&amp;&amp;t.profile.email.email?t.profile.email.email:t.name,r=e.emptyIcon;return t.profile&amp;&amp;t.profile.avatar&amp;&amp;t.profile.avatar.url&amp;&amp;(r=Lp(t.profile.avatar.url,16)),{key:t.id,label:t.name,description:n,icon:r,id:t.id,user:t}})),s=s.map((function(t){var n=t.icon||e.emptyIcon,r=t.userCount,i=o.gettextCatalog.getPlural(r,"{{ count }} user","{{ count }} users",{count:r});return{key:t.id,label:t.name,description:i,icon:n,id:t.id,group:t}})),c=[],a.length&amp;&amp;(c.push({rgItemType:Mp.Z.ListProps.Type.TITLE,label:o.i18n("Users")}),c=c.concat(a)),s.length&amp;&amp;(c.push({rgItemType:Mp.Z.ListProps.Type.TITLE,label:o.i18n("Groups")}),c=c.concat(s)),t.abrupt("return",c);case 12:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),this.http=t,this.i18n=n,this.gettextCatalog=r},t=[{key:"getServices",value:(n=Gp(zp().mark((function e(){var t,n,r,o=arguments;return zp().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=o.length&gt;0&amp;&amp;void 0!==o[0]?o[0]:"",e.next=5,this.http._get("services",{query:{query:t,fields:"id,applicationName,name,icon",orderBy:"name"}});case 5:return n=e.sent,r=n.services,e.abrupt("return",r);case 8:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})}],t&amp;&amp;Bp(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t,n}();Fp(Yp,"emptyIcon","data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"),Fp(Yp,"makeTitleOption",(function(e){return{rgItemType:Mp.Z.ListProps.Type.TITLE,label:e}})),Fp(Yp,"makeDefaultUserQuery",(function(e){var t=(e||"").replace(/\\/,"\\\\").replace(/}/,"\\}");return"(nameStartsWith: {".concat(t,"} or loginStartsWith: {").concat(t,"})")}));var Wp=["type"],Hp=["type"],qp=["id"],Qp=["id"],Vp=["id","fields","query"],Kp=["id","fields","query"];function Jp(e){return Jp="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Jp(e)}function Xp(e){return function(e){if(Array.isArray(e))return eA(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return eA(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?eA(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function eA(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function tA(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function nA(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?tA(Object(n),!0).forEach((function(t){uA(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):tA(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function rA(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||Object.prototype.propertyIsEnumerable.call(e,n)&amp;&amp;(o[n]=e[n])}return o}function oA(){oA=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==Jp(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function iA(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function aA(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){iA(i,r,o,a,s,"next",e)}function s(e){iA(i,r,o,a,s,"throw",e)}a(void 0)}))}}function sA(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,dA(r.key),r)}}function cA(){return cA="undefined"!=typeof Reflect&amp;&amp;Reflect.get?Reflect.get.bind():function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&amp;&amp;null!==(e=lA(e)););return e}(e,t);if(r){var o=Object.getOwnPropertyDescriptor(r,t);return o.get?o.get.call(arguments.length&lt;3?e:n):o.value}},cA.apply(this,arguments)}function lA(e){return lA=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},lA(e)}function gA(e,t){return gA=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},gA(e,t)}function uA(e,t,n){return(t=dA(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function dA(e){var t=function(e,t){if("object"!==Jp(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Jp(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Jp(t)?t:String(t)}var pA="id,name,myFavorite,key,dashboard,url,description,iconUrl,total,archived,global,resources(id,key,type,name,homeUrl,service(id,name,iconUrl,version,applicationName,homeUrl,trusted)),owner(id,login,name,profile(avatar,email)),creationTime,team/users(id,login,profile/avatar),organization(id,name,key)",AA="id,name,key,description,creationTime,iconUrl,projects[1](id)",CA="id,key,name,description,permissions(id,key,name,service(id,key,name,applicationName),entityType),immutable",IA="total,id,name,login,profile(avatar,email(email,verified)),userType(id),teamOwnUser,teamGroups(id,name,description,iconUrl,autoJoin),organizationOwnUser,organizationGroups(id,name,description,iconUrl,autoJoin),banned",fA=100,mA=function(e){function t(e,n,r,o){var i,a,s,c;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),uA((a=this,c=[e],s=lA(s=t),i=function(e,t){if(t&amp;&amp;("object"===Jp(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(a,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(s,c||[],lA(a).constructor):s.apply(a,c))),"getRole",(function(e){var t=e.id,n=e.fields,r=void 0===n?CA:n;return i._get("roles/".concat(t),{query:{fields:r}})})),uA(i,"addUserToOrganization",(function(e){var t=e.id,n=e.data,r=e.fields,o=void 0===r?"id":r;return i._post("organizations/".concat(t,"/users"),{query:{fields:o},body:n})})),uA(i,"addGroupToOrganization",(function(e){var t=e.id,n=e.data,r=e.fields,o=void 0===r?"id":r;return i._post("organizations/".concat(t,"/groups"),{query:{fields:o},body:n})})),uA(i,"removeUserFromOrganization",function(){var e=aA(oA().mark((function e(t){var n,r;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.id,r=t.userId,e.next=3,i._delete("organizations/".concat(n,"/users/").concat(r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"removeGroupFromOrganization",function(){var e=aA(oA().mark((function e(t){var n,r,o;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.id,r=t.groupId,o=t.keepUsers,e.next=3,i._delete("organizations/".concat(n,"/groups/").concat(r),{query:{keepUsers:o}});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"createProject",function(){var e=aA(oA().mark((function e(t){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",i._post("projects",{query:{fields:pA},body:t}));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"createOrganization",function(){var e=aA(oA().mark((function e(t){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",i._post("organizations",{query:{fields:AA},body:t}));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"removeUserFromGroup",function(){var e=aA(oA().mark((function e(t){var n,r;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.userId,r=t.groupId,e.next=3,i._delete("users/".concat(n,"/groups/").concat(r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"getUserGroups",function(){var e=aA(oA().mark((function e(t,n){var r,o,a,s=arguments;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length&gt;2&amp;&amp;void 0!==s[2]?s[2]:"id,name,icon,userCount,project/id",o=function(e){return(e?"".concat(e," and "):"")+"not user:".concat(t," and not is:allUsers and not is:registeredUsers")},e.next=4,i._get("usergroups",{query:{fields:r,query:o(n)}});case 4:return a=e.sent,e.abrupt("return",a.usergroups);case 6:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),uA(i,"addUserToGroup",function(){var e=aA(oA().mark((function e(t){var n,r,o,a;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.groupId,r=t.userId,o=t.fields,a=void 0===o?"id":o,e.next=3,i._post("usergroups/".concat(n,"/users"),{query:{fields:a},body:{id:r}});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"getProjectRoles",(function(e){var t=e.id,n=e.fields,r=e.query,o=e.top,a=e.skip;return i._get("projects/".concat(t,"/team/projectroles"),{query:{fields:n,query:r,$top:o,$skip:a}})})),uA(i,"grantRoleToProject",(function(e){var t=e.id,n=e.data;return i._post("projects/".concat(t,"/team/projectroles"),{query:{fields:"id"},body:n})})),uA(i,"revokeRoleFromProject",(function(e){var t=e.id,n=e.roleId;return i._delete("projects/".concat(t,"/team/projectroles/").concat(n))})),uA(i,"revokeRoleFromUser",(function(e,t){var n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:"project";return i._delete("users/".concat(e,"/").concat(n,"roles/").concat(t))})),uA(i,"revokeRoleFromGroup",(function(e,t){var n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:"project";return i._delete("usergroups/".concat(e,"/").concat(n,"roles/").concat(t))})),uA(i,"addUserToTeam",(function(e){var t=e.id,n=e.data,r=e.fields,o=void 0===r?"id":r;return i._post("projects/".concat(t,"/team/ownUsers"),{query:{fields:o},body:n})})),uA(i,"addGroupToTeam",(function(e){var t=e.id,n=e.data,r=e.fields,o=void 0===r?"id":r;return i._post("projects/".concat(t,"/team/groups"),{query:{fields:o},body:n})})),uA(i,"removeUserFromTeam",(function(e){var t=e.id,n=e.userId;return i._delete("projects/".concat(t,"/team/ownUsers/").concat(n))})),uA(i,"removeGroupFromTeam",(function(e){var t=e.id,n=e.groupId,r=e.keepUsers;return i._delete("projects/".concat(t,"/team/groups/").concat(n),{query:{keepUsers:r}})})),uA(i,"grantRoleToUser",(function(e,t,n){var r=n.type,o=rA(n,Wp);return i._post("users/".concat(e,"/").concat(r,"roles"),{body:uA(uA({},r,o),"role",t)})})),uA(i,"grantRoleToGroup",(function(e,t,n){var r=n.type,o=rA(n,Hp);return i._post("usergroups/".concat(e,"/").concat(r,"roles"),{body:uA(uA({},r,o),"role",t)})})),uA(i,"getTransitiveAccessScopeRoles",function(){var e=aA(oA().mark((function e(t){var n,r,o,a,s,c,l,g,u,d,p=arguments;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.id,r=t.fields,o=void 0===r?"role(id,name)":r,a=t.top,s=void 0===a?-1:a,c=t.query,l=p.length&gt;1&amp;&amp;void 0!==p[1]?p[1]:"users",g=p.length&gt;2&amp;&amp;void 0!==p[2]?p[2]:"project",u={query:{fields:o,query:c,$top:s}},e.next=6,i._get("".concat(l,"/").concat(n,"/transitive").concat(g,"roles"),u);case 6:return d=e.sent,e.abrupt("return",d&amp;&amp;d["transitive".concat(g,"roles")]||[]);case 8:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"getUserTransitiveProjectRoles",(function(e){var t=e.id,n=e.fields,r=void 0===n?"role(id,name)":n,o=e.top,a=void 0===o?-1:o,s=e.query;return i.getTransitiveAccessScopeRoles({id:t,fields:r,top:a,query:s},"users","project")})),uA(i,"getGroupTransitiveProjectRoles",(function(e){var t=e.id,n=e.fields,r=void 0===n?"role(id,name)":n,o=e.top,a=void 0===o?-1:o,s=e.query;return i.getTransitiveAccessScopeRoles({id:t,fields:r,top:a,query:s},"usergroups","project")})),uA(i,"getUserTransitiveOrganizationRoles",(function(e){var t=e.id,n=e.fields,r=void 0===n?"role(id,name)":n,o=e.top,a=void 0===o?-1:o,s=e.query;return i.getTransitiveAccessScopeRoles({id:t,fields:r,top:a,query:s},"users","organization")})),uA(i,"getGroupTransitiveOrganizationRoles",(function(e){var t=e.id,n=e.fields,r=void 0===n?"role(id,name)":n,o=e.top,a=void 0===o?-1:o,s=e.query;return i.getTransitiveAccessScopeRoles({id:t,fields:r,top:a,query:s},"usergroups","organization")})),uA(i,"getUserAccess",(function(e,t,n){return i.getAccessOwnerAccess(e,"users",t,n)})),uA(i,"getGroupAccess",(function(e,t,n){return i.getAccessOwnerAccess(e,"usergroups",t,n)})),uA(i,"getAccessOwnerAccess",function(){var e=aA(oA().mark((function e(t){var n,r,o,a=arguments;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=a.length&gt;1&amp;&amp;void 0!==a[1]?a[1]:"users",r={query:{fields:a.length&gt;3&amp;&amp;void 0!==a[3]&amp;&amp;a[3],query:a.length&gt;2?a[2]:void 0,$top:-1}},e.next=6,Promise.all([i._get("".concat(n,"/").concat(t,"/sourcedprojectroles"),r),i._get("".concat(n,"/").concat(t,"/sourcedorganizationroles"),r)]);case 6:return o=e.sent,e.abrupt("return",(o[0].sourcedprojectroles||[]).concat(o[1].sourcedorganizationroles||[]));case 8:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"updateUserDetail",function(){var e=aA(oA().mark((function e(t){var n,r;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.id,r=rA(t,qp),e.next=3,i._post("userdetails/".concat(n),{body:r});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"removeUserDetail",function(){var e=aA(oA().mark((function e(t,n){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i._delete("users/".concat(t,"/userdetails/").concat(n),{});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),uA(i,"revokeUserCredentials",function(){var e=aA(oA().mark((function e(t){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i._post("userdetails/".concat(t,"/revoke"),{});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"updateUser",function(){var e=aA(oA().mark((function e(t){var n,r,o,a=arguments;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=a.length&gt;1&amp;&amp;void 0!==a[1]?a[1]:"id",r=t.id,o=rA(t,Qp),e.next=4,i._post("users/".concat(r),{body:o,fields:n});case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"updateUserPermanentToken",function(){var e=aA(oA().mark((function e(t,n){var r,o=arguments;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=o.length&gt;2&amp;&amp;void 0!==o[2]?o[2]:"token",e.next=3,i._post("users/".concat(t,"/permanenttokens/").concat(n.id||""),{body:n,query:{fields:r}});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),uA(i,"verifyUserEmail",function(){var e=aA(oA().mark((function e(t,n){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i._post("users/".concat(t,"/verifyContact"),{body:n,query:{fields:"id"}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),uA(i,"getDefaultUserAvatar",(function(e){return"".concat(i.hubApiUrl,"avatar/default?username=").concat(encodeURIComponent(e))})),uA(i,"getUserGravatar",(function(e){return"".concat(i.hubApiUrl,"avatar/email/").concat(encodeURIComponent(e))})),uA(i,"revokeUserAgreement",(function(){return i._delete("users/endUserAgreementConsent")})),uA(i,"downloadUserPersonalData",function(){var e=aA(oA().mark((function e(t){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i._get("users/".concat(t,"/data"),{headers:{Accept:"text/csv"},responseType:"blob"}).then((function(e){return e.data}));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"deleteUserPermanentToken",function(){var e=aA(oA().mark((function e(t,n){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i._delete("users/".concat(t,"/permanenttokens/").concat(n));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),uA(i,"loadUserPermanentTokens",function(){var e=aA(oA().mark((function e(t){var n,r,o=arguments;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=o.length&gt;1&amp;&amp;void 0!==o[1]?o[1]:"id,name,author(name),creationTime,lastAccessTime,scope(id,key,name,iconUrl)",e.next=3,i._get("users/".concat(t,"/permanenttokens"),{query:{fields:n,$top:-1}});case 3:return r=e.sent,e.abrupt("return",r.permanenttokens);case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"updateUserPassword",function(){var e=aA(oA().mark((function e(t,n){var r,o=arguments;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=o.length&gt;2&amp;&amp;void 0!==o[2]?o[2]:"password",e.next=3,i._post("users/".concat(t,"/applicationPasswords/").concat(n.id||""),{query:r,body:n});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),uA(i,"deleteUserPassword",function(){var e=aA(oA().mark((function e(t,n){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i._delete("users/".concat(t,"/applicationPasswords/").concat(n));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),uA(i,"loadUserPasswords",function(){var e=aA(oA().mark((function e(t){var n,r,o=arguments;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=o.length&gt;1&amp;&amp;void 0!==o[1]?o[1]:"id,name,creationTime,lastAccessTime,lastAccessAddress,lastAccessUserAgent",e.next=3,i._get("users/".concat(t,"/applicationPasswords"),{query:{fields:n,$top:-1}});case 3:return r=e.sent,e.abrupt("return",r.applicationPasswords);case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"loadUserRefreshTokens",function(){var e=aA(oA().mark((function e(t){var n,r,o=arguments;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=o.length&gt;1&amp;&amp;void 0!==o[1]?o[1]:"id,client(id,key,name,iconUrl),scope(id,key,name,iconUrl),lastAccessTime,creationTime,expires",e.next=3,i._get("users/".concat(t,"/refreshtokens"),{query:{fields:n,$top:-1}});case 3:return r=e.sent,e.abrupt("return",r.refreshtokens);case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"deleteUserRefreshTokens",function(){var e=aA(oA().mark((function e(t,n){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i._delete("users/".concat(t,"/refreshtokens/").concat(n),{});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),uA(i,"loadApprovedScopes",function(){var e=aA(oA().mark((function e(t){var n,r,o=arguments;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=o.length&gt;1&amp;&amp;void 0!==o[1]?o[1]:"id,client(id,key,name,iconUrl),scope(id,key,name,iconUrl),expiresOn",e.next=3,i._get("users/".concat(t,"/approvedscopes"),{query:{fields:n,$top:-1}});case 3:return r=e.sent,e.abrupt("return",r.approvedscopes);case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"deleteApprovedScopes",function(){var e=aA(oA().mark((function e(t,n){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i._delete("users/".concat(t,"/approvedscopes/").concat(n),{});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),uA(i,"regenerate2FASecrets",function(){var e=aA(oA().mark((function e(t){var n,r=arguments;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length&gt;1&amp;&amp;void 0!==r[1]?r[1]:"enabled,secretKey,qrCodeUri,scratchCodes",e.next=3,i._post("users/".concat(t,"/twoFactorAuthentication"),{query:{fields:n},body:{}});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"delete2FASecret",function(){var e=aA(oA().mark((function e(t){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i._delete("users/".concat(t,"/twoFactorAuthentication"),{});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"confirm2FASecret",function(){var e=aA(oA().mark((function e(t,n){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i._post("users/".concat(t,"/twoFactorAuthentication/confirm"),{body:{code:n}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),uA(i,"loadServices",function(){var e=aA(oA().mark((function e(t){var n,r,o,a,s;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.fields,r=void 0===n?"id":n,o=t.$top,a=void 0===o?-1:o,e.next=3,i._get("services",{query:{fields:r,$top:a}});case 3:return s=e.sent,e.abrupt("return",s.services);case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"registerWebauthn",function(){var e=aA(oA().mark((function e(t){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i._get("users/".concat(t,"/webauthn/registration"),{});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"removeWebauthn",function(){var e=aA(oA().mark((function e(t){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i._delete("users/".concat(t,"/webauthn/registration"),{});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"confirmWebauthn",function(){var e=aA(oA().mark((function e(t,n){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i._post("users/".concat(t,"/webauthn/registration"),{body:n});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),uA(i,"loadAuthModules",function(){var e=aA(oA().mark((function e(t){var n,r,o,a,s,c,l;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.query,r=void 0===n?"type:{Build-in Authorization}":n,o=t.fields,a=void 0===o?"id,disabled":o,s=t.$top,c=void 0===s?-1:s,e.next=3,i._get("authmodules",{query:{query:r,fields:a,$top:c}});case 3:return l=e.sent,e.abrupt("return",l.authmodules);case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),uA(i,"removeReporterWithRestrictedAccess",function(){var e=aA(oA().mark((function e(t,n){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i._delete("helpdesksettings/".concat(t,"/reporters/").concat(n));case 2:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),i.i18n=n,i.gettextCatalog=r,i.hubFeatures=o,i.selectOptions=new Yp(i,n,r),i}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;gA(e,t)}(t,e),n=t,r=[{key:"_request",value:(k=aA(oA().mark((function e(n,r){var o,i,a=arguments;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o=a.length&gt;2&amp;&amp;void 0!==a[2]?a[2]:{},i=!(a.length&gt;3&amp;&amp;void 0!==a[3])||a[3],e.prev=2,e.next=5,cA(lA(t.prototype),"_request",this).call(this,n,r,o,i);case 5:return e.abrupt("return",e.sent);case 8:if(e.prev=8,e.t0=e.catch(2),!i){e.next=14;break}return e.abrupt("return",this.checkForPermissionLoss(e.t0,n,r,o));case 14:throw e.t0;case 15:case"end":return e.stop()}}),e,this,[[2,8]])}))),function(e,t){return k.apply(this,arguments)})},{key:"checkForPermissionLoss",value:(L=aA(oA().mark((function e(t,n,r,o){var i=this;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(t.data&amp;&amp;Sp.indexOf(t.data.error)&gt;=0)){e.next=4;break}return e.abrupt("return",Tp(this.i18n).then((function(){return i._request(n,r,o,!1)}),(function(){throw t.ignore=!0,t})));case 4:throw t;case 5:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return L.apply(this,arguments)})},{key:"getTeamTotalMembers",value:(M=aA(oA().mark((function e(t){var n;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this._get("projects/".concat(t,"/teams/whole"),{query:{fields:"usersTotal"}});case 2:return n=e.sent,e.abrupt("return",n.usersTotal);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return M.apply(this,arguments)})},{key:"getTeam",value:(T=aA(oA().mark((function e(t){var n,r,o,i=arguments;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=i.length&gt;1&amp;&amp;void 0!==i[1]?i[1]:10,r=i.length&gt;2&amp;&amp;void 0!==i[2]?i[2]:0,e.next=4,this._get("projects/".concat(t,"/teams"),{query:{fields:"users/id,users/name,users/avatar/url,users/profile/email,role,usersTotal",$topUsers:n,$skipUsers:r,usersOrderBy:"name"}});case 4:return o=e.sent,e.abrupt("return",o.teams);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return T.apply(this,arguments)})},{key:"getTeamGroupedByRole",value:(S=aA(oA().mark((function e(){var t,n,r,o=arguments;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getTeam.apply(this,o);case 2:return t=e.sent,n=new Map,t.forEach((function(e){e.users.forEach((function(t){var r=n.get(t.id)||t;n.set(r.id,nA(nA({},r),{},{roles:[].concat(Xp(r.roles||[]),[e.role])}))}))})),r=new Map,Xp(n.values()).forEach((function(e){var t=e.roles.map((function(e){return e.key})).join(),n=r.get(t)||{users:[],roles:e.roles};r.set(t,nA(nA({},n),{},{users:[].concat(Xp(n.users),[e])}))})),e.abrupt("return",r);case 8:case"end":return e.stop()}}),e,this)}))),function(){return S.apply(this,arguments)})},{key:"getProjectTeam",value:(E=aA(oA().mark((function e(t){var n,r,o,i,a,s,c;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.id,r=t.fields,o=void 0===r?"users(id,login,profile/avatar)":r,i=t.top,a=void 0===i?10:i,s=t.skip,c=void 0===s?0:s,e.next=3,this._get("projects/".concat(n,"/team"),{query:{fields:o,$top:a,$skip:c,orderBy:"name"}});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return E.apply(this,arguments)})},{key:"getProjectTeamUsers",value:(x=aA(oA().mark((function e(t){var n,r,o,i,a,s,c;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.id,r=t.fields,o=void 0===r?IA:r,i=t.top,a=t.skip,s=void 0===a?0:a,c=t.query,e.next=3,this._get("projects/".concat(n,"/team/users"),{query:{fields:o,$top:i,$skip:s,orderBy:"name",query:c}});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return x.apply(this,arguments)})},{key:"getProjectTeamOwnUsers",value:(j=aA(oA().mark((function e(t){var n,r,o,i,a,s,c;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.id,r=t.fields,o=void 0===r?IA:r,i=t.top,a=t.skip,s=void 0===a?0:a,c=t.query,e.next=3,this._get("projects/".concat(n,"/team/ownUsers"),{query:{fields:o,$top:i,$skip:s,orderBy:"name",query:c}});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return j.apply(this,arguments)})},{key:"getProjectTeamGroups",value:(_=aA(oA().mark((function e(t){var n,r,o,i,a,s,c;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.id,r=t.fields,o=void 0===r?"id,name,userCount,allUsers":r,i=t.top,a=t.skip,s=void 0===a?0:a,c=t.query,e.next=3,this._get("projects/".concat(n,"/team/groups"),{query:{fields:o,$top:i,$skip:s,orderBy:"name",query:c}});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return _.apply(this,arguments)})},{key:"getUsers",value:(w=aA(oA().mark((function e(t){var n,r,o,i,a,s,c,l,g;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.query,r=t.fields,o=void 0===r?IA:r,i=t.top,a=void 0===i?10:i,s=t.skip,c=void 0===s?0:s,l=t.orderBy,g=void 0===l?"name":l,e.next=3,this._get("users",{query:{query:n,fields:o,$top:a,$skip:c,orderBy:g}});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return w.apply(this,arguments)})},{key:"getRoles",value:(y=aA(oA().mark((function e(t){var n,r,o,i,a,s,c,l,g,u;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.query,r=void 0===n?"":n,o=t.orderBy,i=void 0===o?"name":o,a=t.top,s=void 0===a?-1:a,c=t.skip,l=void 0===c?0:c,g=t.queryParams,u=void 0===g?{}:g,e.abrupt("return",this._get("roles",{query:nA({orderBy:i,query:r,$top:s,$skip:l,fields:CA},u)}));case 2:case"end":return e.stop()}}),e,this)}))),function(e){return y.apply(this,arguments)})},{key:"getProjects",value:(b=aA(oA().mark((function e(t){var n,r,o,i,a,s,c,l;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.query,r=void 0===n?"":n,o=t.top,i=void 0===o?fA:o,a=t.skip,s=void 0===a?0:a,c=t.queryParams,l=void 0===c?{}:c,e.abrupt("return",this._get("projects",{query:nA({orderBy:"name",query:r,$top:i,$skip:s,fields:pA},l)}));case 2:case"end":return e.stop()}}),e,this)}))),function(e){return b.apply(this,arguments)})},{key:"getOrderedProjects",value:(v=aA(oA().mark((function e(t){var n,r,o,i,a,s,c,l,g,u,d,p,A;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.query,r=void 0===n?"":n,o=t.top,i=void 0===o?fA:o,a=t.skip,s=void 0===a?0:a,c=t.queryParams,l=void 0===c?{}:c,g=r?"and (".concat(r,")"):r,e.next=4,this._get("projects",{query:nA({orderBy:"name",query:"is:favorite and not(is:archived) ".concat(g),$top:i,$skip:s,fields:pA},l)});case 4:if(u=e.sent,d=i-u.projects.length,p="not(is:favorite) and not(is:archived) ".concat(g),0!==d){e.next=13;break}return e.next=10,this._get("projects",{query:nA({query:p,$top:0,fields:"total"},l)});case 10:e.t0=e.sent,e.next=16;break;case 13:return e.next=15,this._get("projects",{query:nA({orderBy:"name",query:p,$top:d,$skip:s,fields:pA},l)});case 15:e.t0=e.sent;case 16:return A=e.t0,e.abrupt("return",{projects:[].concat(Xp(u.projects),Xp(A.projects)),total:u.total+A.total,top:i,skip:s});case 18:case"end":return e.stop()}}),e,this)}))),function(e){return v.apply(this,arguments)})},{key:"getOrganizations",value:(h=aA(oA().mark((function e(){var t,n,r=arguments;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=(r.length&gt;0&amp;&amp;void 0!==r[0]?r[0]:{}).queryParams,n=void 0===t?{}:t,e.abrupt("return",this._get("organizations",{query:nA({orderBy:"name",$top:1e3,$skip:0,fields:AA},n)}));case 2:case"end":return e.stop()}}),e,this)}))),function(){return h.apply(this,arguments)})},{key:"getOrganization",value:(m=aA(oA().mark((function e(t){var n,r,o,i,a;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.id,r=t.fields,o=void 0===r?AA:r,i=t.query,a=rA(t,Vp),e.abrupt("return",this._get("organizations/".concat(n),{query:nA({fields:o||AA,query:i},a)}));case 2:case"end":return e.stop()}}),e,this)}))),function(e){return m.apply(this,arguments)})},{key:"getOrganizationProjects",value:(f=aA(oA().mark((function e(){var t,n,r,o,i,a,s,c,l,g,u,d,p,A,C=arguments;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=(t=C.length&gt;0&amp;&amp;void 0!==C[0]?C[0]:{}).id,r=t.top,o=void 0===r?fA:r,i=t.skip,a=void 0===i?0:i,s=t.query,c=void 0===s?"":s,l=t.queryParams,g=void 0===l?{}:l,u=c?"and (".concat(c,")"):c,e.next=4,this._get("organizations/".concat(n,"/projects"),{query:nA({orderBy:"name",query:"is:favorite and not(is:archived) ".concat(u),$top:o,$skip:a,fields:pA},g)});case 4:if(d=e.sent,0!=(p=o-d.projects.length)){e.next=10;break}e.t0={projects:[]},e.next=13;break;case 10:return e.next=12,this._get("organizations/".concat(n,"/projects"),{query:nA({orderBy:"name",query:"not(is:favorite) and not(is:archived) ".concat(u),$top:p,$skip:a,fields:pA},g)});case 12:e.t0=e.sent;case 13:return A=e.t0,e.abrupt("return",{projects:[].concat(Xp(d.projects),Xp(A.projects)),total:d.total+A.total,top:o,skip:a});case 15:case"end":return e.stop()}}),e,this)}))),function(){return f.apply(this,arguments)})},{key:"getOrganizationUsers",value:(I=aA(oA().mark((function e(t){var n,r,o,i,a,s,c;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.id,r=t.fields,o=void 0===r?IA:r,i=t.top,a=t.skip,s=void 0===a?0:a,c=t.query,e.next=3,this._get("organizations/".concat(n,"/users"),{query:{fields:o,$top:i,$skip:s,orderBy:"name",query:c}});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return I.apply(this,arguments)})},{key:"getOrganizationOwnUsers",value:(C=aA(oA().mark((function e(t){var n,r,o,i,a,s,c;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.id,r=t.fields,o=void 0===r?IA:r,i=t.top,a=t.skip,s=void 0===a?0:a,c=t.query,e.next=3,this._get("organizations/".concat(n,"/ownUsers"),{query:{fields:o,$top:i,$skip:s,orderBy:"name",query:c}});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return C.apply(this,arguments)})},{key:"getOrganizationGroups",value:(A=aA(oA().mark((function e(t){var n,r,o,i,a,s,c;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.id,r=t.fields,o=void 0===r?"id,name,userCount":r,i=t.top,a=t.skip,s=void 0===a?0:a,c=t.query,e.next=3,this._get("organizations/".concat(n,"/groups"),{query:{fields:o,$top:i,$skip:s,orderBy:"name",query:c}});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return A.apply(this,arguments)})},{key:"getIndependentProjects",value:(p=aA(oA().mark((function e(t){var n,r,o,i,a,s,c,l,g;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.query,r=void 0===n?"":n,o=t.top,i=void 0===o?fA:o,a=t.skip,s=void 0===a?0:a,c=t.queryParams,l=void 0===c?{}:c,g=r?"and (".concat(r,")"):r,e.abrupt("return",this.getOrderedProjects({query:"not(has:organization) ".concat(g),top:i,skip:s,queryParams:l}));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return p.apply(this,arguments)})},{key:"getTemplateProjects",value:(d=aA(oA().mark((function e(){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",{projects:[],total:0});case 1:case"end":return e.stop()}}),e)}))),function(){return d.apply(this,arguments)})},{key:"getArchivedProjects",value:(u=aA(oA().mark((function e(t){var n,r,o,i,a,s,c,l,g;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.query,r=void 0===n?"":n,o=t.top,i=void 0===o?fA:o,a=t.skip,s=void 0===a?0:a,c=t.queryParams,l=void 0===c?{}:c,g=r?"and (".concat(r,")"):r,e.abrupt("return",this.getProjects({query:"is: archived ".concat(g),top:i,skip:s,queryParams:nA(nA({},l),{},{archived:!0})}));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return u.apply(this,arguments)})},{key:"getProject",value:(g=aA(oA().mark((function e(t){var n,r,o,i,a,s;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.id,r=t.fields,o=void 0===r?pA:r,i=t.query,a=void 0===i?"":i,s=rA(t,Kp),e.abrupt("return",this._get("projects/".concat(n),{query:nA({query:a,fields:o},s)}));case 2:case"end":return e.stop()}}),e,this)}))),function(e){return g.apply(this,arguments)})},{key:"getProjectByIdOrName",value:(l=aA(oA().mark((function e(t){var n;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getProjects({query:"id:{".concat(t,"} or name:{").concat(t,"}"),queryParams:{archived:!0}});case 2:return n=e.sent,e.abrupt("return",(n.projects||[])[0]);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return l.apply(this,arguments)})},{key:"updateProjectFavorite",value:(c=aA(oA().mark((function e(t,n){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!n){e.next=4;break}return e.abrupt("return",this._post("users/me/favoriteprojects",{body:{id:t}}));case 4:return e.abrupt("return",this._delete("users/me/favoriteprojects/".concat(t)));case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return c.apply(this,arguments)})},{key:"updateProjectDashboard",value:(s=aA(oA().mark((function e(t,n){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.updateProject({id:t,dashboard:n}));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return s.apply(this,arguments)})},{key:"updateProject",value:(a=aA(oA().mark((function e(t){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this._post("projects/".concat(t.id),{body:t}));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return a.apply(this,arguments)})},{key:"archiveProject",value:function(){var e=aA(oA().mark((function e(t){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.updateProject({id:t,archived:!0});case 2:case"end":return e.stop()}}),e,this)})));return function(t){return e.apply(this,arguments)}}()},{key:"deleteProject",value:function(){var e=aA(oA().mark((function e(t){return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this._delete("projects/".concat(t));case 2:case"end":return e.stop()}}),e,this)})));return function(t){return e.apply(this,arguments)}}()},{key:"getQueryAssistSuggestions",value:(i=aA(oA().mark((function e(t,n){var r,o;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=n.query,o=n.caret,e.abrupt("return",this._get("".concat(t,"/queryAssist"),{query:{query:r,caret:o}}));case 2:case"end":return e.stop()}}),e,this)}))),function(e,t){return i.apply(this,arguments)})},{key:"getServices",value:(o=aA(oA().mark((function e(){var t,n;return oA().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.auth.config.scope,n=t.map((function(e){return"applicationName: {".concat(e,"}")})).join(" or "),e.abrupt("return",this._get("services",{query:{fields:"id,name,homeUrl,applicationName,vendor,version,trusted",query:"is: trusted and (".concat(n,")")}}));case 3:case"end":return e.stop()}}),e,this)}))),function(){return o.apply(this,arguments)})}],r&amp;&amp;sA(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r,o,i,a,s,c,l,g,u,d,p,A,C,I,f,m,h,v,b,y,w,_,j,x,E,S,T,M,L,k}(So);function hA(e){return hA="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},hA(e)}function vA(){vA=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==hA(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function bA(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}var yA=angular.module("hub-components.change-password",[Ep]);yA.service("hubChangePassword",["$q","dialog","auth","HubErrorMessageBundle","i18n","rgInputClassFilter",function(e,t,r,o,i,a){var s=new mA(r.auth,i);return{showForUser:function(r,c,l){var g,u,d=arguments.length&gt;3&amp;&amp;void 0!==arguments[3]&amp;&amp;arguments[3],p=!1;return t.show({template:n(24388),data:{hideStrength:d,user:l,hint:i("User will be prompted to change the password upon the next login with these credentials"),requireOldPassword:c,displayPasswordChangeCheckbox:!0,forceChange:!c,getOldPasswordClasses:function(e){var t=a(e);return p&amp;&amp;(t["ring-input_error"]=!0),t}},buttons:[{label:i("Change password"),default:!0,close:!1,action:(g=vA().mark((function n(i){return vA().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.prev=0,n.next=3,s.updateUserDetail({id:r.id,type:r.type,password:{type:"PlainpasswordJSON",oldValue:i.oldPassword,value:i.password},passwordChangeRequired:i.forceChange});case 3:return r.passwordChangeRequired=i.forceChange,t.hide(),n.abrupt("return",!0);case 8:return n.prev=8,n.t0=n.catch(0),n.t0.data&amp;&amp;403===n.t0.data.error_code&amp;&amp;(p=!0),n.abrupt("return",e.reject(o.msg(n.t0,"change-password")));case 12:case"end":return n.stop()}}),n,null,[[0,8]])})),u=function(){var e=this,t=arguments;return new Promise((function(n,r){var o=g.apply(e,t);function i(e){bA(o,n,r,i,a,"next",e)}function a(e){bA(o,n,r,i,a,"throw",e)}i(void 0)}))},function(e){return u.apply(this,arguments)})},{label:i("Cancel")}]})},show:function(r,a){var s=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:"password",c=arguments.length&gt;3&amp;&amp;void 0!==arguments[3]&amp;&amp;arguments[3];return t.show({template:n(24388),data:{hideStrength:c,requireOldPassword:!1,displayPasswordChangeCheckbox:!1},buttons:[{label:i("Change password"),default:!0,close:!1,action:function(n){return r.save({id:a.id},function(e,t,n){return t=function(e){var t=function(e,t){if("object"!==hA(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==hA(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===hA(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}({type:a.type},s,n.password)).$promise.then((function(){return t.hide()})).catch((function(t){return e.reject(o.msg(t,"change-password"))}))}},{label:i("Cancel")}]})}}}]);const wA=yA.name;function _A(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var jA=angular.module("HUB.directives.base64-input",[pe]);jA.directive("base64Input",(function(){var e=window.File&amp;&amp;window.FileReader;return{scope:{label:"@",unsupportedText:"@",required:"@",inputId:"@",name:"@",decodeFileData:"@",hideToggle:"@"},transclude:!0,require:["base64Input","ngModel"],replace:!1,template:n(7495),controller:["$scope","$timeout",function(t,n){var r,o,i=this,a=null;this.registerNgModelCtrl=function(e){o=e},this.registerInput=function(e){(r=e).addEventListener("change",i.fileChange)},this.chooseFile=function(){return n((function(){r.click()}))},this.fileChange=function(e){t.selectedFile.name=null,a=null,e.target.files&amp;&amp;e.target.files.length&amp;&amp;(a=e.target.files[0],i.readFile(a))},this.readFile=function(e){var t=new FileReader;t.onload=i.readFinished,t.readAsDataURL(e)},this.readFinished=function(e){if(e.target.result&amp;&amp;e.target.result.length){var n=e.target.result.split(",");t.$evalAsync((function(){var e=n.pop();if(t.decodeFileData&amp;&amp;window.atob)try{e=window.atob(e)}catch(t){e=""}t.base64Data=e,t.fileLoaded=!0,o.$setViewValue(e),t.selectedFile.name=a.name}))}},this.bindToTextarea=function(){t.$watch("base64Data",(function(e){e&amp;&amp;o.$setViewValue(e)}))};var s="text",c="file";t.chooseFile=this.chooseFile,t.selectedFile={},t.mode=s,t.fileApiSupport=e,e&amp;&amp;(t.mode=c),t.enableTextMode=function(){return t.mode=s},t.enableFileMode=function(){return t.mode=c},t.isTextMode=function(){return t.mode===s},t.isFileMode=function(){return t.mode===c}}],link:function(t,n,r,o){var i=n[0],a=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return _A(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_A(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(o,2),s=a[0],c=a[1];t.required=void 0!==r.required,t.placeholder=r.placeholder,s.registerNgModelCtrl(c),s.bindToTextarea(),e&amp;&amp;s.registerInput(i.querySelector('input[type="file"]'))}}}));const xA=jA.name;n(18264),n(39575),n(82472),n(92990),n(18927),n(33105),n(35035),n(74345),n(7174),n(32846),n(44731),n(77209),n(96319),n(58867),n(37789),n(33739),n(29368),n(14483),n(12056),n(3462),n(30678),n(27462),n(33824),n(55021),n(12974),n(15016);var EA=n(79742);function SA(e){return SA="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},SA(e)}function TA(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,MA(r.key),r)}}function MA(e){var t=function(e,t){if("object"!==SA(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==SA(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===SA(t)?t:String(t)}var LA=function(){return e=function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)},t=[{key:"wrapBuffer",value:function(e){return e instanceof ArrayBuffer?new Uint8Array(e):e}},{key:"base64UrlToMime",value:function(e){return e.replace(/-/g,"+").replace(/_/g,"/")+"====".substring(0,(4-e.length%4)%4)}},{key:"toByteArray",value:function(e){return EA.toByteArray(this.base64UrlToMime(e))}},{key:"mimeBase64ToUrl",value:function(e){return e.replace(/\+/g,"-").replace(/\//g,"_").replace(new RegExp("=","g"),"")}},{key:"fromByteArray",value:function(e){return this.mimeBase64ToUrl(EA.fromByteArray(this.wrapBuffer(e)))}}],t&amp;&amp;TA(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();const kA=new LA;function OA(e){return OA="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},OA(e)}function PA(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,NA(r.key),r)}}function NA(e){var t=function(e,t){if("object"!==OA(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==OA(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===OA(t)?t:String(t)}var DA=angular.module("hub-components.webauthn",[]),RA=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.$inject={i18n:t}}return e.$inject=["i18n"],t=e,n=[{key:"isSupported",value:function(){return"undefined"!=typeof PublicKeyCredential&amp;&amp;window.isSecureContext}},{key:"getUnsupportedMessage",value:function(){return window.isSecureContext?this.$inject.i18n("It looks like your browser doesn't support token-based authentication."):this.$inject.i18n("Hardware token authentication is only available over an HTTPS connection that is secured by a trusted certificate")}},{key:"getHelpMessage",value:function(){return window.isSecureContext?this.$inject.i18n("Check supported web browsers"):""}},{key:"getHelpPage",value:function(){return window.isSecureContext?"2fa-with-token.html#browser-support":""}},{key:"decodePublicKeyCredentialCreationOptions",value:function(e){var t=e.excludeCredentials.map((function(e){return Object.assign({},e,{id:kA.toByteArray(e.id)})}));return Object.assign({},e,{attestation:"direct",user:Object.assign({},e.user,{id:kA.toByteArray(e.user.id)}),challenge:kA.toByteArray(e.challenge),excludeCredentials:t})}},{key:"createAssertion",value:function(e){var t=e.publicKeyCredentialRequestOptions;return t.challenge=kA.toByteArray(t.challenge),t.allowCredentials.forEach((function(e){e.id=kA.toByteArray(e.id)})),t}},{key:"registrationResponseAsObject",value:function(e){return{type:e.type,id:e.id,response:{attestationObject:kA.fromByteArray(e.response.attestationObject),clientDataJSON:kA.fromByteArray(e.response.clientDataJSON)},clientExtensionResults:e.getClientExtensionResults()}}},{key:"authenticationResponseAsObject",value:function(e){return{type:e.type,id:e.id,response:{authenticatorData:kA.fromByteArray(e.response.authenticatorData),clientDataJSON:kA.fromByteArray(e.response.clientDataJSON),signature:kA.fromByteArray(e.response.signature),userHandle:e.response.userHandle&amp;&amp;(e.response.userHandle.length&gt;0?kA.fromByteArray(e.response.userHandle):null)},clientExtensionResults:e.getClientExtensionResults()}}}],n&amp;&amp;PA(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,n}();DA.service("webauthn",RA);const UA=DA.name;function zA(e){return zA="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},zA(e)}function $A(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,ZA(r.key),r)}}function GA(e){return GA=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},GA(e)}function BA(e,t){return BA=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},BA(e,t)}function FA(e,t,n){return(t=ZA(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ZA(e){var t=function(e,t){if("object"!==zA(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==zA(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===zA(t)?t:String(t)}var YA=angular.module("hub-components.audit-link",[]),WA=function(e){function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),e=this,r=arguments,n=GA(n=t),function(e,t){if(t&amp;&amp;("object"===zA(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(n,r||[],GA(e).constructor):n.apply(e,r));var e,n,r}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;BA(e,t)}(t,e),n=t,r=[{key:"$onInit",value:function(){this.isPrincipal=null!=this.$inject.$attrs.principal,this.isType=null!=this.$inject.$attrs.type&amp;&amp;void 0!==this.$inject.$attrs.type}},{key:"queryPart",value:function(e,t){return e&amp;&amp;e.id?"".concat(t?" or ":"","target: {").concat(e.id,"}"):""}},{key:"getTypeQuery",value:function(){var e="";return this.isType&amp;&amp;this.$inject.$attrs.type.replace(/[\[\]']+/g,"").split(",").forEach((function(t){e+=""!==e?" or entityType: ".concat(t):"entityType: ".concat(t)})),e}},{key:"getName",value:function(){var e=this.entity,t=[].concat(e)[0];return this.name||t&amp;&amp;t.name||""}},{key:"getId",value:function(){return this.entity?[].concat(this.entity)[0].id:""}},{key:"getQuery",value:function(){var e=this,t=this.entity,n=Array.isArray(t),r="";return[].concat(t).forEach((function(t){Array.isArray(t)?n&amp;&amp;t.forEach((function(t){r+=e.queryPart(t,""!==r)})):r+=e.queryPart(t,""!==r)})),r}}],r&amp;&amp;$A(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(p);FA(WA,"$inject",["$attrs"]),FA(WA,"template",n(78320)),FA(WA,"bindings",{entity:"&lt;",type:"&lt;",principal:"@",name:"@",noTitle:"&lt;"}),YA.component("hubAuditLink",WA);const HA=YA.name;var qA=angular.module("hub-components.roster",[]);qA.directive("hubRoster",["$parse",function(e){return{scope:{items:"=hubRoster",removeFunction:"&amp;hubRosterRemove",isRemovable:"&amp;hubRosterRemovable",href:"@hubRosterHref",getHref:"=hubRosterHrefFn",field:"@hubRosterField",name:"@hubRosterName"},replace:!0,template:n(24e3),link:function(t){t.remove=function(e){var n=t.items.indexOf(e);if(n&gt;=0){var r=t.removeFunction(t.makeObject(e));r&amp;&amp;r.then?r.then((function(){t.items.splice(n,1)})):!1!==r&amp;&amp;t.items.splice(n,1)}},t.getName=function(n){return t.name?e(t.name)(n):n.name},t.makeObject=function(e){var n={};return n[t.field]=e,n}}}}]);const QA=qA.name;n(70189),n(26833);var VA=n(48944),KA=n.n(VA),JA=n(89295),XA=n(14727),eC=n(33514),tC=n(63877),nC=n(66659),rC=n(58572),oC=n(3683),iC=n(43143),aC=n.n(iC),sC=n(47558),cC=n.n(sC),lC=n(35131),gC=n.n(lC),uC=n(54984),dC=n.n(uC),pC=n(10878),AC=n.n(pC),CC=function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:"",t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:null;return e&amp;&amp;-1===e.indexOf("/")||null===t?encodeURIComponent(e):t},IC=function(e,t){return"me"===e?t:CC(e,t)},fC=function(e,t){return"new"===e?t:CC(e,t)},mC=function(){return(arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:"").replace(/\\/g,"\\\\")};function hC(e){return function(e){if(Array.isArray(e))return vC(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return vC(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?vC(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function vC(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}n(52586);var bC=angular.module("HUB.select-options-resource",[]);bC.service("SelectOptionsResource",["HubErrorMessageBundle","UserResource","GroupResource","ProjectResource","OrganizationResource","RoleResource","ServiceResource","PermissionResource","ServiceResourceResource","TeamResource","KeyStoreResource","AuthModuleResource","CertificateResource","$q","userPermissionsLoader","i18n","HubPluralMessageBundle","dprDependantSrc",function(e,t,n,r,o,i,a,s,c,l,g,u,d,p,A,C,I,f){var m=this,h=function(t,n,r,o,i,a,s,c){return t.query(angular.extend({query:o,fields:r.fields,orderBy:r.orderBy,$top:i,$skip:c},a||{})).$promise.then((function(e){var t=e[n]||[];return angular.forEach(t,(function(e){Reflect.deleteProperty(e,"type")})),s&amp;&amp;t.unshift(s),t}),(function(t){return e.msg(t,"dropdown-options")}))},v=function(e,t,n,r){var o;return function(){return o||(o=h(e,t,n,null,-1,null,r)),o}},b={fields:"id,name",orderBy:"name"},y={fields:"id,name,global",orderBy:"name"},w="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7";this.queryUtils={and:function(){for(var e=arguments.length,t=new Array(e),n=0;n&lt;e;n++)t[n]=arguments[n];return t.filter((function(e){return e})).map((function(e){return e.trim()})).filter((function(e){return e})).join(" and ")},or:function(){for(var e=arguments.length,t=new Array(e),n=0;n&lt;e;n++)t[n]=arguments[n];return t.filter((function(e){return e})).map((function(e){return e.trim()})).filter((function(e){return e})).map((function(e){return"(".concat(e,")")})).join(" or ")},except:function(e,t){return m.queryUtils.and(e,t.map((function(e){return"not id:".concat(e.id)})).join(" and "))}},this.defaultQueryFn=function(e){return e},this.datasourceFactory=function(e,t,n,r){var o=arguments.length&gt;4&amp;&amp;void 0!==arguments[4]?arguments[4]:this.defaultQueryFn,i=arguments.length&gt;5?arguments[5]:void 0,a=arguments.length&gt;6?arguments[6]:void 0;return function(){var s=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:"",c=arguments.length&gt;1?arguments[1]:void 0,l=arguments.length&gt;2?arguments[2]:void 0,g=arguments.length&gt;3?arguments[3]:void 0;return h(e,t,{fields:n,orderBy:r},o(s),c,l,null,g).then((function(e){var t=e;return i&amp;&amp;(t=e.filter(i)),a&amp;&amp;(!s||JSON.stringify(a).toLowerCase().indexOf(s.toLowerCase())&gt;=0)&amp;&amp;t.unshift(a),t}))}};var _=function(e,t){return t?"".concat(e,",").concat(t):e};this.defaultUsersQueryFn=function(e){var t=(e||"").replace(/\\/,"\\\\").replace(/}/,"\\}");return"(nameStartsWith: {".concat(t,"} or loginStartsWith: {").concat(t,"})")},this.usersQueryWithoutGuestFn=function(e){return"not is: guest and ".concat(m.defaultUsersQueryFn(e))},this.usersDatasourceFactory=function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:this.defaultUsersQueryFn,n=arguments.length&gt;1?arguments[1]:void 0,r=arguments.length&gt;2?arguments[2]:void 0,o=arguments.length&gt;3?arguments[3]:void 0;return this.datasourceFactory(t,"users",_("id,login,name,banned,banBadge,profile(email,avatar)",r),"name",e,n,o)},this.groupsDatasourceFactory=function(e,t,r){return this.datasourceFactory(n,"usergroups",_("id,name,icon,userCount",r),"name",e,t)},this.teamsDatasourceFactory=function(e,t,n){return this.datasourceFactory(l,"projectteams",_("id,name,icon,userCount",n),"name",e,t)},this.rolesDatasourceFactory=function(e,t){return this.datasourceFactory(i,"roles","id,name","name",e,t)},this.projectsDatasourceFactory=function(e,t,n){return this.datasourceFactory(r,"projects",_("id,key,name,iconUrl",n),"name",e,t)},this.organizationsDatasourceFactory=function(e,t,n){return this.datasourceFactory(o,"organizations",_("id,key,name",n),"name",e,t)},this.servicesDatasourceFactory=function(e,t,n){return this.datasourceFactory(a,"services",_("id,applicationName,name,icon",n),"name",e,t)},this.certificatesDatasourceFactory=function(e,t,n){return this.datasourceFactory(d,"certificates",_("id,name",n),"name",e,t)},this.userAndGroupItemsFactory=function(){var e=!(arguments.length&gt;0&amp;&amp;void 0!==arguments[0])||arguments[0],t=!(arguments.length&gt;1&amp;&amp;void 0!==arguments[1])||arguments[1],n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:[],r=arguments.length&gt;3&amp;&amp;void 0!==arguments[3]?arguments[3]:[],o=e?this.usersDatasourceFactory.apply(this,hC(n)):function(){return Promise.resolve([])},i=t?this.groupsDatasourceFactory.apply(this,hC(r)):function(){return Promise.resolve([])};return function(n){var r=o(n),a=i(n);return p.all([r,a]).then((function(n){var r=n.shift(),o=n.shift();r=r.map((function(e){var t=e.profile&amp;&amp;e.profile.email&amp;&amp;e.profile.email.email?e.profile.email.email:e.name,n=w;return e.profile&amp;&amp;e.profile.avatar&amp;&amp;e.profile.avatar.url&amp;&amp;(n=f(e.profile.avatar.url,16)),{key:e.id,label:e.name,description:t,icon:n,id:e.id,user:e}})),o=o.map((function(e){var t=e.icon||w;return{key:e.id,label:e.name,description:I["users-total"](e.userCount),icon:t,id:e.id,group:e}}));var i=[],a=e&amp;&amp;t;return r.length&amp;&amp;(a&amp;&amp;i.push({rgItemType:Mp.Z.ListProps.Type.TITLE,label:C("Users")}),i=i.concat(r)),o.length&amp;&amp;(a&amp;&amp;i.push({rgItemType:Mp.Z.ListProps.Type.TITLE,label:C("Groups")}),i=i.concat(o)),i}))}},this.groups=function(e){return v(n,"usergroups",e||b)},this.groupsExcept=function(e,t){var n=m.groups({fields:t||"id,name,iconUrl,allUsers,registeredUsers",orderBy:"name"});return function(){var t,r,o,i,a=(t=e.groups(),r=e.allUsers,o=e.registeredUsers,i={},t&amp;&amp;t.length&amp;&amp;t.forEach((function(e){i[e.id]=!0})),function(e){return!(r&amp;&amp;"All Users"===e.name||o&amp;&amp;"Registered Users"===e.name||i[e.id])});return n().then((function(e){return e.filter(a)}))}},this.projects=function(){return v(r,"projects",y)},this.projectsWithPermissions=function(e){var t=this.projects();return function(){return p.all({projects:t(),permissionCache:A}).then((function(t){return t.projects.filter((function(n){return t.permissionCache.has(e,n.id)}))}))}},this.roles=function(){return v(i,"roles",b)},this.services=function(e){return v(a,"services",e||b)},this.permissions=function(){return v(s,"permissions",{fields:"id,name,service(name)",orderBy:"key"})},this.serviceResources=function(){return function(e){return h(c,"resources",{fields:"id,name,project(id,name)",orderBy:"name"},"",-1,e)}},this.emptySSLKey=function(){return{name:C("No key")}},this.sslKeys=function(){return v(g,"keystores",{fields:"id,name,certificate/fingerprint(md5,sha1,sha256)",orderBy:"name"},this.emptySSLKey())},this.authmodules=function(){return v(u,"authmodules",b)}}]);const yC=bC.name;function wC(e){return wC="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},wC(e)}function _C(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function jC(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?_C(Object(n),!0).forEach((function(t){xC(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):_C(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function xC(e,t,n){return t=function(e){var t=function(e,t){if("object"!==wC(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==wC(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===wC(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var EC=angular.module("HUB.backend",[AC(),kl,yC]);EC.factory("backend",["$resource","auth",function(e,t){var n="".concat(t.auth.config.serverUri,"api/rest");return{getAPIUrl:function(){return n},createResource:function(t,r,o,i){return e("".concat(n,"/").concat(t,"/:id").concat(r?"/"+r+"/:subId":"","/:oper"),{},jC(jC({},{query:{method:"GET",isArray:!1,params:{orderBy:i,$top:42}},get:{method:"GET"},queryAssist:{method:"GET",params:{id:"queryAssist"},isArray:!1}}),o))}}}]).factory("backendUri",["backend",function(e){return e.getAPIUrl()}]).factory("UserResource",["backend",function(e){return e.createResource("users",null,{invite:{method:"POST",params:{id:"invite"},isArray:!0},consent:{method:"POST",params:{id:"endUserAgreementConsent",fields:"accepted,time,revocationTime,address,majorVersion,minorVersion"},isArray:!1},removeLocale:{method:"POST",params:{oper:"removeLocale"},isArray:!1},deleteConsent:{method:"DELETE",params:{id:"endUserAgreementConsent"}}})}]).factory("UserTwoFactorAuthenticationResource",["backend",function(e){return e.createResource("users","twoFactorAuthentication",{confirm:{method:"POST",params:{oper:"confirm"}},remove:{method:"DELETE"}})}]).factory("WebauthnResource",["backend",function(e){return e.createResource("users","webauthn",{register:{method:"GET",params:{oper:"registration"}},confirm:{method:"POST",params:{oper:"registration"}},remove:{method:"DELETE",params:{oper:"registration"}}})}]).factory("UserDataResource",["backend",function(e){return e.createResource("users","data",{erase:{method:"POST",params:{oper:"erase"},isArray:!1}})}]).factory("UserTransitiveProjectRoleResource",["backend",function(e){return e.createResource("users","transitiveprojectroles")}]).factory("UserAccessResource",["backend",function(e){return e.createResource("users","access")}]).factory("UserProjectRoleResource",["backend",function(e){return e.createResource("users","projectroles")}]).factory("UserSshPublicKeyResource",["backend",function(e){return e.createResource("users","sshpublickeys")}]).factory("UserDetailSubResource",["backend",function(e){return e.createResource("users","userdetails")}]).factory("UserGroupSubResource",["backend",function(e){return e.createResource("users","groups")}]).factory("UserApprovedScopeSubResource",["backend",function(e){return e.createResource("users","approvedscopes")}]).factory("UserRefreshTokenSubResource",["backend",function(e){return e.createResource("users","refreshtokens")}]).factory("UserPermanentTokenSubResource",["backend",function(e){return e.createResource("users","permanenttokens")}]).factory("UserApplicationPasswordSubResource",["backend",function(e){return e.createResource("users","applicationPasswords")}]).factory("UserDetailResource",["backend",function(e){return e.createResource("userdetails")}]).factory("GroupResource",["backend",function(e){return e.createResource("usergroups",null,{forest:{method:"GET",isArray:!0,params:{id:"forest"}}},"name")}]).factory("GroupMemberResource",["backend",function(e){return e.createResource("usergroups","users",null,"name")}]).factory("GroupTransitiveProjectRoleResource",["backend",function(e){return e.createResource("usergroups","transitiveprojectroles")}]).factory("GroupAccessResource",["backend",function(e){return e.createResource("usergroups","access")}]).factory("GroupProjectRoleResource",["backend",function(e){return e.createResource("usergroups","projectroles")}]).factory("OrganizationResource",["backend",function(e){return e.createResource("organizations",null,null)}]).factory("OrganizationProjectsResource",["backend",function(e){return e.createResource("organizations","projects",null)}]).factory("OrganizationUsersResource",["backend",function(e){return e.createResource("organizations","users",null)}]).factory("OrganizationGroupsResource",["backend",function(e){return e.createResource("organizations","groups",null)}]).factory("OrganizationRolesResource",["backend",function(e){return e.createResource("organizations","roles",null)}]).factory("ProjectOrganizationResource",["backend",function(e){return e.createResource("projects","organization",null)}]).factory("ProjectResource",["backend",function(e){return e.createResource("projects",null,{global:{method:"GET",isArray:!1,params:{id:"global"}}})}]).factory("ProjectTransitiveProjectRoleResource",["backend",function(e){return e.createResource("projects","transitiveprojectroles")}]).factory("ProjectResourceResource",["backend",function(e){return e.createResource("projects","resources",null,"name")}]).factory("ProjectTeamResource",["backend",function(e){return e.createResource("projects","team",null,"name")}]).factory("TeamResource",["backend",function(e){return e.createResource("projectteams",null,{absorb:{method:"POST",params:{oper:"absorb"},isArray:!1}},"name")}]).factory("GroupAndTeamResource",["backend",function(e){return e.createResource("usergroups/mixed",null,null,"name")}]).factory("ResourceResource",["backend",function(e){return e.createResource("resources",null,null)}]).factory("RoleResource",["backend",function(e){return e.createResource("roles",null,null)}]).factory("RolePermissionResource",["backend",function(e){return e.createResource("roles","permissions",null,"name")}]).factory("PermissionResource",["backend",function(e){return e.createResource("permissions",null,{cache:{method:"GET",params:{id:"cache"},isArray:!0}},"name")}]).factory("ServiceHeaderResource",["backend",function(e){return e.createResource("services","header",{get:{method:"GET",isArray:!0,params:{fields:"id"}}})}]).factory("ServiceResource",["backend",function(e){return e.createResource("services",null,null)}]).factory("ServiceResourceResource",["backend",function(e){return e.createResource("services","resources",null,"name")}]).factory("ServicePermissionResource",["backend",function(e){return e.createResource("services","permissions",null,"key")}]).factory("ServiceProjectRoleResource",["backend",function(e){return e.createResource("services","projectroles")}]).factory("ServiceHeaderVisibleGroupResource",["backend",function(e){return e.createResource("services","viewers")}]).factory("ServiceUntrustedRedirectUriResource",["backend",function(e){return e.createResource("services","untrustedredirecturis",{accept:{method:"POST",params:{oper:"accept"},isArray:!1},reject:{method:"DELETE",params:{oper:"reject"},isArray:!1}})}]).factory("ProjectRoleResource",["backend",function(e){return e.createResource("projectroles")}]).factory("EventResource",["backend",function(e){return e.createResource("events",null,null,"timestamp:desc")}]).factory("ProfileAttributeResource",["backend",function(e){return e.createResource("profileattributeprototypes",null,null,null)}]).factory("SamlIdentityProviderResource",["backend",function(e){return e.createResource("saml2/identityprovider",null,null,null)}]).factory("SamlServiceProviderResource",["backend",function(e){return e.createResource("saml2/serviceproviders",null,null,null)}]).factory("downloadEvents",["$http","backendUri",function(e,t){return function(n){return e({method:"GET",params:angular.extend({$top:1e3,fields:"id,targetId,targetType,targetPresentation,author,authorPresentation,authorType,type,timestamp,changes",orderBy:"timestamp"},n),url:"".concat(t,"/events"),responseType:"blob"}).then((function(e){return e.data}))}}]).factory("AuthModuleResource",["backend",function(e){return e.createResource("authmodules",null,null)}]).factory("AuthModuleResolveResource",["backend",function(e){return e.createResource("authmodules","resolve")}]).factory("AuthModuleAutoJoinGroupResource",["backend",function(e){return e.createResource("authmodules","autojoingroups",null,"name")}]).factory("AuthModuleTestResource",["backend",function(e){return e.createResource("authmodules","extension",{test:{method:"POST",params:{id:"@id",subId:"test"}}})}]).factory("AuthModuleExtensionsResource",["backend",function(e){return e.createResource("authmodules","extension",{requirePasswordChange:{method:"POST",params:{id:"@id",subId:"requirePasswordChange"}},getLdapGroups:{method:"POST",params:{id:"@id",subId:"ldapGroups"},isArray:!0}})}]).factory("AuthModuleSynchronizationResource",["backend",function(e){return e.createResource("authmodules","synchronization/schedule",{post:{method:"POST",params:{id:"@id"}}})}]).factory("SettingsResource",["backend",function(e){return e.createResource("settings",null,{reset:{method:"POST",params:{id:"@id",oper:"reset"}}})}]).factory("SettingsTestResource",["backend",function(e){return e.createResource("settings","test")}]).factory("SettingsPublicResource",["backend",function(e){return e.createResource("settings","public")}]).factory("SettingsBackupSettings",["$resource","backendUri",function(e,t){return e("".concat(t,"/settings/backup"),{},{})}]).factory("SettingsBackupData",["backend",function(e){return e.createResource("settings","backupData")}]).factory("LicenseAutoJoinGroupResource",["backend",function(e){return e.createResource("settings","autojoingroups")}]).factory("LicenseUserResource",["backend",function(e){return e.createResource("settings","users")}]).factory("MigrationResource",["backend",function(e){return e.createResource("migrations")}]).factory("FeatureFlagsResource",["backend",function(e){return e.createResource("features","enabled",{get:{method:"GET",isArray:!0}})}]).factory("FeatureResource",["backend",function(e){return e.createResource("hubfeatures")}]).factory("AccessGrantResource",["$resource","backendUri",function(e,t){return e("".concat(t,"/accessview/grantoptions/projects/:projectId/:principal/:principalId/:access/:accessId"),{},{})}]).factory("DuplicateUserResource",["$resource","backendUri",function(e,t){return e("".concat(t,"/duplicates/users/:subResource/:id/:subSubResource/:userId"),{},{getReliabilities:{params:{subResource:"reliabilities"},method:"GET",isArray:!0},createSearch:{params:{subResource:"search"},method:"POST",isArray:!1},getSearch:{params:{subResource:"search"},method:"GET",isArray:!1},cancelSearch:{params:{subResource:"search"},method:"DELETE",isArray:!1},merge:{params:{subResource:"search",subSubResource:"merge"},method:"POST",isArray:!1},removeUser:{params:{subResource:"search",subSubResource:"users"},method:"DELETE",isArray:!1},updateCluster:{params:{subResource:"search",subSubResource:"clusters"},method:"POST",isArray:!1},removeCluster:{params:{subResource:"search",subSubResource:"clusters"},method:"DELETE",isArray:!1}})}]).factory("ImportResource",["$resource","backendUri",function(e,t){return e("".concat(t,"/imports/:id/:action"),{},{query:{method:"GET",isArray:!1,params:{$top:42}},get:{method:"GET"},queryAssist:{method:"GET",params:{id:"queryAssist"},isArray:!1},merge:{method:"POST",params:{id:"@id",action:"merge"}}})}]).factory("ImportConflictResource",["backend",function(e){return e.createResource("imports","conflicts")}]).factory("CustomWidgetResource",["backend",function(e){function t(e){var t=e.manifest;return t.services&amp;&amp;(t.dependencies=t.services),e}return e.createResource("widgets",null,{get:{transformResponse:function(e){var n=JSON.parse(e);return n.manifest?t(n):(n.widgets&amp;&amp;(n.widgets=n.widgets.map(t)),n)}}})}]).factory("CustomWidgetRepositoryResource",["backend",function(e){return e.createResource("widgets","repository",null)}]).factory("LocalesResource",["backend",function(e){return e.createResource("settings","locales",{get:{isArray:!0}})}]).factory("HostServiceInfo",["ServiceResource",function(e){return{requestHostService:function(){return e.query({query:"has: license",fields:"id,key,applicationName",$top:-1}).$promise.then((function(e){var t=e.services||[];return t&amp;&amp;0===t.length?null:t&amp;&amp;1===t.length?t[0]:t.filter((function(e){return"Hub"===e.applicationName}))[0]}))}}}]).factory("getProjectByIdOrName",["auth",function(e){return function(t){return new mA(e.auth).getProjectByIdOrName(mC(t)).then((function(e){return e}))}}]).factory("getWithQuery",["$q",function(e){return function(t,n,r){var o=arguments.length&gt;3&amp;&amp;void 0!==arguments[3]?arguments[3]:function(){},i=e.defer();return i.$promise=i.promise,t.query(r,(function(e){if(0!==e[n].length){var r=e[n][0];Object.keys(r).forEach((function(e){i[e]=r[e]})),i.$remove=function(){return t.remove.apply(t,arguments).$promise},i.resolve(r),o(r)}else i.reject({data:{error:"Not Found",error_code:404},status:404})}),(function(e){i.reject(e)})),i}}]);const SC=EC.name;function TC(e){return TC="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},TC(e)}function MC(){MC=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==TC(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function LC(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function kC(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){LC(i,r,o,a,s,"next",e)}function s(e){LC(i,r,o,a,s,"throw",e)}a(void 0)}))}}function OC(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,DC(r.key),r)}}function PC(e,t,n){return t&amp;&amp;OC(e.prototype,t),n&amp;&amp;OC(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function NC(e,t,n){return(t=DC(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function DC(e){var t=function(e,t){if("object"!==TC(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==TC(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===TC(t)?t:String(t)}var RC=angular.module("HUB.features",[SC]),UC=PC((function e(t,n){var r=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),NC(this,"_enabledFeatures",null),NC(this,"_getEnabledFeatures",kC(MC().mark((function e(){var t,n;return MC().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=r.$inject.featureFlags,r._enabledFeatures){e.next=6;break}return e.next=4,t.get().$promise;case 4:n=e.sent,r._enabledFeatures=new Set(n);case 6:return e.abrupt("return",r._enabledFeatures);case 7:case"end":return e.stop()}}),e)})))),NC(this,"isEnabled",function(){var e=kC(MC().mark((function e(t){var n;return MC().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,r._getEnabledFeatures();case 2:return n=e.sent,e.abrupt("return",n.has(t));case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),NC(this,"getEnabled",(function(){return r._getEnabledFeatures()})),NC(this,"invalidate",(function(){r._enabledFeatures=null})),NC(this,"on",(function(e){return r.$inject.$q.when(kC(MC().mark((function t(){var n;return MC().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,r._getEnabledFeatures();case 2:if(n=t.sent,!Array.isArray(e)){t.next=7;break}return t.abrupt("return",e.map((function(e){return n.has(e)})));case 7:return t.abrupt("return",n.has(e));case 8:case"end":return t.stop()}}),t)})))())})),this.$inject={featureFlags:t,$q:n}}));UC.$inject=["FeatureFlagsResource","$q"],RC.service("hubFeatures",UC),RC.factory("feature",["hubFeatures",function(e){return e.on}]);const zC=RC.name;function $C(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}n(4723);var GC=angular.module("HUB.filters",[]);GC.filter("unique",(function(){return function(e,t){var n=t,r=[],o={},i=function(e){for(var t,r=e,o=n.split(".");(t=o.shift())&amp;&amp;(r=r[t],!angular.isUndefined(r)););return r};if(e)for(var a=0;a&lt;e.length;a++){var s=n?i(e[a]):e[a];s&amp;&amp;!o[s]&amp;&amp;(r.push(e[a]),o[s]=!0)}return r}})).filter("portion",(function(){return function(e,t,n){var r=[];if(e)for(var o=Math.ceil(e.length/n),i=o*t;i&lt;o*(t+1)&amp;&amp;i&lt;e.length;i++)r.push(e[i]);return r}})).filter("filterBySet",(function(){return function(e,t,n){var r=[];return e&amp;&amp;t&amp;&amp;(r=e.filter((function(e){return t[e[n]]}))),r}})).filter("isPathPrefix",["$location",function(e){return function(t){return 0===e.path().indexOf(t)}}]).filter("isSafeService",(function(){return function(e){return!e||!e.homeUrl||0===e.homeUrl.indexOf("https://")||0!==e.homeUrl.indexOf("http://")}})).filter("htmlEscape",(function(){return function(e){if(!e)return e;var t={"&amp;":"&amp;amp;","&lt;":"&amp;lt;","&gt;":"&amp;gt;"};return e.replace(/[&amp;&lt;&gt;]/g,(function(e){return t[e]||e}))}})).filter("wiki",(function(){var e=/^(.*)\[(\S*)\s(.*)\](.*)$/;return function(t){if(!t)return t;var n,r=t.replace(/\+/g," ");if(n=r.match(e)){var o=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return $C(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?$C(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(n,5),s=o[1],c=o[2],l=o[3],g=o[4];r=[s?"".concat(s," "):"",i.createElement(a.Z,{key:"link",href:c.replace(/javascript:/gi,"")},l),g?" ".concat(g):""]}return r}})).filter("stripHttp",(function(){return function(e){return e.replace(/^https?:/,"").replace(/^\/\//,"")}})).filter("absoluteURL",(function(){return function(e){e=e||"";var t=document.createElement("a");return t.href=e,t.href}})).filter("fingerprint",(function(){return function(e){if(!e)return"";for(var t=e.toUpperCase(),n=[],r=0;r&lt;t.length;r+=2)n.push(t.substring(r,r+2));return n.join(":")}})).filter("encodeLink",(function(){return function(e,t){return CC(e,t)}})).filter("encodeLogin",(function(){return function(e,t){return IC(e,t)}})).filter("linkToHub",(function(){return function(e,t,n){return[e,"user"===e?IC(t,n):"project"===e?fC(t,n):CC(t,n)].filter((function(e){return!!e})).join("/")}})).filter("getHubHelpUrl",["hubConfig",function(e){return function(t){return"".concat(e.help.baseUrl+t)}}]);const BC=GC.name;var FC=n(70550),ZC=n.n(FC),YC=n(39276),WC=(new(n.n(YC)())).sniff(),HC="macos"===WC.os.name,qC=angular.module("HUB.goto",[Qe]);qC.controller("gotoDialogController",["$scope","$q","$timeout","$location","gotoFactory","dialog",function(e,t,n,r,o,i){o.setOpened(!0);var a=document.querySelector(".goto__filter__input"),s=o.getLocations(),c={};s.forEach((function(e){c[e.type]=e}));var l="";function g(){e.active={group:0,item:0},e.results=[]}function u(){var t=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:e.active.group;return e.results[t]}function d(){var t=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:e.active.group;return e.results[t].data.length-1}function p(t){var n=document.querySelector(".goto__data");if(t)n.scrollTop=0;else{for(var r=document.querySelector(".goto__data__label").offsetHeight,o=document.querySelector(".goto__data__item").offsetHeight,i=0,a=0;a&lt;=e.active.group;a++)a!==e.active.group?i+=u(a).data.length:i+=e.active.item;n.scrollTop=(e.active.group+1)*r+i*o-n.offsetHeight/2}}e.loading=!1,g();var A=ZC()((function(){e.$evalAsync((function(){e.loading=!0})),A.cancel()}),250),C=ZC()((function(n){l=n,A(),function(e){return t.all(s.map((function(t){return t.source(e)})))}(n).then((function(t){l===n&amp;&amp;e.searchPhrase.length&amp;&amp;(g(),t.forEach((function(t){if(t.length){var n=c[t.type];e.results.push({type:n.type,label:n.label(),data:t.map((function(e){return{id:e.getId(),icon:e.getIcon(),emptyIcon:e.getEmptyIcon(),label:e.getLabel(),description:e.getDescription(),here:e.isHere(),go:function(){r.url(e.getPath())}}})),total:t.total})}})),p(!0))})).finally((function(){e.inProgress=!1,A.cancel(),e.loading=!1}))}),300);function I(t){var n=e.active;n.group&gt;0?n.group--:n.group=e.results.length-1,n.item=t?d():0}function f(){var t=e.active;t.group&lt;e.results.length-1?t.group++:t.group=0,t.item=0}function m(t){var n=!(arguments.length&gt;1&amp;&amp;void 0!==arguments[1])||arguments[1];return function(){return!!e.results.length&amp;&amp;(t(),n&amp;&amp;p(),!1)}}e.$watch("searchPhrase",(function(t){var n=(t||"").trim();n.length?(e.inProgress=!0,C(n)):g()})),e.close=function(){i.hide()};var h=m((function(){u()&amp;&amp;(0===e.active.item?I(!0):e.active.item--)})),v=m((function(){u()&amp;&amp;(e.active.item===d()?f():e.active.item++)})),b=m(I),y=m(f),w=m((function(){var t=function(){var t=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:e.active.item;return u()?u().data[t]:null}();t.here?i.hide():t&amp;&amp;t.go()}),!1);e.modesKeys={itemUp:h,itemDown:v,groupUp:b,groupDown:y,navigate:w},e.key=HC?"âŒ˜":"CTRL",e.restoreFilterFocus=function(){a.focus()},n((function(){return a.focus()}),100),e.$on("$destroy",(function(){o.setOpened(!1)})),e.searchPhrase=""}]),qC.factory("gotoFactory",["$q","$rootScope","dialog",function(e,t,r){var o=!1,i=!0,a=[];function s(){r.show({cssClass:"goto-dialog",scrollableWrapperClassName:"goto-dialog-content",closeOnClick:!0,template:n(14400),controller:"gotoDialogController"})}return document.addEventListener("keydown",(function(e){var n=HC?e.metaKey:e.ctrlKey;if(i&amp;&amp;75===e.keyCode&amp;&amp;n&amp;&amp;!e.shiftKey&amp;&amp;!e.altKey)return o?r.hide():s(),t.$evalAsync(),e.preventDefault(),!1})),{navigate:s,register:function(e,t){a[t?"unshift":"push"]({source:e.create(),label:e.label,type:e.type})},getLocations:function(){return a},setOpened:function(e){o=e},setEnabled:function(e){i=!!e}}}]);const QC=qC.name;function VC(e){return VC="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},VC(e)}function KC(e){return function(e){if(Array.isArray(e))return XC(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||JC(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function JC(e,t){if(e){if("string"==typeof e)return XC(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?XC(e,t):void 0}}function XC(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function eI(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,oI(r.key),r)}}function tI(e){return tI=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},tI(e)}function nI(e,t){return nI=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},nI(e,t)}function rI(e,t,n){return(t=oI(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function oI(e){var t=function(e,t){if("object"!==VC(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==VC(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===VC(t)?t:String(t)}var iI=angular.module("HUB.menu",[KA(),Lt,zC,BC,QC]);iI.factory("hubMenuApi",(function(){var e=angular.noop,t=null;return{setServiceUpdater:function(t){e=t},update:function(){e()},setHeaderButton:function(n){t=n,e()},removeHeaderButton:function(){t=null,e()},getHeaderButton:function(){return t}}})),iI.directive("hubMenu",["hubHelpInterface",function(e){return{restrict:"E",controller:["$scope","auth","$injector","i18n","i18nLoader","$route","userPermissions","$q","hubFeatures","hubMenuApi","$element","gotoFactory","$filter","hubConfig","ServiceHeaderResource",function(t,n,r,o,s,c,l,g,u,d,p,A,C,I,f){var m=C("isPathPrefix"),h=new Set,v=function(){A.navigate(),t.$evalAsync()},b=function(t){function r(){var t;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,r);for(var n=arguments.length,o=new Array(n),i=0;i&lt;n;i++)o[i]=arguments[i];return rI(t=function(e,t,n){return t=tI(t),function(e,t){if(t&amp;&amp;("object"===VC(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],tI(e).constructor):t.apply(e,n))}(this,r,[].concat(o)),"setHelpCloseCallback",(function(t){e.closeHelpPopup=null!==t?function(){t._toggle()}:angular.noop})),rI(t,"setHelpElement",(function(e){e&amp;&amp;t.props.helpPopupElement&amp;&amp;e.appendChild(t.props.helpPopupElement)})),t}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;nI(e,t)}(r,t),s=r,c=[{key:"componentDidMount",value:function(){this.homeLink=document.querySelector("base").getAttribute("href")}},{key:"render",value:function(){var e=this.props,t=e.menu,r=e.menuButton,s=e.settings,c=e.services,l=Wg()("menu");return i.createElement("div",{className:Wg()({menu__wrapper:!I.embedded})},i.createElement(JA.ZP,{"data-test":"header",className:l},i.createElement(a.Z,{"data-test-custom":"header-logo",href:this.homeLink},i.createElement("img",{src:aC(),className:"menu__logo"})),t.length&gt;0&amp;&amp;t.map((function(e){return i.createElement(a.Z,e)})),i.createElement(XA.Z,null,r,i.createElement(eC.Z,{key:"goto","data-test":"header-goto",icon:dC(),title:o("Open global navigation"),onClick:v}),s.length&gt;0&amp;&amp;i.createElement(oC.Z,{anchor:function(e){var t=e.active;return i.createElement(eC.Z,{active:t,icon:gC(),rotatable:!0})},"data-test":"header-settings",title:o("Administration")},i.createElement(rC.Z,{closeOnSelect:!0,data:s})),i.createElement(oC.Z,{anchor:function(e){var t=e.active;return i.createElement(eC.Z,{active:t,icon:cC()})},"data-test":"header-help",title:o("Help"),ref:this.setHelpCloseCallback},i.createElement(yr.ZP,{directions:[yr.ZP.PopupProps.Directions.BOTTOM_LEFT],className:"hub-menu__help-popup"},i.createElement("div",{ref:this.setHelpElement}))),c.length&gt;0&amp;&amp;i.createElement(tC.Z,{auth:n.auth,"data-test":"header-services",title:o("Services")}),i.createElement(nC.Z,{auth:n.auth,"data-test":"header-user-menu",title:o("Profile"),translations:{login:o("Log in..."),logout:o("Log out"),profile:o("Profile"),switchUser:o("Switch user"),applyChangedUser:o("Apply changed user")}}))))}}],c&amp;&amp;eI(s.prototype,c),Object.defineProperty(s,"prototype",{writable:!1}),s;var s,c}(i.Component);rI(b,"propTypes",{helpPopupElement:Zg().instanceOf(Element),menu:Zg().array,menuButton:Zg().node,settings:Zg().array,services:Zg().array}),rI(b,"defaultProps",{menu:[],menuButton:null,settings:[],services:[]});var y={},w=function(e){Object.assign(y,e),(0,Ei.s)(p[0]).render(i.createElement(b,y))};function _(){var e=function(e){return e.path.replace(/^\//,"")},t=l.load(),n=f.get().$promise;g.all([t,u.getEnabled(),n]).then((function(t){var n=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||JC(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(t,3),i=n[0],a=n[1],s=n[2],l=rC.Z.ListProps.Type,g=l.LINK,u=l.TITLE;h=a;var p=Object.values(c.routes).filter((function(e){return i.has(e.permission)})).filter((function(e){return!e.isEnabled||e.isEnabled(h)})),A=p.filter((function(e){return"access-management"===e.menu})),C=p.filter((function(e){return"server-settings"===e.menu}));function I(t){return{active:m(t.path),label:r.invoke(t.title),href:e(t),rgItemType:g}}var f=[];A.length&gt;0&amp;&amp;(f.push({label:o("Access Management"),rgItemType:u}),f.push.apply(f,KC(A.map(I)))),C.length&gt;0&amp;&amp;(f.push({label:o("Server Settings"),rgItemType:u}),f.push.apply(f,KC(C.map(I))));var v=p.filter((function(e){return e.menu&amp;&amp;"navigation"!==e.menu&amp;&amp;m(e.path)&amp;&amp;e.title})),b=p.filter((function(e){return"navigation"===e.menu})).concat(v).map((function(t){var n=e(t);return{active:m(t.path),href:n,key:n,children:r.invoke(t.title)}})),y=d.getHeaderButton();return s=s.filter((function(e){return"0-0-0-0-0"!==e.id})),{menu:b,menuButton:y,settings:f,services:s}})).then(w)}e.helpPopupElement.then((function(e){return w({helpPopupElement:e})})),d.setServiceUpdater(_),t.$on("$routeChangeSuccess",(function(){t.$on("gettextLanguageChanged",_),_()}))}]}}]);const aI=iI.name;var sI=angular.module("HUB.help",[St]);sI.factory("hubHelpInterface",["i18n","$q","$compile","$rootScope",function(e,t,n,r){var o,i,a=e("JetBrains Hub provides user authentication, single sign-on, authorization, and user management across all JetBrains web-based services and the applications that are connected to it."),s=t.defer();return{helpPopupElement:s.promise,setHelpPopupElement:function(e){s.resolve(e)},setContainer:function(e,t){o=e,i=t},setPageHelpElement:function(e,t){this.clearPageHelpElement(),i(t),o.appendChild(e)},setPageHelpHtml:function(e,t){this.clearPageHelpElement(),i(t);var a=n(e)(r.$new())[0];o.appendChild(a)},clearPageHelpElement:function(){o&amp;&amp;(o.innerHTML="")},setDefaultHelp:function(){o.innerHTML=a},closeHelpPopup:angular.noop}}]),sI.directive("hubHelpContainer",["hubHelpInterface","rgShortcutsHintPopup","i18n",function(e,t,r){return{template:n(78700),link:function(n,o){n.openShortcutsHelp=function(){return e.closeHelpPopup(),t.show({},null,r("Close"),r("Filter shortcuts"))},e.setHelpPopupElement(o[0]),e.setContainer(o[0].querySelector(".hub-menu__help-container"),(function(e){n.documentationURL=e}))}}}]),sI.directive("hubPageHelp",["hubHelpInterface",function(e){return{transclude:!0,template:"&lt;ng-transclude&gt;&lt;/ng-transclude&gt;",link:function(t,n,r){e.setPageHelpElement(n[0],r.url)}}}]),sI.directive("hubHelpLink",(function(){return{transclude:!0,template:'&lt;a ng-href="{{url | getHubHelpUrl}}" class="ring-link" ng-transclude&gt;&lt;/a&gt;',replace:!0,scope:{url:"@"}}}));const cI=sI.name;var lI=angular.module("HUB.alias",[]);lI.directive("alias",(function(){return{restrict:"A",transclude:"element",link:{pre:function(e,t,n,r,o){var i=e.$new();o(i,(function(r){return t.replaceWith(r),e.$watch((function(){i.$eval(n.alias)}))}))}}}}));const gI=lI.name;function uI(e){return uI="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},uI(e)}function dI(e){return function(e){if(Array.isArray(e))return pI(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return pI(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?pI(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function pI(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function AI(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,CI(r.key),r)}}function CI(e){var t=function(e,t){if("object"!==uI(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==uI(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===uI(t)?t:String(t)}n(28733);var II=function(){return e=function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),function(e,t,n){(t=CI(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(this,"messages",[])},t=[{key:"setUpGlobalErrorHandler",value:function(){var e=this,t=window.onerror;window.onerror=function(n,r,o,i,a){return e.messages=[].concat(dI(e.messages),[{date:new Date,msg:n,url:r,lineNo:o,columnNo:i,error:a,toString:function(){return"".concat(this.date.toISOString(),": ").concat(this.msg,"|").concat(this.url,"|").concat(this.lineNo,"|").concat(this.columnNo,"|").concat(this.error.toString())}}]),!!t&amp;&amp;t(n,r,o,i,a)}}},{key:"wrapConsoleMethod",value:function(e){var t=this,n=console[e];console[e]=function(){for(var e=arguments.length,r=new Array(e),o=0;o&lt;e;o++)r[o]=arguments[o];return t.messages=[].concat(dI(t.messages),[{logArguments:r,date:new Date,toString:function(){var e=this.logArguments.map((function(e){return e&amp;&amp;e.stack||e.toString()})).join("|");return"".concat(this.date.toISOString(),": ").concat(e)}}]),n.apply(console,r)}}},{key:"setUpConsoleWrapper",value:function(){this.wrapConsoleMethod("log"),this.wrapConsoleMethod("error")}},{key:"enableWrapping",value:function(){this.setUpGlobalErrorHandler(),this.setUpConsoleWrapper()}},{key:"getFullLog",value:function(){return this.messages.map((function(e){return"".concat(e.toString())})).join("\n\n")}},{key:"clearLogs",value:function(){this.messages=[]}}],t&amp;&amp;AI(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function fI(e){return fI="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},fI(e)}n(5212);var mI=angular.module("HUB.goto-helpers",[]);mI.factory("gotoHelpers",(function(){function e(e){var t=[],n=-1!==e.indexOf(" ");n||(n=e.length&gt;0&amp;&amp;i(0));var r=0;function o(n){e.substring(r,n+1).trim().length&amp;&amp;t.push(e.substring(r,n+1).trim()),r=n+1}function i(t){var n=e.charAt(t);return n===n.toUpperCase()&amp;&amp;n.toLowerCase()!==n.toUpperCase()}for(var a=0;a&lt;e.length;a++){var s=e.charAt(a),c=a&gt;0&amp;&amp;" "===e.charAt(a-1),l=" "===s,g=a===e.length-1,u=!g&amp;&amp;i(a+1);n||l||!u?l&amp;&amp;!c?o(a-1):g&amp;&amp;o(a):o(a)}return t}function t(e,t){return function(n){if("object"!==fI(n))throw new Error("Entity should be an object");var r=function t(n,r){for(var o=n.split(".");o.length;){var i=o.shift();if("string"==typeof r[i]&amp;&amp;0===o.length){var a=r[i].toLowerCase().split(" "),s=e.slice();e:for(;s.length&amp;&amp;a.length;){for(var c=s.shift().toLowerCase(),l=0;l&lt;a.length;l++)if(0===a[l].indexOf(c)){a=a.splice(l+1);continue e}return!1}return 0===s.length}return Array.isArray(r[i])?r[i].some((function(e){return t(o.join("."),e)})):"object"===fI(r[i])&amp;&amp;t(o.join("."),r[i])}return!1};return t.some((function(e){return r(e,n)}))}}function n(e){for(var t=["and","or","not"],n=0;n&lt;t.length;n++)if(e.toLowerCase()===t[n])return e.substring(0,e.length-1);return e}return{specificSplit:e,createEntityFilter:t,resourceSearcher:function(r,o){var i=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:{},a=arguments.length&gt;3&amp;&amp;void 0!==arguments[3]?arguments[3]:["key","name"];return function(s,c,l){var g=e(s),u={query:g.map(n).join(" and "),orderBy:"name",$top:c};Object.assign(u,i);var d=0,p=[];function A(e){var n=e[o]||[],r=n.filter(t(g,a));p=p.concat(r);var i=n.length+d&lt;e.total;if(p.length&lt;l&amp;&amp;i)return d+=n.length,C();var s=p.splice(0,l);return s.total=e.total-d+(p.length-n.length),s.type=o,s}function C(){return u.$skip=d,r.query(u).$promise.then(A)}return C()}}}}));const hI=mI.name;var vI=angular.module("HUB.goto-menu",[QC,hI,vd,zt]);vI.run(["$location","$injector","$route","$q","i18n","gotoFactory","gotoHelpers","userPermissionsLoader","feature",function(e,t,r,o,i,a,s,c,l){o.all([c,l("jetbrains.hub.services.hide")]).then((function(o){var c=o.shift(),l=o.shift(),g="menuitems";a.register({type:g,label:function(){return i("Menu item")},create:function(){function o(){return this.route.path}function i(){return t.invoke(this.route.title)}function a(){return""}function u(){return""}function d(){return e.path()===this.route.path}function p(){return this.route.path}function A(){return n(43143)}return function(e){var n=[],C=s.createEntityFilter(s.specificSplit(e),["name"]);return angular.forEach(r.routes,(function(e){if(!(l&amp;&amp;e.controller&amp;&amp;e.controller.toLowerCase&amp;&amp;0===e.controller.toLowerCase().indexOf("service"))&amp;&amp;e.menu&amp;&amp;c.has(e.permission)){var r=t.invoke(e.title);if(!C({name:r}))return;n.push({route:e,getId:o,getLabel:i,getDescription:a,getIcon:u,getEmptyIcon:A,isHere:d,getPath:p})}})),n.type=g,n}}},!0)}))}]);const bI=vI.name;var yI=angular.module("HUB.goto-entities",[QC,hI,KA(),vd,zt]);yI.run(["$routeParams","gotoFactory","gotoHelpers","i18n","userPermissionsLoader","UserResource","RoleResource","GroupResource","ProjectResource","AuthModuleResource","ServiceResource","KeyStoreResource","CertificateResource","OrganizationResource","ProfileAttributeResource",function(e,t,r,o,i,a,s,c,l,g,u,d,p,A,C){i.then((function(i){function I(n){t.register({type:n.path,label:n.label,create:function(){function t(){return this.item.id}function r(){return this.item.name}function o(){return n.description&amp;&amp;n.description(this.item)||""}function a(){return n.icon&amp;&amp;n.icon(this.item)||""}function s(){return n.emptyIcon}function c(){return e.id===this.item[n.here||"id"]}function l(){return"function"==typeof n.path?n.path(this.item):"/".concat(n.path,"/").concat(this.item.id)}return function(e){return!n.permission||i.has(n.permission)?n.datasource()(e,100,5).then((function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:[],i=e.map((function(e){return{item:e,getId:t,getLabel:r,getDescription:o,getIcon:a,getEmptyIcon:s,isHere:c,getPath:l}}));return i.total=e.total,i.type=n.path,i})):[]}}})}I({emptyIcon:n(43533),permission:"user-read | user-read-basic",here:"login",datasource:function(){return r.resourceSearcher(a,"users",{fields:"id,login,name,profile,details(login,email),total"},["key","name","login","profile.email.email","details.login","details.email.email"])},path:function(e){return"users/".concat(IC(e.login,e.id))},icon:function(e){return e.profile&amp;&amp;e.profile.avatar&amp;&amp;e.profile.avatar.url},label:function(){return o("User")},description:function(e){return e.login}}),I({emptyIcon:n(97846),permission:"low-level-read",here:"name",path:function(e){return"user-profile-attributes/".concat(CC(e.name,e.id))},datasource:function(){return r.resourceSearcher(C,"profileattributeprototypes",{fields:"name,type,id"})},label:function(){return o("Custom Attributes")}}),I({emptyIcon:n(25547),permission:"group-read",here:"name",path:function(e){return"groups/".concat(CC(e.name,e.id))},datasource:function(){return r.resourceSearcher(c,"usergroups",{fields:"id,name,iconUrl"})},icon:function(e){return e.iconUrl},label:function(){return o("Group")}}),I({emptyIcon:n(97846),permission:"role-read",here:"key",path:function(e){return"roles/".concat(CC(e.key,e.id))},datasource:function(){return r.resourceSearcher(s,"roles",{fields:"id,key,name"})},label:function(){return o("Role")}}),I({emptyIcon:n(44254),permission:"project-read | project-read-basic",here:"name",path:function(e){return"projects/".concat(fC(e.name,e.id))},icon:function(e){return e.iconUrl},datasource:function(){return r.resourceSearcher(l,"projects",{fields:"id,name,iconUrl"})},label:function(){return o("Project")}}),I({emptyIcon:n(44254),permission:"organization-read",here:"name",path:function(e){return"organizations/".concat(CC(e.name,e.id))},icon:function(e){return e.iconUrl},datasource:function(){return r.resourceSearcher(A,"organizations",{fields:"id,name,iconUrl"})},label:function(){return o("Organization")}}),I({emptyIcon:n(65344),permission:"low-level-read",here:"key",path:function(e){return"services/".concat(CC(e.key,e.id))},icon:function(e){return e.iconUrl},datasource:function(){return r.resourceSearcher(u,"services",{fields:"id,key,name,homeUrl,iconUrl"})},label:function(){return o("Service")},description:function(e){return e.homeUrl}}),I({emptyIcon:n(54679),permission:"low-level-read",here:"name",path:function(e){return"authmodules/".concat(CC(e.name,e.id))},datasource:function(){return r.resourceSearcher(g,"authmodules",{fields:"id,name"})},label:function(){return o("Auth Module")}}),I({emptyIcon:n(44275),permission:"low-level-read",here:"name",path:function(e){return"keystores/".concat(CC(e.name,e.id))},datasource:function(){return r.resourceSearcher(d,"keystores",{fields:"id,name"})},label:function(){return o("SSL Keystore")}}),I({emptyIcon:n(72659),permission:"low-level-read",here:"name",path:function(e){return"certificates/".concat(CC(e.name,e.id))},datasource:function(){return r.resourceSearcher(p,"certificates",{fields:"id,name"})},label:function(){return o("Trusted SSL Certificates")}})}))}]);const wI=yI.name;n(34553),n(68673);var _I=n(26880),jI=n.n(_I),xI=(0,Pn.Z)(),EI=o().module("Ring.docked-panel",[]);EI.directive("rgDockedPanel",["$parse",function(e){return{link:function(t,n,r){var o,i,a,s,c=jI().dockedPanel,l=jI().fixed,g=r.rgDockedPanelClass||"",u=r.rgDockedPanelConfig?e(r.rgDockedPanelConfig)(t):null,d=n[0];function p(e){var t=e.getBoundingClientRect();return t.top+t.height+A()}function A(){return u&amp;&amp;u.scrollContainer?u.scrollContainer.scrollTop:(0,I.c6)()}function C(){var e=d.getBoundingClientRect();e.top+e.height&gt;(u&amp;&amp;u.scrollContainer?u.scrollContainer.getBoundingClientRect().height:(0,I.gp)())&amp;&amp;!i?(u&amp;&amp;(u.beforeDock&amp;&amp;t.$eval(u.beforeDock(n)),u.className&amp;&amp;d.classList.add(u.className)),d.classList.add(l),g&amp;&amp;d.classList.add(g),i=!0):i&amp;&amp;e.top+e.height+A()&gt;=((u||{}).container?p(u.container):o)+8&amp;&amp;(u&amp;&amp;(u.beforeUndock&amp;&amp;t.$eval(u.beforeUndock(n)),u.className&amp;&amp;d.classList.remove(u.className)),d.classList.remove(l),g&amp;&amp;d.classList.remove(g),i=!1)}d.classList.add(c),a=function(){C(),u&amp;&amp;u&amp;&amp;u.onResize&amp;&amp;t.$eval(u.onResize(n,i))},s=function(){return xI(C)},t.$applyAsync((function(){var e=(u||{}).scrollContainer||window;e.addEventListener("scroll",s),window.addEventListener("resize",a),t.$on("$destroy",(function(){e.removeEventListener("scroll",s),window.removeEventListener("resize",a)})),xI((function(){o=p(d),C()}))}))}}}]);const SI=EI.name;var TI=angular.module("HUB.form.save",[Je,SI]);TI.component("formSave",{template:n(42266),transclude:!0,require:{hubResourceCtrl:"^?hubResource"},bindings:{item:"&lt;",draft:"=?",resource:"&lt;?",collections:"&lt;?",items:"&lt;",skip:"&lt;?",dirty:"=?",beforeSave:"&amp;",afterSave:"&amp;",beforeCancel:"&amp;",afterCancel:"&amp;",itemModifier:"&amp;?",panelClass:"@?",errorId:"@?",onDirtyChange:"&amp;?"},controller:["$scope","$location","$attrs","$q","hubNotify","HubErrorMessageBundle",function(e,t,n,r,o,i){var a=this;this.getFields=function(e,t){var n={id:e.id,type:e.type};if(t)for(var r in e)e.hasOwnProperty(r)&amp;&amp;(angular.equals(e[r],t[r])||(n[r]=angular.copy(e[r])));else n=angular.copy(e);return a.skip&amp;&amp;a.skip.forEach((function e(t){var r=t.split("."),o=n;do{var i=r.shift();if(!r.length&amp;&amp;(Reflect.deleteProperty(o,i),!Object.keys(o).length)){var a=t.replace(/\.[^.]+$/,"");a!==t&amp;&amp;e(a)}o=o[i]}while(r.length&amp;&amp;o)})),n},this.saveItem=function(e,t){var s=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:null,c=a.getFields(e,t);a.itemModifier&amp;&amp;(c=a.itemModifier({item:c}));var l=[];return Object.keys(a.collections||[]).forEach((function(n){var r=a.collections[n],o=(t[n]||[]).slice(),i=(e[n]||[]).slice();i.forEach((function(t){-1===o.findIndex((function(e){return e.id===t.id}))&amp;&amp;l.push(r.save({id:e.id},t))})),o.forEach((function(t){-1===i.findIndex((function(e){return e.id===t.id}))&amp;&amp;l.push(r.delete({id:e.id,subId:t.id}))})),Reflect.deleteProperty(c,n)})),(a.hubResourceCtrl||a).resource.save({id:e.id},c).$promise.then(r.all(l)).then((function(){if(n.draft){var r=null!==s?a.items[s]:a.item;for(var o in a.getFields(e,t))e.hasOwnProperty(o)&amp;&amp;(r[o]=angular.copy(e[o]))}}),(function(e){return o.error(i.msg(e)),r.reject(e)}))},this.finish=function(){var e=a.afterSave({old:a.draft,new:a.original});return r.when(e).then(a.syncToForm.bind(a))},this.save=function(){return a.saving=!0,r.when(a.beforeSave({old:a.draft,new:a.original})).then((function(){return n.item?a.saveItem(a.draft,a.original):n.items?r.all(a.draft.map((function(e,t){return a.saveItem(e,a.original[t],t)}))):void 0})).then(a.finish,(function(e){console.error("form was not saved",e)})).finally((function(){a.saving=!1}))},this.reset=function(){a.beforeCancel({old:a.draft,new:a.original});var e=function(e,t){var n=angular.copy(t);for(var r in e)e.hasOwnProperty(r)&amp;&amp;(e[r]=n[r])};if(n.item)e(a.draft,a.original);else if(n.items)for(var t=0;t&lt;a.draft.length;t++)e(a.draft[t],a.original[t]);a.afterCancel({old:a.draft,new:a.original})},this.syncToForm=function(){n.item?(n.draft?a.draft=angular.copy(a.item):a.draft=a.item,a.original=angular.copy(a.item),a.checkItem()):n.items&amp;&amp;(n.draft?a.draft=angular.copy(a.items):a.draft=a.items,a.original=angular.copy(a.items),a.checkItem())},this.checkItem=function(){n.item?a.dirty=!angular.equals(a.getFields(a.draft||{}),a.getFields(a.original||{})):n.items&amp;&amp;(a.dirty=!angular.equals((a.draft||[]).map(a.getFields),(a.original||[]).map(a.getFields)))},this.$onInit=function(){e.$watch("$ctrl.draft",a.checkItem,!0),e.$watch("$ctrl.dirty",(function(e){a.onDirtyChange&amp;&amp;a.onDirtyChange({$isDirty:e})}))},this.panelClass="form-controls__button-group",this.$onChanges=function(e){if(e.item&amp;&amp;e.item.currentValue){var t=e.item.currentValue;t.$promise?t.$promise.then(a.syncToForm):a.syncToForm()}else e.items&amp;&amp;e.items.currentValue&amp;&amp;a.syncToForm()},this.keyMap={comboSubmit:function(e){a.save(),e.preventDefault()},cancel:function(e){a.reset(),e.preventDefault()},skip:function(){}}}]});const MI=TI.name;var LI=angular.module("HUB.form-controls.directives",[]);LI.directive("arrayAsTextarea",["$parse",function(e){return{restrict:"A",require:"ngModel",link:function(t,n,r,o){if(e(r.arrayAsTextarea)(t)){var i=e(r.parseElement)(t)||function(e){return e},a=e(r.formatElement)(t)||function(e){return e};o.$parsers.push((function(){return(arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:"").split("\n").filter((function(e){return e})).map(i)})),o.$formatters.push((function(){return(arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:[]).map(a).join("\n")}))}}}}]),LI.directive("modelValidators",["$parse","RingMessageBundle",function(e,t){return{restrict:"A",require:"ngModel",link:function(n,r,o,i){var a=e(o.modelValidators)(n);a&amp;&amp;Object.keys(a).forEach((function(e){var n=a[e];t["form_".concat(e)]=n.message,n.async?i.$asyncValidators[e]=n.fn:i.$validators[e]=n.fn}))}}}]);const kI=LI.name;var OI=n(70145),PI=n.n(OI);function NI(e){return NI="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},NI(e)}function DI(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function RI(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?DI(Object(n),!0).forEach((function(t){UI(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):DI(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function UI(e,t,n){return t=function(e){var t=function(e,t){if("object"!==NI(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==NI(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===NI(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var zI=angular.module("HUB.form.controls",[F]);zI.component("formControlText",{transclude:!0,template:n(54697),bindings:{label:"@?",text:"@?",description:"@?",bold:"@?"}}),zI.component("formControlFullText",{transclude:!0,template:n(55637),bindings:{bold:"@?"}}),zI.component("formControlTextCopy",{transclude:!0,template:n(16596),bindings:{label:"@?",successMessage:"@?",text:"@?",description:"@?",bold:"@?",extraClass:"@?",buttonOnly:"&lt;?"},controller:["hubNotify","i18n",function(e,t){this.copy=function(){var n=this.successMessage?this.successMessage:this.label+t(" copied to clipboard");PI().copy(this.text).then(e.successHandler(n),e.errorHandler(t("Your browser doesn't support copying to clipboard")))}}]}),zI.component("formControlLink",{template:n(17738),bindings:{label:"@?",link:"@",description:"@?"}}),zI.component("formControlSeparator",{template:'&lt;div class="ring-line ring-line_separated line"&gt;&lt;/div&gt;'}),zI.component("formControlDescription",{transclude:!0,template:'&lt;div class="ring-form__control__description" ng-transclude&gt;&lt;/div&gt;'});var $I={template:n(62761),transclude:{description:"?description",controls:"?controls"},bindings:{label:"@?",selectLabel:"@?",instant:"&lt;?",model:"=",options:"@",config:"=?",disabled:"&lt;?",required:"&lt;?",noFilter:"&lt;?",modelType:"@?",validators:"&lt;?",showWarning:"&lt;?"}},GI=function(e,t,n,r){e.lazy=!e.instant,e.selectType=r,e.optionsScope=e.optionsScope?e.optionsScope:t.$parent};zI.component("formControlSelect",RI(RI({},$I),{},{controller:["$scope","$attrs",function(e,t){GI(this,e,0,"button")}]})),zI.component("formControlCombo",RI(RI({},$I),{},{template:n(26689),controller:["$scope","$attrs",function(e,t){var n=this;this.config={filter:!1},GI(this,e,0,"suggest"),this.selectOption=function(e){n.model=e.label},this.onComboInputKeyPress=function(){n.selectInstance._popup.isVisible()||n.selectInstance._clickHandler(),n.config.onFilter&amp;&amp;n.config.onFilter(n.model)}}]})),zI.component("formControlEditText",{template:n(28820),transclude:{description:"?description"},bindings:{label:"@?",description:"@?",placeholder:"@?",pattern:"@?",help:"@?",extraClass:"@?",size:"@?",name:"@?",model:"=",min:"@?",max:"@?",type:"@?",disabled:"&lt;?",required:"&lt;?",validators:"&lt;?",showWarning:"&lt;?"},controller:function(){this.size=this.size||"md"}}),zI.component("formControlEditTextarea",{template:n(97074),transclude:{content:"?content",description:"?description"},bindings:{label:"@?",description:"@?",placeholder:"@?",extraClass:"@?",name:"@?",model:"=",disabled:"&lt;?",required:"&lt;?",array:"&lt;?",parser:"&lt;?",formatter:"&lt;?",validators:"&lt;?"}}),zI.component("formControlToggle",{template:n(95123),transclude:{description:"?description"},bindings:{label:"@?",description:"@?",model:"=",disabled:"&lt;?",bold:"@?"},controller:function(){var e=this;this.toggle=function(t){var n=t.target.checked;e.model=n}}}),zI.component("formControlButtonToggle",{template:n(75780),transclude:{description:"?description"},bindings:{label:"@?",primaryLabel:"@",secondaryLabel:"@",primaryHint:"@?",secondaryHint:"@?",description:"@?",model:"=",disabled:"&lt;?",bold:"@?",inverted:"@?"},controller:["i18n",function(e){var t=this;this.primaryLabel=this.primaryLabel||e("Enabled"),this.secondaryLabel=this.secondaryLabel||e("Disabled"),this.toggle=function(e){t.model=t.inverted?!e:e},this.isActive=function(e){return t.model===(t.inverted?!e:e)}}]}),zI.component("formControlEnum",{template:n(83267),transclude:{description:"?description"},bindings:{label:"@?",items:"&lt;",model:"=",disabled:"&lt;?",bold:"@?"},controller:function(){var e=this;this.set=function(t){e.model=t},this.isActive=function(t){return e.model===t}}}),zI.component("formControlIcon",{template:n(26138),transclude:!0,bindings:{label:"@?",description:"@?",model:"=",modelType:"@?",disabled:"&lt;?"}}),zI.component("formControlExpander",{template:n(73542),transclude:{details:"expanderDetails",status:"?expanderStatus"},bindings:{label:"@?",opened:"&lt;?"},controller:function(){var e=this;this.toggle=function(){e.opened=!e.opened}}});const BI=zI.name,FI=angular.module("HUB.form",[MI,BI,kI]).name;n(29254);var ZI=n(67183),YI=n(29135),WI=angular.module("HUB.user-duplicates-find",[]);WI.controller("UserDuplicatesFind",["$scope","$location","$route","$routeParams","i18n","DuplicateUserResource",function(e,t,n,r,o,i){e.findDuplicatesOptions=[],e.loadReliabilities=function(){return i.getReliabilities().$promise},e.getReliabilityLabel=function(e){return"".concat({name_email:o("Users with same emails and similar names"),email:o("Users with same emails"),something:o("Users having at least something in common")}[e.id]||e.id,"â€¦")},e.onReliabilitySelect=function(o){t.path("users/duplicates"),t.search("reliability",o.id),t.search("query",e.query||r.query),n.reload()}}]);const HI=WI.name;n(23123),n(26541);var qI=angular.module("HUB.directives.email-list",[]),QI=/^([a-z0-9!#$%&amp;'*+\/=?^_`{|}~.-]+)@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i;qI.directive("emailList",(function(){return{require:"ngModel",link:function(e,t,n,r){function o(e){if(e){var t=e.split(/\s+/),n=t.every((function(e){return!e||QI.test(e)}));return r.$setValidity("email",n),t}return r.$setValidity("email",!0),e}r.$parsers.unshift(o),n.$observe("required",(function(e){o(e&amp;&amp;r.$viewValue)}))}}}));const VI=qI.name;var KI=n(63216),JI=n(9539),XI=n.n(JI),ef=angular.module("hub-components.authmodule",[]);ef.provider("authModule",(function(){var e=function(e,t){return t&amp;&amp;angular.forEach(t,(function(t){e[t]=!0})),e},t=function(e){return Object.keys(e).join(",")},n=[],r={},o={},i=e({},["id","name","ordinal","serverUrl","disabled","autoJoinGroups(id,name,iconUrl)"]),a=[],s=e({},["id","authModule(id,name,disabled,serverUrl)","authModuleName","email","lastAccessTime","lastAccessAddress","lastAccessUserAgent","disabled"]),c={},l={},g={},u={},d={},p={};function A(e,t){return function(n){var r=n.details||[],o=[{option:t(n)}];return angular.forEach(r,(function(t){var n=e[t.type];if(n){var r=n(t);r&amp;&amp;o.push({option:r,detail:t})}})),o}}this.addModulePlugin=function(t){n.push(t),r[t.module.type]=t.name,o[t.module.type]=t.module,e(i,t.module.fields),t.module.create&amp;&amp;angular.forEach(t.module.create,(function(e){a.push(XI()({},{name:t.name,title:t.title,item:{type:t.module.type}},e))})),t.detail&amp;&amp;angular.forEach(t.detail,(function(t){e(s,t.fields),l[t.type]=t.getName,g[t.type]=t.getLogin,u[t.type]=t.getExtraFields,p[t.type]=t.canBeDisabled,c[t.type]=t.changePasswordTemplate,d[t.type]=t.externalChangePassword}))},this.$get=["i18n",function(e){return{getPlugins:function(){return n},getModuleTypeName:function(t){var n=r[t.type];return n&amp;&amp;n(e)||e("Authorization Module")},moduleFields:t(i),getModuleTemplate:function(e){return o[e.type]&amp;&amp;o[e.type].template},getHeaderTemplate:function(e){return o[e.type]&amp;&amp;o[e.type].headerTemplate},getTabs:function(e){return o[e.type]&amp;&amp;o[e.type].getTabs(e)||[]},getModuleLoginTestTemplate:function(e){return o[e.type]&amp;&amp;o[e.type].testLoginTemplate},getModuleTestSettingsTemplate:function(e){return o[e.type]&amp;&amp;o[e.type].testSettingsTemplate},isModuleDeletable:function(e){return o[e.type]&amp;&amp;o[e.type].deletable},getDocumentationLink:function(e){return(o[e.type]||{}).getDocumentationLink(e)},isExternalChangePassword:function(e){return d[e.type]},getChangePasswordTemplate:function(e){return c[e.type]},getSyncIntervals:function(){return[{value:" ",tracker:"disabled",label:e("Off")},{value:"0 0 0/1 * * ?",tracker:"e1h",label:e("Hourly")},{value:"0 0 0/3 * * ?",tracker:"e3h",label:e("Every 3 hours")},{value:"0 0 9 * * ?",tracker:"ed9am",label:e("Daily at 9 AM")}]},moduleCreateOptions:a,detailFields:t(s),getEmail:function(e){return e.email&amp;&amp;e.email.email},getName:function(e){var t=l[e.type];return t&amp;&amp;t(e)},getLogin:function(e){var t=g[e.type];return t&amp;&amp;t(e)},getExtraFields:function(e,t){var n=u[e.type];return n&amp;&amp;n(e,t)},getDisabledState:function(e){return p[e.type]},getNameOptions:A(l,(function(e){return e.name})),getLoginOptions:A(g,(function(e){return e.login}))}}]}));const tf=ef.name;function nf(e){return nf="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},nf(e)}function rf(e){return function(e){if(Array.isArray(e))return of(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return of(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?of(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function of(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function af(){af=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==nf(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function sf(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function cf(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function lf(e,t,n){return t=function(e){var t=function(e,t){if("object"!==nf(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==nf(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===nf(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var gf=/([a-z\u0400-\u04FF0-9!#$%&amp;'*+\\/=?^_`{|}~.-]+)@[a-z\u0400-\u04FF0-9]([a-z\u0400-\u04FF0-9-]*[a-z\u0400-\u04FF0-9])?(\.[a-z\u0400-\u04FF0-9]([a-z\u0400-\u04FF0-9-]*[a-z\u0400-\u04FF0-9])?)*/i,uf=new RegExp("^".concat(gf.source,"$"),"i"),df=new RegExp('^("(.*)"\\s*&lt;\\s*('.concat(gf.source,")\\s*&gt;)|(").concat(gf.source,")$"),"i"),pf=/^[\w\u00C0-\u01BF\u01C4-\u024F\u0400-\u04FF@$+=|.-]+$/,Af=angular.module("hub-components.user-profile-general",[Md,tf,md,yl(),Op]).constant("emailRegexp",uf).constant("personalEmailRegexp",df).constant("loginRegexp",pf).factory("hubUserLicenseTypes",["i18n","$rootScope",function(e,t){var n="STANDARD_USER",r="AGENT",o="REPORTER",i=function(){var t=lf(lf(lf({},n,e("Standard users can work with all of the features that are supported in YouTrack, but have limited access to features in helpdesk projects.")),o,e("Reporters are usually customers or external users who generate support requests from an available support channel in a helpdesk project. These users can only view and interact with their own tickets.")),r,e("Agents can access features tailored exclusively for customer support, including posting public comments in helpdesk projects. They also have access to the same level of functionality as standard users in standard projects for issue tracking."));return[{id:n,label:e("Standard user"),labelPlural:e("Standard users"),queryToken:"Standard user",typeDescription:t[n]},{id:r,label:e("Agent"),labelPlural:e("Agents"),queryToken:"Agent",typeDescription:t[r]},{id:o,label:e("Reporter"),labelPlural:e("Reporters"),queryToken:"Reporter",typeDescription:t[o]}].map((function(e){return function(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?cf(Object(n),!0).forEach((function(t){lf(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):cf(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({key:e.id},e)}))},a=function(e,t){return!!e.userType&amp;&amp;e.userType.id===t},s={types:i(),ids:{STANDARD_USER_ID:n,AGENT_ID:r,REPORTER_ID:o},isReporter:function(e){return a(e,o)},isAgent:function(e){return a(e,r)},isContributor:function(e){return a(e,n)}};return t.$on("translationsReady",(function(){s.types=i()})),s}]).factory("hubUserSharedGeneralProfile",["i18n","filterFilter","authModule","$q","dialog","hubNotify","HubErrorMessageBundle","hcUserAgreement","hubUserLicenseTypes",function(e,t,r,o,i,a,s,c,l){return function(t,p,A){var C=p,I=A,f=t,m=function(e,t){return[].concat(rf(e.profile?[e.profile]:[]),rf(e.details||[])).reduce((function(e,n){return function(e,t,n){if(t&amp;&amp;t[n]){var r=angular.lowercase(t[n]);e[r]?e[r].verified=e[r].verified||t.verified:e[r]={option:t[n],verified:t.verified}}}(e,n[t],t),e}),{})}(f,"email");return{licenseTypes:l,nameDatasource:g(r.getNameOptions(f),u),loginDatasource:g(r.getLoginOptions(f),u),emailDatasource:g(Object.keys(m).map((function(e){return m[e]})),d),VCSUserNamesModel:{parser:function(e){return{name:e}},formatter:function(e){return e.name}},validators:{login:{loginMinLength:{fn:function(e){return e&amp;&amp;e.length&gt;=2},message:function(){return e("should be at least {{ loginLength }} characters long",{loginLength:2})}},loginMaxLength:{fn:function(e){return e&amp;&amp;e.length&lt;=40},message:function(){return e("should be at most {{ loginLength }} characters long",{loginLength:40})}},loginRegExp:{fn:function(e){return pf.test(e)},message:function(){return e("can contain only digits, letters and symbols: $ + = | . - @")}},loginBusy:{async:!0,fn:function(e){return o.when(C({query:"login: {".concat(e,"} and not id: {").concat(f.id,"}"),fields:"id"})).then((function(e){var t=e.users||e;return!(t&amp;&amp;t.length&gt;0)||o.reject("login exists")}))},message:function(){return e("login is already taken")}}},email:{emailRegExp:{fn:function(e){return!e||uf.test(e)},message:function(){return e("is not a valid email")}}}},downloadUserPersonalData:function(e){return I.downloadUserPersonalData(f.id).then((function(t){(0,KI.saveAs)(new Blob([t],{type:"text/plain;charset=utf-8"}),"".concat(f.name," data.csv")),e()})).catch((function(){return e()}))},selectAvatar:function(){return y.apply(this,arguments)},verifyEmail:function(e){return w({email:e},"verify-email")},verifyUnverifiedEmail:function(e){return w({unverifiedEmail:e},"verify-email")},showEndUserAgreement:function(){return c.showDialog(!0,!0)},revokeUserAgreementConsent:function(){a.confirm({label:e("Revoke Agreement"),description:e("The product owner has enabled this user agreement as a condition for using this service. If you revoke your acceptance, you are logged out and will be unable to log back in unless you accept the agreement."),okButtonLabel:e("Revoke"),actionPromise:function(){return I.revokeUserAgreement()}}).then((function(){return c._onDecline()}))},revokeEmail:function(){return I.updateUser({id:f.id,profile:{unverifiedEmail:{type:"EmailJSON",email:""}}})}};function h(t,n,r){for(var o=!1,i=0;i&lt;t.target.files.length;i++){var a=t.target.files[i];if(0===a.type.indexOf("image/")){o=!0;var s=new FileReader;s.onload=function(e){return n({avatarUrl:e.target.result,type:"urlavatar"})},s.readAsDataURL(a);break}}t.target.files.length&amp;&amp;!o&amp;&amp;r(e("No image file was selected"))}function v(e){var t=e||{};return I.updateUser({id:f.id,profile:{avatar:t}}).then((function(){var e=f.profile.avatar;e.version=(e.version||1)+1}))}function b(e){var t="string"==typeof e?e:s.msg(e,"upload-avatar");return a.error(t)}function y(){var t;return t=af().mark((function t(){var r;return af().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=[{label:e("Default Avatar"),type:"defaultavatar",url:I.getDefaultUserAvatar(f.name)}],f.profile&amp;&amp;f.profile.email&amp;&amp;f.profile.email.email&amp;&amp;r.push({label:e("Gravatar"),type:"gravatar",url:I.getUserGravatar(f.profile.email.email)}),angular.forEach(f.details,(function(e){var t=e.avatar;t&amp;&amp;r.push({label:e.authModuleName,type:"urlavatar",avatarUrl:t,url:t})})),t.abrupt("return",i.show({template:n(95089),data:{user:f,avatars:r,select:function(e){i.done(e)}},description:e("You can upload a JPG, GIF or PNG file"),buttons:[{label:e("Upload Avatar"),default:!0,action:function(){var e=function(e){e.stopPropagation()};return o((function(t,n){var r=document.getElementById("avatar-upload-input");r&amp;&amp;(r.addEventListener("change",(function(e){return h(e,t,n)})),r.addEventListener("click",e),r.click(),r.removeEventListener("click",e))}))}},{label:e("Cancel")}]}).then(v).catch(b));case 4:case"end":return t.stop()}}),t)})),y=function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(e){sf(i,r,o,a,s,"next",e)}function s(e){sf(i,r,o,a,s,"throw",e)}a(void 0)}))},y.apply(this,arguments)}function w(t,n){return I.verifyUserEmail(f.id,t).then(a.successHandler(e("Sent contact verification message")),a.errorHandler(n))}};function g(e,n){return function(r,o,i){return t(e,{option:r},i).slice(0,o).map((function(e){return function(e,t){return e.description=t(e),e.key=e.option+e.description,e.label=e.option,e}(e,n)}))}}function u(t){return t.detail&amp;&amp;t.detail.authModuleName||e("Current")}function d(t){return t.verified?e("verified"):e("verification is required")}}]);const Cf=Af.name;var If=angular.module("HUB.settings",[SC]);function ff(e,t){return e&amp;&amp;e.settings?e.settings.filter((function(e){return e.type===t}))[0]:null}If.factory("settingsUtils",["SettingsResource","SettingsTestResource","HubErrorMessageBundle","userPermissions","dialog","hubNotify","i18n","loaderScreen",function(e,t,r,o,i,a,c,l){return{findSetting:ff,loadSettings:function(t){return l.startLoading(),e.query({fields:"id,locale(name,language,label,community),companyLogo,loginMessage,loginFieldPlaceholder,helpdeskEnabled,emailVerificationRequired,enabled,host,port,smtpAnonymous,passwordDefined,protocol,from,serviceName,SASLEnabled,login,keyStore(id,name),tokenInterval,sessionInterval,rememberMeInterval,hashAnonymization,captchaPublicKey,captchaPrivateKey,databaseReadonly,whiteList,cooldownValue,cooldownPeriodSec,maxFailuresPerKey,maxTrackingKeys,blockedKeys(timeUntilNextCooldown,items[11](key,description)),certificateHeader,emailAttributeName,endUserAgreement(enabled,text,majorVersion,minorVersion),debugCategories,hostServiceName,hostServiceApplicationName",$top:-1}).$promise.then((function(e){return l.stopLoading(),t?ff(e,t):e}))},isReadOnly:function(){return o.load().then((function(e){return e.has("low-level-read")&amp;&amp;!e.has("low-level")}))},toggleEnabled:function(t){var n=!t.enabled;return e.save({id:t.id},{enabled:n,type:t.type}).$promise.then((function(){return n}))},resetSettings:function(t){var n=c("Do you actually want to reset {{settingsName}} settings?",{settingsName:t.type});return a.confirm({label:n,okButtonLabel:c("Reset"),actionPromise:function(){return e.reset({id:t.id}).$promise}})},resetPassword:function(t){return e.save({id:t.id},{type:t.type,password:""}).$promise},testMessageDialog:function(e,t){var r=this;return i.show({template:n(28442),data:t,buttons:[{label:c("Send"),default:!0,close:!0,action:function(n){return r.sendTestMessage(e,n.contact),t.contact}},{label:c("Cancel")}]})},sendTestMessage:function(e,n){var o=a.loading(c("Sending test message to {{contact}}",{contact:n}));t.save({id:e.id,contact:n},{}).$promise.then((function(){a.success(c("Test message has been successfully sent to {{contact}}",{contact:n}))}),(function(e){a.error(r.msg(e,"test-notification-settings"))})).then((function(){return s.Z.removeWithoutAnimation(o)}))}}}]),If.controller("SettingsNotificationCtrl",["$scope","SettingsResource","SettingsTestResource","settingsUtils","dialog","i18n","hubNotify","HubErrorMessageBundle",function(e,t,r,o,i,a,s,c){var l=!1;e.isFormDirty=!1,e.notificationSettings={},e.loading=!1,e.readOnly=!1,e.testContact="",e.editContactGlyph=n(89891),e.headerTemplate=n(1118),e.configureButtonTemplate=n(57252);var g="".concat(e.settingsType,"-test-contact"),u=new Yl.Z;function d(t){e.testContact=t}function p(){e.loading=!0,o.loadSettings(e.settingsType).then((function(t){e.notificationSettings=t,l||(l=!0,e.ready=e.notificationSettings.enabled||e.isDirtyForm())})).finally((function(){e.loading=!1}))}u.get(g).then(d),o.isReadOnly().then((function(t){e.readOnly=t})),p(),e.changePassword=function(){var r=e.notificationSettings;i.show({template:n(46447),buttons:[{label:a("Change"),default:!0,action:function(e){return r.passwordDefined=e.password,t.save({id:r.id},{type:r.type,password:e.password||""}).$promise}},{label:a("Cancel")}]})},e.resetPassword=function(){return o.resetPassword(e.notificationSettings).then((function(){e.notificationSettings.passwordDefined=!1}))},e.testContactDialog=function(){var t={contact:e.testContact,contactLabel:e.contactLabel,sending:!1,type:e.contactType};return o.testMessageDialog(e.notificationSettings,t).then((function(e){if(e)return d(e),u.set(g,e)}))},e.sendTestContact=function(){return o.sendTestMessage(e.notificationSettings,e.testContact)},e.toggle=function(){return o.toggleEnabled(e.notificationSettings).then((function(t){e.notificationSettings.enabled=t}),(function(e){s.error(c.msg(e))}))},e.remove=function(){return o.resetSettings(e.notificationSettings).then((function(){e.ready=!1,p()}))},e.isInvalidForm=function(){return e.requiredFieldsForTest.some((function(t){return!e.notificationSettings[t]}))},e.isDirtyForm=function(){return e.requiredFieldsForTest.some((function(t){return e.notificationSettings[t]}))},e.setReady=function(){return e.ready=!0},e.getSendTooltip=function(){return a("Send test message to {{contact}}",{contact:e.testContact})},e.changeContactTooltip=a("Change test contact address")}]);const mf=If.name;function hf(e){return hf="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},hf(e)}function vf(e){return function(e){if(Array.isArray(e))return bf(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return bf(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?bf(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function bf(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function yf(){yf=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==hf(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function wf(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _f(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?wf(Object(n),!0).forEach((function(t){jf(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):wf(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function jf(e,t,n){return t=function(e){var t=function(e,t){if("object"!==hf(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==hf(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===hf(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function xf(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function Ef(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){xf(i,r,o,a,s,"next",e)}function s(e){xf(i,r,o,a,s,"throw",e)}a(void 0)}))}}var Sf="user-type-filter",Tf=new Yl.Z,Mf=angular.module("HUB.components.user-type-filter",[Cf,mf]);Mf.factory("getHubUserTypeFilters",["hubUserLicenseTypes","settingsUtils",function(e,t){function n(){return n=Ef(yf().mark((function t(){return yf().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Promise.all(e.types.map(function(){var t=Ef(yf().mark((function t(n){var r;return yf().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Tf.get([Sf,n.id.toLowerCase()].join(":"));case 2:return r=t.sent,t.abrupt("return",_f(_f({},n),{},{enabled:"boolean"==typeof r?r:!e.isReporter({userType:n})}));case 4:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()));case 2:return t.abrupt("return",t.sent);case 3:case"end":return t.stop()}}),t)}))),n.apply(this,arguments)}return function(){return t.loadSettings("public").then((function(e){return e&amp;&amp;e.helpdeskEnabled?function(){return n.apply(this,arguments)}():[]}))}}]),Mf.factory("getHubUserTypeFilterQuery",["getHubUserTypeFilters",function(e){return function(){var t=Ef(yf().mark((function t(n){var r,o,i,a;return yf().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(t.t0=n,t.t0){t.next=5;break}return t.next=4,e();case 4:t.t0=t.sent;case 5:if(r=t.t0,(o=r.filter((function(e){return!!e.enabled}))).length!==r.length){t.next=9;break}return t.abrupt("return","");case 9:return i=o.some((function(e){return"STANDARD_USER"===e.id}))?["is:guest"]:[],a=[].concat(i,vf(o.map((function(e){var t=e.queryToken;return"type:{".concat(t,"}")})))).join(" or "),t.abrupt("return","(".concat(a,")"));case 12:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()}]),Mf.component("hubUserTypeFilter",{template:n(57873),controller:["$scope","getHubUserTypeFilterQuery","getHubUserTypeFilters","$route",function(e,t,n,r){var o=this;n().then((function(e){o.userTypes=e})),o.enableUserTypeFilter=function(){var e=Ef(yf().mark((function e(t){return yf().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o.userTypes=o.userTypes.map((function(e){return e.id===t.id?_f(_f({},e),{},{enabled:!t.enabled}):e})),e.next=3,Tf.set([Sf,t.id.toLowerCase()].join(":"),!t.enabled);case 3:r.reload();case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()}]});const Lf=Mf.name;var kf=n(81346),Of=n.n(kf),Pf=o().module("hub-components.custom-user-attributes",[]);Pf.factory("hubCustomUserAttributes",["i18n",function(e){var t=function(e){return e&amp;&amp;Of()(e).isValid()?Of()(e).getNumber("international"):e};return{processPhoneNumber:t,processValue:function(e){var n=e.value;switch(e.prototype.type.toLowerCase()){case"password":return;case"phone":return t(n);case"number":return n?parseInt(n,10):null;default:return n}},getModelOptions:function(t){var n=(t&amp;&amp;t.prototype&amp;&amp;t.prototype.type||"").toLowerCase();switch(n){case"password":return{type:"password",placeholder:"********"};case"phone":return{type:"tel",description:e("Enter a telephone number with international country code, for example: +1 123 4567 8910"),validators:{phoneInvalid:{fn:function(e){return!e||Of()(e).isValid()},message:function(){return e("Should be a valid phone number")}}}};case"number":return{type:n,max:1e17,min:-1e17};case"email":return{pattern:"[a-z0-9!#$%&amp;'*+/=?^_`{|}~-]+(?:.[a-z0-9!#$%&amp;'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?",description:e("Enter a complete email address, for example: email@address.com")};default:return{}}}}}]);const Nf=Pf.name;var Df=angular.module("HUB.components.user-profile-field",[Nf]);Df.component("userProfileField",{template:n(57232),bindings:{model:"=",disabled:"&lt;?",showWarning:"&lt;?"},controller:["$scope","i18n","hubCustomUserAttributes",function(e,t,n){var r=e.$ctrl;e.value=n.processValue(r.model),e.modelOptions=n.getModelOptions(r.model),e.$watch("value",(function(e,t){var o=null!=e?e+"":null;r.model.value!==o&amp;&amp;e!==t&amp;&amp;("phone"===r.model.prototype.type.toLowerCase()?r.model.value=n.processPhoneNumber(o):r.model.value=o)}))}]});const Rf=Df.name;var Uf=n(864),zf=n(83740),$f=n.n(zf),Gf=function(e,t){return{banned:e.banBadge||t("banned"),unverified:t("unverified"),online:t("online"),offline:t("offline"),copyToClipboard:t("Copy email to clipboard"),copiedToClipboard:t("Email was copied to clipboard"),copingToClipboardError:t("Failed to copy to clipboard")}},Bf=function(e){var t=e.user,n=e.children,r=e.i18n,o=e.serverUri,a="AGENT"===(t.userType||{}).id,s="REPORTER"===(t.userType||{}).id,c=(0,i.useMemo)((function(){return function(e,t){var n=e.profile.email;return{name:e.name,login:e.login,banned:e.banned,banReason:e.banReason,banBadge:e.banBadge,email:n&amp;&amp;n.email,unverifiedEmail:"boolean"==typeof(n&amp;&amp;n.verified)?!n.verified:void 0,avatarUrl:e.profile.avatar.url,href:"".concat(t,"users/").concat(IC(e.login,e.id))}}(t,o||"")}),[t]),l=(0,i.useMemo)((function(){return c.unverifiedEmail&amp;&amp;s?i.createElement(Ca.Z,{title:r("Reporter with an unverified email address")},i.createElement(da.ZP,{className:"hub-user-card-tooltip__user-reporter-mark",glyph:$f(),size:da.ZP.Size.Size20})):void 0}),[c,s]);return i.createElement(Uf.Z,{info:i.createElement("span",{className:"hub-user-card-tooltip__user-type"},a&amp;&amp;i.createElement(io.Z,{gray:!0},r("Agent")),s&amp;&amp;i.createElement(io.Z,{gray:!0},r("Reporter"))),avatarInfo:l,user:c,wording:Gf(t,r)},n)};Bf.propTypes={user:Zg().object.isRequired,i18n:Zg().func.isRequired,serverUri:Zg().string,children:Zg().node};const Ff=Bf;var Zf=n(95984),Yf=n.n(Zf);function Wf(e){return Wf="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Wf(e)}var Hf=["id","label","typeDescription"];function qf(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Qf(e,t,n){return t=function(e){var t=function(e,t){if("object"!==Wf(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Wf(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Wf(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Vf=function(e){var t=e.id,n=e.label,r=e.typeDescription,o=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||Object.prototype.propertyIsEnumerable.call(e,n)&amp;&amp;(o[n]=e[n])}return o}(e,Hf);return function(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?qf(Object(n),!0).forEach((function(t){Qf(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):qf(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({id:t,label:n,rgItemType:rC.Z.ListProps.Type.CUSTOM,template:i.createElement("div",{className:"optionContainer"},i.createElement("span",null,n),i.createElement(Ca.Z,{title:r,delay:200},i.createElement(da.ZP,{className:"yt-primary-icon-action ring-link ring-link_pseudo",glyph:Yf()})))},o)};var Kf=angular.module("HUB.user-list.create",[Ep,Cf,mf]);Kf.controller("UserListCreateCtrl",["$route","dialog","i18n","hubI18nPlural","UserResource","$location","$window","HubErrorMessageBundle","$q","$filter","settingsUtils","hubUserLicenseTypes","hubNotify",function(e,t,r,o,i,a,s,c,l,g,u,d,p){var A={successEmails:[],failedEmails:[],antiSpamBanError:"",progress:{total:0,done:0},state:0};function C(e){return r(e?"Create":"Invite")}this.createUserDialog=function(){A.state=0;var a={label:C(!1),default:!0,close:!1,action:function(t){var n,r,a=t.item.details[0];return a.email.email||(a.type="LoginuserdetailsJSON"),t.createAccount?function(e){return i.save({fields:"id"},e).$promise.then((function(e){return s.location.href=g("linkToHub")("users",e.login,e.id),e}),(function(e){return l.reject(c.msg(e,"create-resource"))}))}(t.item):(n=t.emails,r=t.item.userType,l((function(t,a){A.failedEmails=[],A.successEmails=[],A.progress.done=0,A.antiSpamBanError="",A.progress.total=n.length,A.state=1;var u=l.when();angular.forEach(n,(function(e){u=u.then((function(){return function(e,t){var n=t&amp;&amp;t.id||"STANDARD_USER";return i.invite({fields:"id",email:[e],userType:n},{}).$promise.then((function(t){t.length&gt;0&amp;&amp;(A.progress.done++,A.successEmails.push({email:e,error:null,id:t[0].id}))}),(function(t){A.progress.done++,"free_cloud_notification_number_email_constraint_today"!==t.data.error&amp;&amp;"email_number_constraint_today"!==t.data.error||(A.antiSpamBanError=c.msg(t,"create-resource")),A.failedEmails.push({email:e,error:c.msg(t,"create-resource")})}))}(e,r)}))})),u.then((function(){A.state=2,0===A.failedEmails.length?(t(),p.success(o.format("invite-success",A.successEmails.length,{email:A.successEmails[0].email})),1===A.successEmails.length?s.location.href=g("linkToHub")("users","",A.successEmails[0].id):e.reload()):a()}))})))}};return u.loadSettings("public").then((function(e){var o=e.helpdeskEnabled?d.types.map(Vf):[];return t.show({template:n(2231),autoWidth:!0,data:{hint:r("User will be prompted to change the password upon the next login with these credentials"),invite:A,createAccount:!1,userTypes:o,setMode:function(e){this.createAccount=e,a.label=C(e)},item:{details:[{type:"EmailuserdetailsJSON",email:{type:"EmailJSON",verified:!0},password:{type:"PlainpasswordJSON",value:""},passwordChangeRequired:!0}],userType:o[0]}},buttons:[a,{label:r("Cancel")}]})}))}}]);const Jf=Kf.name;var Xf=angular.module("HUB.user-list.sidebar",[zC,Rf]);Xf.controller("UserListSidebarCtrl",["$scope","GroupMemberResource","UserProjectRoleResource","userPermissions","hubCustomUserAttributes",function(e,t,n,r,o){var i=null;r.load().then((function(e){i=e})),e.canRemoveGroup=function(e,t){return i&amp;&amp;i.has("group-update",(t.project||{}).id)},e.removeGroup=function(e,n){return t.remove({id:n.id,subId:e.id}).$promise},e.canRemoveRole=function(e,t){return i&amp;&amp;i.has("role-manage",(t&amp;&amp;t.role||{}).id)},e.removeRole=function(e,t){return n.remove({id:e.id,subId:t.id}).$promise},e.getAttributeValue=o.processValue,e.roleHref=function(e){return"roles/".concat(CC(e.role.key,e.role.id))},e.groupHref=function(e){return"groups/".concat(CC(e.name,e.id))}}]);const em=Xf.name;var tm=n(46127);const nm={trackHubPageView:function(e){return tm.Z.trackEvent("hub-page","view",{page:e})},removeDashboardWidget:function(e){return tm.Z.trackEvent("hub-dashboard","widget-remove",{name:e})},restoreDashboardWidget:function(e){return tm.Z.trackEvent("hub-dashboard","widget-restore",{name:e})},createDashboardWidget:function(e){return tm.Z.trackEvent("hub-dashboard","widget-create",{name:e})},resizeDashboardWidget:function(){return tm.Z.trackEvent("hub-dashboard","widget-resize")},dragDashboardWidget:function(){return tm.Z.trackEvent("hub-dashboard","widget-drag")},saveDashboardConfig:function(){return tm.Z.trackEvent("hub-dashboard","save-config")},createNewDashboardFromURL:function(){return tm.Z.trackEvent("hub-dashboard","create-new-from-url")},openAddWidgetDropDownWithShortcut:function(){return tm.Z.trackEvent("hub-dashboard","widget-open-list-shortcut")},openDashboardsListWithShortcut:function(){return tm.Z.trackEvent("hub-dashboard","dashboard-open-list-shortcut")},createNewDashboardWithShortcut:function(){return tm.Z.trackEvent("hub-dashboard","create-new-with-shortcut")},moveToPreviousDashboard:function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]&amp;&amp;arguments[0];return tm.Z.trackEvent("hub-dashboard","previous",{shortcut:e})},moveToNextDashboard:function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]&amp;&amp;arguments[0];return tm.Z.trackEvent("hub-dashboard","next",{shortcut:e})},navigateToDashboardWidgetWithShortcut:function(){return tm.Z.trackEvent("hub-dashboard","widget-navigation-shortcut")},navigateToEditWidgetModeWithShortcut:function(){return tm.Z.trackEvent("hub-dashboard","widget-navigation-edit-shortcut")},deselectWidgetWithShortcut:function(){return tm.Z.trackEvent("hub-dashboard","widget-navigation-deselect")},refreshWidgetWithShortcut:function(){return tm.Z.trackEvent("hub-dashboard","widget-refresh-shortcut")},renameDashboard:function(){return tm.Z.trackEvent("hub-dashboard","rename")},removeDashboard:function(){return tm.Z.trackEvent("hub-dashboard","remove")},restoreDashboard:function(){return tm.Z.trackEvent("hub-dashboard","restore")},moveWidget:function(){return tm.Z.trackEvent("hub-dashboard","move-widget")},expandOrganizationGroup:function(){return tm.Z.trackEvent("hub-organization","group-expand")},toggleOrganizationGrouping:function(e){return tm.Z.trackEvent("hub-organization","toggle-grouping")},collapseOrganizationRole:function(){return tm.Z.trackEvent("hub-organization","role-collapse")},expandOrganizationRole:function(){return tm.Z.trackEvent("hub-organization","role-expand")},collapseOrganizationEntity:function(){return tm.Z.trackEvent("hub-organization","collapse-entity")},expandOrganizationEntity:function(){return tm.Z.trackEvent("hub-organization","expand-entity")},startAddingMemberToOrganization:function(){return tm.Z.trackEvent("hub-organization","add-members-begin")},stopAddingMemberToOrganization:function(e){return tm.Z.trackEvent("hub-organization","add-members-done")},startRemovingFromOrganization:function(){return tm.Z.trackEvent("hub-organization","remove-from-organization-begin")},stopRemovingFromOrganization:function(e){return tm.Z.trackEvent("hub-organization","remove-from-organization-done")},uploadWidget:function(){return tm.Z.trackEvent("hub-widgets-list","widget-upload-success")},disableWidget:function(){return tm.Z.trackEvent("hub-widgets-list","disable-widget")},enableWidget:function(){return tm.Z.trackEvent("hub-widgets-list","enable-widget")},removeWidget:function(){return tm.Z.trackEvent("hub-widgets-list","remove")},installWidget:function(e){return tm.Z.trackEvent("hub-widgets-list","widget-install",{name:e})},updateWidget:function(e){return tm.Z.trackEvent("hub-widgets-list","widget-update",{name:e})},previewUploadedWidget:function(e){return tm.Z.trackEvent("hub-widgets-list","widget-upload-preview",{name:e})},previewErrorForUploadedWidget:function(){return tm.Z.trackEvent("hub-widgets-list","widget-upload-preview-failed")},widgetUploadFailed:function(){return tm.Z.trackEvent("hub-widgets-list","widget-upload-failed")},uploadNewWidgetVersion:function(){return tm.Z.trackEvent("hub-widget-page","new-version-uploaded")},addUserToGroupOnUsersListToolbar:function(){return tm.Z.trackEvent("hub-users-list-toolbar","user-group-add")},removeUserFromGroupOnUsersListToolbar:function(){return tm.Z.trackEvent("hub-users-list-toolbar","user-group-remove")},addUserRoleOnUsersAccessPage:function(){return tm.Z.trackEvent("hub-users-page-access","user-role-add")},removeUserRoleOnUsersAccessPage:function(){return tm.Z.trackEvent("hub-users-page-access","user-role-remove")},removeUserGroupOnUsersAccessPage:function(){return tm.Z.trackEvent("hub-users-page-access","user-group-remove")},removeUserFromTeamOnUsersAccessPage:function(){return tm.Z.trackEvent("hub-users-page-access","user-remove-from-team")},removeUserFromTeamOnProjectsAccessPage:function(){return tm.Z.trackEvent("hub-project-page-access","user-remove-from-team")},expandTeamRole:function(){return tm.Z.trackEvent("hub-team","expand-role")},collapseTeamRole:function(){return tm.Z.trackEvent("hub-team","collapse-role")},expandTeamTabEntity:function(){return tm.Z.trackEvent("hub-team","expand-entity")},collapseTeamTabEntity:function(){return tm.Z.trackEvent("hub-team","collapse-entity")},expandTeamTabGroup:function(){return tm.Z.trackEvent("hub-team","expand-group")},collapseTeamTabGroup:function(){return tm.Z.trackEvent("hub-team","collapse-group")},toggleTeamTabGrouping:function(e){return tm.Z.trackEvent("hub-team","toggle-group",{enabled:e})},startChangingOfTeamRoles:function(){return tm.Z.trackEvent("hub-team","change-team-roles-begin")},finishChangingOfTeamRoles:function(){return tm.Z.trackEvent("hub-team","change-team-roles-done")},startAddingTeamMembers:function(){return tm.Z.trackEvent("hub-team","add-team-members-begin")},finishAddingTeamMembers:function(e){return tm.Z.trackEvent("hub-team","add-team-members-done",{addedCount:e})},startRemovingTeamMembers:function(){return tm.Z.trackEvent("hub-team","remove-from-team-members-begin")},finishRemovingTeamMembers:function(e){return tm.Z.trackEvent("hub-team","remove-from-team-members-done",{addedCount:e})},storeWidgetConfigInWidgetsPlayground:function(){return tm.Z.trackEvent("widget-playground-page","store-config")},loadWidgetInWidgetPlayground:function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]&amp;&amp;arguments[0];return tm.Z.trackEvent("widget-playground-page","load-widget-by-keyboard",{shortcut:e})},resetWidgetConfigInWidgetPlayground:function(){return tm.Z.trackEvent("widget-playground-page","clear-widget-settings")},revokeAccessAuthorizedReporter:function(e){return tm.Z.trackEvent("hub-user-profile","authorized.reporter.revoked.access",{project_ring_id:e})}};function rm(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var om=angular.module("HUB.user-list.group-manager",[]);om.controller("UserListGroupManagerCtrl",["i18n","$element","GroupMemberResource","hubNotify","SelectOptionsResource","$q","$rootScope","hubI18nPlural",function(e,t,n,r,o,i,a,s){var c=this,l=t.controller("hubTable");function g(e){var t=[];return e.forEach((function(e){e.groups&amp;&amp;e.groups.length&amp;&amp;(t=t.concat(e.groups))})),function(e){return function(e){if(Array.isArray(e))return rm(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return rm(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?rm(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(new Map(t.map((function(e){return[e.id,e]}))).values())}a.$on("translationsReady",(function(){c.selectConfig={filter:{placeholder:e("Filter items")}}})),this.addToGroupDataSource=function(e){return o.groupsExcept({groups:function(){return g(e)},allUsers:!0,registeredUsers:!0})()},this.removeFromGroupDataSource=function(e){return g(e).filter((function(e){return!("All Users"===e.name||"Registered Users"===e.name)})).map((function(e){return{id:e.id,name:e.name,iconUrl:e.iconUrl}}))};var u=function(e,t,n,o){return i.all(e.map((function(e){return o(e)}))).then((function(){return n&amp;&amp;r.success(s.format(n,e.length,{groupName:t.name,userName:e.length&amp;&amp;e[0].name})),!0}))};this.addGroupToUsers=function(e,t){return c.addGroupToUsersLoader=!0,u(e,t,"users-added-to-group",(function(e){return n.save({id:t.id},{id:e.id},(function(){e.groups=e.groups||[];var n=e.groups.some((function(e){return e.id===t.id}));n||(nm.addUserToGroupOnUsersListToolbar(),e.groups.push(t),l.rerenderItem(e,{groups:e.groups}))})).$promise})).finally((function(){c.addGroupToUsersLoader=!1}))},this.removeGroupFromUsers=function(e,t){return c.removeGroupFromUsersLoader=!0,u(e,t,"users-removed-from-group",(function(e){return n.remove({id:t.id,subId:e.id},(function(){if(e.groups){for(var n=-1,r=0;r&lt;e.groups.length;r++)if(e.groups[r].id===t.id){n=r;break}n&gt;=0&amp;&amp;(nm.removeUserFromGroupOnUsersListToolbar(),e.groups.splice(n,1),l.rerenderItem(e,{groups:e.groups}))}})).$promise})).finally((function(){c.removeGroupFromUsersLoader=!1}))}}]);const im=om.name;function am(e){return am="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},am(e)}function sm(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function cm(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?sm(Object(n),!0).forEach((function(t){gm(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):sm(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function lm(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,um(r.key),r)}}function gm(e,t,n){return(t=um(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function um(e){var t=function(e,t){if("object"!==am(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==am(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===am(t)?t:String(t)}n(69826);var dm=function(){return e=function e(t,n,r){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),gm(this,"success",[]),gm(this,"failed",[]),gm(this,"perItemFn",(function(){})),gm(this,"reporters",{successReporter:function(){},errorReporter:function(){},eachSuccessReporter:function(){},eachErrorReporter:function(){}}),gm(this,"items",[]),this.items=t,n?(this.setPerItemAction(n),r&amp;&amp;this.setReporters(r),this.run()):this},t=[{key:"setPerItemAction",value:function(e){return this.perItemFn=e,this}},{key:"setReporters",value:function(e){this.reporters=cm(cm({},this.reporters),e)}},{key:"run",value:function(){var e=this;this.success=[],this.failed=[];var t=this.items.map((function(t){return e.perItemFn(t).then((function(n){e.success.push({item:t,result:n}),e.reporters.eachSuccessReporter(n,t)}),(function(n){n.ignore||(e.failed.push({item:t,result:n}),e.reporters.eachErrorReporter(n,t))}))}));return Promise.all(t).then((function(){return e.success.length&amp;&amp;e.reporters.successReporter(e.success.length,e.success[0].item),e.failed.length&amp;&amp;e.reporters.errorReporter(e.failed.length,e.failed[0].item),{success:e.success,failed:e.failed}}))}}],t&amp;&amp;lm(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();const pm=dm;function Am(e){return Am="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Am(e)}function Cm(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,Im(r.key),r)}}function Im(e){var t=function(e,t){if("object"!==Am(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Am(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Am(t)?t:String(t)}var fm=angular.module("hub-components.bulk-operations",[md,Md]),mm=function(){function e(t,n,r,o,i){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.notify=t,this.i18n=n,this.$q=r,this.HubPluralMessageBundle=o,this.HubErrorMessageBundle=i}return e.$inject=["hubNotify","i18n","$q","HubPluralMessageBundle","HubErrorMessageBundle"],t=e,n=[{key:"_getMessageFn",value:function(e){return"function"==typeof e?e:"string"==typeof e?this.HubPluralMessageBundle[e]?this.HubPluralMessageBundle[e]:this.HubErrorMessageBundle.getMessage(e)?this.HubErrorMessageBundle.getMessage(e):function(){return e}:null}},{key:"withoutReporter",value:function(e,t){return this.withAlertReporter(e,t)}},{key:"withAlertReporter",value:function(e,t){var n=this,r=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:{},o=function(e,t){return n.HubErrorMessageBundle.msg(e,e.data.error,t)},i=new pm(e,t,{successReporter:function(e,t){var o=n._getMessageFn(r.success);o&amp;&amp;n.notify.success(o(e,t))},errorReporter:function(e,t){var o=n._getMessageFn(r.fail);o&amp;&amp;n.notify.error(o(e,t))},eachSuccessReporter:function(e,t){var o=n._getMessageFn(r.successEach);o&amp;&amp;n.notify.success(o(e,t))},eachErrorReporter:function(e,t){var i=n._getMessageFn(r.failEach||o);i&amp;&amp;n.notify.error(i(e,t))}});return this.$q.when(i)}},{key:"removeWithAlertReporter",value:function(e,t,n,r){var o=this,i=function(e){return t.remove({id:e.id}).$promise},a=this._getMessageFn(n.confirm);return this.notify.confirm({label:a(e.length,e[0]),okButtonLabel:n.okButtonLabel||this.i18n("Delete",null,"Remove action"),actionPromise:function(){return o.withAlertReporter(e,i,{success:n.success,fail:n.fail,failEach:n.failEach,successEach:n.successEach}).then((function(){r&amp;&amp;r()}))}})}}],n&amp;&amp;Cm(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,n}();fm.service("hubBulkOperation",mm);const hm=fm.name;var vm=angular.module("hub-components.hub-merge",[Qe,hm,Ep,md]);vm.service("hubMerge",["$rootScope","$sce","$interpolate","$q","$http","dialog","hubNotify","i18n","getHubHelpUrlFilter","HubPluralMessageBundle","HubErrorMessageBundle","hubBulkOperation",function(e,t,r,o,i,a,s,c,l,g,u,d){var p={boolean:angular.noop,textarea:angular.noop,string:function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:[],t=arguments.length&gt;1?arguments[1]:void 0;return t&amp;&amp;-1===e.indexOf(t)&amp;&amp;e.push(t),e}};this.createMerge=function(t){var r=angular.noop,l=!1;return{confirm:function A(C){var I=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:o.defer(),f={title:t.title,description:t.description,messages:t.messages,fields:angular.copy(t.fields)||[],checkDepends:function(e){var t=f.fields;if(e.dependsOn)for(var n=0;n&lt;t.length;n++)if(t[n].name===e.dependsOn)return t[n].value;return!0}},m=[],h=t.order?t.order(C.items):C.items;angular.forEach(f.fields,(function(e){!function(e,t){e.getValue=e.getValue||function(e){return e[this.name]},e.value=null,e.options=[],e.optionsParser=e.optionsParser||"o for o in field.options",e.config={popupClassName:"hub-select_narrow",maxHeight:250};var n=e.isValueProtected&amp;&amp;t.filter((function(t){return e.isValueProtected(e.getValue(t),t)})).length&gt;0;n||angular.forEach(t,(function(t){e.value=e.value||e.getValue(t),e.options=p[e.type](e.options,e.getValue(t))})),o.when(e)}(e,h),e.init&amp;&amp;e.init(e,h),m.push(e)}));var v={template:n(7981),data:f,buttons:[{label:t.mergeButtonLabel,default:!0,action:function(e){var n={fields:"id"};return e.fields.forEach((function(t){e.checkDepends(t)&amp;&amp;(n[t.name]=t.value)})),t.mergeUrl?i({method:"POST",url:t.mergeUrl,params:n,data:C.items.map((function(e){return{id:e.id}}))}).then((function(e){t.successMessage&amp;&amp;s.success(g[t.successMessage](C.items.length,C.items[0])),I.resolve({mergeParams:n,data:e.data})}),(function(e){s.error(e.data.error_description),I.reject(e)})):t.mergeOperation?d.withAlertReporter(C.items,(function(e){return t.mergeOperation(e,n)}),{success:g[t.successMessage],failEach:u.getMessage(t.errorMessage)}).finally((function(){I.resolve({mergeParams:n})})):void 0}},{label:c("Cancel"),action:function(){I.reject()}}]};return o.all(m).then((function(){l?a.update(v):(a.show(v).then((function(e){e||I.reject()})).finally((function(){l=!1,r()})),l=!0)}),(function(){I.reject()})),r=e.$on("selection:changed",(function(e,t){r(),t.size&gt;1?A(t,I):a.reset()})),I.promise}}},this.truncateLongValue=function(e){return(e=(e=e||"").replace(/[\n\r\s]+/," ")).length&gt;80&amp;&amp;(e="".concat(e.substring(0,80),"...")),e},this.getDialogDescription=function(e,n,o,i){i=i||3,o=o||function(e){return e.name};var a="",s={};return s.items=e.items.map(o).slice(0,i).join(", "),s.deleteUserLink=l("Deleting-User-Accounts.html#delete-user-accounts"),s.num=e.size,1===e.size?a=n[0]:e.size&lt;=i?a=n[1]:(a=n[2],s.more=e.size-i),t.trustAsHtml(r(a)(s))}}]);const bm=vm.name,ym=angular.module("HUB.merge",[vd,bm,BC]).name;function wm(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var _m=angular.module("HUB.user-list.merge",[ym]);_m.controller("UserListMergeCtrl",["$element","backendUri","i18n","hubMerge",function(e,t,n,r){var o=e.controller("hubResource");this.merge=function(e){var i=[];return i.push(r.getDialogDescription(e,[null,n("The following accounts are merged: &lt;b&gt;{{items}}&lt;/b&gt;."),n("The following accounts are merged: &lt;b&gt;{{items}}&lt;/b&gt; and &lt;b&gt;{{more}} more&lt;/b&gt;.")])),i.push(n("The credentials that are stored in each of the merged accounts are added to the resulting user account.")),r.createMerge({title:n("Merge Users"),description:n("When you perform this action:"),messages:i,mergeButtonLabel:n("Merge"),successMessage:"users-success-merge",mergeUrl:"".concat(t,"/users/merge"),fields:[{name:"name",type:"string",label:n("Full name")},{name:"login",type:"string",label:n("Username")},{name:"email",type:"string",label:n("Email"),getValue:function(e){return((e.profile||{}).email||{}).email}},{name:"twoFactorAuthentication",type:"string",label:n("Two-factor authentication"),init:function(e,t){e.value="",e.optionsParser="o.id as o.name for o in field.options",e.options=[{id:"",name:n("Disabled",null,"User merge, Two-factor authentication setting")}].concat(function(e){return function(e){if(Array.isArray(e))return wm(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return wm(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?wm(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(t.filter((function(e){return e.twoFactorAuthentication&amp;&amp;e.twoFactorAuthentication.enabled})).map((function(e){return{id:e.id,name:e.name}}))))}},{name:"banned",type:"boolean",label:n("Ban")},{name:"banBadge",type:"string",dependsOn:"banned",showIfOneValue:!0,label:n("Status"),init:function(e,t){e.options=[n("banned"),n("suspended"),n("inactive"),n("deactivated"),n("locked")],e.optionsParser="o in field.options";var r=t.find((function(e){return e.banBadge}));e.value=r?r.banBadge:e.options[0]}},{name:"banReason",type:"textarea",dependsOn:"banned",showIfOneValue:!0,label:n("Ban reason"),init:function(e,t){var n=t.filter((function(e){return e.banned&amp;&amp;e.banReason}));e.value=n.map((function(e){return n.length&gt;=2?"".concat(e.login,"\n").concat(e.banReason):e.banReason})).join("\n======\n")}}]}).confirm(e).then((function(e){var t=e.data,n=e.mergeParams;if(n.banned&amp;&amp;n.banReason)return o.resource.save({id:t.id},{banReason:n.banReason,banBadge:n.banBadge}).$promise})).then((function(){o.refresh()}))}}]).controller("UserListDeleteCtrl",["$route","$location","i18n","hubI18nPlural","SelectOptionsResource","hubNotify","userPermissions","UserResource","auth","hubDeleteUserDialog",function(e,t,n,r,o,i,a,s,c,l){var g=function(e,t){return s.remove({id:e.id,successor:t.successor}).$promise},u=function(e,t){return o.usersDatasourceFactory((function(e){return e}))(e,void 0,void 0,t)},d=function(e){return l(e,g,u)};this.remove=function(t){return d(t).then((function(){t.items.some((function(e){return e.id===c.auth.user.id}))?c.logout():e.reload()}))},this.one=function(e,o){return a.check("user-read").then((function(a){return a?d({items:[e],size:1}).then((function(n){if(e.id===c.auth.user.id)c.logout();else{var r=n.mergeParams.successor;t.url("users/".concat(r))}})):function(e,o){var a;return a=o?n("Do you really want to delete your account?"):n("Do you really want to delete user account â€œ{{user.name}}â€?",{user:e}),i.confirm({label:a,actionPromise:function(){return s.remove({id:e.id,successor:null}).$promise.then((function(){e.id===c.auth.user.id?c.logout():(i.success(r.format("users-success-delete",1,{name:e.name})),t.path("/users"))}),i.errorHandler("user-delete"))}})}(e,o)}))}}]);const jm=_m.name;var xm=angular.module("HUB.user-list.ban",[]);xm.controller("UserListBanCtrl",["$q","UserResource","auth","hubNotify","i18n","dialog","$element","hubBanUserDialog",function(e,t,n,r,o,i,a,s){var c=a.controller("hubTable"),l=null;n.requestUser().then((function(e){l=e})),this.isBanVisible=function(e,t){var n=e.filter((function(e){return e.id!==l.id}));return 0!==n&amp;&amp;n.some((function(e){return e.banned!==t}))},this.setBan=function(n,o){var i=function(){var i=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:"",a=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:null,s=o.filter((function(e){return e.id!==l.id})).map((function(e){return t.save({id:e.id},{banReason:i,banned:n,banBadge:a},(function(t){c?c.rerenderItem(e,{banned:t.banned,banReason:t.banReason,banBadge:t.banBadge}):(e.banned=t.banned,e.banReason=t.banReason,e.banBadge=t.banBadge)})).$promise}));return e.all(s).catch(r.errorHandler())};return n?s().then((function(e){var t=e.reason,n=e.badge;return i(t,n)})):i()}}]);const Em=xm.name;function Sm(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var Tm=function(e){var t=e.user,n=e.onChange,r=e.hubUserLicenseTypes,o=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Sm(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Sm(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(i.useState(!0),2),a=o[0],s=o[1],c=i.useMemo((function(){return r.types.map(Vf)}),[]),l=r.types.filter((function(e){return(t.userType||{}).id===e.id}))[0];return l?i.createElement(Ca.Z,{title:l.typeDescription,popupProps:a?{}:{hidden:!0},delay:500},i.createElement(Xn.ZP,{onBeforeOpen:function(){return s(!1)},onClose:function(){return s(!0)},type:Xn.ZP.Type.INLINE,data:c,selected:l,onChange:n})):""};Tm.propTypes={user:Zg().object.isRequired,onChange:Zg().func.isRequired,hubUserLicenseTypes:Zg().object.isRequired};const Mm=Tm;function Lm(e){return function(e){if(Array.isArray(e))return km(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return km(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?km(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function km(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var Om=angular.module("HUB.user-list",[Em,jm,im,em,Jf,VI,HI,Rf,Lf,mf,Md,Cf]);Om.controller("UserListCtrl",["$scope","$filter","i18n","ProfileAttributeResource","hubCustomUserAttributes","hubUserLicenseTypes","UserResource","settingsUtils","$q","hubUserTypeFilterQuery","$route","hubNotify","HubErrorMessageBundle",function(e,t,r,o,s,c,l,g,u,d,p,A,C){var I=this;this.toolbarTemplate=n(72462),this.rightToolbarTemplate=n(37019),this.sidebarTemplate=n(55196);var f=function(e){return i.createElement(YI.Z,null,i.createElement(Ff,{user:e,i18n:r},i.createElement(YI.Z,null,i.createElement(ZI.Z,{style:{verticalAlign:"middle"},url:e.profile.avatar.url,size:ZI.$.Size20}),i.createElement(a.Z,{className:"user-list__user-link",href:t("linkToHub")("users",e.login,e.id)},e.name))),e.banned&amp;&amp;i.createElement(io.Z,{invalid:!0,"data-test":"banned-badge"},e.banBadge?e.banBadge:r("banned")),(e.twoFactorAuthentication&amp;&amp;e.twoFactorAuthentication.enabled||e.webauthnDevice&amp;&amp;e.webauthnDevice.enabled)&amp;&amp;i.createElement(io.Z,{"data-test":"2FA-badge"},r("2FA")))},m=function(e){var t=e.groups||[],n=t.length;if(!n)return i.createElement(vi.Z,null,"-");n&gt;2&amp;&amp;(t=t.slice(0,1));var o=[];return t.forEach((function(e,n){o.push(i.createElement(a.Z,{key:n,href:"groups/".concat(CC(e.name,e.id))},e.name)),n&lt;t.length-1&amp;&amp;o.push(", ")})),n&gt;2&amp;&amp;o.push(i.createElement(vi.Z,{key:"-1"}," ",i.createElement("span",{dangerouslySetInnerHTML:{__html:r('and &lt;a class="{{className}}" href='.concat("users/".concat(e.id,"?tab=groups"),"&gt;{{total - 1}} more&lt;/a&gt;"),{total:n,className:qt.Z.link},"user-list, membership column: and X groups more")}}))),o};function h(){var n=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]&amp;&amp;arguments[0],o=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:null;return[{id:"name",title:r("Full Name"),sortable:!0,getValue:f},{id:"login",title:r("Username"),sortable:!0,className:"user-list__user-login"}].concat(Lm(n?[{id:"user-type",title:r("User Type"),getValue:function(t){return i.createElement(Mm,{user:t,hubUserLicenseTypes:c,onChange:function(n){return function(t,n){return l.save({id:t.id},{userType:n},(function(n){e.data.items=e.data.items.map((function(e){return e.id===t.id&amp;&amp;(e.userType=n.userType),e}))})).$promise.catch((function(e){A.error(C.msg(e)),p.reload()}))}(t,n)}})}}]:[]),[{id:"email",title:r("Email"),getValue:function(e){var t=e.profile.email;return t&amp;&amp;t.email||"-"},className:"user-list__user-email"},{id:"creationTime",title:r("Registration Date"),sortable:!0,getValue:function(e,n){return t("date")(e[n.id])}},{id:"membership",title:r("Membership"),getValue:m}],Lm(o?(o.profileattributeprototypes||[]).filter((function(e){return e.showOnUserList})).map((function(e){return{id:e.id,title:e.name,sortable:!1,getValue:function(e,t){var n=(e.profile.attributes||[]).filter((function(e){return e.prototype.id===t.id}))[0];return i.createElement(vi.Z,{"data-test":"custom-attribute-cell"},n&amp;&amp;s.processValue(n)||"-")}}})):[]))}this.extraFilter=d,this.columns=h(),u.all({attributes:o.get({fields:"id,name,showOnUserList"}).$promise,publicSettings:g.loadSettings("public")}).then((function(e){var t=e.attributes,n=e.publicSettings;I.columns=h(n.helpdeskEnabled,t)}))}]);const Pm=Om.name;var Nm=n(26525),Dm=n.n(Nm),Rm=n(44254),Um=n.n(Rm);const zm=oo(n(16530).Z,"TagsInput").name;var $m=n(58606),Gm=n.n($m);function Bm(e){return Bm="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Bm(e)}function Fm(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,Zm(r.key),r)}}function Zm(e){var t=function(e,t){if("object"!==Bm(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Bm(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Bm(t)?t:String(t)}var Ym=o().module("hub-components.hub-expander",[F]);Ym.component("hubExpander",{template:Gm(),bindings:{onExpand:"&amp;"},transclude:{header:"?header",content:"?content"},controller:function(){return e=function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)},(t=[{key:"$onInit",value:function(){this.expanded=!1}},{key:"toggleExpanded",value:function(){this.expanded=!this.expanded,this.onExpand({expanded:this.expanded})}}])&amp;&amp;Fm(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}()});const Wm=Ym.name;var Hm=function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:{};return(arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:"").split(".").filter((function(e){return e})).reduce((function(e,t){return e?e[t]:null}),e)},qm=function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:"id";return function(t,n,r){return r.findIndex((function(n){return Hm(n,e)===Hm(t,e)}))===n}},Qm=qm();function Vm(e){return Vm="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Vm(e)}function Km(){Km=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==Vm(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function Jm(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Xm(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Jm(Object(n),!0).forEach((function(t){rh(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Jm(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function eh(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function th(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){eh(i,r,o,a,s,"next",e)}function s(e){eh(i,r,o,a,s,"throw",e)}a(void 0)}))}}function nh(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,oh(r.key),r)}}function rh(e,t,n){return(t=oh(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function oh(e){var t=function(e,t){if("object"!==Vm(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Vm(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Vm(t)?t:String(t)}var ih=angular.module("hub-components.access-tab.sidebar",[Wm]),ah=function(){function e(t,n,r,o,i){var a=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),rh(this,"view",{}),rh(this,"expanded",{}),rh(this,"isExpanded",(function(e){return a.expanded[e.id]})),rh(this,"toggle",(function(e){var t=e.id;return a.expanded[t]=!a.expanded[t]})),this.$inject={$scope:t,$element:n,$routeParams:r,hubAccessTabService:o,HubPermissionMessages:i},this.config=o.config,this.datasource=this.config.datasource;var s=n.controller("hubAccessTab");t.$watch((function(){return s.selection.getFocused()}),function(){var e=th(Km().mark((function e(n){var r,o,i,s,c;return Km().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a.view={id:null,token:Math.random(),name:null,description:null,permissions:[],roles:[]},n){e.next=3;break}return e.abrupt("return");case 3:a.sidebarElement=n,r=(n.role?[n.role]:n.children.map((function(e){return e.role}))).filter(Qm),a.expanded={},o=0;case 7:if(!(o&lt;r.length)){e.next=17;break}return i=a.view.token,s=r[o],e.next=12,a.getRolePermissions(s.id);case 12:c=e.sent,i===a.view.token&amp;&amp;a.view.roles.push(Xm(Xm({},s),c));case 14:o++,e.next=7;break;case 17:t.$evalAsync();case 18:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}())}return e.$inject=["$scope","$element","$routeParams","hubAccessTabService","HubPermissionMessages"],t=e,n=[{key:"getRolePermissions",value:(r=th(Km().mark((function e(t){var n,r,o,i,a=this;return Km().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.datasource.getRole({id:t});case 2:return n=e.sent,r=[],o={},(n.permissions||[]).forEach((function(e){if(e.service){var t={id:e.id,name:(a.$inject.HubPermissionMessages.msg(e.key)||e).name,entityType:e.entityType};if(o[e.service.id])o[e.service.id].permissions.push(t);else{var n={service:e.service,permissions:[t]};o[e.service.id]=n,r.push(n)}}})),i=function(e,t){var n=e.entityType,r=void 0===n?"":n,o=t.entityType,i=void 0===o?"":o;return r.localeCompare(i)},e.abrupt("return",{description:n.description,permissions:r.map((function(e){return Xm(Xm({},e),{},{permissions:e.permissions.sort(i)})}))});case 9:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})}],n&amp;&amp;nh(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,n,r}();ih.controller("ProjectRolesSidebarCtrl",ah);const sh=ih.name;var ch=["icon"];function lh(e){return lh="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},lh(e)}function gh(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function uh(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?gh(Object(n),!0).forEach((function(t){vh(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):gh(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function dh(e){return function(e){if(Array.isArray(e))return ph(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return ph(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ph(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ph(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function Ah(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||Object.prototype.propertyIsEnumerable.call(e,n)&amp;&amp;(o[n]=e[n])}return o}function Ch(){Ch=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==lh(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function Ih(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function fh(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Ih(i,r,o,a,s,"next",e)}function s(e){Ih(i,r,o,a,s,"throw",e)}a(void 0)}))}}function mh(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,bh(r.key),r)}}function hh(e,t,n){return t&amp;&amp;mh(e.prototype,t),n&amp;&amp;mh(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function vh(e,t,n){return(t=bh(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function bh(e){var t=function(e,t){if("object"!==lh(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==lh(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===lh(t)?t:String(t)}var yh=hh((function e(t,r,o,a,s,c,l,g,u){var d=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),vh(this,"dialogData",{}),vh(this,"grantedSymbol","âœ“"),vh(this,"isRoleRevokeEnabled",(function(e){return e.size&gt;0&amp;&amp;e.items.some((function(e){return e.isRoleRemovable}))})),vh(this,"isGroupRemoveEnabled",(function(e){return e.size&gt;0&amp;&amp;e.items.some((function(e){return e.isGroupRemovable}))})),vh(this,"isTeamRemoveEnabled",(function(e){return e.size&gt;0&amp;&amp;e.items.some((function(e){return e.isTeamRemovable}))})),vh(this,"_getOnCompleteOperationMessageIdPrefix",(function(e){var t=Object.keys(e.reduce((function(e,t){return e[t.accessScope.type]=!0,e}),{}));return 1===t.length?t[0]:"scope"})),vh(this,"_getGrantRoleTargetOptions",function(){var e=fh(Ch().mark((function e(t,n){var r,o;return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=d.config.usedRoles||[],e.next=3,t();case 3:return o=e.sent,e.abrupt("return",o.map((function(e){var t=r.indexOf("".concat(e.id,"-").concat(n))&gt;=0;return e.disabled=t,t&amp;&amp;(e.label="".concat(d.grantedSymbol," ").concat(e.label)),e})));case 5:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),vh(this,"_parseGrantRoleTarget",(function(e,t){var n=d.accessOwnerMode?d.config:e.user||e.group,r=d.accessOwnerMode?e.project||e.organization:e.user||e.group;return{authorityHolder:n,accessScope:d.accessOwnerMode?{id:r.id,name:r.name,type:t}:{id:d.config.id,name:d.config.name,type:t},accessOwnerId:d.accessOwnerMode?d.config.id:r.id}})),vh(this,"_onGrant",function(){var e=fh(Ch().mark((function e(t){var n,r,o,i,a,s,c,l,g,u,p;return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=d.$inject,r=n.hubNotify,o=n.hubI18nPlural,i=[],a=[],s=t.role,c=t.targets.map(function(){var e=fh(Ch().mark((function e(t){var n,o,c,l,g,u;return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n="organization"===d.config.type||t.organization?"organization":"project",o=d._parseGrantRoleTarget(t,n),c=o.authorityHolder,l=o.accessScope,g=o.accessOwnerId,u={roleName:s.name,scopeName:l.name,targetName:c.name,accessScope:l},e.prev=3,"user"!==d.config.type&amp;&amp;!t.user){e.next=9;break}return e.next=7,d.datasource.grantRoleToUser(g,s,l);case 7:e.next=11;break;case 9:return e.next=11,d.datasource.grantRoleToGroup(g,s,l);case 11:i.push(u),e.next=18;break;case 14:e.prev=14,e.t0=e.catch(3),r.errorHandler()(e.t0),a.push(u);case 18:case"end":return e.stop()}}),e,null,[[3,14]])})));return function(t){return e.apply(this,arguments)}}()),e.next=7,Promise.all(c);case 7:return i.length&amp;&amp;(l="".concat(d._getOnCompleteOperationMessageIdPrefix(i),"roles-success-grant"),g=o.format(l,i.length,i[0]),r.success(g)),a.length&amp;&amp;(u="".concat(d._getOnCompleteOperationMessageIdPrefix(a),"roles-fail-grant"),p=o.format(u,a.length,a[0]),r.error(p)),nm.addUserToGroupOnUsersListToolbar(),e.next=12,d.reload();case 12:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),vh(this,"grantRole",fh(Ch().mark((function e(){var t,r,o,i,a,s,c,l,g;return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=d.$inject,r=t.dialog,o=t.i18n,i=d.permissionCache&amp;&amp;d.permissionCache.has("jetbrains.jetpass.low-level"),a=function(){var e=fh(Ch().mark((function e(t){var n,r,o,a,s;return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.query,r=d.dialogData.role.id,o=function(){var e=fh(Ch().mark((function e(){return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,d.datasource.selectOptions.getProjectsAndOrganizations(n,i);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),a=function(){var e=fh(Ch().mark((function e(){return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,d.datasource.selectOptions.getUsersAndGroups(n,!0);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),s=d.accessOwnerMode?o:a,e.next=7,d._getGrantRoleTargetOptions(s,r);case 7:return e.abrupt("return",e.sent);case 8:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),s=function(e){var t=e.tag,n=t.icon,r=Ah(t,ch);d.dialogData.targets=[].concat(dh(d.dialogData.targets),[uh(uh({},r),{avatar:n})])},c=function(e){var t=e.tag;d.dialogData.targets=d.dialogData.targets.filter((function(e){return e!==t}))},l=function(){return d.accessOwnerMode?o("Scope"):o("To user or group")},g=function(){return d.accessOwnerMode?o("Organization or project"):o("Select a user or group")},d.dialogData={targets:[],accessOwnerMode:d.accessOwnerMode,getRoles:d.datasource.selectOptions.getRoles,selectConfig:{popupClassName:"hub-select_narrow",filter:{placeholder:o("Filter roles")}},translations:{loading:o("Loading..."),roleLabel:o("Role"),roleSelectEmpty:o("Select role"),roleSelectNotFound:o("No roles found"),secondaryLabel:l(),secondaryPlaceholder:g()},getTargets:a,onAddTarget:s,onRemoveTarget:c},e.abrupt("return",r.show({title:o("Grant Role"),template:n(93486),data:d.dialogData,buttons:[{label:o("Grant"),default:!0,action:d._onGrant},{label:o("Cancel")}]}));case 9:case"end":return e.stop()}}),e)})))),vh(this,"revokeRole",function(){var e=fh(Ch().mark((function e(t){var n,r,o,a,s,c,l,g,u;return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=d.$inject,o=r.hubNotify,a=r.i18n,s=r.hubI18nPlural,c=r.gettextCatalog,l=(n=[]).concat.apply(n,dh(t.filter((function(e){return e.isRoleRemovable})).map((function(e){return e.children})))).filter(Qm),g=function(e){var t={};return e.forEach((function(e){var n=e.owner,r=e.accessScope,o=e.role,i=e.id;void 0===t[n.id]&amp;&amp;(t[n.id]=uh(uh({},n),{},{roles:[]})),t[n.id].roles.push({owner:n,accessScope:r,role:o,id:i})})),Object.keys(t).map((function(e){return t[e]}))},e.prev=3,u=g(l),e.next=7,o.confirm({label:s.format("projectroles-revoke?",l.length,l[0]),description:i.createElement("div",{className:"ring-form__group"},u.map((function(e){return i.createElement("div",{key:e.id,className:"project-role__revoke-dialog__section"},i.createElement("div",null,c.getPlural(e.roles.length,"You are going to remove {{member.roles.length}} role for {{member.name}}:","You are going to remove {{member.roles.length}} roles for {{member.name}}:",{member:e})),i.createElement("div",{className:"project-role__revoke-dialog__section__roles"},e.roles.map((function(e){return i.createElement("div",{key:e.id},i.createElement("span",null,a("{{scoperole.role.name}} in {{scoperole.accessScope.name}}",{scoperole:e})))}))))}))),okButtonLabel:a("Revoke"),actionPromise:function(){var e=fh(Ch().mark((function e(){return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,d._remove(l);case 2:d.reload();case 3:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()});case 7:nm.removeUserRoleOnUsersAccessPage(),e.next=13;break;case 10:e.prev=10,e.t0=e.catch(3),console.log(e.t0);case 13:case"end":return e.stop()}}),e,null,[[3,10]])})));return function(t){return e.apply(this,arguments)}}()),vh(this,"_remove",function(){var e=fh(Ch().mark((function e(t){var n,r,o,i,a,s,c,l;return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=d.$inject,r=n.hubNotify,o=n.hubI18nPlural,i=[],a=[],s=t.map(function(){var e=fh(Ch().mark((function e(t){var n,r,o,s,c;return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.id,r=t.owner,o=r.id,s=r.type,c=t.accessScope,e.prev=1,"user"!==s){e.next=7;break}return e.next=5,d.datasource.revokeRoleFromUser(o,n,c.type);case 5:e.next=9;break;case 7:return e.next=9,d.datasource.revokeRoleFromGroup(o,n,c.type);case 9:i.push(t),e.next=15;break;case 12:e.prev=12,e.t0=e.catch(1),e.t0.ignore||a.push(t);case 15:case"end":return e.stop()}}),e,null,[[1,12]])})));return function(t){return e.apply(this,arguments)}}()),e.next=6,Promise.all(s);case 6:i.length&amp;&amp;(c="".concat(d._getOnCompleteOperationMessageIdPrefix(i),"roles-success-revoke"),r.success(o.format(c,i.length,i[0]))),a.length&amp;&amp;(l="".concat(d._getOnCompleteOperationMessageIdPrefix(a),"roles-fail-revoke"),r.error(o.format(l,a.length,a[0])));case 8:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),vh(this,"removeFromGroup",function(){var e=fh(Ch().mark((function e(t){var n,r,o,i,a,s,c,l,g,u,p;return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=d.$inject,o=r.hubNotify,i=r.i18n,a=r.hubI18nPlural,s=(n=[]).concat.apply(n,dh(t.filter((function(e){return e.isGroupRemovable})).map((function(e){return e.children})))).map((function(e){return e.owner})).filter(Qm),e.next=4,Promise.all(s.map(function(){var e=fh(Ch().mark((function e(t){return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,d.datasource.getGroupTransitiveProjectRoles({id:t.id});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 4:return c=e.sent,l=c.reduce((function(e,t){return e.concat(t)}),[]).map((function(e){return e.role})).filter(Qm).map((function(e){return e.name})),g=i("Confirming this action user may loose these roles: {{roles}}",{roles:l.join(", ")}),u=a.format("groups-revoke?",s.length,s[0]),p=function(){var e=fh(Ch().mark((function e(){var t,n;return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=0;case 1:if(!(t&lt;s.length)){e.next=16;break}return n=s[t],e.prev=3,e.next=6,d.datasource.removeUserFromGroup({userId:d.config.id,groupId:n.id});case 6:o.success(i("User was successfully removed from group â€œ{{ name }}â€",n)),nm.removeUserGroupOnUsersAccessPage(),e.next=13;break;case 10:e.prev=10,e.t0=e.catch(3),e.t0.ignore||o.error(i("User wasn't removed from group â€œ{{ name }}â€",n));case 13:t++,e.next=1;break;case 16:case"end":return e.stop()}}),e,null,[[3,10]])})));return function(){return e.apply(this,arguments)}}(),e.next=11,o.confirm({label:u,description:g,okButtonLabel:i("Remove"),actionPromise:p});case 11:return e.next=13,d.reload();case 13:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),vh(this,"removeFromTeam",function(){var e=fh(Ch().mark((function e(t){var n,r,o,i,a,s,c,l,g,u,p;return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=d.$inject,r=n.hubNotify,o=n.i18n,i=n.hubI18nPlural,a=null,s=null,c=function(){var e=fh(Ch().mark((function e(t,n){return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(e.prev=0,"user"!==t.type.toLowerCase()){e.next=6;break}return e.next=4,d.datasource.removeUserFromTeam({id:n.id,userId:t.id});case 4:e.next=8;break;case 6:return e.next=8,d.datasource.removeGroupFromTeam({id:n.id,groupId:t.id});case 8:r.success(o("User â€œ{{ member.name }}â€ was removed from â€œ{{ project.name }}â€ team",{member:t,project:n})),e.next=14;break;case 11:e.prev=11,e.t0=e.catch(0),e.t0.ignore||r.error(o("User â€œ{{ member.name }}â€ wasn't removed from â€œ{{ project.name }}â€ team",{member:t,project:n}));case 14:case"end":return e.stop()}}),e,null,[[0,11]])})));return function(t,n){return e.apply(this,arguments)}}(),"project"===d.config.type?(g=(l=[]).concat.apply(l,dh(t.filter((function(e){return e.isTeamRemovable})).map((function(e){return e.children})))).map((function(e){return e.owner})).filter(Qm),s=i.format("team-revoke-project?",g.length,g[0]),a=function(){var e=fh(Ch().mark((function e(){var t;return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:nm.removeUserFromTeamOnProjectsAccessPage(),t=0;case 2:if(!(t&lt;g.length)){e.next=8;break}return e.next=5,c(g[t],d.config);case 5:t++,e.next=2;break;case 8:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()):(p=(u=[]).concat.apply(u,dh(t.filter((function(e){return e.isTeamRemovable})).map((function(e){return e.children})))).map((function(e){return e.project})).filter(Qm),s=i.format("team-revoke?",p.length,p[0]),a=function(){var e=fh(Ch().mark((function e(){var t;return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:nm.removeUserFromTeamOnUsersAccessPage(),t=0;case 2:if(!(t&lt;p.length)){e.next=8;break}return e.next=5,c(d.config,p[t]);case 5:t++,e.next=2;break;case 8:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()),e.next=7,r.confirm({label:s,okButtonLabel:o("Remove"),actionPromise:a});case 7:return e.next=9,d.reload();case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),this.$inject={$location:t,dialog:r,hubNotify:o,hubAccessTabService:a,i18n:s,gettextCatalog:c,hubI18nPlural:l,userPermissions:g,$scope:u},this.isRolesMode=function(){return"roles"===t.search().mode},this.setMode=function(e){t.search("mode",e)},this.filterPlaceholder=s("Search by role, project, group, team, permission"),this.config=a.config,this.reload=fh(Ch().mark((function e(){return Ch().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return u.$emit("tabs:members-count-update"),u.$emit("tabs:groups-count-update"),e.next=4,a.reload();case 4:case"end":return e.stop()}}),e)}))),this.accessOwnerMode="project"!==this.config.type&amp;&amp;"organization"!==this.config.type,this.inactiveMode=a.config.inactiveMode,this.datasource=this.config.datasource,this.queryAssistDatasource=function(){for(var e,t=arguments.length,n=new Array(t),r=0;r&lt;t;r++)n[r]=arguments[r];return(e=d.datasource).getQueryAssistSuggestions.apply(e,["projectroles"].concat(n))},this.canModifyListOfRoles=function(){return!!d.accessOwnerMode||d.permissionCache&amp;&amp;d.permissionCache.has("organization"===d.config.type?"jetbrains.jetpass.low-level":"jetbrains.jetpass.project-update",d.config.id)},this.canGrantRole=function(){return d.canModifyListOfRoles()},g.load().then((function(e){d.permissionCache=e}))}));vh(yh,"$inject",["$location","dialog","hubNotify","hubAccessTabService","i18n","gettextCatalog","hubI18nPlural","userPermissions","$scope"]);var wh=angular.module("hub-components.access-tab.toolbar",[]);wh.controller("ProjectRolesToolbarCtrl",yh);const _h=wh.name,jh=oo(n(40762).Z,"DataList").name;var xh=n(78314),Eh=angular.module("hub-components.services",[]);Eh.factory("hubPageStorage",["$rootScope",function(e){var t=new Map;return e.$on("$routeChangeSuccess",(function(){t=new Map})),{set:function(e,n){return t.set(e,n)},get:function(e){return t.get(e)}}}]),Eh.factory("hubSidebarStateStorage",["$q",function(e){var t=new Yl.Z,n="sidebar";return{read:function(){return e.resolve(t.get(n)).then((function(e){return!!e&amp;&amp;e.isShowSidebar}))},store:function(e){return t.set(n,{isShowSidebar:e})}}}]);const Sh=Eh.name;function Th(e){return Th="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Th(e)}function Mh(){Mh=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==Th(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function Lh(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function kh(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Oh(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?kh(Object(n),!0).forEach((function(t){Gh(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):kh(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Ph(e){return function(e){if(Array.isArray(e))return Nh(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Nh(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Nh(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Nh(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function Dh(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Rh(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,Bh(r.key),r)}}function Uh(e,t,n){return t&amp;&amp;Rh(e.prototype,t),n&amp;&amp;Rh(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function zh(e){return zh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},zh(e)}function $h(e,t){return $h=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},$h(e,t)}function Gh(e,t,n){return(t=Bh(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Bh(e){var t=function(e,t){if("object"!==Th(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Th(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Th(t)?t:String(t)}var Fh=function(e){function t(){var e;Dh(this,t);for(var r=arguments.length,o=new Array(r),s=0;s&lt;r;s++)o[s]=arguments[s];return Gh(e=function(e,t,n){return t=zh(t),function(e,t){if(t&amp;&amp;("object"===Th(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],zh(e).constructor):t.apply(e,n))}(this,t,[].concat(o)),"toolbarTemplate",n(17432)),Gh(e,"rightToolbarTemplate",n(97683)),Gh(e,"sidebarTemplate",n(19717)),Gh(e,"emptyTemplate",n(9362)),Gh(e,"defaultEmptyTemplate",n(33436)),Gh(e,"defaultBadRequestTemplate",n(45321)),Gh(e,"expandedItems",new Set),Gh(e,"isItemCollapsible",(function(e){return e.children.length&gt;1&amp;&amp;!e.noCollapse})),Gh(e,"isItemCollapsed",(function(t){return!e.expandedItems.has(t.key)})),Gh(e,"groupItemsLimit",10),Gh(e,"loadDataByQuery",(function(){var t=e.$inject,n=t.$location,r=t.hubAccessTabService;return e.view.queryAssistQuery=n.search().query,r.reload()})),Gh(e,"onError",(function(t){e.view.error=t,e.view.items=[]})),Gh(e,"recalculateSelection",(function(){var t=e.view.items.reduce((function(e,t){return e.concat(t.data)}),[]);e.selection=e.selection.cloneWith({data:t})})),Gh(e,"onItemsUpdate",(function(t){e.view.error=null,e.view.total=t.totalNumberOfProjectroles,e.view.items=t.roles,e.view.items.forEach((function(e){e.data.length&gt;10&amp;&amp;(e.more=e.data.splice(10))})),e.recalculateSelection()})),Gh(e,"showLoader",(function(){e.view.loading=!0,e.$inject.$scope.$applyAsync()})),Gh(e,"hideLoader",(function(){void 0!==e.isInYoutrackEmbedded&amp;&amp;e.dataLoaded&amp;&amp;(e.view.loading=!1,e.$inject.$scope.$applyAsync())})),Gh(e,"showSidebar",(function(){e.view.showSidebar=!0,e.$inject.$scope.$evalAsync()})),Gh(e,"hideSidebar",(function(){e.view.showSidebar=!1,e.$inject.$scope.$evalAsync()})),Gh(e,"openItemPage",(function(){var t=e.$inject,n=t.$scope,r=t.$location,o=t.$filter,i=e.selection.getFocused(),a=i.role,s=i.project,c=i.owner;s?r.url(o("linkToHub")("projects",s.name,s.id)):c&amp;&amp;"userGroup"===c.type?r.url(o("linkToHub")("groups",c.name,c.id)):c&amp;&amp;"user"===c.type?r.url(o("linkToHub")("users",c.login,c.id)):a&amp;&amp;r.url(o("linkToHub")("roles",a.key,a.id)),n.$evalAsync()})),Gh(e,"onSelect",(function(t){e.selection=t,e.sidebarElement=t.getFocused()})),Gh(e,"onSectionMoreLess",(function(t){t.more.length&gt;0?t.data=t.data.concat(t.more.splice(0)):t.more=t.data.splice(10),e.shakeItems()})),Gh(e,"getBadges",(function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:new Set,t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:null;return i.createElement("span",null,Ph(e).filter((function(e){return!t||-1!==t.indexOf(e.type)})).map((function(e){return i.createElement(io.Z,{key:e.text,className:"project-role__badge",invalid:e.invalid},e.text)})))})),Gh(e,"getOwnerLink",(function(t,n){var r=!(arguments.length&gt;2&amp;&amp;void 0!==arguments[2])||arguments[2],o=e.$inject,s=o.i18n,c=o.$filter,l=t.id,g=t.name,u=t.login;return"user"===t.type?i.createElement("span",null,r&amp;&amp;i.createElement("span",null,s("User")," "),i.createElement(a.Z,{href:c("linkToHub")("users",u,l),"data-test-custom":"user-link",className:"project-role__link"},g),e.getBadges(n,"project")):i.createElement("span",null,r&amp;&amp;i.createElement("span",null,s("Group")," "),i.createElement(a.Z,{href:c("linkToHub")("groups",g,l),"data-test-custom":"group-link",className:"project-role__link"},g),e.getBadges(n,"project"))})),Gh(e,"getAccessScopeLink",(function(t,n){var r=!(arguments.length&gt;2&amp;&amp;void 0!==arguments[2])||arguments[2],o=e.$inject,s=o.$filter,c=o.i18n,l="Global";return i.createElement("span",null,r&amp;&amp;i.createElement("span",null,"project"===t.type?c("Project"):c("Organization")," "),e.isInYoutrackEmbedded&amp;&amp;t.name===l&amp;&amp;i.createElement("span",null,t.name),!(e.isInYoutrackEmbedded&amp;&amp;t.name===l)&amp;&amp;i.createElement(a.Z,{href:s("linkToHub")("".concat(t.type,"s"),t.name,t.id),"data-test-custom":"project-link",className:"project-role__link"},t.name),e.getBadges(n,t.type))})),Gh(e,"getRoleLink",(function(t,n){var r=!(arguments.length&gt;2&amp;&amp;void 0!==arguments[2])||arguments[2],o=e.$inject,s=o.i18n,c=o.$filter;return i.createElement("span",null,r&amp;&amp;i.createElement("span",null,s("Role")," "),i.createElement(a.Z,{href:c("linkToHub")("roles",t.key,t.id),"data-test-custom":"role-link",className:"project-role__link"},t.name),e.getBadges(n,"role"))})),Gh(e,"getRightItems",(function(t,n,r,o){var a=arguments.length&gt;4&amp;&amp;void 0!==arguments[4]&amp;&amp;arguments[4],s=e.$inject.hubI18nPlural,c="type",l=t.filter(qm("".concat(n,".id"))),g=null;if(l.length&lt;=3){var u=null,d=l.sort((function(e,t){return e[n][c]&gt;t[n][c]?1:0})).map((function(e){var t=1===l.length?e.badges:[];return u!==e[n][c]?(u=e[n][c],r(e[n],t,!0,1===l.length)):r(e[n],t,!1,1===l.length)}));g=i.createElement("span",null,d.map((function(e,t){return i.createElement("span",{key:l[t].id},e,Boolean(t&lt;l.length-1)&amp;&amp;i.createElement("span",null,", "))})))}else g=i.createElement("span",null,s.format(o,l.length));return a&amp;&amp;(g=i.createElement("span",null,g,e.getGroupReasonHeading(t))),g})),Gh(e,"selection",new xh.Z({getKey:function(e){return e.key},getChildren:function(t){return e.expandedItems.has(t.key)?t.items:[]}})),Gh(e,"shakeItems",(function(){var t=e.$inject.$scope;e.view.items.forEach((function(e){e.data=Ph(e.data)})),e.recalculateSelection(),t.$evalAsync()})),Gh(e,"itemFormatter",(function(t){var n=e.isItemCollapsible(t),r=e.isItemCollapsed(t);return Oh(Oh({},t),{},{title:e.getTitle(t),collapsible:n,collapsed:r,selectable:t.isRoleRemovable||t.isTeamRemovable,onCollapse:function(){e.expandedItems.delete(t.key),e.shakeItems()},onExpand:function(){e.expandedItems.add(t.key),e.shakeItems()}})})),Gh(e,"shortcuts",{left:e.showSidebar,right:e.hideSidebar,enter:e.openItemPage}),Gh(e,"view",{total:0,items:[],onSelect:e.onSelect,itemFormatter:e.itemFormatter,expanded:{},queryAssistQuery:"",loading:!1,sidebarEnabled:!0,showSidebar:!1,shortcuts:e.shortcuts}),e.$inject.settingsUtils.loadSettings("public").then((function(t){t?(e.isInYoutrackEmbedded="youtrack"===t.hostServiceName.toLowerCase(),e.hideLoader()):e.isInYoutrackEmbedded=!1})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;$h(e,t)}(t,e),Uh(t,[{key:"$postLink",value:(r=Mh().mark((function e(){var t,n,r,o,i,a=this;return Mh().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=function(e){return["project","user","group","organization"].filter((function(t){return angular.isDefined(e[t])}))[0]},t=this.$inject,n=t.$scope,r=t.hubAccessTabService,o=t.hubSidebarStateStorage,this.type=i(this),r.configure({type:this.type,entity:this.project||this.user||this.group||this.organization,datasource:this.datasource,inactiveMode:this.inactiveMode,onItemsUpdate:this.onItemsUpdate,onError:this.onError,showLoader:this.showLoader,hideLoader:this.hideLoader}),n.$on("$routeUpdate",this.loadDataByQuery),this.showLoader(),e.next=8,this.loadDataByQuery();case 8:this.dataLoaded=!0,this.hideLoader(),this.view.type=this.type,o.read().then((function(e){a.view.showSidebar=e})),n.$watch((function(){return a.view.showSidebar}),(function(e){void 0!==e&amp;&amp;o.store(e)}));case 13:case"end":return e.stop()}}),e,this)})),o=function(){var e=this,t=arguments;return new Promise((function(n,o){var i=r.apply(e,t);function a(e){Lh(i,n,o,a,s,"next",e)}function s(e){Lh(i,n,o,a,s,"throw",e)}a(void 0)}))},function(){return o.apply(this,arguments)})},{key:"getGroupReasonHeading",value:function(e){var t=this.$inject,n=t.i18n,r=t.hubI18nPlural,o=e.map((function(e){return e.owner})).filter(Qm);return 1===o.length?i.createElement("span",null,"Â&nbsp;",n("assigned to")," ",this.getOwnerLink(o[0],void 0,!1)):i.createElement("span",null,"Â&nbsp;",r.format("as-a-member-of-groups",o.length))}},{key:"getTitle",value:function(e){var t,n,r=e.accessScope,o=e.role,a=e.owner,s=e.children,c=e.subItem,l=e.withReason,g=e.badges;return r?(t=this.getAccessScopeLink(r,g),n=this.getRightItems(s,"role",this.getRoleLink,"access-roles-num",l)):o?(t=this.getRoleLink(o,g),"project"!==this.type&amp;&amp;"organization"!==this.type?n=this.getRightItems(s,"accessScope",this.getAccessScopeLink,"access-projects-num",l):"project"!==this.type&amp;&amp;"organization"!==this.type||(n=this.getRightItems(s,"owner",this.getOwnerLink,"access-members-num"))):a&amp;&amp;(t=this.getOwnerLink(a,g),n=this.getRightItems(s,"role",this.getRoleLink,"access-roles-num")),c&amp;&amp;(t=n,n=null),i.createElement("span",null,t,Boolean(n)&amp;&amp;i.createElement("span",{className:"project-role__second_column"},n))}}]);var r,o}(p);Gh(Fh,"$inject",["$scope","$timeout","$location","i18n","hubI18nPlural","hubAccessTabService","hubSidebarStateStorage","$filter","settingsUtils"]),Gh(Fh,"template",n(72400)),Gh(Fh,"bindings",{project:"=?",user:"=?",group:"=?",inactiveMode:"&lt;?",organization:"=?",datasource:"="});var Zh=Uh((function e(t){Dh(this,e);var n=t.controller("hubAccessTab");this.selection=(0,yg.Z)((function(){return n.selection}))}));Gh(Zh,"$inject",["$element"]);var Yh=angular.module("hub-components.access-tab.component",[jh,Sh,mf]);Yh.component("hubAccessTab",Fh),Yh.controller("AccessTabSelectionCtrl",Zh);const Wh=Yh.name;function Hh(e){return Hh="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Hh(e)}function qh(){qh=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==Hh(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function Qh(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function Vh(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Qh(i,r,o,a,s,"next",e)}function s(e){Qh(i,r,o,a,s,"throw",e)}a(void 0)}))}}function Kh(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,ev(r.key),r)}}function Jh(e,t,n){return t&amp;&amp;Kh(e.prototype,t),n&amp;&amp;Kh(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function Xh(e,t,n){return(t=ev(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ev(e){var t=function(e,t){if("object"!==Hh(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Hh(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Hh(t)?t:String(t)}var tv=angular.module("hub-components.access-tab.service",[]),rv=Jh((function e(t,n){var r=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),Xh(this,"config",{}),Xh(this,"onItemsUpdate",angular.noop),Xh(this,"hideLoader",angular.noop),Xh(this,"showLoader",angular.noop),Xh(this,"_observers",[]),Xh(this,"configure",(function(e){var t=e.type,n=e.entity,o=e.datasource,i=e.onItemsUpdate,a=e.onError,s=void 0===a?function(){}:a,c=e.showLoader,l=void 0===c?function(){}:c,g=e.hideLoader,u=void 0===g?function(){}:g,d=e.inactiveMode,p=void 0!==d&amp;&amp;d;r.config={type:t,id:n.id,name:n.name,datasource:o,entity:n,inactiveMode:p},r.onItemsUpdate=i,r.onError=s,r.showLoader=l,r.hideLoader=u,r._observers.forEach((function(e){return e()}))})),Xh(this,"onConfigure",(function(e){r._observers.push(e)})),Xh(this,"reload",Vh(qh().mark((function e(){var t,n,o,i,a,s;return qh().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.$inject,n=t.$location,o=t.AccessTabItemsSources,i=o,a=n.search().query,r.showLoader(),e.prev=4,e.next=7,i.get(r.config,a);case 7:s=e.sent,e.next=14;break;case 10:e.prev=10,e.t0=e.catch(4),console.error(e.t0),r.onError(e.t0);case 14:r.hideLoader(),s&amp;&amp;r.onItemsUpdate(s);case 16:case"end":return e.stop()}}),e,null,[[4,10]])})))),this.$inject={$location:t,AccessTabItemsSources:n}}));Xh(rv,"$inject",["$location","AccessTabItemsSources"]),tv.service("hubAccessTabService",rv);const ov=tv.name;var iv=n(25547),av=n.n(iv),sv=n(85810),cv=n.n(sv);function lv(e){return lv="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},lv(e)}function gv(){gv=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==lv(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function uv(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function dv(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?uv(Object(n),!0).forEach((function(t){Cv(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):uv(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function pv(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function Av(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,Iv(r.key),r)}}function Cv(e,t,n){return(t=Iv(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Iv(e){var t=function(e,t){if("object"!==lv(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==lv(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===lv(t)?t:String(t)}function fv(e){return function(e){if(Array.isArray(e))return mv(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return mv(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?mv(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function mv(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var hv=angular.module("hub-components.access-tab.items-sources",[Cf]),vv=function(e,t,n){return[].concat(fv(e.filter((function(e){return(e[t]&amp;&amp;e[t].type)===n}))),fv(e.filter((function(e){return(e[t]&amp;&amp;e[t].type)!==n}))))},bv=function(e){return vv(e,"owner","user")},yv=function(){function e(t,n,r){var o=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),Cv(this,"_getGroupKey",(function(e,t){return t.id})),Cv(this,"get",function(){var e,t=(e=gv().mark((function e(t,n){var r,i,a,s,c,l,g,u,d,p,A,C,I,f,m,h,v;return gv().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r="id,type,name,login,allUsers,registeredUsers,autoJoin",a=[i="organization(id,name)","project(id,name,global,owner/id)"].join(","),s="id,role(id,name,key),owner(id,name,login,userCount,banned),".concat(i),"project"!==t.type){e.next=25;break}return c=t.id,l="id,role(id,name,key),owner(id,name,login,userCount,banned,userType(id)),".concat(a),e.next=10,t.datasource.getProject({id:"".concat(c,"/transitiveprojectroles"),fields:l,query:n,$top:-1});case 10:return g=e.sent,u=(g.transitiveprojectroles||[]).filter((function(e){var t=e.owner;return!t||!o.$inject.hubUserLicenseTypes.isReporter(t)})),d="owner/id,team(ownUsers(id,type,name,login,banned),groups(id,type,name)),".concat(i),e.next=15,t.datasource.getProject({id:c,fields:d});case 15:if(!(p=e.sent).organization){e.next=22;break}return A=p.organization.id,e.next=20,t.datasource.getOrganization({id:"".concat(A,"/organizationroles"),fields:s,query:n,$top:-1});case 20:C=e.sent,u=u.concat(C.organizationroles||[]);case 22:return e.abrupt("return",o._buildProjects(dv(dv(dv({},g),p),{},{transitiveRoles:u}),t));case 25:if("organization"!==t.type){e.next=33;break}return I=t.id,e.next=29,t.datasource.getOrganization({id:"".concat(I,"/organizationroles"),fields:s,query:n,$top:-1});case 29:return f=e.sent,e.abrupt("return",o._buildOrganizations(f));case 33:return m="id,role(id,name,key),owner(".concat(r,"),").concat(a,",sources(group(").concat(r,")),teamMember"),h="user"===t.type?t.datasource.getUserAccess:t.datasource.getGroupAccess,e.next=37,h(t.id,n,m);case 37:return v=e.sent,e.abrupt("return",o._buildUsersAndGroups(v,t));case 39:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){pv(i,r,o,a,s,"next",e)}function s(e){pv(i,r,o,a,s,"throw",e)}a(void 0)}))});return function(e,n){return t.apply(this,arguments)}}()),this.$inject={$location:t,i18n:n,hubUserLicenseTypes:r}}return e.$inject=["$location","i18n","hubUserLicenseTypes"],t=e,n=[{key:"_group",value:function(e,t,n,r){var o=arguments.length&gt;4&amp;&amp;void 0!==arguments[4]?arguments[4]:function(e){return e},i=arguments.length&gt;5&amp;&amp;void 0!==arguments[5]?arguments[5]:this._getGroupKey,a={},s=function(e,t){return e[n].name.localeCompare(t[n].name)};return e.forEach((function(e){if(e.owner&amp;&amp;e.role&amp;&amp;e.accessScope){var n=e.id,o=e[t],s=e.isRoleRemovable,c=e.isGroupRemovable,l=e.isTeamRemovable,g=e.withReason,u=e.badges,d=i(e,o);void 0===a[d]&amp;&amp;(a[d]=Cv(Cv(Cv({id:n,key:"".concat(r,"-").concat(d),isRoleRemovable:s,isGroupRemovable:c,isTeamRemovable:l,withReason:g,badges:u},t,o),"children",[]),"items",[])),a[d].children.push(dv({},e))}})),Object.keys(a).map((function(e){var t=a[e];return t.children.length&gt;1&amp;&amp;(t.items=o(t.children.sort(s)).map((function(e){var n=e.isRoleRemovable,r=e.isGroupRemovable,o=e.isTeamRemovable,i=e.withReason,a=e.badges;return dv(dv({},t),{},{isRoleRemovable:n,isGroupRemovable:r,isTeamRemovable:o,withReason:i,badges:a,key:"".concat(t.key,"-sub-").concat(e.id),children:[e],items:[],subItem:!0})}))),t})).sort((function(e,n){return e[t].name.localeCompare(n[t].name)}))}},{key:"_isRoleGrouping",value:function(){return"roles"===this.$inject.$location.search().mode}},{key:"_groupAccessScopeTabItems",value:function(e,t){var n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:this._getGroupKey;return bv(this._isRoleGrouping()?this._group(e,"role","owner",t,bv,n):this._group(e,"owner","role",t,bv,n))}},{key:"_groupAccessOwnerTabItems",value:function(e,t){var n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:this._getGroupKey;return function(e){return vv(e,"accessScope","organization")}(this._isRoleGrouping()?this._group(e,"role","accessScope",t,void 0,n):this._group(e,"accessScope","role",t,void 0,n))}},{key:"_addBadge",value:function(e,t){e.badges||(e.badges=new Set),e.badges.add(t)}},{key:"_markTeamDuplicates",value:function(e){var t=this;e.filter((function(e){return e.isTeamRemovable})).forEach((function(n){e.filter((function(e){return!e.isTeamRemovable})).some((function(e){return e.role.id===n.role.id&amp;&amp;e.project.id===n.project.id}))&amp;&amp;t._addBadge(n,{text:t.$inject.i18n("duplicated"),type:"role"})}))}},{key:"_markDuplicateRoles",value:function(e,t){var n=this,r="direct",o=e[r];Object.keys(e).filter((function(e){return e!==r})).forEach((function(r){e[r].forEach((function(e){var r=o.find((function(n){var r=t?(n.owner&amp;&amp;n.owner.id)===(e.owner&amp;&amp;e.owner.id):n.accessScope.id===e.accessScope.id;return n.role.id===e.role.id&amp;&amp;r}));r&amp;&amp;n._addBadge(r,{text:n.$inject.i18n("duplicated"),type:"role"})}))}))}},{key:"_getAccessScope",value:function(e){var t=e.project,n=e.organization;return dv({type:t?"project":"organization"},t||n)}},{key:"_setProjectOwnerBadge",value:function(e){var t=this;Object.keys(e).forEach((function(n){e[n].forEach((function(e){e.project&amp;&amp;(e.owner&amp;&amp;e.owner.id)===(e.project.owner&amp;&amp;e.project.owner.id)&amp;&amp;t._addBadge(e,{text:t.$inject.i18n("project owner"),type:"project"})}))}))}},{key:"_setUserBannedBadge",value:function(e){var t=this;Object.keys(e).forEach((function(n){e[n].forEach((function(e){e.owner&amp;&amp;e.owner.banned&amp;&amp;t._addBadge(e,{text:t.$inject.i18n("banned"),type:"project",invalid:!0})}))}))}},{key:"_buildProjects",value:function(e,t){var n=this,r=e.transitiveRoles,o=void 0===r?[]:r,i=e.team,a=void 0===i?{}:i,s=e.owner,c=void 0===s?{}:s,l=e.organization,g=void 0===l?{}:l,u=this.$inject.i18n,d=new Set,p={direct:[],team:[],organization:[],global:[]};o.filter((function(e){return e.owner&amp;&amp;"projectTeam"!==e.owner.type})).forEach((function(e){var r=e.role,o=n._getAccessScope(e);o.id===t.id?p.direct.push(dv(dv({},e),{},{accessScope:o,isRoleRemovable:!0})):o.global?p.global.push(dv(dv({},e),{},{accessScope:o})):"organization"===o.type&amp;&amp;p.organization.push(dv(dv({},e),{},{accessScope:o})),d.add(r.id)}));var A=o.filter((function(e){return e.owner&amp;&amp;"projectTeam"===e.owner.type}));return[].concat(a.ownUsers||[],a.groups||[]).forEach((function(e){var r=(A||[]).map((function(r){return{id:"".concat(e.id,"-").concat(r.id),isTeamRemovable:!0,role:dv({},r.role),owner:dv({},e),accessScope:n._getAccessScope(Cv({},t.type,{id:t.id,name:t.name,owner:c}))}}));p.team=p.team.concat(r)})),this._markDuplicateRoles(p,!0),this._setProjectOwnerBadge(p),this._setUserBannedBadge(p),Object.keys(p).forEach((function(e){p[e]=n._groupAccessScopeTabItems(p[e],e)})),{roles:[{label:u("Roles assigned directly to users and groups"),data:p.direct},{label:u("Roles assigned to members of the project team"),data:p.team},{icon:cv(),label:u('Roles assigned in organization "{{name}}"',g),data:p.organization},{icon:cv(),label:u("Roles assigned to the global project"),data:p.global}],totalNumberOfProjectroles:d.size}}},{key:"_buildOrganizations",value:function(e){var t=this,n=e.organizationroles,r=this.$inject.i18n,o=n.map((function(e){return dv(dv({},e),{},{isRoleRemovable:!0,accessScope:t._getAccessScope(e)})}));this._setUserBannedBadge({items:o});var i=this._groupAccessScopeTabItems(o,"direct");return{roles:[{label:r("Roles assigned directly to users and groups"),data:i}],totalNumberOfProjectroles:o.length}}},{key:"_buildUsersAndGroups",value:function(){var e=this,t=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:[],n=arguments.length&gt;1?arguments[1]:void 0,r=this.$inject.i18n,o=new Set,i="user"===n.type,a={direct:[],teams:[],groups:[],allUsers:[],registeredUsers:[]},s=[],c=t.filter((function(e){return e.sources})),l=c.filter((function(e){return e.owner&amp;&amp;"projectTeam"===e.owner.type})),g=c.filter((function(e){return e.owner&amp;&amp;"projectTeam"!==e.owner.type}));l.forEach((function(t){var n=t.owner;t.sources.forEach((function(r){a.teams.push(dv(dv({},t),{},{accessScope:e._getAccessScope(t),owner:r.group||n,isTeamRemovable:"teamRoleSource"===r.type,withReason:Boolean(r.group)}))}))})),g.forEach((function(t){var n=e._getAccessScope(t);t.sources.forEach((function(e){if("ownRoleSource"===e.type)a.direct.push(dv(dv({},t),{},{accessScope:n,isRoleRemovable:!0}));else if("groupRoleSource"===e.type){var r=i?e.group:t.owner,o=r.allUsers,c=r.registeredUsers,l=r.autoJoin,g=r.id;o?a.allUsers.push(dv(dv({},t),{},{accessScope:n})):c?a.registeredUsers.push(dv(dv({},t),{},{accessScope:n})):i&amp;&amp;l&amp;&amp;!o&amp;&amp;!c||!i?(void 0===a[g]&amp;&amp;(s.push(r),a[g]=[]),a[g].push(dv(dv({},t),{},{accessScope:n,owner:r,isGroupRemovable:i}))):a.groups.push(dv(dv({},t),{},{accessScope:n,owner:r,isGroupRemovable:!0,withReason:!0}))}}))})),this._markTeamDuplicates(a.teams),this._markDuplicateRoles(a,!1),i&amp;&amp;this._setProjectOwnerBadge(a);var u=function(e,t){return"".concat(t.id,"-").concat(e.isTeamRemovable?"directInTeam":"indirectInTeam")};return Object.keys(a).forEach((function(t){a[t].forEach((function(e){return o.add(e.role.id)}));var n=a[t]===a.teams?u:void 0;a[t]=e._groupAccessOwnerTabItems(a[t],t,n)})),{roles:[{label:r("Direct roles"),data:a.direct},{label:r("Team roles in project"),data:[].concat(fv(a.teams.filter((function(e){return e.isTeamRemovable}))),fv(a.teams.filter((function(e){return!e.isTeamRemovable}))))},{label:r("Roles assigned to groups"),data:a.groups}].concat(fv(s.map((function(e){return{icon:av(),badge:i?r("auto-join"):"",label:"".concat(r("Roles assigned to {{group.name}}",{group:e})),data:a[e.id]}}))),[{icon:av(),badge:i?r("auto-join"):"",label:r("Roles assigned to All users"),data:a.allUsers},{icon:av(),badge:i?r("auto-join"):"",label:r("Roles assigned to Registered Users"),data:a.registeredUsers}]),totalNumberOfProjectroles:o.size}}}],n&amp;&amp;Av(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,n}();hv.service("AccessTabItemsSources",yv);const wv=hv.name,_v=angular.module("hub-components.access-tab",[KA(),Qe,zm,Md,Ql,sh,_h,Wh,ov,wv]).name;function jv(e){return jv="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},jv(e)}function xv(e){return xv=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},xv(e)}function Ev(e,t){return Ev=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Ev(e,t)}function Sv(e,t,n){return(t=Tv(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Tv(e){var t=function(e,t){if("object"!==jv(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==jv(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===jv(t)?t:String(t)}n(32e3);var Mv=angular.module("hub-components.user-access-tab",[_v,Cf]),Lv=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return Sv(e=function(e,t,n){return t=xv(t),function(e,t){if(t&amp;&amp;("object"===jv(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],xv(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"puzzleIconGlyph",Um()),Sv(e,"isHub",e.$inject.hubConfig.embedded),Sv(e,"hasReporterWarning",(function(){return e.$inject.hubUserLicenseTypes.isReporter(e.user)})),Sv(e,"removeMarkdownFromDescription",(function(e){return Dm()(e)})),Sv(e,"teamMembers",(function(t){return t.slice(0,6).map((function(n,r){return n.showMore=e.isTeamMembersOverLimit(t,r),n}))})),Sv(e,"getRemainUsersCount",(function(e){return e.length-6+1})),Sv(e,"isTeamMembersOverLimit",(function(e,t){return e.length&gt;6&amp;&amp;5===t})),Sv(e,"getProjectLink",(function(e){return e.archived?"admin/editProject/".concat(e.id):"projects/".concat(e.id)})),Sv(e,"getTeamLink",(function(e){return"admin/editProject/".concat(e.id,"?tab=team")})),Sv(e,"getUserLink",(function(e){return"users/".concat(IC(e.login,e.id))})),Sv(e,"getUserOrTeamLink",(function(t,n,r){return r?e.getTeamLink(t):e.getUserLink(n)})),Sv(e,"revokeAccess",(function(t,n){try{nm.revokeAccessAuthorizedReporter(n),e.datasource.removeReporterWithRestrictedAccess(t,e.user.id),e.user.helpdeskProjectSettings=e.user.helpdeskProjectSettings.filter((function(e){return e.id!==t}))}catch(e){throw e}})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;Ev(e,t)}(t,e),n=t,Object.defineProperty(n,"prototype",{writable:!1}),n;var n}(p);Sv(Lv,"$inject",["$scope","$timeout","$location","i18n","hubI18nPlural","hubUserLicenseTypes","hubAccessTabService","hubSidebarStateStorage","$filter","settingsUtils","hubConfig"]),Sv(Lv,"template",n(32e3)),Sv(Lv,"bindings",{user:"=?",datasource:"="}),Mv.component("hubUserAccessTab",Lv);const kv=Mv.name;var Ov=angular.module("HUB.user-page.licenses",[]);Ov.component("userLicenses",{bindings:{user:"&lt;",readOnly:"&lt;"},template:n(6812),controller:["$q","licenseDateFilter","SelectOptionsResource","UserResource","dialog","i18n","LicenseUserResource","UNLIMITED","hubNotify","userPermissions","HostServiceInfo",function(e,t,r,o,i,a,c,l,g,u,d){var p=this,A=this;this.services=[],this.hostServiceId=null,u.bindVariable(this,"userUpdate","user-update"),u.bindVariable(this,"selfUpdate","profile-updateSelf");var C=r.servicesDatasourceFactory((function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:"";return e?"".concat(e," and has: license"):"has: license"}),null,"licenseSettings(id,licenseName,licenseInfo(userCount,expirationDate,freeUpdateEnd))");e.all({services:C(void 0).then((function(n){var r=n.filter((function(e){return e.licenseSettings&amp;&amp;e.licenseSettings.licenseInfo})).map((function(e){if(e.limitedLicense=e.licenseSettings.licenseInfo.userCount!==l,e.limitedLicense)return o.get({fields:"id",query:"id: ".concat(p.user.id," and hasLicense: ").concat(e.id)}).$promise.then((function(n){var r=e.licenseSettings.licenseInfo;e.licensed=!!n.total,e.licenseExpiration=t(r.expirationDate),e.licenseFreeUpdateEnd=t(r.freeUpdateEnd)}))}));return e.all(r).then((function(){return n}))})),hostService:d.requestHostService()}).then((function(e){var t=e.services,n=e.hostService;p.hostServiceId=n?n.id:null,p.services=t})),this.revoke=function(e){return g.confirm({label:a("Revoke {{service.name}} license?",{service:e}),okButtonLabel:a("Revoke"),actionPromise:function(){return function(e){return c.remove({id:e.licenseSettings.id,subId:p.user.id}).$promise.then((function(){e.licensed=!1})).catch((function(){s.Z.error(a("Cannot revoke {{service.name}} license from user {{user.name}}.",{service:e,user:A.user}))}))}(e)}})},this.add=function(){var t=[{label:a("Grant"),disabled:!0,default:!0,action:function(e){return function(e){return c.save({id:e.licenseSettings.id},{id:p.user.id}).$promise.then((function(){e.licensed=!0}))}(e.service)}},{label:a("Cancel")}];return i.show({title:a("Grant License"),template:n(15385),controller:["$scope",function(n){var r=function(){var t=A.services.filter((function(e){return!e.licensed&amp;&amp;e.limitedLicense})),n=e.all(t.map((function(e){return c.get({$top:-1,id:e.licenseSettings.id,fields:"id,banned"}).$promise.then((function(t){e.availableLicenses=e.licenseSettings.licenseInfo.userCount-(t.users.filter((function(e){return!e.banned}))||[]).length,e.exceeded=e.availableLicenses&lt;=0,e.description=e.exceeded?a("No available licenses"):""}))})));return n.then((function(){return t}))};n.data.initialLoading=!0,r().then((function(e){var r=e.filter((function(e){return!e.exceeded}));r.length?n.data.service=r.shift():n.data.service=e[0],n.data.initialLoading=!1,t[0].disabled=!1})),n.data.getOptions=r}],buttons:t})},this.userLicensesFilter=function(e){return e.licensed||!e.limitedLicense},this.hasUnlicensedServices=function(){return p.services.filter((function(e){return!e.licensed&amp;&amp;e.limitedLicense&amp;&amp;p.hostServiceId!==e.id})).length}}]});const Pv=Ov.name;var Nv=angular.module("HUB.user-page.general",[Em,Pv,Rf,Cf,mf]);Nv.factory("UserDetailsRevokeResource",["backend",function(e){return e.createResource("userdetails","revoke",{revoke:{method:"POST",params:{id:"@id"}}})}]).controller("UserGeneralCtrl",["$scope","i18n","settingsUtils","UserResource","UserPageService","hubConfig","feature","LocalesService","hubUserSharedGeneralProfile",function(e,t,n,r,o,i,a,s,c){var l=this;l.userResource=r,l.pageData=o.data,l.isStandalone=!i.embedded,l.shared=c(e.user,(function(e){return r.get(e).$promise}),e.hubBackend),e.user.userType=l.shared.licenseTypes.types.find((function(t){return t.id===(e.user.userType||{}).id})),a("jetbrains.hub.user.sshpublickeys.hide").then((function(t){e.hidePublicSSHKeys=t})),e.emailVerificationRequired=!1,n.loadSettings("public").then((function(t){t&amp;&amp;(e.endUserAgreement=t.endUserAgreement,e.emailVerificationRequired=t.emailVerificationRequired,e.showUserType=t.helpdeskEnabled)})),e.tempData={email:""},e.revokeEmail=function(){return l.shared.revokeEmail().then((function(){return u()}))},e.itemModifier=function(e){return e.profile&amp;&amp;e.profile.email&amp;&amp;(e.profile.email.email&amp;&amp;!e.profile.email.type&amp;&amp;(e.profile.email.type="EmailJSON"),e.profile.email.verified=null),e};var g=null;function u(){return e.reloadUserDetails().then((function(){l.shared=c(e.user,(function(e){return r.get(e).$promise}),e.hubBackend),e.profile=e.user.profile||{};var t=e.profile.unverifiedEmail&amp;&amp;e.profile.unverifiedEmail.email;null!==g&amp;&amp;t&amp;&amp;t!==g&amp;&amp;l.shared.verifyUnverifiedEmail(e.profile.unverifiedEmail),s.applyLanguage()}))}e.prepareVerification=function(){g=e.profile.unverifiedEmail&amp;&amp;e.profile.unverifiedEmail.email},e.getLocaleDescription=function(e){return e.community?t("community"):""},e.updateUser=u,e.userPromise.then(u),e.downloadPersonalData=function(){return e.personalDataIsDownloading=!0,l.shared.downloadUserPersonalData((function(){return e.$apply((function(){e.personalDataIsDownloading=!1}))}))},a("jetbrains.jetpass.locale.crowdin.incontext.embedded").then((function(t){e.languageSelectorDisabled=t||e.languageSelectorDisabled})),a("jetbrains.jetpass.locale.crowdin.incontext.community").then((function(t){e.languageSelectorDisabled=t||e.languageSelectorDisabled}))}]);const Dv=Nv.name;function Rv(e){return Rv="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Rv(e)}var Uv;function zv(e){return function(e){if(Array.isArray(e))return $v(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return $v(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?$v(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function $v(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function Gv(e){return Gv=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Gv(e)}function Bv(e,t){return Bv=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Bv(e,t)}function Fv(e,t,n){return(t=Zv(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Zv(e){var t=function(e,t){if("object"!==Rv(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Rv(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Rv(t)?t:String(t)}function Yv(){Yv=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==Rv(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function Wv(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}var Hv=angular.module("hub-components.user-profile-groups",[hm,Md,Sh,cd]);Hv.component("hubUserProfileGroupsToolbar",{bindings:{onShowLoader:"&amp;",onHideLoader:"&amp;",onRefresh:"&amp;",selection:"&lt;"},bindToController:!0,require:["^^hubTable"],template:n(659),controller:["$scope","$q","$element","hubBulkOperation","userPermissions","hubNotify","hubPageStorage","i18n","auth","gettextCatalog","HubErrorMessageBundle",function(e,t,n,r,o,i,a,s,c,l,g){var u=n.controller("hubTable"),d=this,p=new mA(c.auth,s,l);d.groupsDataSource=function(e){return p.getUserGroups(a.get("id"),e)},d.inactiveMode=a.get("isReporter"),d.canRemove=!1,e.$watchCollection("$ctrl.selection.items",(function(e){var n=e.filter((function(e){return!e.implicit&amp;&amp;"All Users"!==e.name&amp;&amp;"Registered Users"!==e.name}));0===n.length?d.canRemove=!1:t.all(n.map((function(e){return o.check("group-update",e.project&amp;&amp;e.project.id)}))).then((function(e){d.canRemove=e.some((function(e){return e}))}))})),d.onGroupToAddSelected=function(e){return d.addingToGroup=!0,p.addUserToGroup({groupId:e.id,userId:a.get("id")}).then((function(){return d.onShowLoader(),d.onRefresh()})).then((function(){return d.onHideLoader()}),(function(e){i.error(g.msg(e,"add-group"))})).finally((function(){d.addingToGroup=!1}))},d.removeGroup=function(e){var t=a.get("name"),n=e.map((function(e){return e.name})),o=n.length&gt;1?n.slice(0,-1).join(", ")+s(" and ")+n.slice(-1)[0]:n[0],c=s("This action removes membership for {{userName}} from {{groupList}}.",{userName:t,groupList:o});return i.confirm({label:s("Remove User"),description:c,okButtonLabel:s("Remove"),actionPromise:function(){var t=function(){var e,t=(e=Yv().mark((function e(t){return Yv().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,p.removeUserFromGroup({groupId:t.id,userId:a.get("id")});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Wv(i,r,o,a,s,"next",e)}function s(e){Wv(i,r,o,a,s,"throw",e)}a(void 0)}))});return function(e){return t.apply(this,arguments)}}();return r.withoutReporter(e,t).then((function(){u.onSelect(u.selection.reset()),d.onRefresh()}))}})}}]}),Hv.controller("UserGroupsTableCtrl",(Uv=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];Fv(e=function(e,t,n){return t=Gv(t),function(e,t){if(t&amp;&amp;("object"===Rv(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],Gv(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"itemsLevels",new Map),Fv(e,"collapsedItemsSet",new Set),Fv(e,"collapsedItems",[]),Fv(e,"isItemSelectable",(function(e){return!e.implicit&amp;&amp;"All Users"!==e.name&amp;&amp;"Registered Users"!==e.name})),Fv(e,"getItemLevel",(function(t){return"Registered Users"!==t.name?e.itemsLevels.get(t):1})),Fv(e,"onItemLevelChange",(function(t,n){e.itemsLevels.set(t,n)})),Fv(e,"isItemCollapsible",(function(e){return e.hasOwnProperty("subgroups")&amp;&amp;"All Users"!==e.name&amp;&amp;"Registered Users"!==e.name})),Fv(e,"isItemCollapsed",(function(t){return e.collapsedItemsSet.has(t)})),Fv(e,"isParentCollapsible",(function(t){return e.getItemLevel(t)&gt;1})),Fv(e,"onItemCollapse",(function(t){e.collapsedItemsSet.add(t),e.collapsedItems=zv(e.collapsedItemsSet)})),Fv(e,"onItemExpand",(function(t){e.collapsedItemsSet.delete(t),e.collapsedItems=zv(e.collapsedItemsSet)})),Fv(e,"_findExplicitSubgroup",(function(t){return t?t.implicit?e._findExplicitSubgroup(t.subgroups[0]):t:void 0})),Fv(e,"getCheckboxTooltip",(function(t){if(t.implicit){var n=e.$inject,r=n.i18n,o=n.hubPageStorage,i=t.name,a=(e._findExplicitSubgroup(t)||{}).name;return r("{{userName}} is an indirect member of {{groupName}} as a member of the subgroup {{subgroupName}}. Removing this user from {{subgroupName}} also removes membership from {{groupName}}.",{userName:o.get("name"),groupName:i,subgroupName:a})}return""})),Fv(e,"isDisabledSelectionVisible",(function(e){return"All Users"!==e.name&amp;&amp;"Registered Users"!==e.name}));var s=e.$inject,c=s.i18n,l=s.$filter;return e.columns=[{id:"name",title:c("Name"),className:"column-with-gray-dots",getValue:function(e){return i.createElement(YI.Z,null,e.iconUrl?i.createElement(ZI.Z,{style:{verticalAlign:"middle"},url:e.iconUrl,size:ZI.$.Size20}):i.createElement("span",{className:"group-list__icon-wrapper"},i.createElement(da.ZP,{glyph:av(),size:da.ZP.Size.Size14,className:"group-list__icon",color:da.ZP.Color.GRAY})),i.createElement(a.Z,{href:l("linkToHub")("groups",e.name,e.id)},e.name),e.autoJoin&amp;&amp;i.createElement(io.Z,null,c("auto-join")),e.requiredTwoFactorAuthentication&amp;&amp;i.createElement(io.Z,{"data-test":"2FA-badge"},c("2FA")),i.createElement(vi.Z,{info:!0,className:"hub-table__description"},e.description))}},{id:"roles",title:c("Roles"),getValue:function(e){return i.createElement(vi.Z,{className:"group-list__roles"},(e.projectRoles||[]).map((function(e){return"".concat(e.project.name," ").concat(e.role.name)})).join(", "))}}],e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;Bv(e,t)}(t,e),n=t,Object.defineProperty(n,"prototype",{writable:!1}),n;var n}(p),Fv(Uv,"$inject",["i18n","hubPageStorage","$filter"]),Uv));const qv=Hv.name;function Qv(e){return Qv="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Qv(e)}function Vv(e){return Vv=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Vv(e)}function Kv(e,t){return Kv=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Kv(e,t)}function Jv(e){var t=function(e,t){if("object"!==Qv(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Qv(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Qv(t)?t:String(t)}tb.$inject=["$element"];var Xv=angular.module("HUB.user-page.groups",[cd,qv]),eb=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var r=arguments.length,o=new Array(r),i=0;i&lt;r;i++)o[i]=arguments[i];return e=function(e,t,n){return t=Vv(t),function(e,t){if(t&amp;&amp;("object"===Qv(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],Vv(e).constructor):t.apply(e,n))}(this,t,[].concat(o)),e.$inject.settingsUtils.loadSettings("public").then((function(t){e.isInYoutrackEmbedded=!!t&amp;&amp;"youtrack"===t.hostServiceName.toLowerCase(),e.groupsToolbarTemplate=n(64751),e.groupsSidebarTemplate=n(25535),e.groupsEmptyTemplate=n(49037)})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;Kv(e,t)}(t,e),r=t,Object.defineProperty(r,"prototype",{writable:!1}),r;var r}(p);function tb(e){var t=e.controller("hubResource");this.onShowLoader=function(){return t.showLoader()},this.onHideLoader=function(){return t.hideLoader()},this.onRefresh=function(){return t.refresh()}}!function(e,t,n){(t=Jv(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(eb,"$inject",["settingsUtils"]),Xv.controller("UserGroupsCtrl",eb),Xv.controller("UserGroupsToolbarCtrl",tb);const nb=Xv.name;var rb=n(42238),ob=n.n(rb);function ib(e){return ib="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},ib(e)}function ab(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function sb(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ab(Object(n),!0).forEach((function(t){cb(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ab(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function cb(e,t,n){return t=function(e){var t=function(e,t){if("object"!==ib(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==ib(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ib(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var lb=angular.module("hub-components.merge-user-details",[]),gb={create:{},users:[],modules:[],performed:!1};lb.controller("mergeUserDetailsMoveController",["$scope","hubMergeUserDetails",function(e,t){t.mergeData={},e.dialog.data={username:"",password:"",matches:sb({},gb),userId:t.userId},e.$watch("dialog.data.matches",(function(n){var r=e.dialog.buttons[0];if(n){t.mergeData={createHubDetails:!!n.create.checked,foundUsers:n.users.filter((function(e){return e.checked})).map((function(e){return e.mergeId})),noUserAttempts:n.modules.filter((function(e){return e.checked})).map((function(e){return e.mergeId}))};var o=t.mergeData;r.disabled=!(o.createHubDetails||o.foundUsers.length||o.noUserAttempts.length)}else r.disabled=!0}),!0)}]),lb.service("hubMergeUserDetails",["dialog","$http","HubErrorMessageBundle","i18n","hubNotify","auth","$q",function(e,t,r,o,i,a,s){return{userId:null,mergeData:{},show:function(a){var l=this;return l.userId=a.id,e.show({title:o("Add Credentials"),template:n(41246),autoWidth:!0,controller:"mergeUserDetailsMoveController",buttons:[{label:o("Add credentials"),hidden:!0,close:!0,action:function(e,t,n){return l.mergeCredentials(a).catch((function(e){var t=i.errorMapper({"auth.details.merge.wrongTargetUser":o("Validation results were saved for {{expectedUser}} but was requested for {{actualUser}}. It may happen in case of the current user adds credentials for different target users in two browser tabs at the same time."),"auth.details.merge.noResults":o("Verification results are not found for the current user. Be sure that the verification is called before the merge and the current user is not merged into an another user in the meantime."),"auth.details.merge.busyLogin":o("Cannot add Hub credentials. Possibly, a credentials with such a login have been already added by someone else."),"auth.details.merge.busyEmail":o("Cannot add Hub credentials. Possibly, a credentials with such an email have been already added by someone else."),"auth.details.merge.authError":o("Cannot add Hub credentials to the current user because of the auth phase error: {{errorId}}"),"auth.details.merge.hubCredentialsNotFound":o("Verification results for the requested hub credentials creation are not found. Possibly, the current user already has the requested credentials.")})(e);return n(t),s.reject(e)})).then((function(){return!0}))}},{label:o("Verify credentials"),close:!1,default:!0,action:function(e,n,o,a,s){return e.matches=sb({},gb),e.failure=null,t.post("".concat(c(),"/mergedetails/authenticate?fields=foundUsers(id,user(id,login,email(email)),attempts(id,authModule(id,name),externalUserDetails(login,email(email)))),noUserAttempts(id,authModule(id,name),externalUserDetails(email(email))),createHubDetails(isAllowed,errorId)"),{credentials:{username:e.username,password:e.password},userId:l.userId}).then((function(t){e.matches.users=t.data.foundUsers&amp;&amp;t.data.foundUsers.map((function(e){var t=[];return e.attempts.forEach((function(e){var n=e.externalUserDetails;t.push({name:e.authModule.name,email:n.email&amp;&amp;n.email.email,login:n.login})})),{id:e.user.id,mergeId:e.id,login:e.user.login,modules:t}}))||[],e.matches.modules=t.data.noUserAttempts&amp;&amp;t.data.noUserAttempts.map((function(e){var t=e.externalUserDetails;return{mergeId:e.id,name:e.authModule.name,email:t.email&amp;&amp;t.email.email,login:t.login}}))||[];var n=t.data.createHubDetails;0===e.matches.users.length&amp;&amp;0===e.matches.modules.length&amp;&amp;(n.errorId?(e.matches.error=r.msg({status:"400",data:{error:n.errorId}},"change-password"),e.matches.createAllowed=!1):e.matches.createAllowed=n.isAllowed),e.matches.performed=!0}),i.errorHandler()).then((function(){var t=s[0];t.hidden=!(e.matches.createAllowed||e.matches.users.length),t.default=!0,t.disabled=!0,n.default=!1}))}},{label:o("Cancel")}]})},mergeCredentials:function(e){return t.post("".concat(c(),"/mergedetails/merge?fields=details(id,authModule(id,name,disabled,serverUrl),authModuleName,email,lastAccessTime,lastAccessAddress,lastAccessUserAgent,originService(id,name),user(login),passwordChangeRequired,login,fullName,avatar,identifier,changePasswordUrl,userid,VCSName)"),sb(sb({},this.mergeData),{userId:this.userId})).then(i.successHandler(o('Selected credentials were successfully added to user "{{ login }}"',{login:e.login})))}};function c(){var e=a&amp;&amp;a.auth&amp;&amp;a.auth.getAPIPath();return e.length&amp;&amp;"/"===e[e.length-1]?e.substring(0,e.length-1):e||""}}]);const ub=lb.name;var db=angular.module("hub-components.authmodule.core",[tf]);db.controller("CoreAuthModuleEditCtrl",["$scope","filterFilter","i18n",function(e,t,n){for(var r=[{value:0,label:n("No Policy"),description:n("Any password")},{value:2,label:n("Fair",null,"Password strength policy"),description:n("Entropy 20-26 bits")},{value:3,label:n("Good",null,"Password strength policy"),description:n("Entropy 26-33 bits")},{value:4,label:n("Very Strong",null,"Password strength policy"),description:n("Entropy &gt; 33 bits")}],o={},i=0;i&lt;r.length;i++)o[r[i].value]=r[i].label;e.scores=function(e){return t(r,e||"")},e.getScoreButtonText=function(e){return e&amp;&amp;e.label||o[e]||r[0]},e.wideSelectConfig={minWidth:280}}]),db.controller("CoreAuthModuleToolbarCtrl",["$scope","i18n","AuthModuleExtensionsResource","dialog","hubNotify",function(e,t,r,o,i){e.requirePasswordChange=function(e){return o.show({template:n(6782),buttons:[{label:t("Confirm"),action:function(){r.requirePasswordChange({id:e.id}).$promise.then(i.successHandler(t("Password change requested")),i.errorHandler(t("Failed to request password change")))}},{label:t("Cancel"),default:!0}]})}}]),db.config(["authModuleProvider",function(e){e.addModulePlugin({name:function(e){return e("Built-in Authorization")},module:{typeName:"CoreAuthModule",type:"CoreauthmoduleJSON",fields:["registrationEnabled","passwordRestoreEnabled","passwordStrengthPolicy","captchaEnabled"],template:n(71230),testLoginTemplate:n(38094),getDocumentationLink:function(){return"Hub-Auth-Module.html"},deletable:!1},detail:[{type:"EmailuserdetailsJSON",fields:["originService(id,name)","user(login)","passwordChangeRequired"],getName:function(e){return e.user.login},changePasswordTemplate:n(44895)},{type:"LoginuserdetailsJSON",fields:["login","originService(id,name)","passwordChangeRequired"],getLogin:function(e){return e.login},changePasswordTemplate:n(44895)}]}),e.addModulePlugin({name:function(e){return e("Guest Authorization")},module:{typeName:"GuestAuthModule",type:"GuestauthmoduleJSON",fields:[],template:"",deletable:!1},detail:[]})}]);const pb=db.name;var Ab=angular.module("hub-components.authmodule.github",[tf]);Ab.config(["authModuleProvider",function(e){e.addModulePlugin({name:function(e){return e("GitHub")},title:function(e){return e("New GitHub Auth Module")},module:{typeName:"GithubAuthModule",type:"GithubauthmoduleJSON",fields:["clientId","clientSecret","scope","iconUrl","redirectUri","allowedOrganizations"],template:n(4201),getDocumentationLink:function(){return"GitHub-Authentication-Module.html"},create:[{name:function(e){return e("GitHub")},item:{serverUrl:"https://github.com",disabled:!0},template:n(87745),existsQuery:"type: GitHub"}],deletable:!0},detail:[{type:"GithubdetailsJSON",fields:["login","fullName","avatar"],getLogin:function(e){return e.login},getName:function(e){return e.fullName}}]})}]);const Cb=Ab.name;var Ib=angular.module("hub-components.authmodule.google",[tf]);Ib.config(["authModuleProvider",function(e){e.addModulePlugin({name:function(e){return e("Google")},module:{typeName:"GoogleAuthModule",type:"GoogleauthmoduleJSON",fields:["clientId","clientSecret","iconUrl","redirectUri","newUserRestrictDomain"],template:n(17143),getDocumentationLink:function(){return"Google-Authentication-Module.html"},create:[{name:function(e){return e("Google")},item:{name:function(e){return e("Google")},serverUrl:"https://accounts.google.com/o/oauth2",disabled:!0},existsQuery:"type: Google"}],deletable:!0},detail:[{type:"GoogledetailsJSON",fields:["identifier","fullName","avatar"],getName:function(e){return e.fullName},getLogin:function(e){return e.identifier}}]})}]);const fb=Ib.name;var mb=angular.module("hub-components.authmodule.jba",[tf]);mb.config(["authModuleProvider",function(e){e.addModulePlugin({name:function(e){return e("JetBrains Account")},module:{typeName:"JBAAuthModule",type:"JbaauthmoduleJSON",fields:["allowedCreateNewUsers","changePasswordUri","connectionTimeout","readTimeout","registrationEnabled","keyStore(id,name)"],template:n(89194),testLoginTemplate:n(49831),changePasswordTemplate:n(69922),getDocumentationLink:function(){return"jetbrains-account-auth-module.html"},create:[{item:{name:function(e){return e("Legacy JetBrains Account")},serverUrl:"https://account.jetbrains.com",changePasswordUri:"change-password"},existsQuery:"type: {Legacy JetBrains Account}"}],deletable:!0},detail:[{type:"JbadetailsJSON",fields:["login","fullName","changePasswordUrl"],getName:function(e){return e.fullName},getLogin:function(e){return e.login},changePasswordTemplate:n(69922),externalChangePassword:!0}]})}]);const hb=mb.name;var vb=angular.module("HUB.authmodule.jbaoauth",[tf]);vb.config(["authModuleProvider",function(e){e.addModulePlugin({name:function(e){return e("JetBrains Account")},module:{typeName:"JbaOauthAuthModule",type:"JbaoauthauthmoduleJSON",fields:["newUserRestrictDomain","extensionGrantType"],template:n(15270),getDocumentationLink:function(){return"jetbrains-account-auth-module.html"},create:[{name:function(e){return e("JetBrains Account")},item:{name:function(e){return e("JetBrains Account")},disabled:!0},existsQuery:"type: {JetBrains Account}"}],deletable:!0},detail:[{type:"JbaoauthdetailsJSON",fields:["login","fullName"],getName:function(e){return e.fullName},getLogin:function(e){return e.login}}]})}]);const bb=vb.name;var yb=angular.module("hub-components.authmodule.jira",[tf]);yb.config(["authModuleProvider",function(e){e.addModulePlugin({name:function(e){return e("Atlassian Jira")},title:function(e){return e("New Atlassian Jira Auth Module")},module:{typeName:"JiraAuthModule",type:"JiraauthmoduleJSON",fields:["allowedCreateNewUsers","changePasswordUri","connectionTimeout","readTimeout","keyStore(id,name)"],template:n(85917),testLoginTemplate:n(1815),getDocumentationLink:function(){return"Atlassian-Jira-Auth-Module.html"},create:[{template:n(87745)}],deletable:!0},detail:[{type:"JiradetailsJSON",fields:["login","fullName","changePasswordUrl"],getName:function(e){return e.fullName},getLogin:function(e){return e.login},changePasswordTemplate:n(66739),externalChangePassword:!0}]})}]);const wb=yb.name;function _b(e){return _b="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},_b(e)}function jb(){jb=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==_b(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function xb(e){return function(e){if(Array.isArray(e))return Eb(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Eb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Eb(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Eb(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function Sb(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}var Tb=angular.module("hub-components.authmodule.ldap",[tf,jh,br]);Tb.controller("LdapAuthModuleCreateCtrl",["$scope",function(e){e.dialog.data.port=389,e.$watch("data.ssl",(function(t){e.dialog.data.port=t?636:389})),e.$watchGroup(["dialog.data.server","dialog.data.port","dialog.data.searchBase"],(function(){var t=e.dialog.data;t.item.serverUrl="".concat(t.ssl?"ldaps":"ldap","://").concat((t.server||"").replace(/((.*?):\/\/)/gi,""),":").concat(t.port,"/").concat(t.searchBase||"")})),e.$watch("dialog.data.searchBase",(function(t){if(t)if("ActiveDirectory"===e.dialog.data.item.predefinedType){for(var n=t.split(","),r=[],o=0;o&lt;n.length;o++)n[o]&amp;&amp;0===n[o].toLowerCase().indexOf("dc=")&amp;&amp;r.push(n[o].substring(3));0!==r.length?e.dialog.data.item.formatDN="%u@".concat(r.join(".")):e.dialog.data.item.formatDN="%u"}else"OpenLDAP"===e.dialog.data.item.predefinedType&amp;&amp;(e.dialog.data.item.formatDN="uid=%u,".concat(t))}))}]),Tb.config(["authModuleProvider",function(e){e.addModulePlugin({name:function(e){return e("LDAP")},title:function(e){return e("New Active Directory Auth Module")},module:{typeName:"LdapAuthModule",type:"LdapauthmoduleJSON",fields:["connectionTimeout","readTimeout","filter","formatDN","emailAttributeName","fullNameAttributeName","userIdAttributeName","VCSNameAttributeName","groupsAttributeName","accountExpiresAttributeName","userAccountControlAttributeName","lockoutTimeAttributeName","lockoutDurationAttributeName","lockoutThresholdAttributeName","keyStore(id,name)","bindUserLogin","useBindUser","referralIgnored","groupMappings(externalGroupName,group(id,name)),attributeMappings(mapping,attributePrototype(id,name))","syncInterval","userStatusIgnored"],template:n(65816),testLoginTemplate:n(6196),getDocumentationLink:function(){return"LDAP-Authentication-Module.html"},getTabs:function(e){return e.groupsAttributeName?[{title:function(e){return e("Group Mappings")},id:"mappings",template:n(8132)}]:[]},create:[{template:n(64433),name:function(e){return e("LDAP")},title:function(e){return e("New LDAP Auth Module")},item:{filter:"uid=%u",formatDN:"uid=%u,ou=People",fullNameAttributeName:"cn",userIdAttributeName:"uid",groupsAttributeName:"memberOf",syncInterval:"0 0 0/3 * * ?"}},{template:n(64433),name:function(e){return e("Active Directory")},title:function(e){return e("New Active Directory Auth Module")},item:{filter:"sAMAccountName=%u",fullNameAttributeName:"displayName",userIdAttributeName:"sAMAccountName",groupsAttributeName:"memberOf",accountExpiresAttributeName:"accountExpires",userAccountControlAttributeName:"userAccountControl",lockoutTimeAttributeName:"lockoutTime",lockoutDurationAttributeName:"lockoutDuration",lockoutThresholdAttributeName:"lockoutThreshold",predefinedType:"ActiveDirectory",syncInterval:"0 0 0/3 * * ?"}},{template:n(64433),name:function(e){return e("OpenLDAP")},title:function(e){return e("New OpenLDAP Auth Module")},item:{filter:"uid=%u",fullNameAttributeName:"cn",userIdAttributeName:"uid",groupsAttributeName:"memberOf",predefinedType:"OpenLDAP",syncInterval:"0 0 0/3 * * ?"}}],deletable:!0},detail:[{type:"LdapdetailsJSON",fields:["userid","fullName","VCSName","ldapGroupNames","userStatus","authModule(userStatusIgnored)"],getName:function(e){return e.fullName},getLogin:function(e){return e.userid},getExtraFields:function(e,t){return e.userStatus?[{name:t("Account status"),value:e.userStatus}]:[]},changePasswordTemplate:n(57541),externalChangePassword:!0}]})}]),Tb.controller("LdapGroupMappingCtrl",["$scope","i18n","dialog","SelectOptionsResource","gettextCatalog","AuthModuleExtensionsResource",function(e,t,r,o,s,c){var l=this;this.selection=new xh.Z,e.$watch("moduleDraft.groupMappings",(function(){l.selection=l.selection.cloneWith({data:e.moduleDraft.groupMappings,selected:[]})})),this.onSelect=function(e){l.selection=e},this.columns=[{id:"ldap-name",title:t("LDAP Group DN"),getValue:function(e){var t=e.externalGroupName;return i.createElement("span",{title:t},t)}},{id:"hub-name",title:t("Target Group Name"),getValue:function(e){var n=e.group;return n&amp;&amp;n.name?i.createElement(a.Z,{href:n&amp;&amp;"groups/".concat(CC(n.name,n.id))},n.name):t("Missing read permission for mapped group")}}],this.keyGetter=function(e){var t=e.externalGroupName,n=e.group;return"".concat((n||{}).id,"-").concat(t)},this.addGroupMapping=function(){var i=null,a=(e.moduleDraft.groupMappings||[]).map((function(e){return e.externalGroupName})),s={getLdapGroups:function(e){return l.apply(this,arguments)},groupData:o.groupsDatasourceFactory((function(e){return Vd(e,"not is: allUsers and not is: registeredUsers")})),externalGroupName:null,group:null};function l(){var t;return t=jb().mark((function t(n){return jb().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(i){t.next=4;break}return t.next=3,c.getLdapGroups({id:e.moduleDraft.id},{}).$promise;case 3:i=t.sent;case 4:return e.$applyAsync(),t.abrupt("return",i.filter((function(e){return a.indexOf(e)&lt;0})).filter((function(e){return e.toLowerCase().indexOf((n||"").toLowerCase())&gt;=0})).map((function(e){return{label:e,key:e}})));case 6:case"end":return t.stop()}}),t)})),l=function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(e){Sb(i,r,o,a,s,"next",e)}function s(e){Sb(i,r,o,a,s,"throw",e)}a(void 0)}))},l.apply(this,arguments)}r.show({data:s,template:n(85281),buttons:[{label:t("Add"),action:function(){e.moduleDraft.groupMappings=[].concat(xb(e.moduleDraft.groupMappings||[]),[{externalGroupName:s.externalGroupName,group:s.group}])},default:!0},{label:t("Cancel")}]})},this.removeGroupMapping=function(){var t=xb(e.moduleDraft.groupMappings);l.selection.getActive().forEach((function(e){var n=t.indexOf(e);t.splice(n,1)})),e.moduleDraft.groupMappings=t},this.removeButtonTitle=function(){var e=l.selection.getActive().size;return s.getPlural(e,"Remove {{ count }} selected group mapping","Remove {{ count }} selected group mappings",{count:e})}}]);const Mb=Tb.name;var Lb=angular.module("hub-components.authmodule.openid",[tf]);Lb.config(["authModuleProvider",function(e){e.addModulePlugin({name:function(e){return e("OpenID 2.0")},title:function(e){return e("New Open ID 2.0 Auth Module")},module:{typeName:"OpenIDAuthModule",type:"OpenidauthmoduleJSON",fields:["emailSchema","firstNameSchema","lastNameSchema","fullNameSchema","avatarSchema","urlPattern","emailVerified","iconUrl"],template:n(53686),getDocumentationLink:function(){return"OpenID-Authentication-Module.html"},create:[{template:n(87745)}],deletable:!0},detail:[{type:"OpeniddetailsJSON",fields:["identifier","fullName"],getName:function(e){return e.fullName},getLogin:function(e){return e.identifier}}]})}]);const kb=Lb.name;function Ob(e){return Ob="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Ob(e)}var Pb=["serverUrl"],Nb=["name","item"];function Db(e){return function(e){if(Array.isArray(e))return Rb(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Rb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Rb(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Rb(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function Ub(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function zb(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ub(Object(n),!0).forEach((function(t){$b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ub(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function $b(e,t,n){return t=function(e){var t=function(e,t){if("object"!==Ob(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Ob(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Ob(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Gb(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||Object.prototype.propertyIsEnumerable.call(e,n)&amp;&amp;(o[n]=e[n])}return o}var Bb=angular.module("hub-components.authmodule.oauth2",[tf,jh,br]);function Fb(e){var t=e.name,n=e.item,r=n.serverUrl,o=Gb(n,Pb);return zb(zb({},Gb(e,Nb)),{},{name:t,item:zb(zb({},o),{},{name:t,serverUrl:r,disabled:!0}),existsQuery:"serverUrl: {".concat(r,"}")})}Bb.controller("KeycloakModuleCreateDialogCtrl",["$scope",function(e){e.realm="master",e.rootUrl="https://",e.$watch("rootUrl",(function(t){var n=e.dialog.data.item;n.serverUrl="".concat(t,"/realms/").concat(e.realm,"/protocol/openid-connect/auth"),n.tokenUrl="".concat(t,"/realms/").concat(e.realm,"/protocol/openid-connect/token"),n.userInfoUrl="".concat(t,"/realms/").concat(e.realm,"/protocol/openid-connect/userinfo")})),e.$watch("realm",(function(t){var n=e.dialog.data.item;n.serverUrl="".concat(e.rootUrl,"/realms/").concat(t,"/protocol/openid-connect/auth"),n.tokenUrl="".concat(e.rootUrl,"/realms/").concat(t,"/protocol/openid-connect/token"),n.userInfoUrl="".concat(e.rootUrl,"/realms/").concat(t,"/protocol/openid-connect/userinfo")}))}]),Bb.config(["authModuleProvider",function(e){e.addModulePlugin({name:function(e){return e("OAuth 2.0")},module:{typeName:"OAuth2AuthModule",type:"Oauth2authmoduleJSON",fields:["clientId","clientSecret","iconUrl","redirectUri","scope","tokenUrl","formClientAuth","userInfoUrl","userIdPath","userEmailUrl","userAvatarUrl","userEmailPath","userEmailVerifiedPath","userNamePath","fullNamePath","userPictureIdPath","userPictureUrlPattern","emailVerifiedByDefault","extensionGrantType","userGroupsPath","groupMappings(externalGroupName,group(id,name))","attributeMappings(mapping,attributePrototype(id,name))"],template:n(33471),getTabs:function(e){return e.userGroupsPath?[{title:function(e){return e("Group Mappings")},id:"mappings",template:n(64844)}]:[]},getDocumentationLink:function(e){var t={documentationLink:"OAuth2-Authentication-Module.html"};return([{serverUrl:"www.keycloak.org",documentationLink:"keycloak-auth-module.html"},{serverUrl:"facebook.com",documentationLink:"facebook-auth-module.html"},{serverUrl:"gitlab.com/oauth/authorize",documentationLink:"gitlab-auth-module.html"},{serverUrl:"bitbucket.org/site/oauth2/authorize",documentationLink:"bitbucket-cloud-auth-module.html"},{serverUrl:"login.live.com/oauth20_authorize.srf",documentationLink:"microsoft-live-auth-module.html"},{serverUrl:"www.amazon.com/ap/oa",documentationLink:"amazon-auth-module.html"},{serverUrl:"oauth.yandex.com/authorize",documentationLink:"yandex-passport-auth-module.html"},{serverUrl:"paypal.com/signin/authorize",documentationLink:"paypal-auth-module.html"}].find((function(t){var n=t.serverUrl;return(e.serverUrl||"").indexOf(n)&gt;=0}))||t).documentationLink},create:[{item:{serverUrl:"https://",disabled:!0},template:n(72827)},Fb({name:function(e){return e("Facebook")},item:{predefinedType:"Facebook",serverUrl:"https://www.facebook.com/v2.8/dialog/oauth",tokenUrl:"https://graph.facebook.com/v2.8/oauth/access_token",userInfoUrl:"https://graph.facebook.com/v2.8/me?fields=id,name,email,picture",formClientAuth:!0,scope:"email public_profile",userIdPath:"id",userEmailPath:"email",userNamePath:"name",userPictureIdPath:"picture/data/url",emailVerifiedByDefault:!0,iconUrl:n(28172)}}),Fb({name:function(e){return e("GitLab")},item:{predefinedType:"GitLab",serverUrl:"https://gitlab.com/oauth/authorize",tokenUrl:"https://gitlab.com/oauth/token",userInfoUrl:"https://gitlab.com/api/v4/user",scope:"api read_user",userIdPath:"username",userEmailPath:"email",userNamePath:"name",userPictureIdPath:"avatar_url",emailVerifiedByDefault:!0,iconUrl:n(2612)}}),Fb({name:function(e){return e("Bitbucket Cloud")},item:{predefinedType:"Bitbucket",serverUrl:"https://bitbucket.org/site/oauth2/authorize",tokenUrl:"https://bitbucket.org/site/oauth2/access_token",userInfoUrl:"https://api.bitbucket.org/2.0/user",scope:"account",userIdPath:"username",userEmailUrl:"https://api.bitbucket.org/2.0/user/emails",userEmailPath:"values/0/email",userEmailVerifiedPath:"values/0/is_confirmed",userNamePath:"display_name",userPictureIdPath:"links/avatar/href",emailVerifiedByDefault:!0,iconUrl:n(48735)}}),Fb({name:function(e){return e("Microsoft Account")},item:{predefinedType:"Live",serverUrl:"https://login.live.com/oauth20_authorize.srf",tokenUrl:"https://login.live.com/oauth20_token.srf",userInfoUrl:"https://apis.live.net/v5.0/me",userAvatarUrl:"https://graph.microsoft.com/beta/me/photos/48x48/$value",scope:"wl.basic wl.emails",userIdPath:"id",userEmailPath:"emails/account",userNamePath:"name",userPictureIdPath:"id",userPictureUrlPattern:"https://apis.live.net/v5.0/&lt;picture-id&gt;/picture?type=large",emailVerifiedByDefault:!0,iconUrl:n(78)}}),Fb({name:function(e){return e("Amazon")},item:{predefinedType:"Amazon",serverUrl:"https://www.amazon.com/ap/oa",tokenUrl:"https://api.amazon.com/auth/o2/token",userInfoUrl:"https://api.amazon.com/user/profile",scope:"profile",userIdPath:"user_id",userEmailPath:"email",userNamePath:"name",emailVerifiedByDefault:!0,iconUrl:n(2970)}}),Fb({name:function(e){return e("Yandex Passport")},item:{predefinedType:"Yandex",serverUrl:"https://oauth.yandex.com/authorize",tokenUrl:"https://oauth.yandex.com/token",userInfoUrl:"https://login.yandex.ru/info",scope:"login:info login:email login:avatar",userIdPath:"login",userEmailPath:"default_email",userNamePath:"real_name",userPictureIdPath:"default_avatar_id",userPictureUrlPattern:"https://avatars.yandex.net/get-yapic/&lt;picture-id&gt;/islands-200",emailVerifiedByDefault:!0,iconUrl:n(70855)}}),Fb({name:function(e){return e("PayPal")},item:{predefinedType:"Paypal",serverUrl:"https://www.paypal.com/signin/authorize",tokenUrl:"https://api.paypal.com/v1/oauth2/token",userInfoUrl:"https://api.paypal.com/v1/identity/openidconnect/userinfo?schema=openid",scope:"openid email profile",userIdPath:"user_id",userEmailPath:"email",userNamePath:"name",userPictureIdPath:"picture",emailVerifiedByDefault:!0,iconUrl:n(92502)}}),Fb({name:function(e){return e("Keycloak")},item:{predefinedType:"Keycloak",scope:"openid email profile",userIdPath:"sub",userEmailPath:"email",userEmailVerifiedPath:"email_verified",userNamePath:"name",userGroupsPath:"groups",iconUrl:n(53426)},template:n(76191)})],deletable:!0},detail:[{type:"Oauth2detailsJSON",fields:["identifier","fullName","avatar"],getName:function(e){return e.fullName},getLogin:function(e){return e.identifier}}]})}]),Bb.controller("OAuth2GroupMappingCtrl",["$scope","i18n","dialog","SelectOptionsResource","gettextCatalog",function(e,t,r,o,s){var c=this;this.selection=new xh.Z,e.$watch("moduleDraft.groupMappings",(function(){c.selection=c.selection.cloneWith({data:e.moduleDraft.groupMappings,selected:[]})})),this.onSelect=function(e){c.selection=e},this.columns=[{id:"oauth2-name",title:t("OAuth Group Name"),getValue:function(e){var t=e.externalGroupName;return i.createElement("span",{title:t},t)}},{id:"hub-name",title:t("Target Group Name"),getValue:function(e){var n=e.group;return n&amp;&amp;n.name?i.createElement(a.Z,{href:n&amp;&amp;"groups/".concat(CC(n.name,n.id))},n.name):t("Missing read permission for mapped group")}}],this.keyGetter=function(e){var t=e.externalGroupName,n=e.group;return"".concat((n||{}).id,"-").concat(t)},this.addGroupMapping=function(){var i={groupData:o.groupsDatasourceFactory((function(e){return Vd(e,"not is: allUsers and not is: registeredUsers")})),externalGroupName:null,group:null};r.show({data:i,template:n(52313),buttons:[{label:t("Add"),action:function(){e.moduleDraft.groupMappings=[].concat(Db(e.moduleDraft.groupMappings||[]),[{externalGroupName:i.externalGroupName,group:i.group}])},default:!0},{label:t("Cancel")}]})},this.removeGroupMapping=function(){var t=Db(e.moduleDraft.groupMappings);c.selection.getActive().forEach((function(e){var n=t.indexOf(e);t.splice(n,1)})),e.moduleDraft.groupMappings=t},this.removeButtonTitle=function(){var e=c.selection.getActive().size;return s.getPlural(e,"Remove {{ count }} selected group mapping","Remove {{ count }} selected group mappings",{count:e})}}]);const Zb=Bb.name;function Yb(e){return function(e){if(Array.isArray(e))return Wb(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Wb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Wb(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Wb(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var Hb=angular.module("hub-components.authmodule.azure",[tf,jh,br]);Hb.config(["authModuleProvider",function(e){e.addModulePlugin({name:function(e){return e("Microsoft Entra ID")},module:{typeName:"AzureAuthModule",type:"AzureauthmoduleJSON",fields:["clientId","clientSecret","redirectUri","iconUrl","tenant","groupMappings(externalGroupName,group(id,name))","attributeMappings(mapping,attributePrototype(id,name))"],template:n(40614),getTabs:function(){return[{title:function(e){return e("Group Mappings")},id:"mappings",template:n(14926)}]},getDocumentationLink:function(e){var t={documentationLink:"azure-ad-auth-module.html"};return([{serverUrl:"login.microsoftonline.com/common/oauth2/v2.0/authorize",documentationLink:"azure-ad-auth-module.html#common-tenant-setup"},{serverUrl:"login.microsoftonline.com",documentationLink:"azure-ad-auth-module.html#custom-tenant-setup"}].find((function(t){var n=t.serverUrl;return(e.serverUrl||"").indexOf(n)&gt;=0}))||t).documentationLink},create:[{item:{disabled:!0},template:n(84349)}],deletable:!0},detail:[{type:"AzuredetailsJSON",fields:["identifier","fullName"],getName:function(e){return e.fullName},getLogin:function(e){return e.identifier}}]})}]),Hb.controller("AzureGroupMappingCtrl",["$scope","i18n","dialog","SelectOptionsResource","gettextCatalog",function(e,t,r,o,s){var c=this;this.selection=new xh.Z,e.$watch("moduleDraft.groupMappings",(function(){c.selection=c.selection.cloneWith({data:e.moduleDraft.groupMappings,selected:[]})})),this.onSelect=function(e){c.selection=e},this.columns=[{id:"azure-name",title:t("Microsoft Entra ID Group Name"),getValue:function(e){var t=e.externalGroupName;return i.createElement("span",{title:t},t)}},{id:"hub-name",title:t("Target Group Name"),getValue:function(e){var n=e.group;return n&amp;&amp;n.name?i.createElement(a.Z,{href:n&amp;&amp;"groups/".concat(CC(n.name,n.id))},n.name):t("Missing read permission for mapped group")}}],this.keyGetter=function(e){var t=e.externalGroupName,n=e.group;return"".concat((n||{}).id,"-").concat(t)},this.addGroupMapping=function(){var i={groupData:o.groupsDatasourceFactory((function(e){return Vd(e,"not is: allUsers and not is: registeredUsers")})),externalGroupName:null,group:null};r.show({data:i,template:n(83837),buttons:[{label:t("Add"),action:function(){e.moduleDraft.groupMappings=[].concat(Yb(e.moduleDraft.groupMappings||[]),[{externalGroupName:i.externalGroupName,group:i.group}])},default:!0},{label:t("Cancel")}]})},this.removeGroupMapping=function(){var t=Yb(e.moduleDraft.groupMappings);c.selection.getActive().forEach((function(e){var n=t.indexOf(e);t.splice(n,1)})),e.moduleDraft.groupMappings=t},this.removeButtonTitle=function(){var e=c.selection.getActive().size;return s.getPlural(e,"Remove {{ count }} selected group mapping","Remove {{ count }} selected group mappings",{count:e})}}]);const qb=Hb.name;function Qb(e){return function(e){if(Array.isArray(e))return Vb(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Vb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Vb(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Vb(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var Kb=angular.module("hub-components.authmodule.saml",[tf,jh,br]);Kb.controller("SamlAuthModuleEditCtrl",["$scope","SelectOptionsResource","i18n",function(e,t,n){e.userDataSource=t.usersDatasourceFactory((function(e){return"has: verifiedEmail and ".concat(t.usersQueryWithoutGuestFn(e))}),null,"profile/email/email",{login:n("No user selected")}),e.contactUserSelectConfig={label:n("No user selected"),minWidth:280}}]),Kb.config(["authModuleProvider",function(e){e.addModulePlugin({name:function(e){return e("SAML 2.0")},title:function(e){return e("New SAML 2.0 Auth Module")},module:{typeName:"SamlAuthModule",type:"SamlAuthModuleJSON",fields:["spEntityId","ascUrl","spMetadataUrl","idpEntityId","certificateFingerprint","certificateFingerprintAlgorithm","contactUser(id,login,name)","loginAttributeName","firstNameAttributeName","lastNameAttributeName","fullNameAttributeName","emailAttributeName","emailVerified","groupsAttributeName","groupMappings(externalGroupName,group(id,name))","attributeMappings(mapping,attributePrototype(id,name))","iconUrl"],template:n(75584),getDocumentationLink:function(){return"saml-authentication-module.html"},getTabs:function(e){return e.groupsAttributeName?[{title:function(e){return e("Group Mappings")},id:"mappings",template:n(11177)}]:[]},create:[{template:n(49929),item:{spEntityId:window.document.baseURI||window.location.origin}}],deletable:!0},detail:[{type:"SamlUserDetailsJSON",fields:["nameId","login","fullName"],getLogin:function(e){return e.login},getName:function(e){return e.fullName},getExtraFields:function(e,t){return[{name:t("Name ID"),value:e.nameId}]}}]})}]),Kb.controller("SamlGroupMappingCtrl",["$scope","i18n","dialog","SelectOptionsResource","gettextCatalog",function(e,t,r,o,s){var c=this;this.selection=new xh.Z,e.$watch("moduleDraft.groupMappings",(function(){c.selection=c.selection.cloneWith({data:e.moduleDraft.groupMappings,selected:[]})})),this.onSelect=function(e){c.selection=e},this.columns=[{id:"saml-name",title:t("SAML Group Name"),getValue:function(e){var t=e.externalGroupName;return i.createElement("span",{title:t},t)}},{id:"hub-name",title:t("Target Group Name"),getValue:function(e){var n=e.group;return n&amp;&amp;n.name?i.createElement(a.Z,{href:n&amp;&amp;"groups/".concat(CC(n.name,n.id))},n.name):t("Missing read permission for mapped group")}}],this.keyGetter=function(e){var t=e.externalGroupName,n=e.group;return"".concat((n||{}).id,"-").concat(t)},this.addGroupMapping=function(){var i={groupData:o.groupsDatasourceFactory((function(e){return Vd(e,"not is: allUsers and not is: registeredUsers")})),externalGroupName:null,group:null};r.show({data:i,template:n(76343),buttons:[{label:t("Add"),action:function(){e.moduleDraft.groupMappings=[].concat(Qb(e.moduleDraft.groupMappings||[]),[{externalGroupName:i.externalGroupName,group:i.group}])},default:!0},{label:t("Cancel")}]})},this.removeGroupMapping=function(){var t=Qb(e.moduleDraft.groupMappings);c.selection.getActive().forEach((function(e){var n=t.indexOf(e);t.splice(n,1)})),e.moduleDraft.groupMappings=t},this.removeButtonTitle=function(){var e=c.selection.getActive().size;return s.getPlural(e,"Remove {{ count }} selected group mapping","Remove {{ count }} selected group mappings",{count:e})}}]);const Jb=Kb.name;function Xb(e){return function(e){if(Array.isArray(e))return ey(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return ey(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ey(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ey(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var ty=angular.module("hub-components.authmodule.okta",[tf,jh,br]);ty.controller("OktaModuleCreateDialogCtrl",["$scope",function(e){e.domain="mycompany.okta.com",e.$watch("domain",(function(t){var n=e.dialog.data.item;n.oktaDomain="".concat(t),n.serverUrl="https://".concat(t,"/oauth2/v1/authorize")}))}]),ty.config(["authModuleProvider",function(e){e.addModulePlugin({name:function(e){return e("Okta")},module:{typeName:"OktaAuthModule",type:"OktaAuthmoduleJSON",fields:["clientId","clientSecret","redirectUri","oktaDomain","extensionGrantType","apiToken","groupMappings(externalGroupName,group(id,name))","attributeMappings(mapping,attributePrototype(id,name))"],template:n(82697),getTabs:function(){return[{title:function(e){return e("Group Mappings")},id:"mappings",template:n(91768)}]},getDocumentationLink:function(e){var t={documentationLink:"okta-auth-module.html"};return([{serverUrl:"login.okta.com",documentationLink:"okta-auth-module.html"}].find((function(t){var n=t.serverUrl;return(e.serverUrl||"").indexOf(n)&gt;=0}))||t).documentationLink},create:[{item:{predefinedType:"Okta",iconUrl:n(16535)},template:n(99240)}],deletable:!0},detail:[{type:"OktadetailsJSON",fields:["identifier","fullName"],getName:function(e){return e.fullName},getLogin:function(e){return e.identifier}}]})}]),ty.controller("OktaGroupMappingCtrl",["$scope","i18n","dialog","SelectOptionsResource","gettextCatalog",function(e,t,r,o,s){var c=this;this.selection=new xh.Z,e.$watch("moduleDraft.groupMappings",(function(){c.selection=c.selection.cloneWith({data:e.moduleDraft.groupMappings,selected:[]})})),this.onSelect=function(e){c.selection=e},this.columns=[{id:"oauth2-name",title:t("Okta Group Name"),getValue:function(e){var t=e.externalGroupName;return i.createElement("span",{title:t},t)}},{id:"hub-name",title:t("Target Group Name"),getValue:function(e){var n=e.group;return n&amp;&amp;n.name?i.createElement(a.Z,{href:n&amp;&amp;"groups/".concat(CC(n.name,n.id))},n.name):t("Missing read permission for mapped group")}}],this.keyGetter=function(e){var t=e.externalGroupName,n=e.group;return"".concat((n||{}).id,"-").concat(t)},this.addGroupMapping=function(){var i={groupData:o.groupsDatasourceFactory((function(e){return Vd(e,"not is: allUsers and not is: registeredUsers")})),externalGroupName:null,group:null};r.show({data:i,template:n(19935),buttons:[{label:t("Add"),action:function(){e.moduleDraft.groupMappings=[].concat(Xb(e.moduleDraft.groupMappings||[]),[{externalGroupName:i.externalGroupName,group:i.group}])},default:!0},{label:t("Cancel")}]})},this.removeGroupMapping=function(){var t=Xb(e.moduleDraft.groupMappings);c.selection.getActive().forEach((function(e){var n=t.indexOf(e);t.splice(n,1)})),e.moduleDraft.groupMappings=t},this.removeButtonTitle=function(){var e=c.selection.getActive().size;return s.getPlural(e,"Remove {{ count }} selected group mapping","Remove {{ count }} selected group mappings",{count:e})}}]);const ny=ty.name,ry=angular.module("hub-components.authmodule.all-modules-list",[pb,Cb,fb,hb,wb,Mb,kb,Zb,qb,Jb,bb,ny]).name;var oy=n(15321),iy=n.n(oy),ay=(n(23157),n(52566)),sy=n.n(ay);function cy(e){return function(e){if(Array.isArray(e))return ly(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return ly(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ly(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ly(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var gy=angular.module("hub-components.user-profile-authentication.toolbar",[]).component("hubUserProfileAuthenticationToolbar",{template:sy(),bindings:{pageData:"&lt;",userId:"&lt;",hostServiceApplicationName:"&lt;",hubBackend:"&lt;",activeElements:"&lt;",onAuthenticationTabReload:"&amp;"},controllerAs:"ctrl",controller:["$scope","$q","hubNotify","i18n","hubI18nPlural","dialog",function(e,t,r,o,i,a){var s=this,c=this;this.createEnabled=!1,c.hubBackend.loadServices({$top:1}).then((function(t){e.$applyAsync((function(){s.createEnabled=!!(t||[]).length}))})),this.createPermanentToken=function(){var e={item:{scope:[]},getServices:function(e){var t=e.query;return c.hubBackend.selectOptions.getServices(t).then((function(e){return e.filter((function(e){return!t||e.name.toLowerCase().startsWith(t.toLowerCase())})).map((function(e){return{id:e.id,key:e.id,label:e.name,data:e}}))}))},onAddScope:function(t){var n=t.tag;e.item.scope=[].concat(cy(e.item.scope),[n])},onRemoveScope:function(t){var n=t.tag;e.item.scope=e.item.scope.filter((function(e){return e!==n}))}},i=void 0;return c.hubBackend.selectOptions.getServices(i).then((function(t){return e.item.scope=t.filter((function(e){return("Hub"===e.applicationName||"YouTrack"===e.applicationName&amp;&amp;"YouTrack"===c.hostServiceApplicationName||"Upsource"===e.applicationName&amp;&amp;"Upsource"===c.hostServiceApplicationName)&amp;&amp;""!==c.hostServiceApplicationName})).map((function(e){return{id:e.id,key:e.id,label:e.name,data:e}}))})),a.show({template:n(72134),data:e,buttons:[{label:o("Create"),close:!0,default:!0,action:function(e){return c.hubBackend.updateUserPermanentToken(c.userId,e.item)}},{label:o("Cancel")}]}).then((function(e){e&amp;&amp;(c.onAuthenticationTabReload(),function(e){var i=[{label:o("Copy token"),default:!0,close:!1,action:function(){return PI().copy(e.token).then(r.successHandler(o("Token copied to clipboard")),(function(){return t.reject(o("Sorry, but copying to clipboard is not supported in your browser. Do it manually before closing this dialog."))}))}},{label:o("Close")}];a.show({template:n(45556),data:{item:e},buttons:i})}(e))}))},this.createApplicationPassword=function(){return a.show({template:n(68179),data:{item:{}},buttons:[{label:o("Generate password"),close:!1,default:!0,action:function(e){return c.hubBackend.updateUserPassword(c.userId,e.item).then((function(e){c.onAuthenticationTabReload(),function(e){var i=[{label:o("Copy password"),default:!0,close:!1,action:function(){return PI().copy(e.password).then(r.successHandler(o("Password copied to clipboard")),(function(){return t.reject(o("Sorry, but copying to clipboard is not supported in your browser. Do it manually before closing this dialog."))}))}},{label:o("Close")}];a.show({template:n(38758),data:{item:e},buttons:i})}(e)}))}},{label:o("Cancel")}]})},this.delete=function(e){var n={permanentTokens:0,applicationPasswords:0,refreshTokens:0,approvedScopes:0};e.forEach((function(e){return n[e.$category]++}));var a=[];Object.keys(n).forEach((function(e){var t=n[e],r=e.replace(/([A-Z])/g,(function(e){return"-".concat(e.toLowerCase())}));t&amp;&amp;a.push(i.format(r,t))}));var s,l=o(" and ");if(1===a.length)s=a[0];else if(2===a.length)s=a.join(l);else{var g=a.pop();s=a.join(", ")+l+g}return r.confirm({label:o("Delete {{authenticateItems}}?",{authenticateItems:s}),okButtonLabel:o("Delete",null,"Remove action"),actionPromise:function(){return function(e){var n=cy(e).map((function(e){var t;return("refreshTokens"===(t=e.$category)?c.hubBackend.deleteUserRefreshTokens:"approvedScopes"===t?c.hubBackend.deleteApprovedScopes:"permanentTokens"===t?c.hubBackend.deleteUserPermanentToken:c.hubBackend.deleteUserPassword)(c.userId,e.id)}));return t.all(n)}(e).then((function(){c.onAuthenticationTabReload()}))}})}}]});const uy=gy.name;function dy(e){return dy="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},dy(e)}function py(){py=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==dy(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function Ay(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function Cy(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Ay(i,r,o,a,s,"next",e)}function s(e){Ay(i,r,o,a,s,"throw",e)}a(void 0)}))}}function Iy(e){return function(e){if(Array.isArray(e))return fy(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return fy(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?fy(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function fy(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var my=angular.module("hub-components.user-profile-authentication",[uy,ub,UA,tf,wA,QA,ry]).component("hubUserProfileAuthentication",{template:iy(),bindings:{user:"&lt;",pageData:"&lt;",pageReady:"&lt;",hostServiceApplicationName:"&lt;",hubBackend:"&lt;",helpBaseUrl:"&lt;",readUsersBasic:"&lt;",isStandaloneHub:"&lt;",onReloadUserDetail:"&amp;?",onReloadWebauthn:"&amp;?",onTwoFactorAuthenticationUpdate:"&amp;?",listenToHeightChangeSelector:"@?"},controllerAs:"ctrl",controller:["$q","hubPageStorage","hubSidebarStateStorage","i18n","dateFilter","$scope","webauthn","hubNotify","$timeout","dialog","authModule","hubMergeUserDetails","hubChangePassword","$filter",function(e,t,r,o,c,l,g,u,d,p,A,C,I,f){var m=this,h=this;this.sidebarTemplate=n(53662),this.emptyTemplate=n(26840),this.data={permanentTokens:[],refreshTokens:[],approvedScopes:[],applicationPasswords:[],userHasSomeTokens:!1,userIsReporter:"REPORTER"===(this.user.userType||{}).id},this.columns={permanentTokens:[{id:"name",title:o("Name")},{id:"scope-services",title:o("Scope Services"),getValue:b,className:"authentication__scope-services-column"},h.readUsersBasic&amp;&amp;{id:"author",title:o("Created By"),getValue:function(e){return e.author&amp;&amp;e.author.name}},{id:"created",title:o("Created"),getValue:function(e){return c(e.creationTime,"mediumDate")}},{id:"last-access",title:o("Last Used"),getValue:w}],applicationPasswords:[{id:"name",title:o("Name")},{id:"login",title:o("Username"),getValue:function(){return t.get("login")}},{id:"created",title:o("Created"),getValue:function(e){return c(e.creationTime,"mediumDate")}},{id:"last-access",title:o("Last Used"),getValue:w}],refreshTokens:[{id:"name",title:o("Client Service"),getValue:y},{id:"scope-services",title:o("Scope Services"),getValue:b,className:"authentication__scope-services-column"},{id:"created",title:o("Requested"),getValue:function(e){return c(e.creationTime,"mediumDate")}},{id:"last-access",title:o("Last Used"),getValue:w},{id:"expires",title:o("Expires"),getValue:function(e){return e.expires?c(e.expires,"mediumDate"):o("Never")}}],approvedScopes:[{id:"name",title:o("Client Service"),getValue:y},{id:"scope-services",title:o("Scope Services"),getValue:b,className:"authentication__scope-services-column"},{id:"expiresOn",title:o("Expires"),getValue:function(e){return c(e.expiresOn,"medium")}}]},this.selections={permanentTokens:new bg.Z,applicationPasswords:new bg.Z,refreshTokens:new bg.Z,approvedScopes:new bg.Z},this.onSelect=function(e,t){m.sidebarElement=t.getFocused()||(Object.keys(m.selections).some((function(e){return m.selections[e].getFocused()}))?m.sidebarElement:null),m.sidebarElement&amp;&amp;Object.keys(m.selections).filter((function(e){return m.sidebarElement!==m.selections[e].getFocused()})).forEach((function(e){return m.selections[e]=m.selections[e].resetFocus()})),m.selections[e]=t,_();var r={permanentTokens:n(53662),applicationPasswords:n(87266),refreshTokens:n(21294),approvedScopes:n(69488)};m.sidebarElement&amp;&amp;(m.sidebarTemplate=r[m.sidebarElement.$category])},this.onSelectPermanentToken=function(e){return m.onSelect("permanentTokens",e)},this.onSelectApplicationPassword=function(e){return m.onSelect("applicationPasswords",e)},this.onSelectRefreshToken=function(e){return m.onSelect("refreshTokens",e)},this.onSelectApprovedScope=function(e){return m.onSelect("approvedScopes",e)},r.read().then((function(e){m.isSidebarShown=e,l.$watch("ctrl.isSidebarShown",r.store)}));var v=function(e){return function(){m.isSidebarShown=e,l.$evalAsync()}};function b(e){var t=[];return e.scope.forEach((function(n,r){t.push(i.createElement(a.Z,{key:n.id,href:f("linkToHub")("services",n.key,n.id)},n.name)),r&lt;e.scope.length-1&amp;&amp;t.push(", ")})),t}function y(e){return i.createElement(a.Z,{href:f("linkToHub")("services",e.client.key,e.client.id)},e.client.name)}function w(e){return e.lastAccessTime?c(e.lastAccessTime,"mediumDate"):o("Never")}function _(){h.selectionActiveElements=[].concat(Iy(h.selections.approvedScopes.getActive()||[]),Iy(h.selections.applicationPasswords.getActive()||[]),Iy(h.selections.permanentTokens.getActive()||[]),Iy(h.selections.refreshTokens.getActive()||[]))}function j(e){return function(t){return t.$category=e,t}}function x(){return h.pageData.isOwnProfile&amp;&amp;h.user.requiredTwoFactorAuthentication&amp;&amp;!(h.user.twoFactorAuthentication||h.user.webauthnDevice||{}).enabled}function E(){x()&amp;&amp;s.Z.error("Access is restricted until you enable two-factor authentication")}function S(){d((function(){return h.onTwoFactorAuthenticationUpdate&amp;&amp;h.onTwoFactorAuthenticationUpdate()}),700)}function T(e,t){return p.show({title:o(t?"Enable Two-factor Authentication":"Regenerate Secret"),template:n(13121),data:{user:h.user,code:"",twoFactorAuthentication:e,isInitial:t},buttons:[{label:o("Confirm"),default:!0,close:!0,action:function(e){return Cy(py().mark((function t(){return py().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,h.hubBackend.confirm2FASecret(h.user.id,e.code);case 3:return t.next=5,h.hubBackend.updateUser({id:h.user.id,twoFactorAuthentication:{enabled:!0}});case 5:return h.user.twoFactorAuthentication={enabled:!0},u.success(o("Two-factor authentication enabled")),S(),t.abrupt("return",!0);case 11:return t.prev=11,t.t0=t.catch(0),t.abrupt("return",Promise.reject(u.errorMessage(t.t0)));case 14:case"end":return t.stop()}}),t,null,[[0,11]])})))()}},{label:o("Cancel"),action:E}]})}function M(e){return L.apply(this,arguments)}function L(){return(L=Cy(py().mark((function e(t){var n;return py().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,h.hubBackend.regenerate2FASecrets(h.user.id);case 2:return n=e.sent,e.abrupt("return",T(n,t));case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}this.showSidebar=function(){return v(!0)},this.hideSidebar=function(){return v(!1)},this.shortcuts={left:this.showSidebar,right:this.hideSidebar},this.permanentTokensLabel=o("Permanent Tokens"),this.applicationPasswordsLabel=o("Application Passwords"),this.refreshTokensLabel=o("Refresh Tokens"),this.approvedScopesLabel=o("Approved Scopes"),h.pageReady.then((function(){x()&amp;&amp;M(!0)})),this.registerHardwareToken=function(){g.isSupported()?h.hubBackend.registerWebauthn(h.user.id).then((function(e){return navigator.credentials.create({publicKey:g.decodePublicKeyCredentialCreationOptions(e)})}),(function(e){console.warn(e),u.error(o("Hardware token registration failed"))})).then((function(e){return h.hubBackend.confirmWebauthn(h.user.id,g.registrationResponseAsObject(e))})).then((function(){u.success(o("Hardware token registered")),e.when(h.onReloadWebauthn&amp;&amp;h.onReloadWebauthn()).then(S)}),(function(e){console.warn(e),u.error(o("Hardware token registration failed"))})):s.Z.error([o(g.getUnsupportedMessage()),i.createElement(a.Z,{key:"link",href:h.helpBaseUrl+g.getHelpPage()},g.getHelpMessage())])},this.registerTotp=Cy(py().mark((function e(){return py().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,M(!0);case 3:S(),e.next=10;break;case 6:e.prev=6,e.t0=e.catch(0),console.warn(e.t0),u.error(o("Authentication app registration failed"));case 10:l.$evalAsync();case 11:case"end":return e.stop()}}),e,null,[[0,6]])}))),this.enableTotp=Cy(py().mark((function e(){return py().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,h.hubBackend.updateUser({id:h.user.id,twoFactorAuthentication:{enabled:!0}});case 3:h.user.twoFactorAuthentication={enabled:!0},u.success(o("Two-factor authentication enabled")),S(),e.next=12;break;case 8:e.prev=8,e.t0=e.catch(0),console.warn(e.t0),u.error(o("Failed to enable two-factor authentication"));case 12:l.$evalAsync();case 13:case"end":return e.stop()}}),e,null,[[0,8]])}))),this.disableTotp=Cy(py().mark((function e(){return py().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,h.hubBackend.updateUser({id:h.user.id,twoFactorAuthentication:{enabled:!1}});case 3:h.user.twoFactorAuthentication={enabled:!1},u.success(o("Two-factor authentication disabled")),S(),e.next=12;break;case 8:e.prev=8,e.t0=e.catch(0),console.warn(e.t0),u.error(o("Failed to disable two-factor authentication"));case 12:l.$evalAsync();case 13:case"end":return e.stop()}}),e,null,[[0,8]])}))),this.removeTotp=function(e){return u.confirm({label:o("Delete Authentication App Integration"),description:o(e?"You will no longer be asked to enter a verification code when you sign in to your account":"User will no longer be asked to enter a verification code when they sign in to their account"),okButtonLabel:o("Confirm"),actionPromise:function(){return h.hubBackend.delete2FASecret(h.user.id).then((function(){h.user.twoFactorAuthentication=null,u.success(o("Authentication app integration removed")),S()}))}})},this.enableWebauthn=Cy(py().mark((function e(){return py().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,h.hubBackend.updateUser({id:h.user.id,webauthnDevice:{enabled:!0}});case 3:h.user.webauthnDevice.enabled=!0,u.success(o("Two-factor authentication enabled")),e.next=11;break;case 7:e.prev=7,e.t0=e.catch(0),console.warn(e.t0),u.error(o("Failed to enable two-factor authentication"));case 11:l.$evalAsync();case 12:case"end":return e.stop()}}),e,null,[[0,7]])}))),this.disableWebauthn=Cy(py().mark((function e(){return py().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,h.hubBackend.updateUser({id:h.user.id,webauthnDevice:{enabled:!1}});case 3:h.user.webauthnDevice.enabled=!1,u.success(o("Two-factor authentication disabled")),e.next=12;break;case 7:e.prev=7,e.t0=e.catch(0),console.warn(e.t0),u.error(o("Failed to disable two-factor authentication")),S();case 12:l.$evalAsync();case 13:case"end":return e.stop()}}),e,null,[[0,7]])}))),this.removeWebauthn=function(e){return u.confirm({label:o("Unregister Device"),description:o(e?"You won't need to authenticate with a hardware token when you sign in":"This user won't need to authenticate with a hardware token when they sign in"),okButtonLabel:o("Confirm"),actionPromise:function(){return h.hubBackend.removeWebauthn(h.user.id).then((function(){u.success(o("Hardware token registration deleted")),h.user.webauthnDevice=null,S()}),(function(e){console.warn(e),u.error(o("Hardware token registration deletion failed"))}))}})},this.isShownOriginForAuthCredential=function(e){var t=(e||{}).originService;return!(!t||!h.isStandaloneHub&amp;&amp;"YouTrack"===t.name)},h.hubBackend.loadAuthModules({query:"type:{Build-in Authorization}",fields:"id,disabled"}).then((function(e){return m.coreModule=e})),this.addCredentials=function(){return C.show(h.user).then((function(e){return e&amp;&amp;h.onReloadUserDetail&amp;&amp;h.onReloadUserDetail()}))};var k=new(ob());function O(e){k.setUA(e);var t=k.getResult();return t.browser.name?t.browser="".concat(t.browser.name," ").concat(t.browser.version):t.browser=o("Unknown"),t.os.name?t.os="".concat(t.os.name," ").concat(t.os.version):t.os=o("Unknown"),t}this.logins=[],this.ldapWarning="",this.showLdapWarning=!1,l.$watch("ctrl.user.details",(function(e){if(Array.isArray(e)&amp;&amp;e.length&gt;0){if(m.logins=(e||[]).map((function(e){return{detail:e,authModule:e.authModule?{name:e.authModule.name,type:A.getModuleTypeName(e.authModule),originService:e.originService,disabled:e.authModule.disabled}:{name:e.authModuleName,originService:e.originService},name:A.getName(e),email:A.getEmail(e),login:A.getLogin(e),extraFields:A.getExtraFields(e,o),externalChangePassword:A.isExternalChangePassword(e),changePasswordTemplate:A.getChangePasswordTemplate(e),canBeDisabled:A.getDisabledState(e),agent:O(e.lastAccessUserAgent)}})),m.showLdapWarning=!1,m.logins&amp;&amp;m.logins.length&gt;1){var t=m.logins.filter((function(e){return e.authModule&amp;&amp;"LDAP"===e.authModule.type}));t&amp;&amp;t.length&gt;1&amp;&amp;t.some((function(e){if(t.filter((function(t){return t.authModule.name===e.authModule.name})).length&gt;1)return m.showLdapWarning=!0,m.ldapWarning=o("This Hub account accepts logins from multiple accounts that are authenticated through the [{{item.authModule.name}}] directory service. If these accounts are members of different groups in the directory service, group membership synchronization in Hub may behave unpredictably.",{item:e}),!0}))}}else m.logins=[]})),this.toggleDetail=function(e){return h.hubBackend.updateUserDetail({id:e.detail.id,type:e.detail.type,disabled:!e.detail.disabled}).then((function(){e.detail.disabled=!e.detail.disabled}))},this.revokeUserDetail=function(e){var t=e.name||e.login||e.email||e.detail.id;return u.confirm({label:o("When the current session expires, this user can no longer log in with these credentials. Proceed?"),actionPromise:function(){return h.hubBackend.removeUserDetail(h.user.id,e.detail.id).then((function(){return h.onReloadUserDetail&amp;&amp;h.onReloadUserDetail()})).then(u.successHandler(o("â€œ{{ credentialsId }}â€ credentials have been deleted successfully",{credentialsId:t})),u.errorHandler(o("Could not delete â€œ{{ credentialsId }}â€ credentials",{credentialsId:t})))}})},this.revokeUserCredentials=function(e){return h.hubBackend.revokeUserCredentials(e.detail.id).then(u.successHandler(o('All sessions logged in with the "{{login.name || login.login}}" username will be terminated when its access token expires.',{login:e}))).catch(u.successHandler(o('Could not terminate sessions for the username "{{login.name || login.login}}".',{login:e})))},this.requirePasswordChange=function(e){var t;u.confirm({label:o("Require New Password"),description:o("The user {{login.name || login.login}} must change their password on next login",{login:e}),okButtonLabel:o("Confirm"),actionPromise:(t=Cy(py().mark((function t(){return py().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,h.hubBackend.updateUserDetail({id:e.detail.id,type:e.detail.type,passwordChangeRequired:!0});case 3:e.detail.passwordChangeRequired=!0,u.successHandler(o("Password change was requested"))(),l.$evalAsync(),t.next=12;break;case 8:t.prev=8,t.t0=t.catch(0),console.warn(t.t0),u.errorHandler(o("Failed to request password change"))(t.t0);case 12:case"end":return t.stop()}}),t,null,[[0,8]])}))),function(){return t.apply(this,arguments)})})},this.getAllActiveTableElements=function(){},l.changePassword=function(e){return I.showForUser(e,h.pageData.isOwnProfile,h.user)};var P=function(){return m.loading=!0,m.sidebarElement=null,e.all({permanentTokens:h.hubBackend.loadUserPermanentTokens(t.get("id")),applicationPasswords:h.hubBackend.loadUserPasswords(t.get("id")),refreshTokens:h.hubBackend.loadUserRefreshTokens(t.get("id")),approvedScopes:h.hubBackend.loadApprovedScopes(t.get("id"))}).then((function(e){m.data.permanentTokens=e.permanentTokens.map(j("permanentTokens")).filter((function(e){return void 0!==e.scope})),m.data.applicationPasswords=e.applicationPasswords.map(j("applicationPasswords")),m.data.refreshTokens=e.refreshTokens.map(j("refreshTokens")),m.data.approvedScopes=e.approvedScopes.map(j("approvedScopes")),m.data.userHasSomeTokens=m.data.permanentTokens.length+m.data.refreshTokens.length+m.data.approvedScopes.length!==0,m.selections={permanentTokens:new bg.Z({data:Iy(m.data.permanentTokens)}),applicationPasswords:new bg.Z({data:Iy(m.data.applicationPasswords)}),refreshTokens:new bg.Z({data:Iy(m.data.refreshTokens)}),approvedScopes:new bg.Z({data:Iy(m.data.approvedScopes)})},_(),m.loading=!1}))};P(),this.onAuthenticationTabReload=P}]});my.filter("scratchCode",(function(){return function(e){return"".concat(e.toString().substring(0,4),"-").concat(e.toString().substring(4))}}));const hy=my.name;var vy=angular.module("HUB.user-page.authentication",[hy]);vy.controller("AuthenticationCtrl",["i18n","auth","settingsUtils","UserPageService","hubConfig","twoFactorAuthorization",function(e,t,n,r,o,i){var a=this;n.loadSettings().then((function(e){a.hostServiceApplicationName=n.findSetting(e,"public").hostServiceApplicationName})),a.pageData=r.data,a.helpBaseUrl=o.help.baseUrl,a.isStandalone=!o.embedded,a.onTwoFactorAuthenticationUpdate=function(){return i.update()}}]);const by=vy.name;function yy(e){return yy="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},yy(e)}function wy(){wy=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==yy(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function _y(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function jy(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?_y(Object(n),!0).forEach((function(t){xy(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):_y(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function xy(e,t,n){return t=function(e){var t=function(e,t){if("object"!==yy(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==yy(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===yy(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ey(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}var Sy=Mp.Z.ListProps.Type.CUSTOM,Ty=angular.module("hub-components.user-profile-actions",[Md,Qe,bm]).factory("hubRemoveUserPersonalData",["dialog","i18n","hubNotify","$q",function(e,t,r,o){return function(i,a,s){return o((function(o,c){return e.show({title:t("Anonymize User"),template:n(79229),data:{ownProfile:a,expectedLoginPattern:"^(".concat(i.login.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&amp;"),")$")},buttons:[{label:t("Anonymize"),default:!0,close:!1,action:function(){return s({id:i.id},{}).then((function(){return r.success(t("User anonymized")),o()}),(function(){return r.errorHandler(),c()}))}},{label:t("Cancel"),action:function(){return c()}}]})}))}}]).factory("hubBanUserDialog",["dialog","i18n","hubNotify","$q",function(e,t,r,o){return function(){return o((function(r,o){var i=[t("banned"),t("suspended"),t("inactive"),t("deactivated"),t("locked")];return e.show({title:t("Ban User"),template:n(13291),data:{banBadgeOptions:i,banBadge:i[0]},buttons:[{label:t("Ban user"),default:!0,close:!0,action:function(e){return r({reason:e.banReason,badge:e.banBadge})}},{label:t("Cancel"),action:function(){return o()}}]})}))}}]).factory("hubDeleteUserDialog",["gettextCatalog","hubMerge","i18n",function(e,t,n){return function(r,o,a){var s=r.items,c=e.getPlural(s.length,"Delete user?","Delete users?"),l=t.getDialogDescription(r,[n('&lt;p&gt;When you confirm this action, the user account for &lt;b&gt;{{items}}&lt;/b&gt; is deleted.&lt;/p&gt;&lt;p&gt;Objects owned exclusively by deleted users, like subscriptions, saved searches, reports, agile boards, and dashboards, are deleted permanently. This operation cannot be undone.&lt;/p&gt;&lt;p&gt;The replacement user inherits references to deleted users that cannot be empty, like visibility settings and ownership assignments. Other references are set to "Deleted User".&lt;/p&gt;&lt;p&gt;If you want the replacement user to inherit all references to the deleted user, use the merge operation instead. &lt;a href={{deleteUserLink}} class="ring-link" target="_blank"&gt;Learn more â†’&lt;/a&gt;&lt;/p&gt;'),n('&lt;p&gt;When you confirm this action, {{num}} user accounts: &lt;b&gt;{{items}}&lt;/b&gt; are deleted.&lt;/p&gt;&lt;p&gt;Objects owned exclusively by deleted users, like subscriptions, saved searches, reports, agile boards, and dashboards, are deleted permanently. This operation cannot be undone.&lt;/p&gt;&lt;p&gt;The replacement user inherits references to deleted users that cannot be empty, like visibility settings and ownership assignments. Other references are set to "Deleted User".&lt;/p&gt;&lt;p&gt;If you want the replacement user to inherit all references to the deleted user, use the merge operation instead. &lt;a href={{deleteUserLink}} class="ring-link" target="_blank"&gt;Learn more â†’&lt;/a&gt;&lt;/p&gt;'),n('&lt;p&gt;When you confirm this action, {{num}} user accounts: &lt;b&gt;{{items}}&lt;/b&gt; and &lt;b&gt;{{more}} more&lt;/b&gt; are deleted.&lt;/p&gt;&lt;p&gt;Objects owned exclusively by deleted users, like subscriptions, saved searches, reports, agile boards, and dashboards, are deleted permanently. This operation cannot be undone.&lt;/p&gt;&lt;p&gt;The replacement user inherits references to deleted users that cannot be empty, like visibility settings and ownership assignments. Other references are set to "Deleted User".&lt;/p&gt;&lt;p&gt;If you want the replacement user to inherit all references to the deleted user, use the merge operation instead. &lt;a href={{deleteUserLink}} class="ring-link" target="_blank"&gt;Learn more â†’&lt;/a&gt;&lt;/p&gt;')]);function g(e){return i.createElement(YI.Z,{className:"user-list-merge-user"},i.createElement(ZI.Z,{className:"user-list-merge-user_avatar",url:e.profile.avatar.url,size:ZI.$.Size20}),i.createElement(vi.Z,null,e.name),e.profile.email&amp;&amp;i.createElement(vi.Z,{className:"user-list-merge-user_email",comment:!0},e.profile.email.email))}var u=t.createMerge({title:c,description:l,showAllFields:!0,mergeButtonLabel:"Delete",successMessage:"users-success-delete",errorMessage:"users-delete",mergeOperation:o,fields:[{name:"successor",type:"string",label:n("Replacement user"),init:function(e,t){e.placeholder=n("Select user"),e.value=null,e.options=[],e.optionsParser="o.id as o.name for o in field.getUsers(query, skip) track by o.id",e.externalFilter=!0,e.required=!0,e.config={maxHeight:300,minWidth:300,filter:{placeholder:n("Filter items")}};var r=function(e,n){var r=Yp.makeDefaultUserQuery(e);return t.forEach((function(e){return r+=" and not id: ".concat(e.id)})),a(r,n)};return e.getUsers=function(){var e,t=(e=wy().mark((function e(t,n){var o;return wy().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,r(t,n);case 2:return o=e.sent,e.abrupt("return",o.map((function(e){return jy(jy({},e),{},{rgItemType:Sy,template:g})})));case 4:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Ey(i,r,o,a,s,"next",e)}function s(e){Ey(i,r,o,a,s,"throw",e)}a(void 0)}))});return function(e,n){return t.apply(this,arguments)}}(),e},showIfOneValue:!0}]});return u.confirm(r)}}]);const My=Ty.name;var Ly=angular.module("HUB.user-page.remove-personal-data",[My]);Ly.controller("UserPageRemovePersonalData",["$location","$route","$routeParams","i18n","UserDataResource","hubRemoveUserPersonalData",function(e,t,n,r,o,i){var a=function(e){var t=e.id;return o.erase({id:t},{}).$promise};this.dialog=function(r,o){return i(r,o,a).then((function(){n.id===r.id?t.reload():e.path("/users/".concat(r.id))}))}}]);const ky=Ly.name;function Oy(e,t){var n="undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Py(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Py(e,t):void 0}}(e))||t&amp;&amp;e&amp;&amp;"number"==typeof e.length){n&amp;&amp;(e=n);var r=0,o=function(){};return{s:o,n:function(){return r&gt;=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){s=!0,i=e},f:function(){try{a||null==n.return||n.return()}finally{if(s)throw i}}}}function Py(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var Ny=angular.module("HUB.user-page",[Dv,nb,zt,by,ky,kv]);Ny.factory("UserPageService",(function(){return{data:{},reset:function(){var e=this.data;e.isOwnProfile=!1,e.canReadProfile=!1,e.canUpdateProfile=!1,e.guestProfile=!1,e.canUpdateGuestProfile=!1}}})),Ny.controller("UserCtrl",["$scope","$routeParams","$q","pageTitle","UserResource","UserPageService","GroupResource","ServiceResource","authModule","auth","userPermissions","dialog","i18n","UserSshPublicKeyResource","hubNotify","$location","LocalesService","feature","getWithQuery","hubPageStorage","gettextCatalog","hubFeatures","hubUserLicenseTypes",function(e,t,r,o,i,a,s,c,l,g,u,d,p,A,C,I,f,m,h,v,b,y,w){e.hideLocaleSelector=!0,e.isFormDirty=!1,m("jetbrains.hub.user.profile.locale.hide").then((function(t){e.hideLocaleSelector=t})),a.reset(),e.generalTemplate=n(33553),e.groupsTemplate=n(5057),e.authenticationTemplate=n(54435),e.groups={data:{}},e.roles={data:{}},e.approvedScopes={data:{}},e.refreshTokens={data:{}},e.permanentTokens={data:{}},f.buildList().then((function(t){e.locales=t}));var _="profile(email,unverifiedEmail,avatar,locale(name,label,language,community),attributes(id,value,prototype(id,type,name)))";e.reloadUserDetails=function(){return i.get({id:e.user.id||"me",fields:"".concat(_,",details(").concat(l.detailFields,"),requiredTwoFactorAuthentication")}).$promise.then((function(t){return e.user.details=t.details||[],e.user.profile=t.profile,e.user.requiredTwoFactorAuthentication=t.requiredTwoFactorAuthentication,e.user}))},e.reloadWebauthn=function(){return i.get({id:e.user.id||"me",fields:"webauthnDevice(enabled,name,vendor,url,iconUrl)"}).$promise.then((function(t){return e.user.webauthnDevice=t.webauthnDevice,e.user}))};var j=mC(t.id);j?(e.user=h(i,"users",{query:"id:{".concat(j,"} or login:{").concat(j,"}"),fields:"id,name,login,".concat(_,",banned,banReason,banBadge,userType(id,name),eraseTimestamp,VCSUserNames(name),refreshTokens(total),permanentTokens(total),approvedScopes(total),creationTime,sshPublicKeys(fingerPrint,comment,openSshKey),endUserAgreementConsent(accepted,time,revocationTime,address,majorVersion,minorVersion),webauthnDevice(enabled,name,vendor,url,iconUrl),requiredTwoFactorAuthentication,twoFactorAuthentication(enabled)")},(function(t){t.details=t.details||[],s.get({fields:"id,total",query:"user:".concat(e.user.id," or is: allUsers or is: registeredUsers")}).$promise.then((function(t){var n=t.total;e.groups.data.total=n})),function(t){e.approvedScopes.data.total=(t.approvedScopes||[]).length,e.refreshTokens.data.total=(t.refreshTokens||[]).length,e.permanentTokens.data.total=(t.permanentTokens||[]).length}(t),e.userId=t.id,v.set("id",t.id),v.set("login",t.login),v.set("name",t.name),v.set("isReporter",w.isReporter(t))})),e.userPromise=e.user.$promise.then(e.reloadUserDetails),o.addElement(e.user),u.bindVariable(e,"readUsers","user-read"),u.bindVariable(e,"readUsersBasic","user-read-basic"),u.bindVariable(e,"deleteUsers","user-delete"),e.pageReady=r.all({user:e.userPromise,me:g.requestUser(),canUpdateUser:u.check("user-update"),canUpdateSelf:u.check("profile-updateSelf"),canReadUser:u.check("user-read"),canReadUserBasic:u.check("user-read-basic"),canReadLowLevel:u.check("low-level-read")}).then((function(t){var n=a.data;n.isOwnProfile=e.isOwnProfile=t.me.id===t.user.id,n.canUpdateProfile=e.canUpdateProfile=t.canUpdateUser||n.isOwnProfile&amp;&amp;t.canUpdateSelf,n.canUpdateUser=t.canUpdateUser,"guest"===t.user.login&amp;&amp;(n.guestProfile=e.guestProfile=!0,n.canUpdateGuestProfile=e.canUpdateGuestProfile=e.canUpdateProfile,n.canUpdateProfile=e.canUpdateProfile=!1),n.canReadProfile=e.canReadProfile=t.canReadUser||t.canReadUserBasic||n.isOwnProfile,n.canReadProfileFull=e.canReadProfileFull=t.canReadUser||n.isOwnProfile,n.canDownloadPersonalData=(t.canReadUser&amp;&amp;t.canReadLowLevel||n.isOwnProfile)&amp;&amp;!e.guestProfile,c.get({fields:"name,key,homeUrl,userUriPattern,iconUrl,applicationName"}).$promise.then((function(t){var n=t.services;if(n&amp;&amp;n.length){e.crossProfilesNavigation=[];for(var r=0;r&lt;n.length;r++){var o=n[r];if(o.userUriPattern&amp;&amp;o.homeUrl&amp;&amp;"Hub"!==o.applicationName){var i=o.userUriPattern;for(var a in i=i.replace(/{(.*?):(.*?)}/g,(function(t,n,r){var o,i=Oy(e.user.details);try{for(i.s();!(o=i.n()).done;){var a=o.value;if(a.authModuleName===n)return a[r]}}catch(e){i.e(e)}finally{i.f()}return"userNotRecognized"})),e.user)e.user.hasOwnProperty(a)&amp;&amp;(i=i.replace(":".concat(a),e.user[a]));var s=void 0;if(i.indexOf("://")&gt;0)s=i;else{if(0===i.indexOf("./")&amp;&amp;(i=i.substring(1)),!o.homeUrl)continue;s=o.homeUrl+i}e.crossProfilesNavigation.push({name:o.name,link:s,icon:o.iconUrl})}}}}))})),e.addSshPublicKey=function(){return d.show({template:n(62786),data:{},buttons:[{label:p("Add"),default:!0,close:!1,action:function(t,n,r){A.save({id:e.user.id,fields:"fingerPrint,comment,openSshKey"},{data:t.item.data}).$promise.then((function(t){e.user.sshPublicKeys=e.user.sshPublicKeys||[],e.user.sshPublicKeys.push(t),d.reset()}),(function(e){r(C.errorMessage(e,"add-ssh-public-key"))}))}},{label:p("Cancel")}]})},e.getLinkForSSHKey=function(e){return"data:application/octet-stream,".concat(encodeURIComponent(e.openSshKey))},e.removeSshPublicKey=function(t){C.confirm({description:p("Do you really want to remove this public key {{key.fingerPrint}} from user account â€œ{{user.name}}â€?",{user:e.user,key:t})}).then((function(){A.remove({id:e.user.id,subId:t.fingerPrint}).$promise.then((function(){e.user.sshPublicKeys=e.user.sshPublicKeys.filter((function(e){return e.fingerPrint!==t.fingerPrint}))}),C.errorHandler("remove-ssh-public-key"))}))},e.hubBackend=new mA(g.auth,p,b,y)):i.get({id:"me",fields:"id,login"},(function(e){I.path("users/".concat(IC(e.login,e.id)))}))}]);const Dy=Ny.name;var Ry=function(e){return{template:n(40177),controller:"UserCtrl",title:e("Users"),analyticsKey:"hub-user"}};function Uy(e,t){t.ngClass&amp;&amp;(t.ngClass=t.ngClass.replace(/}\s*{/g,", "))}var zy=o().module("Ring.island-ng.content",[]);zy.directive("rgIslandHeader",(function(){return{transclude:!0,replace:!0,bindToController:{border:"=?"},compile:Uy,template:'\n&lt;div\n  data-test="ring-island-header"\n  class="'.concat(v.Z.header,'"\n  ng-class="{\'').concat(v.Z.withBottomBorder,"': headerCtrl.border}\" \n  ng-transclude\n&gt;&lt;/div&gt;\n"),controllerAs:"headerCtrl",controller:function(){var e=this;this.$onInit=function(){e.wrapWithTitle=void 0===e.wrapWithTitle||e.wrapWithTitle}}}}));const $y=zy.name;var Gy=(0,Pn.Z)(),By=o().module("Ring.island-ng.header",[]);By.directive("rgIslandContent",(function(){return{transclude:!0,replace:!0,bindToController:{fade:"=?",onScroll:"&amp;?"},compile:Uy,template:'\n&lt;div\n  data-test="ring-island-content"\n  class='.concat(v.Z.content,"\n  ng-class=\"{\n    '").concat(v.Z.contentWithTopFade,"': contentCtrl.fade,\n    '").concat(v.Z.contentWithBottomFade,'\': contentCtrl.fade\n  }"\n&gt;\n  &lt;div\n    tabindex="0"\n    class="').concat(v.Z.scrollableWrapper,' js-scrollable-wrapper"\n    ng-transclude\n  &gt;&lt;/div&gt;\n&lt;/div&gt;\n'),controllerAs:"contentCtrl",controller:["$scope","$element",function(e,t){var n=this,r=t[0];if(this.onScroll){var o=r.querySelector(".js-scrollable-wrapper"),i=function(t){var r=o.scrollTop;n.onScroll({$event:t,$scrollTop:r}),e.$apply()};o.addEventListener("scroll",(function(){return Gy(i)}))}}]}}));const Fy=By.name;var Zy=o().module("Ring.island-ng",[$y,Fy]);Zy.directive("rgIsland",(function(){return{transclude:!0,replace:!0,bindToController:{narrow:"="},compile:Uy,template:'\n&lt;div\n  data-test="ring-island"\n  class="'.concat(v.Z.island,'"\n  ng-class="{\'').concat(v.Z.narrowIsland,"': islandCtrl.narrow}\"\n  ng-transclude\n&gt;&lt;/div&gt;\n"),controllerAs:"islandCtrl",controller:o().noop}}));const Yy=Zy.name,Wy=oo(n(73410).Z,"ProgressBar").name;var Hy=angular.module("HUB.user-duplicates",[vd,Ep,Yy,Wy]);Hy.controller("UserDuplicatesCtrl",["$scope","DuplicateUserResource","$routeParams","$timeout","hubNotify","i18n","hubI18nPlural",function(e,t,r,o,i,a,s){e.resultsPerPageOptions=[10,25,50],e.resultsPerPage=e.resultsPerPageOptions[0],e.query=r.query,e.selectedReliability={id:r.reliability},e.reliabilities=t.getReliabilities({},(function(t){e.selectedReliability.id=e.selectedReliability.id||t[0].id})),e.resultsTemplate=n(48937),e.skip=0;var c,l=null,g=i.errorHandler("search-user-duplicates"),u=function(t){g(t),e.searchProgress=null};function d(t){l=t&amp;&amp;t.id,t?(e.searchProgress=t.progress,void 0!==t.progress.progress&amp;&amp;t.progress.total&amp;&amp;(t.progress.percent=t.progress.progress/t.progress.total),e.clusters=t.clusters,e.clusterCount=t.clusterCount):(e.searchProgress=null,e.clusters=null)}function p(n){d(n),"after"!==n.progress.phase?c=o((function(){t.getSearch({id:n.id,fields:"id,progress"},p,u)}),1e3):e.reloadClusters()}e.$on("$destroy",(function(){c&amp;&amp;o.cancel(c)})),e.findDuplicates=function(n){n&amp;&amp;n.length&amp;&amp;"string"==typeof n&amp;&amp;(d(null),e.selectedReliability=e.reliabilities.filter((function(e){return e.id===n}))[0]),t.createSearch({query:e.query},{id:e.selectedReliability.id,fields:"id,progress"},p,u)},e.selectedReliability.id&amp;&amp;e.findDuplicates(),e.isSearchInProgress=function(){return e.searchProgress&amp;&amp;"after"!==e.searchProgress.phase},e.cancelSearch=function(){c&amp;&amp;o.cancel(c),l&amp;&amp;t.cancelSearch({id:l},(function(){d(null)}))};var A="id,progress,clusterCount,clusters(login,name,email,banned,users(user(id,login,name,banned,banBadge,profile(email,avatar))),reasonFields)";function C(n){var r=n.all?e.clusterCount:n.clusters?n.clusters.length:0;i.confirm(s.format("merge-duplicate-users?",r)).then((function(){t.merge({id:l,fields:A,$skip:e.skip,$top:e.resultsPerPage},n,d,i.errorHandler("merge-user-duplicates"))}))}e.reloadClusters=function(){l&amp;&amp;t.getSearch({id:l,fields:A,$skip:e.skip,$top:e.resultsPerPage},d,u)},e.reloadClusters(),e.currentPage=function(){return"".concat(e.skip+1,"â€“").concat(Math.min(e.skip+e.resultsPerPage,e.clusterCount))},e.nextPage=function(){e.skip+e.resultsPerPage+1&lt;e.clusterCount&amp;&amp;(e.skip+=e.resultsPerPage),e.reloadClusters()},e.prevPage=function(){e.skip=Math.max(0,e.skip-e.resultsPerPage),e.reloadClusters()},e.getPerPageOptionLabel=function(e){return"".concat(e," ").concat(a("per page"))},e.onChangeCountPerPage=function(t){e.resultsPerPage=t,e.reloadClusters()},e.removeUser=function(n){t.removeUser({id:l,userId:n.user.id,fields:A,$skip:e.skip,$top:e.resultsPerPage},d,i.errorHandler("remove-cluster-user"))},e.removeCluster=function(n){t.removeCluster({id:l,userId:n.users[0].user.id,fields:A,$skip:e.skip,$top:e.resultsPerPage},d,i.errorHandler("remove-duplicate-cluster"))},e.updateCluster=function(n){t.updateCluster({id:l,userId:n.users[0].user.id,fields:A,$skip:e.skip,$top:e.resultsPerPage},n,d,i.errorHandler("update-duplicate-cluster"))},e.mergeAll=function(){C({all:!0})},e.mergePage=function(){C({clusters:e.clusters})},e.mergeCluster=function(e){C({clusters:[e]})}}]);const qy=Hy.name;var Qy=n(37741),Vy=n.n(Qy),Ky=angular.module("HUB.organization-list.operations",["gettext",zC,BC]);Ky.controller("OrganizationListDeleteCtrl",["$element","$location","i18n","gettextCatalog","OrganizationResource","hubBulkOperation","HubPluralMessageBundle","hubNotify","hubI18nPlural",function(e,t,n,r,o,a,s,c,l){var g=this,u=e.controller("hubResource");this.remove=function(e,t){var r=e.items,g=function(e){return o.remove({id:e.id}).$promise},d=t||function(){return u.refresh()};return c.confirm({label:l.format("delete-organizations?",r.length),description:i.createElement("div",{className:"organization-list__delete-dialog"},1===r.length?n("When you confirm this action, the {{name}} organization is deleted.\n\nThe projects that are assigned to this organization are retained in the system as independent projects. This action cannot be undone.",{name:r[0].name}):n("When you confirm this action, the following organizations are deleted: {{names}}.\n\nThe projects that are assigned to these organizations are retained in the system as independent projects. This action cannot be undone.",{names:r.map((function(e){return e.name})).join(", ")})),okButtonLabel:n("Confirm"),actionPromise:function(){return a.withAlertReporter(r,g,{success:s["organizations-success-delete"]}).then(d)}})},this.one=function(e){return g.remove({items:[e],size:1},(function(){return t.path("/organizations")}))}}]),Ky.controller("OrganizationListSidebarCtrl",["$scope","OrganizationProjectsResource",function(e,t){e.$watch("$ctrl.sidebarElement",(function(e){if(e&amp;&amp;e.id){var n=(e.projects||[]).length;3===n&amp;&amp;n&lt;e.projectsCount&amp;&amp;t.get({fields:"id,name",id:e.id},(function(t){return e.projects=t.projects}))}}))}]);const Jy=Ky.name;var Xy=angular.module("HUB.organization-list",[Jy,zm]);Xy.controller("OrganizationsToolbarCtrl",["$scope","$location","$element","GroupResource","TeamResource","SelectOptionsResource","getParentGroupOptions","$q","i18n","ProjectResource","userPermissionsLoader",function(e,t,r,o,i,a,s,c,l,g,u){var d=a.projectsWithPermissions("project-update");e.dialogTemplate=n(58711);var p={key:Vy()(),projects:[]};e.dialogData={getProjects:function(e){var t=e.query,n=g.query({query:Vd("not(is:global)",t),fields:"id,key,name,organization(id)"}).$promise;return c.all({projectsResource:n,permissions:u}).then((function(e){return(e.projectsResource.projects||[]).filter((function(t){return!t.organization&amp;&amp;e.permissions.has("project-update",t.id)})).map((function(e){return{key:e.id,label:e.name}}))}))},item:p,onAddProject:function(e){var t=e.tag;return p.projects.push({id:t.key})},onRemoveProject:function(e){var t=e.tag;return p.projects=p.projects.filter((function(e){return e.id!==t.key}))}},e.mergeOptions=[{key:"group-to-team",label:"Merge into team..."}],e.excludeAllUsers=function(e){return e.filter((function(e){return!e.allUsers}))},d().then((function(e){e.some((function(e){return e.global}))&amp;&amp;(p.project={id:0,name:"Global"})})),e.hasUpdatableProjects=!1,d().then((function(t){e.hasUpdatableProjects=t.length&gt;0}))}]);const ew=Xy.name;function tw(e){return tw="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},tw(e)}function nw(e){return nw=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},nw(e)}function rw(e,t){return rw=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},rw(e,t)}function ow(e,t,n){return(t=iw(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function iw(e){var t=function(e,t){if("object"!==tw(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==tw(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===tw(t)?t:String(t)}var aw=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var r=arguments.length,o=new Array(r),s=0;s&lt;r;s++)o[s]=arguments[s];ow(e=function(e,t,n){return t=nw(t),function(e,t){if(t&amp;&amp;("object"===tw(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],nw(e).constructor):t.apply(e,n))}(this,t,[].concat(o)),"sidebarTemplate",n(63472)),ow(e,"emptyTemplate",n(67006)),ow(e,"itemsLevels",new Map),ow(e,"collapsedItems",[]),ow(e,"onItemLevelChange",(function(t,n){e.itemsLevels.set(t,n)}));var c=e.$inject.i18n;return e.page=n(98546),e.toolbarTemplate=n(69245),e.columns=[{id:"name",title:c("Name"),className:"column-with-gray-dots",getValue:function(e){return i.createElement(YI.Z,null,i.createElement(ZI.Z,{style:{verticalAlign:"middle"},url:e.iconUrl,size:ZI.$.Size20}),i.createElement(a.Z,{href:"organizations/".concat(CC(e.name,e.id))},e.name),i.createElement(vi.Z,{info:!0,className:"hub-table__description"},e.description))}},{id:"projects",title:c("Projects"),getValue:function(e){var t=(e.projects||[]).slice(0,3).map((function(e){return e.name}));return i.createElement(vi.Z,{className:"organization-list__projects"},t.join(", "),e.projectsCount&gt;t.length&amp;&amp;i.createElement("span",null,c(" and {{count}} more...",{count:e.projectsCount-t.length})))}}],e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;rw(e,t)}(t,e),r=t,Object.defineProperty(r,"prototype",{writable:!1}),r;var r}(p);ow(aw,"$inject",["$location","i18n","hubFeatures"]);var sw=angular.module("HUB.organization-list-switch",[ew]);sw.controller("OrganizationsCtrl",aw);const cw=sw.name;var lw=n(90709),gw=n(72031),uw=n.n(gw),dw=angular.module("HUB.components.services",[AC(),Sh]);dw.factory("ServicesResource",["$resource","hubConfig","auth",function(e,t,n){var r=n.auth.config,o=r.serverUri,i=r.scope;return e("".concat(o,"api/rest/services/"),{fields:"id,key,name,homeUrl,applicationName,vendor,version,trusted",query:i.map((function(e){return"applicationName: {".concat(e,"}")})).join(" or ")})}]),dw.factory("ServiceList",["ServicesResource","handleUnauthorizedServices",function(e,t){var n;return{loadServices:function(){return(n=n||e.get()).$promise.then(t)},getServices:function(){if(!n||!n.$resolved)throw new Error("Services loading should be done before calling getServices");return n.services||[]},isServiceSupported:function(e){var t=this.getServices();return uw()(t,(function(t){return t.applicationName===e}))}}}]),dw.factory("handleUnauthorizedServices",["$q","auth",function(e,t){return function(n){return n.services?e.when(t.auth._storage.getToken()).then((function(e){var t=e.scopes;return n.services.some((function(e){return!t.includes(e.id)}))})).then((function(e){if(e)return t.auth.forceTokenUpdate()})).finally((function(){return n})):n}}]),dw.factory("servicesListPromise",["ServiceList",function(e){return e.loadServices()}]),dw.factory("getReadableResourceType",["i18n",function(e){var t={"user-group":e("User group"),"teamcity-project":e("Teamcity project"),"youtrack-project":e("YouTrack project"),"upsource-project":e("Upsource project"),workspace:e("Workspace"),repository:e("Repository")};return function(e){return t[e]||e}}]),dw.factory("getServiceFunction",["i18n",function(e){var t={Hub:e("Connector"),YouTrack:e("Issue tracker"),Upsource:e("Code review"),TeamCity:e("Continuous integration"),"VCS Hosting":e("Repository")};return function(e){return t[e]||e}}]);const pw=dw.name;function Aw(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var Cw=angular.module("hub-components.hub-members-picker",[zm]),Iw="user",fw="userGroup";Cw.component("hubMembersPicker",{template:n(43571),bindings:{placeholder:"@?",size:"@?",model:"=",required:"=",exclude:"=",usersQuery:"=",groupsQuery:"=",datasource:"=",noUsers:"@?",noGroups:"@?",disabled:"&lt;?"},controller:["$scope","$q","i18n","gettextCatalog",function(e,t,n,r){var o=this;this.tags=[],this.placeholder||(this.noUsers?this.placeholder=n("Select a group"):this.noGroups?this.placeholder=n("Select a user"):this.placeholder=n("Select a user or group"));var i=function(e,t){var n=e,r=o.exclude?o.exclude.filter((function(e){return e.type===t})):[],i=o.model.filter((function(e){return e.type===t})).concat(r).map((function(e){return"not id: ".concat(e.id)})).join(" and ");return n=function(e,t){var n=t;return e===Iw?(n="(nameStartsWith: {".concat(n,"} or loginStartsWith: {").concat(n,"})"),o.usersQuery&amp;&amp;(n+=" and (".concat(o.usersQuery,")"))):e===fw&amp;&amp;(n="".concat(n," ").concat(n&amp;&amp;o.groupsQuery?" and ":""," ").concat(o.groupsQuery||"").trim()),n}(t,n),"".concat(n," ").concat(n&amp;&amp;i?" and ":""," ").concat(i)},a=function(e,t){return{key:e.id,label:e.name,type:t||e.type,icon:e.profile?e.profile.avatar.url:e.iconUrl,description:t===Iw?e.login:(n=e.userCount,r.getPlural(n,"{{$count}} user","{{$count}} users",{$count:n}))};var n},s=this.datasource.selectOptions,c=s.getGroups,l=s.getUsers;this.datasource=function(e){var r=e.query,s=void 0===r?"":r;return t.all({groups:o.noGroups?t.resolve([]):c(i(s,fw)),users:o.noUsers?t.resolve([]):l(i(s,Iw),15)}).then((function(e){var t=[],r=e.users.map((function(e){return a(e,Iw)})),i=e.groups.map((function(e){return a(e,fw)})),s=!o.noUsers&amp;&amp;!o.noGroups;return s&amp;&amp;i.length&amp;&amp;(t.push({rgItemType:Mp.Z.ListProps.Type.TITLE,label:n("Groups")}),t=t.concat(i)),s&amp;&amp;r.length&amp;&amp;(t.push({rgItemType:Mp.Z.ListProps.Type.TITLE,label:n("Users")}),t=t.concat(r)),t}))},e.$watch("$ctrl.model",(function(){o.tags=[],o.model&amp;&amp;o.model.forEach((function(e){return o.tags.push(a(e,o.noUsers?"userGroup":void 0))}))})),this.onAdd=function(e){var t=e.tag;o.model||(o.model=[]),o.tags=[].concat(function(e){return function(e){if(Array.isArray(e))return Aw(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Aw(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Aw(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(o.tags),[t]),o.model.push({type:t.type,id:t.key,name:t.label})},this.onRemove=function(e){var t=e.tag;o.model.forEach((function(e,n){e.id===t.key&amp;&amp;o.model.splice(n,1)})),o.tags.splice(o.tags.findIndex((function(e){return e.key===t.key})),1)}}]});const mw=Cw.name;function hw(e){return hw="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},hw(e)}function vw(e,t,n){return t=function(e){var t=function(e,t){if("object"!==hw(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==hw(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===hw(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function bw(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var yw=angular.module("hub-components.hub-tags-input",[zm]);yw.component("hubTagsInput",{template:n(86535),bindings:{placeholder:"@?",size:"@?",model:"=",datasource:"&amp;",keyProp:"@?",labelProp:"@?",disabled:"&lt;?",required:"&lt;?"},controller:["$scope",function(e){var t=this;this.tags=[],this.keyProp=this.keyProp||"id",this.labelProp=this.labelProp||"name",e.$watch("$ctrl.model",(function(){t.tags=[],t.model&amp;&amp;t.model.forEach((function(e){return t.tags.push(function(e){return{key:e[t.keyProp],label:e[t.labelProp]}}(e))}))})),this.onAdd=function(e){var n=e.tag;t.model||(t.model=[]),t.tags=[].concat(function(e){return function(e){if(Array.isArray(e))return bw(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return bw(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?bw(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(t.tags),[n]),t.model.push(vw(vw({},t.keyProp,n.key),t.labelProp,n.label))},this.onRemove=function(e){var n=e.tag;t.model.forEach((function(e,r){e[t.keyProp]===n.key&amp;&amp;t.model.splice(r,1)})),t.tags.splice(t.tags.findIndex((function(e){return e.key===n.key})),1)}}]});const ww=yw.name,_w=angular.module("HUB.bulk-operations",[hm,vd]).name;function jw(e){return jw="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},jw(e)}function xw(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ew(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?xw(Object(n),!0).forEach((function(t){Sw(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):xw(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Sw(e,t,n){return(t=Ow(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Tw(){Tw=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==jw(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function Mw(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function Lw(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Mw(i,r,o,a,s,"next",e)}function s(e){Mw(i,r,o,a,s,"throw",e)}a(void 0)}))}}function kw(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,Ow(r.key),r)}}function Ow(e){var t=function(e,t){if("object"!==jw(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==jw(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===jw(t)?t:String(t)}var Pw=angular.module("HUB.organization-page.members.toolbar",[mw,ww,_w]),Nw=function(){function e(t,n,r,o,i,a,s){var c=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.$inject={$q:t,$route:n,i18n:r,dialog:o,hubBulkOperation:i,$element:a,userPermissions:s},this.listController=a.controller("orgMembersTab"),this.organizationId=this.listController.organization.id,this.selection=(0,yg.Z)((function(){return c.listController.selection})),this.datasource=this.listController.datasource,s.bindVariable(this,"canReadOrganizationRoles","jetbrains.jetpass.organization-read &amp; jetbrains.jetpass.role-read",this.organizationId),s.bindVariable(this,"canUpdateOrganizationRoles","jetbrains.jetpass.organization-update",this.organizationId)}return e.$inject=["$q","$route","i18n","dialog","hubBulkOperation","$element","userPermissions"],t=e,r=[{key:"addToOrganization",value:(i=Lw(Tw().mark((function e(){var t,r,o,i,a,s,c=this;return Tw().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.$inject,r=t.i18n,o=t.dialog,i=t.hubBulkOperation,nm.startAddingMemberToOrganization(),e.next=4,this.datasource.getOrganization({id:this.organizationId,fields:"id,name,type,ownUsers(id,type),groups(id,type)"});case 4:return a=e.sent,s=[].concat(a.groups||[],a.ownUsers||[]),e.abrupt("return",o.show({title:r("Add Members"),data:{members:[],exclude:s,datasource:this.datasource},trapFocus:!1,template:n(17220),buttons:[{label:r("Add"),default:!0,action:function(e){var t=e.members;return i.withoutReporter(t,(function(e){return("userGroup"===e.type?c.datasource.addGroupToOrganization:c.datasource.addUserToOrganization)({id:c.organizationId,data:{id:e.id,type:e.type}})})).then((function(){nm.stopAddingMemberToOrganization(t.length),c.listController.load()}))}},{label:r("Cancel"),close:!0}]}));case 7:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"isRemovableItem",value:function(e){return e._group||e._user&amp;&amp;e._user.organizationOwnUser}},{key:"isRemoveAvailable",value:function(){return this.selection.items.some(this.isRemovableItem.bind(this))}},{key:"removeFromOrganization",value:(o=Lw(Tw().mark((function e(){var t,r,o,i,a,s,c,l,g,u,d,p=this;return Tw().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t="WHOLE_GROUP",r="KEEP_USERS",o=this.$inject,i=o.hubBulkOperation,a=o.dialog,s=o.i18n,nm.startRemovingFromOrganization(),c=this.selection.items,l=c.filter((function(e){return e._group})).map((function(e){return Ew(Ew({},e._group),{},{usersNum:e.items.length})})),g=c.filter((function(e){return!e._group})).map((function(e){return e._user||e})),u=l.some((function(e){return e.usersNum})),d=[{label:s("Remove"),default:!0,action:function(e){var t=e.option;return i.withoutReporter(c,(function(e){return e._group?p.datasource.removeGroupFromOrganization({id:p.organizationId,groupId:e._group.id,keepUsers:t===r}):p.datasource.removeUserFromOrganization({id:p.organizationId,userId:e._user.id})})).then((function(){p.listController.load(),nm.stopRemovingFromOrganization(c.length)}))}},{label:s("Cancel"),close:!0}],e.next=11,a.show({title:s("Remove from Organization"),data:{WHOLE_GROUP:t,KEEP_USERS:r,groups:l,users:g,hasNonEmptyGroups:u,option:t,groupingState:this.listController.groupingState},trapFocus:!1,template:n(38877),buttons:d});case 11:case"end":return e.stop()}}),e,this)}))),function(){return o.apply(this,arguments)})}],r&amp;&amp;kw(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,r,o,i}();Pw.controller("OrgMembersToolbarController",Nw);const Dw=Pw.name;var Rw=n(34840),Uw=n.n(Rw),zw=n(12738),$w=n.n(zw);function Gw(e){return Gw="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Gw(e)}function Bw(e){return Bw=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Bw(e)}function Fw(e,t){return Fw=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Fw(e,t)}function Zw(e){return function(e){if(Array.isArray(e))return Yw(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Yw(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Yw(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Yw(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function Ww(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Hw(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ww(Object(n),!0).forEach((function(t){Kw(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ww(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function qw(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Qw(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,Jw(r.key),r)}}function Vw(e,t,n){return t&amp;&amp;Qw(e.prototype,t),n&amp;&amp;Qw(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function Kw(e,t,n){return(t=Jw(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Jw(e){var t=function(e,t){if("object"!==Gw(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Gw(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Gw(t)?t:String(t)}var Xw=function(){function e(t,n,r,o){qw(this,e),Kw(this,"roles",null),this.$inject={$scope:t,HubEntities:n,i18n:r,$element:o},this.listController=o.controller("orgMembersTab"),this.datasource=this.listController.datasource}return e.$inject=["$scope","HubEntities","i18n","$element"],Vw(e,[{key:"$onInit",value:function(){var e=this,t=this.$inject.$scope;t.$watch((function(){return t.$ctrl.sidebarElement}),(function(){e.roles=null,e.loadingRoles=!0,e.loadRoles().then((function(t){e.roles={currentOrganization:e.getOrganizationRoles(t,e.getOrganizationId())}})).finally((function(){e.loadingRoles=!1,t.$applyAsync()}))}))}},{key:"loadRoles",value:function(){var e=Hw(Hw({},{id:this.getItem().id,fields:"id,role(".concat("id,key,name,permissions(service(name),name,entityType)","),owner(id,type,name),project(id,name,global),organization(id,name)")}),{},{query:"organization: ".concat(this.getOrganizationId())}),t=function(t){return t(e)};return this.isUser()?t(this.datasource.getUserTransitiveOrganizationRoles):t(this.datasource.getGroupTransitiveOrganizationRoles)}},{key:"groupAccessScopeRoles",value:function(e){var t=this.$inject,n=t.HubEntities,r=t.i18n,o=new Map;e.forEach((function(e){var t=e.role,n=o.get(t.id);n?n.owners=[].concat(Zw(n.owners),[e.owner]).filter(Boolean):o.set(t.id,{role:t,owners:[e.owner].filter(Boolean)})}));var i=Zw(o.values());return i.forEach((function(e){var t=Uw()(e.role.permissions,(function(e){return n.msg(e.entityType)||r("No entity")})),o={};$w()(Object.keys(t),(function(e){return e})).forEach((function(e){o[e]=t[e]})),Object.keys(o).forEach((function(e){var t=o[e];o[e]=Uw()(t,"name")})),e.role.groupedPermisisons=o})),i}},{key:"getOrganizationRoles",value:function(e,t){var n=e.filter((function(e){return!!e.organization})).filter((function(e){return e.organization.id===t}));return n.length&gt;0?{id:n[0].organization.id,name:n[0].organization.name,type:"organization",transitionedRoles:this.groupAccessScopeRoles(n)}:null}},{key:"isUser",value:function(){return!this.$inject.$scope.$ctrl.sidebarElement._group}},{key:"getItem",value:function(){var e=this.$inject.$scope.$ctrl.sidebarElement;return e._user||e._group||e}},{key:"getOrganizationId",value:function(){return this.$inject.$scope.$ctrl.organizationId}},{key:"isSelfOwner",value:function(e){return this.getItem().id===e.id}}])}(),e_=function(e){function t(){return qw(this,t),e=this,r=arguments,n=Bw(n=t),function(e,t){if(t&amp;&amp;("object"===Gw(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(n,r||[],Bw(e).constructor):n.apply(e,r));var e,n,r}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;Fw(e,t)}(t,e),Vw(t,[{key:"isGroup",value:function(e){return"userGroup"===e.type}},{key:"hasOwnRole",value:function(e){var t=this;return e.some((function(e){return t.isSelfOwner({owner:e})}))}},{key:"getRoleOrigins",value:function(e){var t=this,n=this.$inject.i18n,r=e.owners.filter((function(e){return!t.isSelfOwner({owner:e})})).map((function(e){return e.name})).join(", ");return[this.hasOwnRole(e.owners)&amp;&amp;n("direct assignment"),r&amp;&amp;n("member of ".concat(r))].filter((function(e){return!!e}))}},{key:"onExpandRoot",value:function(e){e?nm.expandOrganizationRole():nm.collapseOrganizationRole()}},{key:"onExpandEntity",value:function(e){e?nm.expandOrganizationEntity():nm.collapseOrganizationEntity()}}])}(p);Kw(e_,"$inject",["i18n"]),Kw(e_,"template",n(14295)),Kw(e_,"bindings",{role:"&lt;",isSelfOwner:"&amp;"});var t_=angular.module("HUB.organization-page.members.sidebar",[Wm]);t_.controller("OrganizationSidebarCtrl",Xw),t_.component("organizationSidebarRolesList",{template:n(73927),bindings:{accessScope:"&lt;",isSelfOwner:"&amp;"}}).component("organizationSidebarRolesListItem",e_);const n_=t_.name;var r_=n(52568),o_=n.n(r_),i_=n(927),a_=n.n(i_),s_=n(93764),c_=n.n(s_);function l_(e){return l_="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},l_(e)}function g_(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||f_(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u_(){u_=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==l_(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function d_(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function p_(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){d_(i,r,o,a,s,"next",e)}function s(e){d_(i,r,o,a,s,"throw",e)}a(void 0)}))}}function A_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function C_(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?A_(Object(n),!0).forEach((function(t){y_(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):A_(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function I_(e){return function(e){if(Array.isArray(e))return m_(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||f_(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function f_(e,t){if(e){if("string"==typeof e)return m_(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?m_(e,t):void 0}}function m_(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function h_(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,w_(r.key),r)}}function v_(e){return v_=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},v_(e)}function b_(e,t){return b_=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},b_(e,t)}function y_(e,t,n){return(t=w_(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function w_(e){var t=function(e,t){if("object"!==l_(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==l_(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===l_(t)?t:String(t)}var __=angular.module("HUB.organization-page.members",[pw,BC,Dw,n_,jh]),j_=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return y_(e=function(e,t,n){return t=v_(t),function(e,t){if(t&amp;&amp;("object"===l_(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],v_(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"sidebarTemplate",o_()),y_(e,"toolbarLeftTemplate",a_()),y_(e,"toolbarRightTemplate",c_()),y_(e,"ownUserItems",[]),y_(e,"otherUserItems",[]),y_(e,"usersTotal",0),y_(e,"expandedItems",new Set),y_(e,"isItemSelectable",(function(e){return e.selectable})),y_(e,"isItemCollapsed",(function(t){return!e.expandedItems.has(t)})),y_(e,"isItemCollapsible",(function(e){return Boolean(e.collapsible&amp;&amp;e.items&amp;&amp;e.items.length)})),y_(e,"selection",new xh.Z({isItemSelectable:e.isItemSelectable,getChildren:function(t){var n=e.isItemCollapsible(t),r=e.isItemCollapsed(t);return n&amp;&amp;r||!t.items?[]:t.items}})),y_(e,"itemFormatter",(function(t){var n=e.$inject.$scope,r=e.isItemCollapsible(t),o=e.isItemCollapsed(t);return C_(C_({},t),{},{collapsible:r,collapsed:o,onCollapse:function(){e.expandedItems.delete(t),e.otherUserItems=I_(e.otherUserItems),nm.collapseOrganizationGroup(),n.$applyAsync()},onExpand:function(){e.expandedItems.add(t),e.otherUserItems=I_(e.otherUserItems),nm.expandOrganizationGroup(),n.$applyAsync()}})})),y_(e,"onSelect",(function(t){e.selection=t,e.sidebarElement=t.getFocused()})),y_(e,"showLoader",(function(){e.loading=!0,e.$inject.$scope.$applyAsync()})),y_(e,"hideLoader",(function(){e.loading=!1,e.$inject.$scope.$applyAsync()})),y_(e,"toggleSidebar",(function(t){e.isSidebarShown=t,e.$inject.$scope.$evalAsync()})),y_(e,"loadingItems",new Set),y_(e,"itemMoreLessState",(function(t){var n=t._group;if(n){if(e.loadingItems.has(n.id))return lw.H.MORE_LOADING;if(n.users.length&lt;n.totalUsers)return lw.H.MORE}return lw.H.UNUSED})),y_(e,"onItemMoreLess",function(){var t=p_(u_().mark((function t(n,r){var o,i;return u_().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return o=n._group,i=n._loadMore,console.log("onGroupMoreLess",o,r),e.loadingItems.add(o.id),e.otherUserItems=I_(e.otherUserItems),e.$inject.$scope.$applyAsync(),t.next=7,i();case 7:e.loadingItems.delete(o.id),e.otherUserItems=I_(e.otherUserItems),e.$inject.$scope.$applyAsync();case 10:case"end":return t.stop()}}),t)})));return function(e,n){return t.apply(this,arguments)}}()),y_(e,"openItemPage",(function(){var t=e.$inject,n=t.$scope,r=t.$location,o=t.$filter,i=e.selection.getFocused();i._group?r.url(o("linkToHub")("groups",i._group.name,i._group.id)):r.url(o("linkToHub")("users",i._user.login,i._user.id)),n.$evalAsync()})),y_(e,"shortcuts",{left:function(){return e.toggleSidebar(!0)},right:function(){return e.toggleSidebar(!1)},enter:e.openItemPage}),y_(e,"load",p_(u_().mark((function t(){var n,r,o,i,a,s,c,l,g,u,d,p,A,C,I,f,m,h,v,b,y,w,_,j,x,E,S;return u_().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.$inject.$location,r=n.search(),e.ownUserItems=[],e.otherUserItems=[],e.showLoader(),o=r.query||"",i=(e.pager.currentPage-1)*e.pager.pageSize,t.next=9,e.datasource.getOrganizationUsers({id:e.organizationId,fields:"total",top:0});case 9:if(a=t.sent,s=a.total,e.updateCounter(s),c=function(t){return t.map((function(t){var n=e._getUserTitle(t);return{id:"".concat(t.id,"-ownUser"),_user:C_(C_({},t),{},{organizationOwnUser:!0}),title:n,selectable:!0,items:[]}}))},!e.groupingState){t.next=48;break}return l=20,g=function(t){var n=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:0;return e.datasource.getOrganizationOwnUsers({id:e.organizationId,query:o,top:t,skip:n})},t.next=18,Promise.all([g(l,0),e.datasource.getOrganizationGroups({id:e.organizationId,top:l})]);case 18:u=t.sent,d=g_(u,2),p=d[0],A=p.ownUsers,C=p.total,I=d[1].groups,f=c(A),e.totalOwnUsers=C,e.loadMoreOwnUsers=p_(u_().mark((function t(){var n,r,o;return u_().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e.loadingMore=!0,t.next=3,g(l,e.ownUserItems.length);case 3:n=t.sent,r=n.ownUsers,o=c(r),e.ownUserItems=[].concat(I_(e.ownUserItems),I_(o)),e.loadingMore=!1,e.$inject.$scope.$applyAsync();case 9:case"end":return t.stop()}}),t)}))),e.loadeMorePageSize=l,m=function(t){return e.datasource.getUsers({query:Vd(o,"in: ".concat(t.id)),skip:t.users.length,top:l})},h=0;case 30:if(!(h&lt;I.length)){t.next=43;break}return(v=I[h]).users=[],t.next=35,m(v);case 35:b=t.sent,y=b.users,w=b.total,v.totalUsers=w,v.users=y;case 40:h++,t.next=30;break;case 43:_=I.map((function(t){var n="".concat(t.id,"-group"),r=function(){return t.users.map((function(t){var n=e._getUserTitle(t);return{id:"".concat(t.id,"-groupUser"),_user:t,title:n}}))},o=function(){var o=p_(u_().mark((function o(){var i,a,s;return u_().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:return o.next=2,m(t);case 2:i=o.sent,a=i.users,t.users=[].concat(I_(t.users),I_(a)),s=e.otherUserItems.find((function(e){return e.id===n})),s.items=r();case 7:case"end":return o.stop()}}),o)})));return function(){return o.apply(this,arguments)}}();return{id:n,_group:t,_loadMore:o,title:e._getGroupTitle(t),selectable:!0,collapsible:!0,items:r()}})),e.ownUserItems=f,e.otherUserItems=_,t.next=59;break;case 48:return t.next=50,e.datasource.getOrganizationUsers({id:e.organizationId,query:o,top:e.pager.pageSize,skip:i});case 50:if(j=t.sent,x=j.users,E=j.total,e.usersTotal=E,S=Math.ceil(E/e.pager.pageSize)+1,!(e.pager.currentPage&gt;S)){t.next=58;break}return e.pager.onPageChange(S),t.abrupt("return");case 58:e.otherUserItems=x.map((function(t){var n=e._getUserTitle(t,!0);return{id:"".concat(t.id,"-otherUser"),_user:C_({},t),title:n,selectable:t.organizationOwnUser,items:[]}}));case 59:e.selection=e.selection.cloneWith({data:[].concat(I_(e.ownUserItems),I_(e.otherUserItems))}),e.hideLoader();case 61:case"end":return t.stop()}}),t)})))),y_(e,"updateCounter",(function(t){e.counters&amp;&amp;(e.counters.membersCount=t)})),y_(e,"_getUserTitle",(function(t){var n=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]&amp;&amp;arguments[1];t.organizationGroups=t.organizationGroups||[];var r,o=e.$inject,s=o.i18n,c=o.$filter,l=c("linkToHub")("users",t.login,t.id);return i.createElement(YI.Z,null,i.createElement(Ff,{user:t,i18n:s},i.createElement(YI.Z,null,i.createElement(ZI.Z,{style:{verticalAlign:"middle"},url:t.profile.avatar.url,size:ZI.$.Size20}),i.createElement(a.Z,{className:"team-tab__user-link",href:l},t.name))),t.banned&amp;&amp;i.createElement(io.Z,{invalid:!0},t.banBadge?t.banBadge:s("banned")),n&amp;&amp;("",r=t.organizationOwnUser&amp;&amp;t.organizationGroups.length?s("Direct assignment, member of"):t.organizationOwnUser&amp;&amp;!t.organizationGroups.length?s("Direct assignment"):s("Member of"),i.createElement("span",{style:{color:"#999",position:"absolute",left:"30%"}},i.createElement("span",null,r," ",function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:[];return e.map((function(t,n){return i.createElement("span",{key:t.id},i.createElement(a.Z,{href:c("linkToHub")("groups",t.name,t.id)},t.name),n&lt;e.length-1?", ":"")}))}(t.organizationGroups)))))})),y_(e,"_getGroupTitle",(function(t){var n=e.$inject,r=n.i18n,o=n.hubI18nPlural,s=n.$filter,c=t.userCount,l=t.totalUsers;return i.createElement("span",null,l!==c&amp;&amp;r("{{totalUsers}} of ",{totalUsers:l}),o.format("members-of-a-group",c,{userCount:c}),i.createElement("span",null," "),i.createElement(a.Z,{href:s("linkToHub")("groups",t.name,t.id)},t.name),t.autoJoin&amp;&amp;i.createElement(io.Z,{style:{marginLeft:"8px"}},r("auto-join")))})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;b_(e,t)}(t,e),n=t,r=[{key:"$postLink",value:function(){var e=this,t=this.$inject,n=t.$scope,r=t.hubSidebarStateStorage;n.$on("$locationChangeSuccess",this.load),this.organizationId=this.organization.id,this.initPager(),this.load(),r.read().then((function(t){e.isSidebarShown=t})),this.queryAssistDatasource=function(){for(var t,n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return(t=e.datasource).getQueryAssistSuggestions.apply(t,["users"].concat(r))},n.$watch((function(){return e.isSidebarShown}),(function(e){void 0!==e&amp;&amp;r.store(e)}))}},{key:"initPager",value:function(){var e=this,t=this.$inject.$location,n=t.search(),r=+n.page||1,o=+n.top||50;this.pager={currentPage:r,pageSize:o,onPageChange:function(n){e.pager.currentPage=n,t.search("page",n)},onPageSizeChange:function(n){e.pager.pageSize=n,t.search("top",n)}}}},{key:"setGrouping",value:function(e){var t=this.$inject.$location;this.sidebarElement=null,e?(t.search("mode",void 0),t.search("page",void 0),t.search("top",void 0)):t.search("mode","plain"),nm.toggleOrganizationGrouping(e)}},{key:"groupingState",get:function(){return!this.$inject.$location.search().mode}},{key:"sortByName",value:function(e,t){return e.name.localeCompare(t.name)}}],r&amp;&amp;h_(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(p);y_(j_,"$inject",["$location","$scope","i18n","hubI18nPlural","hubSidebarStateStorage","$filter"]),y_(j_,"bindings",{organization:"=",datasource:"=",counters:"="}),y_(j_,"template",n(74463)),__.component("orgMembersTab",j_);const x_=__.name;var E_=angular.module("HUB.organization-page.general",[]);E_.controller("OrganizationGeneralCtrl",["$scope","backendUri","feature",function(e,t,n){e.selectIcon=function(t){return e.organization.iconUrl=t},e.getDefaultIconUrl=function(){return"".concat(t,"/organizations/").concat(e.organization.id,"/icon?default=true")},e.isDefaultIconUrl=function(t){return!t||"string"!=typeof t||t.indexOf("organizations/".concat(e.organization.id,"/icon?etag=default"))&gt;-1},n("jetbrains.jetpass.userManagement.organization.members").then((function(t){e.showMembersTab=t}))}]);const S_=E_.name;var T_=angular.module("HUB.organization-page.projects",[BC]);T_.controller("OrganizationProjectsCtrl",["$scope","OrganizationResource","HubErrorMessageBundle","dialog","i18n","$filter",function(e,t,r,o,s,c){this.columns=[{id:"name",title:s("Name"),className:"column-with-gray-dots",getValue:function(e){return i.createElement(YI.Z,null,i.createElement(ZI.Z,{style:{verticalAlign:"middle"},url:e.iconUrl,size:ZI.$.Size20}),i.createElement(a.Z,{href:c("linkToHub")(e.archived?"projects-administration":"projects",e.name,e.id)},e.name),e.archived&amp;&amp;i.createElement(io.Z,null,s("archived")),i.createElement(vi.Z,{info:!0,className:"hub-table__description"},e.description))}}],this.getOrganization=function(){return e.organization},this.projectsToolbarTemplate=n(71545),this.projectsEmptyTemplate=n(90604)}]),T_.controller("OrganizationProjectsToolbarCtrl",["ProjectResource","userPermissionsLoader","$q","OrganizationProjectsResource","hubNotify","$element","$scope","i18n","hubI18nPlural",function(e,t,n,r,o,i,a,s,c){var l=this,g=i.controller("hubResource"),u=i.controller("hubTable");function d(){return p().id}function p(){return u.context&amp;&amp;u.context.getOrganization&amp;&amp;u.context.getOrganization()||{}}function A(){return g.showLoader(),a.$emit("tabs:projects-count-update"),g.refresh(!1)}this.loadProjects=function(r,o){var i=d(),a=e.query({query:Vd("not(is:global)",r),$skip:o,fields:"id,key,name,organization(id,name)"}).$promise;return n.all({projectsResource:a,permissions:t}).then((function(e){return(e.projectsResource.projects||[]).filter((function(t){return(t.organization||{}).id!==i&amp;&amp;e.permissions.has("project-update",t.id)})).map((function(e){return{key:e.id,label:e.name,description:e.organization?e.organization.name:""}}))}))},this.onAddProject=function(e){var t=e.description;return l.applyingChanges=!0,r.save({id:d()},{id:e.key}).$promise.then(A).then((function(){var n={prevOrganization:t,project:e.label,currentOrganization:p().name},r=s(t?"Project {{project}} is moved from organization {{prevOrganization}} to {{currentOrganization}}":"Project {{project}} is moved to organization {{currentOrganization}}",n);return o.success(r),g.hideLoader()}),o.errorHandler("add-project")).finally((function(){l.applyingChanges=!1}))},this.onDetachProjects=function(e){return l.applyingChanges=!0,n.all((e.items||[]).map((function(e){return r.delete({id:d(),subId:e.id}).$promise}))).then(A).then((function(){var t=c.format("organizations-success-projects-detach",e.items.length,{name:e.items[0]&amp;&amp;e.items[0].name});return o.success(t),g.hideLoader()}),o.errorHandler("detach-projects")).finally((function(){l.applyingChanges=!1}))}}]);const M_=T_.name;var L_=angular.module("HUB.organization-page.access",[]);L_.controller("OrganizationAccessCtrl",["$scope","i18n","gettextCatalog","auth","hubFeatures",function(e,t,n,r,o){this.organization=e.organization,this.datasource=new mA(r.auth,t,n,o)}]);const k_=L_.name;var O_=angular.module("HUB.organization-page",[S_,M_,k_,zt,x_,BC]);O_.controller("OrganizationCtrl",["$scope","$routeParams","$q","pageTitle","i18n","getWithQuery","OrganizationResource","OrganizationProjectsResource","userPermissions","feature","permissionCache","OrganizationUsersResource","OrganizationGroupsResource","auth","gettextCatalog","hubFeatures",function(e,t,r,o,i,a,s,c,l,g,u,d,p,A,C,I){var f=mC(t.id);function m(){return c.get({fields:"total",$top:0,id:e.organization.id},(function(t){e.counts.projectsCount=t.total}))}l.bindVariable(e,"updatable","organization-update"),e.organization=a(s,"organizations",{query:"id:{".concat(f,"} or name:{").concat(f,"}"),fields:"id,key,name,iconUrl,description,emailDomain"},(function(){Promise.all([m(),e.datasource.getOrganizationUsers({id:e.organization.id,fields:"total",top:0}).then((function(t){e.counts.membersCount=t.total}))]).then((function(){e.$applyAsync()}))})),e.counts={projectsCount:0,membersCount:0},o.addElement(e.organization),e.generalTemplate=n(71684),e.projectsTemplate=n(14565),e.accessTemplate=n(79501),e.datasource=new mA(A.auth,i,C,I),e.$on("tabs:projects-count-update",m),g("jetbrains.jetpass.userManagement.organization.members").then((function(t){e.showMembersTab=!(!t||!u.has("user-read | user-read-basic"))}))}]);const P_=O_.name;var N_=angular.module("HUB.group-list.merge",[ym,"gettext",zC]);N_.controller("GroupListMergeCtrl",["$element","backendUri","i18n","hubMerge","getParentGroupOptions","feature","TeamResource","SelectOptionsResource","$sce",function(e,t,n,r,o,i,a,s,c){var l=e.controller("hubResource");function g(e){return"string"==typeof e?c.trustAsHtml(e):e}this.merge=function(e){var a=[];a.push(r.getDialogDescription(e,[null,n("The following groups are merged: &lt;b&gt;{{items}}&lt;/b&gt;."),n("The following groups are merged: &lt;b&gt;{{items}}&lt;/b&gt; and &lt;b&gt;{{more}} more&lt;/b&gt;.")])),a.push(n("Members of merged groups become members of the resulting group.")),a.push(n("Any groups that are nested under a merged group are nested under the resulting group.")),a.push(n("All references to the merged groups are replaced with the resulting group. This includes sharing settings for dashboards, auto-join options in authentication modules, and project team memberships."));var s=r.createMerge({title:n("Merge Groups"),description:g(n("When you perform this action:")),messages:a.map(g),mergeButtonLabel:n("Merge"),successMessage:"groups-success-merge",mergeUrl:"".concat(t,"/usergroups/merge"),fields:[{name:"name",type:"string",label:n("Name")},{name:"description",type:"string",label:n("Description"),getValue:function(e){return r.truncateLongValue(e.description)}},{name:"project",type:"string",label:n("Project"),getValue:function(e){return e.project},optionsParser:"o.id as o.name for o in field.options track by o.id",init:function(e,t){var n=[];return t.forEach((function(e){return n.push(e.project.id)})),e.options=t.map((function(e){return e.project})).filter((function(e,t){return n.indexOf(e.id)===t})),e.value=(e.options[0]||{}).id,e}},{name:"parentGroup",type:"string",label:n("Parent group"),init:function(e,t){return i("jetbrains.hub.groups.list").then((function(r){return r?(e.disabled=!0,e):o((function(){return t}))().then((function(r){var o=function(e,t){if(e.length&gt;0){var n=e[0].parent;if(n&amp;&amp;!n.allUsers)for(var r=1;r&lt;e.length;r++){if(null===e[r].parent||e[r].parent.allUsers){n=e[r].parent;break}if(e[r].parent.id!==n.id){n=t.filter((function(e){return e.allUsers}))[0];break}}return n}return null}(t,r);return e.placeholder=n("Select group"),e.value=o&amp;&amp;o.id,e.options=r,e.optionsParser="o.id as o.name for o in field.options track by o.id",e.filter={placeholder:n("Filter groups")},e}))}))}},{name:"autoJoin",type:"boolean",label:n("Enable auto-join")},{name:"requiredTwoFactorAuthentication",type:"boolean",label:n("Require two-factor authentication")}]});return s.confirm(e).then((function(){l.refresh()}))},this.mergeIntoTeam=function(e){var t=[];t.push(r.getDialogDescription(e,[n("The &lt;b&gt;{{items}}&lt;/b&gt; group is merged to the team."),n("The following groups are merged to the team: &lt;b&gt;{{items}}&lt;/b&gt;."),n("The following groups are merged to the team: &lt;b&gt;{{items}}&lt;/b&gt; and &lt;b&gt;{{more}} more&lt;/b&gt;.")])),t.push(n("Any subgroups are added as groups to the project team.")),1===e.size?(t.push(n("Members of the group and its subgroups are granted access as defined by the roles that are assigned to the team in the project.")),t.push(n("The selected group is deleted.")),t.push(n("Roles and access permissions that are granted to users as members of the deleted group are revoked.")),t.push(n("References to the deleted group in all projects and connected services are set to the project team."))):(t.push(n("Members of the groups and their subgroups are granted access as defined by the roles that are assigned to the team in the project.")),t.push(n("The selected groups are deleted.")),t.push(n("Roles and access permissions that are granted to users as members of the deleted groups are revoked.")),t.push(n("References to the deleted groups in all projects and connected services are set to the project team.")));var o=s.teamsDatasourceFactory(),i=r.createMerge({title:n("Merge into Team"),description:g(n("When you perform this action:")),messages:t.map(g),mergeButtonLabel:n("Merge"),mergeOperation:function(e,t){return a.absorb({id:t.successor,absorbMembers:!0},[{id:e.id,type:e.type}]).$promise},successMessage:"groups-success-merge",errorMessage:"groups-merge",fields:[{name:"successor",type:"string",label:n("Project team"),externalFilter:!0,init:function(e){e.required=!0,e.placeholder=n("Select team"),e.value=null,e.options=[],e.optionsParser="o.id as o.name for o in field.datasource(query, skip) track by o.id",e.datasource=function(e,t){return o(Vd(e,"accessible(with: ".concat("jetbrains.jetpass.project-update",")"),"not is: global"),50,{$skip:t})}},showIfOneValue:!0}]});return i.confirm(e).then((function(){l.refresh()}))}}]),N_.controller("GroupListDeleteCtrl",["$element","$location","i18n","hubMerge","gettextCatalog","GroupResource","SelectOptionsResource","$sce",function(e,t,n,r,o,i,a,s){var c=e.controller("hubResource");function l(e){return"string"==typeof e?s.trustAsHtml(e):e}function g(e){var t=e.items,s=o.getPlural(t.length,"Delete Group","Delete Groups"),c=o.getPlural(t.length,"Delete","Delete"),g=r.getDialogDescription(e,[n("The following group will be deleted: &lt;b&gt;{{items}}&lt;/b&gt;."),n("The following groups will be deleted: &lt;b&gt;{{items}}&lt;/b&gt;."),n("The following groups will be deleted: &lt;b&gt;{{items}}&lt;/b&gt; and &lt;b&gt;{{more}} more&lt;/b&gt;.")]),u=1===e.size?[n("The group is deleted."),n("Roles and access permissions that are granted to the deleted group are revoked from former members of the group."),n("References to the deleted group in all projects and connected services that can be removed safely are deleted."),n("References to the deleted group that cannot be removed safely â€” for example, issue visiblity â€” are set to the selected replacement group."),n("API requests that use the ID of the deleted group return the replacement group instead.")]:[n("The groups are deleted."),n("Roles and access permissions that are granted to the deleted groups are revoked from former members of the groups."),n("References to the deleted groups in all projects and connected services that can be removed safely are deleted."),n("References to the deleted groups that cannot be removed safely â€” for example, issue visiblity â€” are set to the selected replacement group."),n("API requests that use the ID of the deleted groups return the replacement group instead.")],d=r.createMerge({title:s,description:g,messages:u.map(l),mergeButtonLabel:c,mergeOperation:function(e,t){return i.remove({id:e.id,successor:t.successor}).$promise},successMessage:"groups-success-delete",errorMessage:"groups-delete",fields:[{name:"successor",type:"string",label:n("Replacement group"),externalFilter:!0,init:function(e,t){e.placeholder=n("Select group"),e.value=null,e.required=!0,e.options=[],e.optionsParser="o.id as o.name for o in field.datasource(query) track by o.id",e.datasource=a.groupsDatasourceFactory((function(e){return a.queryUtils.except(e,t)})),e.filter={placeholder:n("Filter groups")}},showIfOneValue:!0}]});return d.confirm(e)}this.remove=function(e){return g(e).then((function(){c.refresh()}))},this.one=function(e){return g({items:[e],size:1}).then((function(){return t.path("/groups")}))}}]);const D_=N_.name;var R_=angular.module("HUB.group-list",[D_]);R_.controller("GroupsToolbarCtrl",["$scope","$location","$element","GroupResource","TeamResource","SelectOptionsResource","getParentGroupOptions","$q","i18n",function(e,t,r,o,i,a,s,c,l){var g=r.controller("hubResource");e.dialogTemplate=n(77007);var u={},d=a.projectsWithPermissions("project-update group-create");e.dialogData={projects:d,item:u,filter:{placeholder:l("Filter projects")}},e.mergeOptions=[{key:"group-to-team",label:"Merge into team..."}],e.excludeSpecialGroups=function(e){return e.filter((function(e){return!e.allUsers&amp;&amp;!e.registeredUsers}))},e.excludeImmutableGroups=function(e){return e.filter((function(e){return!e.immutable}))},d().then((function(e){e.some((function(e){return e.global}))&amp;&amp;(u.project={id:0,name:"Global"})}));var p=function(){e.teamsTotal=0;var n=t.search().query;n&amp;&amp;i.query({query:n,$top:0,fields:"total"}).$promise.then((function(t){e.teamsTotal=t.total}))};e.$on("$locationChangeSuccess",p),p(),e.hasUpdatableProjects=!1,d().then((function(t){e.hasUpdatableProjects=t.length&gt;0})),e.isSetParentEnabled=function(e){var t=!1;return e.items.forEach((function(e,n){t=t||0===n.offset})),e.size&gt;=1&amp;&amp;!t},e.groupsDataSource=function(e){return s((function(){return e.items}),!0)()},e.setParent=function(t,n){return e.setParentInProgress=!0,c.all(n.map((function(e){return o.save({id:e.id},{parent:{id:t.id}}).$promise}))).finally((function(){e.setParentInProgress=!1,g.refresh()}))}}]).factory("getParentGroupOptions",["SelectOptionsResource",function(e){return function(t,n){return e.groupsExcept({groups:function(){return function(e,t){var n=[];angular.forEach(e,(function e(t){if(n.push(t),t.subgroups)for(var r=0;r&lt;t.subgroups.length;r++)e(t.subgroups[r])}));var r=n;if(t){var o=e.length&gt;0?e[0].parent:null;angular.forEach(e,(function(e){null==o||null!=e.parent&amp;&amp;e.parent.id===o.id||(o=null)})),null!=o&amp;&amp;r.push(o)}return r}(t(),n)},allUsers:!1,registeredUsers:!0})}}]);const U_=R_.name;function z_(e){return z_="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},z_(e)}function $_(e){return function(e){if(Array.isArray(e))return G_(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return G_(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?G_(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function G_(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function B_(e){return B_=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},B_(e)}function F_(e,t){return F_=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},F_(e,t)}function Z_(e,t,n){return(t=Y_(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Y_(e){var t=function(e,t){if("object"!==z_(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==z_(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===z_(t)?t:String(t)}var W_=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var r=arguments.length,o=new Array(r),s=0;s&lt;r;s++)o[s]=arguments[s];Z_(e=function(e,t,n){return t=B_(t),function(e,t){if(t&amp;&amp;("object"===z_(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],B_(e).constructor):t.apply(e,n))}(this,t,[].concat(o)),"sidebarTemplate",n(25535)),Z_(e,"itemsLevels",new Map),Z_(e,"collapsedItemsSet",new Set),Z_(e,"collapsedItems",[]),Z_(e,"isItemSelectable",(function(e){return"All Users"!==e.name&amp;&amp;"Registered Users"!==e.name})),Z_(e,"getItemLevel",(function(t){return"Registered Users"!==t.name?e.itemsLevels.get(t):1})),Z_(e,"onItemLevelChange",(function(t,n){e.itemsLevels.set(t,n)})),Z_(e,"isItemCollapsible",(function(e){return e.hasOwnProperty("subgroups")&amp;&amp;"All Users"!==e.name&amp;&amp;"Registered Users"!==e.name})),Z_(e,"isItemCollapsed",(function(t){return e.collapsedItemsSet.has(t)})),Z_(e,"onItemCollapse",(function(t){e.collapsedItemsSet.add(t),e.collapsedItems=$_(e.collapsedItemsSet)})),Z_(e,"onItemExpand",(function(t){e.collapsedItemsSet.delete(t),e.collapsedItems=$_(e.collapsedItemsSet)}));var c=e.$inject,l=c.feature,g=c.i18n,u=c.$location,d=c.$q;e.MODES={GROUPS:{key:"groups",label:g("Groups")},TEAMS:{key:"teams",label:g("Teams")},MIXED:{key:"mixed",label:g("Groups and Teams")}},e.mode=u.search().mode||e.MODES.GROUPS.key,e.ifMode=function(t){return e.mode===t.key};var p=function(){e.toolbarTemplate=null,e.rightToolbarTemplate=null,e.ifMode(e.MODES.GROUPS)?(e.page=e.listMode?n(78692):n(8542),e.toolbarTemplate=n(64829),e.rightToolbarTemplate=n(94397)):e.ifMode(e.MODES.TEAMS)?(e.page=n(52725),e.rightToolbarTemplate=n(94397)):(e.page=n(41458),e.rightToolbarTemplate=n(94397))},A=function(e){return"userGroup"===e.type};return e.setMode=function(t){e.mode=t.key,u.search("mode",t.key),p()},d.all([l("jetbrains.hub.groups.listView"),e.$inject.settingsUtils.loadSettings("public")]).then((function(t){var n=t[0];e.listMode=n||u.search().list;var r=t[1];e.isInYoutrackEmbedded=!!r&amp;&amp;"youtrack"===r.hostServiceName.toLowerCase(),p()})),e.columns=[{id:"name",title:g("Name"),className:"column-with-gray-dots",getValue:function(t){return i.createElement(YI.Z,null,t.iconUrl?i.createElement(ZI.Z,{style:{verticalAlign:"middle"},url:t.iconUrl,size:ZI.$.Size20}):i.createElement("span",{className:"group-list__icon-wrapper"},i.createElement(da.ZP,{glyph:av(),size:da.ZP.Size.Size14,className:"group-list__icon"})),e.ifMode(e.MODES.GROUPS)&amp;&amp;i.createElement(a.Z,{href:e.$inject.makeHubGroupPageURL(t)},t.name),(e.ifMode(e.MODES.TEAMS)||e.ifMode(e.MODES.MIXED))&amp;&amp;i.createElement(a.Z,{className:"group-list__item-name",href:e.$inject.makeHubGroupPageURL(t)},t.name),!A(t)&amp;&amp;e.ifMode(e.MODES.MIXED)&amp;&amp;i.createElement(io.Z,null,g("team")),t.autoJoin&amp;&amp;i.createElement(io.Z,null,g("auto-join")),t.requiredTwoFactorAuthentication&amp;&amp;i.createElement(io.Z,{"data-test":"2FA-badge"},g("2FA")),i.createElement(vi.Z,{info:!0,className:"hub-table__description"},t.description))}},{id:"project",title:g("Project"),className:"group-list__item-name",getValue:function(e){return e.project&amp;&amp;e.project.name}},{id:"userCount",title:g("Members"),getValue:function(e){return e.userCount},rightAlign:!0},{id:"roles",title:g("Roles"),getValue:function(e){return i.createElement(vi.Z,{className:"group-list__roles"},(e.projectRoles||[]).map((function(t){return A(e)?"".concat(t.project.name," ").concat(t.role.name):t.role.name})).join(", "))}}],e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;F_(e,t)}(t,e),r=t,Object.defineProperty(r,"prototype",{writable:!1}),r;var r}(p);Z_(W_,"$inject",["$location","$q","feature","i18n","hubFeatures","makeHubGroupPageURL","settingsUtils"]);var H_=angular.module("HUB.group-list-switch",[zC,U_]);H_.controller("GroupsCtrl",W_);var q_=function(e){return"userGroup"===e.type?"groups/".concat(CC(e.name,e.id)):"projects-administration/".concat(fC(e.project.name,e.project.id),"?tab=team")};H_.factory("makeHubGroupPageURL",(function(){return q_})),H_.filter("encodeGroupLink",(function(){return q_}));const Q_=H_.name;function V_(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var K_=angular.module("HUB.group-page",[_v,_w,Cf,Lf]);K_.factory("GroupService",(function(){return{projectId:0}})),K_.controller("GroupCtrl",["$scope","$q","$routeParams","UserResource","GroupResource","GroupService","pageTitle","userPermissions","backend","dateFilter","i18n","SelectOptionsResource","getWithQuery","hubPageStorage","auth","gettextCatalog","hubFeatures","$filter","hubUserLicenseTypes","settingsUtils","$route","hubUserTypeFilterQuery",function(e,t,r,o,s,c,l,g,u,d,p,A,C,I,f,m,h,v,b,y,w,_){var j=this;e.membersTemplate=n(83033),e.settingsTemplate=n(34435),e.membersToolbarTemplate=n(44250),e.membersRightToolbarTemplate=n(67163),e.membersSidebarTemplate=n(55196),e.membersEmptyTemplate=n(56074),e.roles={data:{}},e.members={data:{}};var x=function(e){var t=e.groups||[],n=t.length;if(!n)return i.createElement(vi.Z,{info:!0},p("No groups"));n&gt;2&amp;&amp;(t=t.slice(0,1));var r=v("linkToHub"),o=[];if(t.forEach((function(e,n){o.push(i.createElement(a.Z,{key:n,href:r("groups",e.name,e.id)},e.name)),n&lt;t.length-1&amp;&amp;o.push(", ")})),n&gt;2){var s="".concat(r("users",e.login,e.id),"?tab=groups");o.push(i.createElement("span",{key:"-1"}," ",p("and")," ",i.createElement(a.Z,{href:s},"".concat(n-1," ").concat(p("more")))))}return o};this.membersExtraFilter=_,this.columns=M(),y.loadSettings("public").then((function(e){j.columns=M(e.helpdeskEnabled)}));var E=mC(r.id),S=function(){o.get({fields:"total",query:"in:{".concat(e.group.id,"}")},(function(t){e.membersCount=t.total}))};e.group=C(s,"usergroups",{query:"id:{".concat(E,"} or name:{").concat(E,"}"),fields:"id,name,description,autoJoin,autoJoinDomain,requiredTwoFactorAuthentication,parentsRequireTwoFactorAuthentication,iconUrl,parent/id,project(id,name),projectRoles(total),allUsers,registeredUsers,immutable,removable"},(function(t){I.set("id",t.id),c.projectId=t.project&amp;&amp;t.project.id,t.immutable?(e.updatable=!1,g.bindVariable(e,"twoFAUpdatable","group-update")):-1!==t.id.indexOf("_team")?(e.updatable=!1,e.twoFAUpdatable=!1):(g.bindVariable(e,"updatable","group-update"),g.bindVariable(e,"twoFAUpdatable","group-update")),S()})),e.projectRolesResource=u;var T="jetbrains.jetpass.project-update";function M(t){return[{id:"name",title:p("Full Name"),sortable:!0,getValue:function(e){return i.createElement(YI.Z,null,i.createElement(Ff,{user:e,i18n:p},i.createElement(YI.Z,null,i.createElement(ZI.Z,{style:{verticalAlign:"middle"},url:e.profile.avatar.url,size:ZI.$.Size20}),i.createElement(a.Z,{className:"group-page__user-link",href:v("linkToHub")("users",e.login,e.id)},e.name))),e.banned&amp;&amp;i.createElement(io.Z,{invalid:!0},e.banBadge?e.banBadge:p("banned")),(e.twoFactorAuthentication&amp;&amp;e.twoFactorAuthentication.enabled||e.webauthnDevice&amp;&amp;e.webauthnDevice.enabled)&amp;&amp;i.createElement(io.Z,{"data-test":"2FA-badge"},p("2FA")))}},{id:"login",title:p("Login"),sortable:!0,className:"group-page__user-login"},{title:p("Email"),getValue:function(e){var t=e.profile.email;return t&amp;&amp;t.email},className:"group-page__user-email"}].concat(function(e){return function(e){if(Array.isArray(e))return V_(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return V_(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?V_(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(t?[{id:"user-type",title:p("User Type"),getValue:function(t){return i.createElement(Mm,{user:t,hubUserLicenseTypes:b,onChange:function(n){return function(t,n){return o.save({id:t.id},{userType:n},(function(n){e.members.data.items=e.members.data.items.map((function(e){return e.id===t.id&amp;&amp;(e.userType=n.userType),e}))})).$promise.catch((function(){return w.reload()}))}(t,n)}})}}]:[]),[{title:p("Membership"),getValue:x},{title:p("Roles"),getValue:function(e){return(e.projectRoles||[]).map((function(e){return"".concat(e.project.name," ").concat(e.role.name)})).join(", ")}}])}e.projectsDataSource=A.projectsDatasourceFactory((function(e){return e?"".concat(e," and accessible(with: ").concat(T,")"):"accessible(with: ".concat(T,")")})),e.installFromNestedGroups=function(t){angular.forEach(t.items,(function(t){t.membership||(t.membership=[],t.isImmediateMember=!1,angular.forEach(t.groups,(function(n){n.id===e.group.id?t.isImmediateMember=!0:function(e,t){for(var n=t.parent;null!=n;n=n.parent)if(n.id===e.id)return!0;return!1}(e.group,n)&amp;&amp;t.membership.push(n)})))}))},e.accessTabDatasource=new mA(f.auth,p,m,h),l.addElement(e.group),e.$on("tabs:members-count-update",S)}]).controller("GroupMembersToolbarCtrl",["$scope","$q","$element","hubBulkOperation","hubNotify","GroupMemberResource","GroupService","SelectOptionsResource","dprDependantSrc","hubPageStorage",function(e,t,n,r,o,i,a,s,c,l){var g=n.controller("hubResource"),u=s.usersDatasourceFactory((function(e){return"".concat(s.defaultUsersQueryFn(e)," and not in: ").concat(l.get("id")," and not type: Reporter")}));e.users=function(e,t){return u(e,50,{$skip:t}).then((function(e){return e.map((function(e){return e.desc=e.profile&amp;&amp;e.profile.email&amp;&amp;e.profile.email.email?e.profile.email.email:e.login,e.avatar="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",e.profile&amp;&amp;e.profile.avatar&amp;&amp;e.profile.avatar.url&amp;&amp;(e.avatar=c(e.profile.avatar.url,16)),e}))}))},e.addUser=function(n){e.addGroupLoader=!0,i.save({id:l.get("id")},{id:n.id}).$promise.then((function(){g.showLoader(),e.addGroupLoader=!1,t.when(g.refresh()).then(g.hideLoader),e.$emit("tabs:members-count-update")})).catch(o.errorHandler("add-user"))},e.isRemoveEnabled=function(e){return!(e.size&lt;=0||e.items.some((function(e){return!e.isImmediateMember})))},e.removeUser=function(t){return r.withoutReporter(t,(function(t){return i.remove({id:l.get("id"),subId:t.id},(function(){e.$emit("tabs:members-count-update")})).$promise})).then(g.refresh)},e.getProjectId=function(){return a.projectId},e.selectConfig={popupClassName:"hub-select_narrow"}}]);const J_=K_.name;var X_=n(37974),ej=n(14890),tj=n(53894),nj=(n(25391),n(8539)),rj=n(36130);function oj(e){return oj="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},oj(e)}function ij(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function aj(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ij(Object(n),!0).forEach((function(t){sj(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ij(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function sj(e,t,n){return t=function(e){var t=function(e,t){if("object"!==oj(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==oj(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===oj(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var cj=(0,rj.PH)("Receive projects",(function(e){return e})),lj=(0,rj.PH)("Receive project update",(function(e){return e}));const gj=(0,rj.Lq)(sj(sj({},cj,(function(e,t){var n={};return t.forEach((function(t){var r=e[t.id]||{};n[t.id]=aj(aj({},r),t)})),aj(aj({},e),n)})),lj,(function(e,t){var n=t.id,r=t.myFavorite,o=aj(aj({},e[n]),{},{myFavorite:r});return aj(aj({},e),sj({},n,o))})),{});function uj(e){return uj="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},uj(e)}function dj(){dj=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==uj(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function pj(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function Aj(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){pj(i,r,o,a,s,"next",e)}function s(e){pj(i,r,o,a,s,"throw",e)}a(void 0)}))}}var Cj=(0,rj.PH)("Start loading projects"),Ij=(0,rj.PH)("Stop loading projects"),fj=(0,rj.PH)("Set projects",(function(e){return e})),mj=(0,rj.PH)("Toggle project list");function hj(e){var t=e.top,n=e.orgsAvailable;return function(){var e=Aj(dj().mark((function e(r,o,i){var a,s,c,l,g,u,d,p,A,C,I;return dj().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=i.getDatasource,r(Cj()),s=o(),c=s.projectList,l=s.entities,g=c.query,u=c.projects,d=u.items,p=u.total,d.length&gt;t&amp;&amp;(A=d.slice(0,t).map((function(e){return l.projects[e]})),r(fj({projects:A,total:p}))),e.prev=5,!g&amp;&amp;n){e.next=12;break}return e.next=9,a().getOrderedProjects({query:g,top:t});case 9:e.t0=e.sent,e.next=15;break;case 12:return e.next=14,a().getIndependentProjects({top:t});case 14:e.t0=e.sent;case 15:C=e.t0,r(cj(C.projects)),I=C.projects.slice(0,t),r(fj({projects:I,total:C.total})),e.next=24;break;case 21:e.prev=21,e.t1=e.catch(5),console.error(e.t1);case 24:r(Ij());case 25:case"end":return e.stop()}}),e,null,[[5,21]])})));return function(t,n,r){return e.apply(this,arguments)}}()}var vj=(0,rj.PH)("Start loading Template projects"),bj=(0,rj.PH)("Stop loading Template projects"),yj=(0,rj.PH)("Set Template projects",(function(e){return e})),wj=(0,rj.PH)("Toggle project templates list"),_j=(0,rj.PH)("Show project creation dialog"),jj=(0,rj.PH)("Hide project creation dialog"),xj=(0,rj.PH)("Start project creation"),Ej=(0,rj.PH)("Stop project creation"),Sj=(0,rj.PH)("Receive created project"),Tj=(0,rj.PH)("Receive project creation error");function Mj(e){return function(){var t=Aj(dj().mark((function t(n,r,o){var i,a,s,c,l;return dj().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return i=o.getDatasource,n(xj()),t.prev=2,t.next=5,i().createProject(e);case 5:return a=t.sent,n(cj([a])),n(lj(a)),n(jj()),t.abrupt("return",a);case 12:throw t.prev=12,t.t0=t.catch(2),s=t.t0.data,l=(c=void 0===s?{}:s).error_description||c.error_field||t.t0.toString(),n(Tj(l)),n(Ej()),t.t0;case 19:case"end":return t.stop()}}),t,null,[[2,12]])})));return function(e,n,r){return t.apply(this,arguments)}}()}var Lj=(0,rj.PH)("Set query assist focused"),kj=(0,rj.PH)("Start loading archived projects"),Oj=(0,rj.PH)("Stop loading archived projects"),Pj=(0,rj.PH)("set archived projects",(function(e){return e})),Nj=(0,rj.PH)("Toggle archived projects list"),Dj=(0,rj.PH)("Start loading organizations list"),Rj=(0,rj.PH)("Stop loading organizations list"),Uj=(0,rj.PH)("set organizations",(function(e){return e})),zj=(0,rj.PH)("set organization projects",(function(e){return e})),$j=(0,rj.PH)("Start loading organization projects list",(function(e){return e})),Gj=(0,rj.PH)("Stop loading organization projects list",(function(e){return e})),Bj=(0,rj.PH)("Toggle organization projects list",(function(e){return e}));function Fj(e){var t=e.organization,n=e.skip,r=void 0===n?0:n,o=e.top,i=void 0===o?20:o;return function(){var e=Aj(dj().mark((function e(n,o,a){var s,c;return dj().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return s=a.getDatasource,n($j(t.id)),e.prev=2,e.next=5,s().getOrganizationProjects({id:t.id,skip:r,top:i});case 5:c=e.sent,n(zj({organizationId:t.id,resource:c})),n(cj(c.projects)),e.next=13;break;case 10:e.prev=10,e.t0=e.catch(2),console.error(e.t0);case 13:n(Gj(t.id));case 14:case"end":return e.stop()}}),e,null,[[2,10]])})));return function(t,n,r){return e.apply(this,arguments)}}()}var Zj=(0,rj.PH)("Start project favorite update",(function(e){return e})),Yj=(0,rj.PH)("Stop project favorite update",(function(e){return e}));function Wj(e){var t=e.id,n=e.myFavorite;return function(){var e=Aj(dj().mark((function e(r,o,i){var a;return dj().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=i.getDatasource,r(Zj(t)),e.prev=2,e.next=5,a().updateProjectFavorite(t,n);case 5:r(lj({id:t,myFavorite:n})),e.next=11;break;case 8:e.prev=8,e.t0=e.catch(2),console.error(e.t0);case 11:r(Yj(t));case 12:case"end":return e.stop()}}),e,null,[[2,8]])})));return function(t,n,r){return e.apply(this,arguments)}}()}function Hj(e){var t=e.top,n=e.orgsAvailable;return function(){var e=Aj(dj().mark((function e(r,o){var i,a,s,c;return dj().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Promise.all([r(hj({top:t,orgsAvailable:n})),r(function(){var e=Aj(dj().mark((function e(t,n,r){var o,i,a,s,c;return dj().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o=r.getDatasource,t(vj()),i=n(),a=i.projectList,s=a.query,e.prev=4,e.next=7,o().getTemplateProjects({query:s});case 7:c=e.sent,t(cj(c.projects)),t(yj({projects:c.projects,total:c.total})),e.next=15;break;case 12:e.prev=12,e.t0=e.catch(4),console.error(e.t0);case 15:t(bj());case 16:case"end":return e.stop()}}),e,null,[[4,12]])})));return function(t,n,r){return e.apply(this,arguments)}}()),r(function(){var e=Aj(dj().mark((function e(t,n,r){var o,i,a;return dj().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o=r.getDatasource,t(kj()),i=n().projectList.query,e.prev=3,e.next=6,o().getArchivedProjects({query:i});case 6:a=e.sent,t(cj(a.projects)),t(Pj(a)),e.next=14;break;case 11:e.prev=11,e.t0=e.catch(3),console.error(e.t0);case 14:t(Oj());case 15:case"end":return e.stop()}}),e,null,[[3,11]])})));return function(t,n,r){return e.apply(this,arguments)}}()),r(function(){var e=Aj(dj().mark((function e(t,n,r){var o,i;return dj().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(o=r.getDatasource,!n().projectList.query){e.next=5;break}return t(Uj([])),e.abrupt("return");case 5:return t(Dj()),e.prev=6,e.next=9,o().getOrganizations();case 9:(i=e.sent).organizations.filter((function(e){return(e.projects||[]).length})).forEach((function(e){return t(Fj({organization:e,skip:0,top:3}))})),t(Uj(i)),e.next=18;break;case 15:e.prev=15,e.t0=e.catch(6),console.error(e.t0);case 18:t(Rj());case 19:case"end":return e.stop()}}),e,null,[[6,15]])})));return function(t,n,r){return e.apply(this,arguments)}}())]);case 2:i=o().projectList,a=i.archivedProjects,s=i.projects,c=i.templateProjects,0===s.items.length&amp;&amp;(a.expanded||0===a.items.length||r(Nj()),c.expanded||0===c.items.length||r(wj()));case 5:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()}var qj=(0,rj.PH)("Process query",(function(e){return e}));function Qj(e){return Qj="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Qj(e)}function Vj(e){return function(e){if(Array.isArray(e))return Kj(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Kj(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Kj(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Kj(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function Jj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Xj(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Jj(Object(n),!0).forEach((function(t){ex(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Jj(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ex(e,t,n){return t=function(e){var t=function(e,t){if("object"!==Qj(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Qj(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Qj(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var tx=(0,rj.Lq)(ex(ex(ex(ex({},Cj,(function(e){return Xj(Xj({},e),{},{fetching:!0})})),Ij,(function(e){return Xj(Xj({},e),{},{fetching:!1})})),fj,(function(e,t){var n=t.projects||[];return Xj(Xj({},e),{},{items:n.map((function(e){return e.id})),total:t.total})})),mj,(function(e){return Xj(Xj({},e),{},{expanded:!e.expanded})})),{fetching:!1,expanded:!0,items:[],total:0,query:""}),nx=(0,rj.Lq)(ex(ex(ex(ex(ex(ex(ex({},Dj,(function(e){return Xj(Xj({},e),{},{fetching:!0})})),Rj,(function(e){return Xj(Xj({},e),{},{fetching:!1})})),Uj,(function(e,t){var n=t.organizations||[],r=n.reduce((function(e,t){return e[t.id]={total:void 0,projects:[]},e}),{});return Xj(Xj({},e),{},{items:n,projectsMap:r})})),zj,(function(e,t){var n=t.organizationId,r=t.resource,o=(r.projects||[]).map((function(e){return e.id})),i=e.projectsMap;return i[n]?Xj(Xj({},e),{},{projectsMap:Xj(Xj({},i),{},ex({},n,Xj(Xj({},i[n]),{},{total:r.total,projects:[].concat(Vj(i[n].projects||[]),Vj(o)),expanded:!0})))}):e})),$j,(function(e,t){var n=e.projectsMap;return n[t]?Xj(Xj({},e),{},{projectsMap:Xj(Xj({},n),{},ex({},t,Xj(Xj({},n[t]),{},{fetching:!0})))}):e})),Gj,(function(e,t){var n=e.projectsMap;return n[t]?Xj(Xj({},e),{},{projectsMap:Xj(Xj({},n),{},ex({},t,Xj(Xj({},n[t]),{},{fetching:!1})))}):e})),Bj,(function(e,t){var n=e.projectsMap,r=n[t];return n[t]?Xj(Xj({},e),{},{projectsMap:Xj(Xj({},n),{},ex({},t,Xj(Xj({},r),{},{expanded:!r.expanded})))}):e})),{fetching:!1,items:[],projectsMap:{}}),rx=(0,rj.Lq)(ex(ex(ex(ex({},vj,(function(e){return Xj(Xj({},e),{},{fetching:!0})})),bj,(function(e){return Xj(Xj({},e),{},{fetching:!1})})),yj,(function(e,t){var n=t.projects||[];return Xj(Xj({},e),{},{items:n.map((function(e){return e.id})),total:t.total})})),wj,(function(e){return Xj(Xj({},e),{},{expanded:!e.expanded})})),{fetching:!1,expanded:!1,items:[],total:0}),ox=(0,rj.Lq)(ex(ex(ex(ex({},kj,(function(e){return Xj(Xj({},e),{},{fetching:!0})})),Oj,(function(e){return Xj(Xj({},e),{},{fetching:!1})})),Pj,(function(e,t){var n=t.projects||[];return Xj(Xj({},e),{},{items:n.map((function(e){return e.id}))})})),Nj,(function(e){return Xj(Xj({},e),{},{expanded:!e.expanded})})),{fetching:!1,expanded:!1,items:[]}),ix=(0,rj.Lq)(ex({},qj,(function(e,t){return t})),""),ax=(0,rj.Lq)(ex({},Lj,(function(e,t){return t})),!0),sx={isDialogShown:!1,isCreating:!1,creationError:null},cx=(0,rj.Lq)(ex(ex(ex(ex(ex(ex({},_j,(function(e){return Xj(Xj({},e),{},{isDialogShown:!0})})),jj,(function(){return sx})),xj,(function(e){return Xj(Xj({},e),{},{isCreating:!0,creationError:null})})),Ej,(function(e){return Xj(Xj({},e),{},{isCreating:!1})})),Tj,(function(e,t){return Xj(Xj({},e),{},{creationError:t})})),Sj,(function(e){return Xj(Xj({},e),{},{isCreating:!1})})),sx);const lx=(0,ej.UY)({projects:tx,organizations:nx,templateProjects:rx,archivedProjects:ox,query:ix,queryAssistFocused:ax,newProject:cx});function gx(e){return gx="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},gx(e)}function ux(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function dx(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ux(Object(n),!0).forEach((function(t){px(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ux(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function px(e,t,n){return t=function(e){var t=function(e,t){if("object"!==gx(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==gx(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===gx(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Ax=(0,rj.PH)("Receive readmes",(function(e){return e}));const Cx=(0,rj.Lq)(px({},Ax,(function(e,t){var n={};return t.forEach((function(e){n[e.resourceId]=e})),dx(dx({},e),n)})),{});var Ix=angular.module("ring.dashboard.app.service",[AC(),Lt]).factory("hubData",["$resource","auth",function(e,t){return function(n,r,o){return r=XI()({fields:"id"},r),e("".concat(t.auth.config.serverUri,"api/rest").concat(n),r,o)}}]).factory("hubSettings",["hubData",function(e){return e("/settings/:id")}]).factory("ServiceDiscoverer",["ServiceList",function(e){var t=e.getServices(),n=function(e){var t=window.document.createElement("a");return t.href=e,t.hostname};return{discoverById:function(e){var n=t.filter((function(t){return t.id===e}))[0];if(!n)throw new Error('The service this widget was connected to cannot be found in Hub. Service id = "'.concat(e,'".'));return n},discoverByUrl:function(e){var r=t.filter((function(t){return 0===t.homeUrl.indexOf(e)}))[0];return r||(r=t.filter((function(t){var r=n(e);return 0===n(t.homeUrl).indexOf(r)}))[0]),r}}}]).factory("OutdatedConfigFixer",["ServiceDiscoverer",function(e){return{isOutdatedConfig:function(e){return angular.isDefined(e.url)},fixConfig:function(t){var n=e.discoverByUrl(t.url.id);return t.service={id:n.id,text:n.homeUrl},delete t.url,t}}}]).value("isDashboardEditable",(function(e){return"EDIT"===e.permission||"OWNER"===e.permission}));const fx=Ix.name;var mx=n(36625),hx=n.n(mx),vx={columns:8,swapping:!0,margins:[16,16],defaultSizeX:2,defaultSizeY:2,rowHeight:160,maxSizeX:8,maxSizeY:10,mobileBreakPoint:800,floating:!0,resizable:!0,draggable:{enabled:!0,handle:".widget__header"}},bx={sizeX:"widget.grid.width",sizeY:"widget.grid.height",row:"widget.grid.y",col:"widget.grid.x"};function yx(e,t){var n=e.view,r=e.services,o=e.version;if(n&amp;&amp;function(e,t){if(e.defaultWidth&lt;=0||e.defaultWidth&gt;vx.columns)throw new Error(t("manifest.view.defaultWidth is out of range [1, {{ MAX }}].",{MAX:vx.columns}));if(e.defaultHeight&lt;=0||e.defaultHeight&gt;20)throw new Error(t("manifest.view.defaultHeight is out of range [1, {{ MAX }}].",{MAX:vx.columns}))}(n,t),r&amp;&amp;s.Z.error(t('Widget manifest "services" field has been renamed to "dependencies". Please update the widget.')),!hx().valid(o))throw new Error(t('"manifest.version" field does not satisfy "Semantic Versioning" principles. Visit https://semver.org for details.'))}var wx=angular.module("dashboard.custom-widget.service",[]);wx.factory("customWidgetService",["$log","gettextCatalog","i18n",function(e,t,n){return{validateManifest:function(e){return yx(e,n)},getLocalisedName:function(e){return function(e,t){var n=e.localisedNames;return n&amp;&amp;n[t]||e.name}(e,t.currentLanguage)},getLocalisedDescription:function(e){return function(e,t){var n=e.localisedDescriptions;return n&amp;&amp;n[t]||e.description}(e,t.currentLanguage)},semverServiceVersionCheck:function(t,n){return function(e,t,n){var r=t.version;if(!r)return n.warn("Service ".concat(t.name," (id=").concat(t.id,") has empty version field. Skipping version check.")),!0;if("dev.0"===r)return!0;var o=e[t.applicationName];if(!o)return!1;var i=hx().coerce(r);return hx().valid(i)?hx().satisfies(i,o):(n.warn('Could not parse version "'.concat(t.version,'" of service ').concat(t.name,":").concat(t.id,". Service is available for widget.")),!0)}(t,n,e)}}}]);const _x=wx.name;function jx(e){return jx="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},jx(e)}function xx(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ex(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?xx(Object(n),!0).forEach((function(t){Sx(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):xx(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Sx(e,t,n){return(t=Lx(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Tx(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function Mx(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,Lx(r.key),r)}}function Lx(e){var t=function(e,t){if("object"!==jx(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==jx(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===jx(t)?t:String(t)}var kx=[Tl,El,Sl],Ox=function(){return e=function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.widgetsMap=new Map},t=[{key:"add",value:function(e){e.manifest&amp;&amp;e.manifest.applicationName&amp;&amp;(e.applicationName=e.manifest.applicationName),this.widgetsMap.set(e.id,e)}},{key:"getList",value:function(){return function(e){return function(e){if(Array.isArray(e))return Tx(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Tx(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Tx(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(this.widgetsMap.values()).sort((function(e,t){return kx.indexOf(e.applicationName)-kx.indexOf(t.applicationName)}))}},{key:"get",value:function(e){return this.widgetsMap.get(e)}},{key:"getLabel",value:function(e){return this.get(e).label}},{key:"clear",value:function(){this.widgetsMap=new Map}}],t&amp;&amp;Mx(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}(),Px=new Ox,Nx=angular.module("hub.dashboard.widget-registry",[fx,zC,_x]);Nx.value("widgetsRegistry",Px).factory("loadAndRegisterCustomWidgets",["$log","hubData","widgetsRegistry","customWidgetService",function(e,t,n,r){return function(){return t("/widgets").get({query:"not is: disabled",fields:"id,key,manifest,accessibleServices(id,name,applicationName,homeUrl,version)"}).$promise.then((function(e){var t=e.widgets||[];return t.forEach((function(e){n.add(Ex(Ex({label:r.getLocalisedName(e.manifest),custom:!0,directive:"widget-custom"},e),{},{id:e.key}))})),t}))}}]).factory("loadAndRegisterCustomWidgetsPromise",["loadAndRegisterCustomWidgets",function(e){return e()}]);const Dx=Nx.name;function Rx(e){return Rx="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Rx(e)}function Ux(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function zx(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ux(Object(n),!0).forEach((function(t){$x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ux(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function $x(e,t,n){return t=function(e){var t=function(e,t){if("object"!==Rx(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Rx(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Rx(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Gx=(0,rj.PH)("Receive upsource repository",(function(e){return e})),Bx=(0,rj.PH)("Receive upsource repository error",(function(e){return e}));const Fx=(0,rj.Lq)($x($x({},Gx,(function(e,t){var n=t.resource,r=t.mappings;return zx(zx({},e),$x({},n.id,r))})),Bx,(function(e,t){var n=t.resource,r=t.error;return zx(zx({},e),$x({},n.id,{error:r}))})),{});function Zx(e,t,n){var r=e.manifest;if(e.custom)try{yx(r,n)}catch(e){s.Z.message(e.toString())}else void 0===t.notCompleted&amp;&amp;(t.notCompleted=!0);t.created=(new Date).toISOString();var o=e.custom?{width:r.view&amp;&amp;r.view.defaultWidth||vx.defaultSizeX,height:r.view&amp;&amp;r.view.defaultHeight||vx.defaultSizeY}:null;return{id:e.id,directive:e.directive,grid:o,config:t}}n(54678);var Yx=n(80690),Wx=n.n(Yx),Hx=n(55660),qx=n.n(Hx),Qx=n(98827),Vx=n.n(Qx);function Kx(e){return Kx="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Kx(e)}function Jx(){Jx=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==Kx(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function Xx(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function eE(e){return function(e){if(Array.isArray(e))return tE(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return tE(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?tE(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function tE(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function nE(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function rE(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){nE(i,r,o,a,s,"next",e)}function s(e){nE(i,r,o,a,s,"throw",e)}a(void 0)}))}}function oE(e,t,n){return t=function(e){var t=function(e,t){if("object"!==Kx(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Kx(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Kx(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var iE=Mp.Z.ListProps.Type,aE=iE.LINK,sE=iE.CUSTOM,cE=iE.SEPARATOR;function lE(e,t,n,r){return{rgItemType:aE,key:n,label:e,href:t,className:Wg()({"project-navigation__item":!0,"project-navigation__item_shifted":r})}}function gE(e,t,n,r,o,s){return{rgItemType:sE,key:t,className:Wg()({"project-navigation__item":!0,"project-navigation__item_shifted":r},o),template:i.createElement(a.Z,{onClick:n},s&amp;&amp;i.createElement(da.ZP,{glyph:s,size:da.ZP.Size.Size14,className:"project-navigation__item__icon"}),e)}}function uE(e,t){return{rgItemType:cE,key:e,description:t}}function dE(e,t,n,r){return{rgItemType:sE,key:"expander.".concat(e),className:"project-navigation__unresponsive-item",template:i.createElement("span",{onClick:r},i.createElement(da.ZP,{className:"project-navigation__expander-icon",glyph:n?qx():Qg(),size:da.ZP.Size.Size14}),t)}}function pE(e,t){return PI().copy(e).then((function(){return s.Z.successMessage(t("Checkout URL has been copied"))}))}function AE(e,t){return oE(oE(oE(oE({},Tl,t("Issue Tracker")),El,t("Code Review")),Sl,t("Build Configurations")),xl,t("Repository"))[e]||e}function CE(){return CE=rE(Jx().mark((function e(t,n,r){return Jx().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,bd.ZP)({text:r("Archive project?"),confirmLabel:r("Archive"),onBeforeConfirm:function(){var e=rE(Jx().mark((function e(){return Jx().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n(t);case 1:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()});case 2:case"end":return e.stop()}}),e)}))),CE.apply(this,arguments)}function IE(){return IE=rE(Jx().mark((function e(t,n,r){return Jx().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,bd.ZP)({text:r("Delete project?"),confirmLabel:r("Delete"),onBeforeConfirm:function(){var e=rE(Jx().mark((function e(){return Jx().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n(t);case 1:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()});case 2:case"end":return e.stop()}}),e)}))),IE.apply(this,arguments)}function fE(e){return fE="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},fE(e)}var mE=["className"],hE=["vcsUrl","href","children","i18n"];function vE(e,t,n){return t=function(e){var t=function(e,t){if("object"!==fE(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==fE(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===fE(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function bE(e){return function(e){if(Array.isArray(e))return yE(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return yE(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?yE(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function yE(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function wE(){return wE=Object.assign?Object.assign.bind():function(e){for(var t=1;t&lt;arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&amp;&amp;(e[r]=n[r])}return e},wE.apply(this,arguments)}function _E(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||Object.prototype.propertyIsEnumerable.call(e,n)&amp;&amp;(o[n]=e[n])}return o}var jE="jetbrains.jetpass.project-update",xE=[Tl,El,Sl];function EE(e,t){var n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:{},r=n.className,o=_E(n,mE),s=Wg()("project-overview__service__actions__action",r);return i.createElement("div",{className:s,key:e},i.createElement(a.Z,wE({href:t},o),e))}function SE(e){var t=e.vcsUrl,n=e.href,r=e.children,o=e.i18n,s=_E(e,hE);return i.createElement("div",wE({className:"project-overview__service-vcs-wrapper"},s),i.createElement(a.Z,{className:"project-overview__service__actions__action",href:n,title:r},r),i.createElement(bi.ZP,{className:"project-overview__service-vcs-copy-button",title:o("Copy VCS link"),onClick:function(){return pE(t,o)},icon:Wx()}))}function TE(e){return xE.reduce((function(t,n){return[].concat(bE(t),bE((e.resources||[]).filter((function(e){return e.service.applicationName===n})).sort((function(e,t){return e.name.toLowerCase().localeCompare(t.name.toLowerCase())})).map((function(e){return{service:e.service,resource:e}}))))}),[])}function ME(e){return ME="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},ME(e)}function LE(){LE=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==ME(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function kE(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function OE(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){kE(i,r,o,a,s,"next",e)}function s(e){kE(i,r,o,a,s,"throw",e)}a(void 0)}))}}function PE(e){return function(e){if(Array.isArray(e))return NE(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return NE(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?NE(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function NE(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function DE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function RE(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?DE(Object(n),!0).forEach((function(t){UE(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):DE(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function UE(e,t,n){return t=function(e){var t=function(e,t){if("object"!==ME(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==ME(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ME(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}SE.propTypes={i18n:Zg().func.isRequired,href:Zg().string,children:Zg().node.isRequired,vcsUrl:Zg().string.isRequired};function zE(e){return(e.resources||[]).filter((function(e){return"upsource-project"===e.type}))}function $E(e){var t={id:"",vcs:e.vcsType.key};return"hosted-git"===e.vcsType.key?(t["repo-id"]=e.vcsRepo.key.replace("repo_",""),t["vcs-hosting-id"]=e.vcsRepo.serviceId):t.url=e.vcsUrl,"password"===e.vcsAuth.key?(t.username=e.vcsUsername,t.password=e.vcsPassword):"ssh"===e.vcsAuth.key&amp;&amp;(t.key=e.vcsSshKey,t["key-passphrase"]=e.vcsKeyPassword),"perforce"===e.vcsType.key&amp;&amp;(t.client=e.vcsType.vcsClientMapping),t}var GE=(0,rj.PH)("Start loading project"),BE=(0,rj.PH)("Stop loading project"),FE=(0,rj.PH)("Set project",(function(e){return e})),ZE=(0,rj.PH)("reset project overview");function YE(e){var t=function(e){return e.dashboard&amp;&amp;e.dashboard.widgets?e:RE(RE({},e),{dashboard:{widgets:[]}})}(e);return t.dashboard.widgets=function(e){function t(e){return e.id+JSON.stringify(e.config)+JSON.stringify(e.grid)}return(e||[]).forEach((function(e){return delete e.$$hashKey})),PE(new Map(e.map((function(e){return[t(e),e]}))).values())}(t.dashboard.widgets),t}var WE=(0,rj.PH)("Start loading readmes"),HE=(0,rj.PH)("Stop loading readmes"),qE=(0,rj.PH)("Set readmes");function QE(e){return function(){var t=OE(LE().mark((function t(n,r,o){var i,a,s,c,l,g;return LE().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return i=o.getUpsourceBackend,a=e.sort((function(e,t){return e.name.toLowerCase().localeCompare(t.name.toLowerCase())})).map((function(e){return e.id})),n(qE(a)),n(WE()),s=!1,c=[],e.forEach((function(e){c.push(i().getReadme(e.service.homeUrl,e.key).catch((function(e){/is not yet initialized/.test(e)&amp;&amp;(s=!0),console.error(e)})))})),t.next=9,Promise.all(c);case 9:l=t.sent.filter((function(e){return!!e})),g=l.map((function(t,n){return RE({resourceId:e[n].id,resourceName:e[n].name},t.error?{error:t.error}:{fileName:t.fileName,content:t.text})})),n(Ax(g)),n(qE(a)),s&amp;&amp;setTimeout((function(){n(QE(e))}),1e4),n(HE());case 15:case"end":return t.stop()}}),t)})));return function(e,n,r){return t.apply(this,arguments)}}()}function VE(e){return function(){var t=OE(LE().mark((function t(n,r,o){var i,a,s,c;return LE().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(i=o.getUpsourceBackend,a=e.service,s=e.key,!r().entities.upsourceRepositories[e.id]){t.next=5;break}return t.abrupt("return");case 5:return t.prev=5,t.next=8,i().getVcsSettings(a.homeUrl,s);case 8:(c=t.sent).mappings||n(Bx({resource:e,error:new Error("No mappings found")})),n(Gx({resource:e,mappings:c.mappings})),t.next=17;break;case 13:throw t.prev=13,t.t0=t.catch(5),n(Bx({resource:e,error:t.t0})),t.t0;case 17:case"end":return t.stop()}}),t,null,[[5,13]])})));return function(e,n,r){return t.apply(this,arguments)}}()}var KE=(0,rj.PH)("Expand integration"),JE=(0,rj.PH)("Expand resource");function XE(e){return function(){var t=OE(LE().mark((function t(n,r){var o;return LE().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!r().projectOverview.expandedIntegrationKey){t.next=3;break}return t.abrupt("return");case 3:(o=(e||[]).filter((function(e){return[].concat(PE(xE),[xl]).includes(e.service.applicationName)}))).length&amp;&amp;n(KE(o[0].id));case 5:case"end":return t.stop()}}),t)})));return function(e,n){return t.apply(this,arguments)}}()}var eS=(0,rj.PH)("Receive services");function tS(e,t){return function(){var n=OE(LE().mark((function n(r,o){var i,a;return LE().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return i=o().entities.projects[e],a=i.dashboard,n.next=4,r(hS(e,RE(RE({},a),{},{widgets:[].concat(PE(a.widgets||[]),PE(t))})));case 4:case"end":return n.stop()}}),n)})));return function(e,t){return n.apply(this,arguments)}}()}function nS(e,t,n,r){return function(){var o=OE(LE().mark((function o(i){var a;return LE().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:a={id:n.id,text:n.homeUrl},UE(UE(UE({},Tl,(function(){i(tS(e,[Zx(Px.get("youtrack-issues-list"),{customWidgetConfig:{youTrack:{id:n.id,homeUrl:n.homeUrl},search:"project: {".concat(t.name,"} type: Feature State: Unresolved")},notCompleted:!1},r)]))})),El,(function(){i(tS(e,[Zx(Px.get("widget-upsource-commits"),{service:a,projects:[{id:t.id,text:t.name}],notCompleted:!1},r),Zx(Px.get("widget-upsource-reviews"),{service:a,project:{id:t.id,text:t.name},notCompleted:!1,query:"state: open"},r)]))})),xl,(function(){}))[n.applicationName]();case 3:case"end":return o.stop()}}),o)})));return function(e){return o.apply(this,arguments)}}()}var rS=(0,rj.PH)("Show integration create form"),oS=(0,rj.PH)("Hide integration create form"),iS=(0,rj.PH)("Begin creating integration"),aS=(0,rj.PH)("Stop creating integration"),sS=(0,rj.PH)("Integration error"),cS=(0,rj.PH)("Begin CanCreateIntegration check"),lS=(0,rj.PH)("Receive CanCreateIntegration error"),gS=(0,rj.PH)("Stop CanCreateIntegration check"),uS=(0,rj.PH)("Clear CanCreate error");function dS(e){return function(){var t=OE(LE().mark((function t(n,r,o){var i,a,s,c,l;return LE().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return i=o.getYouTrackBackend,a=o.getUpsourceBackend,s=o.getVCSBackend,c=r().projectOverview.id,l=UE(UE(UE({},Tl,(function(){return i().checkIfCanCreateProject(e.homeUrl)})),El,(function(){return a().checkIfCanCreateProject(e.homeUrl,c)})),xl,(function(){return s().checkIfCanCreateProject(e.homeUrl,c)})),n(cS()),t.prev=4,t.next=7,l[e.applicationName](e);case 7:t.next=13;break;case 9:throw t.prev=9,t.t0=t.catch(4),n(lS(t.t0)),t.t0;case 13:return t.prev=13,n(gS()),t.finish(13);case 16:case"end":return t.stop()}}),t,null,[[4,9,13,16]])})));return function(e,n,r){return t.apply(this,arguments)}}()}var pS=(0,rj.PH)("Begin loading integration form data"),AS=(0,rj.PH)("Receive integration form data error"),CS=(0,rj.PH)("Receive integration form data error"),IS=(0,rj.PH)("Clear integration form data error"),fS=(0,rj.PH)("Stop integration form data loading");function mS(e){return function(){var t=OE(LE().mark((function t(n,r,o){var i,a;return LE().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(i=o.getYouTrackBackend,e.applicationName===Tl){t.next=3;break}return t.abrupt("return");case 3:return n(pS()),t.prev=4,t.next=7,i().getCustomProjectTemplates(e.homeUrl);case 7:a=t.sent,n(AS(a)),t.next=15;break;case 11:throw t.prev=11,t.t0=t.catch(4),n(CS(t.t0)),t.t0;case 15:return t.prev=15,n(fS()),t.finish(15);case 18:case"end":return t.stop()}}),t,null,[[4,11,15,18]])})));return function(e,n,r){return t.apply(this,arguments)}}()}function hS(e,t){return function(){var n=OE(LE().mark((function n(r,o,i){var a,s;return LE().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return a=i.getDatasource,s=o().entities.projects[e],n.prev=2,n.next=5,a().updateProjectDashboard(e,t);case 5:r(cj([RE(RE({},s),{},{dashboard:t})])),n.next=11;break;case 8:throw n.prev=8,n.t0=n.catch(2),n.t0;case 11:case"end":return n.stop()}}),n,null,[[2,8]])})));return function(e,t,r){return n.apply(this,arguments)}}()}var vS,bS=(0,rj.PH)("Start VCS connection test"),yS=(0,rj.PH)("Stop VCS connection test"),wS=(0,rj.PH)("Receive VCS connection status");function _S(e){return _S="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},_S(e)}function jS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function xS(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?jS(Object(n),!0).forEach((function(t){ES(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):jS(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ES(e,t,n){return t=function(e){var t=function(e,t){if("object"!==_S(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==_S(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===_S(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var SS={isIntegrationDialogOpen:!1,serviceToIntegrateWith:null,isCreatingIntegration:!1,integrationErrorMessage:null,isCheckingIntegrationCreationAccess:!1,integrationCreationAccessErrorMessage:null,isTestingVcsConnection:!1,testingVcsConnectionStatus:null,isLoadingFormData:!1,customYouTrackProjectTemplates:[],integrationFormDataErrorMessage:null},TS=xS({id:null,fetching:!1,fetchingReadmes:!1,favoriteUpdating:!1,readmes:[],expandedIntegrationKey:null,availableServices:[]},SS);const MS=(0,rj.Lq)((ES(ES(ES(ES(ES(ES(ES(ES(ES(ES(vS={},ZE,(function(){return xS({},TS)})),GE,(function(e,t){return e.id===t?xS(xS({},e),{},{fetching:!0}):e})),BE,(function(e,t){return e.id===t?xS(xS({},e),{},{fetching:!1}):e})),Zj,(function(e,t){return e.id===t?xS(xS({},e),{},{favoriteUpdating:!0}):e})),Yj,(function(e,t){return e.id===t?xS(xS({},e),{},{favoriteUpdating:!1}):e})),FE,(function(e,t){return xS(xS({},e),{},{id:t})})),WE,(function(e){return xS(xS({},e),{},{fetchingReadmes:!0})})),HE,(function(e){return xS(xS({},e),{},{fetchingReadmes:!1})})),qE,(function(e,t){return xS(xS({},e),{},{readmeIds:t})})),KE,(function(e,t){return xS(xS({},e),{},{expandedIntegrationKey:t})})),ES(ES(ES(ES(ES(ES(ES(ES(ES(ES(vS,JE,(function(e){return xS(xS({},e),{},{expandedIntegrationKey:null})})),eS,(function(e,t){return xS(xS({},e),{},{availableServices:t})})),rS,(function(e,t){return xS(xS({},e),{},{isIntegrationDialogOpen:!0,serviceToIntegrateWith:t})})),oS,(function(e){return xS(xS({},e),SS)})),iS,(function(e){return xS(xS({},e),{},{isCreatingIntegration:!0})})),aS,(function(e){return xS(xS({},e),{},{isCreatingIntegration:!1})})),sS,(function(e,t){var n=t.data,r=(void 0===n?{}:n).error_description||t.toString();return xS(xS({},e),{},{integrationErrorMessage:r})})),cS,(function(e){return xS(xS({},e),{},{isCheckingIntegrationCreationAccess:!0})})),gS,(function(e){return xS(xS({},e),{},{isCheckingIntegrationCreationAccess:!1})})),lS,(function(e,t){var n=t.data,r=void 0===n?{}:n,o=r.error_description||r.message||t.toString();return xS(xS({},e),{},{integrationCreationAccessErrorMessage:o})})),ES(ES(ES(ES(ES(ES(ES(ES(ES(vS,pS,(function(e){return xS(xS({},e),{},{isLoadingFormData:!0})})),AS,(function(e,t){return xS(xS({},e),{},{customYouTrackProjectTemplates:t})})),fS,(function(e){return xS(xS({},e),{},{isLoadingFormData:!1})})),CS,(function(e,t){var n=t.data,r=void 0===n?{}:n,o=r.error_description||r.message||t.toString();return xS(xS({},e),{},{integrationFormDataErrorMessage:o})})),IS,(function(e){return xS(xS({},e),{},{integrationFormDataErrorMessage:null})})),uS,(function(e){return xS(xS({},e),{},{integrationCreationAccessErrorMessage:null})})),bS,(function(e){return xS(xS({},e),{},{isTestingVcsConnection:!0})})),yS,(function(e){return xS(xS({},e),{},{isTestingVcsConnection:!1})})),wS,(function(e,t){return xS(xS({},e),{},{testingVcsConnectionStatus:t})}))),TS);function LS(e){return LS="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},LS(e)}function kS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function OS(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?kS(Object(n),!0).forEach((function(t){PS(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):kS(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function PS(e,t,n){return t=function(e){var t=function(e,t){if("object"!==LS(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==LS(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===LS(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var NS=(0,rj.PH)("Receive roles",(function(e){return e}));const DS=(0,rj.Lq)(PS({},NS,(function(e,t){var n={};return t.forEach((function(t){var r=e[t.id]||{};n[t.id]=OS(OS({},r),t)})),OS(OS({},e),n)})),{});function RS(e){return RS="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},RS(e)}function US(){US=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==RS(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function zS(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function $S(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){zS(i,r,o,a,s,"next",e)}function s(e){zS(i,r,o,a,s,"throw",e)}a(void 0)}))}}var GS=(0,rj.PH)("Role list. Start loading roles."),BS=(0,rj.PH)("Role list. Stop loading roles."),FS=(0,rj.PH)("Role list. Set roles.",(function(e){return e})),ZS=(0,rj.PH)("Role list. Catch an error.",(function(e){return e}));function YS(){return function(){var e=$S(US().mark((function e(t,n,r){var o,i,a,s;return US().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o=r.getDatasource,t(GS()),i=eT(n()),a=tT(n()),e.prev=4,e.next=7,o().getRoles({query:i,orderBy:a});case 7:s=e.sent,t(NS(s.roles)),t(FS(s)),e.next=16;break;case 12:e.prev=12,e.t0=e.catch(4),console.warn(e.t0),t(ZS(e.t0));case 16:t(BS());case 17:case"end":return e.stop()}}),e,null,[[4,12]])})));return function(t,n,r){return e.apply(this,arguments)}}()}var WS=(0,rj.PH)("Role list. Process query.",(function(e){return e})),HS=(0,rj.PH)("Role list. Process sort order.",(function(e){return e}));function qS(e){return qS="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},qS(e)}function QS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function VS(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?QS(Object(n),!0).forEach((function(t){KS(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):QS(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function KS(e,t,n){return t=function(e){var t=function(e,t){if("object"!==qS(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==qS(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===qS(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var JS=function(e){var t=aT(e);return sT(e).items.map((function(e){return t[e]}))},XS=function(e){return sT(e).total},eT=function(e){return sT(e).query},tT=function(e){return sT(e).orderBy},nT=function(e){return sT(e).defaultSortKey},rT=function(e){return sT(e).fetching},oT=function(e){return sT(e).error};const iT=(0,rj.Lq)(KS(KS(KS(KS(KS(KS({},GS,(function(e){return VS(VS({},e),{},{fetching:!0})})),BS,(function(e){return VS(VS({},e),{},{fetching:!1})})),FS,(function(e,t){var n=t.roles||[];return VS(VS({},e),{},{items:n.map((function(e){return e.id})),total:t.total})})),WS,(function(e,t){return VS(VS({},e),{},{query:t})})),HS,(function(e){var t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:e.defaultSortKey;return VS(VS({},e),{},{orderBy:t})})),ZS,(function(e,t){return VS(VS({},e),{},{error:t,items:[],total:0})})),{fetching:!1,items:[],total:0,query:"",orderBy:"name",defaultSortKey:"name",error:null});var aT=function(e){return e.entities.roles},sT=function(e){return e.roleList},cT=(0,ej.UY)({projects:gj,readmes:Cx,upsourceRepositories:Fx,roles:DS});const lT=(0,ej.UY)({entities:cT,projectList:lx,projectOverview:MS,roleList:iT});var gT={datasource:null,upsourceBackend:null,youTrackBackend:null,VCSBackend:null},uT=[tj.Z.withExtraArgument({getDatasource:function(){return gT.datasource},getUpsourceBackend:function(){return gT.upsourceBackend},getVCSBackend:function(){return gT.VCSBackend},getYouTrackBackend:function(){return gT.youTrackBackend}})],dT=(0,nj.Uo)({});const pT=(0,ej.MT)(lT,dT(ej.md.apply(void 0,uT)));function AT(e){gT.datasource=e}function CT(e){gT.upsourceBackend=e}function IT(e){gT.VCSBackend=e}var fT=n(61160),mT=n.n(fT);function hT(e){return hT="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},hT(e)}function vT(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,_T(r.key),r)}}function bT(e){return bT=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},bT(e)}function yT(e,t){return yT=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},yT(e,t)}function wT(e,t,n){return(t=_T(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _T(e){var t=function(e,t){if("object"!==hT(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==hT(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===hT(t)?t:String(t)}var jT=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return wT(e=function(e,t,n){return t=bT(t),function(e,t){if(t&amp;&amp;("object"===hT(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],bT(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"state",{error:null}),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;yT(e,t)}(t,e),n=t,r=[{key:"componentDidCatch",value:function(e,t){this.setState({error:e}),console&amp;&amp;console.error&amp;&amp;console.error(e,t)}},{key:"render",value:function(){var e=this.state.error,t=this.props.i18n;return e?i.createElement(Wa.Z,{icon:mT(),code:t("Client-side error"),description:e.toString()}):this.props.children}}],r&amp;&amp;vT(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);wT(jT,"propTypes",{children:Zg().node.isRequired,i18n:Zg().func.isRequired});var xT=n(97846),ET=n.n(xT),ST=n(45450),TT=n.n(ST),MT=n(72454);function LT(e){return LT="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},LT(e)}function kT(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,DT(r.key),r)}}function OT(e){return OT=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},OT(e)}function PT(e,t){return PT=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},PT(e,t)}function NT(e,t,n){return(t=DT(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function DT(e){var t=function(e,t){if("object"!==LT(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==LT(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===LT(t)?t:String(t)}var RT=function(e){function t(e){var n,r,o,i;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),NT((r=this,i=[e],o=OT(o=t),n=function(e,t){if(t&amp;&amp;("object"===LT(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(r,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(o,i||[],OT(r).constructor):o.apply(r,i))),"state",{query:"",focus:!1,theme:"dark"}),NT(n,"onQuery",(function(e){var t=e.query;n.setState({query:t})})),NT(n,"onApply",(function(e){var t=e.query,r=n.props.$scope,o=n.$inject.$route;t?o.updateParams({query:t}):o.updateParams({query:void 0}),r.$applyAsync()})),NT(n,"onFocusChange",(function(e){var t=e.focus;n.setState({focus:t})}));var a=e.$injector,s=e.$scope,c=a.get("$route"),l=a.get("i18n"),g=a.get("hubConfig");n.$inject={$route:c,$routeParams:a.get("$routeParams"),i18n:l,hubConfig:g},s.$on("$routeUpdate",(function(e,t){var r=t.params.query;n.setState({query:r}),n.props.onQueryChange(r)}));var u=c.current.params.query;return n.state.query=u,n.props.onQueryChange(u),g.embedded&amp;&amp;(n.state.theme="light"),n}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;PT(e,t)}(t,e),n=t,r=[{key:"render",value:function(){var e=this.props,t=e.placeholder,n=e.embedded,r=e.docked,o=e.queryAssistDataSource,a=this.state,s=a.query,c=a.theme,l=this.$inject.i18n,g=!n&amp;&amp;!r,u=Wg()({"hub-header":!0,"hub-header_with-search":!0,"hub-header_embedded":n,"hub-header_docked":r,"hub-header_docked_active":r&amp;&amp;(g||s.length),"hub-header_light":"light"===c}),d=Wg()({"ring-header__search":!0,"hub-header__form":!0}),p=l("Press â‡¥ to complete first item"),A=l("Press â†© to complete selected item");return i.createElement("div",{className:u},i.createElement("form",{className:d},i.createElement("div",{className:"hub-header__query-input"},i.createElement(Gl.C,{huge:!0,clear:!0,dataSource:o,theme:c,glass:!0,onApply:this.onApply,onChange:this.onQuery,onFocusChange:this.onFocusChange,focus:g,placeholder:t,hint:p,hintOnSelection:A,query:s,size:MT.$u.FULL}))))}}],o=[{key:"getDerivedStateFromProps",value:function(e,t){return{theme:e.theme||t.theme}}}],r&amp;&amp;kT(n.prototype,r),o&amp;&amp;kT(n,o),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r,o}(i.PureComponent);NT(RT,"propTypes",{queryAssistDataSource:Zg().func,placeholder:Zg().string,theme:Zg().string,embedded:Zg().bool.isRequired,docked:Zg().bool.isRequired,onQueryChange:Zg().func.isRequired,$injector:Zg().object.isRequired,$scope:Zg().object.isRequired}),NT(RT,"defaultProps",{queryAssistDataSource:function(){},embedded:!1,docked:!1,query:"",onQueryChange:function(){}});const UT=Bg(Gg(RT));var zT=n(60107),$T=n.n(zT);function GT(e){return GT="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},GT(e)}function BT(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,WT(r.key),r)}}function FT(e){return FT=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},FT(e)}function ZT(e,t){return ZT=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},ZT(e,t)}function YT(e,t,n){return(t=WT(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function WT(e){var t=function(e,t){if("object"!==GT(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==GT(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===GT(t)?t:String(t)}var HT=new Yl.Z;function qT(e){return e?"".concat(Hl,".").concat(e):void 0}var QT=function(e){function t(e){var n,r,o,i;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),YT((r=this,i=[e],o=FT(o=t),n=function(e,t){if(t&amp;&amp;("object"===GT(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(r,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(o,i||[],FT(r).constructor):o.apply(r,i))),"state",{isEnabled:!0}),YT(n,"toggleDescription",(function(){var e=qT(n.props.id),t=!n.state.isEnabled;HT.set(e,t),n.setState({isEnabled:t})}));var a=e.$injector;return n.$inject={i18n:a.get("i18n"),hubConfig:a.get("hubConfig")},n}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;ZT(e,t)}(t,e),n=t,r=[{key:"componentDidMount",value:function(){var e=this,t=qT(this.props.id);HT.get(t).then((function(t){null!==t&amp;&amp;e.setState({isEnabled:t})}))}},{key:"render",value:function(){var e=this.$inject,t=e.i18n,n=e.hubConfig.embedded,r=this.props,o=r.title,s=r.description;return i.createElement("div",{className:"hub-header-with-description"},i.createElement("div",{className:"hub-header"},i.createElement(Fl.Z,{className:"hub-header__title"},i.createElement("span",null,o),n&amp;&amp;s&amp;&amp;i.createElement(a.Z,{className:"ring-link hub-header-title__icon",pseudo:!0,onClick:this.toggleDescription,title:this.state.isEnabled?t("Hide description"):t("Show description")},i.createElement(da.ZP,{size:16,glyph:Yf()})))),n&amp;&amp;s&amp;&amp;this.state.isEnabled&amp;&amp;i.createElement("div",{className:"hub-header-description"},s,i.createElement(a.Z,{className:"ring-link hub-header-description__icon",pseudo:!0,onClick:this.toggleDescription,title:t("Hide description")},i.createElement(da.ZP,{size:16,glyph:$T()}))))}}],r&amp;&amp;BT(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.PureComponent);YT(QT,"propTypes",{title:Zg().string.isRequired,description:Zg().object,id:Zg().string,$injector:Zg().object.isRequired});const VT=Bg(Gg(QT));function KT(e){return KT="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},KT(e)}function JT(){JT=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==KT(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function XT(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function eM(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,oM(r.key),r)}}function tM(e){return tM=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},tM(e)}function nM(e,t){return nM=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},nM(e,t)}function rM(e,t,n){return(t=oM(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function oM(e){var t=function(e,t){if("object"!==KT(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==KT(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===KT(t)?t:String(t)}function iM(){var e=arguments.length&gt;1?arguments[1]:void 0,t=(arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:"").split(":"),n=t[0]||e,r="desc"!==t[1];return{key:n,order:r,default:n===e&amp;&amp;r}}var aM=function(e){function t(e){var n,r,o,i;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),rM((r=this,i=[e],o=tM(o=t),n=function(e,t){if(t&amp;&amp;("object"===KT(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(r,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(o,i||[],tM(r).constructor):o.apply(r,i))),"state",{items:[],selection:new bg.Z,sidebarIsOpen:!1,toolbarHeight:"56px"}),rM(n,"onSidebarToggle",(function(e){n.state.sidebarIsOpen!==e&amp;&amp;(n.setState({sidebarIsOpen:e}),n.$inject.hubSidebarStateStorage.store(e))})),rM(n,"onSelect",(function(e){n.props.onSelectionChange({selection:e}),n.setState({selection:e})})),rM(n,"onSort",(function(e){var t=e.column.id,r=e.order,o=n.props,i=o.defaultSortKey,a=o.$scope,s=n.$inject.$route,c=function(e,t,n){return"".concat(e||void 0,":").concat(!1===t?"desc":"asc")}(t,r);if(c!==n.props.orderBy){var l=iM(c,i).default?void 0:c;s.updateParams({sort:l}),a.$applyAsync()}})),rM(n,"shortcuts",{left:function(){return n.setState({sidebarIsOpen:!0})},right:function(){return n.setState({sidebarIsOpen:!1})},enter:function(){}});var a=n.props.$injector,s=a.get("$route"),c=a.get("hubSidebarStateStorage");return n.$inject={$route:s,hubSidebarStateStorage:c,$routeParams:a.get("$routeParams"),i18n:a.get("i18n")},e.$scope.$on("$routeUpdate",(function(t,n){var r=n.params.sort;e.onSort(r)})),e.onSort(s.current.params.sort),n}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;nM(e,t)}(t,e),n=t,r=[{key:"componentWillMount",value:(o=JT().mark((function e(){var t;return JT().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.$inject.hubSidebarStateStorage.read();case 2:t=e.sent,this.setState({sidebarIsOpen:t});case 4:case"end":return e.stop()}}),e,this)})),a=function(){var e=this,t=arguments;return new Promise((function(n,r){var i=o.apply(e,t);function a(e){XT(i,n,r,a,s,"next",e)}function s(e){XT(i,n,r,a,s,"throw",e)}a(void 0)}))},function(){return a.apply(this,arguments)})},{key:"render",value:function(){var e=this.props,t=e.data,n=e.total,r=e.title,o=e.id,a=e.description,s=e.loading,c=e.onQuery,l=e.orderBy,g=e.onRefresh,u=e.columns,d=e.draggable,p=e.onReorder,A=e.selectable,C=e.placeholder,I=e.error,f=e.queryAssistDataSource,m=this.state,h=m.selection,v=m.sidebarIsOpen,b=m.toolbarHeight,y=this.$inject.i18n,w="table__loader".concat(v?" table__loader_moved-left":""),_=Wg()({table__data:!0,"table__data_with-pager":!I}),j=h.getFocused(),x=iM(l),E=x.key,S=x.order;return i.createElement(i.Fragment,null,i.createElement(UT,{queryAssistDataSource:f,placeholder:C,onQueryChange:c}),i.createElement("div",{className:"content ring-clearfix"},i.createElement(VT,{title:r,description:a,id:o}),i.createElement("div",{className:"table__container"},i.createElement(Du,{show:v,placeUnder:".ring-table__toolbar",syncBottom:['[data-test="table-pager"];2','[data-test="ring-footer"];-40'],listenToHeightChange:".app__content",placeTopOffset:1,syncHeight:!0},j?i.createElement(this.props.sidebar,{item:j}):this.props.sidebarEmpty),i.createElement(iu,{sticky:!0,onSidebarToggle:this.onSidebarToggle,sidebarIsOpen:v,height:"56px"},i.createElement(this.props.toolbar,{selection:h,onRefresh:g})),i.createElement(mg.Z,{className:_,data:t,columns:u,onSelectionChange:this.onSelect,draggable:d,stickyHeaderOffset:b,onReorder:p,loading:s,loaderClassName:w,selectable:A,sortKey:E,sortOrder:S,onSort:this.onSort,shortcuts:this.shortcuts}),0===n&amp;&amp;!s&amp;&amp;!I&amp;&amp;i.createElement("div",{className:"search-error"},i.createElement("span",{className:"search-error__title"},y("No matches for your search request were found")),i.createElement("span",{className:"search-error__title search-error__title_small"},y("It may also mean that you have insufficient access permissions"))),I&amp;&amp;i.createElement("div",{className:"search-error"},i.createElement(da.ZP,{glyph:TT(),height:78,width:100,className:"search-error__img"}),i.createElement("span",{className:"search-error__title"},I),i.createElement("span",{className:"search-error__title search-error__title_small"},y("Please check the spelling of your search request and try again"))))))}}],r&amp;&amp;eM(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r,o,a}(i.PureComponent);rM(aM,"propTypes",{data:Zg().array.isRequired,total:Zg().number.isRequired,title:Zg().string,description:Zg().object,id:Zg().string,loading:Zg().bool,query:Zg().string,onQuery:Zg().func,orderBy:Zg().string,defaultSortKey:Zg().string,onSort:Zg().func,onRefresh:Zg().func,error:Zg().string,sidebar:Zg().any.isRequired,sidebarEmpty:Zg().any.isRequired,toolbar:Zg().any.isRequired,columns:Zg().array.isRequired,placeholder:Zg().string,queryAssistDataSource:Zg().func,onSelectionChange:Zg().func,draggable:Zg().bool,onReorder:Zg().func,onToggleDescription:Zg().func,selectable:Zg().bool,$scope:Zg().object.isRequired,$injector:Zg().object.isRequired}),rM(aM,"defaultProps",{loading:!1,onQuery:function(){},onSort:function(){},onRefresh:function(){},onSelectionChange:function(){},queryAssistDataSource:function(){},draggable:!1,onReorder:function(){}});const sM=Bg(Gg(aM));function cM(e){return cM="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},cM(e)}function lM(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,dM(r.key),r)}}function gM(e){return gM=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},gM(e)}function uM(e,t){return uM=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},uM(e,t)}function dM(e){var t=function(e,t){if("object"!==cM(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==cM(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===cM(t)?t:String(t)}var pM=function(e){function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),e=this,r=arguments,n=gM(n=t),function(e,t){if(t&amp;&amp;("object"===cM(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(n,r||[],gM(e).constructor):n.apply(e,r));var e,n,r}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;uM(e,t)}(t,e),n=t,r=[{key:"render",value:function(){var e=this.props,t=e.icon,n=e.children;return i.createElement("div",{className:"ring-sidebar__empty","data-test":"table-sidebar-empty"},i.createElement(da.ZP,{glyph:t,size:da.ZP.Size.Size128,className:"ring-sidebar__empty-icon"}),i.createElement("div",{className:"ring-sidebar__empty-description"},n))}}],r&amp;&amp;lM(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.PureComponent);!function(e,t,n){(t=dM(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(pM,"propTypes",{icon:Zg().string.isRequired,children:Zg().any.isRequired});var AM=n(12602);function CM(e){return CM="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},CM(e)}function IM(e){return function(e){if(Array.isArray(e))return fM(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return fM(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?fM(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function fM(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function mM(){mM=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==CM(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function hM(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function vM(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){hM(i,r,o,a,s,"next",e)}function s(e){hM(i,r,o,a,s,"throw",e)}a(void 0)}))}}function bM(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,jM(r.key),r)}}function yM(e){return yM=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},yM(e)}function wM(e,t){return wM=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},wM(e,t)}function _M(e,t,n){return(t=jM(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function jM(e){var t=function(e,t){if("object"!==CM(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==CM(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===CM(t)?t:String(t)}var xM=function(e){function t(e){var r,o,i,a;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),_M((o=this,a=[e],i=yM(i=t),r=function(e,t){if(t&amp;&amp;("object"===CM(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(o,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(i,a||[],yM(o).constructor):i.apply(o,a))),"state",{permissions:null,isCreateButtonActive:!1,isMergeButtonActive:!1,isDeleteButtonActive:!1}),_M(r,"hasPermission",(function(e){var t=r.state.permissions;return t&amp;&amp;t.has(e)})),_M(r,"onCreate",vM(mM().mark((function e(){var t,o,i,a,s;return mM().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.$inject,o=t.RoleResource,i=t.hubResourceCreate,a=t.i18n,r.setState({isCreateButtonActive:!0}),s={redirectUrl:"/roles/:id",dialogTemplate:n(68374),dialogButtonLabel:a("Create")},e.next=5,i.create(o,s);case 5:r.setState({isCreateButtonActive:!1});case 6:case"end":return e.stop()}}),e)})))),_M(r,"onMerge",vM(mM().mark((function e(){var t,n,o,i,a,s,c,l;return mM().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.props.onRefresh,n=r.$inject,o=n.hubMerge,i=n.i18n,a=n.backendUri,r.setState({isMergeButtonActive:!0}),s=(0,yg.Z)((function(){return r.props.selection})),(c=[]).push(o.getDialogDescription(s,[null,i("The following roles are merged: &lt;b&gt;{{items}}&lt;/b&gt;."),i("The following roles are merged: &lt;b&gt;{{items}}&lt;/b&gt; and &lt;b&gt;{{more}} more&lt;/b&gt;.")])),c.push(i("The permissions that are assigned to each of the merged roles are added to the resulting role.")),l=o.createMerge({title:i("Merge Roles"),description:i("When you perform this action:"),messages:c,mergeButtonLabel:i("Merge"),successMessage:"roles-success-merge",mergeUrl:"".concat(a,"/roles/merge"),order:function(e){var t=[];return e.forEach((function(e){ZM.includes(e.key)?t.unshift(e):t.push(e)})),t},fields:[{name:"name",type:"string",label:i("Name")},{name:"key",type:"string",label:i("Key"),isValueProtected:function(e,t){return ZM.includes(t.key)}},{name:"description",type:"string",label:i("Description"),getValue:function(e){return o.truncateLongValue(e.description)}}]}),e.prev=8,e.next=11,l.confirm(s);case 11:t();case 12:return e.prev=12,r.setState({isMergeButtonActive:!1}),e.finish(12);case 15:case"end":return e.stop()}}),e,null,[[8,,12,15]])})))),_M(r,"onDelete",vM(mM().mark((function e(){var t,n,o,i,a,s,c;return mM().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.props,n=t.selection,o=t.onRefresh,i=IM(n.getActive()),r.setState({isDeleteButtonActive:!0}),a=r.$inject,s=a.hubBulkOperation,c=a.RoleResource,e.prev=4,e.next=7,s.removeWithAlertReporter(i,c,{confirm:"delete-roles?",success:"roles-success-delete",fail:"roles-fail-delete"});case 7:o();case 8:return e.prev=8,r.setState({isDeleteButtonActive:!1}),e.finish(8);case 11:case"end":return e.stop()}}),e,null,[[4,,8,11]])}))));var s=r.props.$injector;return r.$inject={hubBulkOperation:s.get("hubBulkOperation"),RoleResource:s.get("RoleResource"),i18n:s.get("i18n"),userPermissionsLoader:s.get("userPermissionsLoader"),backendUri:s.get("backendUri"),hubMerge:s.get("hubMerge"),hubResourceCreate:s.get("hubResourceCreate")},s.get("userPermissionsLoader").then((function(e){return r.setState({permissions:e})})),r}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;wM(e,t)}(t,e),r=t,o=[{key:"render",value:function(){var e=this.props.selection,t=this.$inject.i18n,n=this.state,r=n.isCreateButtonActive,o=n.isMergeButtonActive,a=n.isDeleteButtonActive,s=IM(e.getActive());return i.createElement(AM.Z,null,this.hasPermission("role-manage")&amp;&amp;i.createElement(bi.ZP,{"data-test":"create-button create-role-button",primary:!0,delayed:!0,active:r,onClick:this.onCreate,height:w.oW.S},t("New role")),this.hasPermission("role-manage")&amp;&amp;s.length&gt;1&amp;&amp;s.filter((function(e){return ZM.includes(e.key)})).length&lt;2&amp;&amp;s.every((function(e){return!e.immutable}))&amp;&amp;i.createElement(bi.ZP,{"data-test":"merge-button",delayed:!0,title:t("Merge selected roles"),active:o,onClick:this.onMerge,height:w.oW.S},t("Merge")),this.hasPermission("role-manage")&amp;&amp;s.length&gt;0&amp;&amp;s.some((function(e){return!ZM.includes(e.key)}))&amp;&amp;s.every((function(e){return!e.immutable}))&amp;&amp;i.createElement(bi.ZP,{"data-test":"delete-button",danger:!0,title:t("Delete selected roles"),onClick:this.onDelete,active:a,height:w.oW.S},t("Delete")))}}],o&amp;&amp;bM(r.prototype,o),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,o}(i.Component);_M(xM,"propTypes",{selection:Zg().instanceOf(bg.Z).isRequired,onRefresh:Zg().func.isRequired,$injector:Zg().object.isRequired}),_M(xM,"defaultProps",{selection:new bg.Z([]),onRefresh:function(){}});const EM=Gg(xM);var SM=n(54679),TM=n.n(SM);function MM(e){return MM="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},MM(e)}function LM(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,NM(r.key),r)}}function kM(e){return kM=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},kM(e)}function OM(e,t){return OM=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},OM(e,t)}function PM(e,t,n){return(t=NM(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function NM(e){var t=function(e,t){if("object"!==MM(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==MM(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===MM(t)?t:String(t)}var DM=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return PM(e=function(e,t,n){return t=kM(t),function(e,t){if(t&amp;&amp;("object"===MM(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],kM(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"getLocalisedPermission",(function(t){return e.props.$injector.get("HubPermissionMessages").msg(t)||t})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;OM(e,t)}(t,e),n=t,r=[{key:"render",value:function(){var e=this,t=this.props,n=t.item,r=t.$injector.get("hubI18nPlural");return i.createElement(i.Fragment,null,i.createElement("h2",{className:"ring-sidebar__title"},i.createElement("a",{className:"ring-link",href:"roles/".concat(CC(n.key,n.id))},n.key),": ",i.createElement("a",{className:"ring-link",href:"roles/".concat(CC(n.key,n.id))},n.name)),n.description&amp;&amp;i.createElement("div",{className:"ring-sidebar__section"},i.createElement("div",{className:"ring-sidebar__section-text"},n.description)),n.permissions&amp;&amp;i.createElement("div",{className:"ring-sidebar__section"},i.createElement(da.ZP,{glyph:TM(),size:da.ZP.Size.Size14,className:"ring-sidebar__section-icon"}),i.createElement("span",{className:"ring-sidebar__section-title"},r.format("permissions-total-title",n.permissions.length)),i.createElement("div",{className:"ring-sidebar__section-text"},n.permissions.map((function(t){return e.getLocalisedPermission(t).name})).join(", "))))}}],r&amp;&amp;LM(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.PureComponent);PM(DM,"propTypes",{item:Zg().any.isRequired,$injector:Zg().object.isRequired});const RM=Gg(DM);function UM(e){return UM="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},UM(e)}function zM(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,FM(r.key),r)}}function $M(e){return $M=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},$M(e)}function GM(e,t){return GM=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},GM(e,t)}function BM(e,t,n){return(t=FM(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function FM(e){var t=function(e,t){if("object"!==UM(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==UM(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===UM(t)?t:String(t)}var ZM=["contributor","project-admin"],YM=function(e){function t(e){var n,r,o,s;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),BM((r=this,s=[e],o=$M(o=t),n=function(e,t){if(t&amp;&amp;("object"===UM(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(r,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(o,s||[],$M(r).constructor):o.apply(r,s))),"state",{permissions:null,columns:[]}),BM(n,"hasPermission",(function(e){var t=n.state.permissions;return t&amp;&amp;t.has(e)})),BM(n,"getValueOfName",(function(e,t){return i.createElement(YI.Z,null,i.createElement(a.Z,{href:"roles/".concat(CC(e.key,e.id))},e.name),i.createElement(vi.Z,{info:!0,className:"hub-table__description"},e.description),e.immutable&amp;&amp;i.createElement(io.Z,null,t("read-only")))})),BM(n,"queryAssistDataSource",(function(){for(var e,t=arguments.length,r=new Array(t),o=0;o&lt;t;o++)r[o]=arguments[o];return(e=n.props.datasource).getQueryAssistSuggestions.apply(e,["roles"].concat(r))}));var c=n.props.$injector,l=c.get("i18n"),g=c.get("getHubHelpUrlFilter"),u=c.get("hubI18nPlural"),d=c.get("hubHelpInterface"),p=c.get("HubErrorMessageBundle");return n.$inject={i18n:l,getHubHelpUrl:g,hubI18nPlural:u,hubHelp:d,HubErrorMessageBundle:p},n.state.columns=[{id:"name",title:l("Name"),sortable:!0,className:"column-with-gray-dots",getValue:function(e){return n.getValueOfName(e,l)}},{id:"key",title:l("Key"),sortable:!0},{id:"permissions",title:l("Permissions"),rightAlign:!0,getValue:function(e){return e.permissions&amp;&amp;e.permissions.length}},{id:"spacer",title:""}],n.setPageHelp(),c.get("userPermissionsLoader").then((function(e){return n.setState({permissions:e})})),n}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;GM(e,t)}(t,e),n=t,r=[{key:"componentDidMount",value:function(){this.props.onComponentDidMount()}},{key:"setPageHelp",value:function(){var e=this.$inject,t=e.hubHelp,n=(0,e.i18n)("\n&lt;p translate&gt;A role is a set of permissions to perform particular operations in Hub or a connected service.\n      A role is granted to a group or directly to a user account. All roles are granted to a user or group within a Hub project.&lt;br&gt;\n      To view the set of permissions that are assigned to the selected role, click the &lt;b&gt;Details&lt;/b&gt; button.\n      To view and configure the role, click the name of the role in the list.&lt;/p&gt;");t.setPageHelpHtml(n,"Managing-Roles.html")}},{key:"render",value:function(){var e=this.$inject,t=e.i18n,n=e.getHubHelpUrl,r=e.hubI18nPlural,o=e.HubErrorMessageBundle,a=this.props,s=a.items,c=a.total,l=a.loading,g=a.onApplyQuery,u=a.orderBy,d=a.defaultSortKey,p=a.onSort,A=a.onRefresh,C=this.state.columns,I=r.format("roles-total-title",s.length),f=t("A role is a set of permissions to perform particular operations in YouTrack. A role can be granted to a project team, a group, or directly to a user account. Roles are granted within the scope of a project. To view the set of permissions that are assigned to the selected role, click the &lt;strong&gt;Details&lt;/strong&gt; button. To view and configure the role, click the name of the role in the list."),m=t('&lt;a href="{{link}}" class="ring-link" target="_blank"&gt;Learn more â†’&lt;/a&gt;',{link:n("Managing-Roles.html")}),h=i.createElement("span",{dangerouslySetInnerHTML:{__html:"".concat(f," ").concat(m)}}),v=t("Filter roles"),b=this.props.error?o.msg(this.props.error,"query"):null,y=i.createElement(pM,{icon:ET()},t("Select a role to see details"));return i.createElement(sM,{columns:C,data:s,total:c,title:I,id:"roles-notes",description:h,loading:l,onQuery:g,orderBy:u,onSort:p,onRefresh:A,sidebar:RM,sidebarEmpty:y,toolbar:EM,defaultSortKey:d,queryAssistDataSource:this.queryAssistDataSource,placeholder:v,error:b,selectable:this.hasPermission("role-manage")})}}],r&amp;&amp;zM(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.PureComponent);BM(YM,"propTypes",{items:Zg().array.isRequired,total:Zg().number.isRequired,loading:Zg().bool.isRequired,query:Zg().string,orderBy:Zg().string,defaultSortKey:Zg().string,error:Zg().object,onComponentDidMount:Zg().func.isRequired,onApplyQuery:Zg().func.isRequired,onSort:Zg().func.isRequired,onRefresh:Zg().func.isRequired,datasource:Zg().object.isRequired,$injector:Zg().object.isRequired});var WM=Gg(YM);const HM=(0,X_.$j)((function(e){return{items:JS(e),total:XS(e),loading:rT(e),query:eT(e),orderBy:tT(e),defaultSortKey:nT(e),error:oT(e)}}),(function(e){return{onComponentDidMount:function(){e(YS())},onApplyQuery:function(){e(function(e){return function(){var t=$S(US().mark((function t(n){return US().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,n(WS(e));case 2:n(YS());case 3:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()}(arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:""))},onSort:function(t){e(function(e){return function(){var t=$S(US().mark((function t(n){return US().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,n(HS(e));case 2:n(YS());case 3:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()}(t))},onRefresh:function(){e(YS())}}}))(WM);function qM(e){return qM="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},qM(e)}function QM(e){return QM=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},QM(e)}function VM(e,t){return VM=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},VM(e,t)}function KM(e,t,n){return(t=JM(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function JM(e){var t=function(e,t){if("object"!==qM(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==qM(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===qM(t)?t:String(t)}var XM=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return KM(e=function(e,t,n){return t=QM(t),function(e,t){if(t&amp;&amp;("object"===qM(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],QM(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"$onInit",(function(){var t=e.$inject,n=t.$element,r=t.auth;e.root=(0,Ei.s)(n[0]),e.datasource=new mA(r.auth),AT(e.datasource),e.renderComponent()})),KM(e,"$onDestroy",(function(){e.root.unmount()})),KM(e,"renderComponent",(function(){var t=e.$inject,n=t.$injector,r=t.$scope,o=t.i18n;e.root.render(i.createElement(X_.zt,{store:pT},i.createElement(zg.Provider,{value:n},i.createElement($g.Provider,{value:r},i.createElement(jT,{i18n:o},i.createElement(HM,{datasource:e.datasource}))))))})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;VM(e,t)}(t,e),n=t,Object.defineProperty(n,"prototype",{writable:!1}),n;var n}(p);KM(XM,"$inject",["$element","$injector","$scope","auth","i18n"]);var eL=angular.module("HUB.role-list",[]);eL.component("roleList",XM);const tL=eL.name;var nL=n(94188),rL=angular.module("HUB.role-page.permissions.reset",[]);rL.controller("RolePermissionResetCtrl",["$element","$route","dialog","i18n","RoleResetResource","$q","hubNotify","$scope","hubConfig",function(e,t,r,o,i,a,s,c,l){var g,u=this,d=e.controller("rolePermission");u.role=d.role,u.services=[],u.resetToDefault=function(){var e={label:o("Confirm"),default:!0,close:!0,action:function(e){if(l.embedded)return u.resetServices([]);var t=1===e.services.length?e.services:e.services.filter((function(e){return e.checked}));return t.length?u.resetServices(t):void 0}};u.services=angular.copy(d.view.services);var t=r.show({title:o("Restore default permissions for {{roleName}}?",{roleName:u.role.name}),template:n(68021),cssClass:"ring-form_rows",data:{services:u.services,embedded:l.embedded,roleName:u.role.name},buttons:[e,{label:o("Cancel")}]});return g=r.ctrl.dialogForm,1===u.services.length||l.embedded?g.$setValidity("chooseSmth",!0):g.$setValidity("chooseSmth",!1),t},u.resetServices=function(e){var n=[];return e.length?e.forEach((function(e){n.push(u.resetService(e))})):n.push(u.resetService({})),a.all(n).then(s.successHandler(o("Default permissions restored for the {{roleName}} role",{roleName:u.role.name})),s.errorHandler("reset-permissions")).finally((function(){t.reload()}))},u.resetService=function(e){return i.reset({id:u.role.id},e&amp;&amp;{id:e.id}).$promise},c.$watch((function(){return u.services.filter((function(e){return e.checked})).length}),(function(e){g&amp;&amp;(e?g.$setValidity("chooseSmth",!0):g.$setValidity("chooseSmth",!1))}))}]);const oL=rL.name;var iL=angular.module("HUB.role-page.permissions",[oL,Ep]);iL.controller("RolePermissionToolbarCtrl",["$element",function(e){this.view=e.controller("rolePermission").view}]),iL.directive("rolePermission",(function(){return{controller:"RolePermissionCtrl as ctrl"}})),iL.controller("RolePermissionCtrl",["$scope","hubNotify","RolePermissionResource","i18n","$location","$routeParams","HubPermissionMessages","HubEntities","HubOperations","ServiceResource","$document","$timeout","$q","hubConfig",function(e,t,r,o,a,s,c,l,g,u,d,p,A,C){e.toolbarTemplate=n(38287),e.rightToolbarTemplate=n(41584),e.sidebarTemplate=n(71260),e.emptyTemplate=n(60374),e.isEmbeddedHub=C.embedded;var I=this;I.loading=!0,I.role=e.role,I.rolePermissions=[],I.applications=[],I.columns=[];var f=I.view={items:[],services:[],apps:[],app:"",groups:[{id:"entityType",name:o("Entity")},{id:"operation",name:o("Operation")}],group:"",filter:"",total:0};function m(e,t){var n=e.map((function(e){return{id:e.id,name:e.name,homeUrl:e.homeUrl,permissionsNumber:0}}));return n.forEach((function(e){e.permissionsNumber=t.filter((function(t){var n=t.services&amp;&amp;t.services[e.id];return n&amp;&amp;n.granted})).length})),n}function h(e,t){var n=e.slice();n.sort((function(e,n){var r=e[t]||"",o=e.name,i=n[t]||"",a=n.name;return r&lt;i?-1:r&gt;i?1:o&lt;a?-1:o&gt;a?1:0}));for(var r=0;r&lt;n.length;r++){var o=n[r],i=o[t];if(i&amp;&amp;(o.leaf=!0,o.grouped=!0,0===r||i!==n[r-1][t])){var a={id:"group".concat(o.id),name:i,leaf:!1,grouped:!0};a[t]=i,n.splice(r,0,a)}}return n}function v(t){if(t){var n=[];if(!0===e.isEmbeddedHub)for(var r=0,o=Object.values(I.applications);r&lt;o.length;r++){var i=o[r];n=n.concat(i.permissions)}else n=I.applications[f.app].permissions;f.items=h(n,t.id),f.total=n.length}}function b(t){if(t){a.replace(),a.search("app",t);var n=I.applications[t],r=[],s=[];if(!0===e.isEmbeddedHub)for(var c=0,l=Object.values(I.applications);c&lt;l.length;c++){var g=l[c];r=r.concat(g.permissions),s=s.concat(g.services)}else r=n.permissions,s=n.services;var u=f.group||f.groups[0],d=h(r,u.id);if(f.services=m(s,r),f.group=u,f.items=d,f.total=r.length,I.columns=[{id:"name",title:i.createElement("span",null,o("Permissions")," ",i.createElement("span",{className:"role-page__permissions__super"},f.total)),getValue:function(e){return!e.leaf&amp;&amp;e.grouped?i.createElement("strong",null,e.name):i.createElement("span",{style:{marginLeft:"8px"}},e.name,e.global&amp;&amp;i.createElement(io.Z,{className:"hub-badge"},o("global")))}}],!0===e.isEmbeddedHub){var p=f.services.reduce((function(e,t){return e+t.permissionsNumber}),0);I.columns.push({id:"enabled",title:i.createElement("span",null,o("Enabled")," ",i.createElement("span",{className:"role-page__permissions__super"},p)),getValue:function(t){var n="";if(f.services.forEach((function(e){t.services&amp;&amp;t.services[e.id]&amp;&amp;(n=e.id)})),n)return i.createElement("span",null,i.createElement(nL.Z,{checked:t.services[n].granted,onChange:function(){return I.togglePermission(t,n)},disabled:!e.canUpdateRole}),t.services[n].changed&amp;&amp;i.createElement(io.Z,null,o("changed")))}})}else f.services.forEach((function(t){I.columns.push({id:t.id,title:i.createElement("span",null,i.createElement("span",{className:"role-page__permissions__service-name"},t.name),i.createElement("span",{className:"role-page__permissions__super"},t.permissionsNumber)),getValue:function(n){return n.services&amp;&amp;n.services[t.id]?i.createElement("span",null,i.createElement(nL.Z,{checked:n.services[t.id].granted,onChange:function(){return I.togglePermission(n,t.id)},disabled:!e.canUpdateRole}),n.services[t.id].changed&amp;&amp;i.createElement(io.Z,null,o("changed"))):null}})}));v(f.group)}}e.$watch("ctrl.view.app",b),e.$watch("ctrl.view.group",v),e.$watch("ctrl.view.filter",(function(t,n){if(t!==n){var r=[];if(!0===e.isEmbeddedHub)for(var o=0,i=Object.values(I.applications);o&lt;i.length;o++){var a=i[o];r=r.concat(a.permissions)}else r=I.applications[f.app].permissions;r=r.filter((function(e){var n=e.name;return new RegExp(t,"i").test(n)})),f.items=h(r,f.group.id),f.total=r.length}}));var y=function(){return I.services?A.resolve():u.query({$top:-1,query:"has:permission",fields:"id,name,applicationName,homeUrl,permissions(id,key,name,description,global,entityType,operation,impliedPermissions(id,name),dependentPermissions(id,name)),defaultRoles(key,permissions(id,name))"}).$promise.then((function(e){I.services=e.services||[]}))},w=function(){},_=function(){I.loading=!0,p.cancel(w),w=p((function(){I.showLoader=!0}),500)},j=function(){I.loading=!1,I.showLoader=!1,p.cancel(w)},x=function(){if(I.services&amp;&amp;I.services.length){var t=angular.copy(I.services),n=t.map((function(e){return e.applicationName=e.applicationName||e.name,e.applicationName})).filter((function(e,t,n){return n.indexOf(e)===t})).sort(),r=I.rolePermissions.map((function(e){return e.id})),o={};n.forEach((function(n){var i=t.filter((function(e){return e.applicationName===n})),a=[];i.forEach((function(t){a=a.concat(t.permissions);var n=(t.defaultRoles||[]).filter((function(n){return function(t,n){return!!t.permissions&amp;&amp;(t.key===e.role.key||t.key.replace("".concat(n.applicationName.toLowerCase(),"-"),"")===e.role.key)}(n,t)}));n.length&amp;&amp;(n=n[0].permissions.map((function(e){return e.id}))),t.defaultPermissions=n})),a=a.filter((function(e,t){var n,r=a.length;for(n=0;n&lt;r&amp;&amp;a[n].name!==e.name;n++);return t===n})),a.forEach((function(e){e.services={},e.ids=[],e.idsSource=[],e.keys=[],i.forEach((function(t){var n=t.permissions.filter((function(t){return t.name===e.name}))[0];if(n){var o,i=n.id,a=-1!==r.indexOf(i);t.defaultPermissions.length&amp;&amp;(o=-1!==t.defaultPermissions.indexOf(i)),-1===e.ids.indexOf(i)&amp;&amp;(e.ids.push(i),e.idsSource.push(t.name)),-1===e.keys.indexOf(n.key)&amp;&amp;e.keys.push(n.key),e.services[t.id]={id:i,granted:a,_default:o,changed:void 0!==o&amp;&amp;o!==a}}}));var t=c.msg(e.key);t&amp;&amp;(e.name=t.name,e.description=t.description),e.id="permission".concat(e.ids.toString()),Reflect.deleteProperty(e,"key")})),a.forEach((function(e){e.operation=g.msg(e.operation),-1!==n.indexOf("Hub")&amp;&amp;(e.entityType=l.msg(e.entityType))})),o[n]={services:i,permissions:a}}));var i=s.app;-1===n.indexOf(i)&amp;&amp;(i=n[0]),I.applications=o,I.view.apps=n,I.view.app=i,b(I.view.app)}},E=function(n){return function(n){return r.get({$top:-1,id:e.role.id}).$promise.then((function(e){if(n){var r=function(e,t){return e.filter((function(e){return-1===t.findIndex((function(t){return t.id===e.id}))}))},i=r(I.rolePermissions,e.permissions),a=r(e.permissions,I.rolePermissions);i.forEach((function(e){t.success(o("{{name}} permission removed",e))})),a.forEach((function(e){t.success(o("{{name}} permission added",e))}))}I.rolePermissions=e.permissions}))}(n).then(y).then(x).then(j)};function S(){d.find("hub-table").controller("hubTable").rerender()}e.$watch("role",(function(e){e&amp;&amp;(_(),E())})),I.loadingPermissions={},I.togglePermission=function(e,n){if(!I.loading){var o=e.services[n],i=o.id,a=o.granted=!o.granted,s=I.applications[f.app].services;if(l(),!I.loadingPermissions[i]){var c=a?"save":"remove";return I.loadingPermissions[i]=!0,_(),o.changed=void 0!==o._default&amp;&amp;o._default!==a,S(),r[c]({id:I.role.id,subId:a?null:i},{id:i}).$promise.then((function(){Reflect.deleteProperty(I.loadingPermissions,i)}),("add-permissions",function(e){t.errorHandler("add-permissions")(e),Reflect.deleteProperty(I.loadingPermissions,i),o.granted=!o.granted,l(),S()})).then((function(){return E(!0)}))}}function l(){f.services=m(s,f.items)}},I.selectApplication=function(e){I.view.filter="",I.view.app=e}}]);const aL=iL.name;function sL(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var cL=angular.module("HUB.role-page",[aL]);cL.controller("RoleCtrl",["$scope","$routeParams","$location","RoleResource","pageTitle","userPermissions","dialog","i18n","hubNotify","getWithQuery","$q",function(e,t,r,o,i,a,s,c,l,g,u){e.generalTemplate=n(3232),e.permissionsTemplate=n(35931);var d=mC(t.id);d&amp;&amp;(e.role=g(o,"roles",{query:"id:{".concat(d,"} or key:{").concat(d,"}"),fields:"id,key,name,description,permissions/id,immutable"},(function(t){e.role.isProtectedRole=-1!==ZM.indexOf(t.key)})),i.addElement(e.role),u.all([a.check("jetbrains.jetpass.role-manage"),e.role.$promise]).then((function(t){var n=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return sL(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?sL(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(t,2),r=n[0],o=n[1];e.canUpdateRole=r&amp;&amp;!o.immutable})),this.clone=function(){var t=e.role.name,i={type:"role",name:"".concat(e.role.name," Clone"),key:"".concat(e.role.key,"-clone"),isProtectedRole:e.role.isProtectedRole,permissions:e.role.permissions};return s.show({template:n(1703),data:i,buttons:[{label:c("Clone"),default:!0,close:!0,action:function(e){return o.save(e).$promise.then((function(e){r.path("roles/".concat(e.id)),l.success(c('Role "{{ name }}" was successfully cloned',{name:t}))}))}},{label:c("Cancel")}]})})}]);const lL=cL.name;n(92087);var gL=n(56232),uL=n.n(gL),dL=angular.module("HUB.directives.ldap-url",[]),pL=/^(ftp|http|https|ldap|ldaps):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&amp;%@!\-\/]))?$/;dL.directive("ldapUrl",(function(){return{require:"ngModel",link:function(e,t,n,r){r.$validators.url=function(e){return pL.test(e)}}}}));const AL=dL.name;var CL=angular.module("HUB.authmodule-list.sidebar",[]);CL.controller("AuthModulesSidebarCtrl",["$scope","AuthModuleAutoJoinGroupResource","userPermissions",function(e,t,n){n.bindVariable(this,"canRemoveGroup","low-level"),this.removeGroup=function(e,n){return t.remove({id:e.id,subId:n.id}).$promise},this.groupHref=function(e){return"groups/".concat(CC(e.name,e.id))}}]);const IL=CL.name;function fL(e){return fL="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},fL(e)}function mL(e){return function(e){if(Array.isArray(e))return hL(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return hL(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?hL(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function hL(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function vL(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function bL(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?vL(Object(n),!0).forEach((function(t){yL(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):vL(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function yL(e,t,n){return t=function(e){var t=function(e,t){if("object"!==fL(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==fL(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===fL(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function wL(){wL=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==fL(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function _L(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}var jL=angular.module("HUB.authmodule-list",[uL(),IL,AL,_w]);jL.factory("AuthModulesI18N",["hubPluralMessageWrapper","gettextCatalog",function(e,t){return{disable:{success:e((function(e,n){return t.getPlural(e,"{{ count }} auth module was disabled","{{ count }} auth modules were disabled",n)}),(function(e){return t.getString("{{ name }} auth module was disabled",e)})),fail:e((function(e,n){return t.getPlural(e,"{{ count }} auth module wasn't disabled","{{ count }} auth modules weren't disabled",n)}),(function(e){return t.getString("{{ name }} auth module wasn't disabled",e)}))},enable:{success:e((function(e,n){return t.getPlural(e,"{{ count }} auth module was enabled","{{ count }} auth modules were enabled",n)}),(function(e){return t.getString("{{ name }} auth module was enabled",e)})),fail:e((function(e,n){return t.getPlural(e,"{{ count }} auth module wasn't enabled","{{ count }} auth modules weren't enabled",n)}),(function(e){return t.getString("{{ name }} auth module wasn't enabled",e)}))}}}]),jL.controller("AuthModulesCtrl",["$scope","AuthModuleResource","hubNotify","i18n","$rootScope","authModule",function(e,t,r,o,s,c){this.toolbarTemplate=n(22541),this.rightToolbarTemplate=n(69160),this.sidebarTemplate=n(56304),this.columns=[{id:"name",title:o("Name"),getValue:function(e){return i.createElement(a.Z,{href:"authmodules/".concat(CC(e.name,e.id)),title:e.name},e.name)}},{id:"state",title:"",getValue:function(e){return i.createElement(io.Z,{valid:!e.disabled,invalid:e.disabled},e.disabled?o("disabled",null,"Auth modules list"):o("enabled",null,"Auth modules list"))}},{id:"type",title:o("Type"),getValue:c.getModuleTypeName},{id:"account",title:o("Accounts"),rightAlign:!0,getValue:function(e){return i.createElement("span",null,e.accountsSize?i.createElement(a.Z,{href:"users?query=authMethod:%20%7B".concat(e.name,"%7D"),title:e.name},e.accountsSize):i.createElement("span",null,e.accountsSize))}},{id:"spacer"}],this.onReorder=function(){var n,i=(n=wL().mark((function n(i,a,c){var l;return wL().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(l=i[c],c!==a){n.next=3;break}return n.abrupt("return");case 3:return e.data.items=i,n.prev=4,n.next=7,t.save({id:l.id},{ordinal:c&gt;a?c+1:c,type:l.type});case 7:r.success(o("Auth modules order updated")),n.next=13;break;case 10:n.prev=10,n.t0=n.catch(4),r.error("order-authmodules");case 13:return n.prev=13,s.$emit("hubResourceQueryDataSearch"),n.finish(13);case 16:case"end":return n.stop()}}),n,null,[[4,10,13,16]])})),function(){var e=this,t=arguments;return new Promise((function(r,o){var i=n.apply(e,t);function a(e){_L(i,r,o,a,s,"next",e)}function s(e){_L(i,r,o,a,s,"throw",e)}a(void 0)}))});return function(e,t,n){return i.apply(this,arguments)}}()}]),jL.controller("AuthModulesToolbarCtrl",["$scope","$element","hubNotify","hubBulkOperation","AuthModulesI18N","AuthModuleResource","AuthModuleAutoJoinGroupResource","authModule","hubResourceCreate","i18n","$q","feature",function(e,t,n,r,o,i,a,s,c,l,g,u){var d=this,p=t.controller("hubResource"),A=t.controller("hubTable"),C={social:l("Social"),enterprise:l("Enterprise")},I={general:["CoreauthmoduleJSON","JbaauthmoduleJSON","JbaoauthauthmoduleJSON"],social:["GithubauthmoduleJSON","GoogleauthmoduleJSON","Oauth2authmoduleJSON:Facebook","Oauth2authmoduleJSON:GitLab","Oauth2authmoduleJSON:Bitbucket","Oauth2authmoduleJSON:Live","Oauth2authmoduleJSON:Yandex","Oauth2authmoduleJSON:Amazon","Oauth2authmoduleJSON:Paypal"],enterprise:["AzureauthmoduleJSON","OktaAuthmoduleJSON:Okta","Oauth2authmoduleJSON:Keycloak","LdapauthmoduleJSON:ActiveDirectory","LdapauthmoduleJSON:OpenLDAP","LdapauthmoduleJSON","Oauth2authmoduleJSON","OpenidauthmoduleJSON","JiraauthmoduleJSON","SamlAuthModuleJSON"]};d.selectConfig={maxHeight:500},d.getModuleOptions=function(){return g.all(s.moduleCreateOptions.map((function(e){return g.all({flags:u(["jetbrains.hub.github.single"])}).then((function(t){var n,r=t.flags[0];return"JbaauthmoduleJSON"===e.item.type||!(!r&amp;&amp;"GithubauthmoduleJSON"===e.item.type)&amp;&amp;!!e.existsQuery&amp;&amp;(n=e.existsQuery,i.query({query:n,$top:1,fields:"id"}).$promise.then((function(e){return e&amp;&amp;e.authmodules&amp;&amp;e.authmodules.length}),(function(){return!0})))})).then((function(t){return{visible:!t,option:e}}))}))).then((function(t){var r={general:[],social:[],enterprise:[]};return t.filter((function(e){return e.visible})).map((function(e){return e.option})).map((function(t){var o=function(e){var t=function(e){var t=e.item;return"".concat(t.type).concat(t.predefinedType?":".concat(t.predefinedType):"")}(e);for(var n in I)if(I.hasOwnProperty(n)){var r=I[n].indexOf(t);if(-1!==r)return{groupName:n,position:r}}return console.error(t,"is not in the any group of auth modules"),null}(t),a=o.groupName,s=o.position,g=l("New Module");t.item.title?g=t.item.title(l):t.title&amp;&amp;(g=t.title(l)),a&amp;&amp;r[a].push({position:s,key:t.name,label:t.name(l)+(t.template?"...":""),onClick:function(){!function(t){d.loading=!0,c.create(i,{item:t.item,redirectUrl:"/authmodules/:id",dialogData:t.data||{},dialogTemplate:t.template,dialogButtonLabel:l("Create"),onCreate:function(){return n.success(l("Auth module created"))},onDialogShow:function(){return e.loading=!1}}).then((function(){d.loading=!1}))}(bL(bL({},t),{},{item:bL(bL({},t.item),{},{title:g,name:t.item.name&amp;&amp;t.item.name(l)})}))}})})),function(e){var t=[];for(var n in e)if(e.hasOwnProperty(n)){var r=e[n];r.sort((function(e,t){return e.position&gt;t.position})),r.length&amp;&amp;(C[n]&amp;&amp;t.push({key:"separator".concat(n),rgItemType:Mp.Z.ListProps.Type.SEPARATOR,description:C[n]}),t=t.concat(r))}return t}(r)}))},d.isAnySelected=function(){return A.selection.getActive().size&gt;0},d.isDisableVisible=function(e){var t=mL(A.selection.getActive());return t.length&lt;=0?e:t.some((function(t){return t.disabled!==e}))},d.setDisabled=function(e){var t=mL(A.selection.getActive());return r.withAlertReporter(t,(function(t){return i.save({id:t.id},{type:t.type,disabled:e},(function(){return A.rerenderItem(t,{disabled:e})})).$promise}),e?o.disable:o.enable)},d.isDeleteEnabled=function(){var e=mL(A.selection.getActive());return!(e.length&lt;=0||e.some((function(e){return!s.isModuleDeletable(e)})))},d.remove=function(){var e=mL(A.selection.getActive());return r.removeWithAlertReporter(e,i,{confirm:"delete-authmodules?",success:"authmodules-success-delete"},p.refresh)}}]);const xL=jL.name;var EL=angular.module("HUB.keystore-list.create",[]);EL.controller("KeyStoreCreateCtrl",["$q","dialog","i18n","KeyStoreResource","$location","HubErrorMessageBundle",function(e,t,r,o,i,a){var s,c=window.File&amp;&amp;window.FileReader;this.showImportDialog=function(){var l={label:r("Import"),default:!0,close:!1,action:function(n){return c&amp;&amp;s&amp;&amp;(n.item.data.bytes=s),function(t){return o.save({fields:"id"},t).$promise.then((function(e){return i.path("keystores/".concat(e.id)),e}),(function(t){return e.reject(a.msg(t,"create-resource"))}))}(n.item).then((function(){return t.reset()}))}};return t.show({template:n(7340),data:{fileApi:c,fileChanged:function(e){if(s=null,e.files&amp;&amp;e.files.length){var t=e.files[0],n=new FileReader;n.onload=function(e){if(e.target.result&amp;&amp;e.target.result.length){var t=e.target.result.split(",");2===t.length&amp;&amp;(s=t[1])}},n.readAsDataURL(t)}}},buttons:[l,{label:r("Cancel")}]})}}]);const SL=EL.name;function TL(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var ML=angular.module("HUB.keystore-list",[SL,_w]);ML.controller("KeyStoresCtrl",["i18n","dateFilter",function(e,t){this.toolbarTemplate=n(93670),this.sidebarTemplate=n(23122),this.columns=[{id:"name",title:e("Name"),getValue:function(e){return i.createElement(a.Z,{href:"keystores/".concat(CC(e.name,e.id)),title:e.name},e.name)}},{id:"validFrom",title:e("Valid from"),getValue:function(e){return t(e.certificate.validFrom,"medium")}},{id:"validTo",title:e("Valid to"),getValue:function(e){return t(e.certificate.validTo,"medium")}},{id:"issuedTo",title:e("Issued to"),getValue:function(e){return e.certificate.issuedTo}}]}]),ML.controller("KeyStoresToolbarCtrl",["$element","KeyStoreResource","hubBulkOperation",function(e,t,n){var r=e.controller("hubResource"),o=e.controller("hubTable");this.isAnySelected=function(){return o.selection.getActive().size&gt;0},this.remove=function(){var e=function(e){return function(e){if(Array.isArray(e))return TL(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return TL(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?TL(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(o.selection.getActive());return n.removeWithAlertReporter(e,t,{confirm:"delete-stores?",success:"stores-success-delete"},r.refresh)}}]),ML.factory("KeyStoreResource",["backend",function(e){return e.createResource("keystores",null,null,"name")}]);const LL=ML.name;var kL=angular.module("HUB.directives.ssl-key-picker",[LL]);kL.directive("sslKeyPicker",["SelectOptionsResource",function(e){return{restrict:"E",scope:{item:"=",disabled:"="},template:n(67681),transclude:!0,controller:["$scope","i18n",function(t,n){t.stores=e.sslKeys(),t.emptyKey=e.emptySSLKey(),t.change=function(n){n.id||(t.item.keyStore=e.emptySSLKey())},t.selectConfig={filter:{placeholder:n("Filter items")}}}]}}]);const OL=kL.name;function PL(e){return function(e){if(Array.isArray(e))return DL(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||NL(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function NL(e,t){if(e){if("string"==typeof e)return DL(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?DL(e,t):void 0}}function DL(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var RL=angular.module("HUB.components.groups-picker",[zm]);RL.component("groupsPicker",{template:n(53702),transclude:{description:"?description"},bindings:{label:"@?",placeholder:"@?",model:"=",disabled:"&lt;?",bold:"&lt;?",includeTeams:"&lt;?"},controller:["$scope","SelectOptionsResource","i18n","gettextCatalog",function(e,t,n,r){var o=this;this.tags=[];var i=t.groupsDatasourceFactory((function(e){var t=e.query,n=void 0===t?"":t,r=o.tags.length?"not id: ".concat(o.tags.map((function(e){return e.key})).join(",")):"";return"".concat(n," ").concat(n&amp;&amp;r?" and ":""," ").concat(r)})),a=t.teamsDatasourceFactory((function(e){var t=e.query;return Vd(void 0===t?"":t,"not is: global",o.tags.length?"not id: ".concat(o.tags.map((function(e){return e.key})).join(",")):"")})),s=function(e){var t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:e.type;return{key:e.id,label:e.name,description:r.getPlural(e.userCount,"{{ count }} user","{{ count }} users",{count:e.userCount}),type:t}};this.includeTeams?this.datasource=function(e){return Promise.all([i(e),a(e)]).then((function(e){var t=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||NL(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(e,2),r=t[0],o=t[1];return[].concat(PL(function(e){return e.length?[{rgItemType:Mp.Z.ListProps.Type.SEPARATOR,key:"group-section-title",description:n("Groups")}]:[]}(r)),PL(r.map((function(e){return s(e,"userGroup")}))),PL(function(e){return e.length?[{rgItemType:Mp.Z.ListProps.Type.SEPARATOR,key:"teams-section-title",description:n("Teams")}]:[]}(o)),PL(o.map((function(e){return s(e,"projectTeam")}))))}))}:this.datasource=function(e){return i(e).then((function(e){return e.map((function(e){return s(e)}))}))},e.$watch("$ctrl.model",(function(){o.tags=[],o.model&amp;&amp;o.model.forEach((function(e){return o.tags.push(s(e))}))})),this.onAdd=function(e){var t=e.tag;o.model||(o.model=[]),o.tags=[].concat(PL(o.tags),[t]),o.model.push({type:t.type,id:t.key,name:t.label})},this.onRemove=function(e){var t=e.tag;o.model.forEach((function(e,n){e.id===t.key&amp;&amp;o.model.splice(n,1)})),o.tags.splice(o.tags.findIndex((function(e){return e.key===t.key})),1)}}]});const UL=RL.name;function zL(e){return zL="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},zL(e)}function $L(){$L=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==zL(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function GL(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function BL(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){GL(i,r,o,a,s,"next",e)}function s(e){GL(i,r,o,a,s,"throw",e)}a(void 0)}))}}var FL=angular.module("HUB.authmodule-page",[OL,UL]);FL.controller("AuthModuleCtrl",["$scope","AuthModuleResource","AuthModuleResolveResource","AuthModuleSynchronizationResource","AuthModuleAutoJoinGroupResource","$routeParams","pageTitle","authModule","dialog","HubErrorMessageBundle","userPermissions","i18n","feature","hubNotify","SelectOptionsResource","hubChangePassword","getWithQuery",function(e,t,r,o,i,a,s,c,l,g,u,d,p,A,C,I,f){e.AutoJoinGroupResource=i,e.tabs=[];var m=mC(a.id);e.module=f(t,"authmodules",{query:"id:{".concat(m,"} or name:{").concat(m,"}"),fields:c.moduleFields},(function(t){e.cooldownRate=d("{{ cooldownValue }} every {{ cooldownPeriodSec }} seconds",t.throttlingSettings),e.tabs=c.getTabs(t),e.tabs.forEach((function(e){e.visible=!0,e.feature&amp;&amp;(e.visible=!1,p(e.feature).then((function(t){e.visible=t}))),e.title=e.title&amp;&amp;e.title(d)}))})),e.hasExtraTabs=function(){return e.tabs.some((function(e){return e.visible}))},e.timeoutsTemplate=n(24536),e.autojoinTemplate=n(40132),e.generalTab=n(81536),s.addElement(e.module),u.bindVariable(e,"updatable","low-level"),e.toggleDisabled=function(){return t.save({id:e.module.id},{disabled:!e.module.disabled,type:e.module.type}).$promise.then((function(){return e.module.disabled=!e.module.disabled})).catch((function(e){return A.error(e&amp;&amp;e.data&amp;&amp;e.data.error_description)}))},e.getModuleTemplate=c.getModuleTemplate,e.getHeaderTemplate=c.getHeaderTemplate,e.getModuleTypeName=c.getModuleTypeName,e.getModuleLoginTestTemplate=c.getModuleLoginTestTemplate,e.getSyncIntervals=c.getSyncIntervals,e.getModuleTestSettingsTemplate=c.getModuleTestSettingsTemplate,e.getDocumentationLink=c.getDocumentationLink,e.onEnableError=function(e){if(400===e.status&amp;&amp;e.data&amp;&amp;e.data.error_field&amp;&amp;"is required"===e.data.error){if("clientId"===e.data.error_field)return A.error(d("Client ID is required")),!1;if("clientSecret"===e.data.error_field)return A.error(d("Client Secret is required")),!1}return!0},e.testLogin=function(){return l.show({title:d("Test {{ authModuleName }} Authentication",{authModuleName:e.module.name}),template:n(33144),data:{},buttons:[{label:d("Test"),default:!0,close:!1,action:function(t){return r.save({id:e.module.id,fields:c.detailFields},{username:t.login,password:t.password}).$promise.then((function(n){t.detail=n,t.success=c.getModuleLoginTestTemplate(e.module),t.failure=null}),(function(e){t.success=null,t.failure=g.msg(e,"test-login")}))}},{label:d("Cancel")}]})},e.changePassword=function(e,n){return I.show(t,e,"bindUserPassword",n)},e.syncNow=BL($L().mark((function t(){return $L().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,o.post({id:e.module.id}).$promise;case 3:A.success(d("Synchronization job was scheduled")),t.next=11;break;case 6:t.prev=6,t.t0=t.catch(0),console.warn(t.t0),A.error(d("Failed to schedule synchronization job")),A.error(g.msg(t.t0));case 11:e.$evalAsync();case 12:case"end":return t.stop()}}),t,null,[[0,6]])}))),e.getPrimaryLabel=function(){return d("Enabled",null,"Auth Module page, User creation enabled")},e.getSecondaryLabel=function(){return d("Disabled",null,"Auth Module page, User creation disabled")}}]);const ZL=FL.name;var YL=n(28144),WL=n.n(YL),HL=n(65344),qL=n.n(HL),QL=angular.module("HUB.service-list",[_w]);QL.controller("ServicesCtrl",["$filter","i18n","$scope",function(e,t,r){var o=this;this.toolbarTemplate=n(12617),this.sidebarTemplate=n(99886);var s=function(e){return i.createElement(YI.Z,null,e.iconUrl?i.createElement(ZI.Z,{style:{verticalAlign:"middle"},url:e.iconUrl,size:ZI.$.Size20}):i.createElement(da.ZP,{glyph:qL(),size:ZI.$.Size20,style:{color:"#dbdbdb",verticalAlign:"middle"}}),i.createElement(a.Z,{href:"services/".concat(CC(e.key,e.id))},e.name))},c=function(){return i.createElement(YI.Z,null,i.createElement("span",null,t("Home URL")))},l=function(n){return i.createElement(YI.Z,null,e("isSafeService")(n)?null:i.createElement(da.ZP,{glyph:WL(),size:da.ZP.Size.Size14,color:da.ZP.Color.GRAY,title:t("Used unsecured connection"),style:{top:"-2px",marginLeft:"2px"}}),i.createElement(a.Z,{href:n.homeUrl},n.homeUrl))},g=function(){o.columns=[{id:"name",title:t("Name"),sortable:!0,getValue:s},{id:"trusted",getValue:function(e){return e.trusted?i.createElement(io.Z,{valid:!0},t("trusted")):i.createElement(io.Z,{invalid:!0},t("untrusted"))}},{id:"home-url",getHeaderValue:c,getValue:l},{id:"applicationName",title:t("Application"),sortable:!0,getValue:function(e){return e.applicationName||i.createElement(vi.Z,null,t("No application"))}},{id:"license",title:t("License"),getValue:function(e){return e.licenseSettings?e.licenseSettings.licenseName:i.createElement(vi.Z,null,t("No license"))}}]};g(),r.$on("gettextLanguageChanged",g)}]),QL.controller("ServicesToolbarCtrl",["$element","ServiceResource","hubNotify","i18n","HubPluralMessageBundle","HostServiceInfo","hubBulkOperation",function(e,t,r,o,i,a,s){var c=e.controller("hubResource"),l=e.controller("hubTable");this.dialogTemplate=n(40892);var g=null;a.requestHostService().then((function(e){e&amp;&amp;(g=e.id)})),this.isVerifyVisible=function(e,t){return!(!e||e.size&lt;=0)&amp;&amp;e.items.some((function(e){return e.trusted!==t}))},this.verify=function(e,n){return s.withoutReporter(e,(function(e){return t.save({id:e.id},{trusted:n},(function(){return l.rerenderItem(e,{trusted:n})})).$promise}))},this.remove=function(e){var n=function(e){return t.remove({id:e.id}).$promise};return r.confirm({label:i["delete-services?"](e.length,e[0]),okButtonLabel:o("Remove"),actionPromise:function(){return s.withAlertReporter(e,n,{success:i["services-success-delete"]}).then((function(){c.refresh()}))}})},this.hasNonHostServices=function(e){return e.items.some((function(e){return e.id!==g}))}}]);const VL=QL.name;var KL=n(15774),JL=n.n(KL),XL=n(52770),ek=o().module("Ring.group",[]);ek.component("rgGroup",{transclude:!0,template:'&lt;span ng-transclude class="'.concat(XL.Z.group,'"&gt;&lt;/span&gt;')});const tk=ek.name;var nk=angular.module("HUB.directives.license-info",[]);nk.constant("UNLIMITED",2147483647).constant("DATE_FOREVER",0x8000000000000000).component("license",{template:n(52347),bindings:{data:"&lt;"},controller:["UNLIMITED",function(e){var t=this;this.isUnlimitedLicense=function(){return t.data.licenseInfo.userCount&gt;=e}}]}).filter("licenseVersion",["UNLIMITED",function(e){return function(t){var n=[];return t.majorVersion&gt;=0&amp;&amp;t.majorVersion&lt;e?n.push(t.majorVersion):n.push("x"),n.push("."),t.minorVersion&gt;=0&amp;&amp;t.minorVersion&lt;e?n.push(t.minorVersion):n.push("x"),n.join("")}}]).filter("licenseDate",["dateFilter","i18n","DATE_FOREVER",function(e,t,n){return function(r){return angular.isNumber(r)?r&gt;=n?t("Unlimited"):e(r,"mediumDate"):r}}]).filter("licenseNumber",["i18n","UNLIMITED",function(e,t){return function(n){return angular.isNumber(n)&amp;&amp;n&gt;=t?e("Unlimited"):n}}]).filter("agentReporterNumber",["i18n","UNLIMITED",function(e,t){return function(n){return angular.isNumber(n)&amp;&amp;n&gt;=t-1?e("Unlimited"):n}}]);const rk=nk.name;var ok=angular.module("HUB.license-list-dialog",[rk]);ok.factory("addLicenseDialog",["$q","dialog","i18n","HubErrorMessageBundle","SettingsResource","highlightDialogFormError",function(e,t,r,o,i,a){return function(s){var c=s.fields,l=s.serviceId,g=s.serviceData,u=void 0===g?angular.noop:g,d=[{label:r("Save"),default:!0,action:function(t,n,r,s){return i.save({fields:c},t.item).$promise.catch((function(t){return t&amp;&amp;t.data&amp;&amp;t.data.error_field&amp;&amp;s[t.data.error_field]&amp;&amp;a(s[t.data.error_field],s),r(o.msg(t,'service-add-license"')),e.reject(t&amp;&amp;t.data&amp;&amp;t.data.error_description)}))}},{label:r("Cancel")}];return t.show({title:r("New License"),template:n(38022),data:{selectService:!l,showDetails:!1,selectConfig:{minWidth:400},serviceData:u,item:{licenseKey:"",licenseName:"",type:"license",service:l?{id:l}:null},filterConfig:{placeholder:r("Find service")}},buttons:d}).then((function(t){return t||e.reject("Set license dialog closed by user")}))}}]).factory("editLicenseDialog",["dialog","i18n","SettingsResource","$q","HubErrorMessageBundle","highlightDialogFormError",function(e,t,r,o,i,a){return function(s){var c=s.license,l=s.fields,g=s.onDelete,u=s.showDetails,d=void 0!==u&amp;&amp;u,p=[{label:t("Save"),default:!0,action:function(e,t,n,s){return r.save({id:c.id},e.item).$promise.then((function(){return r.get({id:c.id,fields:l})})).catch((function(e){return e&amp;&amp;e.data&amp;&amp;e.data.error_field&amp;&amp;s[e.data.error_field]&amp;&amp;a(s[e.data.error_field],s),n(i.msg(e,"set-license")),o.reject(e&amp;&amp;e.data&amp;&amp;e.data.error_description)}))}},{label:t("Cancel")},g&amp;&amp;{label:t("Delete"),cssClasses:"ring-button_danger license-list__button_right",action:g}].filter((function(e){return!!e}));return e.show({title:t("Edit License"),template:n(38022),data:{selectService:!1,item:{type:c.type,licenseName:c.licenseName,licenseKey:c.licenseKey},showDetails:d,licenseSettings:c},buttons:p}).then((function(e){return e||o.reject("Set license dialog closed by user")}))}}]).factory("highlightDialogFormError",(function(){return function(e,t){e.$setValidity("invalid",!1),Object.keys(t).forEach((function(n){if("$"!==n.charAt(0)){var r=t[n].$viewChangeListeners;r.push((function t(){e.$setValidity("invalid",!0);var n=r.indexOf(t);r.splice(n,1)}))}}))}}));const ik=ok.name;var ak=angular.module("HUB.service-page-helper",[]),sk=function(){for(var e=arguments.length,t=new Array(e),n=0;n&lt;e;n++)t[n]=arguments[n];return t.map((function(e){return e.trim()})).filter((function(e){return e})).map((function(e){return"(".concat(e,")")})).join(" and ")};ak.factory("ServicePageHelper",["$q","$location","$routeParams","ServiceResource","UserResource","LicenseUserResource","licenseNumberFilter","GroupResource","getWithQuery","hubPageStorage",function(e,t,n,r,o,i,a,s,c,l){var g={serviceResource:null,service:{},users:[],licensed:[],availableLicenses:0,allUsers:null,filter:"",query:"",loading:null},u="id,licenseName,licenseKey,availableLicenses,service/id,autoJoinGroups(id,name,iconUrl,autoJoin,users/id[300]),licenseInfo(product,licenseType,majorVersion,minorVersion,buildNumber,userCount,agentCount,reporterCount,expirationDate,freeUpdateEnd,guestBanForbidden,invalidityReason)";function d(){return i.get({query:g.query,$top:-1,id:g.service.licenseSettings.id,fields:"id,login,name,banned,banBadge,profile(email,avatar),groups(id,name,iconUrl)"}).$promise.then((function(e){e.users=e.users||[],g.users=e.users,g.users.licensedTotal=0,g.users.unlicensedTotal=0;var t=g.service.licenseSettings.autoJoinGroups||[];e.users.forEach((function(e){e.groups=e.groups||[],e.groups.push(g.allUsers),t.forEach((function(t){(t.users||[]).some((function(t){return t.id===e.id}))&amp;&amp;!e.groups.some((function(e){return e.id===t.id}))&amp;&amp;e.groups.push(t)})),e.banned||g.users.licensedTotal++})),g.licensed=e.users.slice(0)}))}function p(){var t=[],n=g.service.licenseSettings.autoJoinGroups||[],r=new Map;return n.forEach((function(e){e.unlicensed={total:0,users:[]};var n=o.get({$top:-1,fields:"id,login,banned,banBadge,name,profile(email,avatar)",query:sk("not hasLicense: {".concat(g.service.name,"} and in: {").concat(e.name,"}"),g.query)}).$promise.then((function(t){e.ulicensedTotal=t.total,(t.users||[]).forEach((function(t){r.has(t.id)?r.get(t.id).groups.push(e):(t.groups=[e],t.unlicensed=!0,g.users.push(t),r.set(t.id,t))}))}));t.push(n)})),e.all(t)}var A=null;function C(){g.availableLicenses=g.service.licenseSettings.availableLicenses,A=!1}function I(){g.redrawToken=+new Date}return{licenseFields:u,data:g,reload:function(o){return g.query=t.search().query||"",A?e.resolve():(o||(A=!0),e((function(t){var i;(i=mC(n.id),g.serviceResource=c(r,"services",{query:"id:{".concat(i,"} or key:{").concat(i,"}"),fields:"id,key,name,homeUrl,userUriPattern,groupUriPattern,baseUrls,redirectUris,untrustedRedirectUris(redirectURI,triedFrom,triedAt),applicationName,version,vendor,trusted,iconUrl,releaseDate,resources(id),permissions(id),defaultRoles(key,name,permissions(id,key,name,description,global)),viewers(id,name,type),licenseSettings("+u+")"},(function(e){l.set("id",e.id),g.service=e})),g.serviceResource.$promise).then((function(){if(o)return t();var n=e.when();return g.allUsers||(n=function(){if(!g.allUsers)return s.get({id:"root",fields:"id,name"}).$promise.then((function(e){g.allUsers=e}))}()),n.then(d).then(p).then(C).then(I).then(t)}))})))},showLoader:angular.noop,hideLoader:angular.noop}}]);const ck=ak.name;function lk(e){return lk="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},lk(e)}function gk(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,uk(r.key),r)}}function uk(e){var t=function(e,t){if("object"!==lk(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==lk(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===lk(t)?t:String(t)}n(69720);var dk=angular.module("HUB.service-page.license-users.sidebar",[Wm]),pk=function(){return e=function e(t,n,r,o,i,a){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),function(e,t,n){(t=uk(t))in e?Object.defineProperty(e,t,{value:null,enumerable:!0,configurable:!0,writable:!0}):e[t]=null}(this,"roles"),this.$inject={$route:t,$scope:n,i18n:a,UserTransitiveProjectRoleResource:r,GroupTransitiveProjectRoleResource:o,HubEntities:i}},t=[{key:"$onInit",value:function(){var e=this,t=this.$inject.$scope;t.$watch((function(){return t.$ctrl.sidebarElement}),(function(){(e.isUser()||e.isGroup())&amp;&amp;(e.roles=null,e.loadingRoles=!0,e.loadRoles().then(e.getProjectRoles.bind(e)).finally((function(){e.loadingRoles=!1})))}))}},{key:"loadRoles",value:function(){var e=this.$inject,t=e.UserTransitiveProjectRoleResource,n=e.GroupTransitiveProjectRoleResource,r=this.getItem().id,o="id,role(".concat("id,name,permissions(service(name),name,entityType)","),owner(id,type,name),project(id,name,global)");return this.isUser()?t.get({query:"",id:r,$top:-1,fields:o}).$promise:n.get({query:"",id:r,$top:-1,fields:o}).$promise}},{key:"getProjectRoles",value:function(e){var t=e.transitiveprojectroles,n={};(t||[]).forEach((function(e){var t=e.role,r=e.project;Boolean(n[r.id])||(n[r.id]={project:r,roles:[]}),n[r.id].roles.push({id:t.id,name:t.name,badges:Object.keys(Uw()(t.permissions,(function(e){return e.service.name})))})})),this.roles=Object.entries(n).map((function(e){return e[1]})),this.visibleRoles=this.roles.slice(0,10),this.hidden=this.roles.length&gt;10}},{key:"showMore",value:function(){this.visibleRoles=this.roles.slice(),this.hidden=!1}},{key:"isUser",value:function(){return this.$inject.$scope.$ctrl.sidebarElement._user}},{key:"isGroup",value:function(){return this.$inject.$scope.$ctrl.sidebarElement._group}},{key:"getItem",value:function(){var e=this.$inject.$scope.$ctrl.sidebarElement;return e._user||e._group||e}}],t&amp;&amp;gk(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();dk.controller("LicenseUsersSidebarCtrl",pk);const Ak=dk.name;function Ck(e){return Ck="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Ck(e)}function Ik(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function fk(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ik(Object(n),!0).forEach((function(t){wk(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ik(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function mk(e){return function(e){if(Array.isArray(e))return hk(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return hk(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?hk(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function hk(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function vk(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function bk(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,_k(r.key),r)}}function yk(e,t,n){return t&amp;&amp;bk(e.prototype,t),n&amp;&amp;bk(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function wk(e,t,n){return(t=_k(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _k(e){var t=function(e,t){if("object"!==Ck(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Ck(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Ck(t)?t:String(t)}var jk=angular.module("HUB.service-page.license-users",[Ak,ck]),xk=function(){function e(t,r,o,s,c){var l=this;vk(this,e),wk(this,"sidebarTemplate",n(14105)),wk(this,"toolbarLeftTemplate",n(54404)),wk(this,"toolbarRightTemplate",n(20005)),wk(this,"isSidebarShown",!1),wk(this,"sidebarElement",null),wk(this,"plainMode",!1),wk(this,"expandedItems",new Set),wk(this,"isItemSelectable",(function(e){return e.selectable})),wk(this,"isItemCollapsed",(function(e){return!mk(l.expandedItems).some((function(t){return t.id===e.id}))})),wk(this,"isItemCollapsible",(function(e){return e.collapsible})),wk(this,"items",[]),wk(this,"selection",new xh.Z({isItemSelectable:this.isItemSelectable,getKey:function(e){return e.key||e.id},getChildren:function(e){var t=l.isItemCollapsible(e),n=l.isItemCollapsed(e);return t&amp;&amp;n||!e.items?[]:e.items}})),wk(this,"itemFormatter",(function(e){var t=l.$inject.$scope,n=l.isItemCollapsible(e),r=l.isItemCollapsed(e);return fk(fk({},e),{},{collapsible:n,collapsed:r,onCollapse:function(){var n=mk(l.expandedItems).find((function(t){return e.id===t.id}));l.expandedItems.delete(n),l.items=mk(l.items),t.$evalAsync()},onExpand:function(){l.expandedItems.add(e),l.items=mk(l.items),t.$evalAsync()}})})),wk(this,"toggleSidebar",(function(e){l.isSidebarShown=e,l.$inject.$scope.$evalAsync()})),wk(this,"openItemPage",(function(){var e=l.$inject,t=e.$scope,n=e.$location,r=l.selection.getFocused();r._group?n.url("groups/".concat(r._group.id)):r._user&amp;&amp;n.url("users/".concat(r._user.id)),t.$evalAsync()})),wk(this,"shortcuts",{left:function(){return l.toggleSidebar(!0)},right:function(){return l.toggleSidebar(!1)},enter:this.openItemPage}),wk(this,"onSelect",(function(e){l.selection=e,l.sidebarElement=e.getFocused()})),wk(this,"getUserItem",(function(e){var t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]&amp;&amp;arguments[1],n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:{},r=l.$inject.i18n,o=i.createElement(YI.Z,null,i.createElement(Ff,{user:e,i18n:r},i.createElement(YI.Z,null,i.createElement(ZI.Z,{style:{verticalAlign:"middle"},url:e.profile.avatar.url,size:ZI.$.Size20}),i.createElement(a.Z,{href:"users/".concat(e.id)},e.name))),e.banned&amp;&amp;i.createElement("span",null,i.createElement(io.Z,{style:{marginLeft:"8px"},invalid:!0},e.banBadge?e.banBadge:r("banned")),!e.unlicensed&amp;&amp;i.createElement(io.Z,{style:{marginLeft:"8px"}},r("user is deprived of the license for the ban time"))),t&amp;&amp;i.createElement("span",{style:{color:"#999",position:"absolute",left:"40%",marginTop:"4px"}},i.createElement("span",null,e.licenseGroups.length?"".concat(r("Member of")," "):"",function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:[];return e.map((function(t,n){return i.createElement("span",{key:t.id},i.createElement(a.Z,{href:"groups/".concat(t.id)},t.name),n&lt;e.length-1?", ":"")}))}(e.licenseGroups)))),s=n.id?"".concat(e.id,"-").concat(n.id):e.id;return{_user:{id:e.id,name:e.name,profile:e.profile,unlicensed:e.unlicensed},selectable:l.plainMode,id:e.id,key:s,title:o,items:[]}})),wk(this,"getGroupItem",(function(e,t){var n=l.$inject.i18n,r=t.filter((function(t){return t.groups.some((function(t){return t.id===e.id}))})),o=r.filter((function(e){return!e.unlicensed})),s=r.filter((function(e){return e.unlicensed})),c=o.map((function(t){return l.getUserItem(t,!1,e)}));if(s.length){var g=s.map((function(t){return l.getUserItem(t,!1,e)})),u=s.length,d=1===s.length?n("{{userCount}} user without license",{userCount:u}):n("{{userCount}} users without license",{userCount:u});c.push({_ignore:!0,id:"".concat(e.id,"-unlicensed"),title:d,collapsible:!0,items:g})}var p=i.createElement("span",null,n("Group")," ",i.createElement(a.Z,{href:"groups/".concat(e.id)},e.name),e.autoJoin&amp;&amp;i.createElement("span",null,i.createElement(io.Z,{style:{marginLeft:"8px"}},n("auto-join"))));return{_group:{id:e.id,name:e.name,iconUrl:e.iconUrl,hasLicensedUsers:Boolean(c.length)},id:e.id,title:p,selectable:!0,items:c}})),wk(this,"onLoad",(function(){var e=l.$inject,t=e.ServicePageHelper,n=e.i18n,r=t.data.service.licenseSettings.autoJoinGroups||[],o=(t.data.users||[]).map((function(e){return fk(fk({},e),{},{licenseGroups:(e.groups||[]).filter((function(e){return r.findIndex((function(t){return t.id===e.id}))&gt;=0}))})}));if(l.plainMode){var i=o.filter((function(e){return!e.unlicensed})).map((function(e){return l.getUserItem(e,!0)})),a=o.filter((function(e){return e.unlicensed}));if(a.length){var s=a.map((function(e){return l.getUserItem(e,!0)})),c=a.length,g=1===a.length?n("{{userCount}} user without license",{userCount:c}):n("{{userCount}} users without license",{userCount:c});i.push({id:"unlicensed",title:g,collapsible:!0,items:s})}l.items=mk(i)}else{var u=o.filter((function(e){return 0===e.licenseGroups.length})).map((function(e){return l.getUserItem(e)})),d=r.map((function(e){return l.getGroupItem(e,o)}));l.items=[].concat(mk(u),mk(d))}})),this.$inject={ServicePageHelper:t,$scope:r,i18n:o,$location:c,hubSidebarStateStorage:s},this.serviceData=t.data,r.$watch((function(){return l.serviceData.redrawToken}),this.onLoad),s.read().then((function(e){l.isSidebarShown=e})),r.$watch((function(){return l.isSidebarShown}),(function(e){void 0!==e&amp;&amp;s.store(e)})),this.plainMode="plain"===c.search().mode,r.$on("$locationChangeSuccess",(function(){l.plainMode="plain"===c.search().mode,t.reload()})),t.reload()}return e.$inject=["ServicePageHelper","$scope","i18n","hubSidebarStateStorage","$location"],yk(e,[{key:"setPlainMode",value:function(e){var t=this.$inject.$location;e?t.search("mode","plain"):t.search("mode",void 0)}}])}(),Ek=yk((function e(t){vk(this,e),this.selection=(0,yg.Z)((function(){return t.$ctrl.selection}))}));wk(Ek,"$inject",["$scope"]),jk.controller("ServiceLicenseUsersCtrl",xk),jk.controller("ServiceLicenseUsersSelectionCtrl",Ek);const Sk=jk.name;var Tk=angular.module("HUB.service-page.change",[]);Tk.controller("ChangeSecret",["$scope",function(e){e.generate=!1,e.switchMode=function(t){e.generate=t,e.generate?e.data.secret=function(e){for(var t="",n=0;n&lt;12;n++)t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".charAt(Math.floor(62*Math.random()));return t}():e.data.secret=""},e.switchMode(!0)}]);const Mk=Tk.name;var Lk=angular.module("HUB.service-page.resources",[]);Lk.controller("ServicePageResourcesToolbarCtrl",["$q","$routeParams","SelectOptionsResource","ProjectResourceResource","hubNotify","HubPluralMessageBundle","i18n","$element",function(e,t,n,r,o,i,a,s){var c=this,l=s.controller("hubTable"),g=i["resources-moved-to-project-success"],u=i["resources-moved-to-project-error"];this.moveResources=function(t,n){var i=0,s=0;c.moveResourcesLoader=!0;var d=n.map((function(e){if(e.project.id!==t.id)return r.save({id:t.id},{id:e.id},(function(){return l.rerenderItem(e,{project:t})})).$promise.then((function(){i++}),(function(){s++}))}));e.all(d).then((function(){i&amp;&amp;o.success(g(i,{name:n[0].name,project:t.name})),s&amp;&amp;o.error(u(s,{name:n[0].name,project:t.name})),i||s||o.success(a("No resources were moved")),c.moveResourcesLoader=!1}))};var d=n.projectsDatasourceFactory();this.targetProjectsDataSource=function(e,t){var n=t.map((function(e){return"not id: ".concat(e.project.id)})).join(" and ");return d(e?"".concat(e," and ").concat(n):n)}}]);const kk=Lk.name;function Ok(e){return Ok="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Ok(e)}function Pk(){Pk=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==Ok(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function Nk(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Dk(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Nk(Object(n),!0).forEach((function(t){Rk(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Nk(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Rk(e,t,n){return t=function(e){var t=function(e,t){if("object"!==Ok(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Ok(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Ok(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Uk(e){return function(e){if(Array.isArray(e))return zk(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return zk(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?zk(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function zk(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function $k(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function Gk(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){$k(i,r,o,a,s,"next",e)}function s(e){$k(i,r,o,a,s,"throw",e)}a(void 0)}))}}var Bk=angular.module("HUB.service-page.license-users.toobar",[]);Bk.controller("ServiceLicenseToolbarCtrl",["$scope","$q","hubNotify","LicenseAutoJoinGroupResource","LicenseUserResource","SelectOptionsResource","ServicePageHelper","dialog","i18n","hubI18nPlural","dprDependantSrc",function(e,t,r,o,a,c,l,g,u,d,p){var A=e.serviceData=l.data;function C(){return l.reload()}l.reload();var I="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7";function f(){return f=Gk(Pk().mark((function e(t){var n;return Pk().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,c.groupsExcept({groups:function(){return A.service.licenseSettings.autoJoinGroups}},"id,name,iconUrl,userCount")();case 2:return n=e.sent,e.abrupt("return",n.filter((function(e){return e.name.match(t)})).map((function(e){var t=I;e.iconUrl&amp;&amp;(t=e.iconUrl);var n=e.userCount||0,r=d.format("users-total",n,{count:n});return{key:e.id,label:e.name,description:r,icon:t,group:e,usage:0,disabled:!1,rgTagIcon:av()}})));case 4:case"end":return e.stop()}}),e)}))),f.apply(this,arguments)}var m=c.usersDatasourceFactory((function(t){return"".concat(c.defaultUsersQueryFn(t)," and not hasLicense: ").concat(e.serviceData.service.id)})),h=function(e,t){var n=e.profile&amp;&amp;e.profile.email&amp;&amp;e.profile.email.email?e.profile.email.email:e.name,r=I;e.profile&amp;&amp;e.profile.avatar&amp;&amp;e.profile.avatar.url&amp;&amp;(r=p(e.profile.avatar.url,16));var o=e.banned&amp;&amp;i.createElement("span",{style:{color:"red",paddingLeft:"4px"}},e.banBadge?e.banBadge:u("banned"));return{key:e.id,label:i.createElement("span",null,e.name," ",o),description:n,icon:r,user:e,usage:e.banned?0:1,disabled:t&lt;=0&amp;&amp;!e.banned}};function v(){return v=Gk(Pk().mark((function e(t,n){var r;return Pk().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,m(t);case 2:return r=e.sent,e.abrupt("return",r.map((function(e){return h(e,n)})));case 4:case"end":return e.stop()}}),e)}))),v.apply(this,arguments)}function b(e){return a.remove({id:A.service.licenseSettings.id,subId:e}).$promise}function y(e){return o.save({id:A.service.licenseSettings.id},{id:e.id}).$promise}e.removeUser=b,e.grantLicenseDialog=function(){var e=(arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:[]).filter((function(e){return e._user&amp;&amp;e._user.unlicensed})).map((function(e){return h(e._user)})).slice(0,l.data.availableLicenses);e=Uk(new Set(e));var o=A.service,i={grantEntities:e,datasource:function(e){return function(e,n){return t((function(t){var r=[];(function(e){return f.apply(this,arguments)})(e,n).then((function(t){return t.length&amp;&amp;(r.push({rgItemType:Mp.Z.ListProps.Type.TITLE,label:u("Groups")}),r=r.concat(t)),function(e,t){return v.apply(this,arguments)}(e,n)})).then((function(e){e.length&amp;&amp;(r.push({rgItemType:Mp.Z.ListProps.Type.TITLE,label:u("Users")}),r=r.concat(e)),t(r)}))}))}(e.query,i.freeLicensesNum)},onAddEntry:function(e){var t=e.tag;i.grantEntities=[].concat(Uk(i.grantEntities),[t])},onRemoveEntry:function(e){var t=e.tag;i.grantEntities=i.grantEntities.filter((function(e){return e!==t}))},placeholder:u("Add user or group")};return g.show({title:u("Grant {{ service.name }} License",{service:o}),template:n(51446),data:i,buttons:[{label:u("Grant license"),default:!0,close:!0,action:function(e){l.showLoader();for(var n,o=A.licensed.length,i=[],s=0;s&lt;e.grantEntities.length;s++){var c=e.grantEntities[s];c.user?i.push((n=c.user,a.save({id:A.service.licenseSettings.id},{id:n.id}).$promise)):c.group&amp;&amp;i.push(y(c.group))}return t.all(i).then(C).then((function(){var e=A.licensed.length-o;r.success(d.format("grant-license",e,{count:e})),l.hideLoader()}),r.errorHandler("user-add"))}},{label:u("Cancel")}]})},e.isRevokeAvailable=function(e){return e.length&amp;&amp;e.some((function(e){return e._group||e._user&amp;&amp;!e._user.unlicensed}))},e.revokeLicenseDialog=function(e){var i=function(e,n){var i=[],a=[],c=A.licensed.length;return e.filter((function(e){return!e._ignore})).forEach((function(e){e._user?e._user.unlicensed||i.push((function(){return b(e.id)})):a.push((function(){return function(e){var t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]&amp;&amp;arguments[1];return o.remove({keepUsers:t,id:A.service.licenseSettings.id,subId:e}).$promise}(e.id,n)}))})),l.showLoader(),t.all(i.map((function(e){return e()}))).then((function(){return t.all(a.map((function(e){return e()})))})).then(C).then((function(){var e=c-A.licensed.length;r.success(d.format("revoke-license",e,{count:e})),l.hideLoader()})).catch((function(){s.Z.error(u("Cannot revoke {{service.name}} license from user.",{service:A.service}))}))},a=e.filter((function(e){return e._group})).map((function(e){return Dk(Dk({},e._group),{},{usersNum:e.items.length})})),c=e.filter((function(e){return!e._group})).map((function(e){return e._user||e}));return g.show({title:u("Revoke license"),template:n(8738),data:{groups:a,users:c,hasGroups:a.length&gt;0,hasUsers:c.length&gt;0,allGroupsAreEmpty:a.every((function(e){return!e.hasLicensedUsers})),option:"WHOLE_GROUP"},buttons:[{label:u("Revoke"),default:!0,action:function(t){var n=t.option;return t.hasGroups?i(e,"KEEP_USERS"===n):i(e)}},{label:u("Cancel"),close:!0}]})}}]),Bk.controller("ServiceLicenseDialogCtrl",["$scope","ServicePageHelper",function(e,t){var n=e.dialog.data;n.availableLicensesNum=t.data.availableLicenses,e.$watchCollection("dialog.data.grantEntities",(function(){var e=n.grantEntities;if(n.freeLicensesNum=t.data.availableLicenses,e.length)for(var r=0;r&lt;e.length;r++)n.freeLicensesNum-=e[r].usage}))}]);const Fk=Bk.name;var Zk=angular.module("HUB.service-page",[Mk,Yy,rk,ik,kk,tk,Sk,ck,Fk]);Zk.factory("RoleResetResource",["backend",function(e){return e.createResource("roles","reset",{reset:{method:"POST",params:{id:"@id"}}})}]),Zk.controller("ServiceCtrl",["$scope","$routeParams","$window","ServiceResource","RoleResource","RoleResetResource","pageTitle","hubNotify","dialog","userPermissions","$location","$filter","i18n","addLicenseDialog","editLicenseDialog","deleteLicense","licensesFields","feature","$q","UNLIMITED","DATE_FOREVER","ServicePageHelper","HostServiceInfo","getReadableResourceType","ServiceHeaderVisibleGroupResource","HubPermissionMessages","HubEntities","HubOperations","hubPageStorage",function(e,t,r,o,c,l,g,u,d,p,A,C,I,f,m,h,v,b,y,w,_,j,x,E,S,T,M,L,k){e.HeaderVisibleGroupsResource=S,e.permissionsTemplate=n(10194),e.permissionsToolbarTemplate=n(81537),e.permissionsSidebarTemplate=n(78119),e.permissionsEmptyTemplate=n(80313),e.resourcesTemplate=n(99053),e.resourcesToolbarTemplate=n(26125),e.resourcesSidebarTemplate=n(62642),e.resourcesEmptyTemplate=n(27306),e.licenseTemplate=n(91609),e.licenseUsersTemplate=n(33993),e.licenseUsersEmptyTemplate=n(57323),e.rolesTemplate=n(13728),e.settingsTemplate=n(907),e.toggleTrustedState=function(t){return o.save({id:e.service.id},{trusted:t}).$promise.then((function(){e.service.trusted=t}))};var O=null;x.requestHostService().then((function(e){O=e?e.id:null})),e.resourcesColumns=[{id:"name",sortable:!0,title:I("Resource"),getValue:function(e){var t=e.name,n=e.type,r=e.homeUrl;return i.createElement(vi.Z,null,i.createElement(vi.Z,null,E(n),": "),i.createElement(a.Z,{href:r},t),O!==k.get("id")&amp;&amp;i.createElement(da.ZP,{glyph:JL(),size:da.ZP.Size.Size12,style:{top:"-4px",left:"8px",color:"#1866C5"}}))}},{id:"project",title:I("Project"),sortable:!0,getValue:function(e){var t=e.project;return t?i.createElement(a.Z,{href:"projects/".concat(fC(t.name))},t.name):null}}],e.permissionsColumns=[{id:"name",title:I("Name"),className:"column-with-gray-dots",getValue:function(e){var t=e.name,n=e.description;return i.createElement(YI.Z,null,i.createElement(vi.Z,null,t),i.createElement(vi.Z,{info:!0},n))}},{id:"key",title:I("Key"),getHeaderValue:function(){return i.createElement(YI.Z,null,i.createElement("span",null,I("Key")))},getValue:function(e){return i.createElement(YI.Z,null,e.global?i.createElement(da.ZP,{glyph:cv(),size:da.ZP.Size.Size14,color:da.ZP.Color.GRAY,title:I("Global"),className:"global__icon_blue service-page__global-icon"}):null,i.createElement("span",null,e.key))}},{id:"entity-type",title:I("Entity Type"),getValue:function(e){return"Hub"===j.data.service.applicationName?M.msg(e.entityType):e.entityType}},{id:"operation",title:I("Operation"),getValue:function(e){return L.msg(e.operation)}}],e.serviceData=j.data,e.baseUrls={},e.redirectUris={},e.resources={},e.permissions={},e.realRoles={};var P=j.reload(!0);function N(t){return l.reset({id:t.id},{id:e.service.id}).$promise}e.service=j.data.serviceResource,g.addElement(e.service),P.then((function(){e.service=j.data.serviceResource,e.service.baseUrls&amp;&amp;e.service.baseUrls.length&gt;0&amp;&amp;(e.baseUrls.value=e.service.baseUrls.join("\n")),e.service.redirectUris&amp;&amp;e.service.redirectUris.length&gt;0&amp;&amp;(e.redirectUris.value=e.service.redirectUris.join("\n"))})).then((function(){var t=e.service;if(t.defaultRoles){var n=t.defaultRoles.map((function(e){return"key: {".concat(e.key,"}")})).join(" or ");t.defaultRoles.forEach((function(e){(e.permissions||[]).forEach((function(e){var t=T.msg(e.key);e.name=t?t.name:e.name,e.description=t?t.description:e.description}))})),c.query({query:n,fields:"id,key,permission(service(id),key)",$top:-1}).$promise.then((function(t){t.roles&amp;&amp;angular.forEach(t.roles,(function(t){e.realRoles[t.key]=t}))}))}})),e.$watch("permissions.data",(function(){var e=(arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:{}).permissions;(void 0===e?[]:e).forEach((function(e){var t=T.msg(e.key);e.name=t?t.name:e.name,e.description=t?t.description:e.description}))})),p.bindVariable(e,"updatable","low-level"),e.setBaseUrls=function(){var t=[];e.baseUrls.value&amp;&amp;(t=e.baseUrls.value.split(/\s+/)),o.save({id:e.service.id},{baseUrls:t},(function(){e.service.baseUrls=t}),u.errorHandler())},e.setRedirectUris=function(){var t=[];e.redirectUris.value&amp;&amp;(t=e.redirectUris.value.split(/\s+/)),o.save({id:e.service.id},{redirectUris:t},(function(){e.service.redirectUris=t}),u.errorHandler())},e.changeSecret=function(){return d.show({template:n(16935),data:{},buttons:[{label:I("Change Secret"),default:!0,close:!1,action:function(t,n,r){o.save({id:e.service.id},{secret:t.secret},(function(){d.reset()}),(function(e){r(u.errorMessage(e,"change-secret"))}))}},{label:I("Cancel")}]})},e.addLicense=function(){return f({fields:j.licenseFields,serviceId:k.get("id")}).then((function(t){e.service.licenseSettings=t,e.serviceData.service.licenseSettings=t}))},e.setLicense=function(){return m({license:e.serviceData.service.licenseSettings,fields:j.licenseFields,showDetails:!0,onDelete:function(){e.deleteLicense()}}).then((function(t){e.service.licenseSettings=t,e.serviceData.service.licenseSettings=t}))},e.deleteLicense=function(){return h(e.serviceData.service.licenseSettings).then((function(){e.serviceData.service.licenseSettings=null,e.service.licenseSettings=null})).catch(angular.noop)},e.resetServiceRole=function(t){var r={label:I("Confirm"),default:!0,close:!0,action:function(){return function(t){var n=e.realRoles[t.key];n&amp;&amp;N(n).then(u.successHandler(I("Default permissions restored for the {{role.name}} role",{role:t})),u.errorHandler("reset-permissions"))}(t)}};return d.show({title:I("Restore default permissions for {{roleName}}?",{roleName:t.name}),template:n(76009),cssClass:"ring-form_rows",data:{roleName:t.name},buttons:[r,{label:I("Cancel")}]})},e.resetAllServiceRoles=function(){var t={label:I("Confirm"),default:!0,close:!0,action:function(){return t=[],angular.forEach(e.realRoles,(function(e){t.push(N(e))})),void y.all(t).then(u.successHandler(I("Default {{serviceName}} permissions restored",{serviceName:e.service.name})),u.errorHandler("reset-permissions"));var t}};return d.show({title:I("Restore default permissions?"),template:n(20126),cssClass:"ring-form_rows",data:{serviceName:e.service.name},buttons:[t,{label:I("Cancel")}]})},e.isLicenseLimited=function(){return(e.service.licenseSettings||{}).licenseInfo&amp;&amp;e.service.licenseSettings.licenseInfo.userCount&lt;w},e.isLicenseValidForever=function(){return(e.service.licenseSettings||{}).licenseInfo&amp;&amp;e.service.licenseSettings.licenseInfo.expirationDate&gt;=_},e.isLicenseUpdatable=function(){return e.updatable&amp;&amp;(!e.service.applicationName||e.service.applicationName!==Tl)},e.resourceFields=v,e.getServiceId=function(){return k.get("id")},e.hideAddLicense=!0,b("jetbrains.hub.add.license.hide").then((function(t){e.hideAddLicense=t})),b("jetbrains.jetpass.is_hosted").then((function(t){e.isHosted=t})),A.search().wikiMessage&amp;&amp;s.Z.message(C("wiki")(A.search().wikiMessage),0,!0)}]),Zk.controller("ServiceUntrustedRedirectUriCtrl",["$scope","ServiceUntrustedRedirectUriResource","ServicePageHelper",function(e,t,n){e.acceptRedirectUri=function(r){return t.accept({id:e.service.id,subId:r.redirectURI},{}).$promise.then((function(){return n.reload(!0)})).then((function(){var t=n.data.service;e.service.untrustedRedirectUris=t.untrustedRedirectUris,e.service.redirectUris=t.redirectUris}))},e.rejectRedirectUri=function(r){return t.reject({id:e.service.id,subId:r.redirectURI}).$promise.then((function(){return n.reload(!0)})).then((function(){var t=n.data.service;e.service.untrustedRedirectUris=t.untrustedRedirectUris}))}}]);const Yk=Zk.name;var Wk=n(82305),Hk=o().module("Ring.radio",[]);Hk.directive("rgRadio",(function(){return{restrict:"E",transclude:!0,replace:!0,template:wp('\n      &lt;label class="'.concat(Wk.Z.radio,'" data-test="ring-radio"&gt;\n        &lt;input\n          type="radio"\n          class=').concat(Wk.Z.input,'\n\n          data-proxy-ng-disabled\n          data-proxy-ng-model\n          data-proxy-ng-change\n          data-proxy-name\n          data-proxy-value\n          data-proxy-ng-value\n        /&gt;\n        &lt;span class="').concat(Wk.Z.circle,'"&gt;&lt;/span&gt;&lt;span\n         class="').concat(Wk.Z.label,'" ng-transclude&gt;&lt;/span&gt;\n      &lt;/label&gt;\n\n')),link:function(e,t){var n,r=t[0],o=r.querySelector('input[type="radio"]');r.id?(n=r.id,r.setAttribute("for",n),o.setAttribute("id",n),r.removeAttribute("id")):function(){var e=(0,Ta.Z)("ring-radio-item-");r.setAttribute("for",e),o.setAttribute("id",e)}()}}}));const qk=Hk.name;var Qk=angular.module("HUB.directives.array-required",[]);Qk.directive("arrayRequired",(function(){return{restrict:"A",require:"ngModel",link:function(e,t,n,r){r.$isEmpty=function(e){return 0===e.length}}}}));const Vk=Qk.name;var Kk=n(9980),Jk=n.n(Kk),Xk=n(62017),eO=n(73249),tO=n.n(eO),nO=n(58212),rO=n.n(nO),oO=n(74006),iO=n.n(oO),aO=n(42157),sO=n.n(aO),cO=n(61519),lO=n.n(cO),gO=n(36134),uO=n.n(gO),dO=n(6691),pO=n.n(dO),AO=n(681),CO=n.n(AO),IO=n(68914),fO=n.n(IO),mO=n(93839),hO=n.n(mO),vO=n(27055),bO=n.n(vO),yO=n(27204),wO=n.n(yO),_O=n(58259),jO=n.n(_O),xO=n(58473),EO=n.n(xO),SO=n(87489),TO=n.n(SO),MO=n(85243),LO=n.n(MO),kO=n(33048),OO=n.n(kO),PO=n(88267),NO=n.n(PO),DO=n(12175),RO=n.n(DO),UO=n(83512),zO=n.n(UO),$O=n(56703),GO=n.n($O),BO=n(37721),FO=n.n(BO),ZO=n(96344),YO=n.n(ZO),WO=n(82026),HO=n.n(WO),qO=n(48099),QO=n.n(qO),VO=n(23874),KO=n.n(VO),JO=n(39563),XO=n.n(JO),eP=n(31067),tP=n.n(eP),nP=n(30465),rP=n.n(nP),oP=n(78529),iP=n.n(oP),aP=n(73306),sP=n.n(aP),cP=n(66336),lP=n.n(cP),gP=n(30308),uP=n.n(gP),dP=n(30806),pP=n.n(dP),AP=n(11374),CP=n.n(AP),IP=n(5818),fP=n.n(IP),mP=n(19514),hP=n.n(mP),vP=n(97181),bP=n.n(vP),yP=n(26306),wP=n.n(yP),_P=n(54587),jP=n.n(_P),xP=n(35488),EP=n.n(xP),SP=n(91533),TP=n.n(SP);tO().registerLanguage("c-like",rO()),tO().registerLanguage("cpp",iO()),tO().registerLanguage("xml",sO()),tO().registerLanguage("bash",lO()),tO().registerLanguage("clojure",uO()),tO().registerLanguage("coffeescript",pO()),tO().registerLanguage("cs",CO()),tO().registerLanguage("css",fO()),tO().registerLanguage("markdown",hO()),tO().registerLanguage("dockerfile",bO()),tO().registerLanguage("elixir",wO()),tO().registerLanguage("elm",jO()),tO().registerLanguage("ruby",EO()),tO().registerLanguage("erlang",TO()),tO().registerLanguage("glsl",LO()),tO().registerLanguage("go",OO()),tO().registerLanguage("gradle",NO()),tO().registerLanguage("groovy",RO()),tO().registerLanguage("handlebars",zO()),tO().registerLanguage("haskell",GO()),tO().registerLanguage("java",FO()),tO().registerLanguage("javascript",YO()),tO().registerLanguage("json",HO()),tO().registerLanguage("kotlin",QO()),tO().registerLanguage("less",KO()),tO().registerLanguage("livescript",XO()),tO().registerLanguage("lua",tP()),tO().registerLanguage("makefile",rP()),tO().registerLanguage("perl",iP()),tO().registerLanguage("php",sP()),tO().registerLanguage("powershell",lP()),tO().registerLanguage("python",uP()),tO().registerLanguage("r",pP()),tO().registerLanguage("rust",CP()),tO().registerLanguage("scala",fP()),tO().registerLanguage("shell",hP()),tO().registerLanguage("sql",bP()),tO().registerLanguage("swift",wP()),tO().registerLanguage("yaml",jP()),tO().registerLanguage("twig",EP()),tO().registerLanguage("typescript",TP());const MP=tO();var LP=n(32160),kP=n(86527);function OP(e){return e.renderer.rules.link_open=function(e,t){var n,r=e[t],o=r.attrGet("href")||"",i=r.attrGet("title")||"",a=Wg()(r.attrGet("class"),qt.Z.link),s=i?' title="'.concat(i,'"'):"",c=function(e){return/^[a-z]+:(\/\/|\\\\)/i.test(e)}(n=o)&amp;&amp;!n.startsWith(location.origin)?' target="_blank" rel="noopener noreferrer nofollow"':"";return'&lt;a class="'.concat(a,'" href="').concat(o,'"').concat(s).concat(c,'&gt;&lt;span class="').concat(qt.Z.inner,'"&gt;')},e.renderer.rules.link_close=function(){return"&lt;/span&gt;&lt;/a&gt;"},e}function PP(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var NP=angular.module("Hub.components.markdown-preview",[]);NP.component("markdownPreview",{bindings:{text:"&lt;",onScrollEnd:"&amp;"},template:'&lt;div class="markdown-preview__container '.concat(Xk.Z.markdown,'"&gt;&lt;/div&gt;'),controller:["$element","$scope","$timeout",function(e,t,n){var r=this;this.renderComponent=function(){var e=new(Jk())("commonmark",{html:!1,linkify:!0,breaks:!0}).enable("strikethrough",!0).enable("linkify").enable("table").use(OP);r.renderNode&amp;&amp;"string"==typeof r.text&amp;&amp;(r.renderNode.innerHTML=e.render(r.text),r.highlightCodeBlocks(r.renderNode))},this.highlightCodeBlocks=function(e){var t,n=function(e,t){var n="undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return PP(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?PP(e,t):void 0}}(e))||t&amp;&amp;e&amp;&amp;"number"==typeof e.length){n&amp;&amp;(e=n);var r=0,o=function(){};return{s:o,n:function(){return r&gt;=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){s=!0,i=e},f:function(){try{a||null==n.return||n.return()}finally{if(s)throw i}}}}(e.querySelectorAll("pre &gt; code"));try{for(n.s();!(t=n.n()).done;){var r=t.value;MP.highlightElement(r),r.classList.add(LP.Z.highlightContainer),r.parentNode.classList.add(kP.Z.code)}}catch(e){n.e(e)}finally{n.f()}},this.$onInit=function(){var o=e[0];r.renderNode=o.querySelector("div");var i=function(){Math.abs(o.scrollTop-(o.scrollHeight-o.offsetHeight))&lt;10&amp;&amp;(r.onScrollEnd(),t.$evalAsync())};o.onscroll=i,r.renderComponent(),n(i)},this.$onChanges=function(){r.renderComponent()}}]});const DP=NP.name;var RP=angular.module("Hub.components.markdown-reference",[cI]);RP.component("markdownReference",{template:n(22623)});const UP=RP.name;function zP(e){return zP="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},zP(e)}function $P(e){return $P=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},$P(e)}function GP(e,t){return GP=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},GP(e,t)}function BP(e){return function(e){if(Array.isArray(e))return FP(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return FP(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?FP(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function FP(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function ZP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function YP(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ZP(Object(n),!0).forEach((function(t){QP(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ZP(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function WP(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function HP(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,VP(r.key),r)}}function qP(e,t,n){return t&amp;&amp;HP(e.prototype,t),n&amp;&amp;HP(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function QP(e,t,n){return(t=VP(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function VP(e){var t=function(e,t){if("object"!==zP(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==zP(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===zP(t)?t:String(t)}function KP(e){return e.role.name}var JP=function(){function e(t,n,r,o){WP(this,e),QP(this,"roles",null),this.$inject={$scope:t,HubEntities:n,i18n:r,$element:o},this.listController=o.controller("projectTeamTab"),this.datasource=this.listController.datasource}return e.$inject=["$scope","HubEntities","i18n","$element"],qP(e,[{key:"$onInit",value:function(){var e=this,t=this.$inject.$scope;t.$watch((function(){return t.$ctrl.sidebarElement}),(function(){e.roles=null,e.loadingRoles=!0,e.loadRoles().then((function(t){e.roles={currentProject:e.getProjectRoles(t,e.getProjectId()),currentOrganization:e.getOrganizationRoles(t,e.getOrganizationId())};var n=t.find((function(e){return(e.project||{}).global}));n&amp;&amp;(e.roles.globalProject=e.getProjectRoles(t,n.project.id))})).finally((function(){e.loadingRoles=!1,t.$applyAsync()}))}))}},{key:"loadRoles",value:function(){var e={id:this.getItem().id,fields:"id,role(".concat("id,key,name,permissions(service(name),name,entityType)","),owner(id,type,name),project(id,name,global),organization(id,name)")},t=YP(YP({},e),{},{query:"project: 0 or project: ".concat(this.getProjectId())}),n=this.getOrganizationId()?YP(YP({},e),{},{query:"organization: ".concat(this.getOrganizationId())}):void 0,r=function(e,r){return Promise.all([e(t),n?r(n):[]]).then((function(e){return(e[0]||[]).concat(e[1]||[])}))};return this.isUser()?r(this.datasource.getUserTransitiveProjectRoles,this.datasource.getUserTransitiveOrganizationRoles):r(this.datasource.getGroupTransitiveProjectRoles,this.datasource.getGroupTransitiveOrganizationRoles)}},{key:"groupAccessScopeRoles",value:function(e){var t=this.$inject,n=t.HubEntities,r=t.i18n,o=new Map;e.forEach((function(e){var t=e.role,n=o.get(t.id);n?n.owners=[].concat(BP(n.owners),[e.owner]).filter(Boolean):o.set(t.id,{role:t,owners:[e.owner].filter(Boolean)})}));var i=BP(o.values());return i.forEach((function(e){var t=Uw()(e.role.permissions,(function(e){return n.msg(e.entityType)||r("No entity")})),o={};$w()(Object.keys(t),(function(e){return e})).forEach((function(e){o[e]=t[e]})),Object.keys(o).forEach((function(e){var t=o[e];o[e]=Uw()(t,"name")})),e.role.groupedPermisisons=o})),i}},{key:"getProjectRoles",value:function(e,t){var n=this,r=e.filter((function(e){return(e.project||{}).id===t})),o=this.groupAccessScopeRoles(r),i=$w()(o.filter((function(e){return e.owners.some((function(e){return e.id===n.getTeamId()}))})),KP),a=$w()(o.filter((function(e){return e.owners.every((function(e){return e.id!==n.getTeamId()}))})),KP);return a.sort(KP),r.length&gt;0?{id:r[0].project.id,name:r[0].project.name,type:"project",teamMemberRoles:i,transitionedRoles:a}:null}},{key:"getOrganizationRoles",value:function(e,t){var n=e.filter((function(e){return!!e.organization})).filter((function(e){return e.organization.id===t}));return n.length&gt;0?{id:n[0].organization.id,name:n[0].organization.name,type:"organization",teamMemberRoles:[],transitionedRoles:this.groupAccessScopeRoles(n)}:null}},{key:"isUser",value:function(){return!this.$inject.$scope.$ctrl.sidebarElement._group}},{key:"getItem",value:function(){var e=this.$inject.$scope.$ctrl.sidebarElement;return e._user||e._group||e}},{key:"getProjectId",value:function(){return this.$inject.$scope.$ctrl.projectId}},{key:"getOrganizationId",value:function(){return this.$inject.$scope.$ctrl.organizationId}},{key:"getTeamId",value:function(){return this.$inject.$scope.$ctrl.teamId}},{key:"isSelfOwner",value:function(e){return this.getItem().id===e.id}},{key:"isCurrentTeam",value:function(e){return e.id===this.getTeamId()}}])}(),XP=function(e){function t(){return WP(this,t),e=this,r=arguments,n=$P(n=t),function(e,t){if(t&amp;&amp;("object"===zP(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(n,r||[],$P(e).constructor):n.apply(e,r));var e,n,r}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;GP(e,t)}(t,e),qP(t,[{key:"isGroup",value:function(e){return"userGroup"===e.type}},{key:"hasOwnRole",value:function(e){var t=this;return e.some((function(e){return t.isSelfOwner({owner:e})}))}},{key:"hasTeamRole",value:function(e){var t=this;return e.some((function(e){return t.isCurrentTeam({owner:e})}))}},{key:"getRoleOrigins",value:function(e){var t=this,n=this.$inject.i18n,r=e.owners.filter((function(e){return!t.isSelfOwner({owner:e})&amp;&amp;!t.isCurrentTeam({owner:e})})).map((function(e){return e.name})).join(", ");return[this.hasOwnRole(e.owners)&amp;&amp;n("direct assignment"),this.hasTeamRole(e.owners)&amp;&amp;n("team member"),r&amp;&amp;n("member of ".concat(r))].filter((function(e){return!!e}))}},{key:"onExpandRoot",value:function(e){e?nm.expandTeamRole():nm.collapseTeamRole()}},{key:"onExpandEntity",value:function(e){e?nm.expandTeamTabEntity():nm.collapseTeamTabEntity()}}])}(p);QP(XP,"$inject",["i18n"]),QP(XP,"template",n(82994)),QP(XP,"bindings",{role:"&lt;",isSelfOwner:"&amp;",isCurrentTeam:"&amp;"});var eN=angular.module("hub-components.team-tab.sidebar",[Wm]);eN.controller("TeamSidebarCtrl",JP),eN.component("teamSidebarRolesList",{template:n(74176),bindings:{accessScope:"&lt;",isSelfOwner:"&amp;",isCurrentTeam:"&amp;"}}).component("teamSidebarRolesListItem",XP);const tN=eN.name;function nN(e){return nN="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},nN(e)}function rN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function oN(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?rN(Object(n),!0).forEach((function(t){iN(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):rN(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function iN(e,t,n){return(t=gN(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function aN(){aN=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==nN(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function sN(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function cN(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){sN(i,r,o,a,s,"next",e)}function s(e){sN(i,r,o,a,s,"throw",e)}a(void 0)}))}}function lN(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,gN(r.key),r)}}function gN(e){var t=function(e,t){if("object"!==nN(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==nN(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===nN(t)?t:String(t)}var uN=angular.module("hub-components.team-tab.toolbar",[mw,ww,hm]),dN=function(){function e(t,n,r,o,i,a,s){var c=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.$inject={$q:t,$route:n,i18n:r,dialog:o,hubBulkOperation:i,$element:a,userPermissions:s},this.listController=a.controller("projectTeamTab"),this.projectId=this.listController.project.id,this.selection=(0,yg.Z)((function(){return c.listController.selection})),this.datasource=this.listController.datasource,this.projectroles=[],s.bindVariable(this,"canReadProjectRoles","jetbrains.jetpass.project-read &amp; jetbrains.jetpass.role-read",this.projectId),s.bindVariable(this,"canUpdateProjectRoles","jetbrains.jetpass.project-update",this.projectId),this.reloadRoles()}return e.$inject=["$q","$route","i18n","dialog","hubBulkOperation","$element","userPermissions"],t=e,r=[{key:"reloadRoles",value:(a=cN(aN().mark((function e(){var t;return aN().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.datasource.getProjectRoles({id:this.projectId});case 2:t=e.sent,this.projectroles=t.projectroles||[];case 4:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"rolesList",get:function(){return this.projectroles.map((function(e){return e.role.name})).join(", ")}},{key:"changeRoles",value:function(){var e=this,t=this.$inject,r=t.$q,o=t.hubBulkOperation,i=t.dialog,a=t.i18n,s=this.projectroles.map((function(e){return e.role.id})),c=s.map((function(e){return"not id: ".concat(e)})).join(" and ");nm.startChangingOfTeamRoles();var l={roles:this.projectroles.map((function(e){return{id:e.role.id,name:e.role.name}})),source:function(){var t=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:"";return c&amp;&amp;(t=t?"".concat(t," and ").concat(c):c),e.datasource.getRoles({query:t}).then((function(e){return(e.roles||[]).map((function(e){return{key:e.id,label:e.name}}))}))}};return i.show({title:a("Edit Team Roles"),data:l,trapFocus:!1,template:n(66138),buttons:[{label:a("Save"),default:!0,action:function(t){var n=t.roles.map((function(e){return e.id})),i=n.filter((function(e){return-1===s.indexOf(e)})),a=e.projectroles.filter((function(e){return-1===n.indexOf(e.role.id)}));return r.all({add:o.withoutReporter(i,(function(t){return e.datasource.grantRoleToProject({id:e.projectId,data:{project:{id:e.projectId},role:{id:t}}})})),remove:o.withoutReporter(a,(function(t){return e.datasource.revokeRoleFromProject({id:e.projectId,roleId:t.id})}))}).then((function(){return e.reloadRoles()})).then((function(){return nm.finishChangingOfTeamRoles()}))}},{label:a("Cancel"),close:!0}]})}},{key:"addToTeam",value:(i=cN(aN().mark((function e(){var t,r,o,i,a,s=this;return aN().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.$inject,r=t.i18n,o=t.dialog,i=t.hubBulkOperation,nm.startAddingTeamMembers(),!this.listController.onAddMembersClick){e.next=5;break}return this.listController.onAddMembersClick(),e.abrupt("return");case 5:return e.next=7,this.datasource.getProjectTeam({id:this.projectId,fields:"id,name,type,project(name)"});case 7:return a=e.sent,e.abrupt("return",o.show({title:r("Add Team Members"),data:{members:[],usersQuery:"not is:guest and not team: {".concat(a.project.name,"} and not type: Reporter"),groupsQuery:"not team: {".concat(a.project.name,"}"),roles:this.rolesList,rolesNum:this.projectroles.length,datasource:this.datasource},trapFocus:!1,template:n(16589),buttons:[{label:r("Add"),default:!0,action:function(e){var t=e.members;return i.withoutReporter(t,(function(e){return("userGroup"===e.type?s.datasource.addGroupToTeam:s.datasource.addUserToTeam)({id:s.projectId,data:{id:e.id,type:e.type}})})).then((function(){nm.finishAddingTeamMembers(t.length),s.listController.load()}))}},{label:r("Cancel"),close:!0}]}));case 9:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"isRemovableItem",value:function(e){return e._group||e._user&amp;&amp;e._user.teamOwnUser}},{key:"isRemoveAvailable",value:function(){return this.selection.items.some(this.isRemovableItem.bind(this))}},{key:"removeFromTeam",value:(o=cN(aN().mark((function e(){var t,r,o,i,a,s,c,l,g,u,d,p=this;return aN().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t="WHOLE_GROUP",r="KEEP_USERS",o=this.$inject,i=o.hubBulkOperation,a=o.dialog,s=o.i18n,nm.startRemovingTeamMembers(),c=this.selection.items.filter(this.isRemovableItem.bind(this)),l=c.filter((function(e){return e._group})).map((function(e){return oN(oN({},e._group),{},{usersNum:e.items.length})})),g=c.filter((function(e){return!e._group})).map((function(e){return e._user||e})),u=l.some((function(e){return e.usersNum})),d=[{label:s("Remove"),default:!0,action:function(e){var t=e.option;return i.withoutReporter(c,(function(e){return e._group?p.datasource.removeGroupFromTeam({id:p.projectId,groupId:e._group.id,keepUsers:t===r}):p.datasource.removeUserFromTeam({id:p.projectId,userId:e._user.id})})).then((function(){p.listController.load(),nm.finishRemovingTeamMembers(c.length)}))}},{label:s("Cancel"),close:!0}],e.next=11,a.show({title:s("Remove from Team"),data:{WHOLE_GROUP:t,KEEP_USERS:r,groups:l,users:g,hasNonEmptyGroups:u,option:t,groupingState:this.listController.groupingState},trapFocus:!1,template:n(60326),buttons:d});case 11:case"end":return e.stop()}}),e,this)}))),function(){return o.apply(this,arguments)})},{key:"getSelectedUsers",value:function(){return this.selection.items.filter((function(e){return e._user})).map((function(e){return e._user}))}}],r&amp;&amp;lN(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,r,o,i,a}();uN.controller("ProjectTeamToolbarController",dN);const pN=uN.name;var AN=n(43876),CN=n.n(AN),IN=n(61573),fN=n.n(IN),mN=n(76982),hN=n.n(mN);function vN(e){return vN="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},vN(e)}function bN(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||SN(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function yN(){yN=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==vN(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function wN(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function _N(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){wN(i,r,o,a,s,"next",e)}function s(e){wN(i,r,o,a,s,"throw",e)}a(void 0)}))}}function jN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function xN(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?jN(Object(n),!0).forEach((function(t){ON(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):jN(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function EN(e){return function(e){if(Array.isArray(e))return TN(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||SN(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function SN(e,t){if(e){if("string"==typeof e)return TN(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?TN(e,t):void 0}}function TN(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function MN(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,PN(r.key),r)}}function LN(e){return LN=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},LN(e)}function kN(e,t){return kN=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},kN(e,t)}function ON(e,t,n){return(t=PN(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function PN(e){var t=function(e,t){if("object"!==vN(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==vN(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===vN(t)?t:String(t)}var NN=angular.module("hub-components.team-tab",[tN,pN,jh,Sh]),DN=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var r=arguments.length,o=new Array(r),s=0;s&lt;r;s++)o[s]=arguments[s];return ON(e=function(e,t,n){return t=LN(t),function(e,t){if(t&amp;&amp;("object"===vN(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],LN(e).constructor):t.apply(e,n))}(this,t,[].concat(o)),"ownUserItems",[]),ON(e,"otherUserItems",[]),ON(e,"usersTotal",0),ON(e,"sidebarTemplate",CN()),ON(e,"toolbarLeftTemplate",fN()),ON(e,"toolbarRightTemplate",hN()),ON(e,"isSidebarShown",!1),ON(e,"teamMemberUsers",[]),ON(e,"orderedOwnUsers",[]),ON(e,"groups",[]),ON(e,"emptyTemplate",n(22984)),ON(e,"defaultEmptyTemplate",n(33436)),ON(e,"defaultBadRequestTemplate",n(45321)),ON(e,"expandedItems",new Set),ON(e,"isItemSelectable",(function(e){return e.selectable})),ON(e,"isItemCollapsed",(function(t){return!e.expandedItems.has(t.id)})),ON(e,"isItemCollapsible",(function(e){return Boolean(e.collapsible&amp;&amp;e.items&amp;&amp;e.items.length)})),ON(e,"selection",new xh.Z({isItemSelectable:e.isItemSelectable,getChildren:function(t){var n=e.isItemCollapsible(t),r=e.isItemCollapsed(t);return n&amp;&amp;r||!t.items?[]:t.items}})),ON(e,"itemFormatter",(function(t){var n=e.$inject.$scope,r=e.isItemCollapsible(t),o=e.isItemCollapsed(t);return xN(xN({},t),{},{collapsible:r,collapsed:o,onCollapse:function(){e.expandedItems.delete(t.id),e.otherUserItems=EN(e.otherUserItems),nm.collapseTeamTabGroup(),n.$applyAsync()},onExpand:function(){e.expandedItems.add(t.id),e.otherUserItems=EN(e.otherUserItems),nm.expandTeamTabGroup(),n.$applyAsync()}})})),ON(e,"onSelect",(function(t){e.selection=t,e.sidebarElement=t.getFocused()})),ON(e,"showLoader",(function(){e.loading=!0,e.$inject.$scope.$applyAsync()})),ON(e,"hideLoader",(function(){e.loading=!1,e.$inject.$scope.$applyAsync()})),ON(e,"toggleSidebar",(function(t){e.isSidebarShown=t,e.$inject.$scope.$evalAsync()})),ON(e,"loadingItems",new Set),ON(e,"itemMoreLessState",(function(t){var n=t._group;if(n){var r;if(e.loadingItems.has(n.id))return lw.H.MORE_LOADING;if((null==n||null===(r=n.users)||void 0===r?void 0:r.length)&lt;n.totalUsers)return lw.H.MORE}return lw.H.UNUSED})),ON(e,"onItemMoreLess",function(){var t=_N(yN().mark((function t(n){var r,o;return yN().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=n._group,o=n._loadMore,e.loadingItems.add(r.id),e.otherUserItems=EN(e.otherUserItems),e.$inject.$scope.$applyAsync(),t.next=6,o();case 6:e.loadingItems.delete(r.id),e.otherUserItems=EN(e.otherUserItems),e.$inject.$scope.$applyAsync();case 9:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),ON(e,"openItemPage",(function(){var t=e.$inject,n=t.$scope,r=t.$location,o=t.$filter,i=e.selection.getFocused();i._group?r.url(o("linkToHub")("groups",i._group.name,i._group.id)):r.url(o("linkToHub")("users",i._user.login,i._user.id)),n.$evalAsync()})),ON(e,"shortcuts",{left:function(){return e.toggleSidebar(!0)},right:function(){return e.toggleSidebar(!1)},enter:e.openItemPage}),ON(e,"_loadMoreUsers",(function(t){var n=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:20;return e.datasource.getUsers({query:Vd(e.queryAssistQuery,"in: ".concat(t.id)),skip:t.users.length,top:n})})),ON(e,"_getOwnUserItems",(function(t){return(t||[]).map((function(t){var n=e._getUserTitle(t,e.projectOwner);return{id:"".concat(t.id,"-ownUser"),_user:xN(xN({},t),{},{projectOwner:t.id===e.projectOwner.id,teamOwnUser:!0}),title:n,selectable:!0,items:[]}}))})),ON(e,"_getGroupsItems",(function(t){return t.map((function(t){var n="".concat(t.id,"-group"),r=function(){return(t.users||[]).map((function(t){var n=e._getUserTitle(t,e.projectOwner);return{id:"".concat(t.id,"-groupUser"),_user:t,title:n}}))},o=function(){var o=_N(yN().mark((function o(){var i;return yN().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:return i=[],o.prev=1,o.next=4,e._loadMoreUsers(t);case 4:if(o.t1=o.sent,o.t1){o.next=7;break}o.t1={};case 7:if(o.t0=o.t1.users,o.t0){o.next=10;break}o.t0=[];case 10:i=o.t0,o.next=16;break;case 13:return o.prev=13,o.t2=o.catch(1),o.abrupt("return");case 16:t.users=[].concat(EN(t.users),EN(i)),e.otherUserItems.find((function(e){return e.id===n})).items=r();case 19:case"end":return o.stop()}}),o,null,[[1,13]])})));return function(){return o.apply(this,arguments)}}();return{id:n,_group:t,_loadMore:o,title:e._getGroupTitle(t),selectable:!0,collapsible:!0,items:r()}}))})),ON(e,"_getOtherUsersItems",(function(t){return t.map((function(t){var n=e._getUserTitle(t,e.projectOwner,!0);return{id:"".concat(t.id,"-otherUser"),_user:xN({},t),title:n,selectable:t.teamOwnUser,items:[]}}))})),ON(e,"_loadOwnUsers",(function(t){var n=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:0;return e.datasource.getProjectTeamOwnUsers({id:e.projectId,query:e.queryAssistQuery,top:t,skip:n})})),ON(e,"load",_N(yN().mark((function t(){var n,r,o,i,a,s,c,l,g,u,d,p,A,C,I,f,m,h,v,b,y;return yN().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.$inject.$location,r=n.search(),e.ownUserItems=[],e.otherUserItems=[],e.showLoader(),e.error=null,e.queryAssistQuery=r.query||"",e.teamMemberUsers=[],o=(e.pager.currentPage-1)*e.pager.pageSize,i={},a={},s=0,t.prev=12,t.next=15,Promise.all([e.datasource.getProject({id:e.projectId,fields:"owner/id"}),e.datasource.getProjectTeam({id:e.projectId,fields:"id,name,type"}),e.datasource.getProjectTeamUsers({id:e.projectId,query:e.queryAssistQuery,top:e.pager.pageSize,skip:o})]);case 15:c=t.sent,l=bN(c,3),i=l[0],a=l[1],g=l[2],s=g.total,e.teamMemberUsers=g.users,t.next=29;break;case 24:return t.prev=24,t.t0=t.catch(12),e.error=t.t0,e.hideLoader(),t.abrupt("return");case 29:if(e.updateCounter(s),e.teamId=a.id,e.projectOwner={},i.owner&amp;&amp;(e.projectOwner=xN({},i.owner)),!e.groupingState){t.next=84;break}return u=20,d=[],p=0,e.groups=[],t.prev=38,t.next=41,Promise.all([e._loadOwnUsers(u,0),e.datasource.getProjectTeamGroups({id:e.projectId,top:u})]);case 41:A=t.sent,C=bN(A,2),I=C[0],d=I.ownUsers,p=I.total,e.groups=C[1].groups,t.next=54;break;case 49:return t.prev=49,t.t1=t.catch(38),e.error=t.t1,e.hideLoader(),t.abrupt("return");case 54:e.orderedOwnUsers=[].concat(EN((d||[]).filter((function(t){return t.id===e.projectOwner.id}))),EN((d||[]).filter((function(t){return t.id!==e.projectOwner.id})))),e.totalOwnUsers=p,e.loadMoreOwnUsers=_N(yN().mark((function t(){var n,r;return yN().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e.loadingMore=!0,n=[],t.prev=2,t.next=5,e._loadOwnUsers(u,e.ownUserItems.length);case 5:if(t.t1=t.sent,t.t1){t.next=8;break}t.t1={};case 8:if(t.t0=t.t1.ownUsers,t.t0){t.next=11;break}t.t0=[];case 11:n=t.t0,t.next=18;break;case 14:return t.prev=14,t.t2=t.catch(2),e.loadingMore=!1,t.abrupt("return");case 18:r=e._getOwnUserItems(n),e.ownUserItems=[].concat(EN(e.ownUserItems),EN(r)),e.loadingMore=!1,e.$inject.$scope.$applyAsync();case 22:case"end":return t.stop()}}),t,null,[[2,14]])}))),e.loadeMorePageSize=u,t.prev=58,f=0;case 60:if(!(f&lt;e.groups.length)){t.next=73;break}return(m=e.groups[f]).users=[],t.next=65,e._loadMoreUsers(m);case 65:h=t.sent,v=h.users,b=h.total,m.totalUsers=b,m.users=v;case 70:f++,t.next=60;break;case 73:t.next=80;break;case 75:return t.prev=75,t.t2=t.catch(58),e.error=t.t2,e.hideLoader(),t.abrupt("return");case 80:e.ownUserItems=e._getOwnUserItems(e.orderedOwnUsers),e.otherUserItems=e._getGroupsItems(e.groups),t.next=89;break;case 84:if(y=Math.ceil(s/e.pager.pageSize)+1,!(e.pager.currentPage&gt;y)){t.next=88;break}return e.pager.onPageChange(y),t.abrupt("return");case 88:e.otherUserItems=e._getOtherUsersItems(e.teamMemberUsers);case 89:e.selection=e.selection.cloneWith({data:[].concat(EN(e.ownUserItems),EN(e.otherUserItems))}),e.hideLoader();case 91:case"end":return t.stop()}}),t,null,[[12,24],[38,49],[58,75]])})))),ON(e,"rerenderMembersCollections",(function(){e.groupingState?(e.ownUserItems=e._getOwnUserItems(e.orderedOwnUsers),e.otherUserItems=e._getGroupsItems(e.groups)):e.otherUserItems=e._getOtherUsersItems(e.teamMemberUsers),e.selection=e.selection.cloneWith({data:[].concat(EN(e.ownUserItems),EN(e.otherUserItems))})})),ON(e,"updateCounter",(function(t){e.counters&amp;&amp;(e.counters.teamMembers=t),e.usersTotal=t})),ON(e,"_getUserTitle",(function(t){var n=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:{},r=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]&amp;&amp;arguments[2];t.teamGroups=t.teamGroups||[];var o,s=e.$inject,c=s.i18n,l=s.$filter,g=n&amp;&amp;t.id===n.id,u=l("linkToHub")("users",t.login,t.id),d=e.getUserAdditionalComponents&amp;&amp;e.getUserAdditionalComponents(t)||[],p=i.createElement(YI.Z,null,i.createElement(Ff,{user:t,i18n:c},i.createElement(YI.Z,null,i.createElement(ZI.Z,{style:{verticalAlign:"middle"},url:t.profile.avatar.url,size:ZI.$.Size20}),i.createElement(a.Z,{className:"team-tab__user-link",href:u},t.name))),i.createElement("span",{className:"team-tab__badges"},g&amp;&amp;i.createElement(io.Z,null,c("project owner")),!g&amp;&amp;t.teamOwnUser&amp;&amp;t.teamGroups.length&gt;0&amp;&amp;i.createElement(io.Z,null,c("duplicated")),d.length&gt;0&amp;&amp;d,t.banned&amp;&amp;i.createElement(io.Z,{invalid:!0},t.banBadge?t.banBadge:c("banned")),r&amp;&amp;("",o=t.teamOwnUser&amp;&amp;t.teamGroups.length?c("Direct assignment, member of"):t.teamOwnUser&amp;&amp;!t.teamGroups.length?c("Direct assignment"):c("Member of"),i.createElement("span",{style:{color:"#999",position:"absolute",left:"30%"}},i.createElement("span",null,o," ",function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:[];return e.map((function(t,n){return i.createElement("span",{key:t.id},i.createElement(a.Z,{href:l("linkToHub")("groups",t.name,t.id)},t.name),n&lt;e.length-1?", ":"")}))}(t.teamGroups))))));return p})),ON(e,"_getGroupTitle",(function(t){var n=e.$inject,r=n.i18n,o=n.hubI18nPlural,s=n.$filter,c=t.userCount,l=t.totalUsers,g=e.getGroupAdditionalComponent&amp;&amp;e.getGroupAdditionalComponent(t),u=!!g;return i.createElement("span",null,l!==c&amp;&amp;r("{{totalUsers}} of ",{totalUsers:l}),o.format("members-of-a-group",c,{userCount:c}),i.createElement("span",null," "),i.createElement(a.Z,{href:s("linkToHub")("groups",t.name,t.id)},t.name),i.createElement("span",null,u?",":""),u&amp;&amp;g,t.autoJoin&amp;&amp;i.createElement(io.Z,{style:{marginLeft:"8px"}},r("auto-join")))})),ON(e,"isEmptyTeam",(function(){return!(e.loading||e.groups.length&gt;0||e.ownUserItems.length&gt;0||e.otherUserItems.length&gt;0&amp;&amp;(!e.groupingState||!(e.otherUserItems.filter((function(e){return e.items.length&gt;0})).length&gt;0)))})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;kN(e,t)}(t,e),r=t,o=[{key:"$postLink",value:function(){var e=this,t=this.$inject,n=t.$scope,r=t.hubSidebarStateStorage;n.$on("$locationChangeSuccess",this.load),n.$watch("$ctrl.counters",(function(t){e.counters&amp;&amp;((t||{}).teamMembers===(e.counters||{}).teamMembers?e.rerenderMembersCollections():e.load())})),this.projectId=this.project.id,this.organizationId=(this.project.organization||{}).id,this.initPager(),this.load(),this.setCtrl&amp;&amp;this.setCtrl(this),r.read().then((function(t){e.isSidebarShown=t})),this.queryAssistDatasource=function(){for(var t,n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return(t=e.datasource).getQueryAssistSuggestions.apply(t,["users"].concat(r))},n.$watch((function(){return e.isSidebarShown}),(function(e){void 0!==e&amp;&amp;r.store(e)}))}},{key:"initPager",value:function(){var e=this,t=this.$inject.$location,n=t.search(),r=+n.page||1,o=+n.top||50;this.pager={currentPage:r,pageSize:o,onPageChange:function(n){e.pager.currentPage=n,t.search("page",n)},onPageSizeChange:function(n){e.pager.pageSize=n,t.search("top",n)}}}},{key:"setGrouping",value:function(e){var t=this.$inject.$location;this.sidebarElement=null,e?(t.search("mode",void 0),t.search("page",void 0),t.search("top",void 0)):t.search("mode","plain"),nm.toggleTeamTabGrouping(e)}},{key:"groupingState",get:function(){return!this.$inject.$location.search().mode}},{key:"sortByName",value:function(e,t){return e.name.localeCompare(t.name)}}],o&amp;&amp;MN(r.prototype,o),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,o}(p);ON(DN,"$inject",["$location","$scope","i18n","hubI18nPlural","hubSidebarStateStorage","$filter"]),ON(DN,"bindings",{project:"=",datasource:"=",counters:"=",getUserAdditionalComponents:"&lt;?",getGroupAdditionalComponent:"&lt;?",getToolbarAdditionalComponentsSettings:"&lt;?",getToolbarAdditionalDescription:"&lt;?",onAddMembersClick:"&lt;?",setCtrl:"&lt;?"}),ON(DN,"template",n(98319)),NN.component("projectTeamTab",DN);const RN=NN.name,UN=angular.module("HUB.project-page.team",[BC,vd,RN]).name;function zN(e){return zN="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},zN(e)}function $N(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,FN(r.key),r)}}function GN(e,t,n){return t&amp;&amp;$N(e.prototype,t),n&amp;&amp;$N(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function BN(e,t,n){return(t=FN(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function FN(e){var t=function(e,t){if("object"!==zN(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==zN(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===zN(t)?t:String(t)}var ZN=angular.module("HUB.project-page.resources",[]),YN=GN((function e(t,r,o,s,c,l,g,u,d,p,A,C,I,f,m,h,v){var b=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),BN(this,"resourcesSidebarTemplate",n(62642)),BN(this,"resourcesEmptyTemplate",n(24253)),BN(this,"isUpdatable",!1);var y=this.projectId=o.current.locals.projectId;this.global=o.current.scope.$ctrl.project.global;var w=null;I.requestHostService().then((function(e){w=e?e.id:null})),h.check("(project-read | project-read-basic) &amp; project-update",y).then((function(e){b.isUpdatable=e,v.$applyAsync()})),this.columns=[{id:"name",sortable:!0,title:p("Resource"),getValue:function(e){var t=e.type,n=e.name,r=e.homeUrl,o=e.service;return i.createElement("span",null,f(t),": ",i.createElement(a.Z,{href:r},n),w!==o.id&amp;&amp;i.createElement(da.ZP,{glyph:JL(),size:da.ZP.Size.Size12,style:{marginLeft:"4px",color:"#1866C5"}}))}},{id:"service",title:p("Service"),sortable:!0,getValue:function(e){var t=e.service,n=t.applicationName,r=t.id,o=t.name,s=t.key;return i.createElement("span",null,m(n),": ",b.canReadService&amp;&amp;i.createElement(a.Z,{href:"services/".concat(CC(s,r))},o),!b.canReadService&amp;&amp;o)}}]}));BN(YN,"$inject",["$element","$q","$route","hubBulkOperation","ResourceResource","ProjectResource","ProjectResourceResource","hubNotify","dialog","i18n","HubPluralMessageBundle","SelectOptionsResource","HostServiceInfo","getReadableResourceType","getServiceFunction","userPermissions","$scope"]),ZN.controller("ProjectResourcesCtrl",YN);const WN=ZN.name;function HN(e){return HN="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},HN(e)}function qN(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return QN(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?QN(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function QN(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function VN(){VN=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==HN(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function KN(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function JN(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){KN(i,r,o,a,s,"next",e)}function s(e){KN(i,r,o,a,s,"throw",e)}a(void 0)}))}}function XN(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,rD(r.key),r)}}function eD(e,t,n){return t&amp;&amp;XN(e.prototype,t),n&amp;&amp;XN(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function tD(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function nD(e,t,n){return(t=rD(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function rD(e){var t=function(e,t){if("object"!==HN(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==HN(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===HN(t)?t:String(t)}var oD=angular.module("HUB.project-page",[Vk,_w,zm,WN,UN,DP,UP,qk]),iD=eD((function e(t,r,o,i,a,s,c,l,g,u,d,p,A,C,I,f,m,h){var v=this;if(tD(this,e),nD(this,"counters",{totalResources:0,teamCounters:{teamMembers:0}}),nD(this,"isTeamTabAvailable",!1),nD(this,"isAccessTabAvailable",!1),nD(this,"onSelectAvatar",(function(e){return v.project.defaultIcon=""===e,!0})),nD(this,"setCounters",JN(VN().mark((function e(){var t,n,r,o,i,a,s,c;return VN().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=v.$inject,n=t.$scope,r=t.hubFeatures,e.next=3,v.project.$promise;case 3:return o=e.sent,i=o.resources,a=o.team,s=(i||[]).length,c=a?a.userCount:0,v.counters={totalResources:s,teamCounters:{teamMembers:c}},e.next=11,r.isEnabled("jetbrains.hub.organizations.hide");case 11:v.areOrganizationsHidden=e.sent,n.$applyAsync();case 13:case"end":return e.stop()}}),e)})))),nD(this,"checkPermissions",JN(VN().mark((function e(){var t,n,r,o,i,a,s;return VN().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=v.$inject,n=t.userPermissions,r=t.$scope,e.next=3,Promise.all([v.project.$promise,n.load()]);case 3:o=e.sent,i=qN(o,2),a=i[0],s=i[1],!a.global&amp;&amp;s.has("(project-read | project-read-basic) &amp; (user-read | user-read-basic)",v.projectId)&amp;&amp;(v.isTeamTabAvailable=!0),s.has("project-read &amp; (user-read | user-read-basic) &amp; role-read",v.projectId)&amp;&amp;(v.isAccessTabAvailable=!0),r.$applyAsync();case 10:case"end":return e.stop()}}),e)})))),nD(this,"delete",(function(){var e=v.$inject,t=e.dialog,r=e.i18n,o=e.SelectOptionsResource,i=e.ProjectResource,a=e.$location;return t.show({title:r("Delete project"),template:n(67289),data:{successor:v.globalProject,projectData:o.projectsDatasourceFactory((function(e){return e?"".concat(e," and not id: ").concat(v.projectId):"not id: ".concat(v.projectId)}))},buttons:[{label:r("Delete"),default:!0,close:!0,action:function(e){return i.remove({id:v.projectId,successor:e.successor.id}).$promise.then((function(){a.url("projects")}))}},{label:r("Cancel")}]})})),nD(this,"getDefaultProjectLogoURL",(function(){return"".concat(v.$inject.backendUri,"/projects/").concat(v.project.id,"/icon?default=true")})),nD(this,"clearOrganizationIfNeeded",(function(e,t){if(null===e.organization&amp;&amp;angular.isObject(t.organization))return v.$inject.ProjectOrganizationResource.delete({id:t.id}).$promise})),this.$inject={$scope:t,projectId:r,$http:o,$route:i,$location:a,backendUri:s,dialog:c,i18n:l,ProjectResource:g,pageTitle:u,userPermissions:d,SelectOptionsResource:p,auth:A,gettextCatalog:C,hubResourceCreate:I,OrganizationResource:f,ProjectOrganizationResource:m,hubFeatures:h},r){this.settingsTemplate=n(18687),this.resourcesTemplate=n(56862),this.projectId=r,g.global().$promise.then((function(e){v.globalProject={id:e.id,name:e.name}})),this.project=g.get({id:r,fields:"id,key,name,description,archived,iconUrl,defaultIcon,global,owner(id,name),projectType(id,name),resources/total,team/userCount,transitiveProjectRoles(id,project/id),team(id),organization(id,name)"}),this.project.id=this.projectId,u.addElement(this.project),d.bindVariable(this,"updatable","project-update",this.projectId),d.bindVariable(this,"canReadService","low-level-read",this.projectId),this.getUsers=p.userAndGroupItemsFactory(!0,!1,[p.usersQueryWithoutGuestFn]),this.projectTypes=["HELPDESK","DEFAULT"].map((function(e){return{id:e,name:e}})),this.checkPermissions(),this.setCounters(),this.datasource=new mA(A.auth,l,C,h);var b=p.organizationsDatasourceFactory(angular.noop);this.organizationsDataSource=function(){return b().then((function(e){return e.map((function(e){return{id:e.id,name:e.name}}))}))},this.organizationsSelectConfig={clear:!0,label:l("Unassigned"),filter:!0}}else this.project={error:{status:404}}}));nD(iD,"$inject",["$scope","projectId","$http","$route","$location","backendUri","dialog","i18n","ProjectResource","pageTitle","userPermissions","SelectOptionsResource","auth","gettextCatalog","hubResourceCreate","OrganizationResource","ProjectOrganizationResource","hubFeatures"]);var aD=function(){function e(t,n){tD(this,e),this.$inject={ProjectResource:t,hubBulkOperation:n}}return e.$inject=["ProjectResource","hubBulkOperation"],eD(e,[{key:"archive",value:function(e,t){var n=this.$inject,r=n.ProjectResource;return n.hubBulkOperation.withoutReporter(e,(function(e){return r.save({id:e.id},{archived:t},(function(){e.archived=t})).$promise}))}}])}();oD.controller("ProjectCtrl",iD),oD.controller("ProjectToolbarCtrl",aD);const sD=oD.name;var cD=n(20997),lD=n(85990),gD=angular.module("HUB.event-changes.messages",[]);gD.service("eventChangesMessages",["i18n",function(e){var t={Remove:e("Remove",null,"AuditEvents"),Create:e("Create",null,"AuditEvents"),Update:e("Update",null,"AuditEvents")},n={User:e("User"),UserGroup:e("User group"),Project:e("Project"),ProjectTeam:e("ProjectTeam"),Service:e("Service"),Resource:e("Resource"),Role:e("Role"),ProjectRole:e("Project role"),LicenseSettings:e("License settings"),Dashboard:e("Dashboard"),DashboardPermission:e("Dashboard permission"),UserDashboard:e("User's dashboard"),LoginUserDetails:e("User's login details"),Settings:e("Settings"),PublicSettings:e("Public settings"),BackupSettings:e("Backup settings"),ScopedFeature:e("Scoped feature"),SMTPSettings:e("SMTP Settings"),CoreAuthModule:e("Core auth module"),Widget:e("Widget")};this.getEventTypeLabel=function(e){return t[e]||e},this.getEntityTypeLabel=function(e){return n[e]||e}}]);const uD=gD.name;function dD(e){return dD="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},dD(e)}function pD(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function AD(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?pD(Object(n),!0).forEach((function(t){CD(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):pD(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function CD(e,t,n){return(t=fD(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ID(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,fD(r.key),r)}}function fD(e){var t=function(e,t){if("object"!==dD(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==dD(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===dD(t)?t:String(t)}function mD(e,t,n,r){this.name=e,this.title=t,this.type=n,this.id=r}var hD=function(){return e=function e(t,n,r){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.offset=n,this.name=r.getEntityTypeLabel(t.fieldName)||t.fieldName,this.nameTitle=t.fieldType,this.type=t.fieldType,this.added=[],this.removed=[],this.aggregation="AggregationChangeJSON"===t.type,"PrimitiveChangeJSON"===t.type){var o=t.newValue;o&amp;&amp;this.added.push(new mD(o,o));var i=t.oldValue;i&amp;&amp;this.removed.push(new mD(i,i))}else if("LinkChangeJSON"===t.type){var a=function(e){return new mD(e.presentation||e.id,e.id||e.presentation,t.fieldType,e.id)};t.added&amp;&amp;(this.added=t.added.map(a)),t.removed&amp;&amp;(this.removed=t.removed.map(a))}},(t=[{key:"isEmpty",value:function(){return!this.aggregation||0===this.added.length&amp;&amp;0===this.removed.length}},{key:"isSingle",value:function(){return 1===this.added.length&amp;&amp;1===this.removed.length}}])&amp;&amp;ID(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}(),vD=angular.module("HUB.directives.event-changes",[uD]);vD.component("eventChanges",{template:n(87052),bindings:{event:"&lt;"},controller:["dateFilter","eventChangesMessages",function(e,t){var n=this;this.$onChanges=function(r){function o(t){return"DateTime"===t.fieldType||"instant"===t.fieldType?AD(AD({},t),{},{oldValue:e(t.oldValue,"medium"),newValue:e(t.newValue,"medium")}):t}n.lines=[],function e(r,i){i&amp;&amp;i.sort((function(e,t){return e.fieldName.localeCompare(t.fieldName)})).map(o).forEach((function(o){n.lines.push(new hD(o,r,t)),"AggregationChangeJSON"===o.type&amp;&amp;e(r+1,o.childChanges)}))}(0,r.event.currentValue.changes)}}]}),vD.component("eventChangeValue",{template:n(46053),bindings:{value:"&lt;"}});const bD=vD.name;function yD(e){return yD="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},yD(e)}function wD(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function _D(){_D=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==yD(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function jD(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function xD(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?jD(Object(n),!0).forEach((function(t){ED(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):jD(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ED(e,t,n){return t=function(e){var t=function(e,t){if("object"!==yD(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==yD(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===yD(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function SD(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function TD(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){SD(i,r,o,a,s,"next",e)}function s(e){SD(i,r,o,a,s,"throw",e)}a(void 0)}))}}var MD="User",LD="UserGroup",kD="Project",OD="ProjectTeam",PD={};[{href:"users",entityTypes:[MD]},{href:"groups",entityTypes:[LD]},{href:"projects",entityTypes:[kD]},{onClick:["$location","$filter","TeamResource","targetId",function(e,t,n,r){return n.get({id:r,fields:"project/name"}).$promise.then((function(n){return e.path(t("linkToHub")("projects-administration",n.project.name,n.project.id)).search("tab","team")}))}],href:"projects-administration",query:"tab=team",entityTypes:[OD]},{href:"services",entityTypes:["Service"]},{href:"roles",entityTypes:["Role"]},{href:"widgets",entityTypes:["Widget"]},{href:"authmodules",entityTypes:["AuthModule","CoreAuthModule","JBAOauthAuthModule","JiraAuthModule","LdapAuthModule","OpenIDAuthModule","GuestAuthModule","GoogleAuthModule","GithubAuthModule","OAuth2AuthModule","OktaAuthModule","AzureAuthModule"]},{href:"licenses",entityTypes:["LicenseSettings"]},{href:"settings",entityTypes:["Settings","PublicSettings","BackupSettings","SMTPSettings"]},{href:"backup",query:"id=:id",entityTypes:["BackupSettings"]}].forEach((function(e){e.createReactLink=function(t,n,r,o){var s=arguments.length&gt;4&amp;&amp;void 0!==arguments[4]&amp;&amp;arguments[4],c=t.get("$filter"),l=o===MD,g=[MD,LD,kD].includes(o)&amp;&amp;!s?r.trim():"",u="backup"===e.href?c("linkToHub")("",""):e.href&amp;&amp;c("linkToHub")(e.href,g,n),d=(e.query?"?".concat(e.query):"").replace(":id",n),p=e.onClick&amp;&amp;!s,A={href:p?void 0:"".concat(u).concat(d),onClick:p?function(){return t.invoke(e.onClick,null,{targetId:n})}:void 0},C=i.createElement(a.Z,A,r);if(!l)return C;var I=(0,lD.B)(t.get("auth").auth,n);return i.createElement(cD.Z,{userDataSource:I},C)},e.entityTypes.forEach((function(t){PD[t]=e}))}));var ND=angular.module("HUB.event-list",[bD,ry]);ND.controller("EventsCtrl",["$injector","downloadEvents","$routeParams","dateFilter","i18n","eventChangesMessages","$scope","TeamResource","$q",function(e,t,r,o,s,c,l,g,u){var d=this,p=function(){return[{id:"timestamp",title:s("Timestamp"),sortable:!0,getValue:function(e){var t=e.id,n=e.timestamp;return i.createElement(a.Z,{href:"events/".concat(t)},o(n,"yyyy-MM-dd HH:mm:ss.sss"))}},{id:"type",title:s("Event"),getValue:function(e){var t=e.type;return c.getEventTypeLabel(t)}},{id:"target",title:s("Target"),getValue:function(t){var n=t.targetId,r=t.targetType,o=t.targetPresentation,a=t.type,s=PD[r],l=((d.parentEntitiesInfo||[]).filter((function(e){return e.targetId===n}))[0]||{}).parentTargetId;return i.createElement(vi.Z,null,i.createElement(vi.Z,null,c.getEntityTypeLabel(r),": "),s&amp;&amp;"Remove"!==a?s.createReactLink(e,l||n,o,r,!!l):i.createElement(vi.Z,null,o))}},{id:"author",title:s("Author"),getValue:function(t){var n=t.author,r=t.authorType,o=t.authorPresentation,a=PD[r];return i.createElement(vi.Z,null,i.createElement(vi.Z,null,c.getEntityTypeLabel(r),": "),a?a.createReactLink(e,n,o,r,r===MD):o)}}]};this.toolbarTemplate=n(72958),this.sidebarTemplate=n(76977),this.orderByQuery="timestamp:desc",this.columns=p(),this.parentEntitiesInfo=[],this.download=function(){d.downloading=!0,t({query:r.query}).then((function(e){setTimeout((function(){(0,KI.saveAs)(e,"events.json")}),0),d.downloading=!1}),(function(){d.downloading=!1}))},l.$watch("data",TD(_D().mark((function e(){var t,n,r,o;return _D().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((t=(l.data||{}).items)&amp;&amp;t.length){e.next=3;break}return e.abrupt("return");case 3:return n=d.parentEntitiesInfo||[],r=t.filter((function(e){return e.targetType===OD})),o=r.filter((function(e,t){return r.findIndex((function(t){return e.targetId===t.targetId}))===t&amp;&amp;!n.some((function(t){return t.targetId===e.targetId}))})).slice(0,10),e.next=8,u.all(o.map((function(e){return g.get({id:e.targetId,fields:"project/id"}).$promise.then((function(t){return xD({parentTargetId:t.project.id},e)}))})));case 8:d.parentEntitiesInfo=e.sent.concat(n),d.parentEntitiesInfo.length!==n.length&amp;&amp;l.$applyAsync((function(){d.columns=p()}));case 10:case"end":return e.stop()}}),e)}))))}]),ND.directive("hubLegacyHref",["$parse","$injector",function(e,t){return{transclude:"element",priority:600,terminal:!0,restrict:"A",link:function(n,r,o,i,a){var s,c,l=o.hubLegacyHref,g=l.split(/\s+\/\s+/);if(g.length&lt;2)throw new Error("Invalid attribute hubLegacyHref:".concat(l));var u=g[1].split("."),d=u[0],p="targetId"===u[1]&amp;&amp;e(d);n.$watchGroup([e(g[0]),e(g[1]),p],(function(e){var n=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return wD(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?wD(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(e,3),o=n[0],i=n[1],l=n[2];a((function(e,n){s&amp;&amp;s.remove(),c&amp;&amp;c.$destroy(),c=n;var a=PD[o],g=e;g=function(e,t,n){return n&amp;&amp;i&amp;&amp;"Remove"!==t?"Project"===o?e.wrap('&lt;a href="projects/'.concat(encodeURIComponent(i),'" class="ring-link"&gt;&lt;/a&gt;')).parent():"backup"===n.href?e.wrap("&lt;a ".concat(n.href?'href="'.concat(n.href,"?id=").concat(encodeURIComponent(i),'"'):"",' class="ring-link"&gt;&lt;/a&gt;')).parent():e.wrap("&lt;a ".concat(n.href?'href="'.concat(n.href,"/").concat(encodeURIComponent(i),'"'):"",' class="ring-link"&gt;&lt;/a&gt;')).parent():e}(e,l&amp;&amp;i!==l&amp;&amp;l.type,a),a&amp;&amp;a.onClick&amp;&amp;g.on("click",(function(){return t.invoke(a.onClick,null,{targetId:i})})),s=g,r.after(g)}))}))}}}]),ND.controller("EventListSidebarCtrl",["eventChangesMessages",function(e){this.getEventTypeLabel=function(t){return e.getEventTypeLabel(t)},this.getEntityTypeLabel=function(t){return e.getEntityTypeLabel(t)}}]);const DD=ND.name;var RD=angular.module("HUB.profile-attribute-list",[]),UD=["Text","Number","Phone","Email","Password"];RD.controller("ProfileAttributesCtrl",["$routeParams","i18n",function(e,t){this.toolbarTemplate=n(10805),this.sidebarTemplate=n(6721),this.orderByQuery="name:asc",this.columns=[{id:"name",title:t("Name"),sortable:!0,getValue:function(e){var t=e.name,n=e.id;return i.createElement(a.Z,{href:"user-profile-attributes/".concat(n)},t)}},{id:"type",sortable:!0,title:t("Type"),getValue:function(e){var t=e.type;return i.createElement("span",null,t)}}]}]),RD.controller("ProfileAttributesDeleteCtrl",["$element","$scope","ProfileAttributeResource","hubBulkOperation","HubPluralMessageBundle","$location","hubNotify","i18n",function(e,t,n,r,o,i,a,s){var c=e.controller("hubResource"),l=function(e,t){var i=function(e){return n.remove({id:e.id}).$promise};return a.confirm({label:o["custom-attributes?"](e.length,e[0]),description:o["custom-attributes-description"](e.length,e[0]),okButtonLabel:s("Delete"),actionPromise:function(){return r.withAlertReporter(e,i,{success:o["custom-attributes-success-delete"]}).then(t)}})};this.one=function(e){l([e],(function(){return i.path("/user-profile-attributes")}))},this.remove=function(e){return l(e,(function(){return c.refresh()}))}}]),RD.controller("ProfileAttributesToolbarCtrl",["$scope","$element",function(e,t){var r=this,o=t.controller("hubResource");this.dialogTemplate=n(62889),this.dialogData={types:UD,item:{}},this.refreshList=function(){o.refresh(),r.dialogData.item={}}}]);const zD=RD.name;var $D=angular.module("HUB.profile-attribute-page",[]);$D.controller("ProfileAttributeCtrl",["$scope","$routeParams","ProfileAttributeResource","pageTitle","getWithQuery",function(e,t,n,r,o){var i=mC(t.id);e.profileAttribute=o(n,"profileattributeprototypes",{query:"id:{".concat(i,"} or name:{").concat(i,"}"),fields:"name,type,id,showOnUserList"}),r.addElement(e.profileAttribute)}]);const GD=$D.name;var BD=angular.module("HUB.event-page",[]);BD.controller("EventCtrl",["$scope","$routeParams","EventResource","pageTitle","userPermissions",function(e,t,n,r,o){o.bindVariable(e,"updatable","group-update"),e.event=n.get({id:t.id,fields:"id,targetId,targetType,targetPresentation,author,authorPresentation,authorType,type,timestamp,changes"},(function(e){e.name="".concat(e.type," ").concat(e.targetPresentation||e.targetType)})),r.addElement(e.event)}]);const FD=BD.name;var ZD=angular.module("HUB.settings-page",[zC,mf]);ZD.controller("SettingsCtrl",["$scope","$route","$q","SettingsResource","SettingsTestResource","i18nCatalog","dialog","i18n","HubErrorMessageBundle","backend","userPermissions","settingsUtils","LocalesService","feature",function(e,t,n,r,o,i,a,s,c,l,g,u,d,p){e.readOnly=!0,u.isReadOnly().then((function(t){e.readOnly=t})),p("jetbrains.jetpass.is_hosted").then((function(t){e.isHosted=t})),p("jetbrains.hub.features.hide").then((function(t){e.showFeatures=!t})),e.backupSettings=e.publicSettings={},p("jetbrains.jetpass.locale.crowdin.incontext.embedded").then((function(t){e.languageSelectorDisabled=t||e.languageSelectorDisabled})),p("jetbrains.jetpass.locale.crowdin.incontext.community").then((function(t){e.languageSelectorDisabled=t||e.languageSelectorDisabled})),e.loaded=!1,u.loadSettings().then((function(t){e.settings=t.settings,e.loaded=!0,e.publicSettings=u.findSetting(t,"public"),e.backupSettings=u.findSetting(t,"BackupSettingsJSON"),e.internalSettings=u.findSetting(t,"internal"),e.items=[e.publicSettings,e.backupSettings,e.internalSettings],e.locales=d.buildList(),e.hostServiceName=e.publicSettings.hostServiceName})),e.reloadIfLocaleChanged=function(e,t){e[0].locale.language!==t[0].locale.language&amp;&amp;window.location.reload()},e.getLocaleDescription=function(e){return e.community?s("community"):""}}]);const YD=ZD.name;function WD(e){return WD="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},WD(e)}function HD(){HD=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==WD(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function qD(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function QD(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){qD(i,r,o,a,s,"next",e)}function s(e){qD(i,r,o,a,s,"throw",e)}a(void 0)}))}}function VD(e){return function(e){if(Array.isArray(e))return KD(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return KD(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?KD(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function KD(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var JD=angular.module("HUB.auth-settings-page.throttling",[jh]);JD.controller("ThrottlingCtrl",["$scope","$location","$timeout","SettingsResource",function(e,t,n,r){var o=this,i=+t.search().page||1;this.blockedKeys=[],this.dataListItems=[];var a=function(){var t=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:[],n=!(arguments.length&gt;1&amp;&amp;void 0!==arguments[1])||arguments[1];o.blockedKeys=n?t:[].concat(VD(o.blockedKeys),VD(t)),o.dataListItems=o.blockedKeys.filter((function(e){return!o.hasKey(e.key)})),e.$evalAsync()},s=function(){var e=QD(HD().mark((function e(){var t,n,s,c,l,g,u=arguments;return HD().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=(t=u.length&gt;0&amp;&amp;void 0!==u[0]&amp;&amp;u[0])?10*(i-1):0,c=i*(s=t?10:10*i)+1,e.next=6,r.get({id:"throttling",fields:"blockedKeys(timeUntilNextCooldown,items[".concat(n,",").concat(c,"](key,description))")}).$promise;case 6:l=e.sent,g=l.blockedKeys.items||[],o.hasNextBlockedKeysPage=g.length&gt;s,a(g.slice(0,s),!t);case 10:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();this.addKeys=function(){var t=e.throttlingSettingsDraft;t.whiteList=[].concat(VD(t.whiteList||[]),VD(VD(o.selection.getActive()).map((function(e){return e.key})))),a(o.blockedKeys),n(o.clearSelection)},this.clearSelection=function(){o.selection=new xh.Z},this.hasKey=function(t){return!t||-1!==(e.throttlingSettingsDraft.whiteList||[]).indexOf(t)},this.onFormReset=function(){a(o.blockedKeys)},this.onFormSave=function(){return s()},this.hasBlockedKeys=function(){return!!(e.throttlingSettings.blockedKeys.items||[]).length},this.onFormReset(),s(),this.loadMore=QD(HD().mark((function e(){return HD().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!o.loadingNext){e.next=2;break}return e.abrupt("return");case 2:return i+=1,t.replace(),t.search("page",i),o.loadingNext=!0,e.next=8,s(!0);case 8:o.loadingNext=!1;case 9:case"end":return e.stop()}}),e)}))),this.setExpired=function(){o.countdownExpired=!0,s()},this.countdownExpired=!1,this.itemFormatter=function(e){return{id:e.key,key:e.key,selectable:!0,title:e.key}},this.clearSelection(),this.onSelect=function(e){o.selection=e}}]),JD.component("throttlingTimer",{template:"&lt;span&gt;{{$ctrl.time}}&lt;/span&gt;",bindings:{timestamp:"&lt;",onExpire:"&amp;"},controller:["$scope",function(e){var t=this,n=1e3,r=null,o=0,i=function(e){var t=parseInt(e/n%60),r=parseInt(e/6e4%60),o=parseInt(e/36e5%24);return o=o&lt;10?"0".concat(o):o,r=r&lt;10?"0".concat(r):r,t=t&lt;10?"0".concat(t):t,"".concat(o,":").concat(r,":").concat(t)},a=function(){o-=n,t.time=i(o),o&lt;0&amp;&amp;(t.onExpire(),clearInterval(r)),e.$evalAsync()};this.$onInit=function(){o=t.timestamp,t.time=i(o),r=setInterval(a,n)},this.$onDestroy=function(){clearInterval(r)}}]});const XD=JD.name;var eR=angular.module("HUB.auth-settings-page",[XD,zC,mf,DP,UP]);eR.controller("AuthSettingsCtrl",["$scope","$route","$q","SettingsResource","SettingsTestResource","i18nCatalog","dialog","i18n","HubErrorMessageBundle","backend","userPermissions","settingsUtils","feature",function(e,t,r,o,i,a,s,c,l,g,u,d,p){e.generalTemplate=n(27695),e.throttlingTemplate=n(44325),e.captchaTemplate=n(32546),e.readOnly=!0,p("jetbrains.jetpass.is_hosted").then((function(t){e.isHosted=t})),d.isReadOnly().then((function(t){e.readOnly=t})),e.capcthaDraft={},e.throttlingSettingsDraft={},e.publicSettings={},e.tokenIntervals=[{length:300,name:c("5 minutes")},{length:600,name:c("10 minutes")},{length:1200,name:c("20 minutes")},{length:1800,name:c("30 minutes")},{length:3600,name:c("1 hour")}],e.sessionIntervals=[{length:600,name:c("10 minutes")},{length:1800,name:c("30 minutes")},{length:3600,name:c("1 hour")},{length:10800,name:c("3 hours")},{length:43200,name:c("12 hours")}],e.rememberMeIntervals=[{length:86400,name:c("1 day")},{length:604800,name:c("1 week")},{length:2592e3,name:c("1 month")},{length:7776e3,name:c("3 months")},{length:15552e3,name:c("6 months")},{length:31536e3,name:c("1 year")}],e.findNearestInterval=function(e,t){if(t.hasOwnProperty("name"))return t.name;for(var n,r,o=t,i=0;i&lt;e.length;i++){var a=Math.abs(e[i].length-o);(null==r||a&lt;r)&amp;&amp;(n=e[i],r=a)}return n},e.loaded=!1,d.loadSettings().then((function(t){e.settings=t.settings,e.loaded=!0,e.publicSettings=d.findSetting(t,"public"),e.internalSettings=d.findSetting(t,"internal"),e.throttlingSettings=d.findSetting(t,"ThrottlingSettingsJSON"),e.items=[e.publicSettings,e.internalSettings]}))}]);const tR=eR.name;var nR=angular.module("HUB.license-list",[rk,ik]);nR.constant("licensesFields","id,licenseName,licenseKey,availableLicenses,availableAgentLicenses,availableReporterLicenses,licenseInfo(product,licenseType,majorVersion,minorVersion,buildNumber,userCount,agentCount,reporterCount,expirationDate,freeUpdateEnd,guestBanForbidden,invalidityReason),service(id,name,homeUrl,applicationName)").controller("LicensesCtrl",["$scope","SettingsResource","ServiceResource","userPermissions","addLicenseDialog","editLicenseDialog","deleteLicense","licensesFields","$window","feature",function(e,t,r,o,i,a,s,c,l,g){function u(e){"0-0-0-0-0"===e.service.id&amp;&amp;l.location.reload()}e.licensePage=t.query({fields:c,query:"type:license",$top:-1}),e.hideAddLicense=!0,g("jetbrains.hub.add.license.hide").then((function(t){e.hideAddLicense=t})),e.servicesWithoutLicense=[],r.query({fields:"id,key,name,homeUrl",query:"not has: license"}).$promise.then((function(t){e.servicesWithoutLicense=t.services||[]})),e.dialogTemplate=n(38022),e.serviceData=function(t){return e.servicesWithoutLicense.filter((function(e){return!t||e.name&amp;&amp;e.name.toLowerCase().indexOf(t.toLowerCase())&gt;=0})).sort((function(e,t){return e.name.toLowerCase().localeCompare(t.name.toLowerCase())}))},o.bindVariable(e,"updatable","low-level"),e.isLicenseUpdatable=function(t){return e.updatable&amp;&amp;(!t.service.applicationName||t.service.applicationName!==Tl)},e.addLicense=function(){return i({fields:c,serviceData:e.serviceData}).then((function(t){return e.addedLicense(t)}))},e.setLicense=function(t){var n=e.licensePage.settings[t];return a({license:n,fields:c}).then((function(r){var o;e.licensePage.settings[t]=r,o=n,r.licenseInfo.invalidityReason!==o.licenseInfo.invalidityReason&amp;&amp;l.location.reload()}))},e.addedLicense=function(t){var n;for(e.licensePage.settings.push(t),n=0;n&lt;e.servicesWithoutLicense&amp;&amp;e.servicesWithoutLicense[n].id!==t.service.id;n++);n&lt;e.servicesWithoutLicense.length&amp;&amp;e.servicesWithoutLicense.splice(n,1),u(t)},e.deleteLicense=function(t){return s(t).then((function(){var n=e.licensePage.settings.indexOf(t);n&gt;=0&amp;&amp;e.licensePage.settings.splice(n,1),e.servicesWithoutLicense.push(t.service),u(t)}))},e.resourceFields=c}]).factory("deleteLicense",["hubNotify","i18n","SettingsResource",function(e,t,n){return function(r){return e.confirm(t("Remove license?")).then((function(){return n.remove({id:r.id},angular.noop,e.errorHandler("remove-license"))}))}}]).directive("licenseKey",(function(){return{restrict:"A",require:"ngModel",link:function(e,t,n,r){r.$parsers.push((function(e){if("string"==typeof e&amp;&amp;e.length){var t=e.replace(/[^a-z0-9]+/gi,"");return e!==t&amp;&amp;(r.$setViewValue(t),r.$render()),t}return e}))}}}));const rR=nR.name;var oR=angular.module("HUB.metrics-page",[SC]),iR=1048576,aR=1073741824;oR.controller("MetricsCtrl",["$scope","backend","$timeout","hubNotify","i18n",function(e,t,n,r,o){var i=t.createResource("metrics",null,{dumpDiagnostics:{method:"POST",params:{oper:"dumpDiagnostics"},isArray:!1}},null);e.common=i.get({id:"0",fields:"availableProcessors,serverStartTime,logsFolder"}),e.dumpDiagnostics=function(){return i.dumpDiagnostics({}).$promise.then((function(){return r.message(o("A diagnostics snapshot was written to the logs. To share this data with technical support, compress the contents of the logs directory and attach the ZIP archive to your support request."),-1)}))};var a=null;e.$on("$destroy",(function(){null!=a&amp;&amp;n.cancel(a)})),function t(){i.get({id:"0",fields:"memory,database"},(function(r){e.metrics=r,a=n(t,5e3)}))}()}]),oR.filter("size",["i18n","numberFilter",function(e,t){return function(n){return angular.isNumber(n)?n&lt;1024?"".concat(n," ").concat(e("B")):n&lt;iR?"".concat(t(n/1024)," ").concat(e("KB")):n&lt;aR?"".concat(t(n/iR)," ").concat(e("MB")):"".concat(t(n/aR)," ").concat(e("GB")):n}}]);const sR=oR.name;var cR=angular.module("HUB.saml-page",[SC,_w,Ep]);cR.controller("SamlCtrl",["SamlIdentityProviderResource","backend","filterFilter","absoluteURLFilter","userPermissions","i18n",function(e,t,r,o,i,a){var s=this;i.bindVariable(this,"updatable","low-level"),this.settingsTemplate=n(77442),this.serviceProvidersTemplate=n(51415),this.toolbarTemplate=n(51620),this.rightToolbarTemplate=n(89702),this.sidebarTemplate=n(68675),this.emptyTemplate=n(10236),this.samlSettings=e.get({fields:"id,name,entityId,defaultNameIdType,keyStore(id,name,certificate/fingerprint(md5,sha1,sha256))"}),this.samlSettings.$promise.then((function(e){return s.samlSettingsId=e.id,e.id=null,e})),this.wideSelectConfig={minWidth:450};for(var c=[{value:"urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress",label:a("Email Address")},{value:"urn:oasis:names:tc:SAML:2.0:nameid-format:persistent",label:a("Persistent")},{value:"urn:oasis:names:tc:SAML:2.0:nameid-format:transient",label:a("Transient")}],l={},g=0;g&lt;c.length;g++)l[c[g].value]=c[g].label;this.nameIdTypes=function(e){return r(c,e||"")},this.getNameIdButtonText=function(e){return e&amp;&amp;e.label||l[e]||c[0]},this.samlURL="".concat(o(t.getAPIUrl()),"/saml2"),this.metadataURL="".concat(this.samlURL,"/metadata"),this.logoutURL="".concat(this.samlURL,"/logout"),this.columns=[{id:"name",title:a("Name")},{id:"entityId",title:a("Issuer")},{id:"assertionConsumerUrl",title:a("Assertion Consumer URL")}]}]),cR.controller("ServiceProvidersToolbarCtrl",["$element","$q","hubBulkOperation","SamlServiceProviderResource","HubPluralMessageBundle","hubNotify","dialog","i18n","userPermissions",function(e,t,r,o,i,a,s,c,l){var g=this,u=e.controller("hubResource"),d=e.controller("hubTable");l.bindVariable(this,"updatable","low-level"),this.dialogTemplate=n(37945),this.getDialogTitle=function(e){return c(e?"Update Service Provider":"New Service Provider")},this.refreshList=function(){u.refresh()},this.showUpdateDialog=function(e){var r=e.pop(),o=angular.copy(r);return t((function(e,t){s.show({template:n(37945),data:{update:!0,item:o,getDialogTitle:g.getDialogTitle},buttons:[{label:c("Save changes"),default:!0,action:function(){return u.resource.save({id:o.id},o,(function(){d.rerenderItem(r,o),e(o)})).$promise}},{label:c("Cancel"),action:function(){t()}}]}).catch((function(){t()}))}))},this.remove=function(e){var t=function(e){return o.remove({id:e.id}).$promise};return a.confirm({label:i["delete-service-providers?"](e.length,e[0]),olButtonLabel:c("Delete",null,"Remove action"),actionPromise:function(){return r.withAlertReporter(e,t,{success:i["service-providers-success-delete"]}).then((function(){u.refresh()}))}})}}]);const lR=cR.name;var gR=angular.module("HUB.smtp-settings",[mf]);gR.controller("SettingsSmtpCtrl",["$scope","i18n","personalEmailRegexp",function(e,t,n){e.pageTitle=t("SMTP Settings"),e.settingsType="smtp",e.contactLabel=t("To Email"),e.contactType="email",e.requiredFieldsForTest=["host","from"];var r={SMTP:"SMTP","SMTP+SSL":"SMTP+SSL","SMTP+TLS":t("SMTP TLS (STARTTLS required)")};e.smtpProtocols=[],angular.forEach(r,(function(t,n){e.smtpProtocols.push({value:n,label:t})})),e.configureLabel=t("Configure SMTP server"),e.configureDescription=t("If the SMTP connection is disabled or configured incorrectly,\nyour users do not receive any email messages from Hub.\nThis includes invitations to register an account, contact\nverification emails, and password recovery instructions."),e.emailValidators={emailRegExp:{fn:function(e){return!e||n.test(e)},message:function(){return t("is not a valid email")}}}}]);const uR=gR.name;var dR=angular.module("HUB.migration-list",[_w]);dR.controller("MigrationsCtrl",["i18n",function(e){this.toolbarTemplate=n(23439),this.columns=[{id:"name",title:e("Name"),getValue:function(t){return i.createElement("span",null,t.id," ",!t.applied&amp;&amp;i.createElement(io.Z,null,e("not applied")))}}]}]),dR.controller("MigrationsToolbarCtrl",["$scope","$element","MigrationResource","hubBulkOperation",function(e,t,n,r){var o=t.controller("hubTable");this.isAppliedVisible=function(e,t){if(0===e.size)return!1;var n=!1;return e.items.forEach((function(e){n=n||e.applied!==t})),n},this.setApplied=function(e,t){return r.withoutReporter(e,(function(e){return n.save({id:e.id},{applied:t}).$promise.then((function(){o.rerenderItem(e,{applied:t})}))}))}}]);const pR=dR.name;var AR=angular.module("HUB.feature-list.toolbar",[_w]);AR.controller("FeaturesListToolbarCtrl",["$scope","$element","FeatureResource","hubBulkOperation","dialog","i18n","hubMenuApi","hubFeatures",function(e,t,r,o,i,a,s,c){var l=this,g=t.controller("hubTable");this.isToggleVisible=function(e,t){return 0!==e.size&amp;&amp;e.items.some((function(e){return(void 0!==e.enabled&amp;&amp;e.enabled)!==t}))},this.toggle=function(e,t){var n=function(e){return r.save({id:e.id},{enabled:t,type:e.type}).$promise.then((function(){g.rerenderItem(e,{enabled:t})}))},i=function(){return o.withoutReporter(e,n).then((function(){c.invalidate(),s.update()}))};if(e.some((function(e){return mR(e)&amp;&amp;hR(e)&amp;&amp;t})))return l.changeScopeDialog(e).then((function(e){if(e)return i()}));i()},this.isChangeScopeVisible=function(e){return e.items.some(mR)},this.changeScopeDialog=function(e){var t=new Set,s=[];return e.filter(mR).forEach((function(e){(e.scopes||[]).forEach((function(e){t.has(e.id)||(s.push(e),t.add(e.id))}))})),i.show({title:a("Select Groups and Teams"),data:{scopes:s},trapFocus:!1,template:n(86100),buttons:[{label:a("Save"),default:!0,action:function(t){var n=t.scopes;return o.withoutReporter(e.filter(mR),(function(e){return r.save({id:e.id},{scopes:n,type:e.type}).$promise.then((function(){g.rerenderItem(e,{scopes:n})}))})).then((function(){return c.invalidate(),!0}))}},{label:a("Cancel"),close:!0}]})}}]);const CR=AR.name;var IR=angular.module("HUB.feature-list",[CR,zC]),fR=function(e){return"SystemFeatureJSON"===e.type},mR=function(e){return"ScopedFeatureJSON"===e.type},hR=function(e){return!e.scopes||0===e.scopes.length};IR.controller("FeaturesListCtrl",["i18n",function(e){this.toolbarTemplate=n(48236),this.sidebarTemplate=n(39101),this.emptyTemplate=n(17660),this.columns=[{id:"name",title:e("Name"),getValue:function(e){return i.createElement("span",null,e.name)}},{id:"state",getValue:function(t){return i.createElement(io.Z,{valid:t.enabled,invalid:!t.enabled},t.enabled?e("enabled",null,"Feature list"):e("disabled",null,"Feature list"))}},{id:"type",title:e("Type"),getValue:function(t){return i.createElement("span",null,fR(t)?e("System-wide"):e("Group-specific"))}},{id:"scopes",title:e("Groups"),getValue:function(t){return fR(t)?i.createElement("span",null,e("All Users")):!t.scopes||t.scopes&amp;&amp;0===t.scopes.length?i.createElement("span",{className:[t.enabled&amp;&amp;"hub-text-error"]},e("Nobody")):i.createElement("span",null,(t.scopes||[]).map((function(e){return e.name})).join(", "))}}]}]);const vR=IR.name;function bR(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}n(26722);var yR=angular.module("HUB.import-list",["ngFileUpload",_w]);yR.controller("ImportsCtrl",["i18n",function(e){this.toolbarTemplate=n(17305),this.columns=[{id:"id",title:e("Id"),getValue:function(e){return i.createElement(a.Z,{href:"imports/".concat(e.id),title:e.id},e.id)}},{id:"phase",title:e("Phase"),getValue:function(e){return e.phase.name}},{id:"message",title:e("Message"),getValue:function(t){return i.createElement("span",null,t.phase.progress&gt;-1?"".concat(t.phase.progress,"%"):e("not started"))}}]}]),yR.controller("ImportsToolbarCtrl",["$element","ImportResource","hubBulkOperation","i18n",function(e,t,n,r){var o=e.controller("hubResource"),i=e.controller("hubTable");this.remove=function(){return n.removeWithAlertReporter(function(e){return function(e){if(Array.isArray(e))return bR(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return bR(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?bR(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(i.selection.getActive()),t,{confirm:r("Delete import?"),failEach:r("Import can't be removed")},o.refresh)},this.isAnySelected=function(){return i.selection.getActive().size&gt;0}}]),yR.directive("importsUploadButton",["Upload","backend","$q","$route","hubNotify",function(e,t,r,o,i){return{restrict:"E",scope:{onLoad:"&amp;"},controllerAs:"ctrl",bindToController:!0,template:n(70268),link:function(e,t,n,r){r.setInput(t[0].querySelector('input[type="file"]'))},controller:function(){var n=this;n.fileInput=null,n.setInput=function(e){n.fileInput=e},n.upload=function(a){if(a&amp;&amp;a.length){n.loading=!0;for(var s=[],c=0;c&lt;a.length;c++){var l=a[0],g=e.http({url:"".concat(t.getAPIUrl(),"/imports"),headers:{"Content-Type":l.type},data:l}).catch(i.errorHandler("imports-upload"));s.push(g)}r.all(s).finally((function(){n.loading=!1,o.reload()}))}else n.loading=!1},n.open=function(){n.fileInput.click()}}}}]);const wR=yR.name;var _R=angular.module("HUB.import-page",[wR,Ep]);_R.controller("ImportPageCtrl",["$scope","$routeParams","ImportResource","ImportConflictResource","backendUri","$http","$interval","authModule",function(e,t,n,r,o,i,a,s){var c={},l={},g=null,u={},d=["User","UserGroup","Role","Project","Service","AuthModule"],p=[];function A(){e.importPage.adminConsoleUrl&amp;&amp;(document.location.href=e.importPage.adminConsoleUrl)}function C(){return n.get({id:t.id,fields:"id,name,phase,remoteUrl,localUrl,adminConsoleUrl"}).$promise.then((function(t){return e.importPage=t,t.phase.name}))}function I(){g&amp;&amp;a.cancel(g)}function f(e){return r.query({id:t.id,$skip:e||0,fields:"id,matches,type,total,resolution,local,remote"}).$promise}function m(t,n){var r=function(e){return p.indexOf(e.type)&gt;=0?"AuthModule":d.indexOf(e.type)&gt;=0?e.type:null}(t);if(r){e.conflictsNum++,e.editedValues[t.id]||(e.editedValues[t.id]={});var o=e.editedValues[t.id];t.fieldNames=[],Object.keys(t.local).forEach((function(e){var n=function(e,t){var n=e.resolution;return n&amp;&amp;void 0!==n.propertyOverrides[t]?n.propertyOverrides[t]:e.local[t]}(t,e);o[e]||(o[e]={},o[e].isString="string"==typeof n,o[e].isBoolean="boolean"==typeof n),o[e].$invalid=!1,o[e].value=n,"id"!==e&amp;&amp;t.fieldNames.push(e)})),n?u[r].some((function(e,n){if(t.id===e.id)return u[r][n]=t,!0})):u[r].push(t)}}s.getPlugins().forEach((function(e){p.push(e.module.typeName)}));var h=function(e){return function(e){return r.get({id:t.id,subId:e,$top:1,fields:"id,matches,type,total,resolution,local,remote"}).$promise.then((function(e){m(e,!0)}))}(e).then((function(){return C()}))};function v(n,r){return i.post("".concat(o,"/imports/").concat(t.id,"/conflicts/").concat(n,"/update"),r).then((function(){return e.editMode=!1,e.error=null,h(n)}))}function b(t,n){var r={};return Object.keys(e.editedValues[t.id]).forEach((function(o){var i=e.editedValues[t.id][o];("merge"===n||"create"===n&amp;&amp;t.matches[o]||"banned"===o)&amp;&amp;(r[o]=i.value)})),r}var y=0;function w(t){e[t.resolution.type](t)}function _(e){return"merge"===e.resolution.type}function j(t,n,r){return n[t][r]===e.editedValues[n.id][r].value}e.isUsedLocalValue=function(e,t){return j("local",e,t)},e.isUsedRemoteValue=function(e,t){return j("remote",e,t)};var x={};e.isMerge=_,e.isCreate=function(e){return"create"===e.resolution.type},e.importPage=null,e.conflict=null,e.editMode=!1,e.loading=!1,e.merge=function(t){return Object.keys(t.matches).forEach((function(n){var r=e.editedValues[t.id][n];r.autoPrefix&amp;&amp;(r.value=t.local[n],r.autoPrefix=!1)})),v(t.id,{type:"merge",propertyOverrides:b(t,"merge")}).catch((function(n){return e.error=n.data.error_description,h(t.id)}))},e.create=function t(n,r,o){return o||(y=0),v(n.id,{type:"create",propertyOverrides:b(n,"create")}).then((function(){r||Object.keys(n.matches).forEach((function(t){e.editedValues[n.id][t].autoPrefix=!1}))})).catch((function(o){if(y++,r&amp;&amp;y&lt;20)return Object.keys(n.matches).forEach((function(t){var r=n.matches[t],o=e.editedValues[n.id][t];o.value="".concat(r,"_").concat(y),o.autoPrefix=!0})),t(n,r,!0);Object.keys(n.matches).forEach((function(t){e.editedValues[n.id][t].$invalid=t===o.data.error_field}))}))},e.setValue=function(t,n,r,o){o&amp;&amp;!_(t)||(n&amp;&amp;(e.editedValues[t.id][n].value=r),w(t))},e.runImportMerge=function(){n.merge({id:t.id}).$promise.then((function(){g||(C(),g=a((function(){C().then((function(e){"done"!==e&amp;&amp;"migration-failed"!==e||(I(),A())}))}),1e3))}),(function(){A()}))},e.goBack=A,e.conflictTypes=d,e.conflictTypeNames={User:"Users",UserGroup:"Groups",Role:"Roles",Project:"Projects",Service:"Services",AuthModule:"Auth Modules"},e.conflictsMap=u,e.editedValues={},e.locks=c,e.hasLocks=function(){return Object.keys(c).length},e.loaders=l,e.resaveConflict=w,C().then((function(){return e.conflictsNum=0,d.forEach((function(e){u[e]=[]})),f().then((function(e){if(e.conflicts&amp;&amp;e.conflicts.forEach((function(e){m(e)})),e.total===e.top)return f(e.skip+e.total)}))})).then((function(){return n.get({id:t.id,action:"counters"}).$promise.then((function(e){x.User=e.users,x.UserGroup=e.groups,x.Role=e.roles,x.Project=e.projects,x.Service=e.services,x.AuthModule=e.authModules}))})).then((function(){e.loaded=!0})),e.counters=x,e.resolveGroup=function(t,n){if(!c[t]){var r=angular.copy(e.conflictsMap[t]);r.length&amp;&amp;(c[t]=!0,l[t+n]=!0,function t(){return e[n](r.shift(),!0).then((function(){if(r.length)return t()}))}().then((function(){Reflect.deleteProperty(c,t),Reflect.deleteProperty(l,t+n)})))}},e.skipSummary=!1,e.$on("$destroy",I)}]),_R.filter("importPagePlural",(function(){return function(e,t){return 1===t?e.substr(0,e.length-1):e}}));const jR=_R.name;function xR(e){return function(e){if(Array.isArray(e))return ER(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return ER(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ER(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ER(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var SR=angular.module("HUB.backup",[SC]);SR.controller("BackupCtrl",["$q","$scope","$timeout","SettingsBackupSettings","SettingsBackupData","loaderScreen","userPermissions","settingsUtils","i18n","dialog","dateFilter",function(e,t,r,o,i,a,s,c,l,g,u){var d=this;s.bindVariable(this,"updatable","low-level"),this.resource=o,t.backupSettings=t.publicSettings={},t.loaded=!1,c.loadSettings().then((function(e){t.loaded=!0,t.backupSettings=c.findSetting(e,"BackupSettingsJSON"),t.items=[t.backupSettings]})),this.data=[],this.colums=[],this.inProgress=!1;var p=function(){d.columns=[{id:"name",title:l("Backup file")},{id:"created",title:l("Created"),getValue:function(e){return u(e.timestamp,"dd.MM.yyyy HH:mm:ss")}},{id:"full_path",title:l("Full path"),getValue:function(e){return d.backupFolder+d.directorySeparator+e.name}}]};p(),t.$on("gettextLanguageChanged",p);var A=function(){return[{value:"",tracker:"disabled",label:l("Off")},{value:"0 0 0/12 * * ?",tracker:"e12h",label:l("Every 12 hours")},{value:"0 0 9 * * ?",tracker:"ed9am",label:l("Daily at 9 AM")},{tracker:"ed2am",value:"0 0 2 * * ?",label:l("Daily at 2 AM")}]},C=function(){return A().some((function(e){return e.value===d.settings.cronExpression}))};this.getBakupKey=function(e){return e.name},this.buttonText=function(e){return"custom"===e.tracker?C()?l("Custom"):l("Custom ({{expression}})",{expression:d.settings.cronExpression}):e.label};var I,f=0;this.backupFolder="",this.directorySeparator="";var m=function(){return d.loading=!0,e.when().then((function e(){return r((function(){return o.get({fields:"id,archiveType,backupFolder,resolvedBackupFolder,namePrefix,status(inProgress,savedData(name,timestamp)),cronExpression,countToKeep"}).$promise}),f).then((function(t){if(f=5e3,d.settings=t,t.status.savedData?d.data=xR(t.status.savedData).sort((function(e,t){return t.timestamp-e.timestamp})):d.data=[],d.backupFolder=t.resolvedBackupFolder,d.directorySeparator="/",d.backupFolder.indexOf("\\")&gt;-1&amp;&amp;-1===d.backupFolder.indexOf("/")&amp;&amp;(d.directorySeparator="\\"),t.status.inProgress)return d.inProgress=!0,e();d.inProgress=!1,t.cronExpression||(t.cronExpression=""),C()||(I=t.cronExpression),d.cronExpressions=[].concat(xR(A()),[function e(){return{tracker:"custom",label:"".concat(l("Custom"),"â€¦"),value:C()?" ":t.cronExpression,onClick:function(){return g.show({title:l("Custom Backup Interval"),data:{expression:I||"0 0 3 * * ?"},template:n(58576),buttons:[{label:l("Save"),default:!0,action:function(e){t.cronExpression=e.expression}},{label:l("Cancel"),close:!0}]}).then((function(){d.cronExpressions=[].concat(xR(A()),[e()])}))}}}()]),d.loading=!1}))}))};this.allowedFormats=["tar.gz","zip"],this.formatOptions=this.allowedFormats.map((function(e){return{value:e,label:e}})),this.updateBackupSettings=function(){d.settings.$save().catch((function(t){return e.reject(t.data.error_developer_message)}))},this.setArchiveFormat=function(e){return d.settings.archiveType=e,d.updateBackupSettings()},this.createBackup=function(){d.inProgress=!0,i.save().$promise.then((function(){d.inProgress=!1,m()}))},this.reload=function(){m()},this.prefixValidators={backupPrefixInvalid:{fn:function(e){return/^[\w,\s\-\.]+$/.test(e)},message:function(){return l("Can only contain alphanumeric characters, periods, minus signs, and underscores")}}},m()}]);const TR=SR.name;var MR=function(){try{return Uint8Array&amp;&amp;KI.saveAs&amp;&amp;Blob&amp;&amp;atob}catch(e){return!1}}(),LR=function(e,t){(0,KI.saveAs)(function(e,t){for(var n=atob(e),r=new Array(n.length),o=0;o&lt;n.length;o++)r[o]=n.charCodeAt(o);var i=new Uint8Array(r);return new Blob([i],{type:"application/x-x509-ca-cert"})}(t),"".concat(e,".crt"))},kR=angular.module("HUB.keystore-page",[LL]);kR.controller("KeyStoreCtrl",["$scope","$routeParams","KeyStoreResource","pageTitle","getWithQuery",function(e,t,n,r,o){var i=mC(t.id);e.store=o(n,"keystores",{query:"id:{".concat(i,"} or name:{").concat(i,"}"),fields:"id,name,certificateData,certificate(certificateType,version,issuedBy,issuedTo,serialNumber,validTo,validFrom,algorithm,fingerprint(md5,sha1,sha256))"}),r.addElement(e.store),e.canDownload=MR,e.download=function(){LR(e.store.name,e.store.certificateData)}}]);const OR=kR.name;var PR=angular.module("HUB.directives.certificate-info",[]);PR.directive("certificateInfo",["i18n","dateFilter","fingerprintFilter",function(e,t,n){var r=[{label:e("Type"),fieldName:"certificateType"},{label:e("Version"),fieldName:"version"},{label:e("Serial number"),fieldName:"serialNumber"},{label:e("Issued by"),fieldName:"issuedBy"},{label:e("Issued to"),fieldName:"issuedTo"},{label:e("Valid from"),fieldName:"validFrom",type:"date"},{label:e("Valid to"),fieldName:"validTo",type:"date"},{label:e("Algorithm"),fieldName:"algorithm"},{label:e("Fingerprint MD5"),fieldName:"fingerprint.md5",type:"fingerprint"},{label:e("Fingerprint SHA1"),fieldName:"fingerprint.sha1",type:"fingerprint"},{label:e("Fingerprint SHA256"),fieldName:"fingerprint.sha256",type:"fingerprint"}];return{transclude:!0,scope:{cert:"=certificateInfo"},link:function(e,o,i,a,s){var c=null;e.$watch("cert",(function(){c&amp;&amp;angular.forEach(c,(function(e){e.scope.$destroy(),e.element.remove()})),c=[],angular.forEach(r,(function(r){s((function(i,a){c.push({scope:a,element:i}),a.fieldLabel=r.label;for(var s=r.fieldName.split("."),l=e.cert,g=0;g&lt;s.length;g++)l=l&amp;&amp;l[s[g]];"date"===r.type&amp;&amp;(l=t(l,"medium")),"fingerprint"===r.type&amp;&amp;(l=n(l)),a.fieldValue=l,o.append(i)}))}))}))}}}]);const NR=PR.name;var DR=angular.module("HUB.certificate-list.toolbar",[_w]);DR.controller("CertificatesToolbarCtrl",["$element","CertificateResource","hubBulkOperation",function(e,t,n){var r=e.controller("hubResource"),o=e.controller("hubTable");this.isDisableVisible=function(e,t){return!(!e||e.size&lt;=0)&amp;&amp;e.items.some((function(e){return e.disabled!==t}))},this.disable=function(e,r){return n.withoutReporter(e,(function(e){return t.save({id:e.id},{disabled:r},(function(){return o.rerenderItem(e,{disabled:r})})).$promise}))},this.remove=function(e){return n.removeWithAlertReporter(e,t,{confirm:"delete-certificates?",success:"certificates-success-delete"},r.refresh)}}]);const RR=DR.name;var UR=angular.module("HUB.certificate-list.create",[]);UR.controller("CertificateCreateCtrl",["$q","dialog","i18n","CertificateResource","$location","HubErrorMessageBundle",function(e,t,r,o,i,a){var s,c=window.File&amp;&amp;window.FileReader;this.showImportDialog=function(){var l={label:r("Import"),default:!0,close:!1,action:function(n,r,l){c&amp;&amp;s&amp;&amp;(n.item.data=s),function(t){return o.save({fields:"id"},t).$promise.then((function(e){return i.path("certificates/".concat(e.id)),e}),(function(t){return e.reject(a.msg(t))}))}(n.item).then((function(){t.reset()}),l)}};return t.show({template:n(29217),data:{fileApi:c,fileChanged:function(e){if(s=null,e.files&amp;&amp;e.files.length){var t=e.files[0],n=new FileReader;n.onload=function(e){if(e.target.result&amp;&amp;e.target.result.length){var t=e.target.result.split(",");2===t.length&amp;&amp;(s=t[1])}},n.readAsDataURL(t)}}},buttons:[l,{label:r("Cancel")}]})}}]);const zR=UR.name;var $R=angular.module("HUB.certificate-list",[zR,NR,RR]);$R.controller("CertificatesCtrl",["dateFilter","i18n",function(e,t){this.toolbarTemplate=n(7614),this.sidebarTemplate=n(88849),this.columns=[{id:"name",title:t("Name"),sortable:!0,getValue:function(e){var t=e.id,n=e.name;return i.createElement(a.Z,{href:"certificates/".concat(CC(n,t))},n)}},{getValue:function(e){var n=e.disabled;return i.createElement(io.Z,{invalid:n,valid:!n},t(n?"disabled":"enabled",null,"Certificate list"))}},{title:t("Valid from"),getValue:function(t){var n=t.validFrom;return e(n,"medium")}},{title:t("Valid to"),getValue:function(t){var n=t.validTo;return e(n,"medium")}},{id:"issuedTo",title:t("Issued to")}]}]),$R.factory("CertificateResource",["backend",function(e){return e.createResource("certificates",null,null)}]);const GR=$R.name;var BR=angular.module("HUB.certificate-page",[GR]);BR.controller("CertificateCtrl",["$scope","$routeParams","CertificateResource","pageTitle","getWithQuery",function(e,t,n,r,o){var i=mC(t.id);e.certificate=o(n,"certificates",{query:"id:{".concat(i,"} or name:{").concat(i,"}"),disabled:"true",fields:"id,name,disabled,data,certificateType,version,issuedBy,issuedTo,serialNumber,validTo,validFrom,algorithm,fingerprint(md5,sha1,sha256)"}),e.toggleEnabledState=function(t){return n.save({id:e.certificate.id},{disabled:t}).$promise.then((function(){e.certificate.disabled=t}))},r.addElement(e.certificate),e.canDownload=MR,e.download=function(){var t=e.certificate;LR(t.name,t.data)}}]);const FR=BR.name,ZR=oo(n(38370).Z,"Table").name;n(3843);var YR=n(10577),WR=n.n(YR),HR=n(84266),qR=n.n(HR),QR=n(69914),VR=n.n(QR),KR=n(12879),JR=n.n(KR),XR=n(76581),eU=n.n(XR),tU=n(79576),nU=n.n(tU),rU=n(17610);function oU(e){return oU="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},oU(e)}function iU(){iU=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==oU(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function aU(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function sU(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){aU(i,r,o,a,s,"next",e)}function s(e){aU(i,r,o,a,s,"throw",e)}a(void 0)}))}}var cU=new rU.Z,lU="ring.dashboard.widget.cache";function gU(e){return"".concat(lU,"__").concat(e)}function uU(){return(uU=sU(iU().mark((function e(t){var n;return iU().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,cU.get(gU(t));case 3:return n=e.sent,e.abrupt("return",JSON.parse(n));case 7:return e.prev=7,e.t0=e.catch(0),e.abrupt("return",{});case 10:case"end":return e.stop()}}),e,null,[[0,7]])})))).apply(this,arguments)}function dU(){return pU.apply(this,arguments)}function pU(){return pU=sU(iU().mark((function e(){return iU().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,cU.each((function(e){if(0===e.indexOf(lU))return cU.remove(e)}));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)}))),pU.apply(this,arguments)}function AU(){return AU=sU(iU().mark((function e(t,n){return iU().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(e.prev=0,!(Object.keys(window.localStorage).map((function(e){return localStorage[e].length})).reduce((function(e,t){return e+t}))&gt;2e5)){e.next=4;break}return e.next=4,dU();case 4:return e.next=6,cU.set(gU(t),JSON.stringify(n));case 6:e.next=11;break;case 8:return e.prev=8,e.t0=e.catch(0),e.abrupt("return");case 11:case"end":return e.stop()}}),e,null,[[0,8]])}))),AU.apply(this,arguments)}const CU={loadCache:function(e){return uU.apply(this,arguments)},storeCache:function(e,t){return AU.apply(this,arguments)},removeCache:function(e){return cU.remove(gU(e))}};var IU=n(13276),fU=o().module("Ring.autofocus",[]),mU="rg-select";fU.directive("rgAutofocus",(function(){function e(t){if(t)if(t.hasAttribute(mU)||t.tagName.toLowerCase()===mU)e(t.querySelector("[data-test*=ring-select__focus]"));else if(t.matches(IU.x)&amp;&amp;t.focus)t.focus();else{var n=t.querySelector(IU.x);n&amp;&amp;n.focus&amp;&amp;n.focus()}}return function(t,n,r){var o=n[0];t.$watch(r.rgAutofocus,(function(n){n&amp;&amp;t.$evalAsync((function(){return e(o)}))}))}}));const hU=fU.name;var vU=n(77361),bU=n.n(vU),yU=angular.module("service-select",[fx,"Ring.select"]).directive("selectHubService",(function(){return{template:n(59998),scope:{applicationName:"@",model:"=",servicesCount:"=?"},restrict:"E",bindToController:!0,controllerAs:"selectServiceCtrl",controller:["$attrs","ServiceList",function(e,t){var n=this;n.selectOptions=[],e.$observe("applicationName",(function(){var e;e=t.getServices().filter((function(e){return e.applicationName===n.applicationName})).filter((function(e){return e.trusted})),n.selectOptions=n.processServices(e),n.servicesCount=n.selectOptions.length,1===n.selectOptions.length&amp;&amp;(n.model=n.selectOptions[0])})),n.processServices=function(e){return $w()(bU()(e,(function(e){return{id:e.id,text:e.homeUrl}})),"text")}}]}}));const wU=yU.name;function _U(e){return _U="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},_U(e)}function jU(e){"UserPermission"===e.type?e.type="UserDashboardPermissionJSON":"GroupPermission"===e.type&amp;&amp;(e.type="UserGroupDashboardPermissionJSON"),e.userId&amp;&amp;(e.user={type:"user",id:e.userId}),e.groupId&amp;&amp;(e.userGroup={type:"userGroup",id:e.groupId}),Reflect.deleteProperty(e,"userId"),Reflect.deleteProperty(e,"groupId")}function xU(e){"UserDashboardPermissionJSON"===e.type?e.type="UserPermission":"UserGroupDashboardPermissionJSON"===e.type&amp;&amp;(e.type="GroupPermission"),e.userId=null,e.groupId=null,e.user&amp;&amp;(e.userId=e.user.id),e.userGroup&amp;&amp;(e.groupId=e.userGroup.id),delete e.user,delete e.userGroup}function EU(e){e.owner&amp;&amp;(e.owner={type:"user",id:e.owner}),e.permissions.forEach((function(e){return jU(e)}))}var SU=angular.module("dashboard.resource",[AC(),Lt]).config(["$httpProvider",function(e){e.interceptors.push((function(){return{response:function(e){var t=e.config,n=t.method,r=t.url,o=e.data;return"GET"===n&amp;&amp;/\/api\/dashboards$/.test(r)?o.items.forEach((function(e){return EU(e)})):["GET","POST"].includes(n)&amp;&amp;/\/api\/dashboards\/[^\/]+$/.test(r)?EU(o):"GET"===n&amp;&amp;/\/api\/dashboards\/[^\/]+\/permissions$/.test(r)?o.items.forEach((function(e){return jU(e)})):"POST"===n&amp;&amp;/\/api\/dashboards\/[^\/]+\/permissions$/.test(r)&amp;&amp;jU(o),e},request:function(e){var t=e.method,n=e.url;if("POST"===t&amp;&amp;/\/api\/dashboards\/[^\/]+$/.test(n)){var r=XI()({},e.data);!function(e){e.owner&amp;&amp;(e.owner=e.owner.id),e.permissions.forEach((function(e){return xU(e)}))}(r),e.data=r}else if("POST"===t&amp;&amp;/\/api\/dashboards\/[^\/]+\/permissions$/.test(n)){var o=XI()({},e.data);xU(o),e.data=o}return e}}}))}]).factory("transformResponseDates",["convertDates",function(e){return function(t){return e.convert(t),t}}]).factory("convertDates",["stringToDate",function(e){return{convert:function t(n){if("object"!==_U(n))return n;for(var r in n)if(n.hasOwnProperty(r)){var o=n[r];"string"==typeof o?n[r]=e.convert(o):"object"===_U(o)&amp;&amp;t(o)}return n}}}]).factory("stringToDate",[function(){return{convert:function(e){var t=e.match(/^(\d{4}|\+\d{6})(?:-(\d{2})(?:-(\d{2})(?:T(\d{2}):(\d{2}):(\d{2})\.(\d{1,})(Z|([\-+])(\d{2}):(\d{2}))?)?)?)?$/);if(!t||t[0].length&lt;5)return e;var n=Date.parse(t[0]);return isNaN(n)?e:new Date(n)}}}]).factory("temporaryStandaloneDashboardBackendUri",["auth","ServiceList",function(e,t){try{return"".concat(t.getServices().find((function(e){return"External Dashboard Backend"===e.name})).homeUrl,"/api/dashboards")}catch(t){return"".concat(e.auth.config.serverUri,"api/rest/dashboards")}}]).factory("dashboardResource",["$resource","temporaryStandaloneDashboardBackendUri",function(e,t){return e("".concat(t,"/:dashboardId/:operation"),{dashboardId:"@id"},{query:{isArray:!1},order:{method:"POST",params:{operation:"order"}}})}]).factory("dashboardPermissionsResource",["$resource","temporaryStandaloneDashboardBackendUri",function(e,t){return e("".concat(t,"/:dashboardId/permissions/:permissionId"),{permissionId:"@id"})}]).factory("dashboardRedirectUriResource",["$resource","auth",function(e,t){var n=t.auth&amp;&amp;t.auth.config&amp;&amp;t.auth.config.serverUri||"/";return e("".concat(n,"api/rest/services/:id/untrustedredirecturis/:subId/:operation"),{id:"@id",subId:"@subId"},{accept:{method:"POST",params:{id:"@id",newUrl:"@newUrl",operation:"accept"},isArray:!1}})}]).filter("encodeURIComponent",(function(){return function(e){return encodeURIComponent(e)}}));const TU=SU.name;var MU=n(59969),LU=n.n(MU),kU=n(89891),OU=n.n(kU),PU=Mp.Z.ListProps.Type.CUSTOM,NU=function(e,t){return i.createElement(da.ZP,{className:t||"widget__dropdown-icon",glyph:e,size:da.ZP.Size.Size16})},DU=function(e,t){return i.createElement("span",{},NU(e),t)},RU=angular.module("dashboard.widget.dropdown-items",[]).factory("widgetDropdown",["i18n",function(e){return{getItems:function(){var t,n=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:[];return[{key:"share",template:DU(LU(),"".concat(e("Share link",null,"Dashboard"),"...")),rgItemType:PU},{key:"clone",template:DU(Wx(),e("Clone widget",null,"Dashboard")),rgItemType:PU},{key:"moveToAnotherDashboard",template:(t="".concat(e("Move to another dashboard",null,"Dashboard"),"..."),i.createElement("span",null,i.createElement("span",{className:"widget__dropdown-icon widget__dropdown-icon-arrow"},"â†’"),t)),rgItemType:PU},{key:"edit",template:DU(OU(),"".concat(e("Edit",null,"Dashboard"),"...")),rgItemType:PU},{key:"remove",template:i.createElement("span",null,NU(Vx(),"widget__dropdown-icon widget__dropdown-icon_remove"),e("Remove",null,"Dashboard")),rgItemType:PU,className:"widget__remove-link"}].filter((function(e){return!n.includes(e.key)}))}}}]);const UU=RU.name;var zU={CONFIG:"CONFIG",READY:"READY",LOADING:"LOADING"},$U=angular.module("ring.dashboard.widget",[wU,TU,UU,Dx,vd,Yy,hU]).run(["$rootScope","widgetsRegistry","i18n",function(e,t,n){e.$on("gettextLanguageChanged",(function(){t.getList().forEach((function(e){e.label=n(e.label,null,"Dashboard")}))}))}]).value("dashboardIconOption",{enabled:!0}).directive("widget",(function(){return{template:n(79109),restrict:"E",transclude:!0}})).directive("widgetHeader",(function(){return{link:function(e,t){return e.widgetCtrl.addHeader(t)}}})).directive("widgetEmpty",(function(){return{restrict:"E",transclude:!0,template:n(27614),scope:{header:"@",message:"@",headerClass:"@"}}})).component("widgetGeneralEditor",{template:n(17839),bindings:{widget:"="}}).factory("widgetDirectiveConstructor",(function(){return function(e){var t=angular.extend({},{scope:{widgetId:"=",config:"=",remove:"&amp;",editable:"=",canMoveAcrossDashboards:"=?"},restrict:"E",controllerAs:"widgetCtrl",bindToController:!0},e);if("widgetCtrl"!==t.controllerAs)throw new Error('Currently widget controller should be named as "widgetCtrl", but passed name is '.concat(t.controllerAs));return t}})).filter("limitedText",(function(){return function(e,t){return e?e.length&gt;t?"".concat(e.substr(0,t),"..."):e:null}}));const GU=$U.name;function BU(e){return BU="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},BU(e)}function FU(){FU=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==BU(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function ZU(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function YU(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,QU(r.key),r)}}function WU(e){return WU=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},WU(e)}function HU(e,t){return HU=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},HU(e,t)}function qU(e,t,n){return(t=QU(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function QU(e){var t=function(e,t){if("object"!==BU(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==BU(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===BU(t)?t:String(t)}var VU={YouTrack:JR(),Upsource:nU(),TeamCity:eU(),Hub:aC()},KU=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];qU(e=function(e,t,n){return t=WU(t),function(e,t){if(t&amp;&amp;("object"===BU(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],WU(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"enterModalMode",(function(){return e.toggleModalMode(!0)})),qU(e,"exitModalMode",(function(){return e.toggleModalMode(!1)})),qU(e,"refreshWidget",(function(){e.$window.navigator.onLine&amp;&amp;!e.$document[0].hidden&amp;&amp;e.refresh()})),qU(e,"refreshWidgetIfOutdatedAndActive",(function(){if(e.isOutdated()&amp;&amp;!e.$document[0].hidden)return e.refreshWidget()}));var i=e.$inject,a=i.$scope.widgetCtrl;return e.config=a.config,e.remove=a.remove,e.editable=a.editable,e.canMoveAcrossDashboards=a.canMoveAcrossDashboards,e.widgetId=a.widgetId,e.MIN_REFRESH_PERIOD=60,e.$scope=i.$scope,e.$interval=i.$interval,e.$window=i.$window,e.$document=i.$document,e.$q=i.$q,e.iElement=i.$element,e.ServiceDiscoverer=i.ServiceDiscoverer,e.STATE=zU,e.i18n=i.i18n,e.transformResponseDates=i.transformResponseDates,e.dateFilter=i.dateFilter,e.dashboardIconOption=i.dashboardIconOption,e.widgetVersion=1,e.canRefresh=!0,e.widgetIsScrolled=!1,e.config=e.config||{},e.data=e.data||{},e.viewModel={widgetState:void 0,error:void 0,errorSmile:"{{ (&gt;_&lt;) }}"},e.activate(),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;HU(e,t)}(t,e),n=t,r=[{key:"activate",value:function(){if(this.label=this.$inject.widgetsRegistry.getLabel(this.widgetId),this.recalculateRefreshPeriod(),!this.isConfigDefined(this.config)||this.config&amp;&amp;this.config.notCompleted)this.viewModel.widgetState=zU.CONFIG;else{if(this.config&amp;&amp;this.config.service)try{this.discoverService(this.config.service.id)}catch(e){return e.message+=" Here is the debug information: ".concat(JSON.stringify(this.config.service)),this.handleServiceError(e)}this.load()}this.setUpWatches(),this.setUpRefresh()}},{key:"recalculateRefreshPeriod",value:function(){this.defaultRefreshPeriod=this.defaultRefreshPeriod||600;var e=Math.max(this.config.refreshPeriod||this.defaultRefreshPeriod,60);this.refreshPeriod=1e3*e}},{key:"setUpWatches",value:function(){var e=this,t=this.$scope,n=this.iElement[0];t.$watch("widgetCtrl.config.service",(function(t){angular.isObject(t)&amp;&amp;e.discoverService(t.id)})),t.$on("widget:save",(function(){e.isShowConfig()&amp;&amp;e.canSaveWidget()&amp;&amp;e.saveConfig()})),t.$on("dashboard:widget-cancel-config",(function(){e.isState(zU.CONFIG)?e.cancelConfig():n.parentNode.hasAttribute("widget-active")&amp;&amp;e.$scope.$emit("dashboard:widget-navigation-deselect")})),t.$on("widget:force-refresh",(function(){e.forceRefresh()})),t.$on("dashboard:widget-edit-selected",(function(){n.parentNode.hasAttribute("widget-active")&amp;&amp;e.$scope.$broadcast("dashboard:widget-open-edit-dropdown")})),t.$on("hub.dashboard.widgetResized",VR()((function(t,r){r.gridsterNode.contains(n)&amp;&amp;e.onResize()}),100)),t.$on("hub.dashboard.make-widget-modal",(function(t,n){n.createdWidget.config===e.config&amp;&amp;e.enterModalMode()}))}},{key:"setState",value:function(e){e!==zU.CONFIG||this.config.notCompleted?this.exitModalMode():this.enterModalMode(),this.viewModel.widgetState=e}},{key:"isState",value:function(e){return this.viewModel.widgetState===e}},{key:"handleServiceError",value:function(e){if(!this.isShowConfig())return this.setState(zU.READY),this.viewModel.error="string"==typeof e?e:e.data||e.message||this.i18n("Can't load information from service.",null,"Dashboard"),0===e.status&amp;&amp;(this.viewModel.error+=this.i18n(" Network error. Please check your connection.",null,"Dashboard")),angular.isFunction(this.catchError)&amp;&amp;this.catchError(this.viewModel.error),this.$q.reject(e)}},{key:"afterLoad",value:function(e){return e}},{key:"saveServersideCache",value:function(e){return this.data={result:e,timestamp:new Date,widgetVersion:this.widgetVersion},this.$q.when(CU.storeCache(this.getId(),this.data))}},{key:"loadDataFromService",value:function(){var e=this;return this.loadData().then((function(t){return e.saveServersideCache(t)})).catch((function(t){return e.handleServiceError(t)}))}},{key:"loadServersideCache",value:function(){var e=this;return this.$q.when(CU.loadCache(this.getId())).then((function(t){if(e.data=e.transformResponseDates(t||{}),e.isOutdated()||e.isOldVersion())return e.loadDataFromService()}))}},{key:"loadData",value:function(){throw new Error("loadData: that method should be implemented in concrete widget")}},{key:"load",value:function(e){var t=this;this.setState(zU.LOADING),this.isShowConfig()||this.$q.when(e?this.loadDataFromService():this.loadServersideCache()).then((function(){t.viewModel.error=null})).catch((function(){})).finally((function(){t.setState(zU.READY),t.data.result&amp;&amp;(t.data.result=t.afterLoad(t.data.result))}))}},{key:"getHeaderText",value:function(){return this.label}},{key:"getLogoIcon",value:function(){return VU[this.serviceName]}},{key:"getRefreshTitle",value:function(){return this.data.timestamp&amp;&amp;this.i18n("Updated {{date}}",{date:this.dateFilter(this.data.timestamp,"HH:mm")})}},{key:"toggleConfig",value:function(){return this.isState(zU.LOADING)||this.isState(zU.READY)?(this.setState(zU.CONFIG),this.storeConfigClone(this.config),!1):this.isState(zU.CONFIG)&amp;&amp;this.isConfigDefined(this.config)?(this.setState(zU.READY),!1):void 0}},{key:"getExternalWidgetOptions",value:function(){return{}}},{key:"storeConfigClone",value:function(e){this._configCloneToRestore=angular.copy(e)}},{key:"restoreConfigFromClone",value:function(){this._configCloneToRestore&amp;&amp;(this.config=this._configCloneToRestore)}},{key:"setReady",value:function(){this.setState(zU.READY)}},{key:"discoverService",value:function(e){var t=this.ServiceDiscoverer.discoverById(e);this.serviceUrl=t.homeUrl,this.serviceName=t.applicationName}},{key:"isOutdated",value:function(){return void 0===this.data.timestamp||this.data.timestamp.getTime()&lt;Date.now()-this.refreshPeriod}},{key:"isOldVersion",value:function(){return this.widgetVersion&amp;&amp;(!this.data.widgetVersion||this.data.widgetVersion&lt;this.widgetVersion)}},{key:"getId",value:function(){throw new Error("getId: that method should be implemented in concrete widget")}},{key:"isIconEnabled",value:function(){return this.dashboardIconOption.enabled}},{key:"isConfigDefined",value:function(){throw new Error("isConfigDefined: that method should be implemented in concrete widget")}},{key:"isShowConfig",value:function(){return this.isState(zU.CONFIG)}},{key:"isEditIconAvailable",value:function(){return this.editable&amp;&amp;!this.isShowConfig()}},{key:"isReady",value:function(){return this.isState(zU.READY)}},{key:"saveConfig",value:function(){this.isConfigDefined(this.config)&amp;&amp;(this.config.notCompleted&amp;&amp;delete this.config.notCompleted,this.$scope.$emit("hub:dashboard:save-dashboard-config"),this.load(!0))}},{key:"cancelConfig",value:function(){this.isConfigDefined(this._configCloneToRestore||{})&amp;&amp;(this.restoreConfigFromClone(),this.setState(zU.READY))}},{key:"canCancelConfig",value:function(){return this.isConfigDefined(this._configCloneToRestore||{})}},{key:"canSaveWidget",value:function(){return!this.isConfigDefined(this.config)||!("refreshPeriod"in this.config)||this.config.refreshPeriod&gt;=60}},{key:"isCompleted",value:function(){return!this.config.notCompleted}},{key:"isLoading",value:function(){return this.isState(zU.LOADING)}},{key:"isShowFullWidgetError",value:function(){return this.data&amp;&amp;qR()(this.data.result)&amp;&amp;this.viewModel.error&amp;&amp;!this.isShowConfig()}},{key:"onScroll",value:function(e){this.widgetIsScrolled=e&gt;16}},{key:"hasFades",value:function(){return!0}},{key:"fullscreen",value:function(){var e=this.iElement[0].querySelector(".widget");WR().enabled&amp;&amp;WR().toggle(e)}},{key:"refresh",value:function(){this.isState(zU.READY)&amp;&amp;this.load(!0)}},{key:"forceRefresh",value:function(){return this.refresh()}},{key:"getDropdownActions",value:function(){var e,t,n=this;return{clone:function(){return n.$scope.$emit("dashboard:clone-widget",n.config)},edit:function(){return n.toggleConfig()},remove:function(){return n.removeWidgetAndClearCache()},share:function(){return n.$scope.$emit("dashboard:share-widget",n.config)},copyCode:(e=FU().mark((function e(){var t;return FU().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,n.getExternalWidgetOptions();case 2:return t=e.sent,e.abrupt("return",n.$scope.$emit("dashboard:share-as-external-widget",n.config,t));case 4:case"end":return e.stop()}}),e)})),t=function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){ZU(i,r,o,a,s,"next",e)}function s(e){ZU(i,r,o,a,s,"throw",e)}a(void 0)}))},function(){return t.apply(this,arguments)}),moveToAnotherDashboard:function(){n.$scope.$emit("dashboard:move-widget",n.config,n.getHeaderText())}}}},{key:"onDropdownSelect",value:function(e){return this.getDropdownActions()[e.key]()}},{key:"removeWidgetAndClearCache",value:function(){if(this.remove(),this.exitModalMode(),this.isCompleted())return CU.removeCache(this.getId())}},{key:"addHeader",value:function(e){this.hasHeader=!0,this.wideLabel=e[0].hasAttribute("full-width"),angular.element(this.iElement[0].querySelector(".widget__header-label")).append(e.contents())}},{key:"toggleModalMode",value:function(e){var t=e?"add":"remove";this.iElement[0].querySelector("widget").classList[t]("widget-container_modal"),this.iElement[0].classList[t]("widget-wrapper_modal"),m.Z[e?"prevent":"reset"]()}},{key:"doNothing",value:function(e){e.stopPropagation()}},{key:"setUpRefresh",value:function(){var e=this;this.refreshIntervalId=this.$interval(this.refreshWidget,this.refreshPeriod),this.$scope.$on("$destroy",(function(){e.$interval.cancel(e.refreshIntervalId),e.$window.removeEventListener("online",e.refreshWidgetIfOutdatedAndActive),e.$document[0].removeEventListener("visibilitychange",e.refreshWidgetIfOutdatedAndActive)})),this.$scope.$on("hub:dashboard:save-dashboard-config",(function(){e.recalculateRefreshPeriod(),e.$interval.cancel(e.refreshIntervalId),e.refreshIntervalId=e.$interval(e.refreshWidget,e.refreshPeriod)})),this.$window.addEventListener("online",this.refreshWidgetIfOutdatedAndActive),this.$window.addEventListener("visibilitychange",this.refreshWidgetIfOutdatedAndActive)}},{key:"getWidgetDropdownOptions",value:function(){return this.$inject.widgetDropdown.getItems(this.canMoveAcrossDashboards?[]:["moveToAnotherDashboard"])}},{key:"hasPaddings",value:function(){return!0}},{key:"hasFooterInConfigMode",value:function(){return!0}},{key:"onResize",value:function(){}}],r&amp;&amp;YU(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(p);qU(KU,"$inject",["$scope","$interval","$window","$document","$q","$element","widgetsRegistry","i18n","widgetDropdown","ServiceDiscoverer","transformResponseDates","dateFilter","dashboardIconOption"]),n(27852),n(60285),n(41637);var JU=n(11739),XU=n(83175),ez=n.n(XU),tz=n(68942),nz=n.n(tz),rz=n(12261),oz=n.n(rz),iz="id,key,disabled,archiveId,installedFromRepository,accessibleServices(id,applicationName,version,key,name),manifest,total,repositoryUrl,repositoryIconUrl",az="WidgetJSON",sz=angular.module("HUB.custom-widget-page",[_x]);sz.controller("CustomWidgetCtrl",["$routeParams","i18n","CustomWidgetResource","hubNotify","userPermissions","hubAnalytics","uploadCustomWidgetDialog","customWidgetService",function(e,t,n,r,o,i,a,s){var c=this;o.bindVariable(this,"updatable","low-level"),this.loadWidget=function(){c.widget=n.get({id:e.key,fields:iz})},this.loadWidget(),this.toggleDisabled=function(o){return n.save({id:e.key},{disabled:o,type:c.widget.type}).$promise.then((function(){o?nm.disableWidget():nm.enableWidget(),c.widget.disabled=o}),r.errorHandler(t("Can't update widget")))},this.uploadNewVersion=function(){return a(c.widget,t("Update Widget"),t("Update")).then((function(e){if(e)return r.success(t("Widget has been successfully updated")),nm.uploadNewWidgetVersion(),c.loadWidget()}))},this.getName=function(e){return e?s.getLocalisedName(e):""},this.getDescription=function(e){return e?s.getLocalisedDescription(e):""}}]),sz.component("customWidgetAccessibleServices",{bindings:{accessibleServices:"&lt;",services:"&lt;"},template:n(21226),controller:["i18n","customWidgetService",function(e,t){var n=this;this.getServiceIconGlyph=function(e){return VU[e.applicationName]},this.getVersionPresentation=function(t){return/&gt;=[\d\.]+/.test(t)?t.replace("&gt;=","")+" "+e("or later"):t},this.getServicesOfType=function(e){return n.accessibleServices.filter((function(t){return t.applicationName===e}))},this.doesVersionSatisfy=function(e){return t.semverServiceVersionCheck(n.services,e)}}]});const cz=sz.name;var lz=angular.module("dashboard.custom-widget.info",[]);lz.component("customWidgetInfo",{bindings:{widget:"&lt;"},template:n(25750),controller:["customWidgetService",function(e){this.getDescription=function(t){return e.getLocalisedDescription(t)}}]});const gz=lz.name;var uz=n(42276),dz=n.n(uz);function pz(e){return pz="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},pz(e)}function Az(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Cz(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Az(Object(n),!0).forEach((function(t){Ez(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Az(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Iz(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||mz(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function fz(e){return function(e){if(Array.isArray(e))return hz(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||mz(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function mz(e,t){if(e){if("string"==typeof e)return hz(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?hz(e,t):void 0}}function hz(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function vz(){vz=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==pz(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function bz(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function yz(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){bz(i,r,o,a,s,"next",e)}function s(e){bz(i,r,o,a,s,"throw",e)}a(void 0)}))}}function wz(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,Sz(r.key),r)}}function _z(){return _z="undefined"!=typeof Reflect&amp;&amp;Reflect.get?Reflect.get.bind():function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&amp;&amp;null!==(e=jz(e)););return e}(e,t);if(r){var o=Object.getOwnPropertyDescriptor(r,t);return o.get?o.get.call(arguments.length&lt;3?e:n):o.value}},_z.apply(this,arguments)}function jz(e){return jz=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},jz(e)}function xz(e,t){return xz=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},xz(e,t)}function Ez(e,t,n){return(t=Sz(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Sz(e){var t=function(e,t){if("object"!==pz(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==pz(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===pz(t)?t:String(t)}var Tz="THEME_CHANGE",Mz=angular.module("ring.dashboard.widget.custom",[GU,cz,_x,gz,zt]).value("websandbox",ez()).factory("getWidgetServiceFetchingUrl",(function(){return function(e){return e.homeUrl}})).factory("createCustomWidgetController",["$q","$log","ServiceDiscoverer","dialog","widgetDirectiveConstructor","gettextCatalog","websandbox","auth","widgetsRegistry","makeCustomWidgetBaseURL","customWidgetService","getWidgetServiceFetchingUrl","ServiceList","hubFeatures","userPermissions",function(e,t,r,o,i,a,c,l,g,u,d,p,A,C,I){var f=function(r){function i(){var e,r,a,s;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,i);for(var c=arguments.length,g=new Array(c),u=0;u&lt;c;u++)g[u]=arguments[u];return Ez((r=this,a=i,s=[].concat(g),a=jz(a),e=function(e,t){if(t&amp;&amp;("object"===pz(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(r,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(a,s||[],jz(r).constructor):a.apply(r,s))),"fetchServiceData",(function(n,r,o){"0-0-0-0-0"===n&amp;&amp;t.warn('Method "fetch" is designed for requesting external services. Use method "fetchHub" for requesting Hub API.');var i=e.getService(n);return e.http.request("".concat(p(i),"/").concat(r),o)})),Ez(e,"downloadFileFromService",function(){var t=yz(vz().mark((function t(n,r,o){var i,a,s,c,l,g=arguments;return vz().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return i=g.length&gt;3&amp;&amp;void 0!==g[3]?g[3]:"",a=e.getService(n),t.next=4,e.http.requestToken();case 4:return s=t.sent,t.next=7,e.http._performRequest("".concat(p(a),"/").concat(r),s,o);case 7:if(c=t.sent,!Io.ZP._isErrorStatus(c.status)){t.next=10;break}throw new Io.Bb(c);case 10:return t.next=12,c.blob();case 12:l=t.sent,e.triggerSaveFileDialog(l,i);case 14:case"end":return t.stop()}}),t)})));return function(e,n,r){return t.apply(this,arguments)}}()),Ez(e,"fetchHubData",(function(t,n){var r=e.widget.manifest;if(!(r.dependencies||r.services||{}).Hub)throw new Error('Cannot perform "fetchHubData" because access to service "Hub" is not requested in widget\'s manifest.');return e.http.request("".concat(l.auth.config.serverUri).concat(t),n)})),Ez(e,"loadServices",(function(t){var n=e.widget.manifest,r=n.dependencies||n.services||{};if(!r[t])throw new Error('Could not find service with application name "'.concat(t,"\". Make sure it is requested in widget's manifest."));return A.loadServices().then((function(){var e=A.getServices();return angular.isArray(e)?e.filter((function(e){return e.applicationName===t&amp;&amp;d.semverServiceVersionCheck(r,e)})):[]}))})),Ez(e,"storeConfigAndGetReady",(function(t){e.config.customWidgetConfig=t,e.saveConfig(),e.setReady()})),Ez(e,"setLabel",(function(t,n){e.label=t,e.labelUrl=n})),Ez(e,"createApplier",(function(t){return function(){for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return e.$scope.$applyAsync((function(){return t.apply(void 0,r)}))}})),Ez(e,"showAboutDialog",(function(){var t=e.widget.manifest;o.show({title:e.i18n("".concat(d.getLocalisedName(t)," ").concat(t.version," by ").concat(t.author)),data:{widget:e.widget},wideDialog:!0,closeOnClick:!0,template:n(43132),buttons:[{label:e.i18n("OK"),default:!0,close:!0}]})})),Ez(e,"passCSSVariables",yz(vz().mark((function t(){var n,r,o,i;return vz().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=getComputedStyle(document.body),r=fz(document.styleSheets).find((function(e){return Array.from(e.cssRules).some((function(e){return(e.selectorText||"").includes(JU.Z.dark)}))})),r){t.next=5;break}return console.warn("Could not find darkStyleSheet"),t.abrupt("return");case 5:return o=Object.values(r.cssRules[0].style).filter((function(e){return!!e})),i=o.reduce((function(e,t){var r=n.getPropertyValue(t);return r&amp;&amp;(e[t]=r),e}),{"background-color":"var(--ring-content-background-color)"}),t.next=9,e.plugin.run("\nvar cssVariables = {\n  ".concat(Object.entries(i).map((function(e){var t=Iz(e,2),n=t[0],r=t[1];return"'".concat(n,"': '").concat(r,"'")})).join(", "),"\n};\n\nvar rootStyle = document.documentElement.style;\n\nfor (var key in cssVariables) {\n  rootStyle.setProperty(key, cssVariables[key]);\n}\n        "));case 9:case"end":return t.stop()}}),t)})))),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;xz(e,t)}(i,r),f=i,m=[{key:"activate",value:function(){var e=this;this.http=new Io.ZP(l.auth,null,{headers:Ez({},fo,4)}),this.widgetsRegistry=this.$scope.widgetCtrl.widgetsRegistry||g,this.widget=this.widgetsRegistry.get(this.widgetId);var t=this.widget.manifest;this.serviceName=t.applicationName,this.iconUrl=t.iconUrl?this.getFullIconUrl(t.iconUrl):null,this.canRefresh=!1,this.label=d.getLocalisedName(t),this.setUpWatches(),I.check("jetbrains.jetpass.low-level").then((function(t){return t&amp;&amp;C.isEnabled("jetbrains.jetpass.service.externalWidgets").then((function(t){return e.copyCodeEnabled=t}))})),this.$scope.$evalAsync((function(){return e.runPlugin()}));var n=function(){return e.passCSSVariables()};document.addEventListener(Tz,n),this.$scope.$on("$destroy",(function(){document.removeEventListener(Tz,n)}))}},{key:"getHostApi",value:function(){var e=this,t=this.createApplier;return{setTitle:t(this.setLabel),setLoadingAnimationEnabled:t((function(t){return e.setState(t?zU.LOADING:zU.READY)})),enterConfigMode:t((function(){return e.setState(zU.CONFIG)})),exitConfigMode:t((function(){return e.setState(zU.READY)})),setError:t((function(t){return e.handleServiceError(t)})),clearError:t((function(){return e.viewModel.error=null})),readCache:function(){return CU.loadCache(e.getId())},storeCache:function(t){return e.saveServersideCache(t)},readConfig:function(){return e.config.customWidgetConfig},storeConfig:t(this.storeConfigAndGetReady),fetch:this.fetchServiceData,fetchHub:this.fetchHubData,downloadFile:this.downloadFileFromService,loadServices:this.loadServices,alert:function(){return s.Z.addAlert.apply(s.Z,arguments)},removeWidget:t((function(){return e.removeWidgetAndClearCache()})),_closePopups:function(){return document.body.click&amp;&amp;document.body.click()}}}},{key:"getId",value:function(){return"customWidget-".concat(this.widgetId,"-").concat(encodeURIComponent(JSON.stringify(this.config)))}},{key:"isConfigDefined",value:function(){return!0}},{key:"refresh",value:function(){var t=this;if(this.isState(zU.READY)&amp;&amp;this.canRefresh&amp;&amp;this.plugin.connection)return this.setState(zU.LOADING),e.when(this.plugin.connection.remote.onRefresh()).finally((function(){return t.setReady()}))}},{key:"load",value:function(){return e((function(e){return e({})}))}},{key:"loadData",value:function(){return e((function(e){return e({})}))}},{key:"toggleConfig",value:function(){_z(jz(i.prototype),"toggleConfig",this).call(this),this.plugin.connection.remote.onConfigure&amp;&amp;this.plugin.connection.remote.onConfigure()}},{key:"getExternalWidgetOptions",value:function(){return this.plugin.connection.remote.getExternalWidgetOptions?this.plugin.connection.remote.getExternalWidgetOptions():_z(jz(i.prototype),"getExternalWidgetOptions",this).call(this)}},{key:"getBaseUrl",value:function(){return this.config.baseUrl||u(this.widgetId)}},{key:"runPlugin",value:function(){var t=this,n=this.widget.manifest.capabilities,r=void 0===n?{}:n,o=a.currentLanguage,i=this.editable.toString(),s=["allow-pointer-lock","allow-downloads",r.topNavigation&amp;&amp;"allow-top-navigation",r.popups&amp;&amp;"allow-popups allow-popups-to-escape-sandbox"].filter((function(e){return!!e})),l=r.clipboardWrite?["clipboard-write *;"]:[];return e(function(){var e=yz(vz().mark((function e(n){var r,a;return vz().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=t.getBaseUrl(),a=r.endsWith(".html")?r:"".concat(r,"/index.html"),t.plugin=c.create(t.getHostApi(),{frameClassName:"custom__iframe",frameContainer:t.iElement[0].querySelector(".custom__iframe-container"),frameSrc:"".concat(a,"?locale=").concat(o,"&amp;editable=").concat(i),sandboxAdditionalAttributes:s.join(" "),allowAdditionalAttributes:l.join(" "),allowFullScreen:!0}),t.$scope.$on("$destroy",(function(){return t.plugin.destroy()})),e.next=6,t.plugin.promise;case 6:return e.next=8,t.plugin.connection.remoteMethodsWaitPromise;case 8:t.plugin.connection.remote.onRefresh&amp;&amp;(t.canRefresh=!0),t.passCSSVariables(),t.setReady(),n(),"appWidget"in t.widget&amp;&amp;t.plugin.iframe.setAttribute("data-extension-point",t.widget.appWidget.extensionPoint);case 13:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}())}},{key:"getWidgetDropdownOptions",value:function(){var e=_z(jz(i.prototype),"getWidgetDropdownOptions",this).call(this);this.plugin.connection.remote.onConfigure||(e=e.filter((function(e){return"edit"!==e.key})));var t=this.copyCodeEnabled&amp;&amp;this.plugin.connection.remote.getExternalWidgetOptions,n=this.widget.manifest;return(t||n)&amp;&amp;(e=[].concat(fz(e),[{key:"about-separator",rgItemType:Mp.Z.ListProps.Type.SEPARATOR}])),t&amp;&amp;(e=[].concat(fz(e),[{key:"copyCode",template:DU(oz(),"".concat(this.i18n("Copy widget code",null,"Dashboard"),"...")),rgItemType:Mp.Z.ListProps.Type.CUSTOM}])),n&amp;&amp;(e=[].concat(fz(e),[{key:"about",template:DU(nz(),this.i18n("About",null,"Dashboard")),rgItemType:Mp.Z.ListProps.Type.CUSTOM}])),e}},{key:"getDropdownActions",value:function(){return Cz(Cz({},_z(jz(i.prototype),"getDropdownActions",this).call(this)),{},{about:this.showAboutDialog})}},{key:"getFullIconUrl",value:function(e){return(0,sl.gJ)(e)?e:"".concat(this.getBaseUrl(),"/").concat(e)}},{key:"triggerSaveFileDialog",value:function(e,t){var n=window.URL.createObjectURL(e),r=document.createElement("a");r.href=n,r.setAttribute("download",t),document.body.appendChild(r),r.click(),r.remove()}},{key:"getService",value:function(e){var t=this.widget.manifest,n=t.dependencies||t.services||{},r=(this.widget.accessibleServices||[]).filter((function(t){return t.id===e}))[0];if(!r)throw new Error('Could not find service with ID "'.concat(e,"\". Make sure it is requested in widget's manifest."));if(!d.semverServiceVersionCheck(n,r))throw new Error("Service ".concat(r.name,' version "').concat(r.version,'" doesn\'t match requested "').concat(n[r.applicationName]));return r}},{key:"hasFooterInConfigMode",value:function(){return!1}},{key:"hasPaddings",value:function(){return!1}},{key:"hasFades",value:function(){return Cz({fadeOut:!0},this.widget.manifest.view).fadeOut}}],m&amp;&amp;wz(f.prototype,m),Object.defineProperty(f,"prototype",{writable:!1}),f;var f,m}(KU);return function(){return f}}]).directive("widgetCustom",["widgetDirectiveConstructor","createCustomWidgetController",function(e,t){return e({template:dz(),controller:t(),scope:{widgetId:"=",config:"=",remove:"&amp;",editable:"=",canMoveAcrossDashboards:"=?",widgetsRegistry:"=?"}})}]).factory("makeCustomWidgetBaseURL",(function(){return function(e){return"api/rest/widgets/".concat(e,"/archive")}}));const Lz=Mz.name;function kz(e){return kz="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},kz(e)}function Oz(){Oz=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==kz(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function Pz(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function Nz(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Pz(i,r,o,a,s,"next",e)}function s(e){Pz(i,r,o,a,s,"throw",e)}a(void 0)}))}}var Dz=angular.module("HUB.directives.custom-widget-list.upload-dialog",["ngFileUpload",_x]);Dz.factory("uploadCustomWidgetDialog",["$q","$log","dialog","hubNotify","i18n","Upload","CustomWidgetResource","backend","hubAnalytics","customWidgetService",function(e,t,r,o,i,a,s,c,l,g){return function(l){var u,d,p=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:null,A=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:i("Upload"),C={selectedFile:null,uploadedArchive:null,isLoading:!1,getName:function(e){return g.getLocalisedName(e)},getDescription:function(e){return g.getLocalisedDescription(e)},onSelectFile:(u=Nz(Oz().mark((function n(r){return Oz().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(r){n.next=2;break}return n.abrupt("return");case 2:return C.isLoading=!0,n.abrupt("return",e(function(){var e=Nz(Oz().mark((function e(n,i){var s,l;return Oz().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,a.http({url:"".concat(c.getAPIUrl(),"/widgets/preview?fields=").concat(iz),headers:{"Content-Type":"application/zip"},data:r});case 3:s=e.sent,l=s.data.manifest,g.validateManifest(l),l.services&amp;&amp;(l.dependencies=l.services),nm.previewUploadedWidget(),C.uploadedArchive=s.data,C.isLoading=!1,n(C.uploadedArchive),e.next=20;break;case 13:e.prev=13,e.t0=e.catch(0),nm.previewErrorForUploadedWidget(),t.error(e.t0),o.error(o.errorMessage(e.t0)),C.isLoading=!1,i(e.t0);case 20:case"end":return e.stop()}}),e,null,[[0,13]])})));return function(t,n){return e.apply(this,arguments)}}()));case 4:case"end":return n.stop()}}),n)}))),function(e){return u.apply(this,arguments)})};return r.show({title:p,template:n(18684),data:C,trapFocus:!1,buttons:[{label:A,default:!0,action:(d=Nz(Oz().mark((function e(){return Oz().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(e.prev=0,!l){e.next=7;break}return e.next=4,s.save({id:l.key,fields:iz},{type:az,archiveId:C.uploadedArchive.archiveId}).$promise;case 4:case 9:return e.abrupt("return",e.sent);case 7:return e.next=9,s.save({fields:iz},{type:az,archiveId:C.uploadedArchive.archiveId}).$promise;case 10:e.next=18;break;case 12:return e.prev=12,e.t0=e.catch(0),t.error(e.t0),nm.widgetUploadFailed(),o.error(o.errorMessage(e.t0)),e.abrupt("return",!1);case 18:case"end":return e.stop()}}),e,null,[[0,12]])}))),function(){return d.apply(this,arguments)})},{label:i("Cancel")}]})}}]);const Rz=Dz.name;var Uz=angular.module("HUB.directives.custom-widget-list-toolbar",[]),zz=function(e){return!(!e||!e.available)&amp;&amp;!(!hx().valid(e.manifest.version)||!hx().valid(e.available.version))&amp;&amp;hx().gt(e.available.version,e.manifest.version)};Uz.controller("CustomWidgetsToolbarCtrl",["$element","$location","$log","$timeout","$scope","hubAnalytics","CustomWidgetResource","HubPluralMessageBundle","hubBulkOperation","i18n","hubNotify","dialog","uploadCustomWidgetDialog","customWidgetService",function(e,t,n,r,o,i,a,s,c,l,g,u,d,p){var A=this;this.pageController=angular.element(document.querySelector("rg-table")).controller(),this.selection=(0,yg.Z)((function(){return A.pageController.selection})),this.uploadWidgetDialog=function(){return d(null,l("New Widget")).then((function(e){e&amp;&amp;(nm.uploadWidget(),t.path("widgets/".concat(e.key)))})).catch(angular.noop)},this.canToggleDisabled=function(e){return!(A.selection.size&lt;=0)&amp;&amp;A.selection.items.some((function(t){return t.local&amp;&amp;t.disabled!==e}))},this.toggleWidgetsDisabled=function(e,t){return c.withoutReporter(e,(function(e){return a.save({id:e.key},{type:az,disabled:t}).$promise.then((function(){e.disabled=t,A.pageController.rerenderItem(e,{disabled:t}),t?nm.disableWidget():nm.enableWidget()}))}))},this.canRemove=function(){return!(A.selection.size&lt;=0)&amp;&amp;A.selection.items.some((function(e){return e.local}))},this.removeWidgets=function(e){var t=function(e){return a.remove({id:e.key}).$promise};return g.confirm({label:s["delete-widgets?"](e.length,{name:p.getLocalisedName(e[0].manifest)}),okButtonLabel:l("Delete"),actionPromise:function(){return c.withAlertReporter(e,t,{success:s["widgets-success-delete"]}).then((function(){A.pageController.reload(),nm.removeWidget()}))}})},this.canInstall=function(){return!(A.selection.size&lt;=0)&amp;&amp;A.selection.items.some((function(e){return e.repo&amp;&amp;!e.installed}))},this.install=function(e){return c.withAlertReporter(e,(function(e){return a.save({},{type:e.type,key:e.key,version:e.manifest.version}).$promise.then((function(){nm.installWidget(e.key)}))}),{success:s["widgets-success-install"]}).then((function(){A.pageController.reload()}))},this.canUpdate=function(){return!(A.selection.size&lt;=0)&amp;&amp;A.selection.items.some((function(e){return e.local&amp;&amp;e.available&amp;&amp;zz(e)}))},this.update=function(e){return c.withAlertReporter(e,(function(e){return a.save({id:e.key},{type:e.type,version:e.available.version}).$promise.then((function(){nm.updateWidget(e.key)}))}),{success:s["widgets-success-update"]}).then((function(){A.pageController.reload()}))}}]);const $z=Uz.name;function Gz(e){return Gz="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Gz(e)}function Bz(e){return function(e){if(Array.isArray(e))return Fz(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Fz(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Fz(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Fz(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function Zz(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Yz(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Zz(Object(n),!0).forEach((function(t){Wz(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Zz(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Wz(e,t,n){return t=function(e){var t=function(e,t){if("object"!==Gz(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Gz(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Gz(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Hz=angular.module("HUB.directives.custom-widget-list",[ZR,$z,Rz,Lz,gz]);Hz.controller("CustomWidgetsListCtrl",["$scope","$q","$location","i18n","getWidgetIconUrl","CustomWidgetResource","CustomWidgetRepositoryResource","hubNotify","HubErrorMessageBundle","customWidgetService","hubSidebarStateStorage",function(e,t,r,o,s,c,l,g,u,d,p){var A=this;this.toolbarTemplate=n(36518),this.rightToolbarTemplate=n(16280),this.sidebarTemplate=n(82344),this.installed=[],this.available=[],this.hideRepository=!1,this.installedLabel=o("Installed Widgets"),this.availableLabel=o("Available from JetBrains Marketplace"),this.selection=new bg.Z,e.$on("$locationChangeSuccess",(function(){A.reload()})),this.renderWidgetIcon=function(e){var t=s(e);return t&amp;&amp;i.createElement("img",{src:t,className:"custom-widget-list__icon"})},this.getKey=function(e){return e.key+e.manifest.version},this.onSelect=function(e){A.selection=e,A.sidebarElement=e.getFocused()},this.reload=function(){var e={widgets:[]},n=r.search().query||"";A.loading=!0;var o=c.get({query:n,fields:iz}).$promise,i=l.get({latestOnly:!0,fields:iz}).$promise.catch((function(t){return g.error(u.msg(t)),A.hideRepository=!0,e}));return t.all({installed:o,available:i}).then((function(e){A.loading=!1;var t=e.installed.widgets||[],n=e.available.widgets||[];A.installed=t.map((function(e){e.local=!0;var t=n.find((function(t){return t.key===e.key}));return e.available=t?Yz({},t.manifest):null,e})),A.available=n.map((function(e){e.id="repo-".concat(e.key,"-").concat(e.manifest.version),e.repo=!0;var n=t.find((function(t){return t.key===e.key}));return e.installed=n?Yz({},n.manifest):null,e})).filter((function(e){return!e.installed})),A.selection=new bg.Z({data:[].concat(Bz(A.installed),Bz(A.available))})}))},p.read().then((function(t){A.isSidebarShown=t,e.$watch("$ctrl.isSidebarShown",p.store)}));var C=function(t){return function(){A.isSidebarShown=t,e.$evalAsync()}};this.showSidebar=function(){return C(!0)},this.hideSidebar=function(){return C(!1)},this.openItemPage=function(){var t=A.selection.getFocused();e.$emit("item:open",t,!1),e.$evalAsync()},this.notOpeningShortcuts={left:this.showSidebar,right:this.hideSidebar},this.shortcuts=Yz(Yz({},this.notOpeningShortcuts),{},{enter:this.openItemPage}),this.rerenderItem=function(e){var t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:{};A.installed=A.installed.map((function(n){return n===e?Yz(Yz({},e),t):n})),A.selection=A.selection.cloneWith({data:[].concat(Bz(A.installed),Bz(A.available))})},this.reload(),this.columns=[{id:"name",title:o("Name"),className:"column-with-gray-dots custom-widget-list__name-column",getValue:function(e){return i.createElement(YI.Z,null,A.renderWidgetIcon(e),e.local&amp;&amp;i.createElement(a.Z,{href:"widgets/".concat(e.id),"data-test-name":"name","data-test-key":e.key},d.getLocalisedName(e.manifest)),e.repo&amp;&amp;i.createElement(vi.Z,null,d.getLocalisedName(e.manifest)),i.createElement(vi.Z,{info:!0,"data-test-description":"description",className:"hub-table__description"},d.getLocalisedDescription(e.manifest)))}},{id:"enabled",getValue:function(e){return i.createElement(YI.Z,null,e.local&amp;&amp;i.createElement(io.Z,{className:"custom-widget-list__status-badge","data-test-custom":"status-badge","data-test-disabled":e.disabled,valid:!e.disabled,invalid:e.disabled},e.disabled?o("disabled",null,"Custom widget list"):o("enabled",null,"Custom widget list")),!1===e.installedFromRepository&amp;&amp;i.createElement(io.Z,{className:"custom-widget-list__status-badge","data-test-custom":"status-badge","data-test-manual-upload":"true"},o("manual upload")),e.local&amp;&amp;zz(e)&amp;&amp;i.createElement(io.Z,{className:"custom-widget-list__status-badge","data-test-custom":"status-badge","data-test-outdated":"true"},o("outdated")))}},{id:"version",title:o("Version"),getValue:function(e){return e.manifest&amp;&amp;e.manifest.version||""}},{id:"applications",title:o("Allowed Applications"),getValue:function(e){return Object.keys(e.manifest.dependencies||[]).map((function(t,n){return i.createElement("span",{key:t},i.createElement(a.Z,{href:"services?query=applicationName:".concat(encodeURIComponent(t)),"data-test-custom":"allowed-application-link"},t),n&lt;Object.keys(e.manifest.dependencies).length-1?", ":null)}))}},{id:"author",title:o("Author"),className:"custom-widget-list__author-column",getValue:function(e){return e.manifest.author}}]}]),Hz.controller("CustomWidgetListSidebarCtrl",["getWidgetIconUrl","customWidgetService",function(e,t){this.getWidgetIconUrl=e,this.getName=function(e){return t.getLocalisedName(e)},this.getDescription=function(e){return t.getLocalisedDescription(e)}}]),Hz.factory("getWidgetIconUrl",["makeCustomWidgetBaseURL",function(e){return function(t){return t.repositoryIconUrl||t.manifest.iconUrl&amp;&amp;"".concat(e(t.key),"/").concat(t.manifest.iconUrl)||t.manifest.applicationName&amp;&amp;VU[t.manifest.applicationName]}}]);const qz=Hz.name;function Qz(e){return Qz="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Qz(e)}function Vz(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Kz(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Vz(Object(n),!0).forEach((function(t){Jz(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Vz(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Jz(e,t,n){return t=function(e){var t=function(e,t){if("object"!==Qz(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Qz(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Qz(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Xz="id,type,endUserAgreement(enabled,text,majorVersion,minorVersion,updateTime,requiredForREST)",e$=angular.module("HUB.end-user-agreement.administration",[DP,UP,Ep]);e$.controller("EndUserAgreementAdministrationCtrl",["$scope","SettingsPublicResource","i18n","dialog","hubNotify","HubErrorMessageBundle","hcUserAgreement",function(e,t,r,o,i,a,s){e.ui={ready:!1,inProgress:!1,invalidate:!1};var c=null,l=null;t.query({fields:Xz}).$promise.then((function(t){e.ui.ready=!0,e.settings=t,e.settings.endUserAgreement.text||(e.settings.endUserAgreement.text=""),c=e.settings.endUserAgreement.text,l=e.settings.endUserAgreement.requiredForREST}));var g=function(){var n=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:{};if(!e.ui.inProgress){e.true=!1;var r=e.settings;return t.save(Kz(Kz({},r),{},{endUserAgreement:Kz(Kz({},r.endUserAgreement),n)})).$promise.then((function(){return t.get({fields:Xz}).$promise})).then((function(t){e.settings.endUserAgreement=Kz(Kz({},e.settings.endUserAgreement),t.endUserAgreement)})).finally((function(){c=e.settings.endUserAgreement.text,l=e.settings.endUserAgreement.requiredForREST,e.ui.invalidate=!1,e.ui.inProgress=!1}))}},u=function(){return!(!e.settings||!e.settings.endUserAgreement)&amp;&amp;c!==e.settings.endUserAgreement.text},d=function(){return"".concat(e.settings.endUserAgreement.majorVersion,".").concat(e.settings.endUserAgreement.minorVersion)};e.update=function(){var t=e.ui.invalidate,a=d(),c=function(){return g({majorVersion:t?null:e.settings.endUserAgreement.majorVersion}).then((function(){!function(e,t,n){e===t?i.success(r("User agreement saved")):n?i.success(r("User agreement saved as new major version {{currentVersion}}",{currentVersion:t})):i.success(r("User agreement saved as new minor version {{currentVersion}}",{currentVersion:t}))}(a,d(),t)}),(function(){i.error(r("User Agreement wasn't saved"))})).then((function(){s.checkConsentAndShowDialog()}))};return t?o.show({title:r("Invalidate Current Agreement?"),template:n(73560),buttons:[{label:r("Save"),default:!0,action:c},{label:r("Cancel")}]}):c()},e.toggle=function(){g({enabled:!e.settings.endUserAgreement.enabled}).then((function(){return s.checkConsentAndShowDialog()})).catch((function(e){return i.error(a.msg(e))}))},e.isDirty=function(){return!(!e.settings||!e.settings.endUserAgreement)&amp;&amp;(u()||l!==e.settings.endUserAgreement.requiredForREST)},e.isTextChanged=function(){return u()},e.isEmpty=function(){return""===(e.settings&amp;&amp;e.settings.endUserAgreement.text||"").trim()},e.cancel=function(){e.settings.endUserAgreement.text=c,e.settings.endUserAgreement.requiredForREST=l},e.keyMap={comboSubmit:function(t){e.update(),t.preventDefault()},cancel:function(t){e.cancel(),t.preventDefault()},skip:function(){}},e.downloadOptions=[{type:"txt",download:function(){var t=e.settings.endUserAgreement;(0,KI.saveAs)(new Blob([t.text],{type:"text/plain"}),"user-agreement-".concat(t.majorVersion,".").concat(t.minorVersion,".txt"))},label:r(".txt")},{type:"html",download:function(){var t=e.settings.endUserAgreement;(0,KI.saveAs)(new Blob([document.querySelector("markdown-preview").innerHTML],{type:"text/html"}),"user-agreement-".concat(t.majorVersion,".").concat(t.minorVersion,".html"))},label:r(".html")}],e.dropdownConfig={minWidth:80}}]);const t$=e$.name;var n$=n(73588),r$=n.n(n$);function o$(e){return o$="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},o$(e)}function i$(){i$=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==o$(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function a$(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function s$(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){a$(i,r,o,a,s,"next",e)}function s(e){a$(i,r,o,a,s,"throw",e)}a(void 0)}))}}function c$(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,l$(r.key),r)}}function l$(e){var t=function(e,t){if("object"!==o$(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==o$(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===o$(t)?t:String(t)}var g$=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.auth=t,this.http=new Io.ZP(t)},t=[{key:"extractResponse",value:function(e){var t=e.error;if(t)throw new Error(t.message||t.code);return e.result||e.toString&amp;&amp;e.toString()||e}},{key:"getReadme",value:(a=s$(i$().mark((function e(t,n){var r;return i$().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.http.post("".concat(t,"/~rpc/getProjectReadme"),{body:{projectId:n}});case 2:return r=e.sent,e.abrupt("return",this.extractResponse(r));case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return a.apply(this,arguments)})},{key:"getVcsSettings",value:(i=s$(i$().mark((function e(t,n){var r,o;return i$().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,this.http.post("".concat(t,"/~rpc/loadProjectFromProjectWizard"),{body:{projectId:n}});case 3:return r=e.sent,o=this.extractResponse(r),e.abrupt("return",JSON.parse(o.vcsSettings));case 8:throw e.prev=8,e.t0=e.catch(0),e.t0.data?this.extractResponse(e.t0.data):e.t0;case 11:case"end":return e.stop()}}),e,this,[[0,8]])}))),function(e,t){return i.apply(this,arguments)})},{key:"checkIfCanCreateProject",value:(o=s$(i$().mark((function e(t,n){var r,o;return i$().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.http.post("".concat(t,"/~rpc/checkCanCreateProject"),{body:{hubProjectId:n}});case 2:if(r=e.sent,(o=this.extractResponse(r)).isAllowed){e.next=6;break}throw new Error(o.message);case 6:return e.abrupt("return",o);case 7:case"end":return e.stop()}}),e,this)}))),function(e,t){return o.apply(this,arguments)})},{key:"checkVcsConnection",value:(r=s$(i$().mark((function e(t,n,r,o){var i,a;return i$().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=JSON.stringify({mappings:[o]}),e.next=3,this.http.post("".concat(t,"/~rpc/createProjectFromProjectWizardTestConnection"),{body:{hubProjectId:n,vcsServiceId:r,vcsJSON:i}});case 3:return a=e.sent,e.abrupt("return",this.extractResponse(a));case 5:case"end":return e.stop()}}),e,this)}))),function(e,t,n,o){return r.apply(this,arguments)})},{key:"createProject",value:(n=s$(i$().mark((function e(t,n){var r;return i$().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,this.http.post("".concat(t,"/~rpc/createProjectFromProjectWizard"),{body:n});case 3:return r=e.sent,e.abrupt("return",this.extractResponse(r));case 7:throw e.prev=7,e.t0=e.catch(0),new Error(e.t0.data.error.message);case 10:case"end":return e.stop()}}),e,this,[[0,7]])}))),function(e,t){return n.apply(this,arguments)})}],t&amp;&amp;c$(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t,n,r,o,i,a}(),u$=n(79108),d$=n(96539),p$=n(90538),A$=n.n(p$),C$=n(25510),I$=n(85626),f$=n(58907),m$=n(53034),h$=["onCreate","onCancel","inProgress","errorMessage","organizations"];function v$(e){return v$="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},v$(e)}function b$(){return b$=Object.assign?Object.assign.bind():function(e){for(var t=1;t&lt;arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&amp;&amp;(e[r]=n[r])}return e},b$.apply(this,arguments)}function y$(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,x$(r.key),r)}}function w$(e){return w$=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},w$(e)}function _$(e,t){return _$=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},_$(e,t)}function j$(e,t,n){return(t=x$(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function x$(e){var t=function(e,t){if("object"!==v$(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==v$(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===v$(t)?t:String(t)}var E$=/\b([^\s"'-])|\B([A-Z\d])/g,S$=/[\W]/g,T$=/^[_0-9A-Za-z]+$/,M$=/[^_0-9A-Za-z]/g,L$=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return j$(e=function(e,t,n){return t=w$(t),function(e,t){if(t&amp;&amp;("object"===v$(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],w$(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"errorValidator",(function(t){var n=e.context.i18n,r=t.name,o=void 0===r?"":r,i=t.key,a=void 0===i?"":i,s=o?null:n("Value is required"),c=a?null:n("Value is required"),l=a&amp;&amp;a.match(T$)?null:n("Cannot contain {{badSymbols}}",{badSymbols:e.getBadKeySymbols(a)}),g=a.length&lt;100?null:n("Key is too long");return{name:s,key:c||l||g}})),j$(e,"storeFormApi",(function(t){return e.formApi=t})),j$(e,"onNameChange",(function(t){var n=t.target.value;if(e.formApi.setAllValues({name:n}),!e.formApi.touched.key){var r=e.generateKey(n);e.formApi.setAllValues({key:r})}})),j$(e,"onOrganizationChange",(function(t){return e.formApi.setAllValues({organization:t&amp;&amp;t.model})})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;_$(e,t)}(t,e),n=t,r=[{key:"generateKey",value:function(e){if(!e)return"";var t=e.match(E$)||[];return(t.length&gt;1?t.join("").toUpperCase():e.toUpperCase()).replace(S$,"")}},{key:"getBadKeySymbols",value:function(e){if(!e)return"";var t=e.match(M$);if(!t)return"";var n=new Set(t);return Array.from(n.values()).join(",")}},{key:"render",value:function(){var e=this,n=this.props,r=n.onCreate,o=n.onCancel,s=n.inProgress,c=n.errorMessage,l=n.organizations,g=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||Object.prototype.propertyIsEnumerable.call(e,n)&amp;&amp;(o[n]=e[n])}return o}(n,h$),u=(l||[]).map(t.organizationToSelectOption),d=this.context,p=d.i18n,A=d.helpBaseUrl,C=d.permissionCache,I=l&amp;&amp;l.length&gt;0&amp;&amp;C.has("jetbrains.jetpass.low-level");return i.createElement(f$.Form,{validateError:this.errorValidator,dontValidateOnMount:!0},(function(n){e.storeFormApi(n);var l=Object.values(n.errors).every((function(e){return!e}));return i.createElement(I$.Z,b$({show:!0,contentClassName:"create-project-dialog__content"},g),i.createElement(Vi.Z,{"data-test":"dialog-header"},p("Create Project")),i.createElement(Ki.Z,null,i.createElement("form",{className:"ring-form"},i.createElement("fieldset",{disabled:s,className:"integration-form__fieldset"},i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},p("Name")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:n.errors.name},i.createElement("input",{"data-test":"project-name",className:"ring-input ring-input-size_m",value:n.values.name||"",onChange:e.onNameChange,autoFocus:!0})))),i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},p("Key")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:n.errors.key},i.createElement("input",{"data-test":"project-key",className:"ring-input ring-input-size_m",value:n.values.key||"",onChange:function(e){n.setAllTouched({key:!0}),n.setAllValues({key:e.target.value})}})),A&amp;&amp;i.createElement("div",{className:"ring-form__control__description"},i.createElement("span",null,p("Unique identifier of a Hub project.")),"Â&nbsp;",i.createElement(a.Z,{href:"".concat(A,"Project-Wizard.html#pwProjectKey")},p("Details"))))),I&amp;&amp;i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},p("Organization")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(Xn.ZP,{"data-test":"project-organization",type:Xn.ZP.Type.BUTTON,className:"ring-input-size_m",renderOptimization:!1,selected:t.organizationToSelectOption(n.values.organization)||null,data:u,clear:!0,filter:!0,label:p("Unassigned"),onChange:e.onOrganizationChange}),i.createElement("div",{className:"ring-form__control__description"},p("Groups this project with other projects under the same umbrella organization")))),i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},p("Description")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:n.errors.description},i.createElement("textarea",{"data-test":"project-description",className:"ring-input ring-input-size_l ring-input-height_l",value:n.values.description||"",onChange:function(e){return n.setAllValues({description:e.target.value})}}))))))),i.createElement(C$.Z,null,i.createElement(bi.ZP,{"data-test":"dialog-footer-button",loader:s,disabled:s||!l,primary:!0,onClick:function(){return r(n.values)}},p("Create")),i.createElement(bi.ZP,{"data-test":"dialog-footer-button",loader:s,disabled:s,onClick:o},p("Cancel")),c&amp;&amp;i.createElement("span",{className:"integration-form__error"},c)))}))}}],r&amp;&amp;y$(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);j$(L$,"propTypes",{onCreate:Zg().func.isRequired,onCancel:Zg().func.isRequired,inProgress:Zg().bool,errorMessage:Zg().string,organizations:Zg().array}),j$(L$,"contextTypes",{i18n:Zg().func.isRequired,permissionCache:Zg().object.isRequired,helpBaseUrl:Zg().string}),j$(L$,"organizationToSelectOption",(function(e){return e&amp;&amp;{label:e.name,key:e.key,model:e}}));var k$=n(51687),O$=n.n(k$);function P$(e){return P$="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},P$(e)}function N$(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,U$(r.key),r)}}function D$(e){return D$=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},D$(e)}function R$(e,t){return R$=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},R$(e,t)}function U$(e){var t=function(e,t){if("object"!==P$(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==P$(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===P$(t)?t:String(t)}var z$=function(e){function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),e=this,r=arguments,n=D$(n=t),function(e,t){if(t&amp;&amp;("object"===P$(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(n,r||[],D$(e).constructor):n.apply(e,r));var e,n,r}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;R$(e,t)}(t,e),n=t,(r=[{key:"render",value:function(){var e=this.props,t=e.title,n=e.count,r=e.expanded,o=e.onClick,a=e.iconUrl,s=e.settingsTitle,c=e.settingsLink,l=e.onLocationChange;return i.createElement("h1",{className:"project-list__section-title",onClick:o},i.createElement(da.ZP,{glyph:r?qx():Qg(),size:da.ZP.Size.Size16,className:"project-list__section-title__expander",suppressSizeWarning:!0}),a&amp;&amp;i.createElement(ZI.Z,{url:a,size:da.ZP.Size.Size16}),t,i.createElement("span",{className:"project-list__section-title__counter"},n),c&amp;&amp;i.createElement(da.ZP,{glyph:O$(),size:da.ZP.Size.Size16,className:"project-list__section-title__icon-btn",title:s,onClick:function(){return l(c)},suppressSizeWarning:!0}))}}])&amp;&amp;N$(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);!function(e,t,n){(t=U$(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(z$,"propTypes",{title:Zg().string.isRequired,count:Zg().number,expanded:Zg().bool,onClick:Zg().func,settingsTitle:Zg().string,settingsLink:Zg().string,onLocationChange:Zg().func.isRequired,iconUrl:Zg().string});var $$=n(36244),G$=n.n($$),B$=n(49869),F$=n.n(B$),Z$=n(64630),Y$=n.n(Z$),W$=["className","children","getNavigationLinks","onDropdownShow"];function H$(e){return H$="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},H$(e)}function q$(){return q$=Object.assign?Object.assign.bind():function(e){for(var t=1;t&lt;arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&amp;&amp;(e[r]=n[r])}return e},q$.apply(this,arguments)}function Q$(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,X$(r.key),r)}}function V$(e){return V$=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},V$(e)}function K$(e,t){return K$=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},K$(e,t)}function J$(e,t,n){return(t=X$(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function X$(e){var t=function(e,t){if("object"!==H$(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==H$(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===H$(t)?t:String(t)}var eG=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return J$(e=function(e,t,n){return t=V$(t),function(e,t){if(t&amp;&amp;("object"===H$(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],V$(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"state",{expanded:new Set}),J$(e,"getIsResourceExpanded",(function(t){return e.state.expanded.has(t)})),J$(e,"toggleExpanded",(function(t,n){e.setState({expanded:n?new Set([t]):new Set([])})})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;K$(e,t)}(t,e),n=t,(r=[{key:"render",value:function(){var e=this.props,t=e.className,n=e.children,r=e.getNavigationLinks,o=e.onDropdownShow,a=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||Object.prototype.propertyIsEnumerable.call(e,n)&amp;&amp;(o[n]=e[n])}return o}(e,W$),s=r({getIsResourceExpanded:this.getIsResourceExpanded,toggleExpanded:this.toggleExpanded});return i.createElement(oC.Z,q$({onShow:o,className:t,anchor:i.Children.only(n),"data-test":"project-app"},a),i.createElement(rC.Z,{attached:!1,closeOnSelect:!0,data:s}))}}])&amp;&amp;Q$(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.PureComponent);J$(eG,"propTypes",{className:Zg().string,children:Zg().node,getNavigationLinks:Zg().func.isRequired,onDropdownShow:Zg().func.isRequired}),J$(eG,"contextTypes",{i18n:Zg().func.isRequired,permissionCache:Zg().object.isRequired});var tG=["project","teamMembers","onFavoriteToggle","loadUpsourceRepository","organization","showStarOnFavoriteProject","upsourceRepositories","onArchiveProject","onDeleteProject"];function nG(e){return nG="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},nG(e)}function rG(){return rG=Object.assign?Object.assign.bind():function(e){for(var t=1;t&lt;arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&amp;&amp;(e[r]=n[r])}return e},rG.apply(this,arguments)}function oG(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function iG(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,lG(r.key),r)}}function aG(e){return aG=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},aG(e)}function sG(e,t){return sG=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},sG(e,t)}function cG(e,t,n){return(t=lG(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function lG(e){var t=function(e,t){if("object"!==nG(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==nG(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===nG(t)?t:String(t)}var gG=cG(cG(cG(cG({},Tl,"YT"),El,"UP"),xl,"VCS"),Sl,"TC"),uG="jetbrains.jetpass.project-read-basic",dG=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return cG(e=function(e,t,n){return t=aG(t),function(e,t){if(t&amp;&amp;("object"===nG(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],aG(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"getProjectApps",(function(t){var n=e.context,r=n.disableIntegrationsSection,o=n.permissionCache,i=(t.resources&amp;&amp;!r?t.resources:[]).filter((function(e){return e.service&amp;&amp;e.service.trusted})).map((function(e){return e.service.applicationName})),a=Ll.filter((function(e){return i.includes(e)&amp;&amp;"Hub"!==e}));return o.has(uG,t.id)&amp;&amp;a.push("Hub"),a})),cG(e,"onDropdownShow",(function(t){if(t===El){var n=e.props,r=n.project,o=n.loadUpsourceRepository,i=n.upsourceRepositories;e.context.permissionCache.has("jetbrains.upsource.project.admin",r.id)&amp;&amp;r.resources.filter((function(e){return e.service.applicationName===t})).forEach((function(e){i[e.id]||o(e)}))}})),cG(e,"getNavigationLinks",(function(t){var n=t.getIsResourceExpanded,r=t.toggleExpanded,o=t.applicationName,a=e.context,s=a.i18n,c=a.permissionCache,l=a.getProjectNavigationLinks,g=e.props,u=g.project,d=g.upsourceRepositories,p=g.onArchiveProject,A=g.onDeleteProject;return l?l(u):function(e){var t=e.applicationName,n=e.project,r=e.getIsResourceExpanded,o=e.toggleExpanded,a=e.i18n,s=e.permissionCache,c=e.upsourceRepositories,l=e.onArchiveProject,g=e.onDeleteProject,u=(n.resources||[]).filter((function(e){return e.service.applicationName===t})).filter((function(e){return e.service.trusted})),d=1===u.length,p=[];t!==jl&amp;&amp;p.push(uE("label",AE(t,a)));var A=s.has("jetbrains.jetpass.project-read",n.id),C=s.has("jetbrains.jetpass.project-update",n.id),I=s.has("jetbrains.jetpass.project-delete",n.id);if(t===jl){if(!A)return p;var f="projects-administration/".concat(fC(n.name,n.id)),m=!n.global&amp;&amp;I;return p.push(lE(a("Settings"),f,"hub.general",m)),p.push(lE(a("Resources"),"".concat(f,"?tab=resources"),"hub.resources",m)),!n.global&amp;&amp;s.has("user-read | user-read-basic")&amp;&amp;p.push(lE(a("Team"),"".concat(f,"?tab=team"),"hub.team",m)),s.has("(user-read | user-read-basic) &amp; role-read")&amp;&amp;p.push(lE(a("Access"),"".concat(f,"?tab=access"),"hub.access",m)),n.global||!C&amp;&amp;!I||(p.push(uE()),C&amp;&amp;p.push(gE(a("Archive"),"hub.archive",(function(){return function(e,t,n){return CE.apply(this,arguments)}(n,l,a)}),m)),I&amp;&amp;p.push(gE(a("Delete"),"hub.delete",(function(){return function(e,t,n){return IE.apply(this,arguments)}(n,g,a)}),!1,"project-navigation__delete-item",Vx()))),p}return u.forEach((function(e){var l=e.service,g=r(e);if(p=d?p:[].concat(eE(p),[dE(e.id,e.name,g,(function(t){t.preventDefault(),t.stopPropagation(),o(e,!g)}))]),d||g){var u=function(t,n,r){var o=arguments.length&gt;3&amp;&amp;void 0!==arguments[3]?arguments[3]:"";return function(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Xx(Object(n),!0).forEach((function(t){oE(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Xx(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({label:t,href:n,className:"".concat(d?null:"project-navigation__leveled-item"," ").concat(o),key:"".concat(t.toLowerCase(),".").concat(e.id)},r)};switch(t){case Tl:p=[].concat(eE(p),[u(a("Issues"),"".concat(l.homeUrl,"/issues/").concat(e.key)),u(a("Agile Boards"),"".concat(l.homeUrl,"/agiles")),u(a("Reports"),"".concat(l.homeUrl,"/reports")),u(a("Knowledge Base"),"".concat(l.homeUrl,"/articles/").concat(e.key))]),C&amp;&amp;(p=[].concat(eE(p),[u(a("Settings"),parseFloat(l.version)&gt;=7?"".concat(l.homeUrl,"/admin/editProject/").concat(e.id):"".concat(l.homeUrl,"/admin/editProject/").concat(n.id))]));break;case Sl:p=[].concat(eE(p),[{label:a("Overview"),href:"".concat(l.homeUrl,"/project.html?projectId=").concat(e.key),key:"overview.".concat(e.id)}]),C&amp;&amp;(p=[].concat(eE(p),[u(a("Settings"),"".concat(l.homeUrl,"/admin/editProject.html?projectId=").concat(e.key))]));break;case El:var A="".concat(e.service.homeUrl,"/").concat(e.key);if(p=[].concat(eE(p),[u(a("Overview"),A),u(a("Reviews"),"".concat(A,"/reviews")),u(a("Branches"),"".concat(A,"/branches")),u(a("Analytics"),"".concat(A,"/analytics/"))]),s.has("jetbrains.upsource.project.admin",n.id)){p=[].concat(eE(p),[u(a("Settings"),"".concat(A,"/administration/settings?tab=general"))]);var I=c[e.id]?c[e.id]:null;I?I.error||(p=[].concat(eE(p),[u(a("Copy VCS link"),null,{onClick:function(){return function(e,t,n){if("hosted-git"!==t.vcs)return pE(t.url,n);var r=e.resources.filter((function(e){return e.service.id===t["vcs-hosting-id"]}))[0].service.homeUrl;return pE("".concat(r,"/").concat(t["repo-id"]||t.id,".git"),n)}(n,I[0],a)}},"project-navigation__copy-link project-navigation__unresponsive-item")])):p=[].concat(eE(p),[{key:"loading-copy.".concat(e.id),rgItemType:sE,template:i.createElement("span",{className:"project-navigation__disabled-item"},i.createElement(Ka.Z,{className:"project-navigation__loader"}),a("Copy VCS link"))}])}break;case xl:"repository"===e.type&amp;&amp;s.has("create_repository",n.id)&amp;&amp;(p=[].concat(eE(p),[u(a("Open in IntelliJ IDEA"),"jetbrains://idea/checkout/git?checkout.repo=".concat(l.homeUrl,"/").concat(e.name.replace(" repo",".git"),"&amp;idea.required.plugins.id=Git4Idea")),u(a("Settings"),e.homeUrl),u(a("Copy VCS link"),null,{onClick:function(){return pE("".concat(e.homeUrl.replace("~repo/",""),".git"),a)}},"project-navigation__copy-link project-navigation__unresponsive-item")]))}}})),p}({applicationName:o,project:u,getIsResourceExpanded:n,toggleExpanded:r,i18n:s,permissionCache:c,upsourceRepositories:d,onArchiveProject:p,onDeleteProject:A})})),cG(e,"getProjectLink",(function(){var t=e.props.project,n=e.context.getProjectLink;return n?n(t):"projects/".concat(fC(t.name,t.id))})),cG(e,"getProjectBadges",(function(){var t=e.props.project,n=e.context.getProjectBadges;return n?n(t):[]})),cG(e,"getTeamLink",(function(){var t=e.props.project,n=e.context.getTeamLink;return n?n(t):"projects-administration/".concat(fC(t.name,t.id),"?tab=team")})),cG(e,"getUserLink",(function(t){var n=e.context.getUserLink;return n?n(t):"users/".concat(IC(t.login,t.id))})),cG(e,"getOrganizationLink",(function(t){var n=e.context.getOrganizationLink;return n?n(t):"organizations/".concat(CC(t.name,t.id))})),cG(e,"onStarClick",(function(){var t=e.props,n=t.project;(0,t.onFavoriteToggle)(n)})),cG(e,"onOrganizationClick",(function(){var t=e.props.organization,n=e.context.onLocationChange;t&amp;&amp;n(e.getOrganizationLink(t))})),cG(e,"onUserClick",(function(t,n){(0,e.context.onLocationChange)(n?e.getTeamLink():e.getUserLink(t))})),cG(e,"onIssuesClick",(function(){var t=e.context;(0,t.onLocationChange)((0,t.getIssuesLink)(e.props.project).href)})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;sG(e,t)}(t,e),n=t,r=[{key:"render",value:function(){var e=this,t=this.props,n=t.project,r=t.teamMembers,o=(t.onFavoriteToggle,t.loadUpsourceRepository,t.organization),s=t.showStarOnFavoriteProject,c=(t.upsourceRepositories,t.onArchiveProject,t.onDeleteProject,function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||Object.prototype.propertyIsEnumerable.call(e,n)&amp;&amp;(o[n]=e[n])}return o}(t,tG)),l=this.context,g=l.getText,u=l.getIssuesLink,d=l.disableIntegrationsSection,p=l.permissionCache,A=da.ZP.Size.Size40,C=da.ZP.Size.Size24,I=Dm()(n.description),f=p.has(uG,n.id),m=this.getNavigationLinks({applicationName:"Hub"});return i.createElement("div",rG({className:Wg()({"project-list__projects__row":!0,"project-list__projects__row_disable":!f}),"data-test-name":n.name},c),i.createElement(Ca.Z,{className:"project-list__projects__row__star-wrapper",title:n.myFavorite?g("removeFromFavorites"):g("addToFavorites")},i.createElement(bi.ZP,{className:Wg()({"project-list__projects__row__star":!0,"project-list__projects__row__star_active":n.myFavorite}),icon:n.myFavorite?F$():G$(),"data-test-is-favorite":n.myFavorite,"data-test":"favorite-toggle",onClick:this.onStarClick})),i.createElement("div",{className:"project-list__projects__row__icon"},n.iconUrl?i.createElement(ZI.Z,{url:n.iconUrl,size:A}):i.createElement(da.ZP,{glyph:Um(),size:A})),i.createElement("div",{className:"project-list__projects__row__content"},i.createElement("div",{className:"project-list__projects__row__content__title"},i.createElement(a.Z,{href:this.getProjectLink(),className:"project-list__projects__row__content__title-link"},n.name),this.getProjectBadges().map((function(e){return i.createElement(io.Z,{key:"key-".concat(e.key),className:"project-list__projects__row__content__title-badge"},e.title)}))),I&amp;&amp;i.createElement("div",{className:"project-list__projects__row__content__description",title:I},I)),u&amp;&amp;i.createElement("div",{className:"project-list__projects__row__right"},i.createElement("span",{className:"project-list__projects__row__issues-link",onClick:this.onIssuesClick},u().label)),!s&amp;&amp;o&amp;&amp;i.createElement("div",{key:"organization-name",onClick:this.onOrganizationClick,className:"project-list__projects__row__right project-list__projects__organization",title:o.name},o.iconUrl&amp;&amp;i.createElement("div",{key:"organization-icon",className:"project-list__projects__row__avatar project-list__projects__row__avatar_organization"},i.createElement(ZI.Z,{url:o.iconUrl,size:C})),i.createElement("div",{className:"project-list__projects__organization-name"},o.name)),r.length&gt;0&amp;&amp;i.createElement("div",{className:"project-list__projects__row__right"},r.slice(0,6).map((function(t,n){var o=r.length&gt;6&amp;&amp;5===n;return i.createElement("div",{key:t.id,onClick:function(){return e.onUserClick(t,o)},className:Wg()({"project-list__projects__row__avatar":!0,"project-list__projects__row__avatar_show-more":o})},i.createElement(ZI.Z,{url:t.profile.avatar.url,size:C,style:{borderRadius:"50%"}}),o&amp;&amp;i.createElement("div",{className:"project-list__projects__row__avatar-count"},r.length-6+1))}))),i.createElement("div",{className:Wg()({"project-list__projects__row__right":!0,"project-list__projects__row__right_integrations":!d})},this.getProjectApps(n).map((function(t){return i.createElement(eG,{key:t,"data-test-app-name":t,getNavigationLinks:function(n){return e.getNavigationLinks(function(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?oG(Object(n),!0).forEach((function(t){cG(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):oG(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({applicationName:t},n))},onDropdownShow:function(){return e.onDropdownShow(t)},className:Wg()({"project-list__projects__row__hub":"Hub"===t,"project-list__projects__row__hub__unavailable":"Hub"===t&amp;&amp;!m.length})},i.createElement("span",null,"Hub"===t&amp;&amp;i.createElement(da.ZP,{className:"project-list__projects__row__hub-icon",glyph:Y$(),size:da.ZP.Size.Size16,suppressSizeWarning:!0}),"Hub"!==t&amp;&amp;i.createElement("span",{className:"project-list__projects__row__integration-label"},gG[t])))}))))}}],r&amp;&amp;iG(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.PureComponent);function pG(e){return pG="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},pG(e)}function AG(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,mG(r.key),r)}}function CG(e){return CG=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},CG(e)}function IG(e,t){return IG=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},IG(e,t)}function fG(e,t,n){return(t=mG(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function mG(e){var t=function(e,t){if("object"!==pG(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==pG(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===pG(t)?t:String(t)}cG(dG,"propTypes",{project:Zg().object.isRequired,organization:Zg().object,teamMembers:Zg().array.isRequired,onFavoriteToggle:Zg().func.isRequired,upsourceRepositories:Zg().object.isRequired,loadUpsourceRepository:Zg().func.isRequired,showStarOnFavoriteProject:Zg().bool,onArchiveProject:Zg().func.isRequired,onDeleteProject:Zg().func.isRequired}),cG(dG,"contextTypes",{i18n:Zg().func.isRequired,getText:Zg().func.isRequired,permissionCache:Zg().object.isRequired,onLocationChange:Zg().func.isRequired,getProjectLink:Zg().func,getProjectBadges:Zg().func,getOrganizationLink:Zg().func,getTeamLink:Zg().func,getUserLink:Zg().func,getProjectNavigationLinks:Zg().func,getIssuesLink:Zg().func,disableIntegrationsSection:Zg().bool});var hG=function(e){function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),e=this,r=arguments,n=CG(n=t),function(e,t){if(t&amp;&amp;("object"===pG(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(n,r||[],CG(e).constructor):n.apply(e,r));var e,n,r}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;IG(e,t)}(t,e),n=t,r=[{key:"render",value:function(){var e=this.props,t=e.projects,n=e.loading,r=e.onLoadMore,o=e.shownItems,s=e.totalItems,c=e.onFavoriteToggle,l=e.upsourceRepositories,g=e.loadUpsourceRepository,u=e.onArchiveProject,d=e.onDeleteProject,p=this.context.getText,A=s&gt;o,C=["project-list__show-more"];return n&amp;&amp;C.push("project-list__show-more_loading"),i.createElement("div",{className:"project-list__projects"},i.createElement("div",{className:"project-list__projects__rows","data-test":"project-list"},t.map((function(e){return i.createElement(dG,{key:e.id,project:e,teamMembers:e.team&amp;&amp;e.team.users||[],onFavoriteToggle:c,"data-test":"project",upsourceRepositories:l,loadUpsourceRepository:g,showStarOnFavoriteProject:!0,onArchiveProject:u,onDeleteProject:d})}))),(n||A)&amp;&amp;i.createElement("div",{className:C.join(" "),"data-test":"project-list-footer"},!n&amp;&amp;A&amp;&amp;i.createElement(a.Z,{"data-test":"show-more-projects",onClick:!n&amp;&amp;r||null},p("showMoreProjects")),n&amp;&amp;i.createElement(Ka.Z,null),!n&amp;&amp;A&amp;&amp;i.createElement("span",{"data-test":"projects-counter"},p("ofTotal",{shown:o,total:s}))))}}],r&amp;&amp;AG(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);fG(hG,"propTypes",{projects:Zg().array.isRequired,loading:Zg().bool.isRequired,totalItems:Zg().number.isRequired,shownItems:Zg().number.isRequired,onFavoriteToggle:Zg().func.isRequired,onLoadMore:Zg().func.isRequired,upsourceRepositories:Zg().object.isRequired,loadUpsourceRepository:Zg().func.isRequired,onArchiveProject:Zg().func.isRequired,onDeleteProject:Zg().func.isRequired}),fG(hG,"contextTypes",{getText:Zg().func.isRequired});var vG=["project"];function bG(e){return bG="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},bG(e)}function yG(){return yG=Object.assign?Object.assign.bind():function(e){for(var t=1;t&lt;arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&amp;&amp;(e[r]=n[r])}return e},yG.apply(this,arguments)}function wG(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,EG(r.key),r)}}function _G(e){return _G=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},_G(e)}function jG(e,t){return jG=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},jG(e,t)}function xG(e,t,n){return(t=EG(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function EG(e){var t=function(e,t){if("object"!==bG(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==bG(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===bG(t)?t:String(t)}var SG=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return xG(e=function(e,t,n){return t=_G(t),function(e,t){if(t&amp;&amp;("object"===bG(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],_G(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"getProjectLink",(function(){var t=e.props.project,n=e.context.getProjectLink;return n?n(t):"projects/".concat(fC(t.name,t.id))})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;jG(e,t)}(t,e),n=t,(r=[{key:"render",value:function(){var e=this.props,t=e.project,n=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||Object.prototype.propertyIsEnumerable.call(e,n)&amp;&amp;(o[n]=e[n])}return o}(e,vG),r=this.context.permissionCache,o=da.ZP.Size.Size40,s=Dm()(t.description),c=r.has("jetbrains.jetpass.project-read-basic",t.id);return i.createElement("div",yG({className:Wg()({"project-list__projects__row":!0,"project-list__projects__row_disable":!c}),"data-test-name":t.name},n),i.createElement("div",{className:"project-list__projects__row__icon"},t.iconUrl?i.createElement(ZI.Z,{url:t.iconUrl,size:o}):i.createElement(da.ZP,{glyph:Um(),size:o})),i.createElement("div",{className:"project-list__projects__row__content"},i.createElement("div",{className:"project-list__projects__row__content__title"},i.createElement(a.Z,{href:this.getProjectLink(),className:"project-list__projects__row__content__title-link"},t.name)),s&amp;&amp;i.createElement("div",{className:"project-list__projects__row__content__description",title:s},s)))}}])&amp;&amp;wG(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.PureComponent);function TG(e){return TG="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},TG(e)}function MG(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,PG(r.key),r)}}function LG(e){return LG=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},LG(e)}function kG(e,t){return kG=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},kG(e,t)}function OG(e,t,n){return(t=PG(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function PG(e){var t=function(e,t){if("object"!==TG(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==TG(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===TG(t)?t:String(t)}xG(SG,"propTypes",{project:Zg().object.isRequired}),xG(SG,"contextTypes",{permissionCache:Zg().object.isRequired,onLocationChange:Zg().func.isRequired,getProjectLink:Zg().func});var NG=function(e){function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),e=this,r=arguments,n=LG(n=t),function(e,t){if(t&amp;&amp;("object"===TG(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(n,r||[],LG(e).constructor):n.apply(e,r));var e,n,r}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;kG(e,t)}(t,e),n=t,r=[{key:"render",value:function(){var e=this.props,t=e.projects,n=e.loading,r=["project-list__show-more"];return n&amp;&amp;r.push("project-list__show-more_loading"),i.createElement("div",{className:"project-list__projects"},i.createElement("div",{className:"project-list__projects__rows","data-test":"project-list"},t.map((function(e){return i.createElement(SG,{key:e.id,project:e,"data-test":"project"})}))),n&amp;&amp;i.createElement("div",{className:r.join(" "),"data-test":"project-list-footer"},n&amp;&amp;i.createElement(Ka.Z,null)))}}],r&amp;&amp;MG(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);function DG(e){return DG="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},DG(e)}function RG(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,GG(r.key),r)}}function UG(e){return UG=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},UG(e)}function zG(e,t){return zG=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},zG(e,t)}function $G(e,t,n){return(t=GG(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function GG(e){var t=function(e,t){if("object"!==DG(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==DG(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===DG(t)?t:String(t)}OG(NG,"propTypes",{projects:Zg().array.isRequired,loading:Zg().bool.isRequired,totalItems:Zg().number.isRequired}),OG(NG,"contextTypes",{getText:Zg().func.isRequired});var BG=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return $G(e=function(e,t,n){return t=UG(t),function(e,t){if(t&amp;&amp;("object"===DG(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],UG(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"getProjectLink",(function(t){var n=e.context.getProjectLink;return n?n(t):"projects-administration/".concat(fC(t.name,t.id))})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;zG(e,t)}(t,e),n=t,r=[{key:"render",value:function(){var e=this,t=this.props.projects,n=t.reduce((function(e,t){return e[t.id]=Dm()(t.description),e}),{});return i.createElement("div",null,t.map((function(t){return i.createElement("div",{key:t.id,className:"project-list__archived-project"},i.createElement(YI.Z,null,i.createElement(a.Z,{href:e.getProjectLink(t)},t.name),i.createElement(vi.Z,{info:!0,title:n[t.id]},n[t.id])))})))}}],r&amp;&amp;RG(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.PureComponent);$G(BG,"propTypes",{className:Zg().string,projects:Zg().array.isRequired}),$G(BG,"contextTypes",{getProjectLink:Zg().func});var FG=n(99996),ZG=n.n(FG);function YG(e){return YG="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},YG(e)}function WG(){WG=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==YG(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function HG(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function qG(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){HG(i,r,o,a,s,"next",e)}function s(e){HG(i,r,o,a,s,"throw",e)}a(void 0)}))}}function QG(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,XG(r.key),r)}}function VG(e){return VG=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},VG(e)}function KG(e,t){return KG=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},KG(e,t)}function JG(e,t,n){return(t=XG(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function XG(e){var t=function(e,t){if("object"!==YG(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==YG(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===YG(t)?t:String(t)}var eB=function(e){function t(e){var n,r,o,i;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),JG((r=this,i=[e],o=VG(o=t),n=function(e,t){if(t&amp;&amp;("object"===YG(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(r,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(o,i||[],VG(r).constructor):o.apply(r,i))),"queryAssistDataSource",(function(){return n.props.getQueryAssistSuggestions.apply(void 0,arguments)})),JG(n,"onQueryApply",(function(e){var t=e.query;n.props.onQueryApply(t)})),JG(n,"onInputChange",(function(e){n.setState({inputQuery:e.target.value})})),JG(n,"onInputKeyPress",(function(e){"Enter"===e.key&amp;&amp;n.props.onQueryApply(n.state.inputQuery)})),JG(n,"onInputFocus",(function(){n.props.onQueryAssistFocusToggle({focus:!0})})),JG(n,"onInputBlur",(function(){n.props.onQueryAssistFocusToggle({focus:!1})})),JG(n,"onLoadMore",(function(){var e=n.props,t=e.top;(0,e.onLoadMore)(t+50)})),JG(n,"onLoadMoreForOrganization",(function(e){var t=e.organization,r=e.skip,o=n.props.onLoadMoreForOrganization;o&amp;&amp;o({organization:t,skip:r})})),JG(n,"onLoadUpsourceRepositories",qG(WG().mark((function e(){var t,r=arguments;return WG().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,(t=n.props).loadUpsourceRepository.apply(t,r);case 3:e.next=8;break;case 5:e.prev=5,e.t0=e.catch(0),s.Z.error("".concat(n.getText("couldNotLoadRepositories")," ").concat(e.t0.toString()));case 8:case"end":return e.stop()}}),e,null,[[0,5]])})))),JG(n,"_getText",(function(e){var t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:{},r=n.props.i18n;return{addToFavorites:function(){return r("Add to favorites",t)},removeFromFavorites:function(){return r("Remove from favorites",t)},showMoreProjects:function(){return r("Show more projects",t)},couldNotLoadRepositories:function(){return r("Could not load repositories:",t)},filterProjectsBy:function(){return r("Filter projects by name, users, groups, services etc.",t)},noProjectsFound:function(){return r("No projects for your search request were found",t)},tryUsingQuery:function(){return r("Try using query parameters such as project key, service, user and more.",t)},templates:function(){return r("Project Templates",t)},archived:function(){return r("Archived",t)},ofTotal:function(){return r("{{shown}} of {{total}}",t)}}[e]()})),JG(n,"getText",(function(e){var t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:{};return(0,n.props.getText)(e,t)||n._getText(e,t)})),JG(n,"getOrganizationLink",(function(e){var t=n.props.getOrganizationLink;return t?t(e):"organizations/".concat(CC(e.name,e.id))})),JG(n,"onArchiveProject",qG(WG().mark((function e(){var t,r,o,i,a,s=arguments;return WG().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=n.props,o=r.top,i=r.query,a=n.areOrgsAvailable(),e.next=4,(t=n.props).onArchiveProject.apply(t,s);case 4:n.props.onApplyQuery({top:o,query:i,orgsAvailable:a});case 5:case"end":return e.stop()}}),e)})))),JG(n,"onDeleteProject",qG(WG().mark((function e(){var t,r,o,i,a,s=arguments;return WG().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=n.props,o=r.top,i=r.query,a=n.areOrgsAvailable(),e.next=4,(t=n.props).onDeleteProject.apply(t,s);case 4:n.props.onApplyQuery({top:o,query:i,orgsAvailable:a});case 5:case"end":return e.stop()}}),e)})))),n.state={inputQuery:e.query},n}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;KG(e,t)}(t,e),n=t,r=[{key:"getChildContext",value:function(){var e=this.props;return{i18n:e.i18n,hubI18nPlural:e.hubI18nPlural,helpBaseUrl:e.helpBaseUrl,permissionCache:e.permissionCache,onLocationChange:e.onLocationChange,getProjectLink:e.getProjectLink,getProjectBadges:e.getProjectBadges,getTeamLink:e.getTeamLink,getUserLink:e.getUserLink,getProjectNavigationLinks:e.getProjectNavigationLinks,getIssuesLink:e.getIssuesLink,disableIntegrationsSection:e.disableIntegrationsSection,getOrganizationLink:e.getOrganizationLink,getText:this.getText}}},{key:"UNSAFE_componentWillMount",value:function(){var e=this.props,t=e.top,n=e.query,r=e.autoOpenNewProjectDialog,o=this.areOrgsAvailable();this.props.onApplyQuery({top:t,query:n,orgsAvailable:o}),r&amp;&amp;this.props.onOpenNewProjectDialog()}},{key:"UNSAFE_componentWillReceiveProps",value:function(e){var t=this.props,n=t.top,r=t.query,o=t.onApplyQuery,i=t.autoOpenNewProjectDialog,a=this.areOrgsAvailable();e.query===r&amp;&amp;e.top===n||o({top:e.top,query:e.query,orgsAvailable:a}),i!==e.autoOpenNewProjectDialog&amp;&amp;e.autoOpenNewProjectDialog&amp;&amp;this.props.onOpenNewProjectDialog()}},{key:"renderProjectsSection",value:function(e){var t=this,n=this.props,r=n.i18n,o=n.onProjectFavoritismToggle,a=n.upsourceRepositories,s=n.onLocationChange,c=n.onProjectsToggle,l=n.onOrganizationProjectsToggle,g=n.organizations;if(!e.projects||!e.projects.length)return"";var u=e.organization,d=u&amp;&amp;u.iconUrl,p=u&amp;&amp;this.getOrganizationLink(u),A=u?"organization-".concat(u.id):"no-organization",C=g.length&gt;0,I=u?function(){return t.onLoadMoreForOrganization({organization:u,skip:e.projects.length})}:function(){return t.onLoadMore()};return i.createElement("section",{key:A,className:"project-list__section","data-test":u?"organization-section":"no-organization-section"},C&amp;&amp;i.createElement(z$,{title:e.getTitle(r),count:e.total,settingsTitle:u?r("Organization settings"):null,settingsLink:p,onLocationChange:s,iconUrl:d,expanded:e.expanded,onClick:u?function(){return l(u.id)}:c}),(!C||e.expanded)&amp;&amp;i.createElement(hG,{projects:e.projects,loading:e.fetching,totalItems:e.total,shownItems:e.projects.length,onFavoriteToggle:o,onLoadMore:I,upsourceRepositories:a,loadUpsourceRepository:this.onLoadUpsourceRepositories,onArchiveProject:this.onArchiveProject,onDeleteProject:this.onDeleteProject}))}},{key:"areOrgsAvailable",value:function(){return this.props.permissionCache.has("jetbrains.jetpass.organization-read")}},{key:"render",value:function(){var e=this,t=this.props,n=t.loading,r=t.loadingTemplates,o=t.totalTemplateItems,a=t.templateProjects,s=t.archivedProjects,c=t.organizations,l=t.projectSections,g=t.archivedProjectsExpanded,u=t.templateProjectsExpanded,d=t.onArchivedProjectsToggle,p=t.onTemplateProjectsToggle,A=t.query,C=t.onQueryAssistFocusToggle,I=t.queryAssistFocused,f=t.isCreateProjectShown,m=t.onHideNewProjectDialog,h=t.onCreateProject,v=t.projectCreationError,b=t.isCreatingProject,y=t.lightQueryAssist,w=t.onLocationChange,_=t.i18n,j=n||l.length&gt;1||1===l.length&amp;&amp;l[0].total&gt;0||a.length&gt;0||s.length&gt;0;return i.createElement("article",null,!y&amp;&amp;i.createElement("div",{className:Wg()("project-list__query-assist-wrapper",{"project-list__query-assist-wrapper_active":I,"project-list__query-assist-wrapper_light":y})},i.createElement(Gl.C,{query:A,placeholder:this.getText("filterProjectsBy"),clear:!0,glass:!0,focus:I,onApply:this.onQueryApply,dataSource:this.queryAssistDataSource,onFocusChange:C,huge:!0})),i.createElement(u$.Z,{responsive:!1,className:"project-list-new",contentClassName:"project-list-new__content"},y&amp;&amp;i.createElement("div",{className:"project-list__heading-container"},i.createElement(Fl.Z,{className:"project-list__heading"},_("Projects")),i.createElement("div",{className:"project-list__search"},i.createElement(MT.ZP,{className:"project-list__search__input",value:this.state.inputQuery,autoComplete:"off",theme:d$.ZP.LIGHT,placeholder:_("Filter by name"),onFocus:this.onInputFocus,onBlur:this.onInputBlur,onChange:this.onInputChange,onKeyPress:this.onInputKeyPress,size:I?MT.$u.L:MT.$u.M,autoFocus:I,icon:A$()}))),!j&amp;&amp;i.createElement("section",{className:"project-list__section","data-test":"empty-section"},i.createElement("div",{className:"project-list__empty__content"},this.props.emptyElement||i.createElement(i.Fragment,null,i.createElement("img",{src:ZG()}),i.createElement("h2",{className:"project-list__empty__title"},this.getText("noProjectsFound")),i.createElement("span",null,this.getText("tryUsingQuery"))))),l.map((function(t){return e.renderProjectsSection(t)})),a.length&gt;0&amp;&amp;i.createElement("section",{className:"project-list__section","data-test":"templates-section"},i.createElement(z$,{title:this.getText("templates"),count:a.length,onLocationChange:w,expanded:u,onClick:p}),u&amp;&amp;i.createElement(NG,{projects:a,loading:r,totalItems:o})),s.length&gt;0&amp;&amp;i.createElement("section",{className:"project-list__section","data-test":"archived-section"},i.createElement(z$,{title:this.getText("archived"),count:s.length,expanded:g,onClick:d,onLocationChange:w}),g&amp;&amp;i.createElement(BG,{projects:s})),f&amp;&amp;i.createElement(L$,{onCancel:m,onCreate:h,inProgress:b,errorMessage:v,organizations:c})))}}],r&amp;&amp;QG(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);function tB(e){return{getTitle:e,total:arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:0,projects:arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:[],organization:arguments.length&gt;3?arguments[3]:void 0,fetching:arguments.length&gt;4&amp;&amp;void 0!==arguments[4]&amp;&amp;arguments[4],expanded:arguments.length&gt;5&amp;&amp;void 0!==arguments[5]&amp;&amp;arguments[5]}}JG(eB,"propTypes",{projects:Zg().array.isRequired,organizations:Zg().array,projectSections:Zg().array,templateProjects:Zg().array.isRequired,archivedProjects:Zg().array.isRequired,loading:Zg().bool.isRequired,loadingTemplates:Zg().bool.isRequired,queryAssistFocused:Zg().bool.isRequired,totalItems:Zg().number.isRequired,totalTemplateItems:Zg().number.isRequired,templateProjectsExpanded:Zg().bool.isRequired,archivedProjectsExpanded:Zg().bool.isRequired,upsourceRepositories:Zg().object.isRequired,onProjectsToggle:Zg().func.isRequired,onOrganizationProjectsToggle:Zg().func.isRequired,onTemplateProjectsToggle:Zg().func.isRequired,onArchivedProjectsToggle:Zg().func.isRequired,onProjectFavoritismToggle:Zg().func.isRequired,onApplyQuery:Zg().func.isRequired,onQueryAssistFocusToggle:Zg().func.isRequired,loadUpsourceRepository:Zg().func.isRequired,query:Zg().string,top:Zg().number,i18n:Zg().func.isRequired,hubI18nPlural:Zg().object.isRequired,permissionCache:Zg().object.isRequired,onLocationChange:Zg().func.isRequired,onQueryApply:Zg().func.isRequired,onLoadMore:Zg().func.isRequired,onLoadMoreForOrganization:Zg().func,getQueryAssistSuggestions:Zg().func.isRequired,helpBaseUrl:Zg().string,getProjectLink:Zg().func,getProjectBadges:Zg().func,getOrganizationLink:Zg().func,getTeamLink:Zg().func,getUserLink:Zg().func,getProjectNavigationLinks:Zg().func,getIssuesLink:Zg().func,getText:Zg().func,emptyElement:Zg().node,disableIntegrationsSection:Zg().bool,onArchiveProject:Zg().func.isRequired,onDeleteProject:Zg().func.isRequired,autoOpenNewProjectDialog:Zg().bool,isCreateProjectShown:Zg().bool,lightQueryAssist:Zg().bool,onOpenNewProjectDialog:Zg().func.isRequired,onHideNewProjectDialog:Zg().func.isRequired,onCreateProject:Zg().func.isRequired,isCreatingProject:Zg().bool,projectCreationError:Zg().string,onProjectCreated:Zg().func.isRequired}),JG(eB,"childContextTypes",{getText:Zg().func.isRequired,i18n:Zg().func.isRequired,hubI18nPlural:Zg().object.isRequired,helpBaseUrl:Zg().string,permissionCache:Zg().object.isRequired,onLocationChange:Zg().func.isRequired,getProjectLink:Zg().func,getProjectBadges:Zg().func,getOrganizationLink:Zg().func,getTeamLink:Zg().func,getUserLink:Zg().func,getProjectNavigationLinks:Zg().func,getIssuesLink:Zg().func,disableIntegrationsSection:Zg().bool}),JG(eB,"defaultProps",{query:"",lightQueryAssist:!1,top:10,getText:function(){},disableIntegrationsSection:!1});const nB=(0,X_.$j)((function(e){var t=e.projectList,n=e.entities,r=n.projects,o=t.projects.items.map((function(e){return r[e]})),i=t.templateProjects.items.map((function(e){return r[e]})),a=t.archivedProjects.items.map((function(e){return r[e]})),s=t.organizations.items,c=t.query?function(e,t){var n=e.projects.items.map((function(e){return t[e]})),r=tB((function(e){return e("Projects")}),e.projects.total,n,void 0,e.projects.fetching,e.projects.expanded);return[r]}(t,n.projects):function(e,t){var n=e.projects.items.map((function(e){return t[e]})),r=tB((function(t){return e.organizations.items.length?t("Independent projects"):t("Projects")}),e.projects.total,n,void 0,e.projects.fetching,e.projects.expanded),o=e.organizations.projectsMap,i=(e.organizations.items||[]).filter((function(e){return o[e.id]&amp;&amp;o[e.id].projects.length&gt;0})).map((function(e){return function(e,t,n){var r=(t.projects||[]).map((function(e){return n[e]})).filter((function(e){return!!e}));return tB((function(){return e.name}),t.total,r,e,t.fetching,t.expanded)}(e,o[e.id],t)})).filter((function(e){return e.projects.length}));return i.concat([r])}(t,n.projects);return{projects:o,organizations:s,projectSections:c,loading:t.projects.fetching||t.organizations.fetching,totalItems:t.projects.total,templateProjects:i,loadingTemplates:t.templateProjects.fetching,totalTemplateItems:t.templateProjects.total,archivedProjects:a,queryAssistFocused:t.queryAssistFocused,archivedProjectsExpanded:t.archivedProjects.expanded,templateProjectsExpanded:t.templateProjects.expanded,upsourceRepositories:n.upsourceRepositories,isCreateProjectShown:t.newProject.isDialogShown,isCreatingProject:t.newProject.isCreating,projectCreationError:t.newProject.creationError}}),(function(e,t){return{onApplyQuery:function(t){var n=t.query,r=t.top,o=t.orgsAvailable;e(function(e){var t=e.top,n=e.query,r=e.orgsAvailable;return function(){var e=Aj(dj().mark((function e(o){return dj().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:o(qj(n)),o(Hj({top:t,orgsAvailable:r}));case 2:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()}({query:n,top:r,orgsAvailable:o}))},onProjectsToggle:function(){return e(mj())},onOrganizationProjectsToggle:function(t){return e(Bj(t))},onTemplateProjectsToggle:function(){return e(wj())},onArchivedProjectsToggle:function(){return e(Nj())},onProjectFavoritismToggle:function(t){var n=t.id,r=t.myFavorite;return e(Wj({id:n,myFavorite:!r}))},onQueryAssistFocusToggle:function(t){var n=t.focus;return e(Lj(n))},loadUpsourceRepository:function(t){return e(VE(t))},onLoadMoreForOrganization:function(t){var n=t.organization,r=t.skip;e(Fj({organization:n,skip:r}))},onOpenNewProjectDialog:function(){t.onOpenNewProjectDialog(),e(_j())},onHideNewProjectDialog:function(){t.onHideNewProjectDialog(),e(jj())},onCreateProject:(n=qG(WG().mark((function n(r){var o;return WG().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,e(Mj(r));case 2:o=n.sent,t.onProjectCreated(o);case 4:case"end":return n.stop()}}),n)}))),function(e){return n.apply(this,arguments)})};var n}))(eB);function rB(e){return rB="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},rB(e)}function oB(){oB=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==rB(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function iB(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function aB(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){iB(i,r,o,a,s,"next",e)}function s(e){iB(i,r,o,a,s,"throw",e)}a(void 0)}))}}function sB(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,uB(r.key),r)}}function cB(e){return cB=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},cB(e)}function lB(e,t){return lB=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},lB(e,t)}function gB(e,t,n){return(t=uB(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function uB(e){var t=function(e,t){if("object"!==rB(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==rB(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===rB(t)?t:String(t)}var dB=function(e){function t(){var e,n,r,o;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var a=arguments.length,c=new Array(a),l=0;l&lt;a;l++)c[l]=arguments[l];return gB((n=this,r=t,o=[].concat(c),r=cB(r),e=function(e,t){if(t&amp;&amp;("object"===rB(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(n,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(r,o||[],cB(n).constructor):r.apply(n,o))),"$onInit",aB(oB().mark((function t(){var n,r,o,i,a,s;return oB().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=e.$inject,r=n.$element,o=n.$scope,i=n.$location,a=n.userPermissions,e.root=(0,Ei.s)(r[0]),e.currentLocationPath=i.path(),e.youtrackMode?e.lightQueryAssist=!0:(s=$l(),e.datasource=new mA(s),e.upsourceBackend=new g$(s)),AT(e.datasource),CT(e.upsourceBackend),e.permissionCache){t.next=10;break}return t.next=9,a.load();case 9:e.permissionCache=t.sent;case 10:e.youtrackMode?o.$watch(e.getTranscludeContents,e.renderComponent):o.$on("$locationChangeStart",(function(){i.path()===e.currentLocationPath&amp;&amp;e.renderComponent()})),e.renderComponent();case 12:case"end":return t.stop()}}),t)})))),gB(e,"getTranscludeContents",(function(){return e.emptyHTML=e.emptyTemplate&amp;&amp;e.emptyTemplate.length&amp;&amp;e.emptyTemplate[0].innerHTML,"".concat(e.emptyHTML)})),gB(e,"$postLink",(function(){var t=e.$inject,n=t.$scope,r=t.$transclude;e.emptyTemplate=r(n.$parent,null,null,"emptyTemplate"),e.getTranscludeContents()})),gB(e,"$onDestroy",(function(){e.root.unmount()})),gB(e,"prerender",(function(){var t=e.$inject.$location.search();e.top=t.top?Number(t.top):void 0,e.permissionCache.has("project-create")&amp;&amp;(e.autoOpenNewProjectDialog=!!t.newProject),e.query=t.query})),gB(e,"renderComponent",(function(){if(e.root){var t=e.$inject,n=t.i18n,r=t.hubI18nPlural,o=t.hubConfig;e.youtrackMode||e.prerender();var a=null;!e.query&amp;&amp;e.emptyHTML&amp;&amp;(a=i.createElement("div",{dangerouslySetInnerHTML:{__html:e.emptyHTML}})),e.root.render(i.createElement(X_.zt,{store:pT},i.createElement(w.pS.Provider,{value:w.oW.S},i.createElement(jT,{i18n:n},i.createElement(nB,{i18n:n,hubI18nPlural:r,permissionCache:e.permissionCache,emptyElement:a,getQueryAssistSuggestions:e.getQueryAssistSuggestions,onLocationChange:e.changeLocation,onQueryApply:e._onQueryApply,onLoadMore:e._onLoadMore,helpBaseUrl:o.help.baseUrl,getProjectLink:e.getProjectLink,getProjectBadges:e.getProjectBadges,getTeamLink:e.getTeamLink,getOrganizationLink:e.getOrganizationLink,getUserLink:e.getUserLink,getProjectNavigationLinks:e.getProjectNavigationLinks,getIssuesLink:e.getIssuesLink,top:e.top,query:e.query,getText:e.getText,disableIntegrationsSection:e.youtrackMode,autoOpenNewProjectDialog:e.autoOpenNewProjectDialog,onOpenNewProjectDialog:e._onShowNewProject,onHideNewProjectDialog:e._onHideNewProject,onProjectCreated:e._onProjectCreated,lightQueryAssist:e.lightQueryAssist,onArchiveProject:e.onArchiveProject,onDeleteProject:e.onDeleteProject})))))}})),gB(e,"changeLocation",(function(){var t=e.$inject,n=t.$location,r=t.$scope,o=n.url.apply(n,arguments);return r.$evalAsync(),o})),gB(e,"_onQueryApply",(function(t){var n=e.$inject,r=n.$scope,o=n.$route;e.youtrackMode?e.onQueryApply(t):o.updateParams({query:t}),r.$evalAsync()})),gB(e,"_onChangeNewProjectDialog",(function(t){var n=e.$inject,r=n.$scope;n.$route.updateParams({newProject:!!t||null}),r.$evalAsync()})),gB(e,"_onHideNewProject",(function(){return e._onChangeNewProjectDialog(!1)})),gB(e,"_onShowNewProject",(function(){return e._onChangeNewProjectDialog(!0)})),gB(e,"_onProjectCreated",(function(t){var n=e.$inject,r=n.$location;n.userPermissions.reload().then((function(){return r.url("projects/".concat(fC(t.name,t.id)))}))})),gB(e,"_onLoadMore",(function(t){var n=e.$inject,r=n.$scope,o=n.$route;e.youtrackMode?e.onLoadMore(t):o.updateParams({top:t}),r.$evalAsync()})),gB(e,"getQueryAssistSuggestions",(function(){for(var t,n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return(t=e.datasource).getQueryAssistSuggestions.apply(t,["projects"].concat(r))})),gB(e,"onArchiveProject",function(){var t=aB(oB().mark((function t(n){return oB().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,e.datasource.archiveProject(n.id);case 3:t.next=8;break;case 5:t.prev=5,t.t0=t.catch(0),s.Z.error("Could not archive project ".concat(t.t0.toString()));case 8:case"end":return t.stop()}}),t,null,[[0,5]])})));return function(e){return t.apply(this,arguments)}}()),gB(e,"onDeleteProject",function(){var t=aB(oB().mark((function t(n){return oB().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,e.datasource.deleteProject(n.id);case 3:t.next=8;break;case 5:t.prev=5,t.t0=t.catch(0),s.Z.error("Could not delete project ".concat(t.t0.toString()));case 8:case"end":return t.stop()}}),t,null,[[0,5]])})));return function(e){return t.apply(this,arguments)}}()),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;lB(e,t)}(t,e),n=t,(r=[{key:"$onChanges",value:function(e){(e.hasOwnProperty("query")||e.hasOwnProperty("top"))&amp;&amp;this.renderComponent()}}])&amp;&amp;sB(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(p);gB(dB,"$inject",["$scope","$element","$transclude","i18n","hubI18nPlural","$location","userPermissions","$route","hubConfig"]),gB(dB,"bindings",{datasource:"&lt;",upsourceBackend:"&lt;",getProjectLink:"&lt;",getProjectBadges:"&lt;",getTeamLink:"&lt;",getOrganizationLink:"&lt;",getUserLink:"&lt;",getProjectNavigationLinks:"&lt;",getIssuesLink:"&lt;",youtrackMode:"&lt;",getText:"&lt;",onQueryApply:"&lt;",onLoadMore:"&lt;",query:"&lt;",top:"&lt;"}),gB(dB,"transclude",{emptyTemplate:"?emptyTemplate"});var pB=angular.module("HUB.project-list",[vd,zt]);pB.component("projectList",dB);const AB=pB.name;var CB=["projectTemplateId"];function IB(e){return IB="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},IB(e)}function fB(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||Object.prototype.propertyIsEnumerable.call(e,n)&amp;&amp;(o[n]=e[n])}return o}function mB(){mB=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==IB(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function hB(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function vB(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){hB(i,r,o,a,s,"next",e)}function s(e){hB(i,r,o,a,s,"throw",e)}a(void 0)}))}}function bB(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,yB(r.key),r)}}function yB(e){var t=function(e,t){if("object"!==IB(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==IB(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===IB(t)?t:String(t)}var wB=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.auth=t,this.http=new Io.ZP(t)},t=[{key:"getReports",value:(o=vB(mB().mark((function e(t){var n;return mB().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,this.http.get("".concat(t,"/api/reports/"),{query:{fields:"id,name,pinned,owner(id,login),projects(id,name,shortName),visibleTo(id,name)"}});case 3:return n=e.sent,e.abrupt("return",n);case 7:throw e.prev=7,e.t0=e.catch(0),e.t0;case 10:case"end":return e.stop()}}),e,this,[[0,7]])}))),function(e){return o.apply(this,arguments)})},{key:"getReportsOfProject",value:(r=vB(mB().mark((function e(t,n){var r,o;return mB().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getReports(t);case 2:return r=e.sent,o=r.filter((function(e){return e.projects.some((function(e){return e.shortName===n}))})),e.abrupt("return",o);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"createIntegration",value:(n=vB(mB().mark((function e(t,n){var r,o;return mB().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=n.projectTemplateId,o=fB(n,CB),e.abrupt("return",this.http.post("".concat(t,"/api/admin/projects"),{query:{fields:"id,name,shortName",template:r||null},body:o}));case 2:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"checkIfCanCreateProject",value:function(e){return this.http.post("".concat(e,"/api/admin/projects/canCreate"))}},{key:"getCustomProjectTemplates",value:function(e){return this.http.get("".concat(e,"/api/admin/projectTemplates"),{query:{fields:"description,name,id",listAll:"true"}})}}],t&amp;&amp;bB(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t,n,r,o}();function _B(e){return _B="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},_B(e)}function jB(){jB=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==_B(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function xB(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function EB(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){xB(i,r,o,a,s,"next",e)}function s(e){xB(i,r,o,a,s,"throw",e)}a(void 0)}))}}function SB(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,TB(r.key),r)}}function TB(e){var t=function(e,t){if("object"!==_B(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==_B(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===_B(t)?t:String(t)}var MB=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.auth=t,this.http=new Io.ZP(t)},t=[{key:"checkIfCanCreateProject",value:(r=EB(jB().mark((function e(t,n){var r,o;return jB().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,this.http.get("".concat(t,"/~api/repo/can-create"),{query:{"project-id":n}});case 3:return e.abrupt("return",e.sent);case 6:if(e.prev=6,e.t0=e.catch(0),-1!==e.t0.status&amp;&amp;0!==e.t0.status){e.next=10;break}throw new Error("Network error. You may don't have internet connection to service, or service might have untrusted SSL certificate. Check the browser's console output for details.");case 10:if(r=e.t0.data,(o=void 0===r?{}:r).allowed){e.next=13;break}throw new Error(o["deny-reason"]||o.message||e.t0.toString());case 13:case"end":return e.stop()}}),e,this,[[0,6]])}))),function(e,t){return r.apply(this,arguments)})},{key:"createRepository",value:(n=EB(jB().mark((function e(t,n,r){return jB().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,this.http.request("".concat(t,"/~api/repo/").concat(n,"?project-id=").concat(r),{method:"PUT"});case 3:e.next=8;break;case 5:throw e.prev=5,e.t0=e.catch(0),e.t0;case 8:case"end":return e.stop()}}),e,this,[[0,5]])}))),function(e,t,r){return n.apply(this,arguments)})}],t&amp;&amp;SB(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t,n,r}(),LB=n(97690),kB=n(73960),OB=n(43378),PB=n(76734),NB=n(16508),DB=n(6816);function RB(e){return RB="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},RB(e)}function UB(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,BB(r.key),r)}}function zB(e){return zB=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},zB(e)}function $B(e,t){return $B=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},$B(e,t)}function GB(e,t,n){return(t=BB(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function BB(e){var t=function(e,t){if("object"!==RB(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==RB(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===RB(t)?t:String(t)}var FB=/[^0-9A-Za-z_]/g,ZB=/^[0-9A-Za-z_]+$/,YB=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return GB(e=function(e,t,n){return t=zB(t),function(e,t){if(t&amp;&amp;("object"===RB(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],zB(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"errorValidator",(function(t){var n=e.context.i18n,r=t.name,o=void 0===r?"":r,i=t.shortName,a=void 0===i?"":i,s=o?null:n("Value is required"),c=a?null:n("Value is required"),l=a&amp;&amp;a.match(ZB)?null:n("Doesn't match the pattern"),g=a.length&gt;100?n("Value is too long"):null;return{name:s,shortName:c||l||g}})),GB(e,"getTemplates",(function(){return e.props.customYouTrackProjectTemplates})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;$B(e,t)}(t,e),n=t,r=[{key:"getDefaults",value:function(){var e=this.props.rawDefaultValues;return{ringId:this.props.projectId,name:e.name.replace(/\//,"_"),shortName:e.key.replace(FB,"_"),projectTemplateId:"",leader:{ringId:this.props.ownerId},organization:this.props.organizationId&amp;&amp;{ringId:this.props.organizationId}}}},{key:"selectTemplate",value:function(e,t){this.props.inProgress||t.setAllValues({projectTemplateId:e.id})}},{key:"render",value:function(){var e=this,t=this.props,n=t.onCreateIntegration,r=t.onCancel,o=t.inProgress,a=t.errorMessage,s=this.context.i18n;return i.createElement(f$.Form,{validateError:this.errorValidator,dontValidateOnMount:!0,defaultValues:this.getDefaults()},(function(t){var c=Object.values(t.errors).every((function(e){return!e}));return i.createElement(i.Fragment,null,i.createElement(Ki.Z,null,i.createElement("form",{className:"ring-form"},i.createElement("fieldset",{disabled:o,className:"integration-form__fieldset"},i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},s("Name")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:t.errors.name},i.createElement("input",{className:"ring-input ring-input-size_md",value:t.values.name||"",onChange:function(e){return t.setAllValues({name:e.target.value})},autoFocus:!0})))),i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},"ID"),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:t.errors.shortName},i.createElement("input",{className:"ring-input ring-input-size_md",value:t.values.shortName||"",onChange:function(e){return t.setAllValues({shortName:e.target.value})}}),i.createElement("span",{className:"ring-form__control__description"},s("Unique project ID and prefix for issue IDs"))))),i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label youtrack-integration-form__templates-label"},s("Project type")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement("div",{className:"youtrack-integration-form__templates"},e.getTemplates().map((function(n){return i.createElement("div",{key:n.id,onClick:function(){return e.selectTemplate(n,t)},className:Wg()("youtrack-integration-form__templates-template",{"youtrack-integration-form__templates-template_selected":t.values.projectTemplateId===n.id})},i.createElement("div",{className:"youtrack-integration-form__templates-template-name"},n.name),i.createElement("div",{className:"youtrack-integration-form__templates-template-description"},n.description))}))))))),a&amp;&amp;i.createElement("span",{className:"integration-form__error"},a)),i.createElement(C$.Z,null,i.createElement(bi.ZP,{loader:o,disabled:o||!c,primary:!0,onClick:function(){return n(t.values)}},s("Save")),i.createElement(bi.ZP,{loader:o,disabled:o,onClick:r},s("Cancel"))))}))}}],r&amp;&amp;UB(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);function WB(e){return WB="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},WB(e)}function HB(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,KB(r.key),r)}}function qB(e){return qB=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},qB(e)}function QB(e,t){return QB=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},QB(e,t)}function VB(e,t,n){return(t=KB(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function KB(e){var t=function(e,t){if("object"!==WB(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==WB(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===WB(t)?t:String(t)}GB(YB,"propTypes",{onCreateIntegration:Zg().func.isRequired,onCancel:Zg().func.isRequired,inProgress:Zg().bool.isRequired,projectId:Zg().string.isRequired,organizationId:Zg().string,ownerId:Zg().string.isRequired,errorMessage:Zg().string,rawDefaultValues:Zg().shape({name:Zg().string.isRequired,key:Zg().string.isRequired}),customYouTrackProjectTemplates:Zg().array.isRequired}),GB(YB,"contextTypes",{i18n:Zg().func.isRequired});var JB=/^\w[\w0-9\s-]*$/,XB=/^\w[\w0-9\s-]*({})[\w0-9\s-]*$/,eF="--new-repository-key--",tF=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return VB(e=function(e,t,n){return t=qB(t),function(e,t){if(t&amp;&amp;("object"===WB(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],qB(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"errorValidator",(function(t){var n=e.context.i18n,r=t.name,o=void 0===r?"":r,i=t.id,a=void 0===i?"":i,s=t.reviewIdPattern,c=void 0===s?"":s,l=o?null:n("Value is required"),g=a?null:n("Value is required"),u=a&amp;&amp;a.match(JB)?null:n("Doesn't match the pattern"),d=c?null:n("Value is required"),p=c&amp;&amp;c.match(XB)?null:n("Doesn't match the pattern");return{name:l,id:g||u,reviewIdPattern:d||p}})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;QB(e,t)}(t,e),n=t,r=[{key:"getProjectModels",value:function(){var e=this.context.i18n;return[{label:"None",key:"none",description:e("No project model")},{label:"IntelliJ IDEA",key:"idea",description:e("IntelliJ IDEA project model (.idea)")},{label:"Maven",key:"maven",description:e("Maven project model")},{label:"Gradle",key:"gradle",description:e("Gradle project model")}]}},{key:"getVcsTypes",value:function(){return[this.props.vcsHostingAvailable&amp;&amp;{key:"hosted-git",label:"Hosted Git"},{key:"git",label:"Git"},{key:"mercurial",label:"Mercurial"},{key:"perforce",label:"Perforce"},{key:"svn",label:"Subversion"}].filter((function(e){return!!e}))}},{key:"getVcsRepos",value:function(){var e=this.context.i18n,t=this.props.availableVcsResources.map((function(e){return{key:e.key,label:e.name,description:e.homeUrl,serviceId:e.service.id}}));return t.length&amp;&amp;t.push({rgItemType:Mp.Z.ListProps.Type.SEPARATOR,key:"separator"}),t.push({key:eF,label:e("New repository")}),t}},{key:"getVcsAuths",value:function(e){var t=[{key:"none",label:"Anonymous"},{key:"password",label:"Password"}];return e&amp;&amp;t.push({key:"ssh",label:"SSH Key"}),t}},{key:"getDefaults",value:function(){var e=this.props.rawDefaultValues;return{name:e.name,id:e.key,reviewIdPattern:"".concat(e.key,"-CR-{}"),projectModel:this.getProjectModels()[0],vcsType:this.getVcsTypes()[0],vcsRepo:this.getVcsRepos()[0],vcsAuth:this.getVcsAuths()[0]}}},{key:"render",value:function(){var e=this,t=this.props,n=t.onCreateIntegration,r=t.onCancel,o=t.inProgress,s=t.errorMessage,c=t.onTestVcsConnection,l=t.isTestingVcsConnection,g=t.testingVcsConnectionStatus,u=this.context.i18n;return i.createElement(f$.Form,{validateError:this.errorValidator,dontValidateOnMount:!0,defaultValues:this.getDefaults()},(function(t){var d=Object.values(t.errors).every((function(e){return!e}));return i.createElement(i.Fragment,null,i.createElement(Ki.Z,null,i.createElement("form",{className:"ring-form"},i.createElement("fieldset",{disabled:o,className:"integration-form__fieldset"},i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},u("Name")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:t.errors.name},i.createElement("input",{className:"ring-input ring-input-size_m",value:t.values.name||"",onChange:function(e){return t.setAllValues({name:e.target.value})},autoFocus:!0})))),i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},u("Integration ID")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:t.errors.id},i.createElement("input",{className:"ring-input ring-input-size_m",value:t.values.id||"",onChange:function(e){return t.setAllValues({id:e.target.value})}})))),i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},u("Review ID pattern")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:t.errors.reviewIdPattern},i.createElement("input",{className:"ring-input ring-input-size_m",value:t.values.reviewIdPattern||"",onChange:function(e){return t.setAllValues({reviewIdPattern:e.target.value})}}))))),i.createElement("fieldset",{disabled:o,className:"integration-form__fieldset upsource-integration-form__version-control"},i.createElement("span",{className:"ring-form__title service-integration__form-title"},u("Version Control")),i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},u("Type")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:t.errors.vcsType},i.createElement(Xn.ZP,{type:Xn.ZP.Type.BUTTON,className:"ring-input-size_m",renderOptimization:!1,data:e.getVcsTypes(),selected:t.values.vcsType,onSelect:function(e){return t.setAllValues({vcsType:e})}})))),"hosted-git"!==t.values.vcsType.key&amp;&amp;i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},u("URL")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:t.errors.vcsUrl},i.createElement("input",{className:"ring-input ring-input-size_m",value:t.values.vcsUrl||"",onChange:function(e){return t.setAllValues({vcsUrl:e.target.value})}})))),"perforce"===t.values.vcsType.key&amp;&amp;i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},u("Client Mapping")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:t.errors.vcsClientMapping},i.createElement("input",{className:"ring-input ring-input-size_m",value:t.values.vcsClientMapping||"",onChange:function(e){return t.setAllValues({vcsClientMapping:e.target.value})}})))),"hosted-git"===t.values.vcsType.key&amp;&amp;i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},u("Repository")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:t.errors.vcsRepo},i.createElement(Xn.ZP,{type:Xn.ZP.Type.BUTTON,className:"ring-input-size_m",renderOptimization:!1,data:e.getVcsRepos(),selected:t.values.vcsRepo,onSelect:function(e){return t.setAllValues({vcsRepo:e})}})))),t.values.vcsRepo.key===eF&amp;&amp;i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},u("Repository name")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:t.errors.vcsName},i.createElement("input",{className:"ring-input ring-input-size_m",value:t.values.vcsName||"",onChange:function(e){return t.setAllValues({vcsName:e.target.value})}})))),"hosted-git"!==t.values.vcsType.key&amp;&amp;"perforce"!==t.values.vcsType.key&amp;&amp;i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},u("Authentication")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:t.errors.vcsAuth},i.createElement(Xn.ZP,{type:Xn.ZP.Type.BUTTON,className:"ring-input-size_m",renderOptimization:!1,data:e.getVcsAuths("mercurial"!==t.values.vcsType.key),selected:t.values.vcsAuth,onSelect:function(e){return t.setAllValues({vcsAuth:e})}})))),"hosted-git"!==t.values.vcsType.key&amp;&amp;"perforce"!==t.values.vcsType.key&amp;&amp;"password"===t.values.vcsAuth.key&amp;&amp;i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},u("Username")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:t.errors.vcsUsername},i.createElement("input",{className:"ring-input ring-input-size_m",value:t.values.vcsUsername||"",onChange:function(e){return t.setAllValues({vcsUsername:e.target.value})}})))),"hosted-git"!==t.values.vcsType.key&amp;&amp;"perforce"!==t.values.vcsType.key&amp;&amp;"password"===t.values.vcsAuth.key&amp;&amp;i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},u("Password")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:t.errors.vcsPassword},i.createElement("input",{className:"ring-input ring-input-size_m",value:t.values.vcsPassword||"",type:"password",onChange:function(e){return t.setAllValues({vcsPassword:e.target.value})}})))),("git"===t.values.vcsType.key||"svn"===t.values.vcsType.key)&amp;&amp;"ssh"===t.values.vcsAuth.key&amp;&amp;i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},u("Private key")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:t.errors.vcsSshKey},i.createElement("textarea",{className:"ring-input ring-input-size_m ring-input-height_l",value:t.values.vcsSshKey||"",onChange:function(e){return t.setAllValues({vcsSshKey:e.target.value})}})))),("git"===t.values.vcsType.key||"svn"===t.values.vcsType.key)&amp;&amp;"ssh"===t.values.vcsAuth.key&amp;&amp;i.createElement("div",{className:"ring-form__group"},i.createElement("label",{className:"ring-form__label"},u("Key password")),i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:t.errors.vcsKeyPassword},i.createElement("input",{className:"ring-input ring-input-size_m",value:t.values.vcsKeyPassword||"",type:"password",onChange:function(e){return t.setAllValues({vcsKeyPassword:e.target.value})}})))),"hosted-git"!==t.values.vcsType.key&amp;&amp;i.createElement("div",{className:"ring-form__group"},i.createElement("div",{className:"ring-form__control ring-form__control_small"},i.createElement(m$.Z,{error:t.errors.vcsKeyPassword},i.createElement(a.Z,{onClick:function(){return c(t.values)},disabled:l},u("Test connection"))))),l&amp;&amp;i.createElement("div",{className:"ring-form__group upsource-integration-form__info-message"},i.createElement(Ka.Z,{className:"upsource-integration-form__info-message__loader"}),u("Testing connection...")),g&amp;&amp;!l&amp;&amp;i.createElement("div",{className:"ring-form__group upsource-integration-form__info-message"},g))),s&amp;&amp;i.createElement("div",{className:"integration-form__error"},i.createElement("span",null,s))),i.createElement(C$.Z,null,i.createElement(bi.ZP,{loader:o,disabled:o||!d,primary:!0,onClick:function(){return n(t.values)}},u("Save")),i.createElement(bi.ZP,{loader:o,disabled:o,onClick:r},u("Cancel"))))}))}}],r&amp;&amp;HB(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);function nF(e){return nF="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},nF(e)}function rF(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,sF(r.key),r)}}function oF(e){return oF=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},oF(e)}function iF(e,t){return iF=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},iF(e,t)}function aF(e,t,n){return(t=sF(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function sF(e){var t=function(e,t){if("object"!==nF(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==nF(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===nF(t)?t:String(t)}VB(tF,"propTypes",{onCreateIntegration:Zg().func.isRequired,onTestVcsConnection:Zg().func.isRequired,onCancel:Zg().func.isRequired,inProgress:Zg().bool.isRequired,isTestingVcsConnection:Zg().bool.isRequired,testingVcsConnectionStatus:Zg().string,availableVcsResources:Zg().array.isRequired,errorMessage:Zg().string,vcsHostingAvailable:Zg().bool,rawDefaultValues:Zg().shape({name:Zg().string.isRequired,key:Zg().string.isRequired})}),VB(tF,"contextTypes",{i18n:Zg().func.isRequired});var cF=/[a-zA-Z_0-9\\-]+/g;function lF(e){return e.toLowerCase().replace(/\s/gi,"-")}var gF=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return aF(e=function(e,t,n){return t=oF(t),function(e,t){if(t&amp;&amp;("object"===nF(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],oF(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"errorValidator",(function(t){var n=t.name,r=e.context.i18n,o=n?null:r("Value is required"),i=n&amp;&amp;n.match(cF)?null:r("Doesn't match the pattern");return{name:o||i}})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;iF(e,t)}(t,e),n=t,r=[{key:"getDefaults",value:function(){return{name:lF(this.props.rawDefaultName)}}},{key:"render",value:function(){var e=this.props,t=e.onCreateIntegration,n=e.onCancel,r=e.inProgress,o=e.errorMessage,a=this.context.i18n;return i.createElement(f$.Form,{validateError:this.errorValidator,dontValidateOnMount:!0,defaultValues:this.getDefaults()},(function(e){var s=Object.values(e.errors).every((function(e){return!e}));return i.createElement(i.Fragment,null,i.createElement(Ki.Z,null,i.createElement("form",{className:"ring-form"},i.createElement("fieldset",{disabled:r,className:"integration-form__fieldset"},i.createElement("div",{className:"ring-form__group"},i.createElement("div",{className:"ring-form__label"},a("Name")),i.createElement("div",{className:"ring-form__control"},i.createElement(m$.Z,{error:e.errors.name},i.createElement("input",{className:"ring-input ring-input-size_md",value:e.values.name||"",onChange:function(t){return e.setAllValues({name:t.target.value})},autoFocus:!0})))))),o&amp;&amp;i.createElement("span",{className:"integration-form__error"},o)),i.createElement(C$.Z,null,i.createElement(bi.ZP,{loader:r,disabled:r||!s,primary:!0,onClick:function(){return t(e.values)}},a("Save")),i.createElement(bi.ZP,{loader:r,disabled:r,onClick:n},a("Cancel"))))}))}}],r&amp;&amp;rF(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);function uF(e){return uF="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},uF(e)}aF(gF,"propTypes",{onCreateIntegration:Zg().func.isRequired,onCancel:Zg().func.isRequired,inProgress:Zg().bool.isRequired,rawDefaultName:Zg().string,errorMessage:Zg().string}),aF(gF,"contextTypes",{i18n:Zg().func.isRequired});var dF=["service","project","onCreateIntegration","onCancel","isCreatingIntegration","errorMessage","vcsHostingAvailable","onTestVcsConnection","isTestingVcsConnection","testingVcsConnectionStatus","availableVcsResources","customYouTrackProjectTemplates"];function pF(){return pF=Object.assign?Object.assign.bind():function(e){for(var t=1;t&lt;arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&amp;&amp;(e[r]=n[r])}return e},pF.apply(this,arguments)}function AF(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,mF(r.key),r)}}function CF(e){return CF=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},CF(e)}function IF(e,t){return IF=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},IF(e,t)}function fF(e,t,n){return(t=mF(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function mF(e){var t=function(e,t){if("object"!==uF(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==uF(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===uF(t)?t:String(t)}function hF(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return vF(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?vF(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function vF(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function bF(e,t){for(var n,r=t===xl,o=(e.resources||[]).filter((function(e){return e.service.applicationName===t})).map((function(e){var t=e.key,n=e.name;return r?[t.replace("repo_",""),n.replace(" repo","")]:[t,n]})),i=function(){var t=r?lF(e.name):e.name,n="".concat(t).concat(a&gt;1?" ".concat(a):""),i="".concat(e.key).concat(a&gt;1?"_".concat(a):""),s=o.some((function(e){return hF(e,1)[0]===i})),c=o.some((function(e){return hF(e,2)[1]===n}));if(!s&amp;&amp;!c)return{v:{name:n,key:i}}},a=1;a&lt;1e3;a++)if(n=i())return n.v;return{key:"",name:""}}var yF=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return fF(e=function(e,t,n){return t=CF(t),function(e,t){if(t&amp;&amp;("object"===uF(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],CF(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"onCreateIntegration",(function(t){return e.props.onCreateIntegration(t,e.props.service)})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;IF(e,t)}(t,e),n=t,r=[{key:"render",value:function(){var e,t=this.props,n=t.service,r=n.applicationName,o=n.homeUrl,a=t.project,s=(t.onCreateIntegration,t.onCancel),c=t.isCreatingIntegration,l=t.errorMessage,g=t.vcsHostingAvailable,u=t.onTestVcsConnection,d=t.isTestingVcsConnection,p=t.testingVcsConnectionStatus,A=t.availableVcsResources,C=t.customYouTrackProjectTemplates,I=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||Object.prototype.propertyIsEnumerable.call(e,n)&amp;&amp;(o[n]=e[n])}return o}(t,dF),f=this.context,m=f.i18n,h=f.currentUser,v={inProgress:c,errorMessage:l,onCreateIntegration:this.onCreateIntegration,onCancel:s};return i.createElement(I$.Z,pF({show:!0,showCloseButton:!0,onCloseClick:s,contentClassName:"integration-dialog-content","data-test-integration":r},I),i.createElement(Vi.Z,{className:"integration-dialog__header"},AE(r,m),i.createElement("span",{className:"integration-dialog__service-url"},(e=o)?e.replace(/^https?:\/\//,""):e)),i.createElement(i.Fragment,null,r===Tl&amp;&amp;i.createElement(YB,pF({rawDefaultValues:bF(a,Tl),projectId:a.id,organizationId:a.organization&amp;&amp;a.organization.id,ownerId:h.id,customYouTrackProjectTemplates:C},v)),r===El&amp;&amp;i.createElement(tF,pF({rawDefaultValues:bF(a,El),onTestVcsConnection:u,isTestingVcsConnection:d,testingVcsConnectionStatus:p,availableVcsResources:A,vcsHostingAvailable:g},v)),r===xl&amp;&amp;i.createElement(gF,pF({rawDefaultName:lF(bF(a,xl).name)},v))))}}],r&amp;&amp;AF(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);fF(yF,"propTypes",{service:Zg().object.isRequired,project:Zg().object.isRequired,errorMessage:Zg().string,isCreatingIntegration:Zg().bool.isRequired,onCreateIntegration:Zg().func.isRequired,onCancel:Zg().func.isRequired,onTestVcsConnection:Zg().func.isRequired,isTestingVcsConnection:Zg().bool.isRequired,testingVcsConnectionStatus:Zg().string,vcsHostingAvailable:Zg().bool,availableVcsResources:Zg().array.isRequired,customYouTrackProjectTemplates:Zg().array.isRequired}),fF(yF,"contextTypes",{i18n:Zg().func.isRequired,currentUser:Zg().object.isRequired});var wF=["iconUrl","glyph","size"];function _F(e){return _F="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},_F(e)}function jF(){return jF=Object.assign?Object.assign.bind():function(e){for(var t=1;t&lt;arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&amp;&amp;(e[r]=n[r])}return e},jF.apply(this,arguments)}function xF(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,TF(r.key),r)}}function EF(e){return EF=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},EF(e)}function SF(e,t){return SF=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},SF(e,t)}function TF(e){var t=function(e,t){if("object"!==_F(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==_F(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===_F(t)?t:String(t)}var MF=function(e){function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),e=this,r=arguments,n=EF(n=t),function(e,t){if(t&amp;&amp;("object"===_F(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(n,r||[],EF(e).constructor):n.apply(e,r));var e,n,r}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;SF(e,t)}(t,e),n=t,r=[{key:"render",value:function(){var e=this.props,t=e.id,n=e.domId,r=e.name,o=e.tab,s=e.href,c=e.label,l=e.children;return i.createElement("div",{className:"project-overview__administration-link"},i.createElement(a.Z,{id:n,href:s||"projects-administration/".concat(fC(r,t),"?tab=").concat(o)},c),l)}}],r&amp;&amp;xF(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);!function(e,t,n){(t=TF(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(MF,"propTypes",{id:Zg().string,domId:Zg().string,name:Zg().string,tab:Zg().string,label:Zg().string,href:Zg().string,children:Zg().node});var LF=function(e){var t=e.iconUrl,n=e.glyph,r=e.size,o=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r&lt;i.length;r++)n=i[r],t.indexOf(n)&gt;=0||Object.prototype.propertyIsEnumerable.call(e,n)&amp;&amp;(o[n]=e[n])}return o}(e,wF);return t?i.createElement(ZI.Z,jF({url:t,size:r},o)):i.createElement(da.ZP,jF({glyph:n,size:r},o))};function kF(e){return kF="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},kF(e)}function OF(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,RF(r.key),r)}}function PF(e){return PF=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},PF(e)}function NF(e,t){return NF=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},NF(e,t)}function DF(e,t,n){return(t=RF(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function RF(e){var t=function(e,t){if("object"!==kF(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==kF(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===kF(t)?t:String(t)}LF.propTypes={iconUrl:Zg().string,glyph:Zg().string,size:Zg().number};var UF=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return DF(e=function(e,t,n){return t=PF(t),function(e,t){if(t&amp;&amp;("object"===kF(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],PF(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"toggle",(function(){e.props.onExpandCollapse(!e.props.expanded)})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;NF(e,t)}(t,e),n=t,r=[{key:"render",value:function(){var e=this.props,t=e.children,n=e.title,r=e.iconUrl,o=e.first,s=e.expanded,c=e.description,l=e.serviceHref,g=this.context.i18n,u=Wg()("project-overview__service",{"project-overview__service_first":o}),d=Wg()("project-overview__service__header__expander",{"project-overview__service__header__expander_expanded":s});return i.createElement("div",{className:u},i.createElement("div",{className:"project-overview__service__header"},i.createElement("a",{href:l},i.createElement(LF,{className:"project-overview__service__header__icon",iconUrl:r,glyph:qL(),size:da.ZP.Size.Size32})),i.createElement("div",{className:"project-overview__service__header__labels"},i.createElement(a.Z,{href:l,className:"project-overview__service__header-link"},n),i.createElement("div",{className:"project-overview__service__header__labels__type",title:c},c)),t.length?i.createElement(bi.ZP,{icon:qx(),className:d,onClick:this.toggle,title:g(s?"Hide resource links":"Show resource links")}):null),s&amp;&amp;i.createElement("div",{className:"project-overview__service__actions"},t))}}],r&amp;&amp;OF(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);function zF(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}DF(UF,"propTypes",{children:Zg().node.isRequired,title:Zg().string.isRequired,iconUrl:Zg().string.isRequired,serviceHref:Zg().string.isRequired,first:Zg().bool.isRequired,expanded:Zg().bool.isRequired,onExpandCollapse:Zg().func.isRequired,description:Zg().string}),DF(UF,"contextTypes",{i18n:Zg().func.isRequired});var $F=[].concat(function(e){return function(e){if(Array.isArray(e))return zF(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return zF(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?zF(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(xE),[xl]);function GF(e){return GF="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},GF(e)}function BF(){BF=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==GF(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function FF(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function ZF(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){FF(i,r,o,a,s,"next",e)}function s(e){FF(i,r,o,a,s,"throw",e)}a(void 0)}))}}function YF(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,QF(r.key),r)}}function WF(e){return WF=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},WF(e)}function HF(e,t){return HF=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},HF(e,t)}function qF(e,t,n){return(t=QF(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function QF(e){var t=function(e,t){if("object"!==GF(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==GF(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===GF(t)?t:String(t)}var VF=function(e){function t(){var e,n,r,o;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var a=arguments.length,c=new Array(a),l=0;l&lt;a;l++)c[l]=arguments[l];return qF((n=this,r=t,o=[].concat(c),r=WF(r),e=function(e,t){if(t&amp;&amp;("object"===GF(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(n,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(r,o||[],WF(n).constructor):r.apply(n,o))),"onLoadUpsourceRepositories",ZF(BF().mark((function t(){var n,r,o=arguments;return BF().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.props.i18n,t.prev=1,t.next=4,(r=e.props).loadUpsourceRepository.apply(r,o);case 4:t.next=9;break;case 6:t.prev=6,t.t0=t.catch(1),s.Z.error("".concat(n("Could not load repositories:")," ").concat(t.t0.toString()));case 9:case"end":return t.stop()}}),t,null,[[1,6]])})))),qF(e,"getAvailableVcsResources",(function(){return(e.props.project.resources||[]).filter((function(e){return e.service.applicationName===xl})).sort((function(e,t){return e.name.toLowerCase().localeCompare(t.name.toLowerCase())})).filter((function(e){return"repository"===e.type}))})),qF(e,"renderVCS",(function(){var t=e.props,n=t.project,r=t.onServiceExpandCollapse,o=t.expandedIntegrationKey,a=e.context,s=a.hubI18nPlural,c=a.i18n,l="vcs-integration",g=0===TE(n).length,u=e.getAvailableVcsResources();return 0===u.length?null:i.createElement(UF,{key:l,first:g,title:c("VCS Hosting"),iconUrl:u[0].service.iconUrl,serviceHref:u[0].service.homeUrl,description:s.format("repositories-total-title",u.length),expanded:o===l,onExpandCollapse:function(e){return r(l,e)}},function(e,t,n){return t.map((function(e){return i.createElement(SE,{vcsUrl:"".concat(e.homeUrl.replace("~repo/",""),".git"),key:e.id,href:e.homeUrl,i18n:n},e.name)}))}(0,u,c))})),qF(e,"getAdministrationLinks",(function(){var t=e.props.project,n=e.context,r=n.permissionCache,o=n.i18n,a=n.getProjectAdministrationLinks,s=r.has("(jetbrains.jetpass.project-read-basic | jetbrains.jetpass.project-read) &amp; (jetbrains.jetpass.user-read-basic | jetbrains.jetpass.user-read)",t.id),c=r.has("jetbrains.jetpass.project-read &amp; (jetbrains.jetpass.user-read-basic | jetbrains.jetpass.user-read) &amp; jetbrains.jetpass.role-read",t.id);return a?i.createElement("div",null,i.createElement("div",{className:"project-overview__space"}),a(t).map((function(e){var n=e.href,r=e.domId,o=e.label,a=e.rgItemType,s=e.children;return a===Mp.Z.ListProps.Type.TITLE?i.createElement("h4",{className:"project-overview__sidebar__header",key:o},o):i.createElement(MF,{id:t.id,domId:r,key:n,href:n,label:o},s)}))):t.name?i.createElement("div",null,i.createElement("div",{className:"project-overview__space"}),i.createElement("h4",{className:"project-overview__sidebar__header"},o("Administration")),i.createElement(MF,{id:t.id,name:t.name,tab:"general",label:o("Settings")}),i.createElement(MF,{id:t.id,name:t.name,tab:"resources",label:o("Resources")}),s&amp;&amp;!t.global&amp;&amp;i.createElement(MF,{id:t.id,name:t.name,tab:"team",label:o("Team")}),c&amp;&amp;i.createElement(MF,{id:t.id,name:t.name,tab:"access",label:o("Access")})):null})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;HF(e,t)}(t,e),n=t,r=[{key:"UNSAFE_componentWillMount",value:function(){this.context.disableServicesSection||this.props.loadAvailableServices()}},{key:"render",value:function(){var e=this,t=this.props,n=t.project,r=t.upsourceRepositories,o=t.expandedIntegrationKey,s=t.availableServices,c=t.onShowIntegrationDialog,l=t.onHideIntegrationDialog,g=t.isIntegrationDialogOpen,u=t.serviceToIntegrateWith,d=t.onCreateIntegration,p=t.isCreatingIntegration,A=t.integrationErrorMessage,C=t.isCheckingIntegrationCreationAccess,I=t.isLoadingFormData,f=t.integrationFormDataErrorMessage,m=t.onClearIntegrationFormDataError,h=t.customYouTrackProjectTemplates,v=t.integrationCreationAccessErrorMessage,b=t.onTestVcsConnection,y=t.isTestingVcsConnection,w=t.testingVcsConnectionStatus,_=t.onClearCreationAccessError,j=t.onServiceExpandCollapse,x=this.context,E=x.permissionCache,S=x.i18n,T=x.filter,M=x.featureFlags,L=x.disableServicesSection,k=function(e){var t=e.availableServices,n=e.i18n,r=e.permissionCache,o=e.projectId,i=e.teamcityEnabled,a=e.onSelect;if(!o)return[];var s=r.has("create_repository",o),c=r.has("jetbrains.upsource.server.createproject jetbrains.jetpass.project-update",o),l=r.has("jetbrains.jetpass.project-update",o);return t.filter((function(e){return e.applicationName!==jl})).filter((function(e){var t=e.applicationName;return t===xl&amp;&amp;s||t===El&amp;&amp;c||t===Tl&amp;&amp;l})).filter((function(e){var t=e.applicationName;return i||t!==Sl})).map((function(e){return{key:e.id,label:AE(e.applicationName,n),applicationName:e.applicationName,description:(t=e.homeUrl,t?t.replace(/^https?:\/\//,""):t),onClick:function(){return a(e)}};var t})).sort((function(e,t){return $F.indexOf(e.applicationName)-$F.indexOf(t.applicationName)}))}({availableServices:s,i18n:S,permissionCache:E,projectId:n.id,teamcityEnabled:M.has("jetbrains.hub.project.wizard.teamcity.enabled"),onSelect:c}),O=TE(n),P=(O.length&gt;0||this.getAvailableVcsResources().length&gt;0||k.length&gt;0)&amp;&amp;!L,N=!!n.id;return i.createElement("div",null,i.createElement("div",null,i.createElement("div",{className:"project-overview__sidebar-logo-wrapper"},N&amp;&amp;i.createElement(LF,{iconUrl:n.iconUrl,glyph:Um(),size:da.ZP.Size.Size128})),E.has("jetbrains.jetpass.project-read",n.id)&amp;&amp;this.getAdministrationLinks()),P&amp;&amp;i.createElement("div",{className:"project-overview__space"}),P&amp;&amp;i.createElement("div",null,i.createElement("div",{className:"project-overview__services"},O.map((function(t,a){var s=t.resource,c=t.service;return i.createElement(UF,{key:s.id,first:0===a,title:AE(c.applicationName,S),iconUrl:c.iconUrl,serviceHref:c.homeUrl,description:s.name,expanded:o===s.id,onExpandCollapse:function(t){j(s.id,t),t&amp;&amp;c.applicationName===El&amp;&amp;E.has("jetbrains.upsource.project.admin",n.id)&amp;&amp;e.onLoadUpsourceRepositories(s)}},function(e,t,n,r,o,a){var s=vE(vE(vE({},Tl,(function(){return function(e){var t=e.i18n,n=e.resource,r=e.permissionCache,o=e.project,i=e.service,a=function(){return parseFloat(i.version)&gt;=7?"".concat(i.homeUrl,"/admin/editProject/").concat(n.id):"".concat(i.homeUrl,"/admin/editProject/").concat(o.id)},s=[EE(t("Issues"),"".concat(i.homeUrl,"/issues/").concat(n.key)),EE(t("Agile Boards"),"".concat(i.homeUrl,"/agiles")),EE(t("Reports"),"".concat(i.homeUrl,"/reports")),EE(t("Knowledge Base"),"".concat(i.homeUrl,"/articles/").concat(n.key))];if(r.has(jE,o.id)){var c=a();s=[].concat(bE(s),[EE(t("Edit Project"),a(),{className:"project-overview__service__actions__action_spaced"}),EE(t("Custom Fields"),"".concat(c,"?tab=fields")),EE(t("Notification Templates"),"".concat(c,"?tab=notification-templates")),EE(t("Time Tracking"),"".concat(c,"?tab=time-tracking")),EE(t("Workflows"),"".concat(c,"?tab=workflow"))])}return s}({i18n:r,resource:n,permissionCache:o,project:e,service:t})})),Sl,(function(){return function(e){var t=e.i18n,n=e.resource,r=e.permissionCache,o=e.project,i=e.service,a=[EE(t("Overview"),"".concat(i.homeUrl,"/project.html?projectId=").concat(n.key),{key:"overview.".concat(n.id)})];if(r.has(jE,o.id)){var s="".concat(i.homeUrl,"/admin/editProject.html?projectId=").concat(n.key);a=[].concat(bE(a),[EE(t("Administration"),s)])}return a}({i18n:r,resource:n,permissionCache:o,project:e,service:t})})),El,(function(){return function(e){var t=e.resource,n=e.i18n,r=e.permissionCache,o=e.project,a=e.upsourceRepositories,s="".concat(t.service.homeUrl,"/").concat(t.key),c=[];if(r.has("jetbrains.upsource.project.code.read",o.id)&amp;&amp;(c=[].concat(bE(c),[EE(n("Revisions"),s),EE(n("Code"),"".concat(s,"/structure/HEAD/")),EE(n("Reviews"),"".concat(s,"/reviews")),EE(n("Branches"),"".concat(s,"/branches")),EE(n("Analytics"),"".concat(s,"/analytics/"))])),r.has("jetbrains.upsource.project.admin",o.id)){c=[].concat(bE(c),[EE(n("Edit Project"),"".concat(s,"/administration/settings?tab=general"),{className:"project-overview__service__actions__action_spaced"})]);var l=a[t.id];if(l&amp;&amp;l.length){var g=i.createElement("div",{className:"project-overview__service-actions-separator",key:"repo-separator"},n("Repository")),u=l.map((function(e){var t="hosted-git"===e.vcs,n=t?function(e,t){var n=t.filter((function(t){return t.key==="repo_".concat(e)}))[0];return n?{url:n.homeUrl,name:n.name}:null}(e["repo-id"],o.resources):e,r=n.name||n.url;return{url:n.url,title:r,sortingKey:Number(!t)+r}})).sort((function(e,t){return e.sortingKey.localeCompare(t.sortingKey)})).map((function(e){var t=e.title,r=e.url;return i.createElement(SE,{vcsUrl:r,key:r,href:r,i18n:n},t)}));c=[].concat(bE(c),[u.length?g:null,u])}}return c}({resource:n,i18n:r,permissionCache:o,project:e,upsourceRepositories:a})}));return s[t.applicationName]()}(n,c,s,S,E,r))})),this.renderVCS())),i.createElement("div",{className:"project-overview__about-wrapper"},i.createElement("h4",{className:"project-overview__sidebar__header"},S("About")),n.owner&amp;&amp;i.createElement(Ff,{user:n.owner,i18n:S},S("Owned by")," ",i.createElement(a.Z,{href:"users/".concat(n.owner.id)},n.owner.name)),i.createElement("div",null,S("Created on")," ",T("date")(n.creationTime))),(C||v)&amp;&amp;i.createElement(NB.Z,null,i.createElement(DB.ZP,{type:v?DB.ZP.Type.ERROR:DB.ZP.Type.LOADING,closeable:!C,onCloseRequest:_},v||S("Checking creation access"))),(I||f)&amp;&amp;i.createElement(NB.Z,null,i.createElement(DB.ZP,{type:f?DB.ZP.Type.ERROR:DB.ZP.Type.LOADING,closeable:!I,onCloseRequest:m},f||S("Preparing"))),g&amp;&amp;i.createElement(yF,{service:u,project:n,isCreatingIntegration:p,onCancel:l,errorMessage:A,onCreateIntegration:function(e){return d(e,u,S)},onTestVcsConnection:function(e){return b(e,u)},isTestingVcsConnection:y,testingVcsConnectionStatus:w,vcsHostingAvailable:s.filter((function(e){return e.applicationName===xl})).length&gt;0,availableVcsResources:this.getAvailableVcsResources(),customYouTrackProjectTemplates:h}))}}],r&amp;&amp;YF(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);qF(VF,"propTypes",{i18n:Zg().func,project:Zg().object.isRequired,expandedIntegrationKey:Zg().string,availableServices:Zg().array,upsourceRepositories:Zg().object.isRequired,isIntegrationDialogOpen:Zg().bool,isCreatingIntegration:Zg().bool,isCheckingIntegrationCreationAccess:Zg().bool,isLoadingFormData:Zg().bool,serviceToIntegrateWith:Zg().object,integrationErrorMessage:Zg().string,integrationCreationAccessErrorMessage:Zg().string,integrationFormDataErrorMessage:Zg().string,onServiceExpandCollapse:Zg().func.isRequired,onClearCreationAccessError:Zg().func.isRequired,onClearIntegrationFormDataError:Zg().func.isRequired,onShowIntegrationDialog:Zg().func.isRequired,onHideIntegrationDialog:Zg().func.isRequired,loadUpsourceRepository:Zg().func.isRequired,loadAvailableServices:Zg().func.isRequired,onCreateIntegration:Zg().func.isRequired,onTestVcsConnection:Zg().func.isRequired,isTestingVcsConnection:Zg().bool,testingVcsConnectionStatus:Zg().string,customYouTrackProjectTemplates:Zg().array}),qF(VF,"contextTypes",{permissionCache:Zg().object.isRequired,i18n:Zg().func.isRequired,hubI18nPlural:Zg().object.isRequired,filter:Zg().func.isRequired,featureFlags:Zg().instanceOf(Set).isRequired,getProjectAdministrationLinks:Zg().func,disableServicesSection:Zg().bool});const KF=(0,X_.$j)((function(e){var t=e.projectOverview,n=e.entities,r=t.expandedIntegrationKey,o=t.availableServices,i=t.isIntegrationDialogOpen,a=t.serviceToIntegrateWith,s=t.isCreatingIntegration,c=t.integrationErrorMessage,l=t.isCheckingIntegrationCreationAccess,g=t.integrationCreationAccessErrorMessage,u=t.isLoadingFormData,d=t.isTestingVcsConnection,p=t.testingVcsConnectionStatus,A=t.customYouTrackProjectTemplates;return{upsourceRepositories:n.upsourceRepositories,expandedIntegrationKey:r,availableServices:o,isIntegrationDialogOpen:i,serviceToIntegrateWith:a,isCreatingIntegration:s,integrationErrorMessage:c,isCheckingIntegrationCreationAccess:l,integrationCreationAccessErrorMessage:g,isTestingVcsConnection:d,testingVcsConnectionStatus:p,isLoadingFormData:u,customYouTrackProjectTemplates:A}}),(function(e){return{loadUpsourceRepository:function(t){return e(VE(t))},onServiceExpandCollapse:function(t,n){return e(n?KE(t):JE())},onShowIntegrationDialog:(t=ZF(BF().mark((function t(n){return BF().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,e(dS(n));case 2:return t.next=4,e(mS(n));case 4:e(rS(n));case 5:case"end":return t.stop()}}),t)}))),function(e){return t.apply(this,arguments)}),onClearCreationAccessError:function(){return e(uS())},onClearIntegrationFormDataError:function(){return e(IS())},onHideIntegrationDialog:function(){return e(oS())},loadAvailableServices:function(){return e(function(){var e=OE(LE().mark((function e(t,n,r){var o,i;return LE().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o=r.getDatasource,e.prev=1,e.next=4,o().getServices();case 4:i=e.sent,t(eS(i.services||[])),e.next=11;break;case 8:e.prev=8,e.t0=e.catch(1),console.error(e.t0);case 11:case"end":return e.stop()}}),e,null,[[1,8]])})));return function(t,n,r){return e.apply(this,arguments)}}())},onCreateIntegration:function(t,n,r){return e(function(e,t,n){return function(){var r=OE(LE().mark((function r(o,i,a){var s,c,l,g,u,d,p,A,C;return LE().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return s=a.getDatasource,c=a.getYouTrackBackend,l=a.getUpsourceBackend,g=a.getVCSBackend,o(iS()),u=i(),d=u.projectOverview.id,p=function(t,n){return{hubProjectId:t,projectId:n.id,codeReviewIdPattern:n.reviewIdPattern,projectName:n.name,projectModel:{type:n.projectModel.key,pathToModel:n.projectModelPath},vcsSettings:JSON.stringify({mappings:[$E(e)]})}},A=UE(UE(UE({},Tl,(function(){return c().createIntegration(t.homeUrl,e)})),El,OE(LE().mark((function n(){var r,o;return LE().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if("hosted-git"!==e.vcsType.key||"--new-repository-key--"!==e.vcsRepo.key){n.next=15;break}return r=u.projectOverview.availableServices.filter((function(e){return e.applicationName===xl}))[0],n.prev=2,n.next=5,g().createRepository(r.homeUrl,e.vcsName,d);case 5:n.next=10;break;case 7:throw n.prev=7,n.t0=n.catch(2),new Error(n.t0.data);case 10:return o=JSON.stringify({mappings:[{vcs:e.vcsType.key,"repo-id":e.vcsName,id:e.vcsName,"vcs-hosting-id":r.id}]}),n.next=13,l().createProject(t.homeUrl,RE(RE({},p(d,e)),{},{vcsSettings:o}));case 13:n.next=17;break;case 15:return n.next=17,l().createProject(t.homeUrl,p(d,e));case 17:case"end":return n.stop()}}),n,null,[[2,7]])})))),xl,(function(){return g().createRepository(t.homeUrl,e.name,d)})),r.prev=6,r.next=9,A[t.applicationName]();case 9:return r.t0=YE,r.next=12,s().getProject({id:d});case 12:return r.t1=r.sent,C=(0,r.t0)(r.t1),o(cj([C])),r.next=17,o(nS(d,e,t,n));case 17:o(QE(zE(C))),o(oS()),r.next=25;break;case 21:throw r.prev=21,r.t2=r.catch(6),o(sS(r.t2)),r.t2;case 25:return r.prev=25,o(aS()),r.finish(25);case 28:case"end":return r.stop()}}),r,null,[[6,21,25,28]])})));return function(e,t,n){return r.apply(this,arguments)}}()}(t,n,r))},onTestVcsConnection:function(t,n){return e(function(e,t){return function(){var n=OE(LE().mark((function n(r,o,i){var a,s,c,l,g,u;return LE().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return a=i.getUpsourceBackend,s=o().projectOverview.id,c=$E(e),r(bS()),n.prev=4,n.next=7,a().checkVcsConnection(t.homeUrl,s,t.id,c);case 7:l=n.sent,g=l.status,u=l.message,r(wS(1===g?"VCS connection successful":u)),n.next=16;break;case 13:throw n.prev=13,n.t0=n.catch(4),n.t0;case 16:r(yS());case 17:case"end":return n.stop()}}),n,null,[[4,13]])})));return function(e,t,r){return n.apply(this,arguments)}}()}(t,n))}};var t}))(VF);var JF=n(433),XF=n(15899),eZ=n.n(XF);function tZ(e){return tZ="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},tZ(e)}function nZ(e){return function(e){if(Array.isArray(e))return rZ(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return rZ(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?rZ(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function rZ(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function oZ(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function iZ(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?oZ(Object(n),!0).forEach((function(t){lZ(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):oZ(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function aZ(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,gZ(r.key),r)}}function sZ(e){return sZ=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},sZ(e)}function cZ(e,t){return cZ=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},cZ(e,t)}function lZ(e,t,n){return(t=gZ(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function gZ(e){var t=function(e,t){if("object"!==tZ(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==tZ(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===tZ(t)?t:String(t)}var uZ=function(e){function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),e=this,r=arguments,n=sZ(n=t),function(e,t){if(t&amp;&amp;("object"===tZ(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(n,r||[],sZ(e).constructor):n.apply(e,r));var e,n,r}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;cZ(e,t)}(t,e),n=t,r=[{key:"componentWillMount",value:function(){var e=this,t=this.props,n=t.config,r=t.dashboardData,o=t.onSave,i=this.context.$injector,a=i.get("$compile"),s=i.get("$rootScope").$new();this.$scope=s,s.dashboardDataCopy=eZ()(r),s.config=n,s.onSave=function(e){return o(eZ()(e))},s.showImportWidgetsDialog=this.showImportWidgetsDialog,s.onCreateWidget=function(t){s.$broadcast("hub:dashboard:create_widget",iZ(iZ({},t),{},{config:e.getWidgetConfig(t)}))},s.onImportWidgets=function(t){s.dashboardDataCopy.widgets=[].concat(nZ(s.dashboardDataCopy.widgets),nZ(t)),s.onSave(e.$scope.dashboardDataCopy)};var c=a('\n&lt;div&gt;\n  &lt;div class="dashboard-wrapper__toolbar"&gt;\n    &lt;div&gt;\n      &lt;dashboard-buttons\n        ng-if="config.editable"\n        on-create="onCreateWidget"\n        on-import="onImportWidgets"\n      &gt;&lt;/dashboard-buttons&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n  &lt;dashboard\n    dashboard="dashboardDataCopy"\n    config="config"\n    on-save="onSave(dashboardDataCopy)"\n  &gt;&lt;/dashboard&gt;\n\n  &lt;rg-island\n    ng-if="!dashboardDataCopy.widgets.length &amp;&amp; config.editable"\n    class="dashboard-wrapper__empty"\n  &gt;\n    &lt;rg-island-content&gt;\n      &lt;span translate&gt;Add widgets to monitor the current status in your project. Widgets are visible to all users who can see this project.&lt;/span&gt;\n    &lt;/rg-island-content&gt;\n  &lt;/rg-island&gt;\n&lt;/div&gt;\n    ')(s);this.setState({node:c[0]})}},{key:"componentDidMount",value:function(){this.$scope.$applyAsync()}},{key:"componentWillReceiveProps",value:function(e){this.$scope.dashboardDataCopy=eZ()(e.dashboardData),this.$scope.$applyAsync()}},{key:"componentDidUpdate",value:function(){this.$scope.$applyAsync()}},{key:"componentWillUnmount",value:function(){this.$scope.$destroy()}},{key:"getWidgetConfig",value:function(e){if(e.custom)return{};var t=this.props.resources.filter((function(t){return t.service.applicationName===e.applicationName}))[0];return t?{service:{id:t.service.id,text:t.service.homeUrl}}:{}}},{key:"render",value:function(){var e=this.props.className,t=this.state.node;return t?i.createElement(JF.Z,{className:e,nodes:[t]}):null}}],r&amp;&amp;aZ(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.PureComponent);function dZ(e){return dZ="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},dZ(e)}function pZ(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,fZ(r.key),r)}}function AZ(e){return AZ=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},AZ(e)}function CZ(e,t){return CZ=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},CZ(e,t)}function IZ(e,t,n){return(t=fZ(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function fZ(e){var t=function(e,t){if("object"!==dZ(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==dZ(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===dZ(t)?t:String(t)}lZ(uZ,"propTypes",{className:Zg().string,dashboardData:Zg().object.isRequired,resources:Zg().array.isRequired,config:Zg().object.isRequired,onSave:Zg().func.isRequired}),lZ(uZ,"contextTypes",{$injector:Zg().object.isRequired});var mZ=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return IZ(e=function(e,t,n){return t=AZ(t),function(e,t){if(t&amp;&amp;("object"===dZ(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],AZ(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"onUpdateDashboard",(function(t){var n=e.props;return(0,n.onUpdateProjectDashboard)(n.project.id,t)})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;CZ(e,t)}(t,e),n=t,(r=[{key:"render",value:function(){var e=this.props.project,t=this.context.permissionCache;if(!e.dashboard)return null;var n=e.id&amp;&amp;t.has("jetbrains.jetpass.project-read jetbrains.jetpass.project-update",e.id);return i.createElement(uZ,{dashboardData:e.dashboard,resources:e.resources||[],onSave:this.onUpdateDashboard,config:{columnsCount:4,otherDashboardsExists:!1,editable:n}})}}])&amp;&amp;pZ(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);function hZ(e){return hZ="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},hZ(e)}function vZ(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,_Z(r.key),r)}}function bZ(e){return bZ=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},bZ(e)}function yZ(e,t){return yZ=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},yZ(e,t)}function wZ(e,t,n){return(t=_Z(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _Z(e){var t=function(e,t){if("object"!==hZ(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==hZ(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===hZ(t)?t:String(t)}IZ(mZ,"propTypes",{project:Zg().object.isRequired,onUpdateProjectDashboard:Zg().func.isRequired}),IZ(mZ,"contextTypes",{permissionCache:Zg().object.isRequired});var jZ=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return wZ(e=function(e,t,n){return t=bZ(t),function(e,t){if(t&amp;&amp;("object"===hZ(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],bZ(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"state",{oversize:!1,showedMore:!1}),wZ(e,"onRefUpdate",(function(t){var n=e.props.single,r=(0,qn.findDOMNode)(t);if(r){var o=!n&amp;&amp;r.clientHeight&gt;531;o!==e.state.oversize&amp;&amp;e.setState({oversize:o})}})),wZ(e,"onShowMore",(function(){e.setState({showedMore:!0})})),wZ(e,"onShowLess",(function(){e.setState({showedMore:!1})})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;yZ(e,t)}(t,e),n=t,r=[{key:"render",value:function(){var e=this.props,t=e.readme,n=e.single,r=this.context.i18n,o=this.state,a=o.oversize,s=o.showedMore,c=Wg()("project-overview__readme",{"project-overview__readme_oversize":a,"project-overview__readme_single":n,"project-overview__readme_expanded":s}),l=t.content?gl(t.content,{buildEntityLink:function(){return""},parseEntityIdFromUrl:function(){return""}}):"";return t.content?i.createElement(Qi.ZP,{className:c},i.createElement(Ki.Z,{scrollableWrapperClassName:"project-overview__island-content",fade:!1},i.createElement(kB.Z,{ref:this.onRefUpdate},i.createElement("div",{dangerouslySetInnerHTML:{__html:l}}))),i.createElement("div",{className:"project-overview__show-more","data-test":"project-list-footer"},i.createElement(bi.ZP,{"data-test":"show-more",onClick:s?this.onShowLess:this.onShowMore,text:!0,inline:!0},r(s?"Show less":"Show more")))):i.createElement(Qi.ZP,{className:"project-overview__readme"},i.createElement(Ki.Z,{scrollableWrapperClassName:"project-overview__island-content"},i.createElement("div",{className:"project-overview__readme-placeholder-item"}),i.createElement("div",{className:"project-overview__readme-placeholder-item"}),i.createElement("div",{className:"project-overview__readme-placeholder-item"})))}}],r&amp;&amp;vZ(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);function xZ(e){return xZ="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},xZ(e)}function EZ(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,MZ(r.key),r)}}function SZ(e){return SZ=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},SZ(e)}function TZ(e,t){return TZ=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},TZ(e,t)}function MZ(e){var t=function(e,t){if("object"!==xZ(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==xZ(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===xZ(t)?t:String(t)}wZ(jZ,"propTypes",{readme:Zg().object.isRequired,single:Zg().bool.isRequired}),wZ(jZ,"contextTypes",{i18n:Zg().func.isRequired});var LZ=function(e){function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),e=this,r=arguments,n=SZ(n=t),function(e,t){if(t&amp;&amp;("object"===xZ(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(n,r||[],SZ(e).constructor):n.apply(e,r));var e,n,r}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;TZ(e,t)}(t,e),n=t,r=[{key:"render",value:function(){var e=this.props.readmes;return i.createElement("div",null,e.filter((function(e){return!e.error})).map((function(e,t,n){return i.createElement(jZ,{key:e.resourceId,readme:e,single:1===n.length})})))}}],r&amp;&amp;EZ(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);function kZ(e){return kZ="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},kZ(e)}function OZ(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,RZ(r.key),r)}}function PZ(e){return PZ=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},PZ(e)}function NZ(e,t){return NZ=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},NZ(e,t)}function DZ(e,t,n){return(t=RZ(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function RZ(e){var t=function(e,t){if("object"!==kZ(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==kZ(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===kZ(t)?t:String(t)}!function(e,t,n){(t=MZ(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(LZ,"propTypes",{readmes:Zg().arrayOf(Zg().object).isRequired}),n(36177);var UZ=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return DZ(e=function(e,t,n){return t=PZ(t),function(e,t){if(t&amp;&amp;("object"===kZ(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],PZ(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"onStarClick",(function(){var t=e.props,n=t.project;(0,t.onProjectFavoritismToggle)(n)})),DZ(e,"getOrganizationLink",(function(t){var n=e.props.getOrganizationLink;return n?n(t):"organizations/".concat(CC(t.name,t.id))})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;NZ(e,t)}(t,e),n=t,r=[{key:"getChildContext",value:function(){var e=this.props;return{permissionCache:e.permissionCache,i18n:e.i18n,hubI18nPlural:e.hubI18nPlural,filter:e.filter,featureFlags:e.featureFlags,getProjectAdministrationLinks:e.getProjectAdministrationLinks,disableServicesSection:e.disableServicesSection,currentUser:e.currentUser,$injector:e.$injector,getOrganizationLink:e.getOrganizationLink}}},{key:"UNSAFE_componentWillMount",value:function(){var e=this.props,t=e.projectId;(0,e.onComponentWillMount)(t)}},{key:"componentWillUnmount",value:function(){this.props.onClose()}},{key:"render",value:function(){var e=this.props,t=e.project,n=e.readmes,r=e.favoriteUpdating,o=e.i18n,s=e.headerButtons,c=e.onUpdateProjectDashboard,l=e.selectedTab,g=e.onSelectTab,u=t.description?gl(t.description,{buildEntityLink:function(){return""},parseEntityIdFromUrl:function(){return""}}):"",d=i.createElement("span",{className:"project-overview__star-wrapper"},i.createElement("span",{title:t.myFavorite?o("Remove from favorites"):o("Add to favorites"),className:Wg()({"project-overview__star":!0,"project-overview__star_active":t.myFavorite}),"data-test-is-favorite":t.myFavorite,"data-test":"favorite-toggle",onClick:this.onStarClick},i.createElement(da.ZP,{glyph:F$(),size:da.ZP.Size.Size16,suppressSizeWarning:!0})));r&amp;&amp;(d=i.createElement("span",{className:"project-overview__star-wrapper"},i.createElement(Ka.Z,{className:"project-overview__star-loader"})));var p=Wg()("project-overview__island-content",{"project-overview__island-content_spaced-bottom":!!t.description});return i.createElement("article",null,i.createElement(u$.Z,{responsive:!1,className:"project-overview__content-layout",contentClassName:"project-overview__content-layout-content"},t.name&amp;&amp;i.createElement(Qi.ZP,{className:"project-overview__readme project-overview__readme_spaced"},i.createElement(Ki.Z,{scrollableWrapperClassName:p},t.organization&amp;&amp;i.createElement(a.Z,{className:"project-overview__organization",href:this.getOrganizationLink(t.organization)},t.organization.name),i.createElement("div",{className:"project-overview__header"},i.createElement("h1",{className:"project-overview__title"},t.name),d,s&amp;&amp;s.length?i.createElement("div",{className:"project-overview__header__buttons"},s):null),u&amp;&amp;i.createElement("div",{className:"project-overview__description"},i.createElement(kB.Z,null,i.createElement("div",{dangerouslySetInnerHTML:{__html:u}}))))),n.length?i.createElement(OB.Z,{selected:l,onSelect:g},i.createElement(PB.Z,{id:"dashboard",title:o("Widgets")},i.createElement(mZ,{project:t,onUpdateProjectDashboard:c})),i.createElement(PB.Z,{id:"readmes",title:o("README Files")},i.createElement(LZ,{readmes:n}))):i.createElement(mZ,{project:t,onUpdateProjectDashboard:c}),i.createElement(LB.Z,{right:!0,containerClassName:"project-overview__sidebar-container",className:"project-overview__sidebar"},i.createElement(Qi.ZP,{className:"project-overview__sidebar-island",narrow:!0},i.createElement(Ki.Z,null,i.createElement(KF,{project:t}))))))}}],r&amp;&amp;OZ(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);DZ(UZ,"propTypes",{project:Zg().object.isRequired,fetching:Zg().bool,readmes:Zg().arrayOf(Zg().object).isRequired,favoriteUpdating:Zg().bool,onComponentWillMount:Zg().func.isRequired,onClose:Zg().func.isRequired,onProjectFavoritismToggle:Zg().func.isRequired,onUpdateProjectDashboard:Zg().func.isRequired,projectId:Zg().string.isRequired,permissionCache:Zg().object.isRequired,i18n:Zg().func.isRequired,hubI18nPlural:Zg().object.isRequired,filter:Zg().func.isRequired,featureFlags:Zg().instanceOf(Set).isRequired,getProjectAdministrationLinks:Zg().func,getOrganizationLink:Zg().func,disableServicesSection:Zg().bool,headerButtons:Zg().array,currentUser:Zg().object.isRequired,selectedTab:Zg().string.isRequired,onSelectTab:Zg().func.isRequired,$injector:Zg().object.isRequired}),DZ(UZ,"childContextTypes",{permissionCache:Zg().object.isRequired,i18n:Zg().func.isRequired,hubI18nPlural:Zg().object.isRequired,filter:Zg().func.isRequired,featureFlags:Zg().instanceOf(Set).isRequired,getProjectAdministrationLinks:Zg().func,getOrganizationLink:Zg().func,disableServicesSection:Zg().bool,currentUser:Zg().object.isRequired,$injector:Zg().object.isRequired});const zZ=(0,X_.$j)((function(e){var t=e.projectOverview,n=e.entities,r=t.id,o=t.readmeIds,i=void 0===o?[]:o,a=t.favoriteUpdating;return{fetching:t.fetching,favoriteUpdating:a,project:n.projects[r]||{},readmes:i.map((function(e){return n.readmes[e]||{resourceId:e}}))}}),(function(e,t){var n=t.datasource;return{onComponentWillMount:function(t){var n;e((n=t,function(){var e=OE(LE().mark((function e(t,r,o){var i,a,s,c,l,g,u,d,p;return LE().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=o.getDatasource,e.next=3,i().getProjectByIdOrName(mC(n));case 3:return a=e.sent,s=a.id,t(FE(s)),c=r(),l=c.entities,(g=l.projects[s])&amp;&amp;(u=zE(g),t(QE(u))),t(GE(s)),e.prev=10,e.t0=YE,e.next=14,i().getProject({id:s});case 14:e.t1=e.sent,d=(0,e.t0)(e.t1),t(cj([d])),t(XE(d.resources)),p=zE(d),t(QE(p)),e.next=25;break;case 22:throw e.prev=22,e.t2=e.catch(10),e.t2;case 25:t(BE(s));case 26:case"end":return e.stop()}}),e,null,[[10,22]])})));return function(t,n,r){return e.apply(this,arguments)}}()))},onClose:function(){return e(ZE())},onProjectFavoritismToggle:function(t){var r=t.id,o=t.myFavorite;e(Wj({datasource:n,id:r,myFavorite:!o}))},onUpdateProjectDashboard:function(){return e(hS.apply(void 0,arguments))}}}))(UZ);function $Z(e){return $Z="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},$Z(e)}function GZ(){GZ=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==$Z(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function BZ(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return FZ(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?FZ(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function FZ(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function ZZ(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function YZ(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){ZZ(i,r,o,a,s,"next",e)}function s(e){ZZ(i,r,o,a,s,"throw",e)}a(void 0)}))}}function WZ(e){return WZ=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},WZ(e)}function HZ(e,t){return HZ=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},HZ(e,t)}function qZ(e,t,n){return(t=QZ(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function QZ(e){var t=function(e,t){if("object"!==$Z(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==$Z(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===$Z(t)?t:String(t)}var VZ=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];return qZ(e=function(e,t,n){return t=WZ(t),function(e,t){if(t&amp;&amp;("object"===$Z(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],WZ(e).constructor):t.apply(e,n))}(this,t,[].concat(r)),"defaultTab","dashboard"),qZ(e,"$onInit",YZ(GZ().mark((function t(){var n,r,o,i,a,s,c,l,g,u,d;return GZ().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=e.$inject,r=n.$element,o=n.hubFeatures,i=n.userPermissions,a=n.$scope,s=n.$route,e.root=(0,Ei.s)(r[0]),e.youtrackMode||(c=$l(),e.datasource=new mA(c),e.upsourceBackend=new g$(c),e.youtrackBackend=new wB(c),e.vcsBackend=new MB(c)),AT(e.datasource),CT(e.upsourceBackend),IT(e.vcsBackend),p=e.youtrackBackend,gT.youTrackBackend=p,e.featureFlags&amp;&amp;e.permissionCache){t.next=16;break}return t.next=10,Promise.all([o.getEnabled(),i.load()]);case 10:l=t.sent,g=BZ(l,2),u=g[0],d=g[1],e.featureFlags=u,e.permissionCache=d;case 16:a.$on("$routeUpdate",(function(t,n){var r=n.params.tab;e.selectedTab=r||e.defaultTab,e.renderComponent()})),e.selectedTab=s.current.params.tab||e.defaultTab,e.renderComponent();case 19:case"end":return t.stop()}var p}),t)})))),qZ(e,"$onDestroy",(function(){e.root.unmount()})),qZ(e,"onSelectTab",(function(t){var n=e.$inject,r=n.$scope;n.$route.updateParams({tab:t}),r.$evalAsync()})),qZ(e,"renderComponent",(function(){var t=e.$inject,n=t.i18n,r=t.hubI18nPlural,o=t.$filter,a=t.$routeParams,s=t.$injector,c=a.id;e.root.render(i.createElement(X_.zt,{store:pT},i.createElement(jT,{i18n:n},i.createElement(zZ,{i18n:n,hubI18nPlural:r,filter:o,permissionCache:e.permissionCache,featureFlags:e.featureFlags,$injector:s,projectId:c,getProjectAdministrationLinks:e.getProjectAdministrationLinks,getOrganizationLink:e.getOrganizationLink,upsourceBackend:e.upsourceBackend,currentUser:e.currentUser,disableServicesSection:e.youtrackMode,headerButtons:e.headerButtons,selectedTab:e.selectedTab,onSelectTab:e.onSelectTab}))))})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;HZ(e,t)}(t,e),n=t,Object.defineProperty(n,"prototype",{writable:!1}),n;var n}(p);qZ(VZ,"$inject",["$element","$routeParams","$filter","i18n","hubI18nPlural","hubFeatures","userPermissions","$injector","$route","$scope"]),qZ(VZ,"bindings",{datasource:"&lt;",upsourceBackend:"&lt;",youtrackBackend:"&lt;",vcsBackend:"&lt;",getProjectAdministrationLinks:"&lt;",getOrganizationLink:"&lt;",headerButtons:"&lt;",currentUser:"&lt;",youtrackMode:"&lt;"});var KZ=angular.module("HUB.project-overview",[vd,zt]);KZ.component("projectOverview",VZ);const JZ=KZ.name;var XZ=angular.module("HUB.routesConfig",[]);XZ.constant("routes",[{path:"/users",redirectFromRoot:!0,menu:"access-management",getRoute:function(e){return{template:n(46607),controller:"UserListCtrl as $ctrl",title:e("Users"),permission:"user-read",analyticsKey:"hub-users",resolve:{hubUserTypeFilterQuery:["getHubUserTypeFilterQuery",function(e){return e()}]}}}},{path:"/users/duplicates",getRoute:function(e){return{template:n(72234),controller:"UserDuplicatesCtrl",title:e("Duplicates | Users"),analyticsKey:"hub-user-duplicates"}}},{path:"/users/me",redirectFromRoot:!0,getRoute:Ry,template:""},{path:"/users/:id",getRoute:Ry},{path:"/organizations",redirectFromRoot:!0,menu:"access-management",getRoute:function(e){return{template:n(24912),controller:"OrganizationsCtrl as $ctrl",title:e("Organizations"),permission:"organization-read",analyticsKey:"hub-organizations",resolve:{checkParameter:["feature","RingMessageBundle",function(e,t){return e("jetbrains.hub.organizations.hide").then((function(e){if(e)throw new Error(t.errorpage_404msg())}))}]}}},isEnabled:function(e){return!e.has("jetbrains.hub.organizations.hide")}},{path:"/groups",redirectFromRoot:!0,menu:"access-management",getRoute:function(e){return{template:n(50090),controller:"GroupsCtrl as $ctrl",title:e("Groups"),analyticsKey:"hub-groups",permission:"group-read"}}},{path:"/groups/:id/:page?",getRoute:function(e){return{template:n(28705),controller:"GroupCtrl as $ctrl",title:e("Groups"),analyticsKey:"hub-groups",resolve:{hubUserTypeFilterQuery:["getHubUserTypeFilterQuery",function(e){return e()}]}}}},{path:"/roles",redirectFromRoot:!0,menu:"access-management",getRoute:function(e){return{template:"&lt;div rg-error-page&gt;&lt;role-list&gt;&lt;/role-list&gt;&lt;/div&gt;",title:e("Roles"),permission:"role-read",analyticsKey:"hub-roles",resolve:{checkParameter:["feature","RingMessageBundle",function(e,t){return e("jetbrains.hub.roles.hide").then((function(e){if(e)throw new Error(t.errorpage_404msg())}))}]}}},isEnabled:function(e){return!e.has("jetbrains.hub.roles.hide")}},{path:"/roles/:id",getRoute:function(e){return{template:n(55539),controller:"RoleCtrl",title:e("Roles"),permission:"role-read",analyticsKey:"hub-role",resolve:{checkParameter:["feature","RingMessageBundle",function(e,t){return e("jetbrains.hub.roles.hide").then((function(e){if(e)throw new Error(t.errorpage_404msg())}))}]}}}},{path:"/projects-administration/:id*",getRoute:function(e){return{template:n(33230),controller:"ProjectCtrl as $ctrl",title:e("Projects"),analyticsKey:"hub-projects",resolve:{projectId:["$route","getProjectByIdOrName","feature","RingMessageBundle",function(e,t,n,r){return n("jetbrains.hub.projects.hide").then((function(e){if(e)throw new Error(r.errorpage_404msg())})),t(e.current.params.id).then((function(){return(arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:{}).id}))}]}}},isEnabled:function(e){return!e.has("jetbrains.hub.projects.hide")}},{path:"/licenses",redirectFromRoot:!0,menu:"server-settings",getRoute:function(e){return{template:n(41684),controller:"LicensesCtrl",title:e("Licenses"),analyticsKey:"hub-licenses",permission:"low-level-read",resolve:{checkParameter:["feature","RingMessageBundle",function(e,t){return e("jetbrains.hub.licenses.hide").then((function(e){if(e)throw new Error(t.errorpage_404msg())}))}]}}},isEnabled:function(e){return!e.has("jetbrains.hub.licenses.hide")}},{path:"/licenses/:id",redirectTo:"/licenses"},{path:"/settings",redirectFromRoot:!0,menu:"server-settings",getRoute:function(e){return{template:n(75821),controller:"SettingsCtrl",title:e("System Settings"),analyticsKey:"hub-system-settings",permission:"low-level-read",resolve:{checkParameter:["feature","RingMessageBundle",function(e,t){return e("jetbrains.settings.hide").then((function(e){if(e)throw new Error(t.errorpage_404msg())}))}]}}},isEnabled:function(e){return!e.has("jetbrains.hub.settings.hide")}},{path:"/settings/:id",redirectTo:"/settings"},{path:"/smtp-settings",redirectFromRoot:!0,menu:"server-settings",getRoute:function(e){return{template:n(27027),controller:"SettingsSmtpCtrl",title:e("SMTP"),analyticsKey:"hub-smtp",permission:"low-level-read"}}},{path:"/backup",menu:"server-settings",isEnabled:function(e){return!e.has("jetbrains.jetpass.is_hosted")&amp;&amp;!e.has("jetbrains.hub.backup.hide")},getRoute:function(e){return{template:n(6817),controller:"BackupCtrl as $ctrl",title:e("Backup"),permission:"low-level-read",analyticsKey:"hub-backup",resolve:{checkVisible:["feature","RingMessageBundle",function(e,t){return e("jetbrains.jetpass.is_hosted").then((function(n){if(n)throw new Error(t.errorpage_404msg());e("jetbrains.hub.backup.hide").then((function(e){if(e)throw new Error(t.errorpage_404msg())}))}))}]}}}},{path:"/metrics",redirectFromRoot:!0,menu:"server-settings",getRoute:function(e){return{template:n(78877),controller:"MetricsCtrl",title:e("Metrics"),permission:"low-level-read",analyticsKey:"hub-metrics",resolve:{checkParameter:["feature","RingMessageBundle",function(e,t){return e("jetbrains.hub.metrics.hide").then((function(e){if(e)throw new Error(t.errorpage_404msg())}))}]}}},isEnabled:function(e){return!e.has("jetbrains.hub.metrics.hide")}},{path:"/authmodules",redirectFromRoot:!0,menu:"access-management",getRoute:function(e){return{template:n(67546),controller:"AuthModulesCtrl as $ctrl",analyticsKey:"hub-auth-modules",title:e("Auth Modules"),permission:"low-level-read"}}},{path:"/authmodules/settings",getRoute:function(e){return{template:n(25926),controller:"AuthSettingsCtrl",title:e("Authentication Settings"),analyticsKey:"hub-auth-settings",permission:"low-level-read"}}},{path:"/authmodules/:id",getRoute:function(e){return{template:n(33238),controller:"AuthModuleCtrl",title:e("Auth Modules"),analyticsKey:"hub-auth-module",permission:"low-level-read"}}},{path:"/saml",redirectFromRoot:!0,menu:"access-management",getRoute:function(e){return{template:n(73438),controller:"SamlCtrl as $ctrl",title:e("SAML 2.0"),permission:"low-level-read",analyticsKey:"hub-saml",resolve:{checkParameter:["feature","RingMessageBundle",function(e,t){return e("jetbrains.hub.saml.idp.hide").then((function(e){if(e)throw new Error(t.errorpage_404msg())}))}]}}},isEnabled:function(e){return!e.has("jetbrains.hub.saml.idp.hide")}},{path:"/certificates",redirectFromRoot:!0,menu:"server-settings",getRoute:function(e){return{template:n(92808),controller:"CertificatesCtrl as $ctrl",title:e("Trusted SSL Certificates"),analyticsKey:"hub-trusted-ssl-certificates",permission:"low-level-read"}}},{path:"/certificates/:id",getRoute:function(e){return{template:n(33220),controller:"CertificateCtrl",analyticsKey:"hub-trusted-ssl-certificate",title:e("Trusted SSL Certificates")}}},{path:"/keystores",redirectFromRoot:!0,menu:"server-settings",getRoute:function(e){return{template:n(11900),controller:"KeyStoresCtrl as $ctrl",title:e("SSL Keys"),analyticsKey:"hub-ssl-keys",permission:"low-level-read"}}},{path:"/keystores/:id",getRoute:function(e){return{template:n(89994),controller:"KeyStoreCtrl",analyticsKey:"hub-ssl-key",title:e("SSL Keys")}}},{path:"/services",redirectFromRoot:!0,menu:"server-settings",isEnabled:function(e){return!e.has("jetbrains.hub.services.hide")},getRoute:function(e){return{template:n(91880),controller:"ServicesCtrl as $ctrl",title:e("Services"),permission:"low-level-read",analyticsKey:"hub-services",resolve:{checkParameter:["feature","RingMessageBundle",function(e,t){return e("jetbrains.hub.services.hide").then((function(e){if(e)throw new Error(t.errorpage_404msg())}))}]}}}},{path:"/services/:id",getRoute:function(e){return{template:n(36786),controller:"ServiceCtrl as $ctrl",title:e("Services"),analyticsKey:"hub-services",resolve:{checkParameter:["feature","RingMessageBundle",function(e,t){return e("jetbrains.hub.services.hide").then((function(e){if(e)throw new Error(t.errorpage_404msg())}))}]}}},isEnabled:function(e){return!e.has("jetbrains.hub.services.hide")}},{path:"/events",redirectFromRoot:!0,menu:"server-settings",getRoute:function(e){return{template:n(74876),controller:"EventsCtrl as $ctrl",title:e("Audit Events"),analyticsKey:"hub-audit-events",permission:"low-level-read"}}},{path:"/events/:id",getRoute:function(e){return{template:n(63024),controller:"EventCtrl",analyticsKey:"hub-audit-event",title:e("Audit Events")}}},{path:"/user-profile-attributes",getRoute:function(e){return{template:n(95110),controller:"ProfileAttributesCtrl as $ctrl",title:e("Custom Attributes"),analyticsKey:"hub-profile-custom-attributes",permission:"low-level-read"}}},{path:"/user-profile-attributes/:id",getRoute:function(e){return{template:n(12233),controller:"ProfileAttributeCtrl",analyticsKey:"hub-profile-custom-attribute",title:e("Custom Attributes")}}},{path:"/migrations",getRoute:function(e){return{template:n(37211),controller:"MigrationsCtrl as $ctrl",title:e("DB Migrations"),analyticsKey:"hub-db-migrations",permission:"low-level-read"}}},{path:"/features",getRoute:function(e){return{template:n(4857),controller:"FeaturesListCtrl as $ctrl",title:e("Features"),permission:"low-level-read",analyticsKey:"hub-features",resolve:{checkParameter:["feature","RingMessageBundle",function(e,t){return e("jetbrains.hub.features.hide").then((function(e){if(e)throw new Error(t.errorpage_404msg())}))}]}}},isEnabled:function(e){return!e.has("jetbrains.hub.features.hide")}},{path:"/widgets",menu:"server-settings",getRoute:function(e){return{template:n(68613),controller:"CustomWidgetsListCtrl as $ctrl",title:e("Custom Widgets"),analyticsKey:"hub-custom-widgets",permission:"low-level-read"}},isEnabled:function(e){return!e.has("jetbrains.hub.widgets.browser.hide")}},{path:"/widgets/:key",getRoute:function(e){return{template:n(65509),controller:"CustomWidgetCtrl as widgetCtrl",analyticsKey:"hub-custom-widget",title:e("Widgets")}},isEnabled:function(e){return!e.has("jetbrains.hub.widgets.browser.hide")}},{path:"/end-user-agreement/manage",menu:"server-settings",getRoute:function(e){return{template:n(24468),controller:"EndUserAgreementAdministrationCtrl",title:e("User Agreement"),permission:"low-level-read",analyticsKey:"hub-end-user-angreement",resolve:{checkParameter:["feature","RingMessageBundle",function(e,t){return e("jetbrains.hub.eula.hide").then((function(e){if(e)throw new Error(t.errorpage_404msg())}))}]}}},isEnabled:function(e){return!e.has("jetbrains.hub.eula.hide")}},{path:"/imports",getRoute:function(e){return{template:n(72831),controller:"ImportsCtrl as $ctrl",analyticsKey:"hub-imports",title:e("Imports"),permission:"low-level-read"}}},{path:"/imports/:id",getRoute:function(e){return{template:n(67735),controller:"ImportPageCtrl",analyticsKey:"hub-import",title:e("Import"),permission:"low-level-read"}}},{path:"/projects",menu:"navigation",getRoute:function(e){return{title:e("Projects"),analyticsKey:"hub-projects",template:'\n&lt;div rg-error-page&gt;\n  &lt;project-list&gt;&lt;/project-list&gt;\n  &lt;hub-page-help url="Project-Wizard.html"&gt;\n    &lt;span translate&gt;A project provides access to a collection of resources for a development team.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;',permission:"project-read | project-read-basic",resolve:{checkParameter:["feature","RingMessageBundle",function(e,t){return e("jetbrains.hub.projects.hide").then((function(e){if(e)throw new Error(t.errorpage_404msg())}))}]},controllerAs:"ctrl",controller:["$scope","hubMenuApi","userPermissions","i18n",function(e,t,n,r){n.load().then((function(e){e.has("project-create")&amp;&amp;t.setHeaderButton(i.createElement(eC.Z,{href:"projects?newProject",key:"new-project","data-test-custom":"header-button",primary:!0,className:"project-wizard-adapter__create-button",icon:r$(),title:r("Create new project")}))})),e.$on("$destroy",(function(){t.removeHeaderButton()}))}]}},isEnabled:function(e){return!e.has("jetbrains.hub.projects.hide")}},{path:"/organizations/new",redirectTo:"/organizations?newOrganization",isEnabled:function(e){return!e.has("jetbrains.hub.organizations.hide")}},{path:"/organizations/:id*",getRoute:function(e){return{template:n(72790),controller:"OrganizationCtrl",analyticsKey:"hub-organization",title:e("Organization")}},isEnabled:function(e){return!e.has("jetbrains.hub.organizations.hide")}},{path:"/projects/new",redirectTo:"/projects?newProject",isEnabled:function(e){return!e.has("jetbrains.hub.projects.hide")}},{path:"/projects/:id*",getRoute:function(e){return{title:e("Project"),analyticsKey:"hub-project",template:'\n&lt;div rg-error-page="ctrl.error"&gt;\n  &lt;project-overview\n    datasource="ctrl.datasource"\n    upsource-backend="ctrl.upsourceBackend"\n    youtrack-backend="ctrl.youtrackBackend"\n    vcs-backend="ctrl.vcsBackend"\n    current-user="ctrl.currentUser"\n  &gt;&lt;/project-overview&gt;\n  &lt;hub-page-help url="Project-Wizard.html"&gt;\n    &lt;span translate&gt;Manage the services that provide resources to your project.\n      Fine-tune the project settings for each connected service.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;',resolve:{availableServicesList:"servicesListPromise",customWidgets:"loadAndRegisterCustomWidgetsPromise",project:["$route","getProjectByIdOrName","$location",function(e,t,n){var r=e.current.params.id;return t(r).then((function(e){return e&amp;&amp;e.archived&amp;&amp;n.path("projects-administration/".concat(r)).replace(),e}))}],currentUser:["auth",function(e){return e.requestUser().then((function(e){return e}))}]},permission:"project-read | project-read-basic",controllerAs:"ctrl",controller:["project","currentUser",function(e,t){e||(this.error={error:{status:404}}),this.currentUser=t}]}},isEnabled:function(e){return!e.has("jetbrains.hub.projects.hide")}},{path:"/help",title:("Help",["i18n",function(e){return e("Help")}]),redirectTo:function(){window.location="".concat("https://www.jetbrains.com/help/hub/2024.2/","HUB-Documentation.html")},link:{url:"".concat("https://www.jetbrains.com/help/hub/2024.2/","HUB-Documentation.html"),target:"_blank"},menu:"help"}]),XZ.provider("hubRoutesConfig",["routes",function(e){var t={get:function(t){return t?e.filter((function(e){return e===t}))[0]:e},setFirst:function(t){return e.unshift(t),e},set:function(t){return e.push(t),e}};return angular.extend({$get:function(){return t}},t)}]);const eY=XZ.name,tY=angular.module("widget.unrecognized",[GU]).directive("widgetUnrecognized",(function(){return{template:n(64495),scope:{config:"=",remove:"&amp;",widgetName:"@",serviceName:"@"},restrict:"E"}})).name,nY=oo(ZI.Z,"Avatar").name;var rY=angular.module("widget.upsource",[AC(),br,GU]).constant("upsourceEnums",{role:{author:1,reviewer:2,watcher:3},state:{open:1,closed:2,completed:3},participantState:{unread:1,read:2,accepted:3,rejected:4},context:{revisions:1,reviews:2,feeds:3}}).factory("resourceUpsource",["$http","$resource","upsourceSuggestTransformer","upsourceEnums","upsourceQueryConstructor",function(e,t,n,r,o){return{constructQuery:o,getProjects:function(t){return e.post("".concat(t,"/~rpc/getAllProjects"),{}).then((function(e){return e.data.result}))},getCommits:function(t,n){return e.post("".concat(t,"/~rpc/getRevisionsList"),{projectId:n,limit:30}).then((function(e){return e.data}))},getRevisionsListFiltered:function(t,n,r){return e.post("".concat(t,"/~rpc/getRevisionsListFiltered"),{projectId:n,query:r,limit:30}).then((function(e){return e.data}))},getRevisionsReviewInfo:function(t,n,r){return e.post("".concat(t,"/~rpc/getRevisionReviewInfo"),{projectId:n,revisionId:r}).then((function(e){return e.data}))},getReviews:function(t,n){var r=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:null;return e.post("".concat(t,"/~rpc/getReviews"),{query:n,projectId:r,limit:30}).then((function(e){return e.data}))},getUserInfo:function(t,n){return e.post("".concat(t,"/~rpc/getUserInfo"),{ids:n}).then((function(e){return e.data.result.infos}))},revisionsQueryAssist:function(t,o){return e.post("".concat(t,"/~rpc/queryAssist"),{context:r.context.revisions,projectId:o.projectId,query:o.query,caret:o.caret}).then((function(e){return n(e.data.result)}))},reviewsQueryAssist:function(t,o,i){return e.post("".concat(t,"/~rpc/queryAssist"),{context:r.context.reviews,query:o,caret:i}).then((function(e){return n(e.data.result)}))},createReview:function(e){return t("".concat(e,"/~rpc/createReview"))}}}]).factory("upsourceQueryConstructor",(function(){return function(e){return JSON.stringify(e)}})).factory("upsourceSuggestTransformer",(function(){return function(e){if(e)return e.styleRanges=e.styleRanges||[],e.suggestions=bU()(e.suggestions,(function(e){return e.option=e.type,delete e.type,e.prefix=e.prefix||"",e.suffix=e.suffix||"",e})),e}})).directive("selectUpsourceProject",(function(){return{template:n(78555),scope:{url:"@url",clear:"=?",model:"=",label:"@",multiple:"=?"},restrict:"E",controllerAs:"upsourceSelectCtrl",bindToController:!0,controller:["$scope","resourceUpsource","i18n",function(e,t,n){var r=this;r.getProjectsPromise=null,r.selectConfig={},r.processProjects=function(e){var t=bU()(e,(function(e){return{id:e.projectId,text:e.projectName}}));return $w()(t,"text")},r.dataSource=function(){return r.getProjectsPromise||(r.getProjectsPromise=t.getProjects(r.url).then((function(e){return r.projects=r.processProjects(e.project),r.projects})).catch((function(){r.selectConfig.notFoundMessage=n("Cannot load projects list",null,"Dashboard")}))),r.getProjectsPromise},e.$on("dashboard:upsource-select-project:reload",(function(){r.getProjectsPromise=null}))}]}}));const oY=rY.name;var iY=angular.module("widget.upsource.commits.review",["widget.upsource"]).directive("dshCommitReview",(function(){return{restrict:"E",scope:{projectId:"=",upsourceUrl:"=",review:"=",revision:"=",onBeforeCreate:"&amp;",onCreate:"&amp;",onCreateError:"&amp;"},template:n(1937),controllerAs:"reviewCtrl",bindToController:!0,controller:["$q","resourceUpsource","upsourceEnums","i18n",function(e,t,n,r){var o=this,i=function(){return new(t.createReview(o.upsourceUrl))};o.createReview=function(t,n){o.onBeforeCreate();var a=n||function(e){var t=i();return t.projectId=o.projectId,t.title=e.revisionCommitMessage,t.revisions=[e.revisionId],t}(t);return a.$save().then((function(t){if(t.error)return e.reject(t.error);o.onCreate({review:t.result,reviewUrl:o.getReviewHref(t.result)})})).catch((function(e){if(!n&amp;&amp;e.data.error&amp;&amp;e.data.error.message.includes("Cannot deserialize params"))return o.createReview(t,function(e){var t=i();return t.projectId=o.projectId,t.title=e.revisionCommitMessage,t.revisions=[{projectId:o.projectId,revisionId:e.revisionId}],t}(t));o.onCreateError({error:e}),s.Z.error(r("Cannot create review. Please try again later or contact Ring Dashboard support.",null,"Dashboard"))}))},o.isReviewOpen=function(e){return e.state!==n.state.closed},o.getReviewHref=function(e){return"".concat(o.upsourceUrl,"/").concat(o.projectId,"/review/").concat(e.reviewId.reviewId)}}]}}));const aY=iY.name;var sY=n(79863),cY=n.n(sY);function lY(e){return lY="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},lY(e)}function gY(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function uY(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?gY(Object(n),!0).forEach((function(t){dY(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):gY(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function dY(e,t,n){return t=function(e){var t=function(e,t){if("object"!==lY(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==lY(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===lY(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function pY(e){return function(e){if(Array.isArray(e))return IY(e)}(e)||CY(e)||AY(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function AY(e,t){if(e){if("string"==typeof e)return IY(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?IY(e,t):void 0}}function CY(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function IY(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var fY=angular.module("hub.dashboard.upsource-commits.service",[oY]);fY.factory("dshUpsourceCommitsService",["$log","$q","resourceUpsource",function(e,t,n){function r(e){return{commits:e.reduce((function(e,t){return[].concat(pY(e),pY(t.revision))}),[]).sort((function(e,t){return t.revisionDate-e.revisionDate}))}}return{migrateToMultipleProjects:function(t){var n=t.project;return n&amp;&amp;(e.log("Config has been migrated to multiprojects scheme",t),t.projects=[n],delete t.project),t},loadCommits:function(e){var o=e.projects,i=e.serviceUrl,a=e.query;return t.all(o.map((function(e){return function(e){var r=e.projectId,o=e.serviceUrl,i=e.query;return n[i?"getRevisionsListFiltered":"getCommits"](o,r,i).then((function(e){if(!e.result||!e.result.revision)return{result:{revision:[]}};var t=e.result.revision.map((function(e){return e.revisionId}));return n.getRevisionsReviewInfo(o,r,t).then((function(t){return e.result.revision.forEach((function(e,n){e.reviewInfo=(t.result.reviewInfo[n]||{}).reviewInfo})),e})).catch((function(t){if(t.data&amp;&amp;t.data.error&amp;&amp;"Method 'getRevisionReviewInfo' not found"===t.data.error.message)return e;throw t}))})).then((function(e){return e.error?t.reject({data:e.error.message}):e.result})).catch((function(e){return e.data&amp;&amp;e.data.error?t.reject({data:e.data.error.message}):t.reject(e.data||e)}))}({projectId:e.id,serviceUrl:i,query:a})}))).then(r).then((function(e){return function(e,t){var r=cY()(e.commits.map((function(e){return e.authorId})));return n.getUserInfo(t,r).then((function(t){return e.commits.forEach((function(e){e.author=t.filter((function(t){return t.userId===e.authorId}))[0]})),e}))}(e,i)}))},queryAssistDataSource:function(e){var r=e.serviceUrl,o=e.query,i=e.caret,a=e.projects;return t.all(a.map((function(e){var t=e.id;return n.revisionsQueryAssist(r,{query:o,caret:i,projectId:t})}))).then((function(e){return function(e,t){var n=function(e){return function(e){if(Array.isArray(e))return e}(e)||CY(e)||AY(e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(e),r=n[0],o=n.slice(1).reduce((function(e,n,r){var o=n.suggestions,i=e.map(JSON.stringify),a=o.filter((function(e){return!i.includes(JSON.stringify(e))})).map((function(e){return uY(uY({},e),{},{group:e.group?"".concat(t[r+1].text,": ").concat(e.group):null})}));return[].concat(pY(e),pY(a))}),r.suggestions);return uY(uY({},r),{},{suggestions:o})}(e,a)}))}}}]);const mY=fY.name;var hY=n(78579),vY=n.n(hY);function bY(e){return bY="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},bY(e)}function yY(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,EY(r.key),r)}}function wY(){return wY="undefined"!=typeof Reflect&amp;&amp;Reflect.get?Reflect.get.bind():function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&amp;&amp;null!==(e=_Y(e)););return e}(e,t);if(r){var o=Object.getOwnPropertyDescriptor(r,t);return o.get?o.get.call(arguments.length&lt;3?e:n):o.value}},wY.apply(this,arguments)}function _Y(e){return _Y=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},_Y(e)}function jY(e,t){return jY=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},jY(e,t)}function xY(e,t,n){return(t=EY(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function EY(e){var t=function(e,t){if("object"!==bY(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==bY(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===bY(t)?t:String(t)}var SY=angular.module("widget.upsource.commits",[oY,aY,nY,mY]).run(["widgetsRegistry","i18n",function(e,t){e.add({id:"widget-upsource-commits",applicationName:El,label:t("Commits",null,"Dashboard"),directive:"widget-upsource-commits"})}]).directive("widgetUpsourceCommits",["$window","$log","$q","widgetDirectiveConstructor","i18n","dshUpsourceCommitsService",function(e,t,r,o,i,a){var s=function(n){function o(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,o);for(var t=arguments.length,n=new Array(t),r=0;r&lt;t;r++)n[r]=arguments[r];return xY(e=function(e,t,n){return t=_Y(t),function(e,t){if(t&amp;&amp;("object"===bY(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],_Y(e).constructor):t.apply(e,n))}(this,o,[].concat(n)),"queryAssistSource",(function(){var t=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:{},n=t.query,r=t.caret;return e.config.query=n,a.queryAssistDataSource({serviceUrl:e.serviceUrl,query:n,caret:r,projects:e.config.projects})})),xY(e,"saveQuery",(function(t){var n=t.query;e.config.query=n,e.saveConfig()})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;jY(e,t)}(o,n),s=o,c=[{key:"activate",value:function(){this.reviewWindow=null,this.widgetVersion=2,this.config=a.migrateToMultipleProjects(this.config),wY(_Y(o.prototype),"activate",this).call(this)}},{key:"getId",value:function(){var e=this.config,t=e.projects.map((function(e){return e.id})).join(",");return"widgetUpsourceCommits:".concat(e.service.id,":").concat(t,":").concat(e.query)}},{key:"isConfigDefined",value:function(e){return void 0!==e.service&amp;&amp;(e.projects||[]).length&gt;0}},{key:"discoverService",value:function(){var e;this.isShowConfig()&amp;&amp;this.$scope.$broadcast("dashboard:upsource-select-project:reload");for(var t=arguments.length,n=new Array(t),r=0;r&lt;t;r++)n[r]=arguments[r];return(e=wY(_Y(o.prototype),"discoverService",this)).call.apply(e,[this].concat(n))}},{key:"loadData",value:function(){return a.loadCommits({projects:this.config.projects,serviceUrl:this.serviceUrl,query:this.config.query}).catch((function(e){return t.error(e),r.reject(e)}))}},{key:"prepareNewTabForReview",value:function(){this.reviewWindow=e.open("about:blank"),this.reviewWindow.document.body.innerHTML=i("&lt;h3&gt;Creating review...&lt;/h3&gt;",null,"Dashboard")}},{key:"onReviewCreated",value:function(e,t,n){e.reviewInfo=t,this.reviewWindow.location=n,delete this.reviewWindow}},{key:"closeReviewTab",value:function(){this.reviewWindow.close(),delete this.reviewWindow}},{key:"getQueryPresentation",value:function(e){return vY()(e)}},{key:"getProjectsPresentation",value:function(e){return(e||[]).map((function(e){return e.text})).join(", ")}},{key:"getQueryParams",value:function(){return this.config.query&amp;&amp;this.config.query.length&gt;0?"?query=".concat(encodeURIComponent(this.config.query)):""}},{key:"getViewCommitUrl",value:function(e){return"".concat(this.serviceUrl,"/").concat(e.projectId,"/revision/").concat(encodeURIComponent(e.revisionId))}},{key:"getViewProjectUrl",value:function(e){return"".concat(this.serviceUrl,"/").concat(e.projectId)}}],c&amp;&amp;yY(s.prototype,c),Object.defineProperty(s,"prototype",{writable:!1}),s;var s,c}(KU);return o({template:n(53779),controller:s})}]);const TY=SY.name;var MY=n(80396),LY=n.n(MY),kY=n(4366),OY=n.n(kY),PY=n(40013),NY=n.n(PY),DY=n(83627),RY=n.n(DY),UY=n(34071),zY=n.n(UY),$Y=n(41366),GY=n.n($Y);function BY(e){return BY="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},BY(e)}function FY(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,qY(r.key),r)}}function ZY(){return ZY="undefined"!=typeof Reflect&amp;&amp;Reflect.get?Reflect.get.bind():function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&amp;&amp;null!==(e=YY(e)););return e}(e,t);if(r){var o=Object.getOwnPropertyDescriptor(r,t);return o.get?o.get.call(arguments.length&lt;3?e:n):o.value}},ZY.apply(this,arguments)}function YY(e){return YY=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},YY(e)}function WY(e,t){return WY=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},WY(e,t)}function HY(e,t,n){return(t=qY(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function qY(e){var t=function(e,t){if("object"!==BY(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==BY(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===BY(t)?t:String(t)}var QY=angular.module("widget.upsource.reviews",[AC(),oY,nY]).run(["widgetsRegistry","i18n",function(e,t){e.add({id:"widget-upsource-reviews",applicationName:El,label:t("Reviews",null,"Dashboard"),directive:"widget-upsource-reviews"})}]).directive("widgetUpsourceReviews",["$q","i18n","widgetDirectiveConstructor","resourceUpsource","upsourceEnums","fixIsMyQuery",function(e,t,r,o,i,a){var s=function(n){function r(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,r);for(var t=arguments.length,n=new Array(t),i=0;i&lt;t;i++)n[i]=arguments[i];return HY(e=function(e,t,n){return t=YY(t),function(e,t){if(t&amp;&amp;("object"===BY(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],YY(e).constructor):t.apply(e,n))}(this,r,[].concat(n)),"acceptIcon",GY()),HY(e,"concernIcon",zY()),HY(e,"queryAssistSource",(function(){var t=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:{},n=t.query,r=t.caret;return e.config.query=n,o.reviewsQueryAssist(e.serviceUrl,n,r)})),HY(e,"saveQuery",(function(t){var n=t.query;e.config.query=n,e.saveConfig()})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;WY(e,t)}(r,n),s=r,c=[{key:"activate",value:function(){this.widgetVersion=2,this.roles=i.role,this.state=i.state,this.config.query=a(this.config.query),ZY(YY(r.prototype),"activate",this).call(this)}},{key:"getId",value:function(){var e=this.config,t=e.service,n=e.project,r=e.query;return"widgetUpsourceReviews:".concat(t.id,":").concat(n?n.id:"no-project",":").concat(r).replace(/\/|\./g,"_")}},{key:"isConfigDefined",value:function(e){return void 0!==e.service}},{key:"loadData",value:function(){var t=this,n=this.config.project&amp;&amp;this.config.project.id||null;return o.getReviews(this.serviceUrl,this.config.query,n).then((function(n){if(n.error)return e.reject({data:n.error.message});if(angular.isUndefined(n.result.reviews))return n;var r=RY()(n.result.reviews,(function(e,t){return e.concat(NY()(t.participants,"userId"))}),[]);return o.getUserInfo(t.serviceUrl,cY()(r)).then((function(e){return n.users=LY()(e,"userId"),n}))}))}},{key:"isOpen",value:function(e){return e.state===i.state.open}},{key:"hasParticipantAcceptedChanges",value:function(e){return e.state===i.participantState.accepted}},{key:"hasParticipantRejectedChanges",value:function(e){return e.state===i.participantState.rejected}},{key:"getParticipantInfo",value:function(e){if(e)return this.data.result.users[e.userId]}},{key:"getAuthors",value:function(e){return OY()(e.participants,(function(e){return e.role===i.role.author}))}},{key:"getAuthorFieldName",value:function(e){return this.getAuthors(e).length&gt;1?t("Authors",null,"Dashboard"):t("Author",null,"Dashboard")}},{key:"getAuthorNames",value:function(e){var t=this,n=this.getAuthors(e);return bU()(n,(function(e){return t.getParticipantInfo(e).name})).join(", ")}},{key:"getQueryPresentation",value:function(e){return vY()(e)}}],c&amp;&amp;FY(s.prototype,c),Object.defineProperty(s,"prototype",{writable:!1}),s;var s,c}(KU);return r({template:n(53475),controller:s})}]).factory("fixIsMyQuery",(function(){return function(e){return e&amp;&amp;(e=e.replace(/is:.?my/,"#my")),e}}));const VY=QY.name;var KY=n(15078),JY=n.n(KY);function XY(e){return XY="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},XY(e)}function eW(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return tW(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?tW(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function tW(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function nW(e){switch(oW(e)){case"Object":return rW(t=e)?Object.entries(t).reduce((function(e,t){var n=eW(t,2),r=n[0],o=n[1];return e[r]=nW(o),e}),{}):t;case"Array":return function(e){return e.map((function(e){return nW(e)}))}(e);default:return function(e){switch(oW(e)){case"Object":return function(e){return rW(e)?Object.entries(e).reduce((function(e,t){var n=eW(t,2),r=n[0],o=n[1];return e[r]=o,e}),{}):e}(e);case"Array":return function(e){return e.slice()}(e);case"RegExp":return function(e){var t="";return t+=e.multiline?"m":"",t+=e.global?"g":"",t+=e.ignoreCase?"i":"",new RegExp(e.source,t)}(e);case"Date":return new Date(+e);default:return e}}(e)}var t}function rW(e){return!!e&amp;&amp;"object"===XY(e)&amp;&amp;e.constructor===Object}function oW(e){if(null===e)return"Null";if(void 0===e)return"Undefined";var t=/^\[object (.*)\]$/.exec(Object.prototype.toString.call(e));return t?t[1]:void 0}function iW(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function aW(e){return aW="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},aW(e)}function sW(e){var t,n,r=function(){return t||(t=cW(dW(e)?pW(e):e)),t};return{constructor:sW,getNormalizedFields:r,exclude:function(e){e=uW(e)?e.getNormalizedFields():cW([].concat(e));var t={};return function e(t,n,r){Object.keys(t).forEach((function(o){if(n[o]&amp;&amp;"object"===aW(n[o]))return r[o]={},e(t[o],n[o],r[o]),void(0===Object.keys(r[o]).length&amp;&amp;delete r[o]);o in n&amp;&amp;t[o]===n[o]||(r[o]=t[o])}))}(r(),e,t),sW(t)},toString:function(e){return n||(n=function(e){var t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]&amp;&amp;arguments[1],n={},r=lW(e,t?function(e){n[e]=(n[e]||0)+1}:null);return t?Object.keys(n).sort((function(e,t){var r=e.length,o=t.length;if(r===o){var i=n[e],a=n[t];return i&gt;a?-1:i===a?0:1}return r&gt;o?-1:1})).reduce((function(e,t){var n=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return iW(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?iW(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(e,2),r=n[0],o=n[1],i="@".concat(o),a="[,()]|\\s+",s=r.replace(new RegExp("(^|".concat(a,")").concat((c=t,c.replace(/[.*+?^${}()|[\]\\]/g,"\\$&amp;")),"(").concat(a,"|$)"),"g"),"$1".concat(i,"$2"));var c;return(s="".concat(s,";").concat(i,":").concat(t)).length&lt;r.length?[s,o+1]:[r,o]}),[r,1])[0]:r}(r(),e)),n}}}function cW(e){switch(!0){case uW(e):return pW(e.getNormalizedFields());case Array.isArray(e):return e.map((function(e){return cW(e)})).reduce(gW,{});case dW(e):return Object.keys(e).reduce((function(t,n){return t[n]=cW(e[n]),t}),e);case"string"==typeof e&amp;&amp;""!==e:if(/[(,)]/.test(e))return function(e){var t=[{}];if(e.replace(/([^,()]*)([,()])?/g,(function(n,r,o){var i=t[0];r=r.trim();var a=null;switch(!0){case"("===o:a={},t.unshift(a);break;case")"===o:if(t.shift(),0===t.length)throw Error('Unmatched close brace in string "'.concat(e,'"'))}return r&amp;&amp;(i[r]=a),""})),1!==t.length)throw Error('Unmatched open brace in string "'.concat(e,'"'));return t[0]}(e);var t={};return t[e]=null,t;case"number"==typeof e:var n={};return n[e]=null,n;default:return null}}function lW(e,t){if(!e)return"";var n=Object.keys(e).sort().map((function(n){var r=lW(e[n],t),o=""===r?n:"".concat(n,"(").concat(r,")");return t&amp;&amp;t(o),o})).join(",");return t&amp;&amp;t(n),n}function gW(e,t){return e&amp;&amp;t?(Object.keys(t).forEach((function(n){e[n]=gW(e[n],t[n])})),e):e||t}function uW(e){return!(!e||e.constructor!==sW)}function dW(e){return null!==e&amp;&amp;"object"===aW(e)}function pW(e){return nW(e)}n(52664),n(61255),n(94344),n(96383),angular.module("youtrack.components.resources").factory("gapReportRest",(function(){const e={};e.axis=sW(["$type",{field:["$type","id","presentation","aggregateable"]}]),e.aggregationPolicy=sW(["$type",{field:["$type","id","presentation"]}]),e.valuePresentation=sW(["$type","value","presentation"]),e.field=sW(["$type","id","name","localizedName","presentation",{fieldType:["$type","id"]}]),e.link=sW(["$type","id","name","localizedName"]),e.burndownPoint=sW(["time","value"]),e.range=sW(["$type","from","to",{range:["id"]}]),e.column=sW(["queryUrl","issuesQuery",{size:e.valuePresentation},"name","index","colorIndex","avatarUrl",{user:["ringId","canReadProfile","id"]}]),e.timeUnit=sW(["id","$type"]),e.periodField=sW(["id","value","presentation"]),e.periodFieldWithoutPresentation=sW(["id","value"]),e.cumulativeFlowSample=sW(["date",{values:e.valuePresentation}]),e.defaultData=sW(["id","$type","valueType","remainingEffortPresentation",{columns:e.column},{xcolumns:e.column},{ycolumns:e.column},{groups:["timestamp","max","avg","min","mmx","mvg","positive","negative"]},{counts:e.valuePresentation},"issuesQueries","queryUrls",{xfilter:e.axis},{yfilter:e.axis},{ideal:e.burndownPoint},{remainingEstimation:e.burndownPoint},{cumulativeSpentTime:e.burndownPoint},{total:e.valuePresentation},"tooBig","names","colors",{sample:e.cumulativeFlowSample},"xlabel","ylabel",{range:["from","to"]},{yaxisType:["id","name","daysAWeek","minutesADay"]},"sprintFinish"]),e.status=sW(["lastCalculated","progress","calculationInProgress",{error:["id"]},"errorMessage","wikifiedErrorMessage","isOutdated"]),e.project=sW(["id","name","shortName","ringId"]),e.shortReport=sW(["id","$type","name","own","editable",{owner:["$type","id","ringId","login","canReadProfile","name","isLocked"]},"pin(pinned)"]),e.report=sW(["id","$type","name","own","query","editable","effectiveQuery","effectiveQueryUrl","pin(pinned)","wikifiedError","invalidationInterval","windowSize","sprint(id,name)",{authors:["id","ringId","login","canReadProfile","fullName"]},{workTypes:["id","name"]},{projects:e.project},{owner:["id","login","canReadProfile"]},{status:e.status},{aggregationPolicy:e.aggregationPolicy},{attachedFields:e.axis},"bubbleWorkItems"]),e.ganttReportSettings=sW(["from",{estimationField:e.field},{spentTimeField:e.field},{estimationTimeUnit:e.timeUnit},{spentTimeTimeUnit:e.timeUnit},{dependencyLink:e.link},{aggregationLink:e.link},"aggregationLinkOutward","dependencyLinkOutward","maxIssueTreeDepth",{startDateField:e.field},{capacityConfig:["maxWorkInProgress",{assigneeField:["id","name","localizedName"]},{sortProperty:["desc",{field:["id"]}]}]}]),e.timeReportTypeDurations=sW(["workType",{duration:"value"}]),e.timeReportLine=sW(["id","name","description","issueId","issueSummary","userAvatarUrl","userVisibleName","userId","comment","date","fieldValues",{duration:e.periodField},{totalDuration:e.periodField},{estimation:e.periodField},"groupName",{typeDurations:e.timeReportTypeDurations}]),e.timeReportWithData=sW([e.report,{range:e.range},"perUser","nullWorkType","grouping(id,field(id,presentation))",{data:sW(["hasIssueView",{typeDurations:e.timeReportTypeDurations},{estimation:e.periodField},{duration:e.periodField},{totalDuration:e.periodField},"fieldNames",{groups:sW(["id","name","meta(linkedIssue(idReadable,summary),linkedUser(ringId,canReadProfile,visibleName,postfix))","issueId","issueSummary",{typeDurations:e.timeReportTypeDurations},{estimation:e.periodField},{duration:e.periodField},{totalDuration:e.periodField},{lines:e.timeReportLine}])}])}]),e.timeSheetReportLineData=sW(["entityId,presentation,avatarUrl",{spentTime:e.valuePresentation},{estimation:e.valuePresentation},{cells:e.valuePresentation},{totalSpentTime:e.valuePresentation}]),e.timeSheetReportWithData=sW([e.report,{range:e.range},"scale(id)","grouping(id,field(id,presentation))",{data:sW(["tooBig","hasIssueView",{headers:sW(["start,end,holiday",{spentTime:e.valuePresentation}])},{groups:sW(["name","meta(linkedIssue(idReadable,summary),linkedUser(ringId,canReadProfile,visibleName))","entityId",{lineSpentTime:e.valuePresentation},{spentTime:e.valuePresentation},{issueLines:e.timeSheetReportLineData},{userLines:e.timeSheetReportLineData}])},{spentTime:e.valuePresentation}])}]),e.estimationReportLine=sW(["issueId",{estimation:e.valuePresentation},"fieldValues",{issue:sW(["id","idReadable","url","summary","numberInProject",{project:sW(["shortName"])}])}]),e.estimationReportWithData=sW([e.report,{grouping:sW(["id","presentation"]),estimationField:sW(["id","name","localizedName"]),data:sW(["valueType","fieldNames",{groups:sW(["id","name","meta(linkedUser(ringId,canReadProfile,visibleName))",{estimation:e.valuePresentation},{issueItems:e.estimationReportLine}])},{itemsEstimationSum:e.valuePresentation},{groupsEstimationSum:e.valuePresentation}])}]),e.reportWithData=sW([e.report,"presentation","xsortOrder","xgrouping",{xaxis:e.axis},"ysortOrder","ygrouping","from",{yaxis:e.axis},{data:e.defaultData},{customField:e.field},{remainingEstimationPrototype:e.field},{range:e.range},{sourceValues:"id,name,localizedName",targetValues:"id,name,localizedName"},{values:["id","name",{color:"id",element:"id,name,localizedName,$type"}]}]),e.ganttReportData=sW(["id","$type","remainingEffortPresentation","reportStartDate","reportEndDate","reportActualDurationMinutes","reportDurationMinutes","reportActualEndDate","reportStartDate",{tasks:["id",{issue:[{project:["name","shortName"]},"numberInProject","summary","resolved"]},{assignee:["id","login","fullName","canReadProfile"]},"startDate","start","resolutionEnd","estimationEnd","spentTimeEnd","idealStart","idealEstimationEnd","estimationMinutes","spentTimeMinutes","remainingEffortMinutes",{aggregations:["linkDirection",{source:["id","start","estimationEnd","resolutionEnd","spentTimeEnd","idealStart","idealEstimationEnd"]},{target:["id","start","estimationEnd","resolutionEnd","spentTimeEnd","idealStart","idealEstimationEnd"]},{issueLinkType:["name","sourceToTarget","targetToSource"]}]},{dependencies:["linkDirection",{source:["id","start","estimationEnd","resolutionEnd","spentTimeEnd","idealStart","idealEstimationEnd"]},{target:["id","start","estimationEnd","resolutionEnd","spentTimeEnd","idealStart","idealEstimationEnd"]},{issueLinkType:["name","sourceToTarget","targetToSource"]}]}]}]),e.flatDistributionReport=sW([e.report,{xaxis:e.axis},{data:e.defaultData}]),e.issueDistributionReport=sW([e.report,"xsortOrder","xgrouping",{xaxis:e.axis},"ysortOrder","ygrouping",{yaxis:e.axis},{data:e.defaultData}]),e.ganttReport=sW([e.report,e.ganttReportSettings,{data:e.ganttReportData}]),e.series=sW(["id","name","color(id,background,foreground)","barId"]),e.customDistributionQuerySettings=sW(["id","query",{series:e.series,axis:e.axis}]),e.customDistributionGroupSettings=sW(["id","presentation",{project:["id","name"],queries:e.customDistributionQuerySettings}]),e.customDistributionGroup=sW(["id","presentation","values",{groups:e.customDistributionGroupSettings}]),e.customDistributionReportData=sW(["id","series",{groups:e.customDistributionGroup}]),e.customDistributionReport=sW([e.report,{series:e.series,range:e.range,defaultGroup:e.customDistributionGroupSettings,projectGroups:e.customDistributionGroupSettings,data:e.customDistributionReportData}]),e.filterFields=sW(["id","$type","presentation","name","aggregateable","sortable","instant",{customField:["id","name","localizedName","ordinal",{fieldType:["id","isBundleType","valueType","presentation"]}],projects:["id","name"]}]);const t={flatDistributionReportWithData:{method:"GET",params:{fields:e.flatDistributionReport.toString()}},ganttReportWithData:{method:"GET",params:{fields:e.ganttReport.toString()}},timeReportWithData:{method:"GET",params:{fields:e.timeReportWithData.toString()}},timeSheetReportWithData:{method:"GET",params:{fields:e.timeSheetReportWithData.toString()}},estimationReportWithData:{method:"GET",params:{fields:e.estimationReportWithData.toString()}},customDistributionReportWithData:{method:"GET",params:{fields:e.customDistributionReport.toString()}},reportWithData:{method:"GET",params:{fields:e.reportWithData.toString()}}},n={get:{method:"GET",isArray:!0,params:{fields:e.filterFields.toString(),fieldTypes:"@fieldTypes",fld:"@fld",usage:"@usage",getUnusedVisibleFields:"@getUnusedVisibleFields"}}};return r=&gt;({report:r("api/reports",t,{fields:e.report.toString()}),reportStatus:r("api/reports/:reportId/status",null,{fields:e.status.toString()}),reportPin:r("api/reports/:reportId/pin",null,{fields:"pinned"}),availableProjects:r("api/reports/:reportId/accessibleProjects",null,{fields:e.project.toString()}),gapFilterFields:r("api/filterFields",n),REPORT_LIST_FIELDS:e.shortReport.toString(),typedResource(e){return"gantt"===e?this.report.ganttReportWithData:"time"===e?this.report.timeReportWithData:"timeSheet"===e?this.report.timeSheetReportWithData:"estimation"===e?this.report.estimationReportWithData:"customDistribution"===e?this.report.customDistributionReportWithData:this.report.reportWithData}})}));const AW="youtrack/report/updated";function CW(e){var t=IW(e);return new Date(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),12,0,0,0)}function IW(e){return new Date("number"==typeof e?e:parseInt(e))}function fW(e){return"[object Date]"===Object.prototype.toString.call(e)}angular.module("youtrack.components.reportBase").factory("gapReportBase",["$q","i18n","reportWindowResize","$timeout",function(e,t,n,r){const o={NETWORK_ERROR:t("Network error"),INCORRECT_QUERY:t("Incorrect query"),INTERNAL:t("Something went wrong"),TOO_LONG:t("The report contains too much data to be calculated. Enter a search query to narrow the scope of your report."),CONTACT_SYSTEM_ADMIN:t("Try contacting your system administrator to sort things out."),UNABLE_TO_SAVE_SETTINGS:t("Unable to save settings"),CRON_SETTINGS_LOADING_ERROR:t("Cannot loading cron settings"),CRON_SETTINGS_UPDATE_ERROR:t("Cannot update cron settings"),SSL_KEYS_LOADING_ERROR:t("Cannot load SSL keys"),SSL_KEYS_UPDATE_ERROR:t("Cannot update SSL key"),MAINTENANCE_OR_OVERLOAD:t("The server is overloaded or down for maintenance. Please try again later."),CONFLICT:t("Your changes conflict with updates that were just applied by another user. Please try again."),CALCULATION_ERROR:t("Error when calculating the report"),REPORT_NOT_FOUND:t("Report not found. Probably it was removed"),REPORT_CANNOT_LOAD_DATA:t("Cannot load report"),REPORT_ACCESS_DENIED:t("You don't have access to the report"),REPORT_NO_CREATE_PERMISSIONS:t("You don't have sufficient permissions to create a report")};function i(e,t){this.title=o[e]||e,this.description=t}return(a,s,c)=&gt;{function l(e){let t;e.status&amp;&amp;e.status.error&amp;&amp;e.status.error.id&amp;&amp;(t=e.wikifiedError?o[e.status.error.id]:e.status.errorMessage||o[e.status.error.id]);let n=!1;if(!t)switch(e.status){case 403:t=o.REPORT_ACCESS_DENIED,n=!0;break;case 404:t=o.REPORT_NOT_FOUND,n=!0;break;default:t=o.REPORT_CANNOT_LOAD_DATA}(a.report||{}).responseError=new i(t),(a.report||{}).noAccess=n}function g(e){return e.status.calculationInProgress=!0,s.reportStatus.save({reportId:e.id},e.status).$promise.then((()=&gt;(e.status.progress=0,a.updateReport(e)))).catch(l)}a.type=c,a.isCreate=!1,a.report={},a.isEdit=a.isCreate,a.validation={},a.setSpin=e=&gt;{a.spin=e},a.$on(AW,((e,t)=&gt;{a.prepareReportRender(t)})),a.extractState=e=&gt;{const t=e.status;return t?{isCalculating:t.calculationInProgress,isReady:!t.calculationInProgress&amp;&amp;!t.error,hasError:t.error,isOutdated:t.isOutdated}:{isCalculating:!1,isReady:!1,hasError:!1,isOutdated:!1}},a.$watch("report",(e=&gt;{e&amp;&amp;e.status&amp;&amp;(e.status.error?l(e):a.isCreate||(a.setSpin(a.state.isCalculating),a.isReady=a.state.isReady,a.report.type=a.type,a.$emit(AW,a.report)))})),a.requestReport=()=&gt;s.typedResource(a.type)(a.id).$promise.then((e=&gt;a.updateReport(e))).catch(l),a.loadReport=(t,n)=&gt;a.$root.report?e.when((a.report=a.$root.report,delete a.$root.report,a.report)):(a.state=a.extractState(a.report),a.isReady=a.state.isReady||a.isCreate,t?g(a.report):n||!a.state.isReady?a.requestReport():e.when(a.report)),a.updateReport=t=&gt;{const n=a.extractState(t),s=n.isReady||t.id===a.isCreate;if(a.report||(a.isReady=s),n.isCalculating)return a.progress=t.status.progress,a.state=n,e((e=&gt;r((()=&gt;{e(a.requestReport())}),2e3)));if(n.isOutdated||null===t.data)return g(t);if(n.isReady)return a.progress=-1,a.report=t,a.state=n,e.resolve(t);a.progress=-1;const c=t&amp;&amp;t.status&amp;&amp;t.status.error?{}:{responseError:new i(o.NETWORK_ERROR)};return a.report=angular.extend({},t||{},c),a.state=n,e.resolve(t)},a.prepareReportRender=angular.noop,a._isRecalculating=!1,a.isCalculating=()=&gt;a.extractState(a.report||{}).isCalculating||a._isRecalculating,a.recalculate=()=&gt;(a.setSpin(!0),a._isRecalculating=!0,a.loadReport(!0).finally((e=&gt;(a._isRecalculating=!1,e)))),a.getRecalculateTitle=()=&gt;a.isCalculating()?t("Report is currently calculating"):t("Re-calculate"),a.getDefaultRange=()=&gt;({$type:"FixedTimeRange"}),a.editable=()=&gt;a.report&amp;&amp;(a.report.own||a.report.editable),a.onWindowResize=e=&gt;{n.register(a,e)}}}]);var mW=function(e,t){return e?fW(e)?e:(t||CW)(e):null},hW=function(e){var t=IW(e);return new Date(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),0,0,0,0)};angular.module("youtrack.report.utils").factory("initViews",["i18n",function(e){return t=&gt;{t.views=[{id:"stacked",value:!0,title:e("Bidirectional"),icon:"rate"},{id:"grouped",value:!1,title:e("Grouped"),icon:"data"}]}}]).factory("getOptimalScale",(function(){return e=&gt;{const t=e.report.data,n=(t.range.to-t.range.from)/864e5;let r=0;return n&gt;3500?r=3:n&gt;365?r=2:n&gt;40&amp;&amp;(r=1),e.scales[r]}})).filter("reportsWidgetDate",(function(){return e=&gt;d3.time.format("%d %b %Y")(e)})).filter("reportsWidgetNoYearDate",(function(){return e=&gt;d3.time.format("%d %b")(e)})).filter("reportsWidgetMonthDate",(function(){return e=&gt;d3.time.format("%b")(e)})).service("initScales",["i18n","reportsWidgetDateFilter","reportsWidgetNoYearDateFilter","reportsWidgetMonthDateFilter","dateFilter",function(e,t,n,r,o){const i={dateTime:"%a %b %e %X %Y",date:"%d %b %Y",time:"%H:%M:%S",periods:e("AM|PM").split("|"),days:e("Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday").split("|"),shortDays:e("Sun|Mon|Tue|Wed|Thu|Fri|Sat").split("|"),months:e("January|February|March|April|May|June|July|August|September|October|November|December").split("|"),shortMonths:e("Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec").split("|")},a=d3.locale(i).timeFormat;return i=&gt;{i.scales=[{id:"day",unit:e("Day"),step:d3.time.day.utc,dateFormat(e){const n=mW(e.getTime(),hW);return t(n)}},{id:"week",unit:e("Week"),step:d3.time.monday.utc,dateFormat(e){const t=mW(e.getTime(),hW),r=new Date(t.valueOf());return r.setDate(t.getDate()+6),`${o(t,"yyyy")}(${n(t)} - ${n(r)})`}},{id:"month",unit:e("Month"),step:d3.time.month.utc,dateFormat(e){const t=mW(e.getTime(),hW);return r(t)}},{id:"year",unit:e("Year"),step:d3.time.year.utc,dateFormat(e){const t=mW(e.getTime(),hW);return a("%Y")(t)}}]}}]).factory("timeTrackingPeriods",["i18n",function(e){const t={w:e("w"),d:e("d"),h:e("h"),m:e("m")};return e=&gt;{const n=60*e.hoursADay,r=e.daysAWeek*n,o={fromMinutes:e=&gt;({weeks:Math.floor(e/r),days:Math.floor(e%r/n),hours:Math.floor(e%n/60),minutes:Math.floor(e%60)}),floorInMinutes:e=&gt;e.weeks?e.weeks*r:e.days?e.days*n:e.hours?60*e.hours:e.minutes,toString:n=&gt;function(e){return Object.keys(t).map(((n,r)=&gt;{const o=e.asArray[r];return o&gt;0?o+t[n]:""})).join("")||`0${t.m}`}(function(e,t){const n=function(e,t){const n=Math.floor(e/t.minutesADay),r=e%t.minutesADay;return[Math.floor(n/t.daysAWeek),n%t.daysAWeek,Math.floor(r/60),Math.round(r%60*100)/100]}(e,t);return{weeks:n[0],days:n[1],hours:n[2],minutes:n[3],asArray:n}}(n,e)),linearScale:(e,t)=&gt;{let n,r;function i(e,t,n,r){const o=n(e[0],e[1]),i=r(t[0],t[1]);return e=&gt;i(o(e))}function a(e,t){return t=t-(e=+e)?1/(t-e):0,n=&gt;(n-e)*t}function s(){return n=i(e,t,a,d3.interpolateNumber),r=i(t,e,a,d3.interpolateNumber),c}function c(e){return n(e)}return c.invert=e=&gt;r(e),c.domain=function(t){return arguments.length?(e=t.map(Number),s()):e},c.range=function(e){return arguments.length?(t=e,s()):t},c.ticks=function(t){t=t||10;const n=e[0],r=e[1],i=n&lt;r?[n,r]:[r,n],a=o.floorInMinutes(o.fromMinutes(Math.floor((i[1]-i[0])/t)));return i[0]=Math.ceil(i[0]/a)*a,i[1]=Math.floor(i[1]/a)*a+.5*a,d3.range(i[0],i[1],a)},c.copy=function(){return o.linearScale(e,t)},s()}};return o}}]).directive("ytReportTimeProgress",(function(){return{restrict:"E",scope:{progress:"=",estimation:"=",width:"="},template:'&lt;div class="yt-report-time-progress__wrapper"&gt;  &lt;div class="yt-report-time-progress"       ng-class="{overdue: overdue}"       ng-style="{width: totalWidth}"&gt;    &lt;div class="yt-report-time-progress__bar"         ng-style="{width: greenWidth}"&gt;    &lt;/div&gt;  &lt;/div&gt;&lt;/div&gt;',controller:["$scope",function(e){this.$onInit=()=&gt;{const t=e.width||32,n=e.progress.value||0,r=e.estimation.value||0,o=Math.max(n,r),i=Math.min(n,r);e.totalWidth=`${t}px`,e.greenWidth=`${o&amp;&amp;o&gt;0?Math.ceil(t*(i/o)):0}px`,e.overdue=n&gt;r,e.overduePresentation={value:n-r}}}]}})).directive("ytPeriodValue",["i18n",function(e){return{restrict:"E",scope:{valuePresentation:"=",showZero:"="},template:'&lt;span&gt;  &lt;span ng-if="isNonZero() || showZero"&gt;    &lt;span class="yt-period-value_hours"&gt;{{getHoursPresentation()}}&lt;/span&gt;&lt;span class="yt-period-value_minutes"&gt;{{getMinutesPresentation()}}&lt;/span&gt;  &lt;/span&gt;  &lt;span ng-if="!(isNonZero() || showZero)" class="yt-period-value_minutes"&gt;&amp;mdash;&lt;/span&gt;&lt;/span&gt;',link:function(t){function n(){const e=t.valuePresentation||{};return e.value||e.minutes||0}t.getMinutesPresentation=()=&gt;{const t=Math.floor(n()%60);return`${Math.floor(t/10)}${t%10||"0"}${e("m")}`},t.getHoursPresentation=()=&gt;{const t=Math.floor(n()/60);return t?t+e("h"):""},t.isNonZero=()=&gt;{const e=n();return e&amp;&amp;0!==e}}}}]),n(87175),n(503),n(52163),n(72524),nv.models.flexPie=()=&gt;{let e={top:0,right:0,bottom:0,left:0},t=500,n=550,r=function(e){return e.x},o=function(e){return e.y},i=function(e){return e.description},a=Math.floor(1e4*Math.random()),s=nv.utils.defaultColor(),c=d3.format(",.2f"),l=d3.format("%"),g=!0,u=!0,d=!1,p=.1,A="key",C=!1,I=!1,f=!1,m=!1,h=.5,v=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout"),b=null,y=function(e){const t=e.filter((e=&gt;!e.disabled)),n=t.reduce(((e,t)=&gt;e+o(t)),0);return 0===n?0:-2*Math.PI*o(t[0])/n};function w(i){return i.each((function(i){d3.select(this).classed(nv.SVG_NODE_CLASSNAME,!0);const c=t-e.left-e.right,w=n-e.top-e.bottom-(g?25:0),_=Math.min(c,w)/2,j=g?_-_/5:_,x=d3.select(this),E=d3.svg.arc().outerRadius(j);let S=d3.svg.arc().innerRadius(0);u&amp;&amp;(S=E),d&amp;&amp;(S=d3.svg.arc().outerRadius(E.outerRadius()));const T={getSector:function(e){const t=3*(e.startAngle+e.endAngle)/Math.PI;return t&lt;0?12-Math.abs(t)%12:t%12},getPercent:function(e){return(e.endAngle-e.startAngle)/(2*Math.PI)},angle:function(e){const t=90*(e.startAngle+e.endAngle)/Math.PI-90;return t&gt;90?t-180:t},arcTween:function(e){e.endAngle=isNaN(e.endAngle)?0:e.endAngle,e.startAngle=isNaN(e.startAngle)?0:e.startAngle,C||(e.innerRadius=0);const t=d3.interpolate(this._current,e);return this._current=t(0),function(e){return E(t(e))}},tweenPie:function(e){e.innerRadius=0;const t=d3.interpolate({startAngle:0,endAngle:0},e);return function(e){return E(t(e))}},findTextAnchor:function(e){return T.getSector(e)&lt;6?"start":"end"},findTooltipGravity:function(e){const t=T.getSector(e);return I?t&lt;6?"w":"e":t&gt;2&amp;&amp;t&lt;4?"w":t&gt;=4&amp;&amp;t&lt;=8?"n":t&gt;8&amp;&amp;t&lt;10?"e":"s"},calculateTooltipPosition:function(e){const t=(e.startAngle+e.endAngle)/2;return[c/2+j*Math.sin(t)/2,w/2-j*Math.cos(t)/2]}};g&amp;&amp;(T.labelLocationCounter=new function(){let e={},t=!1;const r=22;let o=0;const i=function(e,t){return Math.abs(e[1]-t[1])&lt;r},a=function(e){return Math.floor(e[1]/r/2)},s=function(e){e[1]=e[1]&lt;0?Math.max(e[1],(r-n)/2):Math.min(e[1],(n-r)/2)};this.resetToInitialState=function(){e={},t=!1,o=0},this.setLocation=function(n,c){if(I){n.outerRadius=j+10,n.innerRadius=j+15;let e=(n.startAngle+n.endAngle)/2*(180/Math.PI);(n.startAngle+n.endAngle)/2&lt;Math.PI?e-=90:e+=90,c.transition().attr("transform","translate("+S.centroid(n)+") rotate("+e+")")}else if(n.outerRadius=_+10,n.innerRadius=_+15,n.value)if(t=t||n.endAngle-n.startAngle&lt;p,t)c.attr("opacity",0);else{const l=S.centroid(n),g=T.getSector(n);e[o]&amp;&amp;g&gt;6&amp;&amp;g&lt;6.3&amp;&amp;e[o].sector&lt;6&amp;&amp;e[o].sector&gt;5.7&amp;&amp;(l[1]=Math.max(e[o].center[1],l[1])),o=a(l),e[o]&amp;&amp;i(l,e[o].center)&amp;&amp;g&gt;6==e[o].sector&gt;6&amp;&amp;(g&gt;6&amp;&amp;e[o].sector&lt;g?l[1]=e[o].center[1]-r:l[1]=e[o].center[1]+r,s(l),o=a(l),o in e&amp;&amp;i(l,e[o].center)&amp;&amp;(c.attr("opacity",0),t=!0)),t||(s(l),c.transition().attr("transform","translate("+l+")"),c.attr("opacity",1),e[o]={sector:g,center:l})}}});const M=x.selectAll(".nv-wrap.nv-pie").data(i),L=M.enter().append("g").attr("class","nvd3 nv-wrap nv-pie nv-chart-"+a).append("g"),k=M.select("g");L.append("g").attr("class","nv-pie"),L.append("g").attr("class","nv-pieLabels"),M.attr("transform","translate("+e.left+","+e.top+")"),k.select(".nv-pie").attr("transform","translate("+c/2+","+w/2+")"),k.select(".nv-pieLabels").attr("transform","translate("+c/2+","+w/2+")"),x.on("click",(function(e,t){v.chartClick({data:e,index:t,pos:d3.event,id:a})})),f&amp;&amp;E.startAngle(f),m&amp;&amp;E.endAngle(m),C&amp;&amp;E.innerRadius(_*h);const O=d3.layout.pie().sort(null).startAngle(y).endAngle((function(){return("function"==typeof y?y.apply(this,arguments):y)+2*Math.PI})).value((function(e){return e.disabled?0:o(e)})),P=M.select(".nv-pie").selectAll(".nv-slice").data(O),N=M.select(".nv-pieLabels").selectAll(".nv-label").data(O);P.exit().remove(),N.exit().remove();let D=P.enter();b&amp;&amp;(D=D.append("a").attr("xlink:href",(function(e,t){return b(e,t)})));const R=D.append("g").attr("class","nv-slice").on("mouseover",(function(e,t){d3.select(this).classed("hover",!0),v.elementMouseover({label:r(e.data),value:o(e.data),point:e.data,pointIndex:t,pos:T.calculateTooltipPosition(e),gravity:T.findTooltipGravity(e),id:a})})).on("mouseout",(function(e,t){d3.select(this).classed("hover",!1),v.elementMouseout({label:r(e.data),value:o(e.data),point:e.data,index:t,id:a})})).on("click",(function(e,t){v.elementClick({label:r(e.data),value:o(e.data),point:e.data,index:t,pos:d3.event,id:a}),d3.event.stopPropagation()})).on("dblclick",(function(e,t){v.elementDblClick({label:r(e.data),value:o(e.data),point:e.data,index:t,pos:d3.event,id:a}),d3.event.stopPropagation()}));P.attr("fill",(function(e,t){return s(e,t)})).attr("stroke",(function(e,t){return s(e,t)})),R.append("path").each((function(e){this._current=e})),P.select("path").transition().attr("d",E).attrTween("d",T.arcTween),g&amp;&amp;(N.enter().append("g").classed("nv-label",!0).each((function(e,t){const n=d3.select(this);n.attr("transform",(function(e){if(I){e.outerRadius=j+8,e.innerRadius=j+16;let t=(e.startAngle+e.endAngle)/2*(180/Math.PI);return(e.startAngle+e.endAngle)/2&lt;Math.PI?t-=90:t+=90,"translate("+S.centroid(e)+") rotate("+t+")"}return e.outerRadius=_+8,e.innerRadius=_+16,"translate("+S.centroid(e)+")"})),n.append("rect").style("stroke","#fff").style("fill","#fff").attr("rx",3).attr("ry",3),n.append("text").style("text-anchor",T.findTextAnchor(e))})),N.transition().each((function(e,t){0==t&amp;&amp;T.labelLocationCounter.resetToInitialState(),T.labelLocationCounter.setLocation(e,d3.select(this))})),N.select(".nv-label text").style("text-anchor",(function(e,t){return T.findTextAnchor(e)})).text((function(e,t){const n=T.getPercent(e),i={key:r(e.data),value:o(e.data),percent:l(n)};return e.value?i[A]:""})))})),w}return w.dispatch=v,w.options=nv.utils.optionsFunc.bind(w),w.margin=function(t){return arguments.length?(e.top=void 0!==t.top?t.top:e.top,e.right=void 0!==t.right?t.right:e.right,e.bottom=void 0!==t.bottom?t.bottom:e.bottom,e.left=void 0!==t.left?t.left:e.left,w):e},w.width=function(e){return arguments.length?(t=e,w):t},w.height=function(e){return arguments.length?(n=e,w):n},w.values=function(e){return nv.log("pie.values() is no longer supported."),w},w.x=function(e){return arguments.length?(r=e,w):r},w.y=function(e){return arguments.length?(o=d3.functor(e),w):o},w.description=function(e){return arguments.length?(i=e,w):i},w.showLabels=function(e){return arguments.length?(g=e,w):g},w.labelSunbeamLayout=function(e){return arguments.length?(I=e,w):I},w.donutLabelsOutside=function(e){return arguments.length?(d=e,w):d},w.pieLabelsOutside=function(e){return arguments.length?(u=e,w):u},w.labelType=function(e){return arguments.length?(A=e,A=A||"key",w):A},w.donut=function(e){return arguments.length?(C=e,w):C},w.donutRatio=function(e){return arguments.length?(h=e,w):h},w.startAngle=function(e){return arguments.length?(f=e,w):f},w.endAngle=function(e){return arguments.length?(m=e,w):m},w.zeroAngle=function(e){return arguments.length?(y=e,w):y},w.id=function(e){return arguments.length?(a=e,w):a},w.color=function(e){return arguments.length?(s=nv.utils.getColor(e),w):s},w.valueFormat=function(e){return arguments.length?(c=e,w):c},w.labelFormat=function(e){return arguments.length?(l=e,w):l},w.labelThreshold=function(e){return arguments.length?(p=e,w):p},w.getUrl=function(e){return arguments.length?(b=e,w):b},w},nv.models.flexPieChart=function(){const e=nv.models.flexPie(),t=nv.models.legend();let n={top:30,right:20,bottom:20,left:20},r=null,o=null,i=!0,a=nv.utils.defaultColor(),s=!0,c=function(e,t,n,r){return"&lt;h3&gt;"+e+"&lt;/h3&gt;&lt;p&gt;"+t+"&lt;/p&gt;"},l={},g=null,u="No Data Available.",d=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState");function p(a){return a.each((function(a){d3.select(this).classed(nv.SVG_NODE_CLASSNAME,!0);const A=d3.select(this),C=this;let I=(r||parseInt(A.style("width"))||960)-n.left-n.right,f=(o||parseInt(A.style("height"))||400)-n.top-n.bottom;var m;if(p.update=function(){A.transition().call(p)},p.container=this,l.disabled=a.map((function(e){return!!e.disabled})),!g)for(m in g={},l)l[m]instanceof Array?g[m]=l[m].slice(0):g[m]=l[m];if(!a||!a.length){const e=A.selectAll(".nv-noData").data([u]);return e.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),e.attr("x",n.left+I/2).attr("y",n.top+f/2).text((function(e){return e})),p}A.selectAll(".nv-noData").remove();const h=A.selectAll("g.nv-wrap.nv-pieChart").data([a]),v=h.enter().append("g").attr("class","nvd3 nv-wrap nv-pieChart").append("g"),b=h.select("g");v.append("g").attr("class","nv-pieWrap"),v.append("g").attr("class","nv-legendWrap"),i&amp;&amp;(t.width(I).key(e.x()),h.select(".nv-legendWrap").datum(a).call(t),n.top!=t.height()&amp;&amp;(n.top=t.height(),f=(o||parseInt(A.style("height"))||400)-n.top-n.bottom),h.select(".nv-legendWrap").attr("transform","translate(0,"+-n.top+")")),h.attr("transform","translate("+n.left+","+n.top+")"),e.width(I).height(f);const y=b.select(".nv-pieWrap").datum([a]);d3.transition(y).call(e),t.dispatch.on("stateChange",(function(e){l=e,d.stateChange(l),p.update()})),e.dispatch.on("elementMouseout.tooltip",(function(e){d.tooltipHide(e)})),d.on("tooltipShow",(function(t){s&amp;&amp;function(t,r){const o=e.description()(t.point)||e.x()(t.point),i=t.pos[0]+n.left+(r&amp;&amp;r.offsetLeft||0),a=t.pos[1]+n.top+(r&amp;&amp;r.offsetTop||0),s=e.valueFormat()(e.y()(t.point)),l=c(o,s,t,p);nv.tooltip.show([i,a],l,t.gravity,0,r)}(t,C.parentNode)})),d.on("changeState",(function(e){void 0!==e.disabled&amp;&amp;(a.forEach((function(t,n){t.disabled=e.disabled[n]})),l.disabled=e.disabled),p.update()}))})),p}return e.dispatch.on("elementMouseover.tooltip",(function(e){d.tooltipShow(e)})),d.on("tooltipHide",(function(){s&amp;&amp;nv.tooltip.cleanup()})),p.legend=t,p.dispatch=d,p.pie=e,d3.rebind(p,e,"valueFormat","labelFormat","values","x","y","description","id","showLabels","donutLabelsOutside","pieLabelsOutside","labelType","donut","donutRatio","zeroAngle","labelThreshold","getUrl"),p.options=nv.utils.optionsFunc.bind(p),p.margin=function(e){return arguments.length?(n.top=void 0!==e.top?e.top:n.top,n.right=void 0!==e.right?e.right:n.right,n.bottom=void 0!==e.bottom?e.bottom:n.bottom,n.left=void 0!==e.left?e.left:n.left,p):n},p.width=function(e){return arguments.length?(r=e,p):r},p.height=function(e){return arguments.length?(o=e,p):o},p.color=function(n){return arguments.length?(a=nv.utils.getColor(n),t.color(a),e.color(a),p):a},p.showLegend=function(e){return arguments.length?(i=e,p):i},p.tooltips=function(e){return arguments.length?(s=e,p):s},p.tooltipContent=function(e){return arguments.length?(c=e,p):c},p.state=function(e){return arguments.length?(l=e,p):l},p.defaultState=function(e){return arguments.length?(g=e,p):g},p.noData=function(e){return arguments.length?(u=e,p):u},p},nv.models.groupedMultiBar=function(){let e,t,n,r,o,i,a,s,c={top:0,right:0,bottom:0,left:0},l=960,g=500,u=Math.floor(1e4*Math.random()),d=d3.scale.ordinal(),p=d3.scale.linear(),A=function(e){return e.x},C=function(e){return e.y},I=[0],f=nv.utils.defaultColor(),m=null,h=!1,v=144,b=!1,y=20,w=d3.format("d"),_=1200,j=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout"),x=null,E=function(e,t){return.1*e/t},S=function(e,t){return e/t},T=function(e,t){return.9*e/t},M=function(e,t,n){return O(e,t)+n*k(e,t)},L=function(e,t){return"function"==typeof T?T(e,t):T},k=function(e,t){return"function"==typeof S?S(e,t):S},O=function(e,t){return"function"==typeof E?E(e,t):E};function P(u){return u.each((function(u){d3.select(this).classed(nv.SVG_NODE_CLASSNAME,!0);const _=l-c.left-c.right,E=g-c.top-c.bottom,S=h?_-v:_;d3.select(this),u.forEach((function(e,t){e.values.forEach((function(e){e.series=t}))}));const T=d3.max(u.map((function(e){return e.barIndex?e.barIndex:0})))+1,k=u[0].values.length;for(U=0;U&lt;k;U++){var O=[];u.forEach((function(e){const t=e.values[U],n=e.barIndex?e.barIndex:0;t.bar=n,O.length&gt;n?(t.y0=O[n],O[n]+=C(t)):(t.y0=0,O.push(C(t)))}))}const P=n&amp;&amp;r?[]:u.map((function(e){return e.values.map((function(e,t){return{x:A(e,t),y:C(e,t),y0:e.y0}}))}));d.domain(n||d3.merge(P).map((function(e){return e.x}))).rangeBands(o||[0,E]),p.domain(r||d3.extent(d3.merge(d3.merge(P).map((function(e){return[e.y0+e.y,e.y0]}))).concat(I))),p.range(i||[0,S]),a=a||d,s=s||d3.scale.linear().domain(p.domain()).range([p(0),p(0)]);const N=d3.select(this).selectAll("g.nv-wrap.nv-groupedMultiBar").data([u]),D=N.enter().append("g").attr("class","nvd3 nv-wrap nv-groupedMultiBar"),R=(D.append("defs"),D.append("g"));var U=N.select("g");R.append("g").attr("class","nv-groups"),N.attr("transform","translate("+c.left+","+c.top+")");const z=N.select(".nv-groups").selectAll(".nv-group").data((function(e){return e}),(function(e,t){return t}));z.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),z.exit().transition().style("stroke-opacity",1e-6).style("fill-opacity",1e-6).remove(),z.attr("class",(function(e,t){return"nv-group nv-series-"+t})).classed("hover",(function(e){return e.hover})).style("fill",(function(e,t){return f(e,t)})).style("stroke",(function(e,t){return f(e,t)})),z.transition().style("stroke-opacity",1).style("fill-opacity",.75);const $=z.selectAll("g.nv-bar").data((function(e){return e.values}));$.exit().remove();let G=$.enter().append("g").attr("transform",(function(e,t,n){return"translate("+s(e.y0)+","+(d(A(e,t))+M(d.rangeBand(),T,e.bar))+")"}));if(x&amp;&amp;(G=G.append("a").attr("xlink:href",(function(e,t){return x(e,t)}))),G.append("rect").attr("class",(function(e,t){return"nv-grouped-bar-"+e.bar+"-"+t})).attr("width",0).attr("height",L(d.rangeBand(),T)),$.on("mouseover",(function(e,t){d3.selectAll(".nv-grouped-bar-"+e.bar+"-"+t).classed("hover",!0),j.elementMouseover({value:C(e,t),point:e,series:u[e.series],pos:[p(C(e,t)+e.y0),d(A(e,t))+M(d.rangeBand(),T,e.bar)+L(d.rangeBand(),T)/2],pointIndex:t,seriesIndex:e.series,e:d3.event})})).on("mouseout",(function(e,t){d3.selectAll(".nv-grouped-bar-"+e.bar+"-"+t).classed("hover",!1),j.elementMouseout({value:C(e,t),point:e,series:u[e.series],pointIndex:t,seriesIndex:e.series,e:d3.event})})).on("click",(function(e,t){j.elementClick({value:C(e,t),point:e,series:u[e.series],pos:[p(C(e,t)+e.y0),d(A(e,t))+d.rangeBand()/2],pointIndex:t,seriesIndex:e.series,e:d3.event}),d3.event.stopPropagation()})).on("dblclick",(function(e,t){j.elementDblClick({value:C(e,t),point:e,series:u[e.series],pos:[p(C(e,t)+e.y0),d(A(e,t))+d.rangeBand()/2],pointIndex:t,seriesIndex:e.series,e:d3.event}),d3.event.stopPropagation()})),G.append("g").attr("class","nv-value-label").append("text"),b?($.select("text").attr("text-anchor","end").attr("y",L(d.rangeBand(),T)).attr("dy",y).text((function(e,t){const n=C(e,t);return n?w(n):""})),$.transition().select("text").attr("x",(function(e){return p(e.y)}))):$.selectAll("text").text(""),h){const e=[];for(U=0;U&lt;u[0].values.length;U++){var B=[];u.forEach((function(e,n){const r=e.values[U],o=r.bar;if(B.length==o)B.push({x:A(r),total:{value:C(r),color:f(r,n)}}),t&amp;&amp;(B[o].title=t(r,U,o));else{var i=B[o].total;i.value+=C(r),i.color=f(r,n)}})),e.push(B)}const n=N.select(".nv-groups").selectAll("g.nv-total-group").data(e);n.enter().append("g").attr("class","nv-total-group"),n.exit().remove();const r=n.selectAll("g").data((function(e){return e}));r.enter().append("g"),r.attr("transform",(function(e,t){return"translate("+(_-v)+","+(d(A(e,t))+M(d.rangeBand(),T,t)+L(d.rangeBand(),T)+y)+")"})),r.exit().remove();const o=r.selectAll("text.nv-total-value").data((function(e){return[e.total]}));o.enter().append("text").attr("class","nv-total-value").attr("text-anchor","end").attr("x",(function(){return 48})).attr("fill",(function(e){return e.color})),o.text((function(e){return e.value})),o.exit().remove();const i=r.selectAll("text.nv-total-title").data((function(e){return[e.title]}));i.enter().append("text").attr("class","nv-total-title").attr("text-anchor","start").attr("x",(function(){return 56})).text((function(e){return e})),i.exit().remove()}$.attr("class","nv-bar"),m&amp;&amp;(e||(e=u.map((function(){return!0}))),$.style("fill",(function(t,n,r){return d3.rgb(m(t,n)).darker(e.map((function(e,t){return t})).filter((function(t,n){return!e[n]}))[r]).toString()})).style("stroke",(function(t,n,r){return d3.rgb(m(t,n)).darker(e.map((function(e,t){return t})).filter((function(t,n){return!e[n]}))[r]).toString()}))),$.transition().attr("transform",(function(e,t){return"translate("+p(e.y0)+","+(d(A(e,t))+M(d.rangeBand(),T,e.bar))+")"})).select("rect").attr("width",(function(e,t){const n=Math.abs(p(e.y+e.y0)-p(e.y0));return Math.max(0===e.y0?n+1:n,1)})).attr("height",L(d.rangeBand(),T)),$.select("a").attr("xlink:href",(function(e,t){return x(e,t)})),a=d.copy(),s=p.copy()})),P}return P.dispatch=j,P.options=nv.utils.optionsFunc.bind(P),P.x=function(e){return arguments.length?(A=e,P):A},P.y=function(e){return arguments.length?(C=e,P):C},P.getUrl=function(e){return arguments.length?(x=e,P):x},P.margin=function(e){return arguments.length?(c.top=void 0!==e.top?e.top:c.top,c.right=void 0!==e.right?e.right:c.right,c.bottom=void 0!==e.bottom?e.bottom:c.bottom,c.left=void 0!==e.left?e.left:c.left,P):c},P.width=function(e){return arguments.length?(l=e,P):l},P.height=function(e){return arguments.length?(g=e,P):g},P.xScale=function(e){return arguments.length?(d=e,P):d},P.yScale=function(e){return arguments.length?(p=e,P):p},P.xDomain=function(e){return arguments.length?(n=e,P):n},P.yDomain=function(e){return arguments.length?(r=e,P):r},P.xRange=function(e){return arguments.length?(o=e,P):o},P.yRange=function(e){return arguments.length?(i=e,P):i},P.forceY=function(e){return arguments.length?(I=e,P):I},P.color=function(e){return arguments.length?(f=nv.utils.getColor(e),P):f},P.barColor=function(e){return arguments.length?(m=nv.utils.getColor(e),P):m},P.disabled=function(t){return arguments.length?(e=t,P):e},P.id=function(e){return arguments.length?(u=e,P):u},P.delay=function(e){return arguments.length?(_=e,P):_},P.showValues=function(e){return arguments.length?(b=e,P):b},P.showTotalGroup=function(e){return arguments.length?(h=e,P):h},P.valueFormat=function(e){return arguments.length?(w=e,P):w},P.valuePadding=function(e){return arguments.length?(y=e,P):y},P.groupedBarTopShift=function(e){return arguments.length?(E=e,P):E},P.groupedBarWidth=function(e){return arguments.length?(T=e,P):T},P.groupedBarMiddleShift=function(e){return arguments.length?(S=e,P):S},P.totalGroupWidth=function(e){return arguments.length?(v=e,P):v},P.totalValueWidth=function(e){return arguments.length?(v=e,P):48},P.totalTitleFormat=function(e){return arguments.length?(t=e,P):t},P},nv.models.groupedMultiBarChart=function(){const e=nv.models.groupedMultiBar(),t=nv.models.axis(),n=nv.models.axis(),r=nv.models.legend().height(30);var o,i,a={top:30,right:20,bottom:50,left:60},s=null,c=null,l=nv.utils.defaultColor(),g=!0,u=!0,d=!0,p=!0,A=function(e,t,n,r,o){return"&lt;h3&gt;"+e+" - "+t+"&lt;/h3&gt;&lt;p&gt;"+n+"&lt;/p&gt;"},C={},I=null,f="No Data Available.",m=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),h=250;function v(b){return b.each((function(b){d3.select(this).classed(nv.SVG_NODE_CLASSNAME,!0);const y=d3.select(this),w=this;let _=(s||parseInt(y.style("width"))||960)-a.left-a.right,j=(c||parseInt(y.style("height"))||400)-a.top-a.bottom;if(v.update=function(){y.transition().duration(h).call(v)},v.container=this,C.disabled=b.map((function(e){return!!e.disabled})),!I){let e;for(e in I={},C)C[e]instanceof Array?I[e]=C[e].slice(0):I[e]=C[e]}if(!(b&amp;&amp;b.length&amp;&amp;b.filter((function(e){return e.values.length})).length)){const e=y.selectAll(".nv-noData").data([f]);return e.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),e.attr("x",a.left+_/2).attr("y",a.top+j/2).text((function(e){return e})),v}y.selectAll(".nv-noData").remove(),o=e.xScale(),i=e.yScale();const x=y.selectAll("g.nv-wrap.nv-groupedMultiBarChart").data([b]),E=x.enter().append("g").attr("class","nvd3 nv-wrap nv-groupedMultiBarChart").append("g"),S=x.select("g");E.append("g").attr("class","nv-x nv-axis"),E.append("g").attr("class","nv-y nv-axis"),E.append("g").attr("class","nv-barsWrap"),E.append("g").attr("class","nv-legendWrap"),g&amp;&amp;(r.width(_),e.barColor()&amp;&amp;b.forEach((function(e,t){e.color=d3.rgb("#ccc").darker(1.5*t).toString()})),S.select(".nv-legendWrap").datum(b).call(r),a.top!=r.height()&amp;&amp;(a.top=r.height(),j=(c||parseInt(y.style("height"))||400)-a.top-a.bottom),S.select(".nv-legendWrap").attr("transform","translate(0,"+-a.top+")")),x.attr("transform","translate("+a.left+","+a.top+")"),e.disabled(b.map((function(e){return e.disabled}))).width(_).height(j).color(b.map((function(e,t){return e.color||l(e,t)})).filter((function(e,t){return!b[t].disabled}))),S.select(".nv-barsWrap").datum(b.filter((function(e){return!e.disabled}))).transition().call(e),u&amp;&amp;(t.scale(o).ticks(j/24).tickSize(-_,0),S.select(".nv-x.nv-axis").transition().call(t),S.select(".nv-x.nv-axis").selectAll("g").selectAll("line, text")),d&amp;&amp;(n.scale(i).ticks(_/100).tickSize(-j,0),S.select(".nv-y.nv-axis").attr("transform","translate(0,"+j+")"),S.select(".nv-y.nv-axis").transition().call(n)),r.dispatch.on("stateChange",(function(e){C=e,m.stateChange(C),v.update()})),m.on("tooltipShow",(function(r){p&amp;&amp;function(r,o){const i=r.e.offsetX+(o.offsetLeft||0),a=r.pos[1]+(o.offsetTop||0),s=t.tickFormat()(e.x()(r.point,r.pointIndex)),c=n.tickFormat()(e.y()(r.point,r.pointIndex)),l=A(r.series.key,s,c,r,v);nv.tooltip.show([i,a],l,r.value&lt;0?"e":"w",null,o)}(r,w.parentNode)})),m.on("changeState",(function(e){void 0!==e.disabled&amp;&amp;(b.forEach((function(t,n){t.disabled=e.disabled[n]})),C.disabled=e.disabled),v.update()}))})),v}return t.orient("left").tickPadding(5).showMaxMin(!1),n.orient("bottom").tickFormat(d3.format("d")),e.valueFormat((function(e){return n.tickFormat()(e)})),e.dispatch.on("elementMouseover.tooltip",(function(e){e.pos=[e.pos[0]+a.left,e.pos[1]+a.top],m.tooltipShow(e)})),e.dispatch.on("elementMouseout.tooltip",(function(e){m.tooltipHide(e)})),m.on("tooltipHide",(function(){p&amp;&amp;nv.tooltip.cleanup()})),v.dispatch=m,v.multibobber=e,v.legend=r,v.xAxis=t,v.yAxis=n,d3.rebind(v,e,"x","y","xDomain","yDomain","xRange","yRange","forceX","forceY","clipEdge","id","delay","showValues","showTotalGroup","valueFormat","barColor","valuePadding","groupedBarTopShift","groupedBarMiddleShift","groupedBarWidth","totalGroupWidth","totalValueWidth","totalTitleFormat"),v.options=nv.utils.optionsFunc.bind(v),v.margin=function(e){return arguments.length?(a.top=void 0!==e.top?e.top:a.top,a.right=void 0!==e.right?e.right:a.right,a.bottom=void 0!==e.bottom?e.bottom:a.bottom,a.left=void 0!==e.left?e.left:a.left,v):a},v.width=function(e){return arguments.length?(s=e,v):s},v.height=function(e){return arguments.length?(c=e,v):c},v.color=function(e){return arguments.length?(l=nv.utils.getColor(e),r.color(l),v):l},v.showLegend=function(e){return arguments.length?(g=e,v):g},v.showXAxis=function(e){return arguments.length?(u=e,v):u},v.showYAxis=function(e){return arguments.length?(d=e,v):d},v.tooltip=function(e){return arguments.length?(A=e,v):A},v.tooltips=function(e){return arguments.length?(p=e,v):p},v.tooltipContent=function(e){return arguments.length?(A=e,v):A},v.state=function(e){return arguments.length?(C=e,v):C},v.defaultState=function(e){return arguments.length?(I=e,v):I},v.noData=function(e){return arguments.length?(f=e,v):f},v.transitionDuration=function(e){return arguments.length?(h=e,v):h},v},n(65677),nv.models.burndownChart=function(){const e=nv.models.line(),t=nv.models.axis(),n=nv.models.axis(),r=nv.models.legend(),o=nv.interactiveGuideline(),i={top:30,right:20,bottom:50,left:60};let a,s,c=nv.utils.defaultColor(),l=null,g=null,u=!1,d=!1,p=!0,A=function(e,t,n){return"&lt;h3&gt;"+e+"&lt;/h3&gt;&lt;p&gt;"+n+" at "+t+"&lt;/p&gt;"},C={},I=null,f="No Data Available.";const m=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState");let h=250,v="Behind Schedule",b="Ahead of Schedule";t.orient("bottom").tickPadding(7),n.orient(u?"right":"left"),o.tooltip.valueFormatter((function(e){return n.tickFormat()(e)}));const y=function(w){return w.each((function(w){d3.select(this).classed(nv.SVG_NODE_CLASSNAME,!0);const _=d3.select(this),j=this,x=(l||parseInt(_.style("width"))||960)-i.left-i.right;let E=(g||parseInt(_.style("height"))||400)-i.top-i.bottom;if(y.update=function(){_.transition().duration(h).call(y)},y.container=this,C.disabled=w.map((function(e){return!!e.disabled})),!I){let e;for(e in I={},C)C[e]instanceof Array?I[e]=C[e].slice(0):I[e]=C[e]}if(!(w&amp;&amp;w.length&amp;&amp;w.filter((function(e){return e.values.length})).length)){const e=_.selectAll(".nv-noData").data([f]);return e.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),e.attr("x",i.left+x/2).attr("y",i.top+E/2).text((function(e){return e})),y}_.selectAll(".nv-noData").remove(),a=e.xScale(),s=e.yScale();const S=_.selectAll("g.nv-wrap.nv-lineChart").data([w]),T=S.enter().append("g").attr("class","nvd3 nv-wrap nv-lineChart").append("g"),M=S.select("g");T.append("rect").style("opacity",0),T.append("g").attr("class","nv-x nv-axis"),T.append("g").attr("class","nv-y nv-axis"),T.append("g").attr("class","nv-linesWrap"),T.append("g").attr("class","nv-legendWrap"),T.append("g").attr("class","nv-interactive"),M.select("rect").attr("width",x).attr("height",E&gt;0?E:0),r.width(x),M.select(".nv-legendWrap").datum(w).call(r),i.top!==r.height()&amp;&amp;(i.top=r.height(),E=(g||parseInt(_.style("height"))||400)-i.top-i.bottom),S.select(".nv-legendWrap").attr("transform","translate(0,"+-i.top+")"),S.attr("transform","translate("+i.left+","+i.top+")"),u&amp;&amp;M.select(".nv-y.nv-axis").attr("transform","translate("+x+",0)"),d&amp;&amp;(o.width(x).height(E).margin({left:i.left,top:i.top}).svgContainer(_).xScale(a),S.select(".nv-interactive").call(o)),e.width(x).height(E).color(w.map((function(e,t){return e.color||c(e,t)})).filter((function(e,t){return!w[t].disabled}))),M.select(".nv-linesWrap").datum(w.filter((function(e){return!e.disabled}))).transition().call(e),t.scale(a).ticks(x/100).tickSize(-E,0),M.select(".nv-x.nv-axis").attr("transform","translate(0,"+s.range()[0]+")"),M.select(".nv-x.nv-axis").transition().call(t),n.scale(s).ticks(E/36).tickSize(-x,0),M.select(".nv-y.nv-axis").transition().call(n),r.dispatch.on("stateChange",(function(e){C=e,m.stateChange(C),y.update()})),o.dispatch.on("elementMousemove",(function(n){let r,a,s;e.clearHighlights();const l=[],g=(y.xScale()(y.x()(w[0].values[1],1))-y.xScale()(y.x()(w[0].values[0],0))+1)/2,u=n.mouseX;w.filter((function(e,t){return e.seriesIndex=t,!e.disabled})).forEach((function(t,o){a=nv.interactiveBisect(t.values,n.pointXValue,y.x());const i=t.values[a];if(void 0===i)return;const d=y.xScale()(y.x()(i,a));Math.abs(d-u)&lt;g&amp;&amp;(void 0===r&amp;&amp;(r=i),void 0===s&amp;&amp;(s=y.xScale()(y.x()(i,a))),e.highlightPoint(o,a,!0),l.push({key:t.key,value:y.y()(i,a),color:c(t,t.seriesIndex)}))}));const d=w[0].values,A=w[1].values,C=nv.interactiveBisect(d,n.pointXValue,y.x()),I=y.xScale()(y.x()(d[C],C)),f=nv.interactiveBisect(A,n.pointXValue,y.x()),m=y.xScale()(y.x()(A[f],f));if(Math.abs(I-u)&lt;g&amp;&amp;Math.abs(m-u)&lt;g){let e=d[C].value-A[f].value,t=b;e&lt;0&amp;&amp;(t=v,e=-e),l.push({key:t,value:e,color:"#ffffff"})}const h=t.tickFormat()(y.x()(r,a));o.tooltip.position({left:s+i.left,top:n.mouseY+i.top}).chartContainer(j.parentNode).enabled(p).data({value:h,series:l.map((e=&gt;(e.value=e.value?parseInt(e.value):e.value,e)))})(),o.renderGuideLine(s)})),o.dispatch.on("elementMouseout",(function(){m.tooltipHide(),e.clearHighlights()})),m.on("tooltipShow",(function(r){p&amp;&amp;function(r,o){const i=r.pos[0]+(o.offsetLeft||0),a=r.pos[1]+(o.offsetTop||0),s=t.tickFormat()(e.x()(r.point,r.pointIndex)),c=n.tickFormat()(e.y()(r.point,r.pointIndex)),l=A(r.series.key,s,c);nv.tooltip.show([i,a],l,null,null,o)}(r,j.parentNode)})),m.on("changeState",(function(e){void 0!==e.disabled&amp;&amp;w.length===e.disabled.length&amp;&amp;(w.forEach((function(t,n){t.disabled=e.disabled[n]})),C.disabled=e.disabled),y.update()}))})),y};return e.dispatch.on("elementMouseover.tooltip",(function(e){e.pos=[e.pos[0]+i.left,e.pos[1]+i.top],m.tooltipShow(e)})),e.dispatch.on("elementMouseout.tooltip",(function(e){m.tooltipHide(e)})),m.on("tooltipHide",(function(){p&amp;&amp;nv.tooltip.cleanup()})),y.dispatch=m,y.lines=e,y.legend=r,y.xAxis=t,y.yAxis=n,y.interactiveLayer=o,d3.rebind(y,e,"defined","isArea","x","y","size","xScale","yScale","xDomain","yDomain","xRange","yRange","forceX","forceY","interactive","clipEdge","clipVoronoi","useVoronoi","id","interpolate"),y.options=nv.utils.optionsFunc.bind(y),y.margin=function(e){return arguments.length?(i.top=void 0!==e.top?e.top:i.top,i.right=void 0!==e.right?e.right:i.right,i.bottom=void 0!==e.bottom?e.bottom:i.bottom,i.left=void 0!==e.left?e.left:i.left,y):i},y.width=function(e){return arguments.length?(l=e,y):l},y.height=function(e){return arguments.length?(g=e,y):g},y.color=function(e){return arguments.length?(c=nv.utils.getColor(e),r.color(c),y):c},y.rightAlignYAxis=function(e){return arguments.length?(u=e,n.orient(e?"right":"left"),y):u},y.useInteractiveGuideline=function(e){return arguments.length?(d=e,!0===e&amp;&amp;(y.interactive(!1),y.useVoronoi(!1)),y):d},y.tooltips=function(e){return arguments.length?(p=e,y):p},y.tooltipContent=function(e){return arguments.length?(A=e,y):A},y.state=function(e){return arguments.length?(C=e,y):C},y.defaultState=function(e){return arguments.length?(I=e,y):I},y.noData=function(e){return arguments.length?(f=e,y):f},y.transitionDuration=function(e){return arguments.length?(h=e,y):h},y.behindScheduleKey=function(e){return arguments.length?(v=e,y):v},y.aheadOfScheduleKey=function(e){return arguments.length?(b=e,y):b},y},n(45352),n(7441),n(51917),n(79233),n(98247),n(39865),angular.module("youtrack.components.error").directive("ytErrorMessage",(function(){return{restrict:"E",template:'&lt;div&gt;&lt;span yt-icon icon="frown" size="xl" class="report-frown-icon"&gt;&lt;/span&gt;&lt;div class="error-message__title"&gt;{{error.title || error}}&lt;/div&gt;&lt;p class="error-message__description yt-text_600"&gt;{{error.description}}&lt;/p&gt;&lt;/div&gt;',scope:{error:"="}}})),angular.module("youtrack.components.error",[]);var vW=Symbol.for("fake-youtrack-require");window[vW]=function(e){if("jquery"===e)return n(19755);var t="dashboard.youtrack-adatper.empty-module";return e.indexOf("ring-ui")&gt;-1?t:{name:t}},angular.module("youtrack.components.i18n",[]),angular.module("youtrack.components.error").constant("ytResourceType",{}).constant("d3",JY()).factory("httpErrorHandler",(function(){return{}})).factory("httpErrorMessage",(function(){return{getMessage:function(){return""},show:function(){}}})).factory("httpErrorHandler",(function(){return{showMessage:function(){}}})).factory("ytShortcuts",(function(){var e={add:function(){return e}};return{bindTo:function(){return e}}})),angular.module("youtrack.components.config",[]),angular.module("youtrack.components.analytics",[]),angular.module("youtrack.components.globals",[]),angular.module("youtrack.components.constants",[]),angular.module("youtrack.report.colorCoding",[]);var bW=angular.module("widget.youtrack",[AC()]).factory("resourceYoutrack",["$resource",function(e){return{getIssues:function(t){return e("".concat(t,"/rest/issue"),{with:["summary","votes","resolved","priority"],useImplicitSort:!0})},getIssuesCount:function(t){return e("".concat(t,"/rest/issue/count?sync=false"))},issuesFolder:function(t){return e("".concat(t,"/rest/issuesFolder"))},getIssue:function(t){return e("".concat(t,"/rest/issue/:id"))},getUser:function(t){return e("".concat(t,"/rest/admin/user/:login"))},savedSearch:function(t){return e("".concat(t,"/rest/user/search/:searchName"),{},{create:{method:"PUT"}})}}}]).directive("coloredField",(function(){function e(e,t){return e&amp;&amp;e[t]&amp;&amp;e[t].split("color:").pop()||""}return{restrict:"A",replace:!0,template:'&lt;span class="youtrack__colored-field" ng-style="style"&gt;{{text}}&lt;/span&gt;',scope:{coloredField:"="},link:function(t){t.coloredField||(t.style={display:"none"}),t.$watch("coloredField",(function(n){if(n&amp;&amp;n.length&amp;&amp;n.length&gt;0){t.text=n[0].charAt(0),t.style={display:"inline-block"};var r=n.color,o=e(r,"bg");o&amp;&amp;(t.style["background-color"]=o);var i=e(r,"fg");i&amp;&amp;(t.style.color=i,n.valueId&amp;&amp;n.valueId.length&gt;0&amp;&amp;"show-stopper"===n.valueId[0].toLowerCase()&amp;&amp;(t.style["border-color"]=i))}}))}}})).filter("issueFoldersByType",(function(){var e={isSavedSearch:function(e){return 0===e.fqFolderId.indexOf("$s$")},isTag:function(e){return 0===e.fqFolderId.indexOf("$t$")},isProject:function(t){return!e.isSavedSearch(t)&amp;&amp;!e.isTag(t)}};return function(t,n){return t&amp;&amp;t.filter&amp;&amp;e[n]?t.filter(e[n]):t}})).factory("issueUtils",(function(){return{convertIssueFields:function(e){return angular.forEach(e,(function(e){var t={};angular.forEach(e.field,(function(e){var n=e.name.toLowerCase();for(var r in t[n]=e.value,e)"value"!==r&amp;&amp;"name"!==r&amp;&amp;(t[n][r]=e[r])})),e.fieldHash=t})),e}}}));const yW=bW.name;var wW={IssuePerAssigneeReport:"issuesPerAssignee",IssuePerProjectReport:"issuesPerProject",FlatDistributionReport:"flatDistribution",IssueReport:"issueDistribution",MatrixReport:"issueDistribution",MatrixReportTable:"issueDistribution",ElkaReport:"customDistribution",IndependentBurndownReport:"burndown",IndependentCumulativeFlowReport:"cumulativeFlow",ResolutionTimeReport:"resolutionTime",AverageAgeReport:"averageAge",FixRateReport:"fixRate",VerifyRateReport:"verifyRate",ResolveRateReport:"resolveRate",TimeReport:"time",VerifiedDistributionReport:"verifiedDistribution",ReopenedDistributionReport:"reopenedDistribution",EventTransitionReport:"eventTransition",EstimationReport:"estimation"};function _W(e){return e&amp;&amp;(e.$type?wW[e.$type.replace("jetbrains.charisma.smartui.report.","")]:e.type)||""}var jW=angular.module("dashboard.youtrack.report.select",[]).directive("youtrackReportSelect",["reportListResource","$injector","reportListWalker",function(e,t,r){return{template:n(96785),scope:{serviceUrl:"=",selectedReport:"=",onServiceSelect:"&amp;"},replace:!0,restrict:"E",controller:["$scope",function(n){var o=n.vm={searchReport:"",availableReports:[]};n.injectAvailableReportServices=function(e){var n=e.map((function(e){return _W(e)})),r=cY()(n).filter((function(e){return!!e})),o={};return r.forEach((function(e){try{t.get("".concat(e,"Widget")),o[e]=!0}catch(e){console.debug("Unsupported report type: ",e)}})),o},n.loadAvailableReports=function(t){delete o.error,o.reportsResource=e.create(t).query(),o.reportsResource.$promise.then((function(e){var t=n.injectAvailableReportServices(e);o.availableReports=OY()(e,(function(e){return t[_W(e)]}))}),(function(){o.error="Could not connect to YouTrack at ".concat(t)}))},n.selectReport=function(e){n.onServiceSelect({selectedReport:e})},n.selectSiblingReport=function(e){n.selectedReport=r(n.filterReports(o.searchReport),n.selectedReport,e)},n.handleKeys=function(e){40===e.which||38===e.which?(n.selectSiblingReport(40===e.which),e.preventDefault()):13===e.which&amp;&amp;n.selectedReport&amp;&amp;n.selectReport(n.selectedReport)},n.filterReports=function(e){return n.vm.availableReports.filter((function(t){return t.name.toLowerCase().includes(e.toLowerCase())}))},n.$watch("serviceUrl",(function(e){o.availableReports.length=0,e&amp;&amp;n.loadAvailableReports(e)}))}]}}]).factory("reportListResource",["$resource",function(e){return{create:function(t){return e("".concat(t,"/api/reports?$top=-1&amp;fields=").concat("$type,type,editable,id,name,own,owner($type,canReadProfile,id,isLocked,login,name,ringId),pin(pinned)"))}}}]).factory("reportListWalker",(function(){return function(e,t,n){var r=n?0:e.length-1,o=n?e.length-1:0;if(t){var i=e.indexOf(t);return i===o?e[r]:e[n?++i:--i]}return e[r]}}));const xW=jW.name;var EW=n(61948),SW=n.n(EW),TW=angular.module("dashboard.youtrack.report.averageAgeWidget",["youtrack.components.reportBase","youtrack.components.report"]).factory("averageAgeWidget",["gapReportBase","i18n","intervalWidget",function(e,t,n){return function(r,o,i,a){e(r,o,i||"averageAge");var s=r.prepareReportRender;r.prepareReportRender=function(e){s(e),n(r,e,a,{pos:{title:t("Changed to one of the complement states",null,"Dashboard")},neg:{title:t("Remains in one of the selected states",null,"Dashboard")}})}}}]);const MW=TW.name;var LW=n(24777),kW=n.n(LW),OW=angular.module("dashboard.youtrack.report.burndownWidget",["youtrack.components.reportBase","youtrack.report.burndown.dataLoader"]).factory("burndownWidget",["gapReportBase","gapBurndownChartData","gapBurndownChartConfig","i18n",function(e,t,n,r){return function(o,i,a,s){e(o,i,a||"burndown");var c=o.prepareReportRender;o.prepareReportRender=function(e){c(e);var i=t(o,e),a=n(o,e),l=d3.time.format("%d %b %Y");i.range&amp;&amp;(o.rangeStart=l(i.range[0]),o.rangeEnd=l(i.range[1])),o.XAxisTpl=kW(),o.isOverdue=i.isOverdue,o.lastCalculated=l(new Date(e.status.lastCalculated)),o.remainingEffortPresentation=e.data.remainingEffortPresentation,nv.addGraph((function(){var e=nv.models.burndownChart().margin({left:0,right:0,bottom:0,top:0}).x(a.xGetter).y(a.yGetter).useInteractiveGuideline(!0).transitionDuration(300).xScale(a.xScale).yScale(a.yScale).behindScheduleKey(r("Behind Schedule")).aheadOfScheduleKey(r("Ahead of Schedule"));return e.xAxis.tickFormat(a.xAxisTickFormat),e.yAxis.tickFormat(a.yAxisTickFormat),d3.select(s.querySelector("svg.js-report-container")).datum(i.chartData).call(e),o.$on("hub.dashboard.report-widget.resized",e.update),e}))}}}]);const PW=OW.name;var NW=angular.module("dashboard.youtrack.report.cumulativeFlowWidget",["youtrack.components.reportBase","youtrack.components.reportTypes","youtrack.report.colorCoding","youtrack.report.distribution.legend","youtrack.report.cumulativeFlow.dataLoader"]).factory("cumulativeFlowWidget",["gapReportBase","colorUtils","gapCumulativeFlowChartData","gapCumulativeFlowChartConfig",function(e,t,n,r){return function(o,i,a,s){e(o,i,a||"cumulativeFlow");var c=o.prepareReportRender;o.prepareReportRender=function(e){c(e);var i=n(o,e),a=r(i);if(e.data&amp;&amp;e.data.sample){var l=e.data.sample;o.rangeStart=d3.time.format("%d %b %Y")(new Date(l[0].date)),o.rangeEnd=d3.time.format("%d %b %Y")(new Date(l[l.length-1].date))}nv.addGraph((function(){var e=nv.models.stackedAreaChart().margin({left:0,right:0,bottom:0,top:0}).x(a.xGetter).y(a.yGetter).color(i.hasPredefinedColor?t.getDistinctColor:t.getColor).showXAxis(!1).showYAxis(!1).useInteractiveGuideline(!0).transitionDuration(300).showLegend(!1).showControls(!1).clipEdge(!0).xScale(d3.time.scale());return e.legend.margin({left:10,top:0}),e.legend.rightAlign(!1),e.xAxis.tickFormat(a.xAxisTickFormat),o.data=i.chartData,d3.select(s.querySelector("svg.js-report-container")).datum(o.data).call(e),o.$on("hub.dashboard.report-widget.resized",e.update),o.chart=e,o.$apply(),e}))}}}]);const DW=NW.name;var RW=angular.module("dashboard.youtrack.report.customDistributionWidget",["youtrack.components.reportBase","youtrack.report.colorCoding"]).factory("customDistributionWidget",["gapReportBase","colorUtils",function(e,t){return function(n,r,o,i){e(n,r,o||"customDistribution");var a=n.prepareReportRender;n.prepareReportRender=function(e){a(e);var r=e.data.groups.length;n.lineHeight=56,n.chartHeight=n.lineHeight*r,nv.addGraph((function(){var r,o,a=nv.models.groupedMultiBarChart().margin({left:0,top:0,right:0,bottom:0}).showLegend(!1).showTotalGroup(!0).totalGroupWidth(48).valuePadding(0).groupedBarWidth(8).groupedBarTopShift(23).groupedBarMiddleShift(12).showXAxis(!1).showYAxis(!1).transitionDuration(350).color(t.getColor);d3.select(i.querySelector("svg.js-report-container")).datum((r=e,o=[],r.series.forEach((function(e){o.push({barIndex:e.bar,colorIndex:e.color,key:e.name})})),o.forEach((function(e,t){e.values=r.data.groups.map((function(e){return{x:e.presentation,y:e.values[t]}}))})),o)).call(a),n.$on("hub.dashboard.report-widget.resized",a.update)}))}}}]);const UW=RW.name;function zW(e){return e.hasOwnProperty("value")?e.value:e}var $W=angular.module("youtrack.report.simpleBarsWidget",["youtrack.report.colorCoding",br]).factory("simpleBarsWidget",["colorUtils","fillHasAvatarsAndTotalSize",function(e,t){var n=function n(r,o,i){var a;r.youtrackUrl=i.youtrackUrl||"",r.dataGroups=o,r.dynamicChart=o.length&gt;1,void 0!==i.dataIndex?r.data=o[i.dataIndex-1]:r.data=o[0],r.lineHeight=22,t(r,r.data),r.round=Math.round,r.imageSize=r.lineHeight-2,r.labelSize=r.lineHeight-10,r.getColor=r.hasPredefinedColor?e.getDistinctColor:e.getColor,r.getSimpleBarsPercentText=function(e,t){if(!t)return t;var n=zW(e);return"".concat(Math.round(100*n/t),"%")},r.getYouTrackSearchUrl=function(e){return e.issuesQuery?"".concat(r.baseUrl,"/issues?q=").concat(encodeURIComponent(e.issuesQuery)):r.baseUrl+e.queryUrl},"PIE"===r.report.presentation?(r.chartHeight=176,nv.addGraph((function(){var e=nv.models.flexPieChart().margin({left:0,right:0,top:0,bottom:8}).x((function(e){return e.name})).y((function(e){return zW(e.size)})).getUrl((function(e){return r.getYouTrackSearchUrl(e.data)})).valueFormat((function(e){return"".concat(e," (").concat(Math.round(100*e/r.totalSize),"%)")})).color(r.getColor).showLabels(!1).showLegend(!1),t=r.data.sort((function(e,t){return zW(t.size)-zW(e.size)}));return t=t.map((function(e){return e.size=zW(e.size),e})),d3.select(i.element.querySelector("svg.js-report-container")).datum(t).transition().duration(450).call(e),r.$on("hub.dashboard.report-widget.resized",e.update),e}))):(r.chartHeight=r.lineHeight*r.data.length,nv.addGraph((function(){var e=nv.models.multiBarHorizontalChart();return a=e.margin({left:5,right:0,top:0,bottom:0}).x((function(e){return e.name})).y((function(e){return zW(e.size)})).tooltips(!1).showControls(!1).showLegend(!1).showXAxis(!1).showYAxis(!1).transitionDuration(350),void 0!==i.predefinedColor&amp;&amp;a.color((function(){return i.predefinedColor})),i.disableLinks||a.multibar.getUrl(r.getYouTrackSearchUrl),a.xAxis.tickFormat((function(e){return e})),a.yAxis.tickFormat(d3.format("d")),r.chart=a,n.redraw(i.element,r),r.$on("hub.dashboard.report-widget.resized",a.update),a})))};return n.redraw=function(e,t,n){void 0!==n&amp;&amp;t.chart.color((function(){return n})),d3.select(e.querySelector("svg.js-report-container")).datum([{values:t.data}]).call(t.chart)},n}]).service("fillHasAvatarsAndTotalSize",(function(){return function(e,t){e.totalSize=0,e.hasAvatars=!1,t.forEach((function(t){e.totalSize+=zW(t.size),e.hasAvatars=e.hasAvatars||null!=t.avatarUrl&amp;&amp;t.avatarUrl.length&gt;0})),e.getAvatar=function(e){return e}}}));const GW=$W.name,BW=angular.module("dashboard.youtrack.report.eventTransitionWidget",["youtrack.components.reportBase",GW]).factory("eventTransitionWidget",["gapReportBase","simpleBarsWidget",function(e,t){return function(n,r,o,i){e(n,r,o||"eventTransition");var a=n.prepareReportRender;n.prepareReportRender=function(e){a(e),t(n,[e.data.columns],{disableLinks:!0,element:i,youtrackUrl:n.serviceUrl})}}}]).name;function FW(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var ZW=angular.module("youtrack.report.rateWidget",["youtrack.components.reportBase","youtrack.report.utils"]).factory("rateWidget",["gapReportBase","initScales","initViews","getOptimalScale",function(e,t,n,r){return function(o,i,a,s,c){e(o,i,a),t(o),n(o);var l=o.prepareReportRender;o.prepareReportRender=function(e){l(e),o.chartNames=c.map((function(e){return e.name})),nv.addGraph((function(){var t=nv.models.multiBobberChart().margin({left:24}).x((function(e){return e[0]||e.x})).y((function(e){return e[1]})).bobberZeroLevel(1).transitionDuration(100).showControls(!1).yTickStepWidth(96).showLegend(!1).stacked(!0).showXAxis(!1).showYAxis(!1);return t.tooltip.distance(32),t.tooltip.snapDistance(16),t.yAxis.tickFormat(Math.abs),o.chart=t,o.currentState={scale:r(o),view:o.views[0]},e.data.range&amp;&amp;(o.rangeStart=o.currentState.scale.dateFormat(new Date(e.data.range.from)),o.rangeEnd=o.currentState.scale.dateFormat(new Date(e.data.range.to))),o.regroup(o.currentState.view,!0),o.rescale(o.currentState.scale,!0),o.onWindowResize(o.chart.update),o.$apply(),t}))},o.rescale=function(e,t){o.currentState.scale=e||r(o);var n=d3.select(s.querySelector("svg.js-report-container"));t||n.selectAll(".tick").remove(),n.datum(function(e){var t=c.map((function(e){return{key:e.name,values:[]}})),n=o.report.data.groups,r=0,i=e.step.floor(new Date(o.report.data.range.from)),a=e.step.ceil(new Date(o.report.data.range.to));return e.step.range(i,a).forEach((function(o){for(var i,a=e.step.offset(o,1).getTime(),s=function(e){return function(e){if(Array.isArray(e))return FW(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return FW(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?FW(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(t).map(Number.prototype.valueOf,0);r&lt;n.length&amp;&amp;n[r].timestamp&lt;a;){for(i=0;i&lt;t.length;i++)s[i]+=n[r][c[i].id];r++}for(i=0;i&lt;t.length;i++)t[i].values.push([o,s[i]])})),t}(o.currentState.scale)).call(o.chart)},o.regroup=function(e,t){o.currentState.view=e||o.views[0],o.chart.stacked(o.currentState.view.value),t||o.chart.update()}}}]);const YW=ZW.name;var WW=angular.module("dashboard.youtrack.report.fixRateWidget",["youtrack.components.reportBase","youtrack.report.graphics",YW]).factory("fixRateWidget",["rateWidget","i18n",function(e,t){return function(n,r,o,i){var a=[{name:t("Fixed",null,"Dashboard"),id:"positive"},{name:t("Reported",null,"Dashboard"),id:"negative"}];e(n,r,o||"fixRate",i,a)}}]);const HW=WW.name,qW=angular.module("dashboard.youtrack.report.flatDistributionWidget",["youtrack.components.reportBase","youtrack.report.colorCoding"]).factory("flatDistributionWidget",["gapReportBase","simpleBarsWidget",function(e,t){return function(n,r,o,i){e(n,r,o||"flatDistribution");var a=n.prepareReportRender;n.prepareReportRender=function(e){a(e),t(n,[e.data.columns],{disableLinks:!1,element:i,youtrackUrl:n.serviceUrl},i)}}}]).name;var QW=angular.module("dashboard.youtrack.report.issueDistributionWidget",["youtrack.components.reportBase",GW,"youtrack.report.colorCoding","youtrack.report.issueDistribution.dataLoader"]).factory("issueDistributionWidget",["gapReportBase","simpleBarsWidget","i18n","fillHasAvatarsAndTotalSize","colorUtils","gapIssueDistributionDataLoader",function(e,t,n,r,o,i){function a(e){return e.hasOwnProperty("value")?e.value:e}return function(c,l,g,u){e(c,l,g||"issueDistribution"),c.baseUrl=l.baseUrl;var d="".concat(c.baseUrl,"/issues?q=");c.tooBig=function(){var e=c.report.data;if(e.ycolumns&amp;&amp;e.xcolumns)return e.ycolumns.length*e.xcolumns.length&gt;1e4},c.changeGroupBy=function(e){var n=c.groupByValues.indexOf(e),r=c.widgetCtrl.config;if(r.rendererOptions||(r.rendererOptions={}),r.rendererOptions.dataIndex=n,r!==c.widgetCtrl.config&amp;&amp;angular.copy(r,c.widgetCtrl.config),0===n||0===c.dataIndex)c.dataIndex=n,c.prepareReportRender(c.report);else{c.dataIndex=n,c.data=c.dataGroups[n-1];var i=o.getColor(c.report.data.xcolumns[c.dataIndex-1],c.dataIndex-1,c.hasPredefinedColor);t.redraw(u,c,i);var s=c.groupByValues[n];c.totalSize=a(s.size)}};var p=c.prepareReportRender;c.prepareReportRender=function(e){p(e);var s=e.data;if(c.dynamicChart=s.xcolumns.length&gt;1,c.groupByValues=[{label:n("All",null,"Dashboard"),action:!0,key:-1,size:s.xcolumns.reduce((function(e,t){return e+a(t.size)}),0),event:{name:"dropdown-menu:change-simple-bars-group-by-".concat(c.$id),data:0}}],c.groupByValues=c.groupByValues.concat(s.xcolumns.map((function(e,t){return{label:e.name,size:a(e.size),action:!0,key:e.index,event:{name:"dropdown-menu:change-simple-bars-group-by-".concat(c.$id),data:t+1}}}))),void 0===c.dataIndex||-1===c.dataIndex){var l=c.widgetCtrl.config;l.rendererOptions&amp;&amp;void 0!==l.rendererOptions.dataIndex?c.dataIndex=l.rendererOptions.dataIndex:c.dataIndex=0}c.dataIndex&gt;c.groupByValues.length+1&amp;&amp;(c.dataIndex=0),c.xcolumns=s.xcolumns,c.ycolumns=s.ycolumns.slice(0,100),c.hasPredefinedColor=s.xcolumns.reduce((function(e,t){return e||void 0!==t.colorIndex&amp;&amp;t.colorIndex&gt;0}),!1);var g=i(c);0===c.dataIndex?(c.ycolumns=s.ycolumns.slice(0,100),c.lineHeight=22,c.chartHeight=c.lineHeight*c.ycolumns.length,c.round=Math.round,r(c,c.report.data.ycolumns),c.imageSize=c.hasAvatars?c.lineHeight-2:0,nv.addGraph((function(){var e=nv.models.multiBarHorizontalChart().margin({left:5,right:0,top:0,bottom:0}).stacked(!0).state({stacked:!0}).x((function(e){return e.name})).y((function(e){return a(e.size)})).color(c.hasPredefinedColor?o.getDistinctColor:o.getColor).showControls(!1).showLegend(!1).showXAxis(!1).showYAxis(!1).transitionDuration(350);return e.multibar.getUrl((function(e){return c.getColumnQueryUrl(e)})),e.yAxis.tickFormat((function(e){return e})),d3.select(u.querySelector("svg.js-report-container")).datum(g).call(e),c.$on("hub.dashboard.report-widget.resized",e.update),c.chart=e,c.data=g,c.$apply(),e}))):t(c,g,{disableLinks:!1,element:u,baseUrl:c.baseUrl,dataIndex:c.dataIndex,predefinedColor:o.getColor(s.xcolumns[c.dataIndex-1],c.dataIndex-1,c.hasPredefinedColor)},u)},c.getMatrixReportQueryUrl=function(e,t,n){return e.issuesQueries?d+encodeURIComponent(e.issuesQueries[t][n]):s(c.baseUrl,e.queryUrls[t][n])},c.getColumnQueryUrl=function(e){var t=e.queryUrl,n=e.effectiveQueryUrl;return s(c.baseUrl,t||n)},c.getFilterPresentation=function(e){var t=(e||{}).field||e||{};return t.localizedName||t.presentation||t.name||t}};function s(e,t){if(!t)return"".concat(e,"/issues");var n=(e||"").split("/"),r=t.split("/").filter((function(e){return!!e})),o=n.pop(),i=r.shift(),a=o===i?i:void 0;return a?[n.join("/"),a,r.join("/")].join("/"):[e,t].join("")}}]);const VW=QW.name,KW=angular.module("dashboard.youtrack.report.issuesPerAssigneeWidget",["youtrack.components.reportBase",GW]).factory("issuesPerAssigneeWidget",["gapReportBase","simpleBarsWidget",function(e,t){return function(n,r,o,i){e(n,r,o||"issuesPerAssignee");var a=n.prepareReportRender;n.prepareReportRender=function(e){a(e),t(n,[e.data.columns],{baseUrl:r.baseUrl,element:i,youtrackUrl:n.serviceUrl})}}}]).name,JW=angular.module("dashboard.youtrack.report.issuesPerProjectWidget",["youtrack.components.reportBase",GW]).factory("issuesPerProjectWidget",["gapReportBase","simpleBarsWidget",function(e,t){return function(n,r,o,i){e(n,r,o||"issuesPerProject");var a=n.prepareReportRender;n.prepareReportRender=function(e){a(e),t(n,[e.data.columns],{baseUrl:r.baseUrl,element:i,youtrackUrl:n.serviceUrl})}}}]).name,XW=angular.module("dashboard.youtrack.report.reopenedDistributionWidget",[BW]).factory("reopenedDistributionWidget",["eventTransitionWidget",function(e){return function(t,n,r,o){e(t,n,r||"reopenedDistribution",o)}}]).name;var eH=angular.module("youtrack.report.intervalWidget",["youtrack.components.reportBase"]).factory("intervalWidget",["i18n",function(e){return function(t,n,r,o){var i=n.data.groups;nv.addGraph((function(){var a=n.windowSize?n.windowSize:30,s=nv.models.lineChart().margin({left:16,top:0,right:0,bottom:8}).x((function(e){return e[0]})).y((function(e){return e[1]})).forceY([a]).showXAxis(!1).showLegend(!0).useInteractiveGuideline(!0).transitionDuration(100);s.legend.margin({left:8,top:4,right:0,bottom:16}).rightAlign(!1),s.interactiveLayer.tooltip.distance(32),s.interactiveLayer.tooltip.snapDistance(16),s.interactiveLayer.tooltip.valueFormatter((function(t){if(0===t)return"0";var n=Math.floor(t),r=Math.floor(24*(t-n)),o=Math.floor(60*(24*(t-n)-r));return 0===n&amp;&amp;0===r&amp;&amp;0===o?"0":(0!==n?n+e("d",null,"Dashboard"):"")+(0!==r?" ".concat(r).concat(e("h",null,"Dashboard")):"")+(0!==o?" ".concat(o).concat(e("m",null,"Dashboard")):"")})),s.xAxis.tickFormat((function(e){return d3.time.format("%d %b %Y")(new Date(e))})),e("Days",null,"Dashboard");s.yAxis.tickFormat(d3.format("d")).showMaxMin(!0),s.lines.padData(!0);var c=function(e){return i.map((function(t){return[t.timestamp,t[e]/864e5]}))},l="(".concat(a," ").concat(e("days",null,"Dashboard"),")"),g=[{key:o.mmx?o.mmx.title:"".concat(e("Moving maximum",null,"Dashboard")," ").concat(l),values:c("mmx"),color:s.color()({},3)},{key:o.mvg?o.mvg.title:"".concat(e("Moving average",null,"Dashboard")," ").concat(l),values:c("mvg"),color:s.color()({},4)}];return d3.select(r.querySelector("svg.js-report-container")).datum(g).call(s),t.$on("hub.dashboard.report-widget.resized",s.update),s})),i.length&amp;&amp;(t.rangeStart=d3.time.format("%d %b %Y")(new Date(i[0].timestamp)),t.rangeEnd=d3.time.format("%d %b %Y")(new Date(i[i.length-1].timestamp)))}}]);const tH=eH.name;var nH=angular.module("dashboard.youtrack.report.resolutionTimeWidget",["youtrack.components.reportBase",tH]).factory("resolutionTimeWidget",["gapReportBase","i18n","intervalWidget",function(e,t,n){return function(r,o,i,a){e(r,o,i||"resolutionTime");var s=r.prepareReportRender;r.prepareReportRender=function(e){s(e),n(r,e,a,{pos:{title:t("Resolved that day",null,"Dashboard")},neg:{title:t("Still unresolved",null,"Dashboard")}})}}}]);const rH=nH.name;var oH=angular.module("dashboard.youtrack.report.resolveRateWidget",["youtrack.components.reportBase","youtrack.components.report"]).factory("resolveRateWidget",["rateWidget","i18n",function(e,t){return function(n,r,o,i){var a=[{name:t("Resolved",null,"Dashboard"),id:"positive"},{name:t("New/Reopened",null,"Dashboard"),id:"negative"}];e(n,r,o||"resolveRate",i,a)}}]);const iH=oH.name;var aH=angular.module("dashboard.youtrack.report.timeWidget",["youtrack.components.reportBase",br,"youtrack.report.utils"]).factory("timeWidget",["gapReportBase",function(e){return function(t,n,r){e(t,n,r||"time");var o=t.timeReportCtrl={};o.isDetailedView=!0;var i=t.prepareReportRender;function a(){var e=t.report.grouping;return e&amp;&amp;("WORK_TYPE"===e.field.id||"WORK_AUTHOR"===e.field.id||"WORK_AUTHOR_AND_DATE"===e.field.id)}o.getGroupColSpan=function(){return!0===t.report.data.perUser?1:2},o.setPerUser=function(e){t.id.perUser!==e&amp;&amp;(t.id.perUser=e,t.widgetCtrl.load(!0))},o.hasGroups=function(){var e=t.report&amp;&amp;t.report.data.groups||[];return e.length&gt;1||1===e.length&amp;&amp;e[0].name&amp;&amp;"-"!==e[0].name},o.getIssueUrl=function(e){return"".concat(n.baseUrl,"/issue/").concat(e.issueId)},o.getUserUrl=function(e){return"".concat(n.baseUrl,"/users/").concat(e.userId)},o.isShowGroupEstimation=function(){return!a()},o.isShowLinesEstimation=function(){return!a()&amp;&amp;!t.id.perUser},t.prepareReportRender=function(e){i(e),o.lines=function(e){function t(e){return[{firstInSubGroup:!0,description:e.description,issueId:e.issueId,userAvatarUrl:e.userAvatarUrl,userId:e.userId,periods:{estimation:e.estimation,timeSpent:e.duration,totalSpentTime:e.totalDuration}}]}var n=function(e,t){return e.concat(t)};return e.reduce((function(e,r){return e[r.name]=r.lines.map(t).reduce(n),e}),{})}(e.data.groups),t.id.perUser=t.id.perUser||!1}}}]);const sH=aH.name;const cH=angular.module("dashboard.youtrack.report.estimationWidget",["youtrack.components.reportBase"]).factory("estimationWidget",["gapReportBase",function(e){return function(t,n,r){t.getIssueUrl=function(e){return"".concat(t.serviceUrl,"/issue/").concat(e.issueId)},e(t,n,r||"estimation")}}]).name,lH=angular.module("dashboard.youtrack.report.verifiedDistributionWidget",[BW]).factory("verifiedDistributionWidget",["eventTransitionWidget",function(e){return function(t,n,r,o){e(t,n,r||"verifiedDistribution",o)}}]).name;var gH=angular.module("dashboard.youtrack.report.verifyRateWidget",["youtrack.components.reportBase","youtrack.components.report"]).factory("verifyRateWidget",["rateWidget","i18n",function(e,t){return function(n,r,o,i){var a=[{name:t("Verified",null,"Dashboard"),id:"positive"},{name:t("Reopened",null,"Dashboard"),id:"negative"}];e(n,r,o||"verifyRate",i,a)}}]);const uH=gH.name;var dH=n(72289),pH=n.n(dH);const AH=angular.module("dashboard.youtrack.report.legend",[]).run(["$templateCache",function(e){e.put("/reportWidgetLegend.html",pH())}]).name;function CH(e){return CH="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},CH(e)}function IH(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,fH(r.key),r)}}function fH(e){var t=function(e,t){if("object"!==CH(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==CH(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===CH(t)?t:String(t)}function mH(){return mH="undefined"!=typeof Reflect&amp;&amp;Reflect.get?Reflect.get.bind():function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&amp;&amp;null!==(e=hH(e)););return e}(e,t);if(r){var o=Object.getOwnPropertyDescriptor(r,t);return o.get?o.get.call(arguments.length&lt;3?e:n):o.value}},mH.apply(this,arguments)}function hH(e){return hH=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},hH(e)}function vH(e,t){return vH=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},vH(e,t)}window.nv&amp;&amp;(window.nv.dev=!1);var bH=angular.module("widget.youtrackDashboard.report",[GU,z,AC(),"youtrack.templates","youtrack.components.resources","youtrack.report.graphics",yW,AH,DW,PW,UW,BW,iH,uH,HW,qW,VW,KW,JW,XW,rH,MW,sH,cH,lH,xW]);n(63959),n(68965),n(28922),n(44008),n(75206),n(86557),n(88498),n(29432),n(1799),n(543),n(52787),n(30763),n(74975),n(74474),n(38614),n(77917),n(35393),n(81416),n(86815),n(91392),n(73574),n(42330),n(51486),n(50717),bH.run(["widgetsRegistry","i18n","$templateCache",function(e,t,n){window.te=n,e.add({id:"widget-youtrack-report",applicationName:Tl,label:t("Report",null,"Dashboard"),directive:"widget-youtrack-report"})}]).directive("widgetYoutrackReport",["$window","$q","$injector","gapReportRest","abstractResourceFactory","widgetDirectiveConstructor","i18n",function(e,t,r,o,i,a,s){var c=function(a){function c(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,c),e=this,n=arguments,t=hH(t=c),function(e,t){if(t&amp;&amp;("object"===CH(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],hH(e).constructor):t.apply(e,n));var e,t,n}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;vH(e,t)}(c,a),l=c,g=[{key:"activate",value:function(){var e=this;this.widgetReportId=null,this.$scope.$watch("isReady",(function(t){e.viewModel.widgetState!==zU.CONFIG&amp;&amp;(e.viewModel.widgetState=t?zU.READY:zU.LOADING)})),this.$scope.$watch("report.responseError",(function(t){t&amp;&amp;(e.$scope.isReady=!0,e.viewModel.error=t.title,e.$scope.report.data=null)})),this.listenResize(),mH(hH(c.prototype),"activate",this).call(this)}},{key:"getId",value:function(){return"widgetYoutrackReport:".concat(this.config.service.id,":").concat(this.config.report.id).replace(/\/|\./g,"_")}},{key:"isConfigDefined",value:function(e){return void 0!==e.service&amp;&amp;void 0!==e.report}},{key:"canSaveWidget",value:function(){return!this.config.report||!("refreshPeriod"in this.config)||this.config.refreshPeriod&gt;=60}},{key:"getRefreshTitle",value:function(){var e=this.data.timestamp,t=((this.data||{}).result||{}).lastCalculated;if(e&amp;&amp;t)return this.i18n("Updated from server: {{timestamp}}\nRecalculated: {{calcDate}}",{timestamp:this.dateFilter(e,"HH:mm"),calcDate:this.dateFilter(t,"HH:mm")})}},{key:"load",value:function(e){var n=this;if(!e)return this.prepareScopeForReport(this.$scope),t.when(CU.loadCache(this.getId())).then((function(e){e&amp;&amp;e.result&amp;&amp;e.result.$type&amp;&amp;(n.$scope.report=e.result,n.$scope.state=n.$scope.extractState(n.$scope.report)),n._loadReport(!1,!0)}));this._loadReport(!1,e)}},{key:"refresh",value:function(){var e=this;this.viewModel.widgetState===zU.READY&amp;&amp;this._loadReport(!1,!0).finally((function(){return e.setState(zU.READY)}))}},{key:"forceRefresh",value:function(){var e=this;this.viewModel.widgetState===zU.READY&amp;&amp;this._loadReport(!0,!0).finally((function(){return e.setState(zU.READY)}))}},{key:"discoverService",value:function(){for(var e,t=arguments.length,n=new Array(t),r=0;r&lt;t;r++)n[r]=arguments[r];(e=mH(hH(c.prototype),"discoverService",this)).call.apply(e,[this].concat(n)),this.$scope.baseUrl=this.serviceUrl,this.$scope.serviceUrl=this.serviceUrl}},{key:"hasFades",value:function(){return!1}},{key:"getHeaderText",value:function(e){return this.viewModel.widgetState===zU.CONFIG?this.config.notCompleted?s("Add widget from existing report",null,"Dashboard"):s("Select existing report",null,"Dashboard"):e?e.text||e.name:""}},{key:"getReportType",value:function(e){return _W(e)}},{key:"onServiceSelect",value:function(e){this.config.report=e}},{key:"prepareScopeForReport",value:function(e){var t=this;this.setState(zU.LOADING),this.viewModel.error=null;var n=i(this.serviceUrl),a=this.getReportType(this.config.report);if(!a)throw new Error("Report type not set");if(this.widgetReportId!==this.config.report.id){this.widgetReportId=this.config.report.id;var s=r.get("".concat(a,"Widget"));e.id=this.config.report,s(e,n(o),null,this.iElement[0]);var c=e.setSpin;e.setSpin=function(e){e||t.viewModel.widgetState!==zU.LOADING||t.setState(zU.READY),c(e)}}}},{key:"_loadReport",value:function(e,t){var n=this;return this.prepareScopeForReport(this.$scope),this.$scope.loadReport(e,t).then((function(e){return n.saveServersideCache(e,!0)})).finally((function(){return n.$scope.isReady=!0}))}},{key:"getReportTemplate",value:function(){var e=c.convertToBemName(this.config.report);return n(62158)("./youtrack-report__"+e+"/youtrack-report__"+e+".html")}},{key:"getReportTemplateUrl",value:function(){var e=c.convertToBemName(this.config.report);return"youtrack-report__".concat(e,"/youtrack-report__").concat(e,".html")}},{key:"getReportUrl",value:function(){if(this.isConfigDefined(this.config))return"".concat(this.serviceUrl,"/reports/").concat(this.getReportType(this.config.report),"/").concat(this.config.report.id)}},{key:"listenResize",value:function(){var t=this,n=VR()((function(){t.$scope.$evalAsync((function(){return t.$scope.$broadcast("hub.dashboard.report-widget.resized")}))}),300);e.addEventListener("resize",n),this.$scope.$on("$destroy",(function(){return e.removeEventListener("resize",n)}))}},{key:"onResize",value:function(){this.$scope.$broadcast("hub.dashboard.report-widget.resized")}}],u=[{key:"convertToBemName",value:function(e){return _W(e).replace(/([\A-Z])/g,(function(e){return"-".concat(e.toLowerCase())}))}}],g&amp;&amp;IH(l.prototype,g),u&amp;&amp;IH(l,u),Object.defineProperty(l,"prototype",{writable:!1}),l;var l,g,u}(KU);return a({template:SW(),controller:c})}]);const yH=bH.name;var wH=n(78689),_H=n.n(wH),jH=n(4978),xH=n.n(jH),EH=n(20742),SH=n.n(EH),TH=n(40661);function MH(e){return MH="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},MH(e)}function LH(){LH=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==MH(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function kH(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||NH(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function OH(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function PH(e){return function(e){if(Array.isArray(e))return DH(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||NH(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function NH(e,t){if(e){if("string"==typeof e)return DH(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?DH(e,t):void 0}}function DH(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function RH(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,UH(r.key),r)}}function UH(e){var t=function(e,t){if("object"!==MH(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==MH(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===MH(t)?t:String(t)}function zH(e){return zH=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},zH(e)}function $H(e,t){return $H=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},$H(e,t)}var GH=function(e){function t(e,n,r){var o,i,a,s;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),i=this,s=[e,{searchSideThreshold:300}],a=zH(a=t),o=function(e,t){if(t&amp;&amp;("object"===MH(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(i,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(a,s||[],zH(i).constructor):a.apply(i,s)),e.http.fetchConfig.headers["Hub-API-Version"]="2",o.i18n=n,o.gettextCatalog=r,o.teamsSource=new TH.Z(e,"projectteams",{searchMax:o.options.searchMax,searchSideThreshold:o.options.searchSideThreshold}),o}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;$H(e,t)}(t,e),n=t,r=[{key:"getGroupsSectionTitle",value:function(e){return e.length?this.i18n("Groups",null,"Dashboard"):this.i18n("No groups",null,"Dashboard")}},{key:"getUsersSectionTitle",value:function(e){return e.length?this.i18n("Users",null,"Dashboard"):this.i18n("No users",null,"Dashboard")}},{key:"getTeamsSectionTitle",value:function(e){return e.length?this.i18n("Project teams",null,"Dashboard"):this.i18n("No project teams",null,"Dashboard")}},{key:"getPluralForUserCount",value:function(e){return this.gettextCatalog.getPlural(e,"{{$count}} user","{{$count}} users",{$count:e})}},{key:"getTeams",value:function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:"";return this.teamsSource.get(e,{fields:"id,name,total,userCount,project(iconUrl)",orderBy:"name"})}},{key:"getListWithTitle",value:function(e,t){return[t.length&gt;0&amp;&amp;e].concat(PH(t)).filter((function(e){return!!e}))}},{key:"getUsersGroupsAndTeams",value:function(e){return Promise.all([this.getUsers(e),this.getGroups(e),this.getTeams(e)])}},{key:"getForList",value:(o=LH().mark((function e(t){var n,r,o,i,a,s,c,l,g,u,d,p=this;return LH().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getUsersGroupsAndTeams(t);case 2:return n=e.sent,r=kH(n,3),o=r[0],i=r[1],a=r[2],s={rgItemType:Mp.Z.ListProps.Type.SEPARATOR,key:1,description:this.getGroupsSectionTitle(i)},c=i.map((function(e){return Object.assign(e,{key:e.id,label:e.name,avatar:e.iconUrl,glyph:e.iconUrl?null:av(),description:p.getPluralForUserCount(e.userCount)})})),l={rgItemType:Mp.Z.ListProps.Type.SEPARATOR,key:2,description:this.getTeamsSectionTitle(a)},g=a.map((function(e){return Object.assign(e,{key:e.id,label:e.name,avatar:e.project.iconUrl,glyph:e.project.iconUrl?null:av(),description:p.getPluralForUserCount(e.userCount)})})),u={rgItemType:Mp.Z.ListProps.Type.SEPARATOR,key:3,description:this.getUsersSectionTitle(o)},d=o.map((function(e){return Object.assign(e,{key:e.id,label:e.name,avatar:e.profile?e.profile.avatar.url:null,description:e.login})})),e.abrupt("return",[].concat(PH(this.getListWithTitle(u,d)),PH(this.getListWithTitle(s,c)),PH(this.getListWithTitle(l,g))));case 14:case"end":return e.stop()}}),e,this)})),i=function(){var e=this,t=arguments;return new Promise((function(n,r){var i=o.apply(e,t);function a(e){OH(i,n,r,a,s,"next",e)}function s(e){OH(i,n,r,a,s,"throw",e)}a(void 0)}))},function(e){return i.apply(this,arguments)})}],r&amp;&amp;RH(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r,o,i}(n(4137).Z);function BH(e){return BH="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},BH(e)}function FH(e){return function(e){if(Array.isArray(e))return ZH(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return ZH(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ZH(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ZH(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var YH="EDIT",WH="VIEW",HH=angular.module("dashboard.share.dashboard",["Ring.dialog",zm,TU,fx,pw,Ep]).constant("dashboardPermissionsTypes",{USER_PERMISSION:"UserDashboardPermissionJSON",GROUP_PERMISSION:"UserGroupDashboardPermissionJSON",PROJECT_TEAM_PERMISSION:"ProjectTeamDashboardPermissionJSON"}).run(["$templateCache",function(e){e.put("share__dashboard-popup.html",SH())}]).factory("shareDashboard",["$q","dialog","i18n","gettextCatalog","auth","dashboardPermissionsResource","hubData","currentUser","dashboardPermissionsTypes","$timeout",function(e,t,r,o,i,a,s,c,l,g){var u=l.USER_PERMISSION,d=l.GROUP_PERMISSION,p=l.PROJECT_TEAM_PERMISSION,A={getUsersGroupsSource:function(){return new GH(i.auth,r,o)},shareDashboardPopup:function(e){var n=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:angular.noop,o=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:angular.noop,i=arguments.length&gt;3&amp;&amp;void 0!==arguments[3]?arguments[3]:angular.noop,a=null,s=A.getUsersGroupsSource(),l=ZC()((function(t,n,o){var i=s.getForList(t);a=i,i.then((function(e){return a===i?e:o({})})).then((function(){var t=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:[],n=new Map(e.permissions.map((function(e){return e.user?[e.user.id,e]:e.userGroup?[e.userGroup.id,e]:e.projectTeam?[e.projectTeam.id,e]:[void 0,e]})));return t.forEach((function(e){n.has(e.id)&amp;&amp;(e.disabled=!0,e.label+=" ".concat(r("(already added)",null,"Dashboard")))})),(t=t.filter((function(e){return e.id!==c().id}))).forEach((function(e){"userGroup"===e.type&amp;&amp;(e.rgTagIcon=av())})),t})).then(n)}),250),g={usersAndGroupsDataSource:function(e){var t=e.query;return new Promise((function(e,n){return l(t,e,n)}))},getSharedWith:o,addedUsersAndGroups:[],existPermissions:e.permissions,existGroupPermissions:e.permissions.filter((function(e){return e.type===d})),existUserPermissions:e.permissions.filter((function(e){return e.type===u})),existProjectTeamsPermissions:e.permissions.filter((function(e){return e.type===p})),canUpdate:!1,goToManagePermissions:function(){t.hide(),n()},onAddUserOrGroup:function(e){g.addedUsersAndGroups=[].concat(FH(g.addedUsersAndGroups),[e.tag])},onRemoveUserOrGroup:function(e){g.addedUsersAndGroups=g.addedUsersAndGroups.filter((function(t){return t!==e.tag}))}};return t.show({data:g,title:r('Share "{{dashboardName}}"',{dashboardName:e.name},"Dashboard"),content:"share__dashboard-popup.html",wideDialog:!0,trapFocus:!1,buttons:[{label:r("Share dashboard",null,"Dashboard"),default:!0,action:function(){return i({usersAndGroups:g.addedUsersAndGroups,canUpdate:g.canUpdate})}},{label:r("Cancel",null,"Dashboard")}]}).catch((function(){}))},manageAccessPopup:function(o){var i=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:angular.noop,a=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]&amp;&amp;arguments[2],s=arguments.length&gt;3?arguments[3]:void 0,c={permissions:[],resolved:!1,canChange:a,getGroups:function(){return c.permissions.filter((function(e){return e.type===d}))},getUsers:function(){return c.permissions.filter((function(e){return e.type===u}))},getProjectTeams:function(){return c.permissions.filter((function(e){return e.type===p}))},updateWritePermission:function(e,t){e.isWritable=t,e.permission=t?YH:WH},removePermission:function(e){c.permissions=c.permissions.filter((function(t){return t.id!==e.id}))},addUserOrGroup:function(){t.hide(),g(i)}};return A.resolvePermissionsInfo(o.permissions.map((function(e){return angular.copy(e)}))).then((function(e){return e.forEach((function(e){return e.isWritable=e.permission===YH})),e})).then((function(e){c.permissions=e,c.resolved=!0})),t.show({data:c,wideDialog:!0,title:r('"{{dashboardName}}" is shared with',{dashboardName:o.name},"Dashboard"),template:n(37996),buttons:a?[{label:r("Apply",null,"Dashboard"),default:!0,action:function(){var e=c.permissions,t=new Map(o.permissions.map((function(e){return[e.id,e]}))),n=new Map(e.map((function(e){return[e.id,e]}))),r=o.permissions.filter((function(e){return!n.has(e.id)})),i=e.filter((function(e){return t.has(e.id)&amp;&amp;t.get(e.id).permission!==e.permission}));return s({toDelete:r,toUpdate:i})}},{label:r("Cancel",null,"Dashboard")},{label:r("Add user, group or team",null,"Dashboard"),text:!0,cssClasses:"share__manage-access-text-button",action:function(){return c.addUserOrGroup()}}]:[{label:r("Close",null,"Dashboard")}]}).then((function(t){if(!t)return e.reject("Manage access popup rejected")}))},shareForUserOrGroup:function(e,t,n){var r={user:u,userGroup:d,projectTeam:p};return a.save({dashboardId:e},function(e,t,n){return t=function(e){var t=function(e,t){if("object"!==BH(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==BH(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===BH(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}({permission:n?YH:WH,type:r[t.type]},t.type,{type:t.type,id:t.id})).$promise},addUsersAndGroupsToShare:function(t,n,r){var o=t.map((function(e){return A.shareForUserOrGroup(r.id,e,n)}));return e.all(o)},updatePermissions:function(t){var n=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:[],r=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:[];return e.all([].concat(FH(r.map((function(e){return a.remove({dashboardId:t,permissionId:e.id},e).$promise}))),FH(n.map((function(e){return a.save({dashboardId:t},e).$promise})))))},_getUsersAndGroupsInfoFromHub:function(t,n,r){var o=function(e){return"id:".concat(e.map((function(e){return"{".concat(e,"}")})).join(","))},i=0===t.length?[]:s("/users").get({query:o(t),fields:"id,name,login,profile(avatar/url,email/email)"}).$promise.then((function(e){return e.users||[]})),a=0===n.length?[]:s("/usergroups").get({query:o(n),fields:"id,name,userCount,iconUrl"}).$promise.then((function(e){return e.usergroups||[]})),c=0===r.length?[]:s("/projectteams").get({query:o(r),fields:"id,name,userCount,iconUrl"}).$promise.then((function(e){return e.projectteams||[]}));return e.all({users:i,groups:a,teams:c})},resolvePermissionsInfo:function(e){var t=e.filter((function(e){return e.user})).map((function(e){return e.user.id})),n=e.filter((function(e){return e.userGroup})).map((function(e){return e.userGroup.id})),r=e.filter((function(e){return e.projectTeam})).map((function(e){return e.projectTeam.id}));return A._getUsersAndGroupsInfoFromHub(t,n,r).then((function(t){var n=t.users,r=t.groups,o=t.teams,i=new Map([].concat(FH(n.map((function(e){return[e.id,e]}))),FH(r.map((function(e){return[e.id,e]}))),FH(o.map((function(e){return[e.id,e]})))));return e.forEach((function(e){var t=e.user||e.userGroup||e.projectTeam;e.personality=i.get(t.id)})),e}))}};return A}]).directive("dshManageAccessList",(function(){return{template:n(74223),scope:{getItems:"&lt;",onChangeAccess:"&lt;",onRemove:"&lt;",canUpdate:"&lt;"},bindToController:!0,controllerAs:"listCtrl",controller:["dashboardPermissionsTypes",function(e){var t=e.USER_PERMISSION;this.getIconURL=function(e){return e.type===t?e.personality.profile&amp;&amp;e.personality.profile.avatar.url:e.personality.iconUrl}}]}}));const qH=HH.name;var QH=angular.module("dashboard.share",[qH,"gettext",BI]).factory("shareWidget",["$window","i18n","dialog","hubNotify","gettextCatalog","ServiceList","dashboardRedirectUriResource","hubConfig",function(e,t,r,o,i,a,s,c){return{makeShareUrl:function(t){var n=JSON.stringify(t);return"".concat(e.location.origin+e.location.pathname,"?addwidget=").concat(encodeURIComponent(n))},makeShareStandaloneCode:function(e,t){var n,r,o="hub-widget-container",s=((a.getServices()||[]).filter((function(e){return"0-0-0-0-0"===e.id}))[0]||{}).homeUrl,c=Object.assign({hubBaseUrl:s||"",widgetName:e.id,locale:i.currentLanguage,domContainer:"#".concat(o)},(n=e.grid,{width:(r=function(e){return 144*((n||{})[e]||2)})("width"),height:r("height")}),t);return['&lt;div id="'.concat(o,'"&gt;&lt;/div&gt;'),'&lt;script src="'.concat("https://unpkg.com/hub-externally-embedded-widget@latest/dist/hub-externally-embedded-widget.js",'"&gt;&lt;\/script&gt;'),'&lt;script language="javascript"&gt;',"  (function() {","    var installationProperties = ".concat(JSON.stringify(c),";"),"    var widgetConfig = ".concat(JSON.stringify(e.config.customWidgetConfig),";"),"    HubExternallyEmbeddedWidget.init(installationProperties, widgetConfig);","  })();","&lt;\/script&gt;"].join("\n")},share:function(e,o){var i,a,s,c=_H()(e,(function(e){return e.config===o}));if(!c)throw new Error("Can't find widget to share");delete(c=eZ()(c)).grid,delete c.$$hashKey,i=this.makeShareUrl(c),a=t("Link was successfully copied to clipboard",null,"Dashboard"),s=function(){return l(i,a,(function(){return r.done()}))},r.show({title:t("Share Link",null,"Dashboard"),data:{link:i,copyAction:s},template:n(77565),buttons:[{label:t("Copy",null,"Dashboard"),close:!1,default:!0,action:s},{label:t("Cancel",null,"Dashboard")}]})},shareAsExternal:function(e,i,g){var u=_H()(e,(function(e){return e.config===i}));if(!u)throw new Error("Can't find widget to share for external web page");var d=this.makeShareStandaloneCode(u,g),p=g.authClientId||"0-0-0-0-0",A=(a.getServices()||[]).filter((function(e){return e.id===p}))[0];A?function(e,i,a){var g=!c.embedded&amp;&amp;{href:"services/".concat(i.id),title:t("View {{serviceName}} settings",{serviceName:i&amp;&amp;i.applicationName||""})},u=new RegExp(/http[s]?:(\/\/)[^\/][^\s]*[.][^\s]+/i),d={uriRegExp:{fn:function(e){return!e||u.test(e)},message:function(){return t("Type a valid URI")}}};r.show({title:t("Copy Widget Code",null,"Dashboard"),data:{code:e,descriptionLink:g,copyAction:function(){return l(e,a)},uriValidator:d},template:n(92860),buttons:[{label:t("Submit and copy",null,"Dashboard"),close:!1,default:!0,action:function(t){var n,c=(t||{}).targetPageUri;c?(n=c,s.save({id:i.id},{redirectURI:n}).$promise.then((function(){return s.accept({id:i.id,subId:n}).$promise})).then((function(){o.success("New redirect URI added")})).catch((function(){o.error("Failed to add new redirect URI")})).then((function(){return l(e,a)})).finally((function(){return r.done()}))):l(e,a,(function(){return r.done()}))}},{label:t("Cancel",null,"Dashboard")}]})}(d,A,t("Code was successfully copied to clipboard",null,"Dashboard")):o.warning(t("Failed to open copy code dialog: widget is referenced to unknown service"))},insert:function(e,t){var n=JSON.parse(t);delete n.$$hashKey,e.push(n)}};function l(e,n,r){PI().copy(e).then((function(){o.success(n),angular.isFunction(r)&amp;&amp;r()}),o.errorHandler(t("Your browser doesn't support copying to clipboard")))}}]).factory("exportImportDashboard",["$window","i18n","shareWidget",function(e,t,n){return{makeShareCode:function(e){return JSON.stringify(e)},share:function(n){e.prompt(t("Copy this code to import your configuration into another dashboard",null,"Dashboard"),this.makeShareCode(n))},importDashboard:function(r){var o=e.prompt(t("Insert the code of an exported dashboard configuration",null,"Dashboard"));try{var i=JSON.parse(o);xH()(i,(function(e){n.insert(r,JSON.stringify(e))}))}catch(e){s.Z.error(t("Cannot process the provided code. Please try to export the desired dashboard again and use new generated code.",null,"Dashboard"))}}}}]);const VH=QH.name,KH=angular.module("dashboard.dashboard-select",[]).directive("selectClickOn",(function(){return{restrict:"A",link:function(e,t,n){e.$on(n.selectClickOn,(function(){return t.controller("rgSelect").selectInstance._clickHandler()}))}}})).name;function JH(e){return JH="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},JH(e)}function XH(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function eq(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?XH(Object(n),!0).forEach((function(t){tq(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):XH(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function tq(e,t,n){return t=function(e){var t=function(e,t){if("object"!==JH(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==JH(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===JH(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var nq=angular.module("HUB.shortcuts-loader",["HUB.i18n",Je]);nq.service("shortcutsLoader",["shortcuts","i18n",function(e,t){this.addModes=function(n){var r=function(e){return"string"==typeof e?e:e[WC.os.name||"windows"]};n(t).forEach((function(t){var n=t.shortcuts.map((function(e){return eq(eq({},e),{},{key:r(e.key)})}));e.addMode(eq(eq({},t),{},{shortcuts:n}))}))}}]);const rq=nq.name;var oq=n(30523),iq=n.n(oq);function aq(e){return function(e){if(Array.isArray(e))return sq(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return sq(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?sq(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function sq(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var cq=angular.module("dashboard.buttons",["Ring.select",fx,TU]).factory("dshGetWidgetsPageURL",(function(){return function(){return"widgets"}})).controller("DashboardButtons",["$rootScope","$scope","i18n","widgetsRegistry","ServiceList","userPermissions","dshGetWidgetsPageURL","dashboardResource",function(e,t,n,r,o,s,c,l){var g=this,u=this;u.permissionsDetected=!1,u.importWidgetsEnabled=!!u.onImport,u.addWidgetDropdownConfig={maxHeight:380,minWidth:160,filter:{placeholder:n("Filter items")},popupClassName:"dashboard-buttons__add-widget-popup"},u.importWidgetsDropdownConfig={maxHeight:380,minWidth:160},s.check("jetbrains.jetpass.low-level-read").then((function(e){e&amp;&amp;(u.addWidgetDropdownConfig.hint=i.createElement("span",null,i.createElement(a.Z,{href:c(),className:"dashboard-buttons__get-more-widgets"},n("Get more widgets")))),u.permissionsDetected=!0,t.$applyAsync()})),u.isServiceSupported=function(e){return o.isServiceSupported(e)},u.groupWidgetsByApplication=function(e){var t=[];return e.undefined&amp;&amp;(t=t.concat(e.undefined)),Object.keys(e).forEach((function(n){"undefined"!==n&amp;&amp;u.isServiceSupported(n)&amp;&amp;(t.push({rgItemType:rC.Z.ListProps.Type.SEPARATOR,description:n,key:n}),t=t.concat(e[n]))})),t};var d=new Set(["Hub","YouTrack","Upsource","TeamCity"]);u.getDropdownItems=function(){var e=r.getList(),t=e.filter((function(e){return!e.custom||d.has(e.applicationName)})),o=e.filter((function(e){return e.custom&amp;&amp;!d.has(e.applicationName)})),i=Uw()(t,"applicationName"),a=Object.keys(i).length&gt;0?this.groupWidgetsByApplication(i):t,s=0===o.length?[]:[{rgItemType:rC.Z.ListProps.Type.SEPARATOR,description:n("Custom widgets"),key:"custom"}].concat(aq(o));return[].concat(aq(a),aq(s))},u.isWindows=function(){return"macos"!==WC.os.name},o.loadServices().then((function(){u.widgetList=u.getDropdownItems()})),u.importWidgetsEnabled&amp;&amp;(new l).$get({fields:"id,name,favorite,ordinal,owner(login,name)",$top:-1}).then((function(e){var t=e.items;u.dashboardList=t})),u.createWidget=function(t){if(nm.createDashboardWidget(t.directive),g.onCreate)return g.onCreate(t);e.$broadcast("hub:dashboard:create_widget",t)},u.importWidgets=function(e){return new l({id:e.id}).$get({fields:"id,data"}).then((function(e){var t=e.data;return g.onImport(t.widgets||[])}))}}]).directive("dashboardButtons",(function(){return{restrict:"E",template:n(75548),controllerAs:"btnCtrl",controller:"DashboardButtons",bindToController:!0,scope:{onImport:"=",onCreate:"="}}}));const lq=cq.name;n(69335),n(62727);var gq=n(3225),uq=n.n(gq);function dq(e){return dq="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},dq(e)}function pq(e){return function(e){if(Array.isArray(e))return Aq(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Aq(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Aq(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Aq(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function Cq(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,mq(r.key),r)}}function Iq(e){return Iq=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Iq(e)}function fq(e,t){return fq=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},fq(e,t)}function mq(e){var t=function(e,t){if("object"!==dq(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==dq(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===dq(t)?t:String(t)}iq().polyfill();var hq="widget-active",vq="[".concat(hq,"]"),bq=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];var i=(e=function(e,t,n){return t=Iq(t),function(e,t){if(t&amp;&amp;("object"===dq(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],Iq(e).constructor):t.apply(e,n))}(this,t,[].concat(r))).$inject,a=i.$scope,s=i.$element;return e.element=s[0],a.$on("dashboard:widget-navigation",(function(t,n){e.actions[n]()})),a.$on("dashboard:widget-navigation-deselect",(function(){var t=e.element.querySelector(vq);t&amp;&amp;t.removeAttribute(hq)})),e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;fq(e,t)}(t,e),n=t,(r=[{key:"activateWidget",value:function(e,t){var n=t||this.getHorizontallySortedWidgets()[0];e&amp;&amp;e.removeAttribute(hq),n&amp;&amp;(n.setAttribute(hq,!0),n.scrollIntoView({block:"end",behavior:"smooth"}))}},{key:"actions",get:function(){var e=this;return{left:function(){var t=e.element.querySelector(vq),n=e.getPreviousHorizontally(t);e.activateWidget(t,n)},right:function(){var t=e.element.querySelector(vq),n=e.getNextHorizontally(t);e.activateWidget(t,n)},up:function(){var t=e.element.querySelector(vq),n=e.getPreviousVertically(t);e.activateWidget(t,n)},down:function(){var t=e.element.querySelector(vq),n=e.getNextVertically(t);e.activateWidget(t,n)}}}},{key:"getWidgetElements",value:function(){return Array.from(this.element.querySelectorAll("[gridster-item]"))}},{key:"getHorizontallySortedWidgets",value:function(){var e=this.getWidgetElements();return e.sort((function(e,t){var n=parseInt(e.style.top,10)-parseInt(t.style.top,10);return 0===n||isNaN(n)?parseInt(e.style.left,10)-parseInt(t.style.left,10):n})),e}},{key:"getVerticallySortedWidgets",value:function(){var e=this.getWidgetElements();return e.sort((function(e,t){var n=parseInt(e.style.left,10)-parseInt(t.style.left,10);return 0===n||isNaN(n)?parseInt(e.style.top,10)-parseInt(t.style.top,10):n})),e}},{key:"getPreviousHorizontally",value:function(e){var t=this.getHorizontallySortedWidgets(),n=t.indexOf(e);return n&gt;0?t[n-1]:null}},{key:"getNextHorizontally",value:function(e){var t=this.getHorizontallySortedWidgets(),n=t.indexOf(e);return n&lt;t.length-1?t[n+1]:null}},{key:"getPreviousVertically",value:function(e){var t=this.getVerticallySortedWidgets(),n=t.indexOf(e);return n&gt;0?t[n-1]:null}},{key:"getNextVertically",value:function(e){var t=this.getVerticallySortedWidgets(),n=t.indexOf(e);return n&lt;t.length-1?t[n+1]:null}}])&amp;&amp;Cq(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(p);!function(e,t,n){(t=mq(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(bq,"$inject",["$scope","$element"]);const yq=angular.module("dashboard.widget-gridster.navigation-helper",[]).directive("widgetGridsterNavigationHelper",(function(){return{restrict:"A",controllerAs:"widgetNavigationCtrl",controller:[].concat(pq(bq.$inject),[bq])}})),wq=angular.module("dashboard.widget-gridster",["gridster",yq.name]).directive("dshGridsterNoDrag",(function(){return{restrict:"A",link:function(e,t){t.attr("ng-click","false")}}})).directive("dshGridScrollCompensator",(function(){return{restrict:"A",link:function(e,t){var n=t[0],r=uq()();if(0!==r){var o=window.getComputedStyle(n).marginRight;window.addResizeListener&amp;&amp;window.addResizeListener(n,(function(){if(document.body.offsetHeight&lt;document.body.scrollHeight){var e=parseInt(o)-r;n.style.marginRight="".concat(e,"px")}else n.style.marginRight=o}))}}}})).name;function _q(e){return _q="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},_q(e)}function jq(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function xq(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?jq(Object(n),!0).forEach((function(t){Eq(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):jq(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Eq(e,t,n){return t=function(e){var t=function(e,t){if("object"!==_q(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==_q(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===_q(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Sq(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}iq().polyfill();const Tq=angular.module("dashboard",[wq,GU,lq,"Ring.confirm","Ring.dialog",VH]).directive("dashboard",(function(){return{restrict:"E",replace:!0,template:n(75344),scope:{dashboard:"=",config:"=",onSave:"&amp;"},bindToController:!0,controllerAs:"dshCtrl",controller:["$window","$scope","$element","$location","$routeParams","i18n","DashboardConfigUpdater","$timeout","scrollToLastWidget","confirm","shareWidget","widgetsRegistry","exportImportDashboard",function(e,t,n,r,o,c,l,g,u,d,p,A,C){var I=this;I.customItemMap=bx,I.createWidget=function(e,t){var r=Zx(e,t,c);return I.dashboard.widgets=[].concat(function(e){return function(e){if(Array.isArray(e))return Sq(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Sq(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Sq(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(I.dashboard.widgets||[]),[r]),u(n[0]),I.saveDashboardConfig(),r},I.removeWidget=function(e){var n;nm.removeDashboardWidget(e.directive);try{n=A.getLabel(e.id)}catch(t){try{n=A.getLabel(e.directive)}catch(t){n=e.directive}}function r(){I.dashboard.widgets.push(e)}return I.dashboard.widgets.splice(I.dashboard.widgets.indexOf(e),1),I.saveDashboardConfig().then((function(){if(!e.config.notCompleted){var o=i.createElement(a.Z,{key:"restore-link",onClick:function(){return nm.restoreDashboardWidget(e.directive),t.$evalAsync((function(){return r()})),I.saveDashboardConfig()}},c("Restore",null,"Dashboard"));s.Z.message([c('Widget "{{ widgetName }}" has been removed.',{widgetName:n},"Dashboard")," ",o])}})).catch(r)},I.shouldShowWidget=function(e){return I.config.editable||!e.config.notCompleted},I.saveDashboardConfig=function(){return nm.saveDashboardConfig(),I.onSave()},t.$on("hub:dashboard:save-dashboard-config",I.saveDashboardConfig),I.updateWidgetSize=function(e){g((function(){t.$broadcast("hub.dashboard.widgetResized",{gridsterNode:e[0]})}))},I.addSharedWidget=function(e){o.addwidget&amp;&amp;(p.insert(e.widgets,o.addwidget),r.url(""),I.saveDashboardConfig(),u(n[0]))},I.gridsterOptions=xq(xq({},vx),{},{columns:I.config.columnsCount||vx.columns,resizable:{get enabled(){return I.config.editable},resize:function(e,t){I.updateWidgetSize(t)},stop:function(e,t){g((function(){I.updateWidgetSize(t)}),300),I.saveDashboardConfig(),nm.resizeDashboardWidget()}},draggable:{get enabled(){return I.config.editable},handle:".widget__header_draggable",stop:function(){I.saveDashboardConfig(),nm.dragDashboardWidget();var e=n[0],t=angular.element(e.querySelector(".widget-gridster")).controller("gridster"),r=e.querySelectorAll("*[gridster-item]");Array.from(r).forEach((function(e){var n=angular.element(e).controller("gridsterItem");t.moveOverlappingItems(n)}))}}}),I.addSharedWidget(I.dashboard),t.$on("hub:dashboard:create_widget",(function(e,n){var r=I.createWidget(n,xq({service:I.config.predefinedService},n.config||{}));n.custom||g((function(){return t.$broadcast("hub.dashboard.make-widget-modal",{createdWidget:r})}))})),t.$on("dashboard:share-as-external-widget",(function(e,t,n){p.shareAsExternal(I.dashboard.widgets,t,n)})),t.$on("dashboard:share-widget",(function(e,t){p.share(I.dashboard.widgets,t)})),t.$on("dashboard:clone-widget",(function(e,t){var n=_H()(I.dashboard.widgets,(function(e){return e.config===t})),r=JSON.parse(JSON.stringify(n));r.config=r.config||{},r.config.created=(new Date).toISOString(),p.insert(I.dashboard.widgets,JSON.stringify(r)),I.onSave()})),t.$on("dashboard:import-dashboard",(function(){t.$evalAsync((function(){C.importDashboard(I.dashboard.widgets)}))})),t.$on("dashboard:export-dashboard",(function(){C.share(I.dashboard.widgets)})),e.addEventListener("online",(function(){t.$broadcast("widget:force-refresh")}))}]}})).factory("DashboardConfigUpdater",(function(){return{isOutdated:function(e){return 4===e.version||e.columns},isEmpty:function(e){return!e.columns&amp;&amp;!e.widgets&amp;&amp;!e.version},getWidgets:function(e){var t=[];return e.columns.forEach((function(e){t=t.concat(e)})),t}}})).directive("dashboardWidget",["$compile","$parse","widgetsRegistry","ServiceList",function(e,t,n,r){var o="name";return{restrict:"E",link:function(i,a,s){var c=t(s.widgetId)(i),l=n.get(c),g=t(s[o])(i),u=Array.from(a[0].attributes).map((function(e){if(e.nodeName!==o)return"".concat(e.nodeName,'="').concat(e.value||"",'"')})),d=n.getList().some((function(e){return e.directive===g}));if(l&amp;&amp;d){var p=n.get(c).applicationName;!p||r.isServiceSupported(p)||l.custom||(u.push('widget-name="'.concat(n.get(c).label,'"')),u.push('service-name="'.concat(p,'"')),g="widget-unrecognized")}else u.push('widget-name="'.concat(c,'"')),g="widget-unrecognized";var A="&lt;".concat(g," ").concat(u.join(" "),"&gt;&lt;/").concat(g,"&gt;");a.replaceWith(e(A)(i))}}}]).factory("scrollToLastWidget",["$timeout",function(e){return function(t){e((function(){t.querySelector(".gridster-item:last-child").scrollIntoView({block:"end",behavior:"smooth"})}))}}]);var Mq=n(50958),Lq=n(67945),kq=n.n(Lq);function Oq(e){return Oq="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Oq(e)}function Pq(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,Uq(r.key),r)}}function Nq(e){return Nq=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Nq(e)}function Dq(e,t){return Dq=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Dq(e,t)}function Rq(e,t,n){return(t=Uq(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Uq(e){var t=function(e,t){if("object"!==Oq(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Oq(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Oq(t)?t:String(t)}var zq=(0,Mq.W8)((function(e){var t=e.name,n=e.owner;return i.createElement("div",{className:"dashboard-reorder__item"},i.createElement(da.ZP,{glyph:kq(),className:"dashboard-reorder__item__drag",size:da.ZP.Size.Size14,suppressSizeWarning:!0}),i.createElement("span",{style:{flexGrow:1},"data-test":"reorder-item-name"},t),i.createElement("span",{className:"dashboard-reorder__item__owner"},n))})),$q=(0,Mq.JN)((function(e){var t=e.dashboards,n=e.getOwner;return i.createElement("div",null,t.map((function(e,t){return i.createElement(zq,{key:"item-".concat(t),index:t,name:e.name,owner:n(e)})})))})),Gq=function(e){function t(e){var n,r,o,i;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),Rq((r=this,i=[e],o=Nq(o=t),n=function(e,t){if(t&amp;&amp;("object"===Oq(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(r,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(o,i||[],Nq(r).constructor):o.apply(r,i))),"state",{dashboards:null}),Rq(n,"onSortEnd",(function(e){var t=e.oldIndex,r=e.newIndex,o=(0,Mq.Rp)(n.state.dashboards,t,r);n.setState({dashboards:o},(function(){return n.props.onReorder(o)}))})),Rq(n,"getOwner",(function(e){var t=n.props,r=t.currentUser,o=t.translations;return r.id===e.owner.id?o.ownerIsYou:e.owner.login})),n.state={dashboards:e.dashboards},n}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;Dq(e,t)}(t,e),n=t,(r=[{key:"render",value:function(){return i.createElement("div",null,i.createElement("div",{className:"dashboard-reorder__hint"},this.props.translations.hint),i.createElement($q,{getOwner:this.getOwner,helperClass:"dashboard-reorder__container",dashboards:this.state.dashboards,onSortEnd:this.onSortEnd}))}}])&amp;&amp;Pq(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(i.Component);Rq(Gq,"propTypes",{dashboards:Zg().array,currentUser:Zg().object,onReorder:Zg().func,translations:Zg().object}),Rq(Gq,"defaultProps",{translations:{ownerIsYou:"You",hint:"Drag a field to configure the order"}});const Bq=oo(Gq,"SortableDashboards").name;function Fq(e){return Fq="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Fq(e)}function Zq(){Zq=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==Fq(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function Yq(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function Wq(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Yq(i,r,o,a,s,"next",e)}function s(e){Yq(i,r,o,a,s,"throw",e)}a(void 0)}))}}var Hq=angular.module("dashboard.dashboard-list.reorder-favorite",[Bq]);Hq.factory("dashboardListReorderFavorite",["$q","$route","auth","i18n","dialog","dashboardPageService",function(e,t,r,o,i,a){return{showDialog:(s=Wq(Zq().mark((function e(s){var c,l,g,u;return Zq().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return c=null,l=function(e){c=angular.equals(s,e)?null:e},e.next=4,r.auth.requestUser();case 4:g=e.sent,u={ownerIsYou:o("You",null,"Dashboard: you are the owner of dashboard"),hint:o("To reorder your personal list, drag a dashboard by its handle",null,"Dashboard")},document.body.dispatchEvent(new MouseEvent("click",{view:window,bubbles:!0,cancelable:!0})),i.show({data:{onReorder:l,currentUser:g,dashboards:s.filter((function(e){return e.favorite})).map((function(e){return{id:e.id,name:e.name,owner:e.owner}})),translations:u},title:o("Reorder Favorite Dashboards",null,"Dashboard"),template:n(13913),buttons:[{label:o("Apply",null,"Dashboard"),default:!0,action:function(){var e=Wq(Zq().mark((function e(){return Zq().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!c){e.next=4;break}return e.next=3,a.orderDashboards(c);case 3:t.reload();case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()},{label:o("Cancel",null,"Dashboard")}]});case 8:case"end":return e.stop()}}),e)}))),function(e){return s.apply(this,arguments)})};var s}]);const qq=Hq.name;function Qq(e){return Qq="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},Qq(e)}function Vq(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Kq(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,Xq(r.key),r)}}function Jq(e,t,n){return t&amp;&amp;Kq(e.prototype,t),n&amp;&amp;Kq(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function Xq(e){var t=function(e,t){if("object"!==Qq(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Qq(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Qq(t)?t:String(t)}var eQ=Mp.Z.ListProps.Type.CUSTOM,tQ=angular.module("dashboard.dashboard-list",[qq,"ngRoute"]),nQ=function(){return Jq((function e(t,n,r,o){var i=this;Vq(this,e),function(e,t,n){(t=Xq(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(this,"favoriteIconClickHandler",(function(e){e.stopPropagation(),i.onFavoriteClick(i._dashboard)})),this._dashboard=t,this.isNewlyShared=n,this.ownerName=r,this.onFavoriteClick=o,this.rgItemType=eQ,this.key=t.id,this.label=this._dashboard.name,this.template=this.constructTemplate()}),[{key:"_getSharedIcon",value:function(){if(!this._dashboard.permissions.length)return null;var e="dashboard-list__group-icon".concat(this.isNewlyShared?" dashboard-list__group-icon_active":"");return i.createElement(da.ZP,{className:e,glyph:av(),size:da.ZP.Size.Size14})}},{key:"_getFavoriteIcon",value:function(){if(!this.onFavoriteClick)return null;var e=Wg()("dashboard-list__favorite-icon");return i.createElement(bi.ZP,{className:e,"data-test":"favorite-icon","data-test-is-favorite":this._dashboard.favorite,primary:this._dashboard.favorite,icon:F$(),onClick:this.favoriteIconClickHandler})}},{key:"constructTemplate",value:function(){return i.createElement("span",{className:"dashboard-list__item"},this._getSharedIcon(),i.createElement(a.Z,{className:"dashboard-list__link",href:"dashboard?id=".concat(this._dashboard.id),title:this._dashboard.name},this._dashboard.name),i.createElement("span",{className:"dashboard-list__owner",title:this.ownerName},this.ownerName),this._getFavoriteIcon())}}])}(),rQ=function(){return Jq((function e(t,n,r){var o=arguments.length&gt;3&amp;&amp;void 0!==arguments[3]?arguments[3]:"list-header";Vq(this,e),this.onClick=r,this.text=t,this.linkText=n,this.rgItemType=eQ,this.key=o||"dashboard-list-shared-header",this.disabled=!0,this.className="dashboard-list__shared-header",this.testKey=o,this.template=this.constructTemplate()}),[{key:"clickHandler",value:function(e){return e.preventDefault(),e.stopPropagation(),this.onClick()}},{key:"constructTemplate",value:function(){return i.createElement("span",null,i.createElement("span",{className:"dashboard-list__shared-header-text"},this.text),i.createElement(bi.ZP,{text:!0,inline:!0,className:"dashboard-list__dismiss","data-test":this.testKey,onClick:this.clickHandler.bind(this)},this.linkText))}}])}();tQ.factory("dashboardList",["gettextCatalog","i18n","dashboardListReorderFavorite",function(e,t,n){var r={isNewlyShared:function(e){return null===e.favorite||void 0===e.favorite},getNewlySharedCount:function(e){return(e||[]).filter((function(e){return r.isNewlyShared(e)})).length},sortDashboards:function(e){return e.sort((function(e,t){return e.favorite!==t.favorite?r.isNewlyShared(e)?-1:r.isNewlyShared(t)?1:t.favorite-e.favorite:e.ordinal-t.ordinal})),e},addSplitters:function(e){return(e||[]).reduce((function(t,n,o){t.push(n);var i=e[o+1];return i&amp;&amp;i.favorite!==n.favorite&amp;&amp;!r.isNewlyShared(i)&amp;&amp;t.push({rgItemType:Mp.Z.ListProps.Type.SEPARATOR,key:"separator-".concat(n.id)}),t}),[])},addSharedHeaderIfNeeded:function(n,r,o){if(r&gt;0){var i=e.getPlural(r,"{{$count}} new shared dashboard","{{$count}} new shared dashboards",{$count:r});n.unshift(new rQ(i,t("Dismiss",null,"Dashboard"),o,"dismiss-new-dashboards-link"))}return n},addReorderDashboards:function(e,n){var r=function(e){return e.favorite};if(e.filter(r).length&gt;1){var o=new rQ("",t("Reorder favorite dashboards...",null,"Dashboard"),n,"reorder-dashboards-link");e.splice(e.findIndex(r),0,o)}return e},getList:function(e,t,o,i,a){var s=r.getNewlySharedCount(e);return e=e||[],e=r.addSplitters(r.sortDashboards(e)),o||(e=r.addSharedHeaderIfNeeded(e,s,a)),(e=r.addReorderDashboards(e,(function(){return n.showDialog(e)}))).map((function(e){if("rgItemType"in e)return e;var n=!o&amp;&amp;r.isNewlyShared(e);return new nQ(e,n,t.get(e.owner.id),i)}))}};return r}]);const oQ=tQ.name,iQ=angular.module("ring.dashboard.app.dashboard-page.default-widgets",[vd,pw]).factory("defaultWidgets",["ServiceList","defaultQuickNotesText",function(e,t){var n=function(e,t){return _H()(e,(function(e){return e.applicationName===t}))},r={getIssuesWidget:function(){if(e.isServiceSupported(Tl)){var t=n(e.getServices(),Tl);return{directive:"widget-custom",id:"youtrack-issues-list",config:{customWidgetConfig:{youTrack:{id:t.id,homeUrl:t.homeUrl},search:"Assignee: me #Unresolved"}},grid:{x:0,y:0,width:2,height:4}}}},getInvestigationsWidget:function(){if(e.isServiceSupported(Sl)){var t=n(e.getServices(),Sl);return{directive:"widget-custom",id:"teamcity-investigations",config:{customWidgetConfig:{teamcityService:{id:t.id,homeUrl:t.homeUrl}}},grid:{x:6,y:2,width:2,height:2}}}},getReviewsWidget:function(){if(e.isServiceSupported(El)){var t=n(e.getServices(),El);return{directive:"widget-upsource-reviews",id:"widget-upsource-reviews",config:{service:{id:t.id,text:t.homeUrl},query:"#my and state: open"},grid:{x:6,y:0,width:2}}}},constructInitialWidgets:function(){var e=[{directive:"widget-custom",id:"quick-notes",config:{customWidgetConfig:{message:t}},grid:{x:2,y:0,width:4,height:4}}],n=r.getIssuesWidget(),o=r.getReviewsWidget(),i=r.getInvestigationsWidget();return n&amp;&amp;e.push(n),o&amp;&amp;e.push(o),i&amp;&amp;e.push(i),e}};return r}]).factory("defaultQuickNotesText",["ServiceList","i18n",function(e,t){var n=function(t){return e.getServices().filter((function(e){return e.applicationName===t})).length&gt;0},r="".concat(t("## Welcome to Dashboard\n***\nClick Add Widget to place a widget on your Dashboard.",null,"Dashboard"),"\n");return n(Sl)&amp;&amp;(r+="".concat(t("* Fresh TeamCity artifacts, investigations assigned to you, or TeamCity project's status."),"\n")),n(El)&amp;&amp;(r+="".concat(t("* Latest commits and reviews in Upsource.",null,"Dashboard"),"\n")),n(Tl)&amp;&amp;(r+="".concat(t("* Keep an eye on your progress with YouTrack reports.\n* View your tasks, critical issues or any kind of issues list from YouTrack.",null,"Dashboard"),"\n")),r+t("* Add Quick Notes for a list of ideas or simple reminders.\n\nDrag your widgets around to organize the Dashboard.\n\n![](welcome.png)",null,"Dashboard")}]);var aQ=n(92880),sQ=n.n(aQ),cQ=n(74357),lQ=n.n(cQ),gQ=angular.module("dashboard.widget-move",["Ring.dialog",vd,TU,fx]).service("widgetMoveDialog",["$q","dialog","i18n","isDashboardEditable",function(e,t,n,r){return function(o,i,a){var s={dashboards:i.filter(r).filter((function(e){return e.id!==o.id})).map((function(e){return{key:e.id,label:e.name,description:a.get(e.owner.id),_dashboard:e}})),selectedDashboard:null};return t.show({data:s,title:n("Move the widget to another dashboard",null,"Dashboard"),template:lQ(),buttons:[{label:n("Move",null,"Dashboard"),default:!0,action:function(){return s}},{label:n("Cancel",null,"Dashboard")}]}).then((function(t){return t?s.selectedDashboard._dashboard:e.reject()}))}}]);const uQ=gQ.name;var dQ=n(61273),pQ=n.n(dQ);function AQ(e){return AQ="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},AQ(e)}function CQ(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function IQ(){IQ=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==AQ(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function fQ(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function mQ(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,bQ(r.key),r)}}function hQ(e){return hQ=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},hQ(e)}function vQ(e,t){return vQ=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},vQ(e,t)}function bQ(e){var t=function(e,t){if("object"!==AQ(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==AQ(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===AQ(t)?t:String(t)}var yQ="RING.DASHBOARD_ID_STORAGE_KEY",wQ=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var n=arguments.length,r=new Array(n),o=0;o&lt;n;o++)r[o]=arguments[o];var i=(e=function(e,t,n){return t=hQ(t),function(e,t){if(t&amp;&amp;("object"===AQ(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){return!1}}()?Reflect.construct(t,n||[],hQ(e).constructor):t.apply(e,n))}(this,t,[].concat(r))).$inject,a=i.$q,s=i.$window,c=i.dashboardResource,l=i.dialog,g=i.i18n,u=i.shareDashboard,d=i.currentUser,p=i.widgetMoveDialog;return e.$q=a,e.dashboardResource=c,e.dialog=l,e.i18n=g,e.shareDashboard=u,e.currentUser=d,e.widgetMoveDialog=p,e.storage=s.localStorage,e}return function(e,t){if("function"!=typeof t&amp;&amp;null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&amp;&amp;vQ(e,t)}(t,e),n=t,r=[{key:"createNewDashboard",value:function(e,t){var n=this,r=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:[];return this.$q.when(e||this.dashboardNameDialog(null,t)).then((function(e){if(e)return n.dashboardResource.save({type:"DashboardJSON",name:e,data:{widgets:r}}).$promise}))}},{key:"setFavorite",value:function(e,t){var n=this;return this.dashboardResource.save({id:e.id,type:e.type,favorite:t}).$promise.catch((function(e){return s.Z.message(n.i18n("Can't connect to dashboard backend",null,"Dashboard")),n.$q.reject(e)}))}},{key:"updateDashboard",value:function(e){var t=this;return this.dashboardResource.save(e).$promise.catch((function(e){return s.Z.message(t.i18n("Can't connect to dashboard backend",null,"Dashboard")),t.$q.reject(e)}))}},{key:"orderDashboards",value:(o=IQ().mark((function e(t){return IQ().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,this.dashboardResource.order(t).$promise;case 3:return e.abrupt("return",e.sent);case 6:return e.prev=6,e.t0=e.catch(0),s.Z.message(this.i18n("Can't connect to dashboard backend",null,"Dashboard")),e.abrupt("return",this.$q.reject(e.t0));case 10:case"end":return e.stop()}}),e,this,[[0,6]])})),a=function(){var e=this,t=arguments;return new Promise((function(n,r){var i=o.apply(e,t);function a(e){fQ(i,n,r,a,s,"next",e)}function s(e){fQ(i,n,r,a,s,"throw",e)}a(void 0)}))},function(e){return a.apply(this,arguments)})},{key:"fillDashboardNames",value:function(e){var t=this;return e.forEach((function(e){e.name=e.name||t.i18n("Dashboard",null,"Dashboard")})),e}},{key:"dashboardNameDialog",value:function(e){var t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:[],n=null===e;function r(e){return t.includes(e)}t=t.filter((function(t){return t!==e}));var o={name:e,isNameExist:r};return this.dialog.show({data:o,title:n?this.i18n("New Dashboard",null,"Dashboard"):this.i18n("Rename Dashboard",null,"Dashboard"),content:"dashboard-page__name-dialog.html",buttons:[{label:n?this.i18n("Create",null,"Dashboard"):this.i18n("Save",null,"Dashboard"),default:!0,action:function(){return!r(o.name)&amp;&amp;o.name}},{label:this.i18n("Cancel",null,"Dashboard")}]})}},{key:"getEditDashboardOptions",value:function(e,t){var n=[{key:"rename",label:this.i18n("Rename",null,"Dashboard")}];return t&amp;&amp;(n=n.concat([{key:"remove",template:i.createElement("span",{className:"dashboard-page__dashboard-dropdown-delete"},this.i18n("Delete",null,"Dashboard")),rgItemType:Mp.Z.ListProps.Type.CUSTOM}])),n}},{key:"moveWidgetBetweenDashboards",value:function(e,t,n){var r=this;return n._isMoving=!0,this.getOwnersForDashboards(t).then((function(n){return r.widgetMoveDialog(e,t,n)})).then((function(r){delete n._isMoving;var o=_H()(t,(function(e){return e.id===r.id})),i=e.data.widgets,a=_H()(i,(function(e){return e.config===n})),s=i.indexOf(a);return i.splice(s,1),o.data.widgets.push(a),o})).then((function(t){return r.updateDashboard(t).then((function(){return r.updateDashboard(e)})).then((function(){return t}))})).finally((function(){return delete n._isMoving}))}},{key:"getOwnersForDashboards",value:function(){var e=this,t=new Map((arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:[]).map((function(e){return[e.owner.id,""]})));return this.shareDashboard._getUsersAndGroupsInfoFromHub(Array.from(t.keys()),[],[]).then((function(n){return n.users.forEach((function(n){t.has(n.id)&amp;&amp;t.set(n.id,e.currentUser().id===n.id?e.i18n("You",null,"Dashboard"):n.name)})),t}))}},{key:"getTargetUsersOrGroupCounts",value:function(e){var t=this.$inject.gettextCatalog,n=e.users,r=e.groups,o=e.projectTeams,i=[];switch(n&gt;0&amp;&amp;i.push(t.getPlural(n,"{{ usersCount }} user","{{ usersCount }} users",{usersCount:n},"Dashboard")),r&gt;0&amp;&amp;i.push(t.getPlural(r,"{{ groupsCount }} group","{{ groupsCount }} groups",{groupsCount:r},"Dashboard")),o&gt;0&amp;&amp;i.push(t.getPlural(o,"{{ projectTeamsCount }} project team","{{ projectTeamsCount }} project teams",{projectTeamsCount:o},"Dashboard")),i.length){case 3:return this.i18n("{{ usersCountString }}, {{ groupsCountString }}, and {{ teamsCountString }}",{usersCountString:i[0],groupsCountString:i[1],teamsCountString:i[2]},"Dashboard");case 2:return this.i18n("{{ usersCountString }} and {{ groupsCountString }}",{usersCountString:i[0],groupsCountString:i[1]},"Dashboard");case 1:return i[0];default:return 0}}},{key:"getPreviousDashboard",value:function(e,t){var n=t.indexOf(e),r=t[n-1];return r||(r=t[t.length-1]),r}},{key:"getNextDashboard",value:function(e,t){var n=t.indexOf(e),r=t[n+1];return r||(r=t[0]),r}},{key:"rememberOpenedDashboard",value:function(e){this.storage.setItem(yQ,e)}},{key:"getSuitableDashboard",value:function(e,t,n){if(n)return e.filter((function(e){return e.id===n}))[0];var r=this.storage.getItem(yQ);return _H()(e,{id:r})||t[0]||e[0]}}],r&amp;&amp;mQ(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r,o,a}(p);!function(e,t,n){(t=bQ(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(wQ,"$inject",["$q","$window","dashboardResource","dialog","i18n","gettextCatalog","shareDashboard","currentUser","widgetMoveDialog"]);const _Q=angular.module("dashboard.dashboard-page.service",[vd,TU,VH,uQ,Qe]).run(["$templateCache",function(e){e.put("dashboard-page__name-dialog.html",pQ())}]).service("dashboardPageService",[].concat(function(e){return function(e){if(Array.isArray(e))return CQ(e)}(e)||function(e){if("undefined"!=typeof Symbol&amp;&amp;null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return CQ(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?CQ(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(wQ.$inject),[wQ]));function jQ(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}var xQ=angular.module("dashboardPage",[_Q.name,br,bn,Fn,VH,KH,Tq.name,iQ.name,oQ,St,mn,rq,tY,TY,VY,yH,Lz]).controller("dashboardsPageCtrl",["$location","$q","$rootScope","$scope","defaultWidgets","dashboardPageService","dashboardResource","i18n","shareDashboard","isDashboardEditable","dashboardPermissionsResource","currentUser","dashboardList","rgShortcutsHintPopup","dashboardPermissionsTypes","loaderScreen","RingMessageBundle",function(e,t,n,r,o,c,l,g,u,d,p,A,C,I,f,m,h){var v,b=this,y=this,w=t((function(e){v=e}));function _(e){return e.target.classList.contains("ring-input")}y.activePermissions={total:0,users:0,groups:0},y.dashboardsRes=new l,y.activeDashboard=null,y.dashboardNotFound=!1,y.sharedWithSingleUserOrGroup=null,y.cachedOwners=null,y.notFoundIcon=mT(),y.notFoundMessage=h.errorpage_404msg(),y.notFoundLinks=[{href:"dashboard",text:g("View default dashboard")}],y.USER_PERMISSION=f.USER_PERMISSION,y.GROUP_PERMISSION=f.GROUP_PERMISSION,y.PROJECT_TEAM_PERMISSION=f.PROJECT_TEAM_PERMISSION,y.dashboardConfig={columnsCount:8,get otherDashboardsExists(){return y.dashboardsRes.total&gt;1},get editable(){return y.isEditable()}},y.isMac=function(){return"macos"===WC.os.name},y.dashboardsListConfig={minWidth:350,maxHeight:350,hint:g("Use â‡§ â† â†’ to switch between dashboards",null,"Dashboard"),filter:{placeholder:g("Filter items")},add:A().guest?null:{label:g("New dashboard... ({{shortcut}})",{shortcut:y.isMac()?"âŒ¥ â‡§ N":"Alt + Shift + N"},"Dashboard"),alwaysVisible:!0,delayed:!1},onAdd:function(){nm.createNewDashboardFromURL(),r.$evalAsync((function(){return y.createNewDashboard()}))},onOpen:function(){r.$broadcast("dashboard:widget-navigation-deselect")}},y.currentUser=A(),y.shortcutActions={saveWidget:function(){r.$broadcast("widget:save")},openAddWidgetDropDown:function(){nm.openAddWidgetDropDownWithShortcut(),n.$broadcast("widget:open-add-dropdown")},openDashboardsList:function(){nm.openDashboardsListWithShortcut(),r.$broadcast("dashboard:page-open-dashboard-list")},createNewDashboard:function(){nm.createNewDashboardWithShortcut(),y.createNewDashboard()},previousDashboard:function(e){e.preventDefault(),_(e)||(nm.moveToPreviousDashboard(!0),y.goToPreviousDashboard())},nextDashboard:function(e){e.preventDefault(),_(e)||(nm.moveToNextDashboard(!0),y.goToNextDashboard())},widgetNavigation:function(e,t){nm.navigateToDashboardWidgetWithShortcut(),r.$broadcast("dashboard:widget-navigation",t),e.preventDefault()},editActiveWidget:function(){nm.navigateToEditWidgetModeWithShortcut(),r.$broadcast("dashboard:widget-edit-selected")},clearWidgetSelection:function(){nm.deselectWidgetWithShortcut(),r.$broadcast("dashboard:widget-cancel-config")},refreshAllWidgets:function(){nm.refreshWidgetWithShortcut(),r.$broadcast("widget:force-refresh")},openHelp:function(){I.show({},null,g("Close"),g("Filter shortcuts"))}},y.onDashboardSelectOpen=function(){r.$broadcast("dashboard:widget-navigation-deselect")},y.createNewDashboard=function(e){var t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:[],n=(y.dashboardsRes.items||[]).map((function(e){return e.name}));return c.createNewDashboard(e,n,t).then((function(e){y.loadDashboards().then((function(){return y.storeSelectedDashboard(e)}))}))},y.refreshDashboardFromServer=function(e){l.get({dashboardId:e.id}).$promise.then((function(e){return e.permissions&amp;&amp;1===e.permissions.length?y.loadPermissionPersonality(e.permissions[0]).then((function(){return e})):e})).then((function(t){return Object.assign(e,t)})).then((function(){return y.reloadDashboardPermissions(e)}))},y.setActiveDashboard=function(e){y.dashboardNotFound=!1,y.activeDashboard!==e&amp;&amp;(y.activeDashboard=e,y.storeSelectedDashboard(y.activeDashboard),y.activeDashboard.permissions&amp;&amp;1===y.activeDashboard.permissions.length&amp;&amp;y.loadPermissionPersonality(y.activeDashboard.permissions[0]),y.refreshPermissions())},y.refreshPermissions=function(){var e=y.activeDashboard.permissions||[];y.activePermissions.total=e.length,y.activePermissions.users=e.filter((function(e){return e.type===y.USER_PERMISSION})).length,y.activePermissions.groups=e.filter((function(e){return e.type===y.GROUP_PERMISSION})).length,y.activePermissions.projectTeams=e.filter((function(e){return e.type===y.PROJECT_TEAM_PERMISSION})).length},y.loadPermissionPersonality=function(e){return y.sharedWithSingleUserOrGroupLoadError=null,u.resolvePermissionsInfo([e]).then((function(e){var t=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return jQ(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?jQ(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(e,1)[0];t.personality?y.sharedWithSingleUserOrGroup=t.personality:y.sharedWithSingleUserOrGroupLoadError=!0}))},y.canRemoveDashboard=function(e){var t=(y.dashboardsRes.items||[]).filter((function(t){return t.id!==e.id}));return y.isDashboardOwner(e)&amp;&amp;t.some((function(e){return y.isDashboardOwner(e)}))},y.getEditDashboardOptions=function(e){return c.getEditDashboardOptions(e,y.canRemoveDashboard(e))},y.isEditable=function(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:y.activeDashboard;return!!e&amp;&amp;d(e)},y.isShareable=function(e){return y.isDashboardOwner(e)||y.isEditable(e)},y.isDashboardOwner=function(e){return!!e&amp;&amp;A().id===e.owner.id},y.getDashboardDropdownName=function(){return y.activeDashboard?y.activeDashboard.name:g("Select dashboard",null,"Dashboard")},y.getNewlyAddedCount=function(){return C.getNewlySharedCount(y.dashboardsRes.items)},y.getSharedWith=function(e){if(1===e.permissions.length&amp;&amp;!e.permissions[0].personality)return"";var t=y.getOwnerName(),n=1===y.activePermissions.total,r=n&amp;&amp;y.currentUser.id===e.permissions[0].personality.id,o=n?e.permissions[0].personality.name:c.getTargetUsersOrGroupCounts(y.activePermissions);return y.isDashboardOwner(e)?g("Shared with {{ targetUsersOrGroups }}",{targetUsersOrGroups:o}):r?g("Shared by {{ dashboardAuthor }} with me",{dashboardAuthor:t}):g("Shared by {{ dashboardAuthor }} with {{ targetUsersOrGroups }}",{dashboardAuthor:t,targetUsersOrGroups:o})},y.reloadDashboardPermissions=function(e){return p.get({dashboardId:e.id,fields:"id,user(id),userGroup(id),projectTeam(id),permission"}).$promise.then((function(t){var n=t.items;return e.permissions=n})).then((function(e){return 1===e.length&amp;&amp;y.loadPermissionPersonality(e[0])})).then(y.refreshPermissions)},y.shareDashboard=function(e){return u.shareDashboardPopup(e,(function(){return b.manageSharedAccess(e)}),(function(){return b.getSharedWith(e)}),(function(t){return u.addUsersAndGroupsToShare(t.usersAndGroups,t.canUpdate,e).then((function(){return y.reloadDashboardPermissions(y.activeDashboard)}))}))},y.manageSharedAccess=function(e){var n=y.isShareable(e);return u.manageAccessPopup(e,(function(){return b.shareDashboard(e)}),n,(function(n){var r=n.toUpdate,o=n.toDelete;return u.updatePermissions(e.id,r,o).then((function(){return y.reloadDashboardPermissions(y.activeDashboard)})).catch((function(e){return s.Z.error(g("Could not save changes",null,"Dashboard")),t.reject(e)}))}))};var j={rename:function(e){var t=(y.dashboardsRes.items||[]).map((function(e){return e.name}));return c.dashboardNameDialog(e.name,t).then((function(t){if(t)return nm.renameDashboard(),e.name=t,c.updateDashboard(e)}))},remove:function(t){return c.dashboardResource.remove({dashboardId:t.id}).$promise.then((function(){e.search(""),nm.removeDashboard();var n=i.createElement(a.Z,{key:"restore-link",onClick:function(){nm.restoreDashboard(),r.$evalAsync((function(){return y.createNewDashboard(t.name,t.data&amp;&amp;t.data.widgets)}))}},g("Create again",null,"Dashboard"));return s.Z.message([g('Dashboard "{{ dashboardName }}" has been removed.',{dashboardName:t.name},"Dashboard")," ",n]),y.loadDashboards()})).catch((function(e){var t=e&amp;&amp;e.data&amp;&amp;e.data.error_description;s.Z.error([g("Could not remove dashboard",null,"Dashboard"),t&amp;&amp;". ".concat(t)])}))}};y.editDashboard=function(e){return j[e.key](y.activeDashboard)},y.createEmptyDashboard=function(){return y.createNewDashboard(g("My Dashboard",null,"Dashboard"),o.constructInitialWidgets())},y.updateDashboard=function(e){return c.updateDashboard(e)},y.setFavorite=function(e,t){return c.setFavorite(e,t)},y.storeSelectedDashboard=function(t){return e.search("id",t.id),A().guest||c.rememberOpenedDashboard(t.id),t},y.restoreSelectedDashboard=function(){if(!y.dashboardsRes.items)return null;var t=c.getSuitableDashboard(y.dashboardsRes.items,y.getDashboardShortList(),e.search().id);return t?y.setActiveDashboard(t):(y.dashboardNotFound=!0,y.activeDashboard=null),t},y.dismissAllNewDashboards=function(e){var n=e.filter((function(e){return C.isNewlyShared(e)}));n.forEach((function(e){return e.favorite=!1}));var r=n.map((function(e){return y.setFavorite(e,!1)}));return t.all(r).then((function(){return y.dashboardsListConfig.onBeforeOpen()}))},y.getActiveDashboardNum=function(){return y.getDashboardShortList().indexOf(y.activeDashboard)+1},y.getDashboardList=function(){var e=y.dashboardsRes.items;return t.when(w).then((function(){var t=A().guest?null:function(e){return e.favorite=!e.favorite,y.dashboardsListConfig.onBeforeOpen(),y.setFavorite(e,e.favorite)};return C.getList(e,y.cachedOwners,A().guest,t,(function(){return y.dismissAllNewDashboards(e)}))}))},y.canAddToMyDashboards=function(e){return e&amp;&amp;!e.favorite&amp;&amp;!A().guest},y.getOwnerName=function(){return b.cachedOwners&amp;&amp;b.cachedOwners.get(b.activeDashboard.owner.id)},y.getDashboardShortList=function(){return y.dashboardsRes.items.filter((function(e){return e.favorite}))},y.getPreviousDashboard=function(){return c.getPreviousDashboard(y.activeDashboard,y.getDashboardShortList())},y.getNextDashboard=function(){return c.getNextDashboard(y.activeDashboard,y.getDashboardShortList())},y.goToPreviousDashboard=function(){nm.moveToPreviousDashboard();var e=y.getPreviousDashboard();e&amp;&amp;y.onSelectDashboard(e)},y.goToNextDashboard=function(){nm.moveToNextDashboard();var e=y.getNextDashboard();e&amp;&amp;y.onSelectDashboard(e)},y.onSelectDashboard=function(e){y.setActiveDashboard(e),y.refreshDashboardFromServer(e)},y.makeFavorite=function(e){return e.favorite=!0,y.setFavorite(e,!0)},y.moveWidgetBetweenDashboards=function(t,n){nm.moveWidget();var o=y.dashboardsRes.items||[];return o=o.filter((function(e){return"READ"!==e.permission})),c.moveWidgetBetweenDashboards(y.activeDashboard,o,t).then((function(t){var o=i.createElement(a.Z,{key:"restore-link",onClick:function(){r.$evalAsync((function(){return e.search("id",t.id)}))}},t.name||"Default");s.Z.message([g('The widget "{{ widgetName }}" has been moved to the ',{widgetName:n},"Dashboard"),o])}))},y.dashboardListFilter={fn:function(e,t){return!t||!!e.label&amp;&amp;e.label.toLowerCase().includes(t.toLowerCase())}},y.loadDashboards=function(){return y.dashboardsRes.$get({fields:"total,id,name,data,permissions(id,user(id),userGroup(id),projectTeam(id),permission),access,permission,favorite,ordinal,owner",$top:-1}).then((function(e){return(e.items||[]).some((function(e){return y.isDashboardOwner(e)}))?(y.dashboardsRes.data&amp;&amp;!y.dashboardsRes.data.widgets&amp;&amp;(y.dashboardsRes.data.widgets=[]),y.dashboardsRes.items.forEach((function(e){e.data.widgets=e.data.widgets||[],e.permissions=e.permissions||[]})),c.fillDashboardNames(y.dashboardsRes.items),y.restoreSelectedDashboard()):y.createEmptyDashboard()})).catch((function(){s.Z.message(g("Can't connect to dashboard backend",null,"Dashboard"))})).finally((function(){return m.setVisible(!1)}))},function(){m.setVisible(!0),y.loadDashboards().then((function(){return c.getOwnersForDashboards(y.dashboardsRes.items)})).then((function(e){y.cachedOwners=e,v(y.cachedOwners)}));var e=r.$on("$locationChangeSuccess",(function(){return y.restoreSelectedDashboard()}));r.$on("$routeChangeStart",e),r.$on("dashboard:move-widget",(function(e,t,n){return y.moveWidgetBetweenDashboards(t,n)}))}()}]).run(["shortcutsLoader",function(e){e.addModes(sQ())}]);const EQ=xQ.name;function SQ(e){return SQ="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},SQ(e)}function TQ(){TQ=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==SQ(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function MQ(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function LQ(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?MQ(Object(n),!0).forEach((function(t){PQ(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):MQ(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function kQ(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function OQ(e,t){for(var n=0;n&lt;t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&amp;&amp;(r.writable=!0),Object.defineProperty(e,NQ(r.key),r)}}function PQ(e,t,n){return(t=NQ(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function NQ(e){var t=function(e,t){if("object"!==SQ(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==SQ(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===SQ(t)?t:String(t)}var DQ="HUB.WIDGET_URL_STORAGE_KEY",RQ="HUB.WIDGET_CONFIG_STORAGE_KEY",UQ="custom-playground-widget",zQ=angular.module("hub.dashboard.playground-page",[Tq.name,_x]),$Q=function(){function e(t,n,r,o,i,a,s,c,l,g,u){var d=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),PQ(this,"customWidget",null),PQ(this,"isLoading",!1),PQ(this,"customItemMap",bx),PQ(this,"gridsterOptions",vx),PQ(this,"storeConfig",(function(){nm.storeWidgetConfigInWidgetsPlayground(),d.storage.setItem(RQ,JSON.stringify(d.widgetConfig))})),PQ(this,"resetConfig",(function(){nm.resetWidgetConfigInWidgetPlayground(),d.storage.removeItem(RQ),d.widgetConfig={},d.loadWidget(d.widgetURL)})),this.widgetId=UQ,this.notify=s,this.$q=t,this.i18n=i,this.$log=n,this.$scope=o,this.ServicesResource=a,this.hubAnalytics=c,this.ServiceList=l,this.storage=r.localStorage,this.customWidgetService=g,this.dshGetWidgetPlaygroundHelpLink=u,this.http=new Io.ZP(null,null,{headers:{Accept:"application/json, */*"}}),this.widgetURL=this.storage.getItem(DQ)||"",this.widgetConfig=this.loadConfig(),this.widgetsRegistry=new Ox,this.$scope.$on("hub:dashboard:save-dashboard-config",this.storeConfig),this.widgetURL&amp;&amp;this.loadWidget(this.widgetURL)}return e.$inject=["$q","$log","$window","$scope","i18n","ServicesResource","hubNotify","hubAnalytics","ServiceList","customWidgetService","dshGetWidgetPlaygroundHelpLink"],t=e,n=[{key:"loadConfig",value:function(){var e=JSON.parse(this.storage.getItem(RQ)||"{}");return e.baseUrl===this.widgetURL?e:{}}},{key:"onKeyPress",value:function(e){if(13===e.keyCode)return nm.loadWidgetInWidgetPlayground(!0),this.loadWidget(this.widgetURL)}},{key:"loadWidget",value:(r=TQ().mark((function e(t){var n,r,o,i,a,c,l,g,u=this;return TQ().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return nm.loadWidgetInWidgetPlayground(),this.$scope.$evalAsync((function(){return u.isLoading=!0})),this.widgetsRegistry.clear(),this.$scope.$evalAsync((function(){return u.customWidget=null})),e.prev=4,e.next=7,this.http.fetch("".concat(t,"/manifest.json"));case 7:return n=e.sent,this.customWidgetService.validateManifest(n),n.products||s.Z.warning(this.i18n('The widget manifest does not specify the products into which the widget can be installed. Please specify values for the "products" attribute.')),r=n.dependencies||n.services||{},e.next=13,this.ServicesResource.get({query:Object.keys(r).map((function(e){return"applicationName: {".concat(e,"}")})).join(" or ")}).$promise;case 13:o=e.sent,i=o.services.filter((function(e){return Object.keys(r).includes(e.applicationName)})),this.widgetsRegistry.add({label:"Playground custom widget",id:UQ,custom:!0,manifest:n,directive:"",accessibleServices:i}),this.widgetConfig=LQ(LQ({},this.widgetConfig),{},{baseUrl:t}),a=n.view&amp;&amp;n.view.defaultWidth||4,c={x:Math.floor((8-a)/2),y:0,width:a,height:n.view&amp;&amp;n.view.defaultHeight||4},this.customWidget={config:this.widgetConfig,grid:c},this.isLoading=!1,this.storage.setItem(DQ,t),e.next=31;break;case 26:throw e.prev=26,e.t0=e.catch(4),this.$log.error(e.t0),0===t.indexOf("http:")&amp;&amp;"https:"===window.location.protocol?this.notify.error(this.i18n("To load your custom widget in the playground, you need to serve it over HTTPS")):(l=this.i18n("Could not connect to widget development server"),g="Failed to fetch"===e.t0.message?l:e.t0.message,this.notify.error(g||l)),e.t0;case 31:return e.prev=31,this.isLoading=!1,this.$scope.$evalAsync(),e.finish(31);case 35:case"end":return e.stop()}}),e,this,[[4,26,31,35]])})),o=function(){var e=this,t=arguments;return new Promise((function(n,o){var i=r.apply(e,t);function a(e){kQ(i,n,o,a,s,"next",e)}function s(e){kQ(i,n,o,a,s,"throw",e)}a(void 0)}))},function(e){return o.apply(this,arguments)})}],n&amp;&amp;OQ(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,n,r,o}();zQ.controller("WidgetPlaygroundPageCtrl",$Q),zQ.factory("dshGetWidgetPlaygroundHelpLink",["hubConfig",function(e){return function(){return"".concat(e.help.baseUrl,"test-custom-widgets.html")}}]);const GQ=zQ.name;var BQ=angular.module("HUB.dashboard-adapter",[kl,EQ,GQ,eY]);function FQ(e){return["i18n",function(t){return t(e)}]}BQ.config(["hubRoutesConfigProvider",function(e){e.setFirst({path:"/dashboard",title:FQ("Dashboards"),controller:"dashboardsPageCtrl",controllerAs:"dshPageCtrl",template:n(83017),redirectFromRoot:!0,reloadOnSearch:!1,menu:"navigation",resolve:{currentUserPromise:"currentUserPromise",availableServicesList:"servicesListPromise",loadAndRegisterCustomWidgets:"loadAndRegisterCustomWidgetsPromise",i18nLocale:"i18nLoader"}}),e.set({path:"/dashboard/widgets-playground",title:FQ("Widgets Playground"),controller:"WidgetPlaygroundPageCtrl",controllerAs:"playgroundCtrl",template:n(2146),resolve:{currentUserPromise:"currentUserPromise",availableServicesList:"servicesListPromise",permissionCache:"userPermissionsLoader",i18nLocale:"i18nLoader"}})}]),BQ.factory("currentUser",(function(){var e;return function(t){if(!e&amp;&amp;!t)throw new Error("currentUser wasn't defined");return t?e=t:e}})),BQ.factory("currentUserPromise",["$rootScope","auth","currentUser",function(e,t,n){return t.requestUser().then((function(e){return n(e)}))}]);const ZQ=BQ.name,YQ=angular.module("HUB.mount",[ZQ]).name;var WQ=angular.module("HUB.components.2fa",[]);WQ.value("twoFactorAuthorizationLanding",(function(){return"/users/".concat((arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:{}).id,"?tab=authentication")})),WQ.factory("twoFactorAuthorization",["$rootScope","$location","auth","UserResource","userPermissions","i18n","hubNotify","twoFactorAuthorizationLanding","hubMenuApi",function(e,t,n,r,o,i,a,s,c){var l=null,g=null,u=function(e){var t=s(l);return l.requiredTwoFactorAuthentication&amp;&amp;!(l.twoFactorAuthentication||l.webauthnDevice||{}).enabled?(a.error(i("Access is restricted until you enable two-factor authentication")),e.match(new RegExp("".concat(t.replace("?","\\?"),"$"),"i"))?{redirect:null,restricted:!0}:{redirect:t,restricted:!0}):{redirect:null,restricted:!1}},d=function(){var n=u(t.url()),r=n.redirect,o=n.restricted;r&amp;&amp;t.url(r),o&amp;&amp;!g?g=e.$on("$locationChangeStart",(function(e,t){u(t).redirect&amp;&amp;e.preventDefault()})):!o&amp;&amp;g&amp;&amp;(g(),g=null)},p=function(){return r.get({id:l.id,fields:"id,login,twoFactorAuthentication/enabled,webauthnDevice/enabled,requiredTwoFactorAuthentication"}).$promise.then((function(e){l=e,d()})).then((function(){return o.reload()})).then((function(){return c.update()}))};return{update:p,init:function(){return n.requestUser().then((function(t){l=t,d(),e.$on("updatePermissions",p)}))}}}]),WQ.factory("twoFactorAuthorizationInterceptor",["$rootScope","$q",function(e,t){return{responseError:function(n){return 403===n.status&amp;&amp;"2fa_should_be_enabled"===n.data.error&amp;&amp;e.$emit("updatePermissions"),t.reject(n)}}}]),WQ.config(["$httpProvider",function(e){e.interceptors.push("twoFactorAuthorizationInterceptor")}]);const HQ=WQ.name;var qQ=angular.module("HUB.permission-loss",[]);qQ.factory("permissionReduceInterceptor",["$q","$injector",function(e,t){return{request:function(e){return"GET"!==e.method&amp;&amp;(e.url=Eo(e.url,{failOnPermissionReduce:!0})),e},responseError:function(n){var r=t.get("dialog"),o=t.get("i18n"),i=t.get("$http");return n instanceof Error?e.reject(n):Sp.indexOf(n.data.error)&gt;=0?(r.hide(),Tp(o).then((function(){var e=n.config,t=e.data,r=e.method,o=e.params,a=Eo(n.config.url,{failOnPermissionReduce:!1},!0);return i({data:t,method:r,params:o,url:a})}),(function(){return n.ignore=!0,e.reject(n)}))):e.reject(n)}}}]),qQ.config(["$httpProvider",function(e){e.interceptors.push("permissionReduceInterceptor")}]);const QQ=qQ.name;var VQ=angular.module("HUB.password-strength.messages",[]);VQ.factory("passwordStrengthMessages",["i18n",function(e){var t={"weak.password.likeAAA":function(t){return e("Repeated characters like â€œaaaâ€ are easy to guess. Add another word or two. Uncommon words are better. Avoid repeated words and characters.",t)},"weak.password.likeABCABCABC":function(t){return e("A series of characters like â€œabcabcabcâ€ is only slightly harder to guess than â€œabcâ€. Add another word or two. Uncommon words are better. Avoid repeated words and characters.",t)},"weak.password.straightRowsOfKeys":function(t){return e("Characters in a row on the keyboard are easy to guess. Use a longer keyboard pattern with more variation. Add another word or two. Uncommon words are better.",t)},"weak.password.shortKeyboardPatterns":function(t){return e("Short keyboard patterns are easy to guess. Use a longer keyboard pattern with more variation. Add another word or two. Uncommon words are better.",t)},"weak.password.likeABCor654":function(t){return e("Sequences like abc or 6543 are easy to guess. Add another word or two. Uncommon words are better.",t)},"weak.password.recentYears":function(t){return e("Recent years are easy to guess. Avoid recent years, and avoid years that are associated with personal events.",t)},"weak.password.dates":function(t){return e("Dates are often easy to guess. Avoid recent years, and avoid years that are associated with personal events.",t)},"weak.password.top10":function(t){return e("This is one of the ten most commonly-used passwords. Add another word or two. Uncommon words are better.",t)},"weak.password.top100":function(t){return e("This is one of the 100 most commonly-used passwords. Add another word or two. Uncommon words are better.",t)},"weak.password.veryCommon":function(t){return e("This is a very common password. Add another word or two. Uncommon words are better.",t)},"weak.password.similar":function(t){return e("This is similar to a commonly-used password.",t)},"weak.password.similar.capitalized":function(t){return e("This is similar to a commonly-used password. Capitalization doesnâ€™t help very much. Add another word or two. Uncommon words are better.",t)},"weak.password.similar.allUppercase":function(t){return e("This is similar to a commonly-used password. All-uppercase is almost as easy to guess as all-lowercase. Add another word or two. Uncommon words are better.",t)},"weak.password.similar.reversed":function(t){return e("This is similar to a commonly-used password. Reversed words arenâ€™t much harder to guess. Add another word or two. Uncommon words are better.",t)},"weak.password.similar.l33t":function(t){return e("This is similar to a commonly-used password. Predictable substitutions like â€˜@â€™ instead of â€˜aâ€™ donâ€™t help very much. Add another word or two. Uncommon words are better.",t)},"weak.password.wikipedia":function(t){return e("A word by itself is easy to guess. Add another word or two. Uncommon words are better.",t)},"weak.password.name":function(t){return e("Names and surnames by themselves are easy to guess. Add another word or two. Uncommon words are better.",t)},"weak.password.name.capitalized":function(t){return e("Names and surnames by themselves are easy to guess. Capitalization doesnâ€™t help very much. Add another word or two. Uncommon words are better.",t)},"weak.password.name.allUppercase":function(t){return e("Names and surnames by themselves are easy to guess. All-uppercase is almost as easy to guess as all-lowercase. Add another word or two. Uncommon words are better.",t)},"weak.password.name.reversed":function(t){return e("Names and surnames by themselves are easy to guess. Reversed words arenâ€™t much harder to guess. Add another word or two. Uncommon words are better.",t)},"weak.password.name.l33t":function(t){return e("Names and surnames by themselves are easy to guess. Predictable substitutions like â€˜@â€™ instead of â€˜aâ€™ donâ€™t help very much. Add another word or two. Uncommon words are better.",t)},"weak.password.tooShort":function(t){return e("The password is too short. Use a few words, avoid common phrases.",t)}};return{getMessage:function(e){var n=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:{};return t[e]&amp;&amp;t[e](n)}}}]);const KQ=VQ.name;function JQ(e){return JQ="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},JQ(e)}function XQ(e,t,n){return t=function(e){var t=function(e,t){if("object"!==JQ(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==JQ(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===JQ(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var eV=angular.module("HUB.password-strength",[KQ]);eV.component("passwordStrength",{template:n(8602),transclude:!0,bindings:{value:"&lt;",user:"&lt;",username:"&lt;"},controller:["$http","backendUri","passwordStrengthMessages",function(e,t,n){var r=this;this.empty=!0,this.getClasses=function(e){var t=!(arguments.length&gt;1&amp;&amp;void 0!==arguments[1])||arguments[1],n="password-strength__".concat(e);return XQ(XQ(XQ({},n,!0),"".concat(n,"_valid"),r.valid&amp;&amp;t),"".concat(n,"_invalid"),r.invalid&amp;&amp;t)},this.$onChanges=function(){var o=r.value||"",i=/\/$/.test(t)?"".concat(t,"authmodules/password/strength"):"".concat(t,"/authmodules/password/strength");e({method:"POST",url:i,params:{user:r.user,username:r.username,fields:"score,referenceScore,entropy,referenceEntropy,feedbackMessage,maxScore,maxEntropy"},data:{type:"PlainpasswordJSON",value:o}}).then((function(e){var t=e.data,i=t.score,a=t.referenceScore,s=t.entropy,c=t.referenceEntropy,l=t.maxEntropy,g=t.maxScore,u=t.feedbackMessage,d=100/g;if(r.description="",r.requiredLevel=0===a?a:a-1,r.level=i,r.required=r.requiredLevel*d,r.valid=c&gt;0?s&gt;=c:s&gt;=l/2,r.invalid=!r.valid&amp;&amp;c&gt;0,r.empty=""===o,u&amp;&amp;(r.description=n.getMessage(u)),r.current=s/c*r.required,s&gt;c&amp;&amp;r.required&lt;100){var p=s-c,A=l-c;r.current=r.required+p/A*(100-r.required)}r.current&gt;100&amp;&amp;(r.current=100)}))}}]});const tV=eV.name,nV={reformatString:(e,t)=&gt;{const n=t?/[.:;!@#^&amp;*(){}\[\]?,%=+\\\/]+/g:/[.:;!@#^&amp;*(){}\[\]?,%=+\\]+/g;return String(e).replace(n,"_")},getPageViewDurationPresentation:e=&gt;{if(null==e)return"less-than-1-sec";const t=e/1e3;if(t&gt;3600)return"more-than-hour";let n=Math.floor(Math.pow(2,Math.floor(Math.log2(t))+1));return n=n&gt;0?n:1,`less-than-${n}-sec`},getScreenWidthPresentation:()=&gt;{const e=[0,768,992,1200];for(let t=1;t&lt;e.length;++t)if(window.innerWidth&lt;e[t])return`[${e[t-1]}px;${e[t]}px)`;return"[1200px;inf)"},npeSaveLowerCase:e=&gt;(e||"unknown").toLowerCase(),getUserAgentPresentation:()=&gt;`${nV.npeSaveLowerCase(Zi.browser.name||"unknown")}$${Zi.browser.version[0]||"unknown"}`,getDevicePixelRatioPresentation:()=&gt;window.devicePixelRatio&amp;&amp;window.devicePixelRatio.toFixed?String(window.devicePixelRatio.toFixed(1)):"unknown"};class rV{constructor(e,t,n,r){if(!e&amp;&amp;!t)return;((e,t,n,r,o)=&gt;{e.GoogleAnalyticsObject=o,e[o]=e[o]||function(...t){(e[o].q=e[o].q||[]).push(t)},e[o].l=Number(new Date);const i=t.createElement(n),a=t.getElementsByTagName(n)[0];i.async=!0,i.src="//www.google-analytics.com/analytics.js",a.parentNode?.insertBefore(i,a)})(window,document,"script",0,"ga");const o=e||"UA-57284711-1";if(r)window.ga("create",o,{storage:"none",clientId:r});else{const t=n?{cookieDomain:n}:{};window.ga("create",o,e?t:{cookieDomain:"none"})}window.ga("set","anonymizeIp",!0),window.ga("set","location",n||"/"),window.ga("set","allowAdFeatures",!1)}trackEvent(e,t,n){if(null!=window.ga){const r=nV.reformatString(e,!0),o=nV.reformatString(t);window.ga("send","event",{eventCategory:r,eventAction:o}),n&amp;&amp;window.ga("send","event",{eventCategory:r,eventAction:o+this._buildSuffix(n)})}}trackPageView(e){null!=window.ga&amp;&amp;window.ga("send","pageview",e)}get serializeAdditionalInfo(){return!0}_buildSuffix(e){if(!e)return"";let t,n="";for(t in e)e.hasOwnProperty(t)&amp;&amp;(n+=`__${t}$${e[t]}`);return n}}function oV(e){return oV="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},oV(e)}function iV(){iV=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==oV(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function aV(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}var sV=angular.module("HUB.hub-analytics",[Lt,zC]);sV.constant("hubAnalyticsFeatureFlag","jetbrains.hub.statistics.upload"),sV.constant("hubAnalyticsGAKey","UA-47631155-10"),sV.run(["$rootScope","$route",function(e,t){e.$on("$routeChangeSuccess",(function(){var e=t&amp;&amp;t.current&amp;&amp;t.current.$$route&amp;&amp;t.current.$$route.analyticsKey?t.current.$$route.analyticsKey:"unknown";nm.trackHubPageView(e)}))}]),sV.service("hubAnalytics",["feature","hubAnalyticsFeatureFlag","hubAnalyticsGAKey",function(e,t,n){function r(){var o;return o=iV().mark((function r(){return iV().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,e(t);case 2:if(r.sent){r.next=5;break}return r.abrupt("return");case 5:tm.Z.config([new rV(n)]);case 6:case"end":return r.stop()}}),r)})),r=function(){var e=this,t=arguments;return new Promise((function(n,r){var i=o.apply(e,t);function a(e){aV(i,n,r,a,s,"next",e)}function s(e){aV(i,n,r,a,s,"throw",e)}a(void 0)}))},r.apply(this,arguments)}!function(){r.apply(this,arguments)}()}]);const cV=sV.name;function lV(e){return lV="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},lV(e)}function gV(){gV=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function l(e,t,n,o){var i=t&amp;&amp;t.prototype instanceof d?t:d,a=Object.create(i.prototype),s=new j(o||[]);return r(a,"_invoke",{value:b(e,n,s)}),a}function g(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=l;var u={};function d(){}function p(){}function A(){}var C={};c(C,i,(function(){return this}));var I=Object.getPrototypeOf,f=I&amp;&amp;I(I(x([])));f&amp;&amp;f!==t&amp;&amp;n.call(f,i)&amp;&amp;(C=f);var m=A.prototype=d.prototype=Object.create(C);function h(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function o(r,i,a,s){var c=g(e[r],e,i);if("throw"!==c.type){var l=c.arg,u=l.value;return u&amp;&amp;"object"==lV(u)&amp;&amp;n.call(u,"__await")?t.resolve(u.__await).then((function(e){o("next",e,a,s)}),(function(e){o("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return o("throw",e,a,s)}))}s(c.arg)}var i;r(this,"_invoke",{value:function(e,n){function r(){return new t((function(t,r){o(e,n,t,r)}))}return i=i?i.then(r,r):r()}})}function b(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=y(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&amp;&amp;n.abrupt("return",n.arg);r="executing";var c=g(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&amp;&amp;(r="completed",n.method="throw",n.arg=c.arg)}}}function y(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&amp;&amp;e.iterator.return&amp;&amp;(t.method="return",t.arg=void 0,y(e,t),"throw"===t.method)||"return"!==n&amp;&amp;(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),u;var o=g(r,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,u;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&amp;&amp;(t.method="next",t.arg=void 0),t.delegate=null,u):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function w(e){var t={tryLoc:e[0]};1 in e&amp;&amp;(t.catchLoc=e[1]),2 in e&amp;&amp;(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function x(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r&lt;e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=A,r(m,"constructor",{value:A,configurable:!0}),r(A,"constructor",{value:p,configurable:!0}),p.displayName=c(A,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&amp;&amp;e.constructor;return!!t&amp;&amp;(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,A):(e.__proto__=A,c(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},h(v.prototype),c(v.prototype,a,(function(){return this})),e.AsyncIterator=v,e.async=function(t,n,r,o,i){void 0===i&amp;&amp;(i=Promise);var a=new v(l(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},h(m),c(m,s,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},e.values=x,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&amp;&amp;n.call(this,t)&amp;&amp;!isNaN(+t.slice(1))&amp;&amp;(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&amp;&amp;(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o&gt;=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc&lt;=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&amp;&amp;c){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0);if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev&lt;i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev&lt;i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r&gt;=0;--r){var o=this.tryEntries[r];if(o.tryLoc&lt;=this.prev&amp;&amp;n.call(o,"finallyLoc")&amp;&amp;this.prev&lt;o.finallyLoc){var i=o;break}}i&amp;&amp;("break"===e||"continue"===e)&amp;&amp;i.tryLoc&lt;=t&amp;&amp;t&lt;=i.finallyLoc&amp;&amp;(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,u):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&amp;&amp;t&amp;&amp;(this.next=t),u},finish:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t&gt;=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;_(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:x(e),resultName:t,nextLoc:n},"next"===this.method&amp;&amp;(this.arg=void 0),u}},e}function uV(e,t){(null==t||t&gt;e.length)&amp;&amp;(t=e.length);for(var n=0,r=new Array(t);n&lt;t;n++)r[n]=e[n];return r}function dV(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function pV(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){dV(i,r,o,a,s,"next",e)}function s(e){dV(i,r,o,a,s,"throw",e)}a(void 0)}))}}var AV="hub.css-properties-overrides",CV=new rU.Z,IV=angular.module("HUB.theme",[Qe]);function fV(){return mV.apply(this,arguments)}function mV(){return mV=pV(gV().mark((function e(){var t;return gV().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,CV.get(AV);case 2:return t=e.sent,e.abrupt("return",t?JSON.parse(t):{});case 4:case"end":return e.stop()}}),e)}))),mV.apply(this,arguments)}function hV(e){document.documentElement.style.cssText="",Object.entries(e).forEach((function(e){var t=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&amp;&amp;e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,l=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&amp;&amp;(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&amp;&amp;null!=n.return&amp;&amp;(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return uV(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&amp;&amp;e.constructor&amp;&amp;(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?uV(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(e,2),n=t[0],r=t[1];document.documentElement.style.setProperty(n,r)}))}IV.run(pV(gV().mark((function e(){return gV().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=hV,e.next=3,fV();case 3:e.t1=e.sent,(0,e.t0)(e.t1);case 5:case"end":return e.stop()}}),e)})))),IV.factory("themeDialog",["dialog","i18n",function(e,t){return pV(gV().mark((function r(){var o;return gV().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.t0=JSON,r.next=3,fV();case 3:r.t1=r.sent,o=r.t0.stringify.call(r.t0,r.t1),e.show({title:"CSS overrides",template:n(54147),data:{rawValue:o},autoWidth:!0,buttons:[{label:t("Save"),default:!0,close:!0,action:function(e){return pV(gV().mark((function t(){var n;return gV().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=JSON.parse(e.rawValue),t.next=3,CV.set(AV,e.rawValue);case 3:hV(n),s.Z.message("Theme has been applied");case 5:case"end":return t.stop()}}),t)})))()}},{label:t("Cancel")}]});case 6:case"end":return r.stop()}}),r)})))}]);const vV=IV.name;var bV=n(59881),yV=angular.module("HUB.browser-detection-stopper",[]);yV.config((function(){(0,bV.s)()}));const wV=yV.name;var _V=angular.module("hub-components.user-agreement.interceptor",[]);_V.factory("euaInterceptor",["$q","$injector",function(e,t){return{responseError:function(n){var r=t.get("hcUserAgreement");if(403===n.status&amp;&amp;"eua_is_not_accepted"===n.data.error){var o=t.get("$http"),i=n.config,a=i.data,s=i.method,c=i.params,l=i.url;return r.checkConsentAndShowDialog().then((function(){return o({data:a,method:s,params:c,url:l})}))}return e.reject(n)}}}]);const jV=_V.name;var xV=angular.module("HUB.app.interceptors",[jV]);xV.factory("resourceAPIVersionInterceptor",["$injector","hubConfig",function(e,t){return{request:function(n){var r=e.get("backend");return n.url.startsWith("".concat(r.getAPIUrl(),"/"))&amp;&amp;(n.headers[t.apiVersionHeader]=t.apiVersion),n}}}]).factory("resourcePostInterceptor",(function(){return{request:function(e){return"POST"!==e.method||e.data&amp;&amp;e.data.fields||e.params&amp;&amp;e.params.fields||-1!==e.url.indexOf("fields=")||(e.url=Eo(e.url,{fields:"id"})),e}}})).config(["$httpProvider",function(e){e.interceptors.push("resourceAPIVersionInterceptor"),e.interceptors.push("resourcePostInterceptor"),e.interceptors.push("euaInterceptor")}]);const EV=xV.name,SV=angular.module("HUB.end-user-agreement",[t$]).name;function TV(e){return["i18n",function(t){return t(e)}]}var MV=angular.module("HUB.routes",[KA(),BC,eY,Pm,Dy,qy,cw,P_,Q_,J_,tL,lL,xL,ZL,tR,VL,Yk,sD,DD,FD,YD,uR,rR,sR,lR,pR,wR,jR,TR,LL,OR,GR,FR,qz,cz,SV,vR,AB,JZ,zD,GD]);MV.config(["$routeProvider","hubRoutesConfigProvider",function(e,t){var n=t.get(),r={permissionCache:"userPermissionsLoader",i18nLocale:"i18nLoader"},o={reloadOnSearch:!1,resolve:r},i=[],a={path:"/",title:!1,template:"",resolve:r,controller:["$log","$window","$location","permissionCache","loaderScreen",function(e,t,n,r,o){var a=i.find((function(e){return e.redirectFromRoot&amp;&amp;(!e.permission||r.has(e.permission))}));a?(e.debug("Navigation: redirecting from ".concat(t.location.pathname," to ").concat(a.path," using router")),n.path(a.path).replace()):(o.failInitialLoading({status:403}),e.debug("Navigation: 403 page using router"))}]},s={template:'&lt;div rg-error-page="{error: {status: 404}}"&gt;&lt;/div&gt;',resolve:r};(i=n.map((function(e){var t=e.getRoute||angular.noop;return Object.assign({},o,t(TV),e)}))).push(a),i.forEach((function(t){return e.when(t.path,t)})),e.otherwise(s)}]);const LV=MV.name;var kV=angular.module("HUB.locale",[]);kV.factory("LocalesService",["$q","LocalesResource","UserResource","publicSettingsLoader","i18nCatalog","hubConfig",function(e,t,n,r,o,i){return{buildList:function(){return t.get({fields:"name,language,label,community"}).$promise},applyLanguage:function(){var t=function(e){return o.setLanguage(e)||i.language.current};return e.all({me:n.get({id:"me",fields:"profile(locale)"}).$promise,settings:r}).then((function(e){var n=e.me,r=e.settings;return n.profile&amp;&amp;n.profile.locale?t(n.profile.locale):t(r.locale)}))}}}]).factory("i18nLoader",["LocalesService",function(e){return e.applyLanguage()}]);const OV=kV.name;var PV=n(73579),NV=n.n(PV);function DV(e){return DV="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e},DV(e)}function RV(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&amp;&amp;(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function UV(e){for(var t=1;t&lt;arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?RV(Object(n),!0).forEach((function(t){zV(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):RV(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function zV(e,t,n){return t=function(e){var t=function(e,t){if("object"!==DV(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==DV(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===DV(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}window.__hubErrorsReporter__=new II,window.__hubErrorsReporter__.enableWrapping();var $V=o().module("HUB",[YQ,wV,kl,rq,SC,EV,BC,LV,OV,yl(),Vl,fg,cd,vp,wA,xA,UA,HA,QA,Ld,vd,aI,cI,gI,Op,bI,wI,FI,zC,HQ,QQ,tV,vV,cV,pw,Qe,Je,Lt,zt,en,Ft,Pr,mn,lo,Fn,kr,Hn,br,Tr,bn,we,Rr,pe,F,z,Yt,Dn,St,ao,In,Tn,On,lo,go,Ao,"monospaced.elastic"]);$V.config(["$locationProvider",function(e){e.html5Mode(!0)}]),$V.config(["$compileProvider",function(e){e.preAssignBindingsEnabled(!0)}]),$V.config(["$qProvider",function(e){e.errorOnUnhandledRejections(!1)}]),$V.config(["$logProvider","hubConfig",function(e,t){e.debugEnabled(t.debug)}]),$V.config(["authProvider",function(e){e.init($l())}]),$V.config((function(){s.Z.setDefaultTimeout(5e3)})),$V.config(["userPermissionsProvider","hubConfig",function(e,t){e.config(t.permissions)}]),$V.config(["$compileProvider","hubConfig",function(e,t){e.debugInfoEnabled(t.debug),e.aHrefSanitizationWhitelist(/^\s*(https?|data):/)}]),$V.run(["hcUserAgreement","i18nLoader",function(e,t){t.finally((function(){e.configure({auth:$l()}),e.startChecking()}))}]),$V.service("userPermissionsLoader",["userPermissions",function(e){return e.load()}]),$V.service("hubFeaturesLoader",["hubFeatures",function(e){return e.getEnabled()}]),$V.config(["$provide",function(e){e.decorator("ringI18n",["i18n",function(e){return e}])}]),$V.run(["hubFeatures","$window","auth","i18n",function(e,t,n,r){n.auth.config.translations=UV(UV({},n.auth.config.translations),{},{login:r("Log in"),loginTo:r("Log in to %serviceName%"),cancel:r("Cancel"),postpone:r("Postpone"),youHaveLoggedInAs:r("You have logged in as another user: %userName%"),applyChange:r("Apply change"),backendIsNotAvailable:r("Backend is not available"),checkAgain:r("Check again")}),e.isEnabled("jetbrains.hub.auth.embedded.login.feature").then((function(e){try{("true"===localStorage.getItem(Dl)||!1)!==e&amp;&amp;(localStorage.setItem(Dl,e),t.location.reload())}catch(e){}e&amp;&amp;n.auth.loadCurrentService()}))}]),$V.run(["gettextCatalog",function(e){try{e.debug="true"===localStorage.getItem("debug")}catch(e){}}]),$V.run(["loaderScreen",function(e){e.startInitialLoading()}]),$V.run(["$injector","hubConfig",function(e,t){if(t.debug){var n=e.get("userPermissionsLoader"),r=e.get("$log");n.then((function(){r.debug("Permissions have been loaded.")}),(function(){r.debug("Permissions haven't been loaded.")}))}}]),$V.service("publicSettingsLoader",["SettingsResource","$log",function(e,t){return e.get({id:"public",fields:"locale(name,language,label),systemMessage,installationType,endUserAgreement(requiredForREST)"}).$promise.catch((function(e){return e&amp;&amp;e.authRedirect||t.error("Failed to load default language. Status: ".concat((e||{}).status)),{}}))}]),$V.run(["twoFactorAuthorization",function(e){e.init()}]),$V.run(["$rootScope","$q","publicSettingsLoader","userPermissionsLoader","i18n",function(e,t,n,r,o){function c(){e.appTitle=o("Administration")}e.$on("gettextLanguageChanged",c),c(),n.then((function(t){e.installationType=t.installationType}));var l=n.then((function(e){return"The license has expired"===e.systemMessage}));t.all({isExpiredLoader:l,userPermissionsLoader:r}).then((function(e){var t=e.isExpiredLoader,n=e.userPermissionsLoader.permissionCache;t&amp;&amp;(n.has("jetbrains.jetpass.low-level")&amp;&amp;n.has("jetbrains.jetpass.low-level-read")?s.Z.error([o("The license has expired"),". ",i.createElement(a.Z,{key:"link",href:"licenses"},o("Update the license")),"."],0):s.Z.error("".concat(o("The license has expired"),". ").concat(o("Contact your administrator"),"."),0))}))}]),$V.run(["$rootScope","shortcutsLoader","rgShortcutsHintPopup","i18n","themeDialog",function(e,t,n,r,o){t.addModes(NV()),e.hubGlobalShortcutsMap={openHelp:function(){return n.show({},null,r("Close"),r("Filter shortcuts"))},showThemeDialog:function(){return o()}}}]),$V.run(["$document","$window",function(e,t){if("windows"===WC.os.name){var n=e[0].body;n.style.setProperty("--ring-font-family","'Inter', ".concat(t.getComputedStyle(n).getPropertyValue("--ring-font-family")))}}]),$V.name},73579:e=&gt;{"use strict";e.exports=function(e){return[{id:"ring-shortcuts",shortcuts:[{key:"down",action:"next"},{key:"up",action:"prev"},{key:"esc",action:"main"}]},{id:"ring-tabs",shortcuts:[{key:"down",action:"focus"},{key:"up",action:"focus"},{key:"left",action:"prev"},{key:"right",action:"next"}]},{id:"hub-save-form",shortcuts:[{key:"ctrl+enter",action:"comboSubmit"},{key:"esc",action:"cancel"},{key:"up",action:"skip"},{key:"down",action:"skip"},{key:"left",action:"skip"},{key:"right",action:"skip"}]},{id:"hub-global",title:function(){return e("Generic shortcuts")},shortcuts:[{key:{windows:"shift+f1",linux:"shift+f1",macos:"meta+/"},action:"openHelp",title:function(){return e("View keyboard shortcuts")}},{key:"shift+ctrl+alt+t",action:"showThemeDialog"}]},{id:"goto",title:function(){return e("Global Navigation")},shortcuts:[{key:"meta+k",action:"openGoto",title:function(){return e("Open the Global Search dialog")}},{key:"up",action:"itemUp",title:function(){return e("Set focus to the item above the current item in the search results")}},{key:"down",action:"itemDown",title:function(){return e("Set focus to the item below the current item in the search results")}},{key:"tab",action:"groupDown",title:function(){return e("Jump to the next category in the search results")}},{key:"shift+tab",action:"groupUp",title:function(){return e("Jump to the previous category in the search results")}},{key:"enter",action:"navigate",title:function(){return e("Open the current item")}}]},{id:"table-list",title:function(){return e("Tables &amp; Lists")},shortcuts:[{key:"down",action:"moveDown",titles:[function(){return e("Toggle focus from the filter to the first item")},function(){return e("Set focus to the item below the current item")}]},{key:"up",action:"moveUp",titles:[function(){return e("Toggle focus from the first item to the filter")},function(){return e("Set focus to the item above the current item")}]},{key:"shift",action:"reset"},{key:"shift+up",action:"selectUp",title:function(){return e("Toggle the selection of the current item and move to the item above")}},{key:"shift+down",action:"selectDown",title:function(){return e("Toggle the selection of the current item and move to the item below")}},{key:"space",action:"selectCurrent",title:function(){return e("Toggle the selection of the current item")}},{key:"esc",action:"clearSelection",titles:[function(){return e("Deselect all selected items")},function(){return e("Set focus to the filter")}]},{key:"=",action:"toggle",title:function(){return e("Expand or collapse the current item")}},{key:"enter",action:"go",title:function(){return e("Open the current item")}},{key:"left",action:"showSidebar",title:function(){return e("Show the Details sidebar")}},{key:"right",action:"hideSidebar",title:function(){return e("Hide the Details sidebar")}},{key:"del",action:"delete",title:function(){return e("Delete the current item")}}]},{id:"hub-header",main:!0,shortcuts:[{key:"down",action:"toggleFocus"},{key:"up",action:"toggleFocus"},{key:"esc",action:"setFocus"}]}]}},92880:e=&gt;{"use strict";e.exports=function(e){return[{id:"dashboard-shortcuts",title:function(){return e("Dashboard")},shortcuts:[{key:"meta+enter",action:"saveWidget",title:function(){return e("Save widget")}},{key:{macos:["ctrl+alt+n"],linux:["ctrl+alt+n","alt+shift+ins"],windows:["ctrl+alt+n","alt+shift+ins"]},action:"openAddWidgetDropDown",title:function(){return e("Open the Add Widget menu")}},{key:"alt+shift+n",action:"createNewDashboard",title:function(){return e("Create new dashboard")}},{key:"shift+left",action:"previousDashboard",title:function(){return e("View previous dashboard")}},{key:"shift+right",action:"nextDashboard",title:function(){return e("View next dashboard")}},{key:"shift+down",action:"openDashboardsList",title:function(){return e("Open dashboards list")}},{key:"left",action:"widgetNavigation",title:function(){return e("Select the widget to the left of the current widget")}},{key:"right",action:"widgetNavigation",title:function(){return e("Select the widget to the right of the current widget")}},{key:"up",action:"widgetNavigation",title:function(){return e("Select the widget above the current widget")}},{key:"down",action:"widgetNavigation",title:function(){return e("Select the widget below the current widget")}},{key:"e",action:"editActiveWidget",title:function(){return e("Open the widget menu")}},{key:"esc",action:"clearWidgetSelection",title:function(){return e("Deselect widget")}},{key:"alt+shift+r",action:"refreshAllWidgets",title:function(){return e("Refresh all widgets")}}]},{id:"dashboard-notes",title:function(){return e("Quick Notes Widget")},shortcuts:[{key:{macos:["alt+tab","ctrl+alt+t"],linux:["ctrl+alt+t"],windows:["ctrl+alt+t"]},action:"togglePreview",title:function(){return e("Toggle preview")}}]}]}},94344:()=&gt;{"use strict";angular.module("youtrack.templates",[]),angular.module("dashboard.youtrack-adatper.empty-module",["youtrack.components.constants","youtrack.components.i18n","youtrack.components.resources","youtrack.components.error","youtrack.components.analytics","youtrack.components.report","youtrack.report.gap","youtrack.report.getReportProjectsTitle","youtrack.components.utils","youtrack.reportRange","youtrack.report.issueDistribution.dataLoader","youtrack.components.reportBase","youtrack.report.burndown.dataLoader","youtrack.report.cumulativeFlow.dataLoader","youtrack.report.utils","youtrack.report.gap","youtrack.components.reportTypes","youtrack.components.report","youtrack.report.getReportProjectsTitle","youtrack.report.graphics","youtrack.report.distribution.legend","youtrack.components.customFields"]),angular.module("youtrack.components.resources",[]),angular.module("youtrack.components.error",[]),angular.module("youtrack.components.utils",[]),angular.module("youtrack.reportRange",[]),angular.module("youtrack.report.issueDistribution.dataLoader",[]),angular.module("youtrack.components.reportBase",[]),angular.module("youtrack.report.burndown.dataLoader",[]),angular.module("youtrack.report.cumulativeFlow.dataLoader",[]),angular.module("youtrack.report.utils",[]),angular.module("youtrack.report.gap",[]),angular.module("youtrack.components.reportTypes",[]),angular.module("youtrack.components.report",[]),angular.module("youtrack.report.getReportProjectsTitle",[]),angular.module("youtrack.report.graphics",[]),angular.module("youtrack.report.distribution.legend",[]),angular.module("youtrack.components.reportBase",[]),angular.module("youtrack.components.customFields",[])},11166:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_cs.hub.ea05dfed013ccefaeb0006ef7c2efa55.json"},12114:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_de.hub.ff48d839f5ae0006c2d7089958ad3a6a.json"},23563:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_en.hub.ad2734398a5d871f7ac1b591a9928e44.json"},66413:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_eo.hub.ae88c44933631179bf434d01be707580.json"},94106:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_es.hub.a84f5f17b3b047316764ae63ed0f1f73.json"},60868:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_fr.hub.ae107309051885a68792b6470dd506db.json"},46022:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_he.hub.f0c6a4eff8338554884f19997244e675.json"},29470:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_hu.hub.fdd49cfd3918e541793a1590c88402e1.json"},44702:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_it.hub.1c8372c58996a9463b0afce5e7e80eed.json"},67963:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_ja.hub.f7e26f741f736e8df5c80a9c81411899.json"},56318:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_ko.hub.6acd0e61af68d857e594d7b4667ab043.json"},98320:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_pl.hub.7f1d57f50c2c66710a7563a5ca533b36.json"},51031:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_pt.hub.f56f4cc82fc7ae1271a26ce0efa691f1.json"},96710:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_ru.hub.3a906366c85f60e6e417efe63c16f178.json"},13392:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_uk.hub.11b3ac4b4bb70138a3ab83cecd5c6d62.json"},59484:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_zh.hub.c8cac94b1cdc63ce163fea65ca0db577.json"},24832:(e,t,n)=&gt;{e.exports=n.p+"translations/locale_zu.hub.4dadd26f2d3ee555dce9dae5269e0e7e.json"},78700:e=&gt;{e.exports='&lt;div&gt;\n  &lt;div class="hub-menu__help-container"&gt;&lt;/div&gt;\n  &lt;hr class="hub-menu__help-separator"/&gt;\n  &lt;div class="hub-menu__help-links"&gt;\n    &lt;a ng-href="{{(documentationURL || \'HUB-Documentation\') | getHubHelpUrl}}" class="ring-link hub-menu__help-link"&gt;&lt;span\n      translate&gt;Documentation&lt;/span&gt;&lt;/a&gt;\n    &lt;a class="ring-link hub-menu__help-link" ng-click="openShortcutsHelp()"&gt;&lt;span translate&gt;Keyboard Shortcuts&lt;/span&gt;&lt;/a&gt;\n    &lt;a class="ring-link hub-menu__help-link" href="https://hub-support.jetbrains.com" translate&gt;Support&lt;/a&gt;\n    &lt;hub-page-help-update-link&gt;&lt;/hub-page-help-update-link&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},7495:e=&gt;{e.exports='&lt;div class="ring-form__group hub-file-input" ng-class="{\'hub-file-input__without-label\': !label}"&gt;\n  &lt;label class="ring-form__label"&gt;{{label}}&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;div rg-button-group ng-if="!hideToggle" class="hub-file-input__tabs"&gt;\n      &lt;rg-button ng-click="enableFileMode()" active="isFileMode()" data-test="button-type-file"&gt;&lt;span translate&gt;File&lt;/span&gt;&lt;/rg-button&gt;\n      &lt;rg-button ng-click="enableTextMode()" active="isTextMode()" data-test="button-type-text"&gt;&lt;span translate&gt;Plain text&lt;/span&gt;&lt;/rg-button&gt;\n    &lt;/div&gt;\n\n    &lt;div&gt;\n      &lt;textarea\n        class="ring-input ring-input-size_m ring-input-height_l"\n        data-test="textarea-base64-data"\n        ng-show="isTextMode()"\n        ng-attr-id="{{isTextMode() ? inputId : \'\'}}"\n        ng-attr-name="{{name}}"\n        ng-attr-placeholder="{{!fileApiSupport ? unsupportedText : \'\'}}"\n        ng-required="true"\n        ng-readonly="fileLoaded"\n        ng-model="base64Data"\n      &gt;&lt;/textarea&gt;\n    &lt;/div&gt;\n\n    &lt;div ng-show="fileApiSupport"&gt;\n      &lt;div ng-show="isFileMode()"&gt;\n        &lt;div class="hub-file-input__file" ng-show="selectedFile.name"&gt;{{selectedFile.name}}&lt;/div&gt;\n\n        &lt;rg-button\n          ng-click="chooseFile()"\n          data-test="button-select-file"\n          text="true"\n          inline="true"\n          class="hub-file-input__button"\n        &gt;\n          &lt;span ng-show="!selectedFile.name" translate&gt;Choose fileâ€¦&lt;/span&gt;\n          &lt;span ng-show="selectedFile.name" translate&gt;Change fileâ€¦&lt;/span&gt;\n        &lt;/rg-button&gt;\n      &lt;/div&gt;\n\n      &lt;input type="file" ng-attr-id="{{isFileMode() ? inputId : \'\'}}" name="{{name}}" data-test="input-file"/&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__control ring-form__control__description" ng-transclude&gt;&lt;/div&gt;\n&lt;/div&gt;\n'},46053:e=&gt;{e.exports='&lt;span hub-legacy-href="$ctrl.value.type / $ctrl.value.id" title="{{:: $ctrl.value.title }}"&gt;{{:: $ctrl.value.name }}&lt;/span&gt;\n'},87052:e=&gt;{e.exports='&lt;table class="event-changes"&gt;\n    &lt;tr ng-repeat="line in $ctrl.lines"&gt;\n        &lt;td class="event-changes__field-name" title="{{ line.nameTitle }}"&gt;\n            &lt;span ng-style="{\'padding-left\': (line.offset * 8) + \'px\'}"&gt;&lt;/span&gt;\n            {{:: line.name }}\n        &lt;/td&gt;\n        &lt;td class="event-changes__values" ng-if="line.isSingle()"&gt;\n            &lt;span&gt;&amp;nbsp;&lt;/span&gt;\n            &lt;span&gt;&lt;event-change-value value="line.removed[0]"/&gt;&lt;/span&gt;\n            &lt;span&gt;â†’&lt;/span&gt;\n            &lt;span class="event-list__changes__values__added"&gt;&lt;event-change-value value="line.added[0]"/&gt;&lt;/span&gt;\n        &lt;/td&gt;\n        &lt;td class="event-changes__values" ng-if="!line.isSingle()"&gt;\n          &lt;span&gt;&amp;nbsp;&lt;/span&gt;\n          &lt;span ng-repeat="value in line.added"\n            &gt;&lt;span class="event-list__changes__values__added"&gt;&lt;event-change-value value="value"/&gt;&lt;/span&gt;{{ $last ? \'\' : \', \' }}\n          &lt;/span&gt;\n          &lt;span ng-repeat="value in line.removed"\n            &gt;&lt;span class="event-list__changes__values__removed"&gt;&lt;event-change-value value="value"/&gt;&lt;/span&gt;{{ $last ? \'\' : \', \' }}\n          &lt;/span&gt;\n        &lt;/td&gt;\n    &lt;/tr&gt;\n&lt;/table&gt;\n'},75780:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label {{ $ctrl.bold &amp;&amp; \'form-controls__bold\' }}"&gt;{{$ctrl.label}}&lt;/label&gt;\n\n  &lt;div class="ring-form__control hub-form-control"&gt;\n    &lt;div rg-button-group&gt;\n      &lt;rg-button active="$ctrl.isActive(true)" ng-disabled="$ctrl.disabled" rg-promised-click="$ctrl.toggle(true)"&gt;{{$ctrl.primaryLabel}}&lt;/rg-button&gt;\n      &lt;rg-button active="$ctrl.isActive(false)" ng-disabled="$ctrl.disabled" rg-promised-click="$ctrl.toggle(false)"&gt;{{$ctrl.secondaryLabel}}&lt;/rg-button&gt;\n    &lt;/div&gt;\n\n    &lt;span ng-transclude="description" class="ring-form__control__description"&gt;&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},26689:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label"&gt;{{$ctrl.label}}&lt;/label&gt;\n\n  &lt;div class="ring-form__control hub-form-control" ng-form="controlForm"&gt;\n    &lt;div\n      class="ring-input-size_md"\n      rg-select\n      select-type="dropdown"\n      external-filter="true"\n      config="$ctrl.config"\n      options="{{$ctrl.options}}"\n      options-scope="$ctrl.optionsScope"\n      select-instance="$ctrl.selectInstance"\n      on-select="$ctrl.selectOption(selected.originalModel)"\n      ng-disabled="$ctrl.disabled"\n    &gt;\n      &lt;input class="ring-input ring-input-size_md ring-js-shortcuts {{$ctrl.extraClass}}"\n             ng-model="$ctrl.model"\n             ng-change="$ctrl.onComboInputKeyPress()"\n             ng-model-options="{allowInvalid : true}"\n\n             model-validators="$ctrl.validators"\n             ng-attr-placeholder="{{$ctrl.placeholder}}"\n             ng-disabled="$ctrl.disabled"\n             ng-required="$ctrl.required"\n      &gt;\n    &lt;/div&gt;\n\n    &lt;div ng-if="$ctrl.showWarning &amp;&amp; controlForm.$invalid === true" class="ring-error-bubble active" rg-error-bubble="controlForm"&gt;&lt;/div&gt;\n\n    &lt;span ng-transclude="controls"&gt;&lt;/span&gt;\n\n    &lt;span ng-transclude="description" class="ring-form__control__description"&gt;&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},28820:(e,t,n)=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label"&gt;{{$ctrl.label}}&lt;/label&gt;\n\n  &lt;div class="ring-form__control hub-form-control" ng-form="controlForm"&gt;\n    &lt;input class="ring-input ring-input-size_{{$ctrl.size}} ring-js-shortcuts {{$ctrl.extraClass}}"\n           ng-model="$ctrl.model"\n           ng-model-options="{allowInvalid : true}"\n           model-validators="$ctrl.validators"\n           ng-attr-placeholder="{{$ctrl.placeholder}}"\n           ng-attr-name="{{$ctrl.name}}"\n           ng-disabled="$ctrl.disabled"\n           ng-required="$ctrl.required"\n           ng-attr-type="{{$ctrl.type}}"\n           ng-attr-min="{{$ctrl.min}}"\n           ng-attr-max="{{$ctrl.max}}"\n           ng-attr-pattern="{{$ctrl.pattern}}"&gt;\n\n    &lt;div ng-if="$ctrl.showWarning &amp;&amp; controlForm.$invalid === true" class="ring-error-bubble active" rg-error-bubble="controlForm"&gt;&lt;/div&gt;\n\n    &lt;span class="ring-form__control__description"&gt;\n      &lt;span ng-transclude="description"&gt;&lt;/span&gt;\n      &lt;rg-icon ng-if="$ctrl.help" rg-tooltip="$ctrl.help" glyph="'+n(69840)+'" size="16" class="form-controls__help"&gt;&lt;/rg-icon&gt;\n    &lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},97074:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label"&gt;{{$ctrl.label}}&lt;/label&gt;\n\n  &lt;div class="ring-form__control hub-form-control" ng-form="controlForm"&gt;\n    &lt;textarea class="ring-input ring-js-shortcuts form-controls__textarea {{$ctrl.extraClass}}"\n              ng-attr-placeholder="{{$ctrl.placeholder}}"\n              ng-attr-name="{{$ctrl.name}}"\n\n              array-as-textarea="$ctrl.array"\n              format-element="$ctrl.formatter"\n              parse-element="$ctrl.parser"\n\n              msd-elastic="\\n"\n              ng-model="$ctrl.model"\n              ng-model-options="{allowInvalid : true}"\n\n              ng-disabled="$ctrl.disabled"\n              ng-required="$ctrl.required"&gt;&lt;/textarea&gt;\n\n    &lt;span ng-transclude="description" class="ring-form__control__description"&gt;&lt;/span&gt;\n\n    &lt;span class="form-controls__content" ng-transclude="content"&gt;&lt;/span&gt;\n\n    &lt;div rg-error-bubble="controlForm"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},83267:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label {{ $ctrl.bold &amp;&amp; \'form-controls__bold\' }}"&gt;{{$ctrl.label}}&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;div rg-button-group&gt;\n      &lt;rg-button ng-repeat="item in $ctrl.items"\n                 active="$ctrl.isActive(item.value)"\n                 ng-disabled="$ctrl.disabled"\n                 ng-click="$ctrl.set(item.value)"&gt;{{item.label}}&lt;/rg-button&gt;\n    &lt;/div&gt;\n\n    &lt;span ng-transclude="description" class="ring-form__control__description"&gt;&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},73542:(e,t,n)=&gt;{e.exports='&lt;div&gt;\n  &lt;div class="form-controls__expander__label"&gt;\n    &lt;div class="form-controls__expander__label__text" ng-click="$ctrl.toggle()"&gt;\n      &lt;rg-icon ng-show="!$ctrl.opened" glyph="'+n(25426)+'" size="16"&gt;&lt;/rg-icon&gt;\n      &lt;rg-icon ng-show="$ctrl.opened" glyph="'+n(96971)+'" size="16"&gt;&lt;/rg-icon&gt;\n\n      {{$ctrl.label}}\n    &lt;/div&gt;\n    &lt;div class="form-controls__expander__label__status" ng-transclude="status" ng-show="!$ctrl.opened"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="form-controls__expander__content" ng-transclude="details" ng-show="$ctrl.opened"&gt;&lt;/div&gt;\n&lt;/div&gt;\n'},42266:e=&gt;{e.exports='&lt;div ng-form="$ctrl.saveForm" class="ring-form"\n      rg-shortcuts="hub-save-form" shortcuts-map="$ctrl.keyMap" shortcuts-focus="$ctrl.saveForm.$dirty"&gt;\n  &lt;div ng-transclude&gt;&lt;/div&gt;\n\n  &lt;div rg-panel ng-if="$ctrl.dirty" rg-docked-panel class="{{ $ctrl.panelClass }}"&gt;\n    &lt;rg-button data-test="form-save-button"\n               type="button"\n               mode="primary"\n               class="form-controls__button-group__primary-button"\n               ng-disabled="$ctrl.saveForm.$invalid"\n               loader="$ctrl.saving"\n               ng-click="$ctrl.save()"&gt;\n      &lt;span translate&gt;Save&lt;/span&gt;\n    &lt;/rg-button&gt;\n\n    &lt;rg-button data-test="form-reset-button"\n               ng-disabled="$ctrl.saving"\n               type="button"\n               ng-click="$ctrl.reset()"&gt;\n      &lt;span translate=""&gt;Cancel&lt;/span&gt;\n    &lt;/rg-button&gt;\n\n  &lt;/div&gt;\n&lt;/div&gt;\n'},55637:e=&gt;{e.exports="&lt;div class=\"ring-form__group {{$ctrl.bold &amp;&amp; 'form-controls__bold'}}\"&gt;\n  &lt;span ng-transclude&gt;&lt;/span&gt;\n&lt;/div&gt;\n"},26138:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label"&gt;{{$ctrl.label}}&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;rg-avatar-editor\n            ng-model="$ctrl.model"\n            on-select="$ctrl.select(data)"\n            ng-disabled="$ctrl.disabled"&gt;\n    &lt;/rg-avatar-editor&gt;\n    &lt;form-control-description&gt;\n      &lt;span translate&gt;Upload a JPG, GIF, or PNG file. The image is resized to 48 x 48 pixels automatically.&lt;/span&gt;\n    &lt;/form-control-description&gt;\n    &lt;ng-transclude&gt;&lt;/ng-transclude&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},17738:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n      &lt;span class="ring-form__label"&gt;{{$ctrl.label}}&lt;/span&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;a class="ring-link" ng-href="{{ $ctrl.link }}" target="_self"&gt;{{ $ctrl.link }}&lt;/a&gt;\n\n    &lt;div class="ring-form__control__description" ng-show="$ctrl.description"&gt;{{$ctrl.description}}&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},62761:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label hub-form__select-label"&gt;{{$ctrl.label}}&lt;/label&gt;\n\n  &lt;div class="ring-form__control hub-form-control" ng-form="controlForm"&gt;\n    &lt;rg-select\n      class="ring-input-size_md"\n      lazy="$ctrl.lazy"\n      select-type="{{$ctrl.selectType}}"\n      label="{{$ctrl.selectLabel}}"\n      external-filter="!$ctrl.noFilter"\n      options="{{$ctrl.options}}"\n      options-scope="$ctrl.optionsScope"\n      config="$ctrl.config"\n      ng-model="$ctrl.model"\n      model-validators="$ctrl.validators"\n      ng-disabled="$ctrl.disabled"\n      ng-required="$ctrl.required"&gt;\n    &lt;/rg-select&gt;\n\n\n    &lt;div rg-error-bubble="controlForm"&gt;&lt;/div&gt;\n\n    &lt;span ng-transclude="controls"&gt;&lt;/span&gt;\n\n    &lt;span ng-transclude="description" class="ring-form__control__description"&gt;&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},54697:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;span class="ring-form__label {{$ctrl.bold &amp;&amp; \'form-controls__bold\'}}"&gt;{{$ctrl.label}}&lt;/span&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;span ng-show="$ctrl.text"&gt;{{$ctrl.text}}&lt;/span&gt;\n\n    &lt;span ng-transclude&gt;&lt;/span&gt;\n\n    &lt;div class="ring-form__control__description" ng-show="$ctrl.description"&gt;{{$ctrl.description}}&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},16596:(e,t,n)=&gt;{e.exports='&lt;div class="ring-form__group {{$ctrl.extraClass}}"&gt;\n  &lt;span ng-hide="{{$ctrl.buttonOnly}}" class="ring-form__label  {{$ctrl.bold &amp;&amp; \'form-controls__bold\'}}"&gt;{{$ctrl.label}}&lt;/span&gt;\n\n  &lt;div class="ring-form__control {{$ctrl.extraClass}}"&gt;\n    &lt;span ng-hide="{{$ctrl.buttonOnly}}" class="form-controls__textcopy__text" ng-show="$ctrl.text"&gt;{{$ctrl.text}}&lt;/span&gt;\n    &lt;rg-button\n      ng-click="$ctrl.copy()"\n      title="{{ \'Copy to clipboard\' | translate}}"\n      text="true"\n    &gt;\n      &lt;rg-icon size="16" glyph="'+n(1697)+'"&gt;&lt;/rg-icon&gt;\n    &lt;/rg-button&gt;\n    &lt;div ng-hide="{{$ctrl.buttonOnly}}" class="ring-form__control__description" ng-show="$ctrl.description"&gt;{{$ctrl.description}}&lt;/div&gt;\n    &lt;span ng-transclude&gt;&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},95123:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label {{ $ctrl.bold &amp;&amp; \'form-controls__bold\' }}"&gt;{{$ctrl.label}}&lt;/label&gt;\n\n  &lt;div class="ring-form__control hub-form-control"&gt;\n    &lt;rg-toggle\n      class="form-controls__toggle"\n      checked="$ctrl.model"\n      ng-disabled="$ctrl.disabled"\n      on-change="$ctrl.toggle"\n      data-test-checked="{{$ctrl.model}}"\n    &gt;&lt;/rg-toggle&gt;\n    &lt;span ng-transclude="description" class="ring-form__control__description"&gt;&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},14400:(e,t,n)=&gt;{e.exports='&lt;div class="goto ng-cloak" rg-shortcuts="goto" shortcuts-map="modesKeys" shortcuts-focus="true"&gt;\n    &lt;div class="goto__header"&gt;\n        &lt;span&gt;{{key}} + K&lt;/span&gt;\n\n        &lt;rg-button\n          class="goto__header__close"\n          ng-click="close()"\n          icon="'+n(9912)+'"\n          theme="dark"\n        &gt;&lt;/rg-button&gt;\n    &lt;/div&gt;\n    &lt;div&gt;\n        &lt;div class="goto__filter"&gt;\n            &lt;input ng-model="searchPhrase"\n                   ng-blur="restoreFilterFocus()"\n                   autocomplete="off"\n                   data-test="goto-input"\n                   type="text"\n                   class="goto__filter__input ring-js-shortcuts"\n            &gt;\n\n            &lt;div class="goto__filter__placeholder" ng-show="!searchPhrase.length" translate&gt;Where do you want to go?&lt;/div&gt;\n\n            &lt;div class="ring-loader-inline goto__filter__loader" ng-show="loading"&gt;\n                &lt;div class="ring-loader-inline__ball"&gt;&lt;/div&gt;\n                &lt;div class="ring-loader-inline__ball ring-loader-inline__ball_second"&gt;&lt;/div&gt;\n                &lt;div class="ring-loader-inline__ball ring-loader-inline__ball_third"&gt;&lt;/div&gt;\n            &lt;/div&gt;\n        &lt;/div&gt;\n        &lt;div ng-show="results.length" class="goto__data"&gt;\n          &lt;div ng-repeat="group in results track by group.type"&gt;\n              &lt;div class="goto__data__label"&gt;{{ group.label }}\n                  &lt;span class="goto__data__label__counter" ng-show="group.total"&gt;\n                  &lt;span translate&gt;{{ group.total }} more&lt;/span&gt;&lt;/span&gt;\n              &lt;/div&gt;\n              &lt;div class="goto__data__item"\n                   ng-class="{\'active\': active.group === $parent.$index &amp;&amp; active.item === $index}"\n                   ng-repeat="item in group.data track by item.id"\n                   ng-click="::item.go()"&gt;\n\n                &lt;div class="goto__data__item__icon"&gt;\n                  &lt;img ng-show="item.icon" ng-src="{{ ::item.icon }}" src=""&gt;\n                  &lt;rg-icon ng-show="!item.icon" color="GRAY" size="18" glyph="{{ ::item.emptyIcon }}"&gt;&lt;/rg-icon&gt;\n                &lt;/div&gt;\n\n                &lt;div class="goto__data__item__text"&gt;\n                    &lt;div class="goto__data__item__text__label"&gt;{{ ::item.label }}&lt;/div&gt;\n                    &lt;div class="goto__data__item__text__description" title="{{ ::item.description }}"&gt;{{ ::item.description }}&lt;/div&gt;\n                &lt;/div&gt;\n              &lt;/div&gt;\n          &lt;/div&gt;\n        &lt;/div&gt;\n        &lt;div ng-show="!results.length" class="goto__empty"&gt;\n            &lt;span ng-show="searchPhrase &amp;&amp; !inProgress" translate&gt;Nothing matched your request&lt;/span&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n    &lt;div ng-show="results.length &gt; 1" class="goto__footer"&gt;\n        &lt;span class="goto__footer__commands" translate&gt;TAB or SHIFT+TAB&lt;/span&gt;\n        &lt;span translate&gt;jump between categories&lt;/span&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},53702:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;label\n    class="ring-form__label groups-picker__label {{$ctrl.bold &amp;&amp; \'form-controls__bold\'}}"\n    ng-if="$ctrl.label"\n    translate&gt;{{$ctrl.label}}&lt;/label&gt;\n\n  &lt;div class="ring-form__control" ng-class="{\'groups-picker__control-without-label\': !$ctrl.label}"&gt;\n    &lt;rg-tags-input\n      height="\'S\'"\n      size="\'L\'"\n      tags="$ctrl.tags"\n      x-data-source="$ctrl.datasource"\n      on-add-tag="$ctrl.onAdd"\n      on-remove-tag="$ctrl.onRemove"\n      placeholder="$ctrl.placeholder"\n      data-disabled="$ctrl.disabled"\n      loading-message="\'Loading...\' | translate"\n    &gt;&lt;/rg-tags-input&gt;\n\n    &lt;span ng-transclude="description" class="ring-form__control__description"&gt;&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},64935:e=&gt;{e.exports='&lt;rg-footer&gt;\n  &lt;rg-footer-left&gt;\n    &lt;rg-footer-line&gt;\n      &lt;span&gt;JetBrains&lt;/span&gt;\n      &lt;a ng-href="{{:: $ctrl.documentationUrl}}" class="ring-link" translate&gt;Hub {{:: $ctrl.config.build.version}}&lt;/a&gt;\n    &lt;/rg-footer-line&gt;\n    &lt;rg-footer-line&gt;\n      &lt;span translate&gt;Build&lt;/span&gt;\n      &lt;span&gt;{{:: $ctrl.config.build.number}}&lt;/span&gt;\n      &lt;span&gt;[{{:: $ctrl.config.build.date}}]&lt;/span&gt;\n\n      &lt;span ng-show="$ctrl.installation"&gt;\n        &lt;span ng-show="!$ctrl.isDockerInstallation()" translate&gt;{{$ctrl.installation}} Installation&lt;/span&gt;\n        &lt;span ng-show="$ctrl.isDockerInstallation()" translate&gt;Docker Image&lt;/span&gt;\n      &lt;/span&gt;\n    &lt;/rg-footer-line&gt;\n  &lt;/rg-footer-left&gt;\n  &lt;rg-footer-center&gt;\n    &lt;rg-footer-line&gt;\n      &lt;span translate&gt;{{:: $ctrl.copyrightYears}} JetBrains Â· All rights reserved&lt;/span&gt;\n    &lt;/rg-footer-line&gt;\n  &lt;/rg-footer-center&gt;\n  &lt;rg-footer-right&gt;\n    &lt;rg-footer-line&gt;\n      &lt;a href="https://hub-support.jetbrains.com" class="ring-link" translate&gt;Support&lt;/a&gt;\n      &lt;span&gt;Â·&lt;/span&gt;\n      &lt;a href="https://www.jetbrains.com/feedback/feedback.jsp?product=Hub" class="ring-link" translate&gt;Feedback&lt;/a&gt;\n    &lt;/rg-footer-line&gt;\n  &lt;/rg-footer-right&gt;\n&lt;/rg-footer&gt;\n\n\n'},52347:e=&gt;{e.exports='&lt;div class="ring-form__group license-list__row" ng-switch="$ctrl.data.licenseInfo.product"&gt;\n  &lt;label class="ring-form__label"\n         translate&gt;Product&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;span ng-switch-when="0"&gt;YouTrack&lt;/span&gt;\n    &lt;span ng-switch-when="1"&gt;Upsource&lt;/span&gt;\n    &lt;span ng-switch-when="2"&gt;Hub&lt;/span&gt;\n    &lt;span ng-switch-default&gt;&lt;span translate&gt;Unknown&lt;/span&gt;&lt;/span&gt;\n          &lt;span ng-if="$ctrl.data.licenseInfo.buildNumber === 1000000"&gt;(&lt;span\n            translate&gt;EAP builds only&lt;/span&gt;)&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group license-list__row" ng-switch="$ctrl.data.licenseInfo.licenseType"&gt;\n  &lt;label class="ring-form__label"\n         translate&gt;License type&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;span ng-switch-when="0"&gt;&lt;span translate&gt;Commercial&lt;/span&gt;&lt;/span&gt;\n    &lt;span ng-switch-when="1"&gt;&lt;span translate&gt;Free&lt;/span&gt;&lt;/span&gt;\n    &lt;span ng-switch-when="2"&gt;&lt;span translate&gt;Trial&lt;/span&gt;&lt;/span&gt;\n    &lt;span ng-switch-when="3"&gt;&lt;span translate&gt;Open Source&lt;/span&gt;&lt;/span&gt;\n    &lt;span ng-switch-when="4"&gt;&lt;span translate&gt;Classroom&lt;/span&gt;&lt;/span&gt;\n    &lt;span ng-switch-default&gt;&lt;span translate&gt;Unknown&lt;/span&gt;&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group license-list__row" ng-show="!$ctrl.isUnlimitedLicense()"&gt;\n  &lt;label class="ring-form__label"\n         translate&gt;Standard user licenses&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;span translate&gt;{{ $ctrl.data.availableLicenses }} of {{ $ctrl.data.licenseInfo.userCount | licenseNumber }} available&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group license-list__row" ng-if="$ctrl.isUnlimitedLicense()"&gt;\n  &lt;label class="ring-form__label"\n         translate&gt;Standard user licenses&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;span&gt;{{ $ctrl.data.licenseInfo.userCount | agentReporterNumber }}&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group license-list__row"&gt;\n  &lt;label class="ring-form__label"\n         translate&gt;Agent licenses&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;span&gt;{{ $ctrl.data.licenseInfo.agentCount | agentReporterNumber }}&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group license-list__row"&gt;\n  &lt;label class="ring-form__label"\n         translate&gt;Reporter licenses&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;span&gt;{{ $ctrl.data.licenseInfo.reporterCount | licenseNumber }}&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group license-list__row"&gt;\n  &lt;label class="ring-form__label"\n         translate&gt;Ban guest&lt;/label&gt;\n\n    &lt;div class="ring-form__control" ng-show="$ctrl.data.licenseInfo.guestBanForbidden"\n    translate&gt;Forbidden&lt;/div&gt;\n\n    &lt;div class="ring-form__control" ng-show="!$ctrl.data.licenseInfo.guestBanForbidden"\n    translate&gt;Allowed&lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group license-list__row"&gt;\n    &lt;label class="ring-form__label"\n         translate&gt;Expiration date&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      {{ $ctrl.data.licenseInfo.expirationDate | licenseDate }}\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group license-list__row"&gt;\n  &lt;label class="ring-form__label"\n         translate&gt;Free updates until&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      {{ $ctrl.data.licenseInfo.freeUpdateEnd | licenseDate }}\n    &lt;/div&gt;\n&lt;/div&gt;\n'},22623:e=&gt;{e.exports='&lt;div class="markdown-reference"&gt;\n  &lt;span translate&gt;\n    **Strong**&amp;nbsp;&amp;nbsp;\n    # Heading&amp;nbsp;&amp;nbsp;\n    &amp;gt; Quote&amp;nbsp;&amp;nbsp;\n    [link text](URL)&amp;nbsp;&amp;nbsp;\n  &lt;/span&gt;\n  &lt;hub-help-link url="Markdown-Syntax.html" target="_blank"&gt;\n    &lt;span translate-comment="link to markdown syntax from Auth Modules &gt; Common Settings, Project Settings, and User Agreement administration page."\n          translate&gt;View Markdown reference&lt;/span&gt;\n  &lt;/hub-help-link&gt;\n&lt;/div&gt;\n'},17220:e=&gt;{e.exports='&lt;hub-members-picker\n  model="data.members"\n  exclude="data.exclude"\n  required="true"\n  datasource="data.datasource"\n&gt;&lt;/hub-members-picker&gt;\n'},74463:(e,t,n)=&gt;{e.exports='&lt;div class="organization-tab"&gt;\n  &lt;rg-sidebar\n    data-test="organization-sidebar"\n    show="$ctrl.isSidebarShown"\n    place-under-sibling=".ring-table__toolbar"\n    sync-bottom="[data-test=\'ring-footer\'];-40"\n    top-offset="1"\n  &gt;\n    &lt;rg-template ng-if="$ctrl.sidebarElement" template="$ctrl.sidebarTemplate"&gt;&lt;/rg-template&gt;\n\n    &lt;div ng-if="!$ctrl.sidebarElement" class="ring-sidebar__empty" data-test="table-sidebar-empty"&gt;\n      &lt;rg-icon class="ring-sidebar__empty-icon" size="128" glyph="'+n(57522)+'"&gt;&lt;/rg-icon&gt;\n      &lt;div class="ring-sidebar__empty-description"&gt;{{\'Select an item to see details\' | translate}}&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/rg-sidebar&gt;\n\n  &lt;rg-legacy-table-toolbar stick container=".organization-tab"&gt;\n    &lt;div ng-controller="OrgMembersToolbarController as toolbarCtrl"&gt;\n      &lt;rg-template data-test="table-toolbar-left" template="$ctrl.toolbarLeftTemplate"&gt;&lt;/rg-template&gt;\n      &lt;rg-template class="organization-tab__toolbar-right" data-test="table-toolbar-right" template="$ctrl.toolbarRightTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/div&gt;\n  &lt;/rg-legacy-table-toolbar&gt;\n\n  &lt;div ng-if="$ctrl.groupingState"&gt;\n    &lt;rg-data-list\n      data="$ctrl.ownUserItems"\n      selection="$ctrl.selection"\n      remote-selection="true"\n      on-select="$ctrl.onSelect"\n      item-formatter="$ctrl.itemFormatter"\n      shortcuts="$ctrl.shortcuts"\n    &gt;&lt;/rg-data-list&gt;\n\n    &lt;div ng-show="!$ctrl.loading &amp;&amp; $ctrl.totalOwnUsers &amp;&amp; $ctrl.totalOwnUsers &gt; $ctrl.ownUserItems.length" class="organization-tab__load-more"&gt;\n      &lt;a class="ring-link ring-link_pseudo" ng-click="$ctrl.loadMoreOwnUsers()"&gt;\n        &lt;span translate&gt;Show more&lt;/span&gt;\n      &lt;/a&gt;\n      &lt;rg-loader-inline ng-show="$ctrl.loadingMore"&gt;&lt;/rg-loader-inline&gt;\n    &lt;/div&gt;\n\n    &lt;rg-data-list\n      data="$ctrl.otherUserItems"\n      selection="$ctrl.selection"\n      on-select="$ctrl.onSelect"\n      remote-selection="true"\n      item-formatter="$ctrl.itemFormatter"\n      loading="$ctrl.loading"\n      class="organization-tab__data-list"\n      shortcuts="$ctrl.shortcuts"\n\n      item-more-less-state="$ctrl.itemMoreLessState"\n      on-item-more-less="$ctrl.onItemMoreLess"\n    &gt;&lt;/rg-data-list&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-if="!$ctrl.groupingState" class="organization-tab__data-list"&gt;\n    &lt;rg-data-list\n      class="organization-tab__data-list"\n      data="$ctrl.otherUserItems"\n      selection="$ctrl.selection"\n      remote-selection="true"\n      on-select="$ctrl.onSelect"\n      item-formatter="$ctrl.itemFormatter"\n      shortcuts="$ctrl.shortcuts"\n      loading="$ctrl.loading"\n    &gt;&lt;/rg-data-list&gt;\n\n    &lt;div class="table__bottom-pager"&gt;\n      &lt;rg-pager\n        total="$ctrl.usersTotal"\n        class="table__bottom-pager__inner"\n        current-page="$ctrl.pager.currentPage"\n        page-size="$ctrl.pager.pageSize"\n        translations="$ctrl.pager.translations"\n        on-page-change="$ctrl.pager.onPageChange"\n        on-page-size-change="$ctrl.pager.onPageSizeChange"\n      &gt;&lt;/rg-pager&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n&lt;/div&gt;\n'},38877:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;span\n    translate-context="Remove organization members"\n    translate-comment="When you confirm this action, 2 users and the \'GroupName\' group are removed from the organization"\n    translate&gt;When you confirm this action, &lt;/span&gt;\n\n  &lt;b ng-show="data.users.length === 1"&gt;{{data.users[0].name}}&lt;/b&gt;\n  &lt;b ng-show="data.users.length &gt; 1"\n     translate-context="Remove organization members"\n     translate-comment="When you confirm this action, 2 users and the \'GroupName\' group are removed from the organization"\n     translate\n     translate-plural="{{$count}} users"\n     translate-n="data.users.length"&gt;\n    {{$count}} user\n  &lt;/b&gt;\n\n  &lt;span\n    ng-show="data.groups.length &amp;&amp; data.users.length"\n    translate-context="Remove organization members"\n    translate-comment="When you confirm this action, 2 users and the \'GroupName\' group are removed from the organization"\n    translate&gt;and&lt;/span&gt;\n\n  &lt;span ng-show="data.groups.length === 1"\n        translate-context="Remove organization members"\n        translate-context="When you confirm this action, 2 users and the \'GroupName\' group are removed from the organization"\n        translate&gt;the &lt;b&gt;{{data.groups[0].name}} group&lt;/b&gt;&lt;/span&gt;\n  &lt;b ng-show="data.groups.length &gt; 1"\n     translate-context="Remove organization members"\n     translate-comment="When you confirm this action, 2 users and 3 groups are removed from the organization"\n     translate\n     translate-plural="{{$count}} groups"\n     translate-n="data.groups.length"&gt;\n    {{$count}} group\n  &lt;/b&gt;\n\n  &lt;span ng-show="data.groupingState"&gt;\n    &lt;span\n      translate\n      translate-context="Remove organization members"\n      translate-comment="When you confirm this action, 2 users and the 3 groups are removed from the organization"\n      translate-plural="are removed from the organization"\n      translate-n="data.groups.length + data.users.length"\n    &gt;is removed from the organization&lt;/span&gt;\n  &lt;/span&gt;\n\n  &lt;span ng-show="!data.groupingState"&gt;\n    &lt;span\n      translate\n      translate-context="Remove organization members"\n      translate-comment="When you confirm this action, 2 users are no longer added to the organization directly"\n      translate-plural="are no longer added to the organization directly"\n      translate-n="data.users.length"\n    &gt;is no longer added to the organization directly&lt;/span&gt;\n  &lt;/span&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group" ng-show="!data.groupingState"&gt;\n  &lt;span ng-show="data.users.length === 1" translate&gt;The user remains in the organization as a member of one or more groups that are assigned to the organization&lt;/span&gt;\n  &lt;span ng-show="data.users.length &gt; 1" translate&gt;The users remain in the organization as members of one or more groups that are assigned to the organization&lt;/span&gt;\n&lt;/div&gt;\n\n&lt;div ng-if="data.hasNonEmptyGroups"&gt;\n  &lt;div translate class="project-page__options-title"&gt;Select an option for removing this group:&lt;/div&gt;\n\n  &lt;div class="project-page__options-option"&gt;\n    &lt;rg-radio\n      ng-value="dialog.data.WHOLE_GROUP"\n      name="option"\n      ng-model="data.option"\n      data-test="remove-with-members"\n    &gt;\n      &lt;span translate&gt;Remove the group and its members from the organization&lt;/span&gt;\n    &lt;/rg-radio&gt;\n  &lt;/div&gt;\n\n  &lt;div&gt;\n    &lt;rg-radio\n      ng-value="dialog.data.KEEP_USERS"\n      name="option"\n      ng-model="data.option"\n      data-test="remove-without-members"\n    &gt;\n      &lt;span translate&gt;Remove the group, but add its members to the organization&lt;/span&gt;\n    &lt;/rg-radio&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n\n'},52568:e=&gt;{e.exports='&lt;div ng-controller="OrganizationSidebarCtrl as sidebarCtrl"&gt;\n\n  &lt;div class="organization-tab__sidebar-header"&gt;\n    &lt;img class="ring-sidebar__avatar"\n         ng-if="sidebarCtrl.getItem().iconUrl || sidebarCtrl.getItem().profile"\n         ng-src="{{ sidebarCtrl.getItem().iconUrl || sidebarCtrl.getItem().profile.avatar.url }}" /&gt;\n\n    &lt;div class="organization-tab__sidebar-header-title"&gt;\n      &lt;h2 class="ring-sidebar__title"&gt;\n        &lt;span translate&gt;{{sidebarCtrl.getItem().name}}&lt;/span&gt;\n      &lt;/h2&gt;\n\n      &lt;span ng-if="sidebarCtrl.isUser()"&gt;{{ sidebarCtrl.getItem().profile.email.email }}&lt;/span&gt;\n      &lt;span ng-if="!sidebarCtrl.isUser()"&gt;{{ sidebarCtrl.getItem().description }}&lt;/span&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-sidebar__section organization-tab__sidebar-tree"&gt;\n    &lt;div ng-if="sidebarCtrl.loadingRoles"&gt;\n      &lt;rg-loader-inline&gt;&lt;/rg-loader-inline&gt;\n    &lt;/div&gt;\n\n    &lt;div ng-if="!sidebarCtrl.loadingRoles"&gt;\n      &lt;organization-sidebar-roles-list\n        ng-if="sidebarCtrl.roles.currentOrganization"\n        access-scope="sidebarCtrl.roles.currentOrganization"\n        is-self-owner="sidebarCtrl.isSelfOwner(owner)"\n      &gt;&lt;/organization-sidebar-roles-list&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},14295:e=&gt;{e.exports='&lt;hub-expander on-expand="$ctrl.onExpandRoot(expanded)"&gt;\n  &lt;header&gt;\n    &lt;a class="ring-link" ng-href="{{ \'roles\' | linkToHub:$ctrl.role.role.key:$ctrl.role.role.id }}"&gt;{{:: $ctrl.role.role.name}}&lt;/a&gt;:\n\n    &lt;span&gt;\n      {{$ctrl.getRoleOrigins($ctrl.role).join(\', \')}}\n    &lt;/span&gt;\n  &lt;/header&gt;\n\n  &lt;content&gt;\n    &lt;div class="organization-tab__sidebar-permissions"&gt;\n      &lt;span class="organization-tab__sidebar-permissions-title" translate&gt;Permissions&lt;/span&gt;\n      &lt;hub-expander\n        ng-repeat="(entity, permissionGroup) in :: $ctrl.role.role.groupedPermisisons"\n        on-expand="$ctrl.onExpandEntity(expanded, entity)"\n      &gt;\n        &lt;header&gt;{{:: entity}}&lt;/header&gt;\n        &lt;content&gt;\n          &lt;div class="organization-tab__sidebar-permission-list"&gt;\n            &lt;div  class="organization-tab__sidebar-permission" ng-repeat="(permissionName, permissionsByServices) in :: permissionGroup"&gt;\n              &lt;span class="organization-tab__sidebar-permission-name"&gt;{{:: permissionName}}&lt;/span&gt;\n\n              &lt;div class="organization-tab__sidebar-permission-services"&gt;\n                &lt;rg-badge ng-repeat="permission in permissionsByServices"&gt;\n                  {{:: permission.service.name}}\n                &lt;/rg-badge&gt;\n              &lt;/div&gt;\n            &lt;/div&gt;\n          &lt;/div&gt;\n        &lt;/content&gt;\n      &lt;/hub-expander&gt;\n    &lt;/div&gt;\n  &lt;/content&gt;\n&lt;/hub-expander&gt;\n'},73927:e=&gt;{e.exports='&lt;div class="organization-tab__sidebar-role-list"&gt;\n  &lt;span class="ring-sidebar__section-title organization-tab__sidebar-project-roles-title"&gt;\n    &lt;span translate&gt;\n      Roles in {{:: $ctrl.accessScope.name}} Organization\n    &lt;/span&gt;\n  &lt;/span&gt;\n\n  &lt;organization-sidebar-roles-list-item\n    ng-repeat="role in :: $ctrl.accessScope.transitionedRoles"\n    role="role"\n    is-self-owner="$ctrl.isSelfOwner({owner: owner})"\n  &gt;&lt;/organization-sidebar-roles-list-item&gt;\n&lt;/div&gt;\n'},927:e=&gt;{e.exports='&lt;div rg-button-toolbar&gt;\n  &lt;rg-button\n    mode="primary"\n    delayed="true"\n    rg-promised-click="toolbarCtrl.addToOrganization()"\n    rg-permission="jetbrains.jetpass.organization-update"\n    data-test="add-to-organization-button"\n  &gt;&lt;span translate&gt;Add members&lt;/span&gt;&lt;/rg-button&gt;\n\n  &lt;rg-button\n    ng-show="toolbarCtrl.isRemoveAvailable()"\n\n    rg-promised-click="toolbarCtrl.removeFromOrganization()"\n\n    rg-permission="jetbrains.jetpass.organization-update"\n    data-test="remove-from-organization-button"\n  &gt;\n    &lt;span ng-show="$ctrl.groupingState" translate&gt;Remove from organization&lt;/span&gt;\n    &lt;span ng-show="!$ctrl.groupingState" translate&gt;Remove direct assignment&lt;/span&gt;\n  &lt;/rg-button&gt;\n\n&lt;/div&gt;\n'},93764:e=&gt;{e.exports='&lt;rg-sidebar-toggle-button data-test="table-toolbar-toggle" model="$ctrl.isSidebarShown" class="hub-header__controls__right-toolbar"&gt;\n  &lt;span title="{{ \'Details\' | translate }}" translate&gt;Details&lt;/span&gt;\n&lt;/rg-sidebar-toggle-button&gt;\n\n&lt;div rg-button-group class="hub-header__controls__right-toolbar"&gt;\n  &lt;rg-button ng-click="$ctrl.setGrouping(true)" active="$ctrl.groupingState"&gt;\n    &lt;span translate&gt;By group&lt;/span&gt;\n  &lt;/rg-button&gt;\n  &lt;rg-button ng-click="$ctrl.setGrouping(false)" active="!$ctrl.groupingState"&gt;\n    &lt;span translate&gt;Users&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n\n&lt;hub-header\n  docked\n  theme="light"\n  embedded="true"\n  class="hub-header__controls__right-toolbar"\n  placeholder="{{ \'Search by user\' | translate }}"\n  datasource="$ctrl.queryAssistDatasource"\n&gt;\n&lt;/hub-header&gt;\n'},8602:e=&gt;{e.exports='&lt;div class="password-strength"&gt;\n  &lt;ng-transclude&gt;&lt;/ng-transclude&gt;\n\n  &lt;div class="password-strength__bar" ng-if="!$ctrl.empty"&gt;\n    &lt;div ng-show="$ctrl.required"\n         ng-class="$ctrl.getClasses(\'bar__marker\', $ctrl.valid)"\n         ng-style="{left: $ctrl.required + \'%\'}"\n    &gt;&lt;/div&gt;\n    &lt;div ng-class="$ctrl.getClasses(\'bar__progress\')"\n         ng-style="{width: $ctrl.current + \'%\'}"\n    &gt;&lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-class="$ctrl.getClasses(\'message\')" ng-show="!$ctrl.empty"&gt;\n    &lt;span ng-show="$ctrl.level &lt;= 1" translate translate-context="Password strength"&gt;Weak&lt;/span&gt;\n    &lt;span ng-show="$ctrl.level == 2" translate translate-context="Password strength"&gt;Fair&lt;/span&gt;\n    &lt;span ng-show="$ctrl.level == 3" translate translate-context="Password strength"&gt;Good&lt;/span&gt;\n    &lt;span ng-show="$ctrl.level &gt;= 4" translate translate-context="Password strength"&gt;Strong&lt;/span&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-class="$ctrl.getClasses(\'description\', false)" ng-show="$ctrl.description"&gt;\n    {{$ctrl.description}}\n  &lt;/div&gt;\n\n  &lt;input type="hidden" ng-model="passwordStrength" name="passwordStrength"\n         value="" ng-required="$ctrl.required &gt; $ctrl.current"&gt;\n&lt;/div&gt;\n'},46447:e=&gt;{e.exports='&lt;div class="ring-form__group" rg-dialog-title="{{ \'Change Password\' | translate }}"&gt;\n  &lt;label class="ring-form__label"\n         for="settings__change-password__password"\n         translate&gt;Password&lt;/label&gt;\n\n  &lt;div class="ring-form__control ring-form__control_small"&gt;\n    &lt;input id="settings__change-password__password"\n           name="password"\n           required\n           type="password"\n           data-test="password-field"\n           ng-class="dialog.dialogForm.password | rgInputClass"\n           ng-model="dialog.data.password"\n           class="ring-input-size_md"\n    &gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.password"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n'},57252:e=&gt;{e.exports='&lt;div class="hub-settings__configure" ng-show="!ready &amp;&amp; !loading"&gt;\n    &lt;rg-button mode="primary" delayed="true" ng-click="setReady()"&gt;{{configureLabel}}&lt;/rg-button&gt;\n\n    &lt;div class="hub-settings__configure__description"&gt;{{configureDescription}}&lt;/div&gt;\n&lt;/div&gt;\n'},1118:e=&gt;{e.exports='&lt;div class="hub-header"&gt;\n    &lt;rg-breadcrumb&gt;\n      {{ pageTitle }}&lt;sup class="breadcrumb__badge breadcrumb__badge_success" data-test="notifications-enabled" ng-show="ready &amp;&amp; notificationSettings.enabled" translate&gt;notifications enabled\n    &lt;/sup&gt;&lt;sup class="breadcrumb__badge breadcrumb__badge_error" data-test="notifications-disabled" ng-show="ready &amp;&amp; !notificationSettings.enabled" translate&gt;notifications disabled&lt;/sup&gt;\n    &lt;/rg-breadcrumb&gt;\n\n    &lt;div rg-button-toolbar class="hub-header__toolbar" ng-show="ready"&gt;\n        &lt;rg-button rg-promised-click="toggle()" promised-mode="loader" ng-if="!readOnly" ng-disabled="loading || isInvalidForm()"&gt;\n            &lt;span ng-show="notificationSettings.enabled" translate&gt;Disable notifications&lt;/span&gt;\n            &lt;span ng-show="!notificationSettings.enabled" translate&gt;Enable notifications&lt;/span&gt;\n        &lt;/rg-button&gt;\n\n        &lt;div rg-button-group split="true"&gt;\n            &lt;rg-button\n                    ng-if="!testContact"\n                    delayed="true"\n                    ng-disabled="readOnly || !notificationSettings.enabled || isInvalidForm() || loading"\n                    rg-promised-click="testContactDialog()"\n            &gt;\n                &lt;span translate&gt;Send test message&lt;/span&gt;\n            &lt;/rg-button&gt;\n            &lt;rg-button\n                    ng-if="testContact"\n                    rg-tooltip="getSendTooltip()"\n                    ng-disabled="readOnly || !notificationSettings.enabled || isInvalidForm() || loading"\n                    rg-promised-click="sendTestContact()" promised-mode="loader"\n            &gt;\n                &lt;span translate&gt;Send test message&lt;/span&gt;\n            &lt;/rg-button&gt;\n            &lt;rg-button\n                    ng-disabled="readOnly || !notificationSettings.enabled || isInvalidForm() || loading"\n                    ng-if="testContact"\n                    rg-promised-click="testContactDialog()"\n                    rg-tooltip="::changeContactTooltip"\n            &gt;\n              &lt;span translate&gt;Edit settings&lt;/span&gt;\n            &lt;/rg-button&gt;\n        &lt;/div&gt;\n\n        &lt;rg-button danger="true" rg-promised-click="remove()" ng-if="!readOnly" ng-disabled="loading"&gt;\n            &lt;span translate&gt;Reset settings&lt;/span&gt;\n        &lt;/rg-button&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},28442:e=&gt;{e.exports='&lt;div class="" rg-dialog-title="{{ \'Send Test Message\' | translate }}"&gt;\n  &lt;label class="ring-form__label" for="test-dialog__contact"&gt;{{ dialog.data.contactLabel }}&lt;/label&gt;\n\n  &lt;div class="ring-form__control ring-form__control_small"&gt;\n    &lt;input type="{{ dialog.data.type }}" id="test-dialog__contact" name="contact" required\n           class="ring-input_icon ring-input_icon-loader ring-input_loading ring-input-size_md"\n           ng-class="dialog.dialogForm.contact | rgInputClass"\n           ng-model="dialog.data.contact"\n           ng-disabled="dialog.data.sending"&gt;\n    &lt;div rg-error-bubble="dialog.dialogForm.contact"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group" ng-show="dialog.data.successMessage"&gt;\n  &lt;div class="ring-form__control ring-form__control_small"&gt;\n    &lt;span class="ring-alert_success"&gt;{{ dialog.data.successMessage }}&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},67681:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label" translate&gt;SSL key&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;rg-select x-label="{{ emptyKey.name }}"\n               select-type="button"\n               ng-model="item.keyStore"\n               class="ring-input-size_md"\n               ng-disabled="disabled"\n               on-change="change(selected)"\n               filter="true"\n               config="selectConfig"\n               options="o.name o in stores() track by o.name"&gt;\n    &lt;/rg-select&gt;\n    &lt;ng-transclude&gt;&lt;/ng-transclude&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},54147:e=&gt;{e.exports='&lt;div&gt;\n  &lt;textarea\n    id="css-overrides"\n    class="ring-input theme-dialog__input"\n    ng-model="dialog.data.rawValue"\n    placeholder=\'{"--ring-font-size":"16px"}\'\n  /&gt;\n  &lt;a class="ring-link" target="_blank" rel="noopener noreferrer"\n     href="https://github.com/JetBrains/ring-ui/blob/master/components/global/variables.css"\n  &gt;\n    List of available variables\n  &lt;/a&gt;\n&lt;/div&gt;\n'},57232:e=&gt;{e.exports='&lt;form-control-edit-text\n  data-test="profile-field-{{$ctrl.model.prototype.name}}"\n  data-placeholder="{{modelOptions.placeholder}}"\n  data-pattern="{{modelOptions.pattern}}"\n  data-validators="modelOptions.validators"\n  data-type="{{modelOptions.type}}"\n  data-label="{{$ctrl.model.prototype.name}}"\n  data-disabled="$ctrl.disabled"\n  data-min="{{modelOptions.min}}"\n  data-max="{{modelOptions.max}}"\n  data-show-warning="$ctrl.showWarning"\n  model="value"\n&gt;\n  &lt;description ng-if="modelOptions.description"&gt;&lt;span&gt;{{modelOptions.description}}&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n'},57873:e=&gt;{e.exports='&lt;div rg-button-group split="true"&gt;\n  &lt;rg-button\n    ng-repeat="userType in $ctrl.userTypes"\n    active="userType.enabled"\n    rg-promised-click="$ctrl.enableUserTypeFilter(userType)"\n  &gt;{{userType.labelPlural}}&lt;/rg-button&gt;\n&lt;/div&gt;\n'},25926:e=&gt;{e.exports='&lt;div rg-error-page&gt;\n  &lt;div class="hub-header"&gt;\n    &lt;rg-breadcrumb\n      label="{{ \'Auth Modules\' | translate }}"\n      link="authmodules"&gt;{{ \'Common Settings\' | translate }}&lt;/rg-breadcrumb&gt;\n  &lt;/div&gt;\n\n  &lt;div class="container_legacy" hub-resource="SettingsResource"&gt;\n      &lt;rg-tabs tabs-class="\'container container_tabs\'"&gt;\n        &lt;rg-tabs-pane\n          x-title="{{ \'Settings\' | translate }}"\n          tab-index="1" tab-id="general"\n        &gt;\n          &lt;rg-template template="generalTemplate"/&gt;\n        &lt;/rg-tabs-pane&gt;\n\n        &lt;rg-tabs-pane\n          x-title="{{ \'Throttling\' | translate }}"\n          ng-if="throttlingSettings"\n          tab-index="2" tab-id="throttling"\n        &gt;\n          &lt;rg-template template="throttlingTemplate"/&gt;\n        &lt;/rg-tabs-pane&gt;\n\n        &lt;rg-tabs-pane\n          x-title="{{ \'CAPTCHA\' | translate }}"\n          tab-index="3"\n          tab-id="captcha"\n        &gt;\n          &lt;rg-template template="captchaTemplate"/&gt;\n        &lt;/rg-tabs-pane&gt;\n      &lt;/rg-tabs&gt;\n  &lt;/div&gt;\n\n  &lt;hub-page-help url="Managing-Auth-Modules.html"&gt;\n    &lt;span translate&gt;Manage settings that apply to logins from any authentication module. The reCAPTCHA settings establish a connection to the Google reCAPTCHA service. With reCAPTCHA, you can verify human input when registration is enabled in the Hub auth module and when throttling is applied to failed logins.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},32546:e=&gt;{e.exports='&lt;div class="container container_form"&gt;\n  &lt;form-save item="internalSettings" draft="capcthaDraft"&gt;\n    &lt;form-control-full-text&gt;\n      &lt;div translate&gt;\n        To set up Google reCAPTCHA, copy the site and secret keys from the\n        &lt;a href="https://www.google.com/recaptcha/admin" class="ring-link"&gt;reCAPTCHA key management console&lt;/a&gt;.\n      &lt;/div&gt;\n    &lt;/form-control-full-text&gt;\n\n    &lt;form-control-edit-text data-extra-class="ring-input-size_l"\n                            data-label="{{ \'Site key\' | translate }}"\n                            data-model="capcthaDraft.captchaPublicKey"\n                            data-disabled="readOnly"&gt;\n      &lt;description&gt;&lt;span translate&gt;The site key generated in the reCAPTCHA key management console&lt;/span&gt;&lt;/description&gt;\n    &lt;/form-control-edit-text&gt;\n\n    &lt;form-control-edit-text data-extra-class="ring-input-size_l"\n                            data-label="{{ \'Secret key\' | translate }}"\n                            data-model="capcthaDraft.captchaPrivateKey"\n                            data-disabled="readOnly"&gt;\n      &lt;description&gt;&lt;span translate&gt;The secret key generated in the reCAPTCHA key management console&lt;/span&gt;&lt;/description&gt;\n    &lt;/form-control-edit-text&gt;\n  &lt;/form-save&gt;\n&lt;/div&gt;\n'},27695:e=&gt;{e.exports='&lt;div class="container container_form"&gt;\n  &lt;form-save items="items" draft="drafts"&gt;\n    &lt;form-control-select\n      data-disabled="readOnly"\n      data-label="{{ \'Token timeout\' | translate }}"\n      data-model="drafts[1].tokenInterval"\n      data-options="item.length as item.name select as findNearestInterval(tokenIntervals, item).name for item in tokenIntervals track by item.length"&gt;\n      &lt;description&gt;&lt;span translate&gt;Maximum authentication token lifetime&lt;/span&gt;&lt;/description&gt;\n    &lt;/form-control-select&gt;\n\n    &lt;form-control-select\n      data-disabled="readOnly"\n      data-label="{{ \'Session timeout\' | translate }}"\n      data-model="drafts[1].sessionInterval"\n      data-options="item.length as item.name select as findNearestInterval(sessionIntervals, item).name for item in sessionIntervals track by item.length"&gt;\n      &lt;description&gt;&lt;span translate&gt;Maximum authentication cookie lifetime when Remember Me option is disabled&lt;/span&gt;&lt;/description&gt;\n    &lt;/form-control-select&gt;\n\n    &lt;form-control-select\n      data-disabled="readOnly"\n      data-label="{{ \'Remember Me duration\' | translate }}"\n      data-model="drafts[1].rememberMeInterval"\n      data-options="item.length as item.name select as findNearestInterval(rememberMeIntervals, item).name for item in rememberMeIntervals track by item.length"&gt;\n      &lt;description&gt;&lt;span translate&gt;Maximum authentication cookie lifetime when Remember Me option is enabled&lt;/span&gt;&lt;/description&gt;\n    &lt;/form-control-select&gt;\n\n    &lt;form-control-toggle\n      data-disabled="readOnly"\n      data-label="{{ \'Email verification\' | translate }}"\n      data-primary-label="{{ \'Required\' | translate }}"\n      data-secondary-label="{{ \'Not required\' | translate }}"\n      data-model="drafts[0].emailVerificationRequired"\n    &gt;\n      &lt;description&gt;&lt;span translate&gt;If required, users must verify their email addresses to log in&lt;/span&gt;&lt;/description&gt;\n    &lt;/form-control-toggle&gt;\n\n    &lt;form-control-edit-text\n      data-label="{{ \'Username field placeholder\' | translate }}"\n      data-disabled="readOnly"\n      data-model="drafts[0].loginFieldPlaceholder"\n      data-extra-class="ring-input-size_l"\n      ng-attr-placeholder="{{\'Username or Email\' | translate}}"&gt;\n    &lt;/form-control-edit-text&gt;\n\n    &lt;form-control-text data-label="{{ \'Login message\' | translate }}" ng-if="!isHosted"&gt;\n      &lt;div class="eua__manage settings-page__login-message-wrapper"&gt;\n                &lt;textarea\n                  class="ring-input eua__manage__editor ring-js-shortcuts"\n                  ng-model="drafts[0].loginMessage"\n                  ng-attr-placeholder="{{\'Add a short message to the login page. Use Markdown syntax to format text.\' | translate}}"\n                  data-disabled="readOnly"\n                &gt;&lt;/textarea&gt;\n        &lt;markdown-preview\n          class="eua__manage__preview"\n          text="drafts[0].loginMessage"\n        &gt;&lt;/markdown-preview&gt;\n      &lt;/div&gt;\n      &lt;markdown-reference&gt;&lt;/markdown-reference&gt;\n    &lt;/form-control-text&gt;\n  &lt;/form-save&gt;\n&lt;/div&gt;\n'},44325:e=&gt;{e.exports='&lt;div data-test="throttling-section" ng-controller="ThrottlingCtrl as throttlingCtrl"&gt;\n  &lt;div class="container container_form"&gt;\n    &lt;form-save item="throttlingSettings" draft="throttlingSettingsDraft"\n               after-cancel="throttlingCtrl.onFormReset()"\n               after-save="throttlingCtrl.onFormSave()"&gt;\n\n      &lt;form-control-button-toggle\n        data-label="{{ \'Throttling by login\' | translate }}"\n        data-disabled="readOnly"\n        data-primary-label="{{ \'Enabled\' | translate }}"\n        data-secondary-label="{{ \'Disabled\' | translate }}"\n        data-model="throttlingSettingsDraft.enabled"&gt;\n        &lt;description&gt;\n          &lt;div ng-show="throttlingSettingsDraft.enabled"&gt;\n            &lt;div translate&gt;Rate limits are applied to logins and requests to verify credentials&lt;/div&gt;\n            &lt;p ng-show="!(internalSettings.captchaPublicKey &amp;&amp; internalSettings.captchaPrivateKey)"&gt;\n              &lt;span class="settings-page__throttling_warning" translate&gt;WARNING!&lt;/span&gt;\n              &lt;span translate&gt;Throttling by login is enabled without reCAPTCHA. Users whose logins are throttled are subjected to the cooldown and can be unable to log in for an extended period.&lt;/span&gt;\n            &lt;/p&gt;\n          &lt;/div&gt;\n          &lt;span ng-show="!throttlingSettingsDraft.enabled" translate&gt;Rate limits are not applied to logins and requests to verify credentials&lt;/span&gt;\n        &lt;/description&gt;\n      &lt;/form-control-button-toggle&gt;\n\n      &lt;div ng-show="!isHosted"&gt;\n        &lt;form-control-edit-text\n          x-label="{{ \'Max logins\' | translate }}"\n          x-model="throttlingSettingsDraft.maxTrackingKeys"\n          x-size="s"\n          x-min="1"\n          x-type="number"\n          x-disabled="readOnly"&gt;\n          &lt;description&gt;\n            &lt;span translate&gt;Maximum number of logins that are tracked for rate limitation&lt;/span&gt;\n          &lt;/description&gt;\n        &lt;/form-control-edit-text&gt;\n\n        &lt;form-control-edit-text\n          x-label="{{ \'Max failures per login\' | translate }}"\n          x-model="throttlingSettingsDraft.maxFailuresPerKey"\n          x-size="s"\n          x-min="1"\n          x-type="number"\n          x-disabled="readOnly"&gt;\n          &lt;description&gt;\n            &lt;span translate&gt;Maximum allowed number of consecutive failures for tracked logins&lt;/span&gt;\n          &lt;/description&gt;\n        &lt;/form-control-edit-text&gt;\n\n        &lt;form-control-edit-text\n          x-label="{{ \'Cooldown period\' | translate }}"\n          x-model="throttlingSettingsDraft.cooldownPeriodSec"\n          x-size="s"\n          x-min="1"\n          x-type="number"\n          x-disabled="readOnly"&gt;\n          &lt;description&gt;\n            &lt;span translate&gt;Amount of time after which failed attempts are forgotten, in seconds&lt;/span&gt;\n          &lt;/description&gt;\n        &lt;/form-control-edit-text&gt;\n\n        &lt;form-control-edit-text\n          x-label="{{ \'Cooldown value\' | translate }}"\n          x-model="throttlingSettingsDraft.cooldownValue"\n          x-size="s"\n          x-min="1"\n          x-type="number"\n          x-disabled="readOnly"&gt;\n          &lt;description&gt;\n            &lt;span translate&gt;Number of failed attempts that are forgotten after every cooldown period&lt;/span&gt;\n          &lt;/description&gt;\n        &lt;/form-control-edit-text&gt;\n      &lt;/div&gt;\n\n      &lt;form-control-edit-textarea\n        data-extra-class="ring-input-size_l ring-input-height_l"\n        data-label="{{ \'Trusted logins\' | translate }}"\n        data-model="throttlingSettingsDraft.whiteList"\n        data-disabled="readOnly"\n        data-array="true"&gt;\n        &lt;description&gt;\n          &lt;span translate&gt;List of logins that are not subject to rate limits&lt;/span&gt;\n        &lt;/description&gt;\n      &lt;/form-control-edit-textarea&gt;\n    &lt;/form-save&gt;\n\n    &lt;hub-audit-link class="settings-page__throttling_audit" entity="throttlingSettings" name="{{ \'throttling settings\' | translate }}"&gt;&lt;/hub-audit-link&gt;\n\n    &lt;form-control-text\n      x-bold="true"\n      x-label="{{ \'Throttled logins\' | translate }}"\n      x-disabled="true"&gt;\n      &lt;description ng-switch="throttlingCtrl.hasBlockedKeys() &amp;&amp; !throttlingCtrl.countdownExpired"&gt;\n        &lt;div ng-switch-when="true" class="settings-page__throttling_timer"&gt;\n          &lt;span translate&gt;Cooldown:&lt;/span&gt;\n          &lt;throttling-timer on-expire="throttlingCtrl.setExpired()" timestamp="throttlingSettings.blockedKeys.timeUntilNextCooldown"&gt;&lt;/throttling-timer&gt;\n        &lt;/div&gt;\n        &lt;div ng-switch-when="false"&gt;\n          &lt;span translate&gt;No logins&lt;/span&gt;\n        &lt;/div&gt;\n      &lt;/description&gt;\n    &lt;/form-control-text&gt;\n\n    &lt;div ng-show="throttlingCtrl.blockedKeys.length"\n         class="settings-page__throttling_toolbar"&gt;\n      &lt;rg-button\n        ng-disabled="throttlingCtrl.selection.getActive().size === 0"\n        rg-permission="low-level"\n        ng-click="throttlingCtrl.addKeys()"&gt;\n        &lt;span translate&gt;Add to list of trusted logins&lt;/span&gt;\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-show="throttlingCtrl.blockedKeys.length"&gt;\n    &lt;rg-data-list\n      data="throttlingCtrl.dataListItems"\n      selection="throttlingCtrl.selection"\n      on-select="throttlingCtrl.onSelect"\n      item-formatter="throttlingCtrl.itemFormatter"\n    &gt;&lt;/rg-data-list&gt;\n\n    &lt;div class="settings-page__throttling_more"\n         ng-show="throttlingCtrl.hasNextBlockedKeysPage"&gt;\n      &lt;a class="ring-link"\n         loader="throttlingCtrl.loadingNext"\n         ng-click="throttlingCtrl.loadMore()"&gt;\n        &lt;span translate&gt;Load more...&lt;/span&gt;\n      &lt;/a&gt;\n\n      &lt;rg-loader-inline ng-show="throttlingCtrl.loadingNext"&gt;&lt;/rg-loader-inline&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},67546:(e,t,n)=&gt;{e.exports='&lt;div hub-resource="AuthModuleResource" rg-error-page hub-resource-item-open="authmodules/:id"&gt;\n  &lt;hub-resource-query-data\n    fields="id,name,ordinal,disabled,accountsSize,serverUrl,autoJoinGroups(id,name,iconUrl)"\n    items-field="authmodules"\n    data="data"\n    order-by="\'ordinal:asc\'"\n  &gt;&lt;/hub-resource-query-data&gt;\n  &lt;hub-header placeholder="{{ \'Filter auth modules\' | translate }}"&gt;&lt;/hub-header&gt;\n\n  &lt;hub-table\n    data="data"\n    columns="$ctrl.columns"\n    order-by="$ctrl.orderByQuery"\n    draggable="true"\n    on-reorder="$ctrl.onReorder(data, oldIndex, newIndex)"\n\n    title-format="\'authmodule-total-title\'"\n    toolbar-template="$ctrl.toolbarTemplate"\n    right-toolbar-template="$ctrl.rightToolbarTemplate"\n    sidebar-template="$ctrl.sidebarTemplate"\n    sidebar-empty="{{ \'Select an Auth Module to see details\' | translate }}"\n    sidebar-icon="'+n(34301)+'"\n\n    description-id="authmodule-list"\n\n    listen-to-height-change-selector=".hub-header-with-description"\n  &gt;\n    &lt;p translate&gt;Let users log in to YouTrack with an account that is managed in the respective authentication service.&lt;/p&gt;\n    &lt;p translate&gt;Filter the list of modules by various attributes, including name, status (if it is enabled or not), and user accounts. The search box provides query completion to help you choose from available search attributes. &lt;hub-help-link url="Managing-Auth-Modules.html"&gt;Learn more â†’&lt;/hub-help-link&gt;&lt;/p&gt;\n  &lt;/hub-table&gt;\n\n  &lt;hub-page-help url="Managing-Auth-Modules.html"&gt;\n    &lt;span translate&gt;Auth Modules enable users to log in to Hub and connected services with the credentials that are stored in the respective Auth Module service.&lt;br/&gt;\n      Filter the list of Auth Modules by attributes, including name, activity status (if it is enabled or not),\n      and user accounts. The search box provides query completion to help you choose from available search attributes.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},56304:(e,t,n)=&gt;{e.exports='&lt;h2 class="ring-sidebar__title"&gt;\n  &lt;a class="ring-link" href="authmodules/{{ $ctrl.sidebarElement.name | encodeLink:$ctrl.sidebarElement.id }}"&gt;{{ $ctrl.sidebarElement.name }}&lt;/a&gt;\n  &lt;rg-badge class-name="\'title-badge\'" disabled="true" ng-show="$ctrl.sidebarElement.disabled"&gt;&lt;span translate&gt;disabled&lt;/span&gt;&lt;/rg-badge&gt;\n&lt;/h2&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.serverUrl"&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;Server URL&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;span&gt;{{ $ctrl.sidebarElement.serverUrl }}&lt;/span&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.autoJoinGroups"&gt;\n    &lt;rg-icon glyph="'+n(46968)+'" class="ring-sidebar__section-icon"&gt;&lt;/rg-icon&gt;\n\n    &lt;span class="ring-sidebar__section-title"\n          translate-n="$ctrl.sidebarElement.autoJoinGroups.length"\n          translate-plural="{{ $count }} Auto-join groups"\n          translate&gt;{{ $count }} Auto-join group&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-roster" ng-controller="AuthModulesSidebarCtrl as sidebarCtrl"&gt;\n        &lt;span class="roster_inline"\n              hub-roster="$ctrl.sidebarElement.autoJoinGroups"\n              hub-roster-field="group"\n              hub-roster-href-fn="sidebarCtrl.groupHref"\n              hub-roster-remove="sidebarCtrl.removeGroup($ctrl.sidebarElement, group)"\n              hub-roster-removable="sidebarCtrl.canRemoveGroup"&gt;&lt;/span&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},22541:(e,t,n)=&gt;{e.exports='&lt;div rg-button-toolbar ng-controller="AuthModulesToolbarCtrl as $ctrl"&gt;\n  &lt;rg-button\n    mode="primary"\n    id="authmodule-list__add-button"\n\n    rg-select\n    config="$ctrl.selectConfig"\n    select-type="dropdown"\n    options="item in $ctrl.getModuleOptions()"\n    lazy="false"\n    filter="true"\n\n    rg-permission="low-level"\n    loader="$ctrl.loading"\n  &gt;\n    &lt;span translate&gt;New module&lt;/span&gt;\n    &lt;rg-icon glyph="'+n(96971)+'" size="14" color="WHITE"&gt;&lt;/rg-icon&gt;\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    rg-permission="low-level"\n    ng-show="$ctrl.isAnySelected() &amp;&amp; $ctrl.isDisableVisible(false)"\n\n    rg-promised-click="$ctrl.setDisabled(false)"\n    promised-mode="loader"\n  &gt;\n    &lt;span translate&gt;Enable&lt;/span&gt;\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    rg-permission="low-level"\n    ng-show="$ctrl.isAnySelected() &amp;&amp; $ctrl.isDisableVisible(true)"\n\n    rg-promised-click="$ctrl.setDisabled(true)"\n    promised-mode="loader"\n  &gt;\n    &lt;span translate&gt;Disable&lt;/span&gt;\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    title="{{ \'Delete selected modules\' | translate}}"\n    danger="true"\n    rg-permission="low-level"\n    ng-show="$ctrl.isDeleteEnabled()"\n\n    rg-promised-click="$ctrl.remove(selection.items)"\n  &gt;\n    &lt;span translate&gt;Delete&lt;/span&gt;\n  &lt;/rg-button&gt;\n\n  &lt;span class="authmodule-list__toolbar_hint"&gt;\n    &lt;rg-icon glyph="'+n(91351)+'" size="16"&gt;&lt;/rg-icon&gt;\n    &lt;span translate&gt;Drag a field to configure order&lt;/span&gt;\n  &lt;/span&gt;\n\n&lt;/div&gt;\n'},69160:e=&gt;{e.exports='&lt;div class="ring-button-toolbar"&gt;\n  &lt;a class="ring-link authmodule-list__toolbar_right__link"\n     href="authmodules/settings"\n     rg-permission="low-level-read"\n     title="{{ \'Timeouts, reCAPTCHA, throttling, and other common authentication settings\' | translate }}"\n  &gt;\n    &lt;span translate&gt;Common settings&lt;/span&gt;\n  &lt;/a&gt;\n&lt;/div&gt;\n'},33238:e=&gt;{e.exports='&lt;div rg-error-page="module"&gt;\n  &lt;div class="hub-header"&gt;\n    &lt;rg-breadcrumb label="{{ \'Auth Modules\' | translate }}" link="authmodules"&gt;\n      {{ module.name }}\n      &lt;sup ng-show="module.disabled" class="authmodule-page__badge authmodule-page__badge_disabled" data-test="disabled-label" translate&gt;disabled&lt;/sup&gt;\n      &lt;sup ng-show="!module.disabled" class="authmodule-page__badge authmodule-page__badge_enabled" data-test="enabled-label" translate&gt;enabled&lt;/sup&gt;\n    &lt;/rg-breadcrumb&gt;\n\n    &lt;div rg-button-toolbar class="hub-header__toolbar"&gt;\n      &lt;rg-button\n        ng-show="module.type === \'CoreauthmoduleJSON\'"\n        ng-disabled="!updatable"\n        ng-controller="CoreAuthModuleToolbarCtrl"\n        data-test="require-password-change"\n        rg-promised-click="requirePasswordChange(module)"&gt;\n        &lt;span translate&gt;Require password change&lt;/span&gt;\n      &lt;/rg-button&gt;\n\n      &lt;rg-button rg-promised-click="toggleDisabled()"\n                 data-test="toggle-state"\n                 promised-mode="loader" ng-disabled="!updatable"&gt;\n        &lt;span ng-show="!module.disabled" translate&gt;Disable module&lt;/span&gt;\n        &lt;span ng-show="module.disabled" translate&gt;Enable module&lt;/span&gt;\n      &lt;/rg-button&gt;\n\n      &lt;rg-button\n        delayed="true"\n        ng-show="getModuleLoginTestTemplate(module)"\n        ng-disabled="module.disabled"\n        rg-promised-click="testLogin()"\n      &gt;&lt;span translate&gt;Test login&lt;/span&gt;&lt;/rg-button&gt;\n\n      &lt;rg-template template="getHeaderTemplate(module)"&gt;&lt;/rg-template&gt;\n\n      &lt;hub-header-delete\n        rg-permission="low-level"\n        label="{{ \'Delete module\' | translate:\'Remove action\'}}"\n        item="module"\n        inline="true"\n        confirm-message="delete-authmodules?"\n        success-message="authmodules-success-delete"\n        error-message="authmodule-delete"&gt;\n      &lt;/hub-header-delete&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div hub-resource="AuthModuleResource"&gt;\n    &lt;rg-tabs ng-if="hasExtraTabs()" tabs-class="\'container container_tabs\'"&gt;\n      &lt;rg-tabs-pane\n        x-title="{{ \'Settings\' | translate }}"\n        tab-index="0"\n        tab-id="general"\n      &gt;\n        &lt;rg-template template="generalTab"&gt;&lt;/rg-template&gt;\n      &lt;/rg-tabs-pane&gt;\n\n      &lt;rg-tabs-pane\n        ng-repeat="tab in tabs"\n        ng-if="tab.visible"\n        x-title="{{ tab.title }}"\n        tab-index="{{ $index+1 }}"\n        tab-id="{{tab.id}}"\n      &gt;\n        &lt;rg-template template="tab.template"&gt;&lt;/rg-template&gt;\n      &lt;/rg-tabs-pane&gt;\n    &lt;/rg-tabs&gt;\n\n    &lt;rg-template ng-if="!hasExtraTabs()" template="generalTab"&gt;&lt;/rg-template&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},40132:e=&gt;{e.exports='&lt;groups-picker\n  label="{{\'Auto-join groups\' | translate}}"\n  placeholder="{{\'Add groups\' | translate}}"\n  data-disabled="!updatable"\n  model="moduleDraft.autoJoinGroups"\n&gt;\n  &lt;description&gt;\n    &lt;span translate&gt;Users created by the authentication module are added to these groups automatically&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/groups-picker&gt;\n'},81536:e=&gt;{e.exports='&lt;div class="container container_legacy"&gt;\n  &lt;form-save item="module" draft="moduleDraft" collections="{autoJoinGroups: AutoJoinGroupResource}"&gt;\n    &lt;div class="ring-form__group"&gt;\n      &lt;label class="ring-form__label" translate&gt;Type&lt;/label&gt;\n\n      &lt;div class="ring-form__control ring-form__control_text"&gt;{{ getModuleTypeName(module) }}&lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;form-control-edit-text\n      data-label="{{ \'Name\' | translate }}"\n      data-model="moduleDraft.name"\n      data-disabled="!updatable"\n      data-required="true"&gt;\n    &lt;/form-control-edit-text&gt;\n\n    &lt;rg-template template="getModuleTemplate(module)"&gt;&lt;/rg-template&gt;\n\n    &lt;div class="ring-form__title ring-form__title_separated" translate&gt;Additional Settings&lt;/div&gt;\n\n    &lt;div ng-if="moduleDraft.type !== \'CoreauthmoduleJSON\'"&gt;\n\n      &lt;form-control-edit-text\n        ng-if="moduleDraft.type === \'Oauth2authmoduleJSON\'"\n        data-extra-class="ring-input-size_l"\n        data-label="{{ \'Scope\' | translate }}"\n        data-model="moduleDraft.scope"\n        data-disabled="!updatable"\n        data-required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n      &lt;/form-control-edit-text&gt;\n\n      &lt;form-control-toggle\n        ng-if="moduleDraft.type === \'Oauth2authmoduleJSON\'"\n        data-label="{{ \'Authentication\' | translate }}"\n        data-model="moduleDraft.formClientAuth"\n        data-disabled="!updatable"\n      &gt;\n        &lt;description&gt;\n          &lt;span ng-show="!moduleDraft.formClientAuth" translate&gt;\n            Credentials are passed in the HTTP header\n          &lt;/span&gt;\n          &lt;span ng-show="moduleDraft.formClientAuth" translate&gt;\n            Credentials are passed in the HTTP form parameters\n          &lt;/span&gt;\n        &lt;/description&gt;\n      &lt;/form-control-toggle&gt;\n\n      &lt;form-control-button-toggle\n        data-primary-label="{{getPrimaryLabel()}}"\n        data-secondary-label="{{getSecondaryLabel()}}"\n        data-label="{{ \'User creation\' | translate }}"\n        data-model="moduleDraft.allowedCreateNewUsers"\n        data-disabled="!updatable"&gt;\n        &lt;description&gt;\n          &lt;span ng-show="moduleDraft.allowedCreateNewUsers" translate&gt;Hub accounts are created automatically for unregistered users who log in using this authentication module&lt;/span&gt;\n          &lt;span ng-show="!moduleDraft.allowedCreateNewUsers" translate&gt;Logins are restricted to users who already have an account in Hub&lt;/span&gt;\n        &lt;/description&gt;\n      &lt;/form-control-button-toggle&gt;\n\n      &lt;form-control-button-toggle\n        ng-if="moduleDraft.type === \'Oauth2authmoduleJSON\'"\n        data-label="{{ \'Email auto-verification\' | translate }}"\n        data-primary-label="{{ \'Enabled\' | translate }}"\n        data-secondary-label="{{ \'Disabled\' | translate }}"\n        data-model="moduleDraft.emailVerifiedByDefault"\n        data-disabled="!updatable"\n      &gt;\n        &lt;description&gt;\n          &lt;span ng-show="!moduleDraft.emailVerifiedByDefault" translate&gt;\n            When the authentication service does not return the verification status for an email address, it is stored as unverified\n          &lt;/span&gt;\n          &lt;span ng-show="moduleDraft.emailVerifiedByDefault" translate&gt;\n            When the authentication service does not return the verification status for an email address, it is stored as verified\n          &lt;/span&gt;\n        &lt;/description&gt;\n      &lt;/form-control-button-toggle&gt;\n\n      &lt;form-control-button-toggle\n        ng-if="moduleDraft.type === \'OpenidauthmoduleJSON\' || moduleDraft.type === \'SamlAuthModuleJSON\'"\n        data-label="{{ \'Email auto-verification\' | translate }}"\n        data-primary-label="{{ \'Enabled\' | translate }}"\n        data-secondary-label="{{ \'Disabled\' | translate }}"\n        data-model="moduleDraft.emailVerified"\n        data-disabled="!updatable"\n      &gt;\n        &lt;description&gt;\n          &lt;span ng-show="!moduleDraft.emailVerified" translate&gt;\n             All email addresses returned by the authentication service are stored as unverified\n          &lt;/span&gt;\n          &lt;span ng-show="moduleDraft.emailVerified" translate&gt;\n             All email addresses returned by the authentication service are stored as verified\n          &lt;/span&gt;\n        &lt;/description&gt;\n      &lt;/form-control-button-toggle&gt;\n\n      &lt;form-control-edit-textarea\n        ng-if="moduleDraft.type === \'GoogleauthmoduleJSON\' || moduleDraft.type === \'JbaoauthauthmoduleJSON\'"\n        ng-show="moduleDraft.allowedCreateNewUsers"\n        data-extra-class="ring-input-size_l ring-input-height_l"\n        data-label="{{ \'Restricted domains and emails\' | translate }}"\n        data-placeholder="{{ \'e.g. @mycompany.com\' | translate }}"\n        data-model="moduleDraft.newUserRestrictDomain"\n        data-disabled="!updatable"&gt;\n        &lt;description&gt;&lt;span translate&gt;User creation is restricted to users with email addresses from the specified domains or specific email addresses. Enter each value on a new line.&lt;/span&gt;&lt;/description&gt;\n      &lt;/form-control-edit-textarea&gt;\n\n      &lt;rg-template template="autojoinTemplate"&gt;&lt;/rg-template&gt;\n      &lt;rg-template template="timeoutsTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/div&gt;\n\n    &lt;hub-audit-link entity="module"&gt;&lt;/hub-audit-link&gt;\n  &lt;/form-save&gt;\n&lt;/div&gt;\n'},33144:e=&gt;{e.exports='&lt;div&gt;\n    &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label" for="test-login-dialog__field-login"\n               translate&gt;Username&lt;/label&gt;\n\n        &lt;div class="ring-form__control ring-form__control_small"&gt;\n            &lt;input id="test-login-dialog__field-login" class="ring-input ring-input-size_md" ng-model="data.login" required type="text" name="login"&gt;\n            &lt;div rg-error-bubble="dialogForm.login"&gt;&lt;/div&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n    &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label" for="test-login-dialog__field-password"\n               translate&gt;Password&lt;/label&gt;\n\n        &lt;div class="ring-form__control ring-form__control_small"&gt;\n            &lt;input id="test-login-dialog__field-password" class="ring-input ring-input-size_md" ng-model="data.password" required type="password" name="password"&gt;\n            &lt;div rg-error-bubble="dialogForm.password"&gt;&lt;/div&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n    &lt;div class="ring-alert_success" ng-if="data.success"&gt;\n        &lt;div class="ring-form__title" translate&gt;Authentication successful&lt;/div&gt;\n        &lt;rg-template template="data.success"&gt;&lt;/rg-template&gt;\n    &lt;/div&gt;\n    &lt;div class="hub-text-error ring-form__group" ng-if="data.failure"&gt;\n        &lt;div class="ring-form__title"&gt;{{ data.failure }}&lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},24536:e=&gt;{e.exports='&lt;form-control-edit-text\n        data-type="number"\n        data-min="0"\n        data-label="{{ \'Connection timeout\' | translate }}"\n        data-model="moduleDraft.connectionTimeout"\n        data-disabled="!updatable"&gt;\n  &lt;description&gt;&lt;span translate&gt;Milliseconds, 0 if infinite&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n        data-type="number"\n        data-min="0"\n        data-label="{{ \'Read timeout\' | translate }}"\n        data-model="moduleDraft.readTimeout"\n        data-disabled="!updatable"&gt;\n  &lt;description&gt;&lt;span translate&gt;Milliseconds, 0 if infinite&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n'},6817:e=&gt;{e.exports='&lt;div rg-error-page&gt;\n  &lt;div class="hub-header"&gt;\n    &lt;rg-breadcrumb&gt;{{ \'Backup Settings\' | translate }}&lt;/rg-breadcrumb&gt;\n  &lt;/div&gt;\n\n  &lt;div class="container container_legacy"&gt;\n\n    &lt;form-save item="$ctrl.settings" resource="$ctrl.resource" after-save="$ctrl.reload()"&gt;\n      &lt;form-control-edit-text\n        data-label="{{\'Backup location\' | translate}}"\n        data-required="true"\n        data-disabled="!$ctrl.updatable || $ctrl.loading"\n        data-model="$ctrl.settings.backupFolder"\n      &gt;\n        &lt;description&gt;{{$ctrl.settings.resolvedBackupFolder}}&lt;/description&gt;\n      &lt;/form-control-edit-text&gt;\n\n      &lt;form-control-edit-text\n        data-label="{{\'Filename prefix\' | translate}}"\n        data-required="true"\n        data-validators="$ctrl.prefixValidators"\n        data-disabled="!$ctrl.updatable || $ctrl.loading"\n        data-model="$ctrl.settings.namePrefix"\n      &gt;&lt;/form-control-edit-text&gt;\n\n      &lt;form-control-enum\n        data-label="{{\'Archive format\' | translate}}"\n        data-disabled="!$ctrl.updatable || $ctrl.loading"\n        data-items="$ctrl.formatOptions"\n        data-model="$ctrl.settings.archiveType"\n      &gt;&lt;/form-control-enum&gt;\n\n      &lt;form-control-select\n        data-label="{{\'Backup interval\' | translate}}"\n        data-instant="true"\n        data-disabled="!$ctrl.updatable || $ctrl.loading"\n        data-options="o.value as o.label select as $ctrl.buttonText(o) describe as o.value for o in $ctrl.cronExpressions track by o.tracker"\n        data-model="$ctrl.settings.cronExpression"\n      &gt;&lt;/form-control-select&gt;\n\n      &lt;form-control-edit-text\n        data-label="{{\'Backup files rotation\' | translate}}"\n        data-required="true"\n        data-type="number"\n        data-min="0"\n        data-disabled="!$ctrl.updatable || $ctrl.loading"\n        data-model="$ctrl.settings.countToKeep"\n      &gt;\n        &lt;description&gt;\n          &lt;span translate&gt;Set positive integer value to keep that count of backup files, 0 â€“ to turn rotation off.&lt;/span&gt;\n        &lt;/description&gt;\n      &lt;/form-control-edit-text&gt;\n\n      &lt;hub-audit-link entity="[backupSettings]"\n                  name="{{ \'Backup Settings\' | translate }}"&gt;&lt;/hub-audit-link&gt;\n    &lt;/form-save&gt;\n\n    &lt;div class="ring-form__group"&gt;\n      &lt;rg-button mode="primary" loader="$ctrl.inProgress" ng-click="$ctrl.createBackup()" ng-disabled="!$ctrl.updatable || $ctrl.loading"&gt;\n        &lt;span translate&gt;Create backup&lt;/span&gt;\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;rg-smart-table\n    data="$ctrl.data"\n    columns="$ctrl.columns"\n    loading="$ctrl.loading"\n    selectable="false"\n    get-item-key="$ctrl.getBakupKey"\n  &gt;&lt;/rg-smart-table&gt;\n&lt;/div&gt;\n\n&lt;hub-page-help url="Backing-up-and-restoring-data.html"&gt;\n  &lt;span translate&gt;Create a backup copy of your Hub database and system settings.&lt;/span&gt;\n&lt;/hub-page-help&gt;\n'},58576:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label" translate&gt;Cron expression&lt;/label&gt;\n\n  &lt;div class="ring-form__control ring-form__control_small"&gt;\n    &lt;input class="ring-input ring-input-size_md"\n           name="cronExpression" type="text" ng-model="data.expression"\n           ng-class="dialog.dialogForm.cronExpression | rgInputClass"\n    &gt;\n\n    &lt;div class="ring-form__control__description"&gt;\n      &lt;span translate&gt;For more information, refer to the quartz &lt;a target="_blank" class="ring-link" href="https://www.quartz-scheduler.org/documentation/quartz-2.x/tutorials/crontrigger.html"&gt;documentation&lt;/a&gt;.&lt;/span&gt;\n    &lt;/div&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.cronExpression"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n'},92808:(e,t,n)=&gt;{e.exports='&lt;div hub-resource="CertificateResource" rg-error-page hub-resource-item-open="certificates/:id"&gt;\n  &lt;hub-resource-query-data\n    fields="id,name,disabled,certificateType,version,issuedBy,issuedTo,serialNumber,validTo,validFrom,algorithm,fingerprint(md5,sha1,sha256)"\n    items-field="certificates"\n    data="data"\n    params="{ \'disabled\': true }"\n    order-by="$ctrl.orderByQuery"\n  &gt;&lt;/hub-resource-query-data&gt;\n\n  &lt;hub-header placeholder="{{ \'filter certificates\' | translate }}"&gt;&lt;/hub-header&gt;\n\n  &lt;hub-table\n    data="data"\n    columns="$ctrl.columns"\n    default-sort-key="name"\n    order-by="$ctrl.orderByQuery"\n    on-selection-change="$ctrl.onSelect(selection)"\n\n    title-format="\'certificates-total-title\'"\n    toolbar-template="$ctrl.toolbarTemplate"\n    sidebar-template="$ctrl.sidebarTemplate"\n    sidebar-empty="{{ \'Select certificate to see details\' | translate }}"\n    sidebar-icon="'+n(12247)+'"\n\n    description-id="certificate-list"\n  &gt;\n    &lt;p translate&gt;Import a trusted SSL certificate from an external service. These certificates identify the external service as a trusted source and let you establish a secure connection between YouTrack and the third-party server. &lt;hub-help-link url="Trusted-SSL-Certificates.html"&gt;Learn more â†’&lt;/hub-help-link&gt;&lt;/p&gt;\n  &lt;/hub-table&gt;\n\n  &lt;hub-page-help url="Trusted-SSL-Certificates.html"&gt;\n    &lt;span translate&gt;Adding a trusted server certificate means that you trust the server that possesses a respective key. &lt;br&gt;\n      Upload a trusted certificate to configure a secure connection with supported authentication modules.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},29217:e=&gt;{e.exports='&lt;div class="ring-form__group" rg-dialog-title="{{ \'Import Trusted Certificate\' | translate }}"&gt;\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input id="create-dialog__name" name="name" required type="text"\n             ng-class="dialog.dialogForm.name | rgInputClass" ng-model="dialog.data.item.name"\n             class="ring-input-size_md"&gt;\n\n      &lt;input name="type" type="hidden"\n             ng-model="dialog.data.item.type" value="certificate"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div base64-input\n       label="{{\'Certificate\' | translate}}"\n       required\n       name="data"\n       ng-model="dialog.data.item.data"\n       unsupported-text="{{\'Unfortunately, your browser doesn\\\'t support importing a certificate list as a file. Paste the base64-encoded certificate list here.\' | translate}}"\n       input-id="create-dialog__data"&gt;\n    &lt;span translate&gt;Certificate file in DER (.cer, .crt) format&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},88849:e=&gt;{e.exports='&lt;h2 class="ring-sidebar__title"&gt;\n  &lt;span&gt;{{ $ctrl.sidebarElement.name }}&lt;/span&gt;&lt;rg-badge\n  class-name="\'title-badge\'" disabled="true" ng-show="$ctrl.sidebarElement.disabled"&gt;&lt;span translate&gt;disabled&lt;/span&gt;&lt;/rg-badge&gt;\n&lt;/h2&gt;\n\n&lt;div certificate-info="$ctrl.sidebarElement"&gt;\n    &lt;div class="ring-sidebar__section"&gt;\n        &lt;span class="ring-sidebar__section-title"&gt;{{ fieldLabel }}&lt;/span&gt;\n\n        &lt;div class="ring-sidebar__section-text"&gt;{{ fieldValue }}&lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n'},7614:e=&gt;{e.exports='&lt;ng-controller ng-controller="HubTableSelectionCtrl as selectionCtrl"&gt;\n&lt;ng-controller ng-controller="CertificatesToolbarCtrl as toolbarCtrl"&gt;\n&lt;ng-controller ng-controller="CertificateCreateCtrl as createCtrl"&gt;\n&lt;div rg-button-toolbar&gt;\n  &lt;rg-button\n    mode="primary"\n    delayed="true"\n    rg-promised-click="createCtrl.showImportDialog()"\n    rg-permission="low-level"\n    data-test="import-trusted-certificate-button"\n  &gt;&lt;span translate&gt;Import trusted certificate&lt;/span&gt;&lt;/rg-button&gt;\n\n  &lt;div rg-button-group&gt;\n    &lt;rg-button\n      rg-permission="low-level"\n      ng-if="toolbarCtrl.isDisableVisible(selectionCtrl.selection, true)"\n\n      rg-promised-click="toolbarCtrl.disable(selectionCtrl.selection.items, true)"\n      promised-mode="loader"\n      data-test="button-disable-certificate"\n    &gt;\n      &lt;span translate&gt;Disable&lt;/span&gt;\n    &lt;/rg-button&gt;\n\n    &lt;rg-button\n      rg-permission="low-level"\n      ng-if="toolbarCtrl.isDisableVisible(selectionCtrl.selection, false)"\n\n      rg-promised-click="toolbarCtrl.disable(selectionCtrl.selection.items, false)"\n      promised-mode="loader"\n    &gt;\n      &lt;span translate&gt;Enable&lt;/span&gt;\n    &lt;/rg-button&gt;\n  &lt;/div&gt;\n\n  &lt;rg-button\n    title="{{ \'Delete selected certificates\' | translate }}"\n    danger="true"\n    rg-permission="low-level"\n    data-test="delete-cert"\n    ng-show="selectionCtrl.selection.size &gt;= 1"\n\n    rg-promised-click="toolbarCtrl.remove(selectionCtrl.selection.items)"\n  &gt;\n    &lt;span translate&gt;Delete&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n'},33220:e=&gt;{e.exports='&lt;div rg-error-page="certificate"&gt;\n  &lt;div class="hub-header"&gt;\n    &lt;div rg-button-toolbar class="hub-header__toolbar"&gt;\n      &lt;rg-button\n        ng-if="canDownload"\n        rg-promised-click="download()"\n        promised-mode="loader"&gt;\n        &lt;span translate&gt;Download certificate&lt;/span&gt;\n      &lt;/rg-button&gt;\n\n      &lt;rg-button\n        rg-promised-click="toggleEnabledState(!certificate.disabled)"\n        promised-mode="loader"&gt;\n        &lt;span ng-show="!certificate.disabled" translate&gt;Disable certificate&lt;/span&gt;\n        &lt;span ng-show="certificate.disabled" translate&gt;Enable certificate&lt;/span&gt;\n      &lt;/rg-button&gt;\n\n      &lt;hub-header-delete\n        inline="true"\n        rg-permission="low-level"\n        label="{{ \'Delete certificate\' | translate}}"\n        item="certificate"\n        confirm-message="delete-certificates?"\n        success-message="certificates-success-delete"\n        error-message="certificate-delete"&gt;\n      &lt;/hub-header-delete&gt;\n    &lt;/div&gt;\n    &lt;rg-breadcrumb label="{{\'Trusted SSL Certificates\' | translate}}" link="certificates"&gt;{{ certificate.name }}\n      &lt;sup ng-show="certificate.disabled" class="breadcrumb__badge breadcrumb__badge_error" translate&gt;disabled&lt;/sup&gt;\n      &lt;sup ng-show="!certificate.disabled" class="breadcrumb__badge breadcrumb__badge_success" translate&gt;enabled&lt;/sup&gt;\n    &lt;/rg-breadcrumb&gt;\n  &lt;/div&gt;\n\n  &lt;div class="container container_legacy" hub-resource="CertificateResource"&gt;\n    &lt;form-save item="certificate" draft="certificateDraft"&gt;\n      &lt;form-control-edit-text\n          data-label="{{ \'Name\' | translate }}"\n          data-model="certificateDraft.name"\n          data-extra-class="ring-input-size_md"\n          data-required="true"&gt;\n      &lt;/form-control-edit-text&gt;\n\n      &lt;div certificate-info="certificate"&gt;\n        &lt;div class="ring-form__group"&gt;\n          &lt;label class="ring-form__label"&gt;{{ fieldLabel }}&lt;/label&gt;\n\n          &lt;div class="ring-form__control"&gt;\n            &lt;span&gt;{{ fieldValue }}&lt;/span&gt;\n          &lt;/div&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;hub-audit-link entity="certificate"&gt;&lt;/hub-audit-link&gt;\n    &lt;/form-save&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},68613:e=&gt;{e.exports='&lt;div hub-resource="CustomWidgetResource" rg-error-page hub-resource-item-open="widgets/:id" class="custom-widget-list"&gt;\n  &lt;hub-header placeholder="{{ \'Filter installed widgets\' | translate }}"&gt;&lt;/hub-header&gt;\n\n  &lt;hub-header-with-description description-id="\'custom-widget-list\'"&gt;\n    &lt;hub-header-with-description-title&gt;\n      &lt;span translate&gt;Custom Widgets&lt;/span&gt;\n    &lt;/hub-header-with-description-title&gt;\n    &lt;hub-header-with-description-description&gt;\n      &lt;p translate&gt;Upload and manage custom widgets that you can use to extend the functionality of your dashboards and project overview pages. &lt;hub-help-link url="Custom-Widgets.html"&gt;Learn more â†’&lt;/hub-help-link&gt;&lt;/p&gt;\n    &lt;/hub-header-with-description-description&gt;\n  &lt;/hub-header-with-description&gt;\n\n  &lt;rg-sidebar\n    data-test="team-sidebar"\n    show="$ctrl.isSidebarShown"\n    place-under-sibling=".ring-table__toolbar"\n    sync-bottom="[data-test=\'ring-footer\'];-40"\n    listen-to-height-change=".app__content"\n    top-offset="1"\n  &gt;\n    &lt;rg-template ng-if="$ctrl.sidebarElement" template="$ctrl.sidebarTemplate"&gt;&lt;/rg-template&gt;\n\n    &lt;div ng-if="!$ctrl.sidebarElement" class="ring-sidebar__empty" data-test="table-sidebar-empty"&gt;\n      &lt;div class="ring-sidebar__empty-description"&gt;{{\'Select a widget to see details\' | translate}}&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/rg-sidebar&gt;\n\n  &lt;rg-legacy-table-toolbar stick container=".custom-widget-list"&gt;\n    &lt;rg-template data-test="table-toolbar" template="$ctrl.toolbarTemplate"&gt;&lt;/rg-template&gt;\n\n    &lt;rg-sidebar-toggle-button data-test="table-toolbar-toggle" model="$ctrl.isSidebarShown" class="hub-header__controls__right-toolbar"&gt;\n      &lt;span title="{{ \'Details\' | translate }}" translate&gt;Details&lt;/span&gt;\n    &lt;/rg-sidebar-toggle-button&gt;\n\n    &lt;rg-template data-test="table-toolbar-right" template="$ctrl.rightToolbarTemplate" class="hub-header__controls__right-toolbar"&gt;&lt;/rg-template&gt;\n  &lt;/rg-legacy-table-toolbar&gt;\n\n  &lt;div class="custom-widget-list__section-title" ng-if="!$ctrl.loading &amp;&amp; $ctrl.installed.length === 0"&gt;{{$ctrl.installedLabel}}&lt;/div&gt;\n\n  &lt;rg-table\n    ng-show="$ctrl.loading || $ctrl.installed.length"\n    caption="$ctrl.installedLabel"\n    data="$ctrl.installed"\n    selection="$ctrl.selection"\n    remote-selection="true"\n    on-select="$ctrl.onSelect"\n    columns="$ctrl.columns"\n    loading="$ctrl.loading"\n    shortcuts="$ctrl.shortcuts"\n  &gt;&lt;/rg-table&gt;\n\n  &lt;div\n    class="custom-widget-list__empty-message"\n    ng-if="!$ctrl.loading &amp;&amp; $ctrl.installed.length === 0"\n  &gt;\n    &lt;span translate data-test="no-installed-widgets"&gt;\n      You do not have any installed widgets.\n    &lt;/span&gt;\n  &lt;/div&gt;\n\n  &lt;div class="custom-widget-list__table-gap"&gt;&lt;/div&gt;\n\n  &lt;div class="custom-widget-list__section-title" ng-if="!$ctrl.hideRepository &amp;&amp; !$ctrl.loading &amp;&amp; $ctrl.available.length === 0"&gt;{{$ctrl.availableLabel}}&lt;/div&gt;\n\n  &lt;rg-table\n    class="custom-widget-list__available-table"\n    ng-if="!$ctrl.hideRepository &amp;&amp; $ctrl.available.length &gt; 0"\n    caption="$ctrl.availableLabel"\n    data="$ctrl.available"\n    selection="$ctrl.selection"\n    remote-selection="true"\n    on-select="$ctrl.onSelect"\n    columns="$ctrl.columns"\n    loading="$ctrl.loading"\n    shortcuts="$ctrl.notOpeningShortcuts"\n  &gt;&lt;/rg-table&gt;\n\n  &lt;div\n    class="custom-widget-list__empty-message"\n    ng-if="!$ctrl.loading &amp;&amp; $ctrl.available.length === 0"\n  &gt;\n    &lt;span translate data-test="no-available-widgets"&gt;\n      You\'ve installed all of the widgets that are compatible with your installation.\n      &lt;br/&gt;To find widgets that are available for later versions,\n      &lt;a class="ring-link" href="https://plugins.jetbrains.com/hub"&gt;browse the JetBrains Plugins Repository&lt;/a&gt;.\n    &lt;/span&gt;\n  &lt;/div&gt;\n\n  &lt;hub-page-help url="Custom-Widgets.html"&gt;\n    &lt;span translate&gt;\n      Upload and manage custom widgets that you can use to extend the functionality of your dashboards.\n    &lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},82344:e=&gt;{e.exports='&lt;div&gt;\n&lt;ng-controller ng-controller="CustomWidgetListSidebarCtrl as sidebarCtrl"&gt;\n  &lt;img class="ring-sidebar__avatar"\n       ng-if="sidebarCtrl.getWidgetIconUrl($ctrl.sidebarElement)"\n       ng-src="{{ sidebarCtrl.getWidgetIconUrl($ctrl.sidebarElement) }}"/&gt;\n\n  &lt;h2 class="ring-sidebar__title"&gt;\n    &lt;a class="ring-link"\n       ng-href="widgets/{{$ctrl.sidebarElement.key}}"\n       ng-if="$ctrl.sidebarElement.local"\n    &gt;{{ sidebarCtrl.getName($ctrl.sidebarElement.manifest) }}&lt;/a&gt;\n    &lt;span\n       ng-if="$ctrl.sidebarElement.repo"\n    &gt;{{ sidebarCtrl.getName($ctrl.sidebarElement.manifest) }}&lt;/span&gt;\n  &lt;/h2&gt;\n\n  &lt;span class="custom-widget-list__sidebar-description"&gt;\n    {{ sidebarCtrl.getDescription($ctrl.sidebarElement.manifest) }}\n  &lt;/span&gt;\n\n  &lt;div class="ring-sidebar__section"&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;Key&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n      &lt;span&gt;{{ $ctrl.sidebarElement.key }}&lt;/span&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n\n  &lt;div ng-show="$ctrl.sidebarElement.local &amp;&amp; $ctrl.sidebarElement.available"&gt;\n    &lt;div class="ring-sidebar__section"&gt;\n      &lt;span class="ring-sidebar__section-title" translate&gt;Installed version&lt;/span&gt;\n\n      &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;span&gt;{{ $ctrl.sidebarElement.manifest.version }}&lt;/span&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-sidebar__section"&gt;\n      &lt;span class="ring-sidebar__section-title" translate&gt;Available version&lt;/span&gt;\n\n      &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;a class="ring-link"\n           ng-href="{{ $ctrl.sidebarElement.repositoryUrl }}"\n        &gt;{{ $ctrl.sidebarElement.available.version }}&lt;/a&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-show="!($ctrl.sidebarElement.local &amp;&amp; $ctrl.sidebarElement.available)"&gt;\n    &lt;div class="ring-sidebar__section"&gt;\n      &lt;span class="ring-sidebar__section-title" translate&gt;Version&lt;/span&gt;\n\n      &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;a class="ring-link"\n           ng-href="{{ $ctrl.sidebarElement.repositoryUrl }}"\n           ng-if="$ctrl.sidebarElement.repositoryUrl"\n        &gt;{{ $ctrl.sidebarElement.manifest.version }}&lt;/a&gt;\n        &lt;span ng-if="!$ctrl.sidebarElement.repositoryUrl"\n        &gt;{{ $ctrl.sidebarElement.manifest.version }}&lt;/span&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-sidebar__section"&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;Author&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n      &lt;span&gt;{{ $ctrl.sidebarElement.manifest.author }}&lt;/span&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.manifest.capabilities"&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;Capabilities&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n      &lt;div\n        ng-if="$ctrl.sidebarElement.manifest.capabilities.popups"\n        translate translate-context="Dashboard"\n      &gt;\n        Show alerts and open links in new browser tabs or windows\n      &lt;/div&gt;\n      &lt;div\n        ng-if="$ctrl.sidebarElement.manifest.capabilities.topNavigation"\n        translate translate-context="Dashboard"\n      &gt;\n        Allows navigation away from the dashboard\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.manifest.dependencies"&gt;\n    &lt;span class="ring-sidebar__section-title"&gt;\n        &lt;span translate&gt;Accessible services&lt;/span&gt;:\n    &lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text custom-widget-list__sidebar-services"&gt;\n      &lt;custom-widget-accessible-services\n        accessible-services="$ctrl.sidebarElement.accessibleServices"\n        services="$ctrl.sidebarElement.manifest.dependencies"\n      &gt;&lt;/custom-widget-accessible-services&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/ng-controller&gt;\n&lt;/div&gt;\n'},36518:e=&gt;{e.exports='&lt;ng-controller ng-controller="CustomWidgetsToolbarCtrl as toolbarCtrl"&gt;\n  &lt;div rg-button-toolbar&gt;\n    &lt;rg-button\n      data-test="upload-button"\n      mode="primary"\n      delayed="true"\n      rg-promised-click="toolbarCtrl.uploadWidgetDialog()"\n    &gt;&lt;span translate&gt;New widget&lt;/span&gt;&lt;/rg-button&gt;\n\n    &lt;rg-button\n      title="{{ \'Enable selected widgets\' | translate }}"\n      data-test="enable-widget"\n      ng-if="toolbarCtrl.canToggleDisabled(false)"\n      rg-promised-click="toolbarCtrl.toggleWidgetsDisabled(toolbarCtrl.selection.items, false)"\n      promised-mode="loader"\n    &gt;\n      &lt;span translate&gt;Enable&lt;/span&gt;\n    &lt;/rg-button&gt;\n\n    &lt;rg-button\n      title="{{ \'Disable selected widgets\' | translate }}"\n      data-test="disable-widget"\n      ng-if="toolbarCtrl.canToggleDisabled(true)"\n      rg-promised-click="toolbarCtrl.toggleWidgetsDisabled(toolbarCtrl.selection.items, true)"\n      promised-mode="loader"\n    &gt;\n      &lt;span translate&gt;Disable&lt;/span&gt;\n    &lt;/rg-button&gt;\n\n    &lt;rg-button\n      title="{{ \'Install selected widgets\' | translate }}"\n      data-test="disable-widget"\n      ng-if="toolbarCtrl.canInstall()"\n      rg-promised-click="toolbarCtrl.install(toolbarCtrl.selection.items, true)"\n      promised-mode="loader"\n    &gt;\n      &lt;span translate&gt;Install&lt;/span&gt;\n    &lt;/rg-button&gt;\n\n    &lt;rg-button\n      title="{{ \'Install selected widgets\' | translate }}"\n      data-test="disable-widget"\n      ng-if="toolbarCtrl.canUpdate()"\n      rg-promised-click="toolbarCtrl.update(toolbarCtrl.selection.items, true)"\n      promised-mode="loader"\n    &gt;\n      &lt;span translate&gt;Update&lt;/span&gt;\n    &lt;/rg-button&gt;\n\n    &lt;rg-button\n      title="{{ \'Delete selected widgets\' | translate }}"\n      danger="true"\n      data-test="delete-selected-widget"\n      ng-show="toolbarCtrl.canRemove()"\n\n      rg-promised-click="toolbarCtrl.removeWidgets(toolbarCtrl.selection.items)"\n    &gt;\n      &lt;span translate&gt;Delete&lt;/span&gt;\n    &lt;/rg-button&gt;\n  &lt;/div&gt;\n&lt;/ng-controller&gt;\n'},16280:e=&gt;{e.exports='&lt;div class="ring-button-toolbar"&gt;\n  &lt;a\n    class="ring-link authmodule-list__toolbar_right__link"\n    href="dashboard/widgets-playground"\n  &gt;\n    &lt;span translate&gt;Widgets playground&lt;/span&gt;\n  &lt;/a&gt;\n&lt;/div&gt;\n'},18684:(e,t,n)=&gt;{e.exports='&lt;div ng-form="uploadForm"&gt;\n  \x3c!-- A hack to make form invalid if archive is not uploaded yet --\x3e\n  &lt;input hidden ng-model="dialog.data.uploadedArchive.archiveId" ng-required="true"/&gt;\n\n  &lt;div\n    ngf-drop\n    ngf-select\n    ng-model="dialog.data.selectedFile"\n    ngf-change="dialog.data.onSelectFile($file)"\n    accept=".zip"\n    ngf-max-size="10MB"\n    required\n    name="archive"\n    ngf-drag-over-class="\'custom-widget-list__drop-zone_drag-over\'"\n    class="custom-widget-list__drop-zone"\n  &gt;\n    &lt;span ng-if="!dialog.data.selectedFile" class="custom-widget-list__drop-zone-text custom-widget-list__drop-zone-text_gray"&gt;\n      &lt;span translate&gt;Drag a ZIP file here or click to browse from your computer&lt;/span&gt;\n    &lt;/span&gt;\n    &lt;rg-loader-inline ng-if="dialog.data.isLoading"&gt;&lt;/rg-loader-inline&gt;\n    &lt;span ng-if="dialog.data.selectedFile" class="custom-widget-list__drop-zone-text"&gt;{{dialog.data.selectedFile.name}}&lt;/span&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-if="uploadForm.archive.$error.maxSize" class="custom-widget-list__upload-dialog-warning"&gt;\n    &lt;span translate&gt;ZIP archive must be smaller than 10 Mb&lt;/span&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-if="dialog.data.uploadedArchive" data-test="uploaded-archive" class="custom-widget-list__widget-info"&gt;\n\n    &lt;div class="custom-widget-list__dialog-information-block"&gt;\n      &lt;div class="custom-widget-list__upload-dialog-widget-info" translate&gt;\n        {{dialog.data.getName(dialog.data.uploadedArchive.manifest)}} {{dialog.data.uploadedArchive.manifest.version}} by {{dialog.data.uploadedArchive.manifest.author}}\n      &lt;/div&gt;\n\n      &lt;div&gt;{{dialog.data.getDescription(dialog.data.uploadedArchive.manifest)}}&lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div ng-if="dialog.data.uploadedArchive.manifest.capabilities" class="custom-widget-list__dialog-information-block"&gt;\n      &lt;div class="custom-widget-list__dialog-capabilities-title"&gt;\n        &lt;span translate&gt;This widget requests the following capabilities&lt;/span&gt;:\n      &lt;/div&gt;\n\n      &lt;div class="custom-widget-list__dialog-capabilities"&gt;\n        &lt;div\n          ng-if="dialog.data.uploadedArchive.manifest.capabilities.popups"\n          translate translate-context="Dashboard"\n        &gt;\n          Show alerts and open links in new browser tabs or windows\n        &lt;/div&gt;\n        &lt;div\n          ng-if="dialog.data.uploadedArchive.manifest.capabilities.topNavigation"\n          translate translate-context="Dashboard"\n        &gt;\n          Allows navigation away from the dashboard\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div ng-if="dialog.data.uploadedArchive.manifest.dependencies" class="custom-widget-list__dialog-information-block"&gt;\n      &lt;div class="custom-widget-list__dialog-services-title"&gt;\n        &lt;span translate&gt;This widget requests access to the following services&lt;/span&gt;:\n      &lt;/div&gt;\n\n      &lt;custom-widget-accessible-services\n        accessible-services="dialog.data.uploadedArchive.accessibleServices"\n        services="dialog.data.uploadedArchive.manifest.dependencies"\n      &gt;&lt;/custom-widget-accessible-services&gt;\n    &lt;/div&gt;\n\n    &lt;div class="custom-widget-list__dialog-manifest-block"&gt;\n      &lt;span class="ring-link custom-widget-list__manifest-toggle" ng-click="dialog.data.showManifest = !dialog.data.showManifest"&gt;\n        &lt;rg-icon class="custom-widget-list__manifest-toggle-icon" glyph="'+n(25426)+'" size="14" ng-if="!dialog.data.showManifest"&gt;\n        &lt;/rg-icon&gt;&lt;rg-icon class="custom-widget-list__manifest-toggle-icon" glyph="'+n(96971)+'" size="14" ng-if="dialog.data.showManifest"&gt;\n        &lt;/rg-icon&gt;&lt;span translate&gt;Manifest&lt;/span&gt;\n      &lt;/span&gt;\n\n      &lt;div&gt;\n        &lt;pre\n          ng-if="dialog.data.showManifest"\n          class="custom-widget-list__manifest"\n        &gt;{{dialog.data.uploadedArchive.manifest | json}}&lt;/pre&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div ng-if="dialog.data.uploadedArchive &amp;&amp; !dialog.data.uploadedArchive.manifest.products" class="custom-widget-list__upload-dialog-warning"&gt;\n      &lt;span translate&gt;The widget manifest does not specify the products into which the widget can be installed. Please specify values for the "products" attribute.&lt;/span&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},65509:e=&gt;{e.exports='&lt;div rg-error-page="widget"&gt;\n  &lt;div class="hub-header"&gt;\n    &lt;rg-breadcrumb label="{{ \'Custom Widgets\' | translate }}" link="widgets"&gt;\n      {{ widgetCtrl.getName(widgetCtrl.widget.manifest) }}\n      &lt;sup ng-show="widgetCtrl.widget.disabled" class="breadcrumb__badge breadcrumb__badge_error" translate&gt;disabled&lt;/sup&gt;\n      &lt;sup ng-show="!widgetCtrl.widget.disabled" class="breadcrumb__badge breadcrumb__badge_success" translate&gt;enabled&lt;/sup&gt;\n    &lt;/rg-breadcrumb&gt;\n\n    &lt;div rg-button-toolbar class="hub-header__toolbar"&gt;\n      &lt;rg-button rg-promised-click="widgetCtrl.toggleDisabled(!widgetCtrl.widget.disabled)" promised-mode="loader"\n                 data-test="toggle-widget-disable"\n                 data-test-disabled="{{widgetCtrl.widget.disabled}}"\n                 ng-disabled="!widgetCtrl.updatable"&gt;\n        &lt;span ng-show="!widgetCtrl.widget.disabled" translate&gt;Disable widget&lt;/span&gt;\n        &lt;span ng-show="widgetCtrl.widget.disabled" translate&gt;Enable widget&lt;/span&gt;\n      &lt;/rg-button&gt;\n\n      &lt;rg-button\n        rg-promised-click="widgetCtrl.uploadNewVersion()"\n        ng-disabled="!widgetCtrl.updatable"\n        data-test="upload-new-version"\n        delayed="true"&gt;\n        &lt;span translate&gt;Update widget&lt;/span&gt;\n      &lt;/rg-button&gt;\n\n      &lt;hub-header-delete\n        rg-permission="low-level"\n        label="{{ \'Delete widget\' | translate:\'Remove action\'}}"\n        item="widgetCtrl.widget"\n        inline="true"\n        confirm-message="delete-widgets?"\n        success-message="widgets-success-delete"\n        error-message="widgets-delete"&gt;\n      &lt;/hub-header-delete&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="container"\n       hub-resource="CustomWidgetResource"\n       data-test="widget-meta"\n       data-test-widget-key="{{widgetCtrl.widget.key}}"\n  &gt;\n    &lt;div class="ring-form"&gt;\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label" translate&gt;Name&lt;/label&gt;\n\n        &lt;div class="ring-form__control ring-form__control_text" data-test="widget-name"&gt;\n          {{ widgetCtrl.getName(widgetCtrl.widget.manifest) }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-form"&gt;\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label" translate&gt;Key&lt;/label&gt;\n\n        &lt;div class="ring-form__control ring-form__control_text" data-test="widget-key"&gt;{{ widgetCtrl.widget.key }}&lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-form"&gt;\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label" translate&gt;Version&lt;/label&gt;\n\n        &lt;div class="ring-form__control ring-form__control_text" data-test="widget-version"&gt;\n          {{ widgetCtrl.widget.manifest.version }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-form"&gt;\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label" translate&gt;Author&lt;/label&gt;\n\n        &lt;div class="ring-form__control ring-form__control_text"&gt;{{ widgetCtrl.widget.manifest.author }}&lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-form"&gt;\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label" translate&gt;Description&lt;/label&gt;\n\n        &lt;div class="ring-form__control ring-form__control_text"&gt;\n          {{ widgetCtrl.getDescription(widgetCtrl.widget.manifest) }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-form" ng-if="widgetCtrl.widget.manifest.capabilities"&gt;\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label" translate&gt;Capabilities&lt;/label&gt;\n\n        &lt;div class="ring-form__control ring-form__control_text"&gt;\n          &lt;div\n            ng-if="widgetCtrl.widget.manifest.capabilities.popups"\n            translate translate-context="Dashboard"\n          &gt;\n            Show alerts and open links in new browser tabs or windows\n          &lt;/div&gt;\n          &lt;div\n            ng-if="widgetCtrl.widget.manifest.capabilities.topNavigation"\n            translate translate-context="Dashboard"\n          &gt;\n            Allows navigation away from the dashboard\n          &lt;/div&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-form custom-widget-page__accessible-services-block" ng-if="widgetCtrl.widget.manifest.services"&gt;\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label"&gt;\n          &lt;span translate&gt;Accessible services&lt;/span&gt;\n        &lt;/label&gt;\n\n        &lt;div class="ring-form__control ring-form__control_text"&gt;\n          &lt;custom-widget-accessible-services\n            accessible-services="widgetCtrl.widget.accessibleServices"\n            services="widgetCtrl.widget.manifest.services"\n          &gt;&lt;/custom-widget-accessible-services&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-form"&gt;\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label" translate&gt;Manifest&lt;/label&gt;\n\n        &lt;div class="ring-form__control ring-form__control_text"&gt;\n          &lt;pre\n            class="custom-widget-list__manifest"\n          &gt;{{widgetCtrl.widget.manifest | json}}&lt;/pre&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;hub-audit-link\n      entity="widgetCtrl.widget"\n      name="{{widgetCtrl.getName(widgetCtrl.widget.manifest)}}"\n    &gt;&lt;/hub-audit-link&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},21226:(e,t,n)=&gt;{e.exports='&lt;div ng-repeat="(applicationName, requestedVersion) in $ctrl.services" class="custom-widget-page__service-block" data-test="application-type-block"&gt;\n\n  &lt;div class="custom-widget-page__application-name" data-test="application-type"&gt;\n    &lt;span data-test="application-name" data-test-app-name="{{applicationName}}"&gt;{{applicationName}}&lt;/span&gt;\n    &lt;span data-test="application-version"&gt;{{$ctrl.getVersionPresentation(requestedVersion)}}&lt;/span&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-repeat="service in $ctrl.getServicesOfType(applicationName)" class="custom-widget-page__service"&gt;\n    &lt;img\n      ng-if="$ctrl.getServiceIconGlyph(service)"\n      class="custom-widget-page__service-icon"\n      ng-src="{{$ctrl.getServiceIconGlyph(service)}}"\n    /&gt;\n\n    &lt;a class="ring-link"\n       ng-href="services/{{service.key | encodeLink:service.id}}"\n       data-test="matched-service"\n       data-test-name="{{service.name}}"\n    &gt;{{service.name}}&lt;/a&gt;\n\n    &lt;span ng-if="$ctrl.doesVersionSatisfy(service)"\n          class="custom-widget-page__service-version"\n          data-test="service-version"\n    &gt;{{service.version}}&lt;/span&gt;\n\n    &lt;span ng-if="!$ctrl.doesVersionSatisfy(service)"\n          class="custom-widget-page__service-version custom-widget-page__service-version_bad"\n          data-test="service-version"\n    &gt;\n      {{service.version}}\n      &lt;rg-icon\n        rg-tooltip="{{\'The application version used by this service is incompatible\' | translate}}"\n        glyph="'+n(24193)+'"\n        size="16"\n        class="custom-widget-page__service-version-error-icon"&gt;&lt;/rg-icon&gt;\n    &lt;/span&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-if="!$ctrl.getServicesOfType(applicationName).length"&gt;\n    &lt;span translate data-test="no-service"&gt;No service found&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},24468:(e,t,n)=&gt;{e.exports='&lt;div rg-error-page&gt;\n  &lt;hub-header-with-description description-id="\'end-user-agreement\'"&gt;\n    &lt;hub-header-with-description-title&gt;\n      {{ \'User Agreement\' | translate }}&lt;sup\n        class="breadcrumb__badge breadcrumb__badge_success" data-test="user-agreement-enabled" ng-show="ui.ready &amp;&amp; settings.endUserAgreement.enabled" translate translate-context="End user agreement"&gt;enabled&lt;/sup&gt;&lt;sup\n        class="breadcrumb__badge breadcrumb__badge_error" data-test="user-agreement-disabled" ng-show="ui.ready &amp;&amp; !settings.endUserAgreement.enabled" translate translate-context="End user agreement"&gt;disabled&lt;/sup&gt;\n    &lt;/hub-header-with-description-title&gt;\n    &lt;hub-header-with-description-description&gt;\n      &lt;p translate&gt;Store a user agreement that is presented to users who log in to YouTrack. To access and use YouTrack, users must accept the agreement.&lt;/p&gt;\n      &lt;p translate&gt;This lets you collect and track individual consent to process personal information in YouTrack as outlined in the General Data Protection Regulation (GDPR) requirements for businesses that operate in EU member states. &lt;hub-help-link url="user-agreement.html"&gt;Learn more â†’&lt;/hub-help-link&gt;&lt;/p&gt;\n    &lt;/hub-header-with-description-description&gt;\n  &lt;/hub-header-with-description&gt;\n\n  &lt;div class="eua"&gt;\n    &lt;div class="eua__manage__version"&gt;\n      &lt;span ng-show="settings.endUserAgreement.majorVersion &gt; 0 || settings.endUserAgreement.minorVersion &gt; 0" translate&gt;Version {{settings.endUserAgreement.majorVersion}}.{{settings.endUserAgreement.minorVersion}}.&lt;/span&gt;\n      &lt;span class="eua__manage__version__updated" ng-show="settings.endUserAgreement.updateTime" translate&gt;Last updated on {{ settings.endUserAgreement.updateTime | date:\'mediumDate\' }}&lt;/span&gt;\n      &lt;a href="events?query=target:{{settings.id}}" class="ring-link eua__manage__version__audit" translate&gt;Changes applied to User Agreement&lt;/a&gt;\n    &lt;/div&gt;\n\n    &lt;div rg-button-toolbar class="hub-header__toolbar" ng-show="ui.ready &amp;&amp; !readOnly"&gt;\n      &lt;rg-button\n        rg-promised-click="toggle()"\n        promised-mode="loader"\n        ng-disabled="isDirty() || isEmpty()"&gt;\n        &lt;span ng-show="settings.endUserAgreement.enabled" translate&gt;Disable agreement&lt;/span&gt;\n        &lt;span ng-show="!settings.endUserAgreement.enabled" translate&gt;Enable agreement&lt;/span&gt;\n      &lt;/rg-button&gt;\n\n      &lt;rg-button\n        ng-disabled="isDirty() || isEmpty()"\n\n        rg-select\n        select-type="dropdown"\n        options="item.name for item in downloadOptions track by item.type"\n        on-select="selected.originalModel.download()"\n        config="dropdownConfig"\n      &gt;\n        &lt;span translate&gt;Download agreement&lt;/span&gt;\n        &lt;rg-icon glyph="'+n(96971)+'" size="14"&gt;&lt;/rg-icon&gt;\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="container container_legacy"&gt;\n    &lt;div class="eua__manage" rg-shortcuts="hub-save-form" shortcuts-map="keyMap" shortcuts-focus="isDirty()"&gt;\n      &lt;textarea\n        class="ring-input eua__manage__editor ring-js-shortcuts"\n        ng-model="settings.endUserAgreement.text"\n        ng-attr-placeholder="{{\'Type or paste your agreement text. Use Markdown syntax to format text.\' | translate}}"\n      &gt;&lt;/textarea&gt;\n      &lt;markdown-preview class="eua__manage__preview" text="settings.endUserAgreement.text"&gt;&lt;/markdown-preview&gt;\n    &lt;/div&gt;\n\n    &lt;markdown-reference&gt;&lt;/markdown-reference&gt;\n\n    &lt;div class="ring-form__group"&gt;\n      &lt;rg-checkbox ng-model="settings.endUserAgreement.requiredForREST"&gt;&lt;span translate&gt;Require for REST API access&lt;/span&gt;&lt;/rg-checkbox&gt;\n    &lt;/div&gt;\n\n    &lt;div rg-panel ng-if="isDirty()" rg-docked-panel&gt;\n      &lt;div class="eua__manage__confirm" ng-if="isTextChanged()"&gt;\n        &lt;rg-checkbox ng-model="ui.invalidate"&gt;\n          &lt;span translate&gt;Invalidate current agreement&lt;/span&gt;\n        &lt;/rg-checkbox&gt;\n      &lt;/div&gt;\n      &lt;div&gt;\n        &lt;rg-button\n          mode="primary"\n          ng-disabled="isEmpty()"\n          rg-promised-click="update()"\n          promised-mode="{{ui.invalidate ? \'\': \'loader\'}}"\n        &gt;\n          &lt;span translate&gt;Save&lt;/span&gt;\n        &lt;/rg-button&gt;\n\n        &lt;rg-button\n          ng-click="cancel()"\n        &gt;\n          &lt;span translate&gt;Cancel&lt;/span&gt;\n        &lt;/rg-button&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n  &lt;/div&gt;\n\n  &lt;hub-page-help url="user-agreement.html"&gt;\n    &lt;div translate&gt;Store a user agreement that is presented to users who log in to Hub.\n      To access and use Hub, users must accept the agreement.\n    &lt;/div&gt;\n    &lt;br/&gt;\n    &lt;div translate&gt;This lets you collect and track individual consent to process personal\n      information in Hub as outlined in the General Data Protection Regulation (GDPR)\n      requirements for businesses that operate in EU member states.\n    &lt;/div&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},73560:e=&gt;{e.exports="&lt;div translate&gt;This action saves your changes as a new major version. The previous version of the agreement is invalidated.&lt;/div&gt;\n&lt;br/&gt;\n&lt;div translate&gt;All users, including users who accepted the previous agreement, must accept the updated version.&lt;/div&gt;\n"},74876:e=&gt;{e.exports='&lt;div hub-resource="EventResource" rg-error-page hub-resource-item-open="events/:id"&gt;\n  &lt;hub-resource-query-data\n    fields="id,targetId,targetType,targetPresentation,author,authorPresentation,authorType,type,timestamp,eraseTimestamp,changes"\n    items-field="events"\n    data="data"\n    order-by="$ctrl.orderByQuery"\n  &gt;&lt;/hub-resource-query-data&gt;\n\n  &lt;hub-header placeholder="{{ \'Filter audit events\' | translate }}"&gt;&lt;/hub-header&gt;\n\n  &lt;hub-table\n    data="data"\n    columns="$ctrl.columns"\n    default-sort-key="timestamp"\n    order-by="$ctrl.orderByQuery"\n    on-selection-change="$ctrl.onSelect(selection)"\n\n    title-format="\'events-total-title\'"\n    toolbar-template="$ctrl.toolbarTemplate"\n    sidebar-template="$ctrl.sidebarTemplate"\n    sidebar-empty="{{ \'Select audit event to see details\' | translate }}"\n\n    description-id="event-list"\n  &gt;\n    &lt;p translate&gt;All operations that are performed in YouTrack are carefully logged and stored as audit events. Filter the list of events by attributes, including event, author, and target. To view the details for a selected event, click the &lt;strong&gt;Details&lt;/strong&gt; button. Download selected events as a JSON file for further investigation. &lt;hub-help-link url="Monitoring-Events-in-Hub.html"&gt;Learn more â†’&lt;/hub-help-link&gt;&lt;/p&gt;\n  &lt;/hub-table&gt;\n\n  &lt;hub-page-help url="Monitoring-Events-in-Hub.html"&gt;\n    &lt;span translate&gt;All operation that are performed in Hub are carefully logged and stored. Filter the list of events by attributes, including event, author, and target.\n      To view the details for a selected event, click the &lt;b&gt;Details&lt;/b&gt; button.\n      Download selected events as a JSON file for further investigation.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},76977:e=&gt;{e.exports='&lt;div ng-controller="EventListSidebarCtrl as sidebarCtrl"&gt;\n  &lt;h2 class="ring-sidebar__title"&gt;\n      &lt;a class="ring-link" ng-href="events/{{ $ctrl.sidebarElement.id }}"&gt;{{ sidebarCtrl.getEventTypeLabel($ctrl.sidebarElement.type) }}\n          {{ $ctrl.sidebarElement.targetPresentation || $ctrl.sidebarElement.targetType }}&lt;/a&gt;\n  &lt;/h2&gt;\n\n  &lt;div class="ring-sidebar__section"&gt;\n      &lt;span class="ring-sidebar__section-title"&gt;\n          &lt;span translate&gt;Target&lt;/span&gt;\n      &lt;/span&gt;\n\n      &lt;div class="ring-sidebar__section-text"&gt;\n          {{ sidebarCtrl.getEntityTypeLabel($ctrl.sidebarElement.targetType) }}\n\n          &lt;span\n            ng-show="$ctrl.sidebarElement.targetType === \'Project\'"\n            hub-legacy-href="$ctrl.sidebarElement.targetType / $ctrl.sidebarElement.targetPresentation"\n          &gt;{{ $ctrl.sidebarElement.targetPresentation }}&lt;/span&gt;\n\n          &lt;span\n            ng-show="$ctrl.sidebarElement.targetType !== \'Project\'"\n            hub-legacy-href="$ctrl.sidebarElement.targetType / $ctrl.sidebarElement.targetId"\n          &gt;{{ $ctrl.sidebarElement.targetPresentation || $ctrl.sidebarElement.targetId }}&lt;/span&gt;\n      &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-sidebar__section"&gt;\n      &lt;span class="ring-sidebar__section-title"&gt;\n          &lt;span translate&gt;Author&lt;/span&gt;\n      &lt;/span&gt;\n\n      &lt;div class="ring-sidebar__section-text"&gt;\n          {{ sidebarCtrl.getEntityTypeLabel($ctrl.sidebarElement.authorType) }}\n          &lt;span hub-legacy-href="$ctrl.sidebarElement.authorType / $ctrl.sidebarElement.author"\n                  &gt;{{ $ctrl.sidebarElement.authorPresentation || $ctrl.sidebarElement.author }}&lt;/span&gt;\n      &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-sidebar__section"&gt;\n      &lt;span class="ring-sidebar__section-title"&gt;\n          &lt;span translate&gt;Timestamp&lt;/span&gt;\n      &lt;/span&gt;\n\n      &lt;div class="ring-sidebar__section-text"&gt;\n          {{ $ctrl.sidebarElement.timestamp | date:\'medium\' }}\n      &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.eraseTimestamp"&gt;\n      &lt;span class="ring-sidebar__section-title"&gt;\n          &lt;span translate&gt;Personal Data Erased&lt;/span&gt;\n      &lt;/span&gt;\n\n      &lt;div class="ring-sidebar__section-text"&gt;\n          {{ $ctrl.sidebarElement.eraseTimestamp | date:\'medium\' }}\n      &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-sidebar__section"&gt;\n      &lt;span class="ring-sidebar__section-title"&gt;\n          &lt;span translate&gt;Changes&lt;/span&gt;\n      &lt;/span&gt;\n\n      &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;event-changes event="$ctrl.sidebarElement"&gt;&lt;/event-changes&gt;\n      &lt;/div&gt;\n  &lt;/div&gt;\n\n&lt;/div&gt;\n'},72958:e=&gt;{e.exports='&lt;div rg-button-toolbar ng-controller="EventsCtrl as toolbarCtrl"&gt;\n  &lt;rg-button ng-click="toolbarCtrl.download()" rg-permission="low-level-read" loader="toolbarCtrl.downloading"&gt;\n    &lt;span translate&gt;Download as .json&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n'},63024:e=&gt;{e.exports='&lt;div rg-error-page="event"&gt;\n    &lt;div class="hub-header"&gt;\n        &lt;rg-breadcrumb label="{{\'Audit Events\' | translate}}" link="events"&gt;{{ event.name }}&lt;/rg-breadcrumb&gt;\n    &lt;/div&gt;\n\n    &lt;div class="container container_legacy" hub-resource="EventResource"&gt;\n        &lt;form class="ring-form"&gt;\n            &lt;div class="ring-form__group"&gt;\n                &lt;label class="ring-form__label" translate&gt;Target&lt;/label&gt;\n\n                &lt;div class="ring-form__control"&gt;\n                    &lt;span&gt;{{ event.targetType }}\n                    &lt;span hub-legacy-href="event.targetType / event.targetId"\n                            &gt;{{ event.targetPresentation || event.targetId }}&lt;/span&gt;&lt;/span&gt;\n                &lt;/div&gt;\n            &lt;/div&gt;\n\n            &lt;div class="ring-form__group"&gt;\n                &lt;label class="ring-form__label" translate&gt;Author&lt;/label&gt;\n\n                &lt;div class="ring-form__control"&gt;\n                    &lt;span&gt;{{ event.authorType }}\n                    &lt;span hub-legacy-href="event.authorType / event.author"\n                            &gt;{{ event.authorPresentation || event.author }}&lt;/span&gt;&lt;/span&gt;\n                &lt;/div&gt;\n            &lt;/div&gt;\n\n            &lt;div class="ring-form__group"&gt;\n                &lt;label class="ring-form__label" translate&gt;Timestamp&lt;/label&gt;\n\n                &lt;div class="ring-form__control"&gt;\n                    &lt;span&gt;{{ event.timestamp | date:\'medium\' }}&lt;/span&gt;\n                &lt;/div&gt;\n            &lt;/div&gt;\n\n            &lt;div class="ring-form__group"&gt;\n                &lt;label class="ring-form__label" translate&gt;Changes&lt;/label&gt;\n\n                &lt;div class="ring-form__control"&gt;\n                    &lt;event-changes event="event"&gt;&lt;/event-changes&gt;\n                &lt;/div&gt;\n            &lt;/div&gt;\n        &lt;/form&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},4857:e=&gt;{e.exports='&lt;div hub-resource="FeatureResource" rg-error-page&gt;\n  &lt;hub-resource-query-data\n    fields="id,name,key,description,restartRequired,enabled,scopes(id,name)"\n    items-field="hubfeatures"\n    data="data"\n  &gt;&lt;/hub-resource-query-data&gt;\n\n  &lt;hub-table\n    data="data"\n    columns="$ctrl.columns"\n\n    title-format="\'features-total-title\'"\n    toolbar-template="$ctrl.toolbarTemplate"\n    empty-template="$ctrl.emptyTemplate"\n\n    sidebar-template="$ctrl.sidebarTemplate"\n    sidebar-empty="{{ \'Select a feature to see details\' | translate }}"\n  &gt;&lt;/hub-table&gt;\n\n  &lt;hub-page-help url="Experimental-Features.html"&gt;\n    &lt;span translate&gt;Experimental features are in early or intermediate stages of development. We release features in\n      this state to learn more about what you want to see in the final product.&lt;br&gt;\n      To use and test new functionality, enable experimental features on this page.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},86100:e=&gt;{e.exports='&lt;groups-picker model="data.scopes" include-teams="true"&gt;&lt;/groups-picker&gt;\n'},17660:e=&gt;{e.exports='&lt;div class="search-error"&gt;\n  &lt;span class="search-error__title"\n        translate&gt;There aren\'t any experimental features at this time&lt;/span&gt;\n  &lt;span class="search-error__title search-error__title_small"\n        translate&gt;All of the features that were previously made available on an experimental basis are now enabled by default&lt;/span&gt;\n&lt;/div&gt;\n'},39101:e=&gt;{e.exports='&lt;h2 class="ring-sidebar__title"&gt;\n    &lt;span&gt;{{ $ctrl.sidebarElement.name }}&lt;/span&gt;\n    &lt;rg-badge ng-if="!$ctrl.sidebarElement.enabled" invalid="true" class-name="\'title-badge\'"&gt;\n      &lt;span translate&gt;disabled&lt;/span&gt;\n    &lt;/rg-badge&gt;\n    &lt;rg-badge ng-if="$ctrl.sidebarElement.enabled" valid="true" class-name="\'title-badge\'"&gt;\n      &lt;span translate&gt;enabled&lt;/span&gt;\n    &lt;/rg-badge&gt;\n&lt;/h2&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.description"&gt;\n    &lt;div class="ring-sidebar__section-text"&gt;\n        {{ $ctrl.sidebarElement.description }}\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;Key&lt;/span&gt;\n\n  &lt;div class="ring-sidebar__section-text"&gt;\n    &lt;span&gt;{{ $ctrl.sidebarElement.key }}&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;Type&lt;/span&gt;\n\n  &lt;div class="ring-sidebar__section-text"&gt;\n    &lt;span ng-show="$ctrl.sidebarElement.type === \'SystemFeatureJSON\'" translate&gt;System-wide&lt;/span&gt;\n    &lt;span ng-show="$ctrl.sidebarElement.type === \'ScopedFeatureJSON\'" translate&gt;Group-specific&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.scopes"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;Groups&lt;/span&gt;\n\n  &lt;div class="ring-sidebar__section-text"&gt;\n    &lt;span ng-repeat="group in $ctrl.sidebarElement.scopes"&gt;\n          &lt;a class="ring-link" ng-href="groups/{{ group.id }}"&gt;{{ group.name }}&lt;/a&gt;&lt;span ng-if="!$last"&gt;, &lt;/span&gt;\n    &lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n'},48236:e=&gt;{e.exports='&lt;ng-controller ng-controller="HubTableSelectionCtrl as selectionCtrl"&gt;\n  &lt;div rg-button-toolbar ng-controller="FeaturesListToolbarCtrl as ctrl"&gt;\n    &lt;rg-button\n      rg-permission="low-level"\n      ng-if="ctrl.isToggleVisible(selectionCtrl.selection, true)"\n\n      rg-promised-click="ctrl.toggle(selectionCtrl.selection.items, true)"\n      promised-mode="loader"\n      data-test="button-enable-feature"\n    &gt;&lt;span translate&gt;Enable&lt;/span&gt;&lt;/rg-button&gt;\n\n    &lt;rg-button\n      rg-permission="low-level"\n      ng-if="ctrl.isToggleVisible(selectionCtrl.selection, false)"\n\n      rg-promised-click="ctrl.toggle(selectionCtrl.selection.items, false)"\n      promised-mode="loader"\n      data-test="button-disable-feature"\n    &gt;&lt;span translate&gt;Disable&lt;/span&gt;&lt;/rg-button&gt;\n\n    &lt;rg-button\n      rg-permission="low-level"\n      delayed="true"\n      ng-if="ctrl.isChangeScopeVisible(selectionCtrl.selection)"\n\n      rg-promised-click="ctrl.changeScopeDialog(selectionCtrl.selection.items)"\n    &gt;&lt;span translate&gt;Select groups and teams&lt;/span&gt;&lt;/rg-button&gt;\n  &lt;/div&gt;\n&lt;/ng-controller&gt;\n'},77007:e=&gt;{e.exports='&lt;div class="ring-form__group" rg-dialog-title="{{ \'New Group\' | translate }}"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;input id="create-dialog__name" name="name" required type="text" pattern="[^&lt;&gt;\\/]+"\n           ng-class="dialog.dialogForm.name | rgInputClass" ng-model="dialog.data.item.name"\n           class="ring-input-size_md"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label" translate&gt;Project&lt;/label&gt;\n  &lt;div class="ring-form__control"&gt;\n    &lt;rg-select ng-model="dialog.data.item.project"\n               class="ring-input-size_md"\n               select-type="button"\n               filter="dialog.data.filter"\n               label="{{ \'Select project\' | translate }}"\n               not-found-message="{{ \'No matches found\' | translate }}"\n               loading-message="{{ \'Loading...\' | translate }}"\n               options="describe as item.name for item in dialog.data.projects() track by item.id"\n               required&gt;&lt;/rg-select&gt;\n    &lt;span class="ring-form__control__description" translate&gt;The group is added as a resource to the selected project&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},50090:e=&gt;{e.exports='&lt;rg-template template="$ctrl.page"&gt;&lt;/rg-template&gt;\n'},78692:(e,t,n)=&gt;{e.exports='&lt;div hub-resource="GroupResource" rg-error-page hub-resource-item-open="groups/:id"&gt;\n  &lt;hub-resource-query-data\n    fields="id,name,description,iconUrl,autoJoin,requiredTwoFactorAuthentication,projectRoles(project(id,name),role(id,name)),project(id,name),userCount,allUsers,registeredUsers,immutable,parent(id,allUsers)"\n    items-field="usergroups"\n    data="data"\n    order-by="item.name"\n  &gt;&lt;/hub-resource-query-data&gt;\n\n  &lt;hub-header placeholder="{{ \'Filter groups\' | translate }}"&gt;&lt;/hub-header&gt;\n\n  &lt;hub-table\n    data="data"\n    columns="$ctrl.columns"\n\n    title-format="\'groups-total-title\'"\n    toolbar-template="$ctrl.toolbarTemplate"\n    right-toolbar-template="$ctrl.rightToolbarTemplate"\n    sidebar-template="$ctrl.sidebarTemplate"\n    empty-template="$ctrl.groupsEmptyTemplate"\n\n    sidebar-empty="{{ \'Select group to see details\' | translate }}"\n    sidebar-icon="'+n(46968)+'"\n    embedded="$ctrl.isInYoutrackEmbedded"\n    context="$ctrl"\n  &gt;&lt;/hub-table&gt;\n\n  &lt;hub-page-help url="Managing-Groups.html"&gt;\n    &lt;span translate&gt;A group is a collection of user accounts. Groups let you manage multiple accounts more efficiently.&lt;br&gt;\n      Filter the groups list by attributes, including name, group members, and access permissions. The search box provides query\n      completion to help you choose from available search attributes.&lt;br&gt;\n      You cannot delete the All Users group. A role that is granted to the All Users group grants default permissions to all system users.&lt;br&gt;\n      You cannot delete the Registered Users group. A role that is granted to the Registered Users group grants default permissions to all system users except guest.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},8542:(e,t,n)=&gt;{e.exports='&lt;div hub-resource="GroupResource" rg-error-page hub-resource-item-open="$ctrl.getItemUrl(item)"&gt;\n  &lt;hub-resource-query-forest\n    fields="id,name,description,iconUrl,autoJoin,immutable,requiredTwoFactorAuthentication,projectRoles(project(id,name),role(id,key,name)),project(id,name),userCount,allUsers,registeredUsers,parent(id,allUsers)"\n    children-field="subgroups"\n    data="data"\n    order-by="item.name"\n    on-item-level-change="$ctrl.onItemLevelChange"\n    collapsed-items="$ctrl.collapsedItems"\n  &gt;&lt;/hub-resource-query-forest&gt;\n\n  &lt;hub-header placeholder="{{ \'Filter groups\' | translate }}"&gt;&lt;/hub-header&gt;\n\n  &lt;hub-table\n    data="data"\n    columns="$ctrl.columns"\n    no-pager="true"\n    is-item-selectable="$ctrl.isItemSelectable"\n\n    get-item-level="$ctrl.getItemLevel"\n    is-item-collapsible="$ctrl.isItemCollapsible"\n    is-item-collapsed="$ctrl.isItemCollapsed"\n    on-item-collapse="$ctrl.onItemCollapse"\n    on-item-expand="$ctrl.onItemExpand"\n\n    title-format="\'groups-total-title\'"\n    toolbar-template="$ctrl.toolbarTemplate"\n    right-toolbar-template="$ctrl.rightToolbarTemplate"\n    sidebar-template="$ctrl.sidebarTemplate"\n    empty-template="$ctrl.groupsEmptyTemplate"\n\n    sidebar-empty="{{ \'Select group to see details\' | translate }}"\n    sidebar-icon="'+n(46968)+'"\n    embedded="$ctrl.isInYoutrackEmbedded"\n\n    context="$ctrl"\n\n    description-id="group-list"\n  &gt;\n    &lt;p translate&gt;A group is a collection of user accounts. Groups let you manage multiple accounts more efficiently. Filter the list of groups by attributes, including name, group members, and access permissions. The search box provides query completion to help you choose from available search attributes.&lt;/p&gt;\n    &lt;p translate&gt;You can nest groups within each other:&lt;/p&gt;\n    &lt;ul&gt;\n      &lt;li translate&gt;A nested group automatically inherits roles from its parent group. You cannot delete an inherited role from a child group.&lt;/li&gt;\n      &lt;li translate&gt;A parent group automatically contains all users from its child groups.&lt;/li&gt;\n    &lt;/ul&gt;\n    &lt;p translate&gt;You cannot delete the &lt;strong&gt;All Users&lt;/strong&gt; group. A role that is granted to the &lt;strong&gt;All Users&lt;/strong&gt; group grants default permissions to all system users. &lt;hub-help-link url="Managing-Groups.html"&gt;Learn more â†’&lt;/hub-help-link&gt;&lt;/p&gt;\n    &lt;p translate&gt;You cannot delete the &lt;strong&gt;Registered Users&lt;/strong&gt; group. A role that is granted to the &lt;strong&gt;Registered Users&lt;/strong&gt; group grants default permissions to all system users except guest.&lt;/p&gt;\n  &lt;/hub-table&gt;\n\n  &lt;hub-page-help url="Managing-Groups.html"&gt;\n    &lt;span translate&gt;A group is a collection of user accounts. Groups let you manage multiple accounts more efficiently.\n      Filter the groups list by attributes, including name, group members, and access permissions. The search box provides query\n      completion to help you choose from available search attributes.&lt;br&gt;\n      You can nest groups within each other:&lt;ul class="hub-menu__list"&gt;\n        &lt;li class="hub-menu__list-item"&gt;A nested group automatically inherits roles from its parent group. You cannot delete an inherited role from\n          a child group.&lt;/li&gt;\n        &lt;li class="hub-menu__list-item"&gt;A parent group automatically contains all users from its child groups.&lt;/li&gt;\n      &lt;/ul&gt;You cannot delete the All Users group. A role that is granted to the All Users group grants default permissions to all system users.&lt;/span&gt;\n      &lt;/ul&gt;You cannot delete the Registered Users group. A role that is granted to the Registered Users group grants default permissions to all system users except guest.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},41458:(e,t,n)=&gt;{e.exports='&lt;div hub-resource="GroupAndTeamResource" rg-error-page hub-resource-item-open="$ctrl.getItemUrl(item)"&gt;\n  &lt;hub-resource-query-data\n    fields="id,name,description,iconUrl,autoJoin,projectRoles(project(id,name),role(id,key,name)),project(id,name),userCount"\n    items-field="items"\n    data="data"\n    order-by="item.name"\n    extra-query="not is: global"\n  &gt;&lt;/hub-resource-query-data&gt;\n\n  &lt;hub-header placeholder="{{ \'Filter groups and teams\' | translate }}"&gt;&lt;/hub-header&gt;\n\n  &lt;hub-table\n    data="data"\n    columns="$ctrl.columns"\n\n    title-format="\'groups-and-teams-total-title\'"\n    toolbar-template="$ctrl.toolbarTemplate"\n    right-toolbar-template="$ctrl.rightToolbarTemplate"\n    sidebar-template="$ctrl.sidebarTemplate"\n    empty-template="$ctrl.groupsEmptyTemplate"\n\n    selectable="false"\n\n    sidebar-empty="{{ \'Select team to see details\' | translate }}"\n    sidebar-icon="'+n(46968)+'"\n    embedded="$ctrl.isInYoutrackEmbedded"\n\n    context="$ctrl"\n  &gt;&lt;/hub-table&gt;\n&lt;/div&gt;\n'},25535:(e,t,n)=&gt;{e.exports='&lt;img class="ring-sidebar__avatar" ng-if="$ctrl.sidebarElement.iconUrl" ng-src="{{ $ctrl.sidebarElement.iconUrl }}" /&gt;\n\n&lt;h2 class="ring-sidebar__title"&gt;\n    &lt;a class="ring-link" href="{{ $ctrl.sidebarElement | encodeGroupLink }}"&gt;{{ $ctrl.sidebarElement.name }}&lt;/a&gt;\n    &lt;rg-badge ng-if="$ctrl.sidebarElement.autoJoin" class-name="\'title-badge\'"&gt;&lt;span\n            translate&gt;auto-join&lt;/span&gt;&lt;/rg-badge&gt;\n&lt;/h2&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.description"&gt;\n    &lt;div class="ring-sidebar__section-text"&gt;\n        {{ $ctrl.sidebarElement.description }}\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.projectRoles"&gt;\n    &lt;rg-icon size="14" glyph="'+n(57522)+'" class="ring-sidebar__section-icon"&gt;&lt;/rg-icon&gt;\n\n    &lt;span class="ring-sidebar__section-title"\n          translate-n="$ctrl.sidebarElement.projectRoles.length"\n          translate-plural="{{ $count }} Roles"\n          translate&gt;{{ $count }} Role&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;span ng-repeat="projectRole in $ctrl.sidebarElement.projectRoles"&gt;\n          &lt;span ng-if="$ctrl.embedded &amp;&amp; projectRole.project.name === \'Global\'"&gt;{{ projectRole.project.name }}&lt;/span&gt;\n            &lt;a ng-if="!($ctrl.embedded &amp;&amp; projectRole.project.name === \'Global\')"\n               class="ring-link"\n               href="projects/{{ projectRole.project.name | encodeLink:projectRole.project.id }}"&gt;\n              {{ projectRole.project.name }}\n            &lt;/a&gt;:\n            &lt;a class="ring-link" href="roles/{{ projectRole.role.key | encodeLink:projectRole.role.id }}"&gt;{{ projectRole.role.name }}&lt;/a&gt;{{$last ? \'\' : \', \'}}\n        &lt;/span&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},52725:(e,t,n)=&gt;{e.exports='&lt;div hub-resource="TeamResource" rg-error-page hub-resource-item-open="$ctrl.getItemUrl(item)"&gt;\n  &lt;hub-resource-query-data\n    fields="id,name,description,iconUrl,autoJoin,projectRoles(project(id,name),role(id,key,name)),project(id,name),userCount"\n    items-field="projectteams"\n    data="data"\n    order-by="item.name"\n    extra-query="not is: global"\n  &gt;&lt;/hub-resource-query-data&gt;\n\n  &lt;hub-header placeholder="{{ \'Filter teams\' | translate }}"&gt;&lt;/hub-header&gt;\n\n  &lt;hub-table\n    data="data"\n    columns="$ctrl.columns"\n\n    title-format="\'teams-total-title\'"\n    toolbar-template="$ctrl.toolbarTemplate"\n    right-toolbar-template="$ctrl.rightToolbarTemplate"\n    sidebar-template="$ctrl.sidebarTemplate"\n    empty-template="$ctrl.groupsEmptyTemplate"\n\n    selectable="false"\n\n    sidebar-empty="{{ \'Select team to see details\' | translate }}"\n    sidebar-icon="'+n(46968)+'"\n\n    context="$ctrl"\n  &gt;&lt;/hub-table&gt;\n&lt;/div&gt;\n'},94397:e=&gt;{e.exports='&lt;div class="ring-button-toolbar"&gt;\n  &lt;div rg-button-group split="true"&gt;\n    &lt;rg-button\n      ng-repeat="mode in $ctrl.context.MODES"\n      data-test="{{mode.key}}-mode-button"\n      active="$ctrl.context.ifMode(mode)"\n      ng-click="$ctrl.context.setMode(mode)"\n    &gt;{{mode.label}}&lt;/rg-button&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},64829:(e,t,n)=&gt;{e.exports='&lt;ng-controller ng-controller="HubTableSelectionCtrl as selectionCtrl"&gt;\n&lt;ng-controller ng-controller="GroupsToolbarCtrl as groupsCtrl"&gt;\n&lt;ng-controller ng-controller="GroupListMergeCtrl as mergeCtrl"&gt;\n&lt;ng-controller ng-controller="GroupListDeleteCtrl as deleteCtrl"&gt;\n  &lt;div rg-button-toolbar&gt;\n    &lt;rg-button\n      data-test="create-button"\n      mode="primary"\n      delayed="true"\n      ng-show="hasUpdatableProjects"\n      rg-permission="group-create"\n      rg-promised-click\n      hub-resource-create\n      create-dialog-template="dialogTemplate"\n      create-dialog-button-label="{{ \'Create\' | translate }}"\n      create-dialog-data="dialogData"\n      redirect-url="/groups/:id"\n    &gt;&lt;span translate&gt;New group&lt;/span&gt;&lt;/rg-button&gt;\n\n    &lt;rg-button\n      ng-if="!$ctrl.context.listMode"\n\n      data-test="nest-button"\n      ng-show="excludeSpecialGroups(selectionCtrl.selection.items).length &gt; 0"\n      rg-permission="group-update"\n      loader="setParentInProgress"\n\n      rg-select\n      select-type="dropdown"\n      options="item.name for item in groupsDataSource(selectionCtrl.selection) track by item.id"\n      filter="true"\n      on-select="setParent(selected.originalModel, selectionCtrl.selection.items)"\n    &gt;\n      &lt;span translate&gt;Nest group under&lt;/span&gt;\n      &lt;rg-icon glyph="'+n(96971)+'" size="14"&gt;&lt;/rg-icon&gt;\n    &lt;/rg-button&gt;\n\n    &lt;div rg-button-group\n         ng-if="excludeImmutableGroups(selectionCtrl.selection.items).length &gt; 0"\n         rg-permission="group-update"&gt;\n      &lt;rg-button\n        ng-if="excludeImmutableGroups(selectionCtrl.selection.items).length &gt; 1"\n        title="{{ \'Merge selected groups\' | translate }}"\n        delayed="true"\n        data-test="merge-button"\n\n        rg-promised-click="mergeCtrl.merge(selectionCtrl.selection)"\n      &gt;&lt;span translate&gt;Merge groups&lt;/span&gt;&lt;/rg-button&gt;\n      &lt;rg-button\n        ng-if="excludeImmutableGroups(selectionCtrl.selection.items).length &gt;= 1"\n        rg-permission="(project-read | project-read-basic) &amp; project-update"\n        data-test="merge-into-team"\n        delayed="true"\n\n        rg-promised-click="mergeCtrl.mergeIntoTeam(selectionCtrl.selection)"\n      &gt;&lt;span translate&gt;Merge into team&lt;/span&gt;&lt;/rg-button&gt;\n    &lt;/div&gt;\n\n    &lt;rg-button\n      title="{{ \'Delete selected groups\' | translate }}"\n      danger="true"\n      data-test="delete-button"\n      ng-show="excludeImmutableGroups(selectionCtrl.selection.items).length &gt; 0"\n      rg-permission="group-delete"\n\n      rg-promised-click="deleteCtrl.remove(selectionCtrl.selection)"\n    &gt;\n      &lt;span translate&gt;Delete&lt;/span&gt;\n    &lt;/rg-button&gt;\n\n    &lt;span class="hub-text" ng-show="selectionCtrl.selection.size === 0 &amp;&amp; teamsTotal &gt; 0"&gt;\n      &lt;a class="ring-link"\n         ng-click="$ctrl.context.setMode($ctrl.context.MODES.TEAMS)"\n         translate\n         translate-n="teamsTotal"\n         translate-plural="There are also {{teamsTotal}} teams matching this query"&gt;\n        There is also a team matching this query\n      &lt;/a&gt;\n    &lt;/span&gt;\n  &lt;/div&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n'},28705:e=&gt;{e.exports='&lt;div rg-error-page="group"&gt;\n  &lt;div class="hub-header"&gt;\n    &lt;rg-button\n      ng-show="group.removable"\n      ng-controller="GroupListDeleteCtrl as delCtrl"\n      data-test="delete-button"\n      danger="true"\n      rg-promised-click="delCtrl.one(group)"\n      class="hub-header__control"\n    &gt;\n        &lt;span translate&gt;Delete group&lt;/span&gt;\n    &lt;/rg-button&gt;\n    &lt;rg-breadcrumb label="{{\'Groups\' | translate}}" link="groups" class="breadcrumbs-with-description"&gt;{{ group.name }}\n      &lt;sup ng-if="group.autoJoin" class="breadcrumb__badge breadcrumb__badge_success"&gt;&lt;span translate&gt;auto-join&lt;/span&gt;&lt;/sup&gt;\n    &lt;/rg-breadcrumb&gt;\n    &lt;div class="breadcrumbs-with-description__description"\n          title="{{ group.description }}"&gt;{{ group.description }}&lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;rg-tabs tabs-class="\'container container_tabs\'"&gt;\n    &lt;rg-tabs-pane\n      x-title="{{ \'Members\' | translate }}"\n      tab-index="1"\n      tab-id="members"\n      rg-permission-if="user-read | user-read-basic"\n      counter="{{ membersCount }}"\n      selected="membersSelected"\n    &gt;\n      &lt;rg-template template="membersTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/rg-tabs-pane&gt;\n\n    &lt;rg-tabs-pane\n      x-title="{{ \'Settings\' | translate }}"\n      tab-index="2"\n      tab-id="settings"\n      rg-permission-if="group-read"\n    &gt;\n      &lt;rg-template template="settingsTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/rg-tabs-pane&gt;\n\n    &lt;rg-tabs-pane\n      x-title="{{ \'Roles\' | translate }}"\n      tab-index="3"\n      tab-id="access"\n      rg-permission-if="project-read role-read"\n      selected="roleSelected"\n    &gt;\n      &lt;hub-access-tab\n        group="group"\n        datasource="accessTabDatasource"\n      &gt;&lt;/hub-access-tab&gt;\n\n      &lt;hub-page-help url="Manage-Group-Access.html"&gt;\n        &lt;span translate&gt;Configure access permissions that are granted to the group. Use the search box to filter the access tree by group, project, or permission.&lt;br/&gt;\n        If you need this group to have access to all projects in Hub:\n          &lt;ol class="hub-menu__ordered-list"&gt;\n            &lt;li class="hub-menu__list-item"&gt;Assign the group to the Global project.&lt;/li&gt;\n            &lt;li class="hub-menu__list-item"&gt;Grant the desired role in the Global project.&lt;/li&gt;\n          &lt;/ol&gt;\n        Be careful, every member of the group inherits the access permissions that are granted to the group itself.&lt;/span&gt;\n      &lt;/hub-page-help&gt;\n    &lt;/rg-tabs-pane&gt;\n  &lt;/rg-tabs&gt;\n&lt;/div&gt;\n'},83033:(e,t,n)=&gt;{e.exports='&lt;div&gt;\n  &lt;div ng-if="group.allUsers" class="ring-clearfix"&gt;\n    &lt;div class="search-error"&gt;\n      &lt;div class="search-error__title search-error__title_small"\n            translate&gt;&lt;a class="ring-link" href="users"&gt;All Users&lt;/a&gt; is a special group that contains every user account in the system, including the guest account.&lt;ul&gt;\n        &lt;li&gt;Any user who is added to the system is automatically added as a member of this group.&lt;/li&gt;\n        &lt;li&gt;Each role granted to this group gives universal access to its permissions for every user in the system.&lt;/li&gt;\n      &lt;/ul&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-if="group.registeredUsers" class="ring-clearfix"&gt;\n    &lt;div class="search-error"&gt;\n      &lt;div class="search-error__title search-error__title_small"\n           translate&gt;&lt;a class="ring-link" href="users?query=not guest"&gt;Registered Users&lt;/a&gt; is a special group that contains all user accounts in the system except for the guest account.&lt;ul&gt;\n        &lt;li&gt;Any user who is added to the system is automatically added as a member of this group.&lt;/li&gt;\n        &lt;li&gt;Each role granted to this group effectively grants its permissions to every user in the system except the guest account.&lt;/li&gt;\n      &lt;/ul&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div hub-resource="GroupMemberResource" ng-if="!group.allUsers &amp;&amp; !group.registeredUsers"&gt;\n    &lt;hub-resource-query-data\n      fields="id,login,banned,banBadge,name,userType(id),twoFactorAuthentication/enabled,webauthnDevice/enabled,profile(email,avatar),projectRoles(project(id,name),role(id,key,name)),groups(id,name,iconUrl,parent(id,name,parent(id,name,parent(id,name,parent(id,name,parent(id,name))))))"\n      items-field="users" data="members.data" query="query"\n      order-by="$ctrl.orderByQuery"\n      params="{\'id\': group.id}"\n      extra-query="{{$ctrl.membersExtraFilter}}"\n      on-data-load="installFromNestedGroups(Data)"\n    &gt;&lt;/hub-resource-query-data&gt;\n\n    &lt;hub-table\n      data="members.data"\n      columns="$ctrl.columns"\n      default-sort-key="login"\n      order-by="$ctrl.orderByQuery"\n\n      toolbar-template="membersToolbarTemplate"\n      right-toolbar-template="membersRightToolbarTemplate"\n      sidebar-template="membersSidebarTemplate"\n      empty-template="membersCount &gt; 0 ? \'\' : membersEmptyTemplate"\n      sidebar-empty="{{ \'Select a user to see details\' | translate }}"\n      sidebar-icon="'+n(66985)+'"\n    &gt;&lt;/hub-table&gt;\n  &lt;/div&gt;\n\n  &lt;hub-page-help url="Configure-Group-Members.html"&gt;\n    &lt;span translate&gt;Manage the list of group members: Highlight a user account to view its details. Add new users to the group, remove one or more users from the group.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},56074:e=&gt;{e.exports='&lt;div class="search-error" ng-if="!$ctrl.data.error &amp;&amp; $ctrl.data.total === 0"&gt;\n    &lt;span class="search-error__title ring-clearfix" translate&gt;No Users&lt;/span&gt;\n    &lt;span class="search-error__title search-error__title_small" translate&gt;There are no users in this group.&lt;/span&gt;\n&lt;/div&gt;\n'},67163:e=&gt;{e.exports='&lt;hub-header\n  embedded\n  docked\n  embedded\n  query="query"\n  placeholder="{{ \'Filter members\' | translate }}"\n  hub-resource="UserResource"\n&gt;&lt;/hub-header&gt;\n&lt;hub-user-type-filter&gt;&lt;/hub-user-type-filter&gt;\n'},44250:(e,t,n)=&gt;{e.exports='&lt;ng-controller ng-controller="HubTableSelectionCtrl as selectionCtrl"&gt;\n&lt;ng-controller ng-controller="GroupMembersToolbarCtrl as groupsCtrl"&gt;\n&lt;div rg-button-toolbar&gt;\n  &lt;rg-button\n    mode="primary"\n    rg-permission="group-update"\n    in-project="getProjectId()"\n\n    loader="addGroupLoader"\n\n    rg-select\n    select-type="dropdown"\n    config="selectConfig"\n    with-infinite-scroll="true"\n    options="user.name describe as user.desc for user in users(query, skip) track by user.id"\n    external-filter="true"\n    on-select="addUser(selected.originalModel)"\n    not-found-message="{{ \'No users to add\' | translate }}"\n    data-test="add-user-to-group-button"\n  &gt;\n    &lt;span translate&gt;Add user&lt;/span&gt;\n    &lt;rg-icon glyph="'+n(96971)+'" size="14"&gt;&lt;/rg-icon&gt;\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    rg-permission="group-update"\n    in-project="getProjectId()"\n\n    ng-show="isRemoveEnabled(selectionCtrl.selection)"\n\n    rg-promised-click="removeUser(selectionCtrl.selection.items)"\n    promised-mode="loader"\n  &gt;\n    &lt;span translate&gt;Remove&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n'},34435:e=&gt;{e.exports='&lt;div class="container container_form" hub-resource="GroupResource"&gt;\n  &lt;form-save item="group" draft="groupDraft"&gt;\n    &lt;form-control-edit-text\n      data-label="{{\'Name\' | translate}}"\n      data-model="groupDraft.name"\n      data-disabled="!updatable"&gt;\n    &lt;/form-control-edit-text&gt;\n\n    &lt;form-control-select\n      data-disabled="!updatable"\n      data-label="{{ \'Project\' | translate }}"\n      data-model="groupDraft.project"\n      data-options="describe as item.name for item in projectsDataSource(query) track by item.id"\n    &gt;&lt;/form-control-select&gt;\n\n    &lt;form-control-edit-textarea\n      data-extra-class="ring-input-size_l ring-input-height_l"\n      data-label="{{\'Description\' | translate}}"\n      data-model="groupDraft.description"\n      data-disabled="!updatable"&gt;\n    &lt;/form-control-edit-textarea&gt;\n\n    &lt;form-control-icon\n      data-test="form-control-add-image"\n      x-disabled="!updatable"\n      x-label="{{ \'Logo\' | translate }}"\n      x-model="groupDraft.iconUrl"&gt;\n    &lt;/form-control-icon&gt;\n\n    &lt;form-control-button-toggle\n      ng-show="updatable"\n      data-label="{{\'Auto-join\' | translate}}"\n      data-primary-label="{{ \'Enabled\' | translate }}"\n      data-secondary-label="{{ \'Disabled\' | translate }}"\n      data-model="groupDraft.autoJoin"&gt;\n      &lt;description&gt;\n        &lt;span ng-show="groupDraft.autoJoin" translate&gt;New users are automatically added to this group&lt;/span&gt;\n        &lt;span ng-show="!groupDraft.autoJoin" translate&gt;Users must be added to this group manually&lt;/span&gt;\n      &lt;/description&gt;\n    &lt;/form-control-button-toggle&gt;\n\n    &lt;form-control-edit-textarea\n      ng-show="updatable &amp;&amp; groupDraft.autoJoin"\n      data-extra-class="ring-input-size_l ring-input-height_l"\n      data-label="{{\'Auto-join domains\' | translate}}"\n      data-model="groupDraft.autoJoinDomain"\n      data-placeholder="{{ \'e.g. @mycompany.com\' | translate }}"\n      data-disabled="!updatable"&gt;\n      &lt;description&gt;\n        &lt;span translate&gt;Users with email addresses from the line-separated list of domains are added automatically&lt;/span&gt;\n      &lt;/description&gt;\n    &lt;/form-control-edit-textarea&gt;\n\n    &lt;form-control-button-toggle\n      ng-show="twoFAUpdatable &amp;&amp; !(groupDraft.parentsRequireTwoFactorAuthentication || false)"\n      data-label="{{\'Two-factor authentication\' | translate}}"\n      data-primary-label="{{ \'Required\' | translate }}"\n      data-secondary-label="{{ \'Optional\' | translate }}"\n      data-model="groupDraft.requiredTwoFactorAuthentication"&gt;\n      &lt;description&gt;\n        &lt;span ng-show="groupDraft.requiredTwoFactorAuthentication" translate&gt;Members of this group who have not enabled 2FA have very limited access&lt;/span&gt;\n        &lt;span ng-show="!groupDraft.requiredTwoFactorAuthentication" translate&gt;Members of this group are not required to enable 2FA, but may still choose to do so&lt;/span&gt;\n      &lt;/description&gt;\n    &lt;/form-control-button-toggle&gt;\n\n    &lt;form-control-button-toggle\n      ng-show="(groupDraft.parentsRequireTwoFactorAuthentication || false)"\n      data-label="{{\'Two-factor authentication\' | translate}}"\n      data-primary-label="{{ \'Required\' | translate }}"\n      data-secondary-label="{{ \'Optional\' | translate }}"\n      data-disabled="true"\n      data-model="true"&gt;\n      &lt;description&gt;\n        &lt;span translate&gt;Members of this group who have not enabled 2FA have very limited access&lt;/span&gt;\n      &lt;/description&gt;\n    &lt;/form-control-button-toggle&gt;\n\n\n    &lt;hub-audit-link entity="group"&gt;&lt;/hub-audit-link&gt;\n  &lt;/form-save&gt;\n\n  &lt;hub-page-help url="Edit-Basic-Group-Settings.html"&gt;\n        &lt;span translate&gt;Review and update the general settings of the group: the name, description, icon, the project in Hub to which the group is assigned.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},72831:(e,t,n)=&gt;{e.exports='&lt;div hub-resource="ImportResource" rg-error-page&gt;\n  &lt;hub-resource-query-data\n    fields="id,phase,conflicts"\n    items-field="imports" data="data"&gt;&lt;/hub-resource-query-data&gt;\n\n    &lt;hub-table\n            data="data"\n            columns="$ctrl.columns"\n            order-by="$ctrl.orderByQuery"\n\n            title-format="\'imports-total-title\'"\n            toolbar-template="$ctrl.toolbarTemplate"\n            sidebar-empty="{{ \'To view details, select a keystore\' | translate }}"\n            sidebar-icon="'+n(74883)+'"\n    &gt;&lt;/hub-table&gt;\n&lt;/div&gt;\n'},17305:e=&gt;{e.exports='&lt;div rg-button-toolbar ng-controller="ImportsToolbarCtrl as toolbarCtrl"&gt;\n  &lt;imports-upload-button&gt;&lt;/imports-upload-button&gt;\n\n  &lt;rg-button\n    title="{{ \'Delete selected imports\' | translate }}"\n    danger="true"\n    rg-permission="low-level"\n    ng-show="toolbarCtrl.isAnySelected()"\n\n    rg-promised-click="toolbarCtrl.remove()"\n  &gt;\n    &lt;span translate&gt;Delete&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n'},70268:e=&gt;{e.exports='&lt;span class="import-list__upload-button"&gt;\n  &lt;span class="import-list__upload-button__input-wrapper"&gt;&lt;input ngf-select ngf-change="ctrl.upload($files)" type="file"&gt;&lt;/span&gt;\n  &lt;rg-button\n    mode="primary"\n    delayed="true"\n    loader="ctrl.loading"\n    ng-click="ctrl.open()"\n    rg-permission="low-level"\n    ng-disabled="ctrl.loading"\n  &gt;&lt;span translate&gt;Upload Database&lt;/span&gt;&lt;/rg-button&gt;\n&lt;/span&gt;\n\n'},67735:e=&gt;{e.exports='&lt;div rg-error-page="importPage"&gt;\n  &lt;div class="hub-header"&gt;\n    &lt;rg-breadcrumb&gt;\n      {{ \'Conflict resolutions\' }}\n      &lt;div class="import-page__header-buttons"&gt;\n        &lt;rg-button\n          mode="primary"\n          class="import-page__header-button"\n          ng-show="importPage.phase.name !== \'done\'"\n          ng-disabled="importPage.phase.name !== \'resolve\' || hasLocks()"\n          ng-click="runImportMerge()"\n          loader="importPage.phase.name === \'merge\'"\n        &gt;\n          &lt;span&gt;Confirm data import&lt;/span&gt;\n        &lt;/rg-button&gt;\n\n        &lt;rg-button\n          class="import-page__header-button"\n          ng-show="importPage.adminConsoleUrl"\n          ng-click="goBack()"\n        &gt;\n          &lt;span&gt;Go back to Configurator&lt;/span&gt;\n        &lt;/rg-button&gt;\n      &lt;/div&gt;\n    &lt;/rg-breadcrumb&gt;\n  &lt;/div&gt;\n\n  &lt;rg-tabs class="" tabs-class="\'container container_tabs\'" ng-show="skipSummary &amp;&amp; conflictsNum &amp;&amp; !loading &amp;&amp; importPage.phase.name !== \'done\'"&gt;\n    &lt;div ng-repeat="conflictType in conflictTypes"&gt;\n      &lt;rg-tabs-pane x-title="{{ conflictTypeNames[conflictType] }}" ng-show="conflictsMap[conflictType].length" counter="{{ conflictsMap[conflictType].length }}"&gt;\n        &lt;div ng-show="conflictsMap[conflictType].length"&gt;\n          &lt;div rg-button-toolbar class="ring-table__toolbar-controls"&gt;\n            &lt;rg-button\n              ng-disabled="locks[conflictType]"\n              ng-click="resolveGroup(conflictType, \'merge\')"\n              loader="loaders[conflictType + \'merge\']"\n            &gt;\n              &lt;span&gt;Merge all {{conflictTypeNames[conflictType]|lowercase}}&lt;/span&gt;\n            &lt;/rg-button&gt;\n\n            &lt;rg-button\n              ng-disabled="locks[conflictType]"\n              ng-click="resolveGroup(conflictType, \'create\')"\n              loader="loaders[conflictType + \'create\']"\n            &gt;\n              &lt;span&gt;Keep all conflicting {{conflictTypeNames[conflictType]|lowercase}}&lt;/span&gt;\n            &lt;/rg-button&gt;\n          &lt;/div&gt;\n\n          &lt;table class="import-page__conflict__table"&gt;\n            &lt;thead&gt;\n              &lt;tr class="import-page__conflict__table-row"&gt;\n                &lt;th&gt;&lt;/th&gt;\n                &lt;th&gt;&lt;/th&gt;\n                &lt;th class="import-page__conflict__header-cell"&gt;&lt;span&gt;Save as&lt;/span&gt;&lt;/th&gt;\n                &lt;th class="import-page__conflict__header-cell"&gt;&lt;span&gt;&lt;a class="ring-link" target="_blank" ng-href="{{importPage.localUrl}}"&gt;{{importPage.localUrl}}&lt;/a&gt;&lt;/span&gt;&lt;/th&gt;\n                &lt;th class="import-page__conflict__header-cell"&gt;&lt;span&gt;&lt;a class="ring-link" target="_blank" ng-href="{{importPage.remoteUrl}}"&gt;{{importPage.remoteUrl}}&lt;/a&gt;&lt;/span&gt;&lt;/th&gt;\n                &lt;th&gt;&lt;/th&gt;\n              &lt;/tr&gt;\n            &lt;/thead&gt;\n\n            &lt;tbody class="import-page__conflict" ng-repeat="conflict in conflictsMap[conflictType] track by conflict.id"&gt;\n              &lt;tr ng-repeat="fieldName in conflict.fieldNames" ng-if="fieldName !== \'id\'" class="import-page__conflict__table-row"&gt;\n                &lt;td colspan="2" class="import-page__conflict__table-column import-page__conflict__match__field-name" wide&gt;{{ ::fieldName }}&lt;/td&gt;\n\n                &lt;td class="import-page__conflict__table-column import-page__column"&gt;\n                  &lt;div class="import-page__conflict__match__input-wrapper" ng-if="conflict.matches[fieldName]"&gt;\n                    &lt;input ng-if="editedValues[conflict.id][fieldName].isString"\n                           type="text" class="ring-input"\n                           ng-change="setValue(conflict)"\n                           ng-model="editedValues[conflict.id][fieldName].value"\n                           ng-model-options="{ debounce: 700 }"\n                           ng-class="{\'ring-input_error\': editedValues[conflict.id][fieldName].$invalid}"/&gt;\n\n                    &lt;div class="ring-error-bubble" ng-class="{ active: editedValues[conflict.id][fieldName].$invalid }"&gt;\n                      &lt;span&gt;The value is already in use&lt;/span&gt;\n                    &lt;/div&gt;\n                    &lt;rg-checkbox ng-if="editedValues[conflict.id][fieldName].isBoolean" ng-model="editedValues[conflict.id][fieldName].value"&gt;&lt;/rg-checkbox&gt;\n                  &lt;/div&gt;\n                  &lt;span ng-if="!conflict.matches[fieldName]"&gt;\n                    &lt;span ng-if="editedValues[conflict.id][fieldName].isString"5&gt;{{editedValues[conflict.id][fieldName].value}}&lt;/span&gt;\n                    &lt;rg-checkbox ng-if="editedValues[conflict.id][fieldName].isBoolean" ng-model="editedValues[conflict.id][fieldName].value" ng-change="resaveConflict(conflict)"&gt;&lt;/rg-checkbox&gt;\n                  &lt;/span&gt;\n                &lt;/td&gt;\n\n                &lt;td class="import-page__column import-page__conflict__table-column"&gt;\n                &lt;span ng-class="{\n                        \'import-page__conflict__used-value\': isUsedLocalValue(conflict, fieldName),\n                        \'import-page__conflict__value\': isMerge(conflict)\n                      }"\n                      ng-click="setValue(conflict, fieldName, conflict.local[fieldName], true)"&gt;\n                  {{ ::conflict.local[fieldName] }}\n                &lt;/span&gt;\n                &lt;/td&gt;\n\n                &lt;td class="import-page__column import-page__conflict__table-column"&gt;\n                &lt;span ng-class="{\n                        \'import-page__conflict__used-value\': isUsedRemoteValue(conflict, fieldName),\n                        \'import-page__conflict__value\': isMerge(conflict)\n                      }"\n                      ng-click="setValue(conflict, fieldName, conflict.remote[fieldName], true)"&gt;\n                  {{ ::conflict.remote[fieldName] }}\n                &lt;/span&gt;\n                &lt;/td&gt;\n\n                &lt;td class="import-page__conflict__table-column"&gt;&lt;/td&gt;\n              &lt;/tr&gt;\n\n              &lt;tr class="import-page__conflict__table-row"&gt;\n                &lt;td colspan="2" class="import-page__conflict__table-column"&gt;&lt;/td&gt;\n\n                &lt;td colspan="4" class="import-page__conflict__table-column"&gt;\n                  &lt;div rg-button-group&gt;\n                    &lt;rg-button\n                      active="isMerge(conflict)"\n                      ng-click="merge(conflict)"\n                      ng-disabled="locks[conflictType]"\n                    &gt;\n                      &lt;span&gt;Merge {{::conflictTypeNames[conflictType]|lowercase}}&lt;/span&gt;\n                    &lt;/rg-button&gt;\n\n                    &lt;rg-button\n                      active="isCreate(conflict)"\n                      ng-click="create(conflict, true)"\n                      ng-disabled="locks[conflictType]"\n                    &gt;\n                      &lt;span&gt;Keep both {{::conflictTypeNames[conflictType]|lowercase}}&lt;/span&gt;\n                    &lt;/rg-button&gt;\n                  &lt;/div&gt;\n                &lt;/td&gt;\n              &lt;/tr&gt;\n            &lt;/tbody&gt;\n          &lt;/table&gt;\n        &lt;/div&gt;\n\n        &lt;div ng-show="!conflictsMap[conflictType].length" class="container container_form"&gt;\n          &lt;span&gt;There is no conflicting {{::conflictTypeNames[conflictType]|lowercase }}.&lt;/span&gt;\n        &lt;/div&gt;\n      &lt;/rg-tabs-pane&gt;\n    &lt;/div&gt;\n  &lt;/rg-tabs&gt;\n\n  &lt;div class="container" ng-show="!skipSummary"&gt;\n    &lt;div&gt;You were redirected to the target Hub service.&lt;br/&gt;\n      The following data has been exported from your source Hub and is now ready to be imported to this target service:&lt;/div&gt;\n\n    &lt;ul&gt;\n      &lt;li ng-show="counters[conflictType]" ng-repeat="conflictType in conflictTypes"&gt;\n        {{counters[conflictType]}} {{conflictTypeNames[conflictType]|importPagePlural:counters[conflictType]}}\n        ({{conflictsMap[conflictType].length}} {{\'conflicts\'|importPagePlural:conflictsMap[conflictType].length}})\n      &lt;/li&gt;\n    &lt;/ul&gt;\n\n    &lt;div ng-show="conflictsNum"&gt;\n      &lt;div class="import-page__summary"&gt;To finish the process, please view and resolve the conflicts and confirm importing the data.&lt;/div&gt;\n      &lt;rg-button mode="primary" ng-click="skipSummary = true"&gt;\n        &lt;span&gt;View conflicts&lt;/span&gt;\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="container"&gt;\n    &lt;span ng-show="conflictsNum === 0 &amp;&amp; importPage.phase.name === \'resolve\'"&gt;To finish the process, please confirm importing the data.&lt;/span&gt;\n    &lt;span ng-show="importPage.phase.name === \'done\'"&gt;Import is done!&lt;/span&gt;\n    &lt;span ng-show="loading"&gt;Please wait a little, we are looking for conflicts.&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},11900:(e,t,n)=&gt;{e.exports='&lt;div hub-resource="KeyStoreResource" rg-error-page hub-resource-item-open="keystores/:id"&gt;\n  &lt;hub-resource-query-data\n    fields="id,name,certificate(certificateType,version,issuedBy,issuedTo,serialNumber,validTo,validFrom,algorithm,fingerprint(md5,sha1,sha256))"\n    items-field="keystores" data="data"&gt;&lt;/hub-resource-query-data&gt;\n  &lt;hub-header placeholder="{{ \'Filter SSL keys\' | translate }}"&gt;&lt;/hub-header&gt;\n\n  &lt;hub-table\n    data="data"\n    columns="$ctrl.columns"\n    order-by="$ctrl.orderByQuery"\n\n    title-format="\'stores-total-title\'"\n    toolbar-template="$ctrl.toolbarTemplate"\n    sidebar-template="$ctrl.sidebarTemplate"\n    sidebar-empty="{{ \'To view details, select a keystore\' | translate }}"\n    sidebar-icon="'+n(74883)+'"\n\n    description-id="keystore-list"\n  &gt;\n    &lt;p translate&gt;Upload keystores that contain public and private key pairs and the certificates that they are associated with. Use these keystores to identify YouTrack as a client when it tries to connect to a third party. &lt;hub-help-link url="Managing-SSL-Keys-and-Trusted-Certificates.html"&gt;Learn more â†’&lt;/hub-help-link&gt;&lt;/p&gt;\n  &lt;/hub-table&gt;\n\n  &lt;hub-page-help url="Managing-SSL-Keys-and-Trusted-Certificates.html"&gt;\n    &lt;span translate&gt;A client SSL key identifies Hub as a client when connecting to a third-party server.&lt;br&gt;\n    Use uploaded SSL client keys to configure a secure connection with supported authentication modules.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},7340:e=&gt;{e.exports='&lt;div class="ring-form__group" rg-dialog-title="{{ \'Import Keystore\' | translate }}"&gt;\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input\n        id="create-dialog__name"\n        name="name"\n        required\n        type="text"\n        ng-class="dialog.dialogForm.name | rgInputClass"\n        ng-model="dialog.data.item.name"\n        autocomplete="off"\n        class="ring-input-size_md"\n      &gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div\n    base64-input\n    label="{{\'Keystore\' | translate}}"\n    required\n    name="data"\n    ng-model="dialog.data.item.data.bytes"\n    hide-toggle="true"\n    unsupported-text="{{\'Unfortunately, your browser doesn\\\'t support importing a keystore as a file. Paste the base64-encoded keystore here.\' | translate}}"\n    input-id="create-dialog__data"\n  &gt;&lt;span translate&gt;Password-protected PKCS12 (.p12) keystore with certificate&lt;/span&gt;&lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__password" translate&gt;Keystore password&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      \x3c!-- It is here to prevent password autocomplete --\x3e\n      &lt;input type="password" class="ng-hide"&gt;\n\n      &lt;input\n        id="create-dialog__password"\n        name="password"\n        required\n        type="password"\n        ng-class="dialog.dialogForm.password | rgInputClass"\n        ng-model="dialog.data.item.data.password"\n        autocomplete="off"\n        class="ring-input-size_md"\n       &gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.password"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},23122:e=&gt;{e.exports='&lt;h2 class="ring-sidebar__title"&gt;\n    &lt;span&gt;{{ $ctrl.sidebarElement.name }}&lt;/span&gt;\n&lt;/h2&gt;\n\n&lt;div certificate-info="$ctrl.sidebarElement.certificate"&gt;\n    &lt;div class="ring-sidebar__section"&gt;\n        &lt;span class="ring-sidebar__section-title"&gt;{{ fieldLabel }}&lt;/span&gt;\n\n        &lt;div class="ring-sidebar__section-text"&gt;{{ fieldValue }}&lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n'},93670:e=&gt;{e.exports='&lt;div rg-button-toolbar ng-controller="KeyStoresToolbarCtrl as toolbarCtrl"&gt;\n  &lt;rg-button\n    mode="primary"\n    delayed="true"\n    ng-controller="KeyStoreCreateCtrl as createCtrl"\n    rg-promised-click="createCtrl.showImportDialog()"\n    rg-permission="low-level"\n    data-test="import-key-store-button"\n  &gt;&lt;span translate&gt;Import keystore&lt;/span&gt;&lt;/rg-button&gt;\n\n  &lt;rg-button\n    title="{{ \'Delete selected keystores\' | translate }}"\n    danger="true"\n    rg-permission="low-level"\n    ng-show="toolbarCtrl.isAnySelected()"\n    data-test="delete-keystore-button"\n\n    rg-promised-click="toolbarCtrl.remove()"\n  &gt;\n    &lt;span translate&gt;Delete&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n'},89994:e=&gt;{e.exports='&lt;div rg-error-page="store"&gt;\n  &lt;div class="hub-header"&gt;\n    &lt;div rg-button-toolbar class="hub-header__toolbar"&gt;\n      &lt;rg-button\n        ng-if="canDownload"\n        rg-promised-click="download()"\n        promised-mode="loader"&gt;\n        &lt;span translate&gt;Download certificate&lt;/span&gt;\n      &lt;/rg-button&gt;\n\n      &lt;hub-header-delete\n        inline="true"\n        rg-permission="low-level"\n        label="{{ \'Delete keystore\' | translate}}"\n        item="store"\n        confirm-message="delete-stores?"\n        success-message="stores-success-delete"\n        error-message="store-delete"&gt;\n      &lt;/hub-header-delete&gt;\n    &lt;/div&gt;\n\n    &lt;rg-breadcrumb label="{{\'SSL Keystores\' | translate}}" link="keystores"&gt;{{ store.name }}&lt;/rg-breadcrumb&gt;\n  &lt;/div&gt;\n\n  &lt;div class="container container_legacy" hub-resource="KeyStoreResource"&gt;\n    &lt;form-save item="store" draft="storeDraft"&gt;\n      &lt;form-control-edit-text\n          data-label="{{ \'Name\' | translate }}"\n          data-model="storeDraft.name"\n          data-extra-class="ring-input-size_md"\n          data-required="true"&gt;\n      &lt;/form-control-edit-text&gt;\n\n      &lt;div certificate-info="storeDraft.certificate"&gt;\n        &lt;div class="ring-form__group"&gt;\n          &lt;label class="ring-form__label"&gt;{{ fieldLabel }}&lt;/label&gt;\n\n          &lt;div class="ring-form__control"&gt;\n              &lt;span&gt;{{ fieldValue }}&lt;/span&gt;\n          &lt;/div&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;hub-audit-link entity="store"&gt;&lt;/hub-audit-link&gt;\n    &lt;/form-save&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},38022:e=&gt;{e.exports='&lt;div&gt;\n  &lt;div class="ring-form__group" ng-if="dialog.data.selectService"&gt;\n    &lt;label class="ring-form__label" translate&gt;Service&lt;/label&gt;\n    &lt;div class="ring-form__control"&gt;\n      &lt;rg-select ng-model="dialog.data.item.service"\n                 class="ring-input-size_m"\n                 select-type="button"\n                 external-filter="true"\n                 config="dialog.data.selectConfig"\n                 filter="dialog.data.filterConfig"\n                 label="{{ \'Select service\' | translate }}"\n                 not-found-message="{{ \'No matches found\' | translate }}"\n                 loading-message="{{ \'Loading...\' | translate }}"\n                 options="select as item.name describe as item.homeUrl for item in dialog.data.serviceData(query) track by item.id"\n                 ng-required="dialog.data.selectService"&gt;&lt;/rg-select&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;license\n    ng-if="!dialog.data.selectService &amp;&amp; dialog.data.showDetails"\n    data="dialog.data.licenseSettings"\n  &gt;&lt;/license&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="license-dialog__name"\n           translate&gt;Name&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input id="license-dialog__name" name="licenseName" required\n             ng-class="dialog.dialogForm.licenseName | rgInputClass"\n             class="ring-input-size_m"\n             ng-model="dialog.data.item.licenseName"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.licenseName"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="license-dialog__key"\n           translate&gt;Key&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;textarea id="license-dialog__key" name="licenseKey"\n                class="ring-input ring-input-size_m ring-input-height_l"\n                required\n                ng-class="dialog.dialogForm.licenseKey | rgInputClass"\n                ng-model="dialog.data.item.licenseKey"\n                license-key&gt;&lt;/textarea&gt;\n      &lt;div rg-error-bubble="dialog.dialogForm.licenseKey"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},41684:e=&gt;{e.exports='&lt;div hub-resource="SettingsResource" rg-error-page&gt;\n  &lt;div class="hub-header"&gt;\n    &lt;rg-breadcrumb&gt;{{ \'Licenses\' | translate }}&lt;/rg-breadcrumb&gt;\n  &lt;/div&gt;\n\n  &lt;div class="container"&gt;\n    &lt;div rg-button-toolbar&gt;\n      &lt;div ng-show="!hideAddLicense &amp;&amp; servicesWithoutLicense.length"&gt;\n        &lt;rg-button\n          mode="primary"\n          delayed="true"\n          rg-promised-click="addLicense()"\n          rg-permission="low-level"\n          data-test="add-license-button"\n        &gt;&lt;span translate&gt;Add license&lt;/span&gt;&lt;/rg-button&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="container container_legacy" data-test="license-info" ng-repeat="license in licensePage.settings"&gt;\n    &lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n    &lt;div class="ring-form__title ring-form__title_separated license-list__title"&gt;\n      &lt;a ng-href="services/{{ license.service.key | encodeLink:license.service.id }}" class="ring-link" data-test="service-name"&gt;{{ license.service.name }}&lt;/a&gt;\n    &lt;/div&gt;\n\n    &lt;div class="license-list__subtitle"&gt;\n      &lt;a ng-href="{{ license.service.homeUrl }}" class="ring-link license-list__subtitle__link"&gt;{{ license.service.homeUrl | stripHttp }}&lt;/a&gt;\n    &lt;/div&gt;\n\n    &lt;ring-form class="ring-form license-list"&gt;\n      &lt;div class="ring-form__group license-list__row"&gt;\n        &lt;label class="ring-form__label" translate&gt;Name&lt;/label&gt;\n\n        &lt;div class="ring-form__control" data-test="license-name"&gt;\n          {{ license.licenseName }}\n\n          &lt;rg-button\n            delayed="true"\n            class="license-list__button"\n            rg-promised-click="setLicense($index)"\n            data-test="edit-license-button"\n            ng-show="isLicenseUpdatable(license)"\n          &gt;&lt;span translate&gt;Edit license&lt;/span&gt;&lt;/rg-button&gt;\n\n          &lt;rg-button\n            danger="true"\n            class="license-list__button"\n            rg-promised-click="deleteLicense(license)"\n            ng-show="isLicenseUpdatable(license)"\n          &gt;\n            &lt;span translate&gt;Delete license&lt;/span&gt;\n          &lt;/rg-button&gt;\n\n          &lt;rg-badge ng-show="license.licenseInfo.invalidityReason" disabled="true"&gt;{{ license.licenseInfo.invalidityReason }}&lt;/rg-badge&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;license data="license"&gt;&lt;/license&gt;\n    &lt;/ring-form&gt;\n  &lt;/div&gt;\n\n  &lt;hub-page-help url="Managing-Licenses.html"&gt;\n    &lt;span translate&gt;View licenses of Hub itself and all of the services connected to it.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},78877:e=&gt;{e.exports='&lt;div rg-error-page&gt;\n  &lt;div class="hub-header"&gt;\n    &lt;rg-breadcrumb&gt;{{ \'Metrics\' | translate }}&lt;/rg-breadcrumb&gt;\n    &lt;div rg-button-toolbar class="hub-header__toolbar"&gt;\n      &lt;div rg-button-group&gt;\n        &lt;rg-button\n          rg-promised-click="dumpDiagnostics()"\n          title="{{ \'Add detailed diagnostics data to log files\' | translate }}"\n        &gt;\n          &lt;span translate&gt;Take diagnostics snapshot&lt;/span&gt;\n        &lt;/rg-button&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="container container_legacy"&gt;\n    &lt;ring-form class="ring-form"&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label"\n               translate&gt;Server start time&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          {{:: common.serverStartTime | date:\'medium\' }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label"\n               translate&gt;Available processors&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          {{:: common.availableProcessors }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label"\n               translate&gt;Logs location&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          {{:: common.logsFolder }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-line ring-line_separated hub-resource__update__separator"&gt;&lt;/div&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label ring-form__label_title"\n               translate&gt;Memory&lt;/label&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label"\n               translate&gt;Available&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          {{ metrics.memory.available | size }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label"\n               translate&gt;Allocated&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          {{ metrics.memory.allocated | size }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label"\n               translate&gt;Used&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          {{ metrics.memory.used | size }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label ring-form__label_title"\n               translate&gt;Database&lt;/label&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label"\n               translate&gt;Location&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          {{:: metrics.database.location }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label" translate&gt;Database size&lt;br&gt;(without blobs)&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          {{ metrics.database.dataSize | size }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label"\n               translate&gt;Blobs size&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          {{ metrics.database.blobsSize | size }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label"\n               translate&gt;Entity cache size&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          {{ metrics.database.entityIterableCacheSize }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label"\n               translate&gt;Entity cache hit rate&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          {{ metrics.database.entityIterableCacheHitRate * 100 | number:2 }}%\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label"\n               translate&gt;Total transactions&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          {{ metrics.database.transactionsCount }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label"\n               translate&gt;Transactions per second&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          {{ metrics.database.transactionsPerSecond | number:2 }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label"\n               translate&gt;Background threads&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          {{:: metrics.database.backgroundThreadsCount }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group"&gt;\n        &lt;label class="ring-form__label"\n               translate&gt;Pending asynchronous jobs&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          {{ metrics.database.pendingJobsCount }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n    &lt;/ring-form&gt;\n  &lt;/div&gt;\n\n  &lt;hub-page-help url="Monitoring-Hub-Metrics.html"&gt;\n    &lt;span translate&gt;Get an overview of your JetBrains Hub server metrics.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},37211:e=&gt;{e.exports='&lt;div hub-resource="MigrationResource" rg-error-page&gt;\n  &lt;hub-resource-query-data\n    fields="id,applied"\n    items-field="migrations"\n    data="data"&gt;&lt;/hub-resource-query-data&gt;\n\n  &lt;hub-table\n    data="data"\n    columns="$ctrl.columns"\n    order-by="$ctrl.orderByQuery"\n\n    title-format="\'migrations-total-title\'"\n    toolbar-template="$ctrl.toolbarTemplate"\n  &gt;&lt;/hub-table&gt;\n&lt;/div&gt;\n'},23439:e=&gt;{e.exports='&lt;ng-controller ng-controller="HubTableSelectionCtrl as selectionCtrl"&gt;\n\n&lt;div rg-button-toolbar ng-controller="MigrationsToolbarCtrl as ctrl"&gt;\n  &lt;div rg-button-group&gt;\n    &lt;rg-button\n      title="{{ \'Rerun on application restart\' | translate }}"\n      rg-permission="low-level"\n      ng-if="ctrl.isAppliedVisible(selectionCtrl.selection, false)"\n\n      rg-promised-click="ctrl.setApplied(selectionCtrl.selection.items, false)"\n      promised-mode="loader"\n    &gt;\n      &lt;span translate&gt;Rerun&lt;/span&gt;\n    &lt;/rg-button&gt;\n\n    &lt;rg-button\n      title="{{ \'Don\\\'t rerun on application restart\' | translate }}"\n      rg-permission="low-level"\n      ng-if="ctrl.isAppliedVisible(selectionCtrl.selection, true)"\n\n      rg-promised-click="ctrl.setApplied(selectionCtrl.selection.items, true)"\n      promised-mode="loader"\n    &gt;\n      &lt;span translate&gt;Don\'t rerun&lt;/span&gt;\n    &lt;/rg-button&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},58711:e=&gt;{e.exports='&lt;div class="ring-form__group" rg-dialog-title="{{ \'New Organization\' | translate }}"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;input\n      id="create-dialog__name"\n      name="name"\n      required\n      type="text"\n      pattern="[^&lt;&gt;\\/]+"\n      ng-class="dialog.dialogForm.name | rgInputClass"\n      ng-model="dialog.data.item.name"\n      class="ring-input-size_m"\n    &gt;&lt;/input&gt;\n    &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Description&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;textarea\n      id="create-dialog__description"\n      name="description"\n      ng-class="dialog.dialogForm.description | rgInputClass"\n      ng-model="dialog.data.item.description"\n      class="ring-input-size_m ring-input-height_l"\n    &gt;&lt;/textarea&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group" rg-permission="project-update"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Projects&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;rg-tags-input\n      height="\'S\'"\n      data-test="organization-project-tags-input"\n      tags="dialog.data.selectedProjects"\n      x-data-source="dialog.data.getProjects"\n      on-add-tag="dialog.data.onAddProject"\n      on-remove-tag="dialog.data.onRemoveProject"\n      max-popup-height="250"\n      placeholder="\'Select projects\' | translate"\n      loading-message="\'Loading...\' | translate"\n    &gt;&lt;/rg-tags-input&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},67006:e=&gt;{e.exports='&lt;div class="search-error"&gt;\n  &lt;span class="search-error__title ring-clearfix" translate&gt;No Organizations&lt;/span&gt;\n&lt;/div&gt;\n'},24912:e=&gt;{e.exports='&lt;rg-template template="$ctrl.page"&gt;&lt;/rg-template&gt;\n'},98546:(e,t,n)=&gt;{e.exports='&lt;div hub-resource="OrganizationResource" rg-error-page hub-resource-item-open="organizations/:id"&gt;\n  &lt;hub-resource-query-data\n    fields="id,name,description,iconUrl,projects[3](id,name),projectsCount"\n    items-field="organizations"\n    data="data"\n    order-by="item.name"\n  &gt;&lt;/hub-resource-query-data&gt;\n\n  &lt;hub-header placeholder="{{ \'Filter organizations\' | translate }}"&gt;&lt;/hub-header&gt;\n\n  &lt;hub-table\n    data="data"\n    columns="$ctrl.columns"\n\n    title-format="\'organizations-total-title\'"\n    toolbar-template="$ctrl.toolbarTemplate"\n    sidebar-template="$ctrl.sidebarTemplate"\n    empty-template="$ctrl.emptyTemplate"\n\n    sidebar-empty="{{ \'Select organization to see details\' | translate }}"\n    sidebar-icon="'+n(46968)+'"\n    context="$ctrl"\n\n    description-id="organization-list"\n  &gt;\n    &lt;p translate&gt;Structure information by allocating related projects, groups, and users to distinct organizations. &lt;hub-help-link url="organizations.html"&gt;Learn more â†’&lt;/hub-help-link&gt;&lt;/p&gt;\n  &lt;/hub-table&gt;\n\n  &lt;hub-page-help url="organizations.html"&gt;\n    &lt;span translate&gt;Organizations let you structure information by grouping related projects.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},63472:e=&gt;{e.exports='&lt;img class="ring-sidebar__avatar"\n     ng-if="$ctrl.sidebarElement.iconUrl"\n     ng-src="{{ $ctrl.sidebarElement.iconUrl }}"\n     ng-controller="OrganizationListSidebarCtrl"/&gt;\n\n&lt;h2 class="ring-sidebar__title"&gt;\n    &lt;a class="ring-link" ng-href="organizations/{{$ctrl.sidebarElement.name | encodeLink:$ctrl.sidebarElement.id}}"&gt;{{ $ctrl.sidebarElement.name }}&lt;/a&gt;\n&lt;/h2&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.description"&gt;\n    &lt;div class="ring-sidebar__section-text"&gt;\n        {{ $ctrl.sidebarElement.description }}\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.projects"&gt;\n  &lt;span class="ring-sidebar__section-title"\n        translate-n="$ctrl.sidebarElement.projectsCount"\n        translate-plural="{{ $count }} Projects"\n        translate&gt;{{ $count }} Project&lt;/span&gt;\n\n  &lt;div class="ring-sidebar__section-text"&gt;\n    &lt;span ng-repeat="project in $ctrl.sidebarElement.projects"&gt;\n      &lt;a class="ring-link" ng-href="{{\'projects\' | linkToHub:project.name:project.id }}"&gt;{{ project.name }}&lt;/a&gt;{{$last ? \'\' : \', \'}}\n    &lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},69245:e=&gt;{e.exports='&lt;ng-controller ng-controller="HubTableSelectionCtrl as selectionCtrl"&gt;\n&lt;ng-controller ng-controller="OrganizationsToolbarCtrl as toolbarCtrl"&gt;\n&lt;ng-controller ng-controller="OrganizationListDeleteCtrl as deleteCtrl"&gt;\n  &lt;div rg-button-toolbar&gt;\n    &lt;rg-button\n      data-test="create-button"\n      mode="primary"\n      delayed="true"\n      rg-permission="organization-create"\n      rg-promised-click\n      hub-resource-create\n      create-dialog-template="dialogTemplate"\n      create-dialog-button-label="{{ \'Create\' | translate }}"\n      create-dialog-data="dialogData"\n      redirect-url="/organizations/:id"\n    &gt;&lt;span translate&gt;New organization&lt;/span&gt;&lt;/rg-button&gt;\n\n    &lt;rg-button\n      title="{{ \'Delete selected organizations\' | translate }}"\n      danger="true"\n      data-test="delete-button"\n      ng-show="selectionCtrl.selection.size &gt; 0"\n      rg-permission="organization-delete"\n      rg-promised-click="deleteCtrl.remove(selectionCtrl.selection)"\n    &gt;\n      &lt;span translate&gt;Delete&lt;/span&gt;\n    &lt;/rg-button&gt;\n  &lt;/div&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n'},79501:e=&gt;{e.exports='&lt;div ng-controller="OrganizationAccessCtrl as accessCtrl"&gt;\n\n  &lt;hub-access-tab\n    organization="accessCtrl.organization"\n    datasource="accessCtrl.datasource"\n  &gt;&lt;/hub-access-tab&gt;\n&lt;/div&gt;\n'},71684:e=&gt;{e.exports='&lt;div hub-resource="OrganizationResource" class="ring-form container container_form" ng-controller="OrganizationGeneralCtrl"&gt;\n\n  &lt;form-save item="organization"&gt;\n\n    &lt;form-control-edit-text\n      data-label="{{\'Name\' | translate}}"\n      data-extra-class="ring-input-size_md"\n      data-model="organization.name"\n      data-disabled="!updatable"\n    &gt;&lt;/form-control-edit-text&gt;\n\n    &lt;div class="ring-form__group"&gt;\n      &lt;label class="ring-form__label" translate&gt;Logo&lt;/label&gt;\n      &lt;div class="ring-form__control"&gt;\n        &lt;rg-avatar-editor\n          ng-model="organization.iconUrl"\n          on-select="selectIcon(data)"\n          default="{{getDefaultIconUrl()}}"\n          delete-label="{{\'Reset to default\' | translate}}"\n          show-delete-button="!isDefaultIconUrl(organization.iconUrl)"\n          ng-disabled="!updatable"\n          class="organization-page__settings__avatar-editor"\n        &gt;&lt;/rg-avatar-editor&gt;\n        &lt;div class="ring-form__control__description"&gt;\n          &lt;span translate&gt;Upload a JPG, GIF, or PNG file. The image is resized to 48 x 48 pixels automatically.&lt;/span&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;form-control-edit-textarea\n      data-label="{{\'Description\' | translate}}"\n      data-extra-class="ring-input-size_l ring-input-height_l"\n      data-model="organization.description"\n      data-disabled="!updatable"\n    &gt;&lt;/form-control-edit-textarea&gt;\n\n    &lt;form-control-edit-textarea\n      ng-if="showMembersTab"\n      data-extra-class="ring-input-size_l ring-input-height_l"\n      data-label="{{ \'Email domains\' | translate }}"\n      data-placeholder="{{ \'e.g. @mycompany.com\' | translate }}"\n      data-model="organization.emailDomain"\n      data-disabled="!updatable"&gt;\n      &lt;description&gt;&lt;span translate&gt;Organization membership is restricted to users with email addresses from the line-separated list of domains&lt;/span&gt;&lt;/description&gt;\n    &lt;/form-control-edit-textarea&gt;\n\n    &lt;hub-audit-link entity="[organization]"&gt;&lt;/hub-audit-link&gt;\n  &lt;/form-save&gt;\n\n&lt;/div&gt;\n'},72790:e=&gt;{e.exports='&lt;div class="organization-page" rg-error-page="organization"&gt;\n  &lt;div class="hub-header"&gt;\n    &lt;div rg-button-toolbar class="hub-header__toolbar"&gt;\n      &lt;rg-button\n        ng-controller="OrganizationListDeleteCtrl as deleteCtrl"\n        data-test="delete-button"\n        danger="true"\n        rg-permission="organization-delete"\n        rg-promised-click="deleteCtrl.one(organization)"\n      &gt;\n        &lt;span translate&gt;Delete organization&lt;/span&gt;\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n\n    &lt;rg-breadcrumb label="{{ \'Organizations\' | translate }}" link="organizations"&gt;\n      &lt;span&gt;{{ organization.name }}&lt;/span&gt;\n    &lt;/rg-breadcrumb&gt;\n  &lt;/div&gt;\n\n  &lt;rg-tabs class="organization-page__profile" tabs-class="\'container container_tabs\'"&gt;\n    &lt;rg-tabs-pane\n      x-title="{{ \'Projects\' | translate }}"\n      tab-index="0"\n      tab-id="projects"\n      counter="{{ counts.projectsCount }}"\n      selected="projectsSelected"\n      rg-permission-if="project-read-basic"\n    &gt;\n      &lt;rg-template template="projectsTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/rg-tabs-pane&gt;\n\n    &lt;rg-tabs-pane\n      x-title="{{ \'Settings\' | translate }}"\n      tab-index="1"\n      tab-id="general"\n    &gt;\n      &lt;rg-template template="generalTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/rg-tabs-pane&gt;\n\n    &lt;rg-tabs-pane\n      x-title="{{ \'Members\' | translate }}"\n      tab-index="2"\n      tab-id="members"\n      ng-if="showMembersTab"\n      counter="{{ counts.membersCount }}"&gt;\n      &lt;org-members-tab\n        organization="organization"\n        datasource="datasource"\n        counters="counts"\n      &gt;&lt;/org-members-tab&gt;\n    &lt;/rg-tabs-pane&gt;\n\n    &lt;rg-tabs-pane\n      ng-if="accessTemplate"\n      x-title="{{ \'Access\' | translate }}"\n      tab-index="3"\n      tab-id="access"\n    &gt;\n      &lt;rg-template template="accessTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/rg-tabs-pane&gt;\n  &lt;/rg-tabs&gt;\n&lt;/div&gt;\n'},14565:e=&gt;{e.exports='&lt;div ng-controller="OrganizationProjectsCtrl as projectsCtrl"\n     hub-resource="OrganizationProjectsResource"\n     hub-resource-item-open="projects/:id"&gt;\n\n  &lt;hub-resource-query-data\n    fields="id,key,name,iconUrl,archived,description"\n    items-field="projects"\n    data="data"\n    order-by="item.name"\n    params="{\'id\': organization.id}"\n  &gt;&lt;/hub-resource-query-data&gt;\n\n  &lt;hub-table\n    data="data"\n    columns="projectsCtrl.columns"\n    toolbar-template="projectsCtrl.projectsToolbarTemplate"\n    empty-template="projectsCtrl.projectsEmptyTemplate"\n    context="projectsCtrl"\n  &gt;&lt;/hub-table&gt;\n&lt;/div&gt;\n'},90604:e=&gt;{e.exports='&lt;div class="container" translate&gt;\n  Group related projects by adding them to an umbrella organization\n&lt;/div&gt;\n'},71545:(e,t,n)=&gt;{e.exports='&lt;div ng-controller="HubTableSelectionCtrl as selectionCtrl"&gt;\n&lt;div ng-controller="OrganizationProjectsToolbarCtrl as toolbarCtrl"&gt;\n&lt;div rg-button-toolbar&gt;\n  &lt;rg-button\n    mode="primary"\n    rg-select=""\n    loader="toolbarCtrl.applyingChanges"\n    select-type="dropdown"\n    rg-permission="project-update &amp; organization-update"\n    external-filter="true"\n    with-infinite-scroll="true"\n    on-select="toolbarCtrl.onAddProject(selected)"\n    popup-class="organization-page__projects-select-popup"\n    options="item for item in toolbarCtrl.loadProjects(query, skip) track by item.id"\n  &gt;\n    &lt;span translate&gt;Move project here...&lt;/span&gt;\n    &lt;rg-icon glyph="'+n(96971)+'" size="14"&gt;&lt;/rg-icon&gt;\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    title="{{ \'Remove the selected projects from this organization\' | translate }}"\n    loader="toolbarCtrl.applyingChanges"\n    data-test="detach-project-button"\n    ng-show="selectionCtrl.selection.size &gt; 0"\n    rg-permission="project-update &amp; organization-update"\n    rg-promised-click="toolbarCtrl.onDetachProjects(selectionCtrl.selection)"\n  &gt;\n    &lt;span translate translate-n="selectionCtrl.selection.size" translate-plural="Remove {{ $count }} projects"&gt;Remove project&lt;/span&gt;\n  &lt;/rg-button&gt;\n\n&lt;/div&gt;\n&lt;/div&gt;\n&lt;/div&gt;\n'},62889:e=&gt;{e.exports='&lt;div class="ring-form__group" rg-dialog-title="{{ \'New Custom Attribute\' | translate }}"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;input id="create-dialog__name" name="name" required type="text" pattern="[^&lt;&gt;\\/]+"\n           ng-class="dialog.dialogForm.name | rgInputClass" ng-model="dialog.data.item.name"\n           class="ring-input-size_md"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label" translate&gt;Type&lt;/label&gt;\n  &lt;div class="ring-form__control"&gt;\n    &lt;rg-select ng-model="dialog.data.item.type"\n               class="ring-input-size_md"\n               select-type="button"\n               label="{{ \'Select type\' | translate }}"\n               options="item for item in dialog.data.types track by item"\n               required&gt;&lt;/rg-select&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;rg-checkbox ng-model="dialog.data.item.showOnUserList" ng-if="dialog.data.item.type !== \'Password\'"&gt;\n    &lt;span translate&gt;Show column in list view&lt;/span&gt;\n  &lt;/rg-checkbox&gt;\n&lt;/div&gt;\n'},95110:e=&gt;{e.exports='&lt;div hub-resource="ProfileAttributeResource" rg-error-page&gt;\n  &lt;hub-resource-query-data\n    fields="id,name,type,showOnUserList"\n    items-field="profileattributeprototypes"\n    data="data"\n    order-by="$ctrl.orderByQuery"\n  &gt;&lt;/hub-resource-query-data&gt;\n\n  &lt;hub-table\n    data="data"\n    columns="$ctrl.columns"\n    default-sort-key="name"\n    order-by="$ctrl.orderByQuery"\n\n    title-format="\'custom-attributes-total-title\'"\n    toolbar-template="$ctrl.toolbarTemplate"\n    sidebar-template="$ctrl.sidebarTemplate"\n    sidebar-empty="{{ \'To view details, select an attribute from the list\' | translate }}"\n    context="$ctrl"\n  &gt;&lt;/hub-table&gt;\n  \x3c!--  &lt;hub-page-help url=""&gt;--\x3e\n  \x3c!--    &lt;span translate&gt;&lt;/span&gt;--\x3e\n  \x3c!--  &lt;/hub-page-help&gt;--\x3e\n&lt;/div&gt;\n'},6721:e=&gt;{e.exports='&lt;div&gt;\n  &lt;h2 class="ring-sidebar__title"&gt;\n    &lt;a class="ring-link"&gt;{{ $ctrl.sidebarElement.name }}&lt;/a&gt;\n  &lt;/h2&gt;\n\n  &lt;div class="ring-sidebar__section"&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;Name&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;{{ $ctrl.sidebarElement.name }}&lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-sidebar__section"&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;Type&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;{{ $ctrl.sidebarElement.type }}&lt;/div&gt;\n  &lt;/div&gt;\n\n&lt;/div&gt;\n'},10805:e=&gt;{e.exports='&lt;ng-controller ng-controller="HubTableSelectionCtrl as selectionCtrl"&gt;\n&lt;ng-controller ng-controller="ProfileAttributesDeleteCtrl as deleteCtrl"&gt;\n&lt;ng-controller ng-controller="ProfileAttributesToolbarCtrl as toolbarCtrl"&gt;\n&lt;div rg-button-toolbar&gt;\n  &lt;rg-button\n    data-test="create"\n    mode="primary"\n    hub-resource-create\n    on-resource-creation="toolbarCtrl.refreshList()"\n    rg-permission="low-level-read"\n    create-dialog-template="toolbarCtrl.dialogTemplate"\n    create-dialog-button-label="{{ \'Create\' | translate }}"\n    create-dialog-data="toolbarCtrl.dialogData"&gt;\n    &lt;span translate&gt;New attribute&lt;/span&gt;\n  &lt;/rg-button&gt;\n  &lt;rg-button\n    title="{{ \'Delete selected custom attributes\' | translate }}"\n    danger="true"\n    data-test="profile-attribute-delete-button"\n    ng-show="selectionCtrl.selection.items.length &gt; 0"\n    rg-permission="low-level"\n\n    rg-promised-click="deleteCtrl.remove(selectionCtrl.selection.items)"\n  &gt;\n    &lt;span translate&gt;Delete&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n'},12233:e=&gt;{e.exports='&lt;div rg-error-page="profileAttribute" hub-resource="ProfileAttributeResource"&gt;\n  &lt;div class="hub-header" ng-controller="ProfileAttributesDeleteCtrl as delCtrl"&gt;\n    &lt;rg-button\n      data-test="delete-button"\n      danger="true"\n      rg-promised-click="delCtrl.one(profileAttribute)"\n      class="hub-header__control"\n    &gt;\n      &lt;span translate&gt;Delete custom attribute&lt;/span&gt;\n    &lt;/rg-button&gt;\n    &lt;rg-breadcrumb label="{{\'Custom Attributes\' | translate}}" link="user-profile-attributes"\n                   class="breadcrumbs-with-description"&gt;{{ profileAttribute.name }}\n    &lt;/rg-breadcrumb&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form container container_form"&gt;\n    &lt;form-save\n      item="profileAttribute"\n    &gt;\n\n      &lt;form-control-edit-text\n        data-test="profile-attribute-name"\n        data-label="{{\'Name\' | translate}}"\n        model="profileAttribute.name"\n      &gt;&lt;/form-control-edit-text&gt;\n\n      &lt;form-control-edit-text\n        data-test="profile-attribute-type"\n        data-label="{{\'Type\' | translate}}"\n        data-disabled="true"\n        model="profileAttribute.type"\n      &gt;&lt;/form-control-edit-text&gt;\n      &lt;div class="ring-form__group"&gt;\n        &lt;rg-checkbox ng-model="profileAttribute.showOnUserList"\n                     ng-show="profileAttribute.type !== \'Password\'"\n                     data-test="profile-attribute-show-on-list"&gt;\n          &lt;span translate&gt;Show column in list view&lt;/span&gt;\n        &lt;/rg-checkbox&gt;\n      &lt;/div&gt;\n    &lt;/form-save&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},67289:e=&gt;{e.exports='&lt;div class="ring-form__group" translate&gt;All of the resources that are used by this project are moved to\n  the successor project. If you want to permanently remove these resources from Hub, delete\n  the resource directly in the connected service.&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label" for="successor" translate&gt;Successor project&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;rg-select name="successor"\n               class="ring-input-size_md"\n               ng-model="dialog.data.successor"\n               select-type="button"\n               external-filter="true"\n               not-found-message="{{ \'No projects found\' | translate }}"\n               loading-message="{{ \'Loading...\' | translate }}"\n               on-change="dialog.data.resources = []"\n               options="describe as item.name for item in dialog.data.projectData(query) track by item.id"&gt;\n    &lt;/rg-select&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.successor"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},33230:e=&gt;{e.exports='&lt;div rg-error-page="$ctrl.project"&gt;\n  &lt;div class="hub-header"&gt;\n    &lt;rg-breadcrumb label="{{ \'Projects\' | translate }}" link="projects"&gt;\n      &lt;rg-breadcrumb label="{{ $ctrl.project.name }}" link="projects/{{ $ctrl.project.name | encodeLink:$ctrl.project.id }}"&gt;\n        &lt;span translate&gt;Edit Project&lt;/span&gt;\n        &lt;sup class="breadcrumb__badge breadcrumb__badge_error" ng-show="$ctrl.project.archived" translate&gt;archived&lt;/sup&gt;\n      &lt;/rg-breadcrumb&gt;\n    &lt;/rg-breadcrumb&gt;\n\n    &lt;div class="hub-header__toolbar"&gt;\n      &lt;rg-button-set ng-if="!$ctrl.project.global"&gt;\n        &lt;rg-button\n          ng-controller="ProjectToolbarCtrl as toolbarCtrl"\n          data-test="archive-button"\n          ng-disabled="!$ctrl.updatable"\n\n          rg-promised-click="toolbarCtrl.archive([$ctrl.project], !$ctrl.project.archived)"\n          rg-permission="project-update"\n          in-project="$ctrl.project.id"\n          promised-mode="loader"\n        &gt;\n          &lt;span ng-show="!$ctrl.project.archived" translate&gt;Archive project&lt;/span&gt;\n          &lt;span ng-show="$ctrl.project.archived" translate&gt;Restore project&lt;/span&gt;\n        &lt;/rg-button&gt;\n        &lt;rg-button\n          data-test="delete-button"\n          danger="true"\n          rg-promised-click="$ctrl.delete()"\n          rg-permission="project-delete"\n          in-project="$ctrl.project.id"\n        &gt;&lt;span translate&gt;Delete project&lt;/span&gt;&lt;/rg-button&gt;\n      &lt;/rg-button-set&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;rg-tabs tabs-class="\'container container_tabs\'"&gt;\n    &lt;rg-tabs-pane\n      tab-id="settings"\n      tab-index="1"\n      x-title="{{ \'Settings\' | translate }}"\n    &gt;\n      &lt;rg-template template="$ctrl.settingsTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/rg-tabs-pane&gt;\n\n    &lt;rg-tabs-pane\n      tab-id="resources"\n      tab-index="2"\n      x-title="{{ \'Resources\' | translate }}"\n      counter="{{ $ctrl.counters.totalResources }}"\n    &gt;\n      &lt;rg-template template="$ctrl.resourcesTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/rg-tabs-pane&gt;\n\n    &lt;rg-tabs-pane\n      tab-id="team"\n      tab-index="3"\n      x-title="{{ \'Team\' | translate }}"\n      counter="{{ $ctrl.counters.teamCounters.teamMembers }}"\n      ng-if="$ctrl.isTeamTabAvailable"\n    &gt;\n      &lt;project-team-tab\n        project="$ctrl.project"\n        datasource="$ctrl.datasource"\n        counters="$ctrl.counters.teamCounters"\n      &gt;&lt;/project-team-tab&gt;\n    &lt;/rg-tabs-pane &gt;\n\n    &lt;rg-tabs-pane\n      tab-id="access"\n      tab-index="4"\n      x-title="{{ \'Access\' | translate }}"\n      ng-if="$ctrl.isAccessTabAvailable"\n      selected="accessSelected"\n    &gt;\n      &lt;hub-access-tab\n        project="$ctrl.project"\n        datasource="$ctrl.datasource"\n      &gt;&lt;/hub-access-tab&gt;\n    &lt;/rg-tabs-pane&gt;\n  &lt;/rg-tabs&gt;\n\n  &lt;hub-page-help url="Configuring-Project-Settings.html"&gt;\n      &lt;span translate&gt;\n        A project in Hub represents your actual development project.\n        A project in Hub can incorporate resources from all of the services that connected to Hub that you might use in\n        your daily routine, for example, a project in issue tracker, a build server project, a VCS repository, or a user group.\n        &lt;ul class="hub-menu__list"&gt;\n          &lt;li class="hub-menu__list-item"&gt;View and edit basic project settings.&lt;/li&gt;\n          &lt;li class="hub-menu__list-item"&gt;Review a history of changes that were applied to the project.&lt;/li&gt;\n          &lt;li class="hub-menu__list-item"&gt;Add and remove resources from connected services.&lt;/li&gt;\n          &lt;li class="hub-menu__list-item"&gt;Review current access status and grant access to users and groups in this project.\n          &lt;/li&gt;\n        &lt;/ul&gt;&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},56862:e=&gt;{e.exports='&lt;div ng-controller="ProjectResourcesCtrl as $ctrl" hub-resource="ProjectResourceResource"&gt;\n  &lt;hub-resource-query-data\n    fields="id,key,name,type,service(id,key,name,applicationName),homeUrl"\n    items-field="resources"\n    data="$ctrl.resources.data"\n    query="query"\n    params="{\'id\': $ctrl.projectId}"\n    order-by="$ctrl.orderByQuery"\n  &gt;&lt;/hub-resource-query-data&gt;\n\n  &lt;hub-table\n    data="$ctrl.resources.data"\n    columns="$ctrl.columns"\n    default-sort-key="name"\n    order-by="$ctrl.orderByQuery"\n\n    sidebar-template="$ctrl.resourcesSidebarTemplate"\n    empty-template="$ctrl.resourcesEmptyTemplate"\n    sidebar-empty="{{ \'Select a resource to see details\' | translate }}"\n  &gt;&lt;/hub-table&gt;\n&lt;/div&gt;\n'},24253:e=&gt;{e.exports='&lt;div class="search-error" ng-if="!$ctrl.data.error &amp;&amp; $ctrl.data.total === 0"&gt;\n  &lt;span class="search-error__title" translate&gt;No Resources&lt;/span&gt;\n  &lt;span class="search-error__title search-error__title_small" translate\n          &gt;There are no resources in this project. It may also mean that you have insufficient access permissions.&lt;/span&gt;\n&lt;/div&gt;\n'},18687:e=&gt;{e.exports='&lt;div class="container container_form" hub-resource="ProjectResource"&gt;\n  &lt;form-save item="$ctrl.project" before-save="$ctrl.clearOrganizationIfNeeded(old, new)"&gt;\n    &lt;form-control-edit-text\n      data-label="{{ \'Key\' | translate }}"\n      data-model="$ctrl.project.key"\n      data-extra-class="ring-input-size_m"\n      data-disabled="!$ctrl.updatable"\n      data-required="true"&gt;\n    &lt;/form-control-edit-text&gt;\n\n    &lt;form-control-edit-text\n      data-label="{{ \'Name\' | translate }}"\n      data-model="$ctrl.project.name"\n      data-extra-class="ring-input-size_m"\n      data-disabled="!$ctrl.updatable"\n      data-required="true"&gt;\n    &lt;/form-control-edit-text&gt;\n\n    &lt;form-control-select\n      ng-if="!$ctrl.areOrganizationsHidden &amp;&amp; !$ctrl.project.global"\n      data-config="$ctrl.organizationsSelectConfig"\n      x-disabled="!$ctrl.updatable"\n      x-label="{{ \'Organization\' | translate }}"\n      x-required="false"\n      x-model="$ctrl.project.organization"\n      x-options="item.name for item in $ctrl.organizationsDataSource(query) track by item.id"\n      x-options-scope="$ctrl"&gt;\n      &lt;description&gt;&lt;span translate&gt;Groups this project with other projects under the same umbrella organization&lt;/span&gt;&lt;/description&gt;\n    &lt;/form-control-select&gt;\n\n    &lt;div class="ring-form__group"&gt;\n      &lt;label class="ring-form__label"&gt;{{ \'Logo\' | translate }}&lt;/label&gt;\n      &lt;div class="ring-form__control"&gt;\n        &lt;rg-avatar-editor\n          class="user-page__settings__avatar-editor"\n          ng-model="$ctrl.project.iconUrl"\n          on-select="$ctrl.onSelectAvatar(data)"\n          default="{{$ctrl.getDefaultProjectLogoURL()}}"\n          ng-disabled="!$ctrl.updatable"\n          delete-label="{{\'Reset to default\' | translate}}"\n          show-delete-button="!$ctrl.project.defaultIcon"\n        &gt;&lt;/rg-avatar-editor&gt;\n        &lt;div class="ring-form__control__description"&gt;\n          &lt;span translate&gt;Upload a JPG, GIF, or PNG file. The image is resized to 48 x 48 pixels automatically.&lt;/span&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;form-control-select\n      x-disabled="!$ctrl.updatable"\n      x-label="{{ \'Project owner\' | translate }}"\n      x-required="false"\n      x-model="$ctrl.project.owner"\n      x-options="item.name for item in $ctrl.getUsers(query) track by item.id"\n      x-options-scope="$ctrl"&gt;\n      &lt;description&gt;&lt;span translate&gt;User gets the Project Admin role&lt;/span&gt;&lt;/description&gt;\n    &lt;/form-control-select&gt;\n\n    &lt;form-control-text data-label="{{ \'Description\' | translate }}"&gt;\n      &lt;div class="eua__manage project-page__description-wrapper"&gt;\n        &lt;textarea\n          class="ring-input eua__manage__editor ring-js-shortcuts"\n          ng-model="$ctrl.project.description"\n          ng-attr-placeholder="{{\'You can use markdown\' | translate}}"\n          ng-disabled="!$ctrl.updatable"\n        &gt;&lt;/textarea&gt;\n        &lt;markdown-preview\n          class="eua__manage__preview"\n          text="$ctrl.project.description"\n        &gt;&lt;/markdown-preview&gt;\n      &lt;/div&gt;\n      &lt;markdown-reference&gt;&lt;/markdown-reference&gt;\n    &lt;/form-control-text&gt;\n\n    &lt;hub-audit-link entity="[$ctrl.project, $ctrl.project.team]"&gt;&lt;/hub-audit-link&gt;\n  &lt;/form-save&gt;\n&lt;/div&gt;\n'},68374:e=&gt;{e.exports='&lt;div class="ring-form__group" rg-dialog-title="{{ \'New Role\' | translate }}"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;input id="create-dialog__name" name="name" required type="text"\n           ng-class="dialog.dialogForm.name | rgInputClass" ng-model="dialog.data.item.name"\n           class="ring-input-size_md"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},1703:e=&gt;{e.exports='&lt;div rg-dialog-title="{{ \'Clone Role\' | translate }}"&gt;\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" translate&gt;Key&lt;/label&gt;\n\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n      &lt;input class="ring-input ring-input-size_md"\n             type="text"\n             name="roleKey"\n             required\n             ng-model="data.key"&gt;\n      &lt;div rg-error-bubble="dialog.dialogForm.roleKey"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" translate&gt;Name&lt;/label&gt;\n\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n      &lt;input class="ring-input ring-input-size_md"\n             type="text"\n             name="roleName"\n             required\n             ng-model="data.name"&gt;\n      &lt;div rg-error-bubble="dialog.dialogForm.roleName"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},3232:e=&gt;{e.exports='&lt;div class="container" hub-resource="RoleResource"&gt;\n  &lt;form-save item="role" draft="roleDraft"&gt;\n    &lt;form-control-edit-text\n      data-label="{{ \'Key\' | translate }}"\n      data-model="roleDraft.key"\n      data-disabled="!canUpdateRole || roleDraft.isProtectedRole"\n      data-extra-class="ring-input-size_m"\n      data-required="true"\n    &gt;&lt;/form-control-edit-text&gt;\n\n    &lt;form-control-edit-text\n      data-label="{{ \'Name\' | translate }}"\n      data-model="roleDraft.name"\n      data-extra-class="ring-input-size_m"\n      data-disabled="!canUpdateRole"\n      data-required="true"\n    &gt;&lt;/form-control-edit-text&gt;\n\n    &lt;form-control-edit-textarea\n      data-extra-class="ring-input-size_l ring-input-height_l"\n      data-label="{{ \'Description\' | translate }}"\n      data-model="roleDraft.description"\n      data-disabled="!canUpdateRole"\n    &gt;&lt;/form-control-edit-textarea&gt;\n\n    &lt;hub-audit-link entity="role"&gt;&lt;/hub-audit-link&gt;\n  &lt;/form-save&gt;\n&lt;/div&gt;\n'},35931:(e,t,n)=&gt;{e.exports='&lt;div role-permission class="role-page__permissions"&gt;\n  &lt;div style="margin: 16px 32px 0 32px;" ng-if="!isEmbeddedHub &amp;&amp; ctrl.view.apps &amp;&amp; ctrl.view.apps.length"&gt;\n    &lt;div rg-button-toolbar&gt;\n      &lt;span rg-button-group-caption translate&gt;Application&lt;/span&gt;\n\n      &lt;span ng-if="ctrl.view.apps.length === 1" rg-button-group-caption&gt;{{ctrl.view.apps[0]}}&lt;/span&gt;\n\n      &lt;span ng-if="ctrl.view.apps.length &gt; 1"&gt;\n        &lt;div rg-button-group&gt;\n          &lt;rg-button\n            ng-repeat="app in ctrl.view.apps"\n            active="ctrl.view.app === app"\n            ng-click="ctrl.selectApplication(app)"\n          &gt;\n            &lt;span&gt;{{app}}&lt;/span&gt;\n          &lt;/rg-button&gt;\n        &lt;/div&gt;\n      &lt;/span&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;hub-table\n    data="ctrl.view"\n    columns="ctrl.columns"\n    selectable="false"\n    no-pager="true"\n    force-loading="ctrl.showLoader"\n\n    toolbar-template="role.immutable ? undefined : toolbarTemplate"\n    right-toolbar-template="rightToolbarTemplate"\n    sidebar-template="sidebarTemplate"\n    sidebar-icon="'+n(34301)+'"\n    sidebar-empty="{{ \'Select a permission to see details\' | translate }}"\n  &gt;&lt;/hub-table&gt;\n&lt;/div&gt;\n'},60374:(e,t,n)=&gt;{e.exports='&lt;div class="search-error"&gt;\n  &lt;rg-icon height="78" width="100" glyph="'+n(1081)+'" class="search-error__img"&gt;&lt;/rg-icon&gt;\n  &lt;span class="search-error__title" translate&gt;No matches for your search request were found&lt;/span&gt;\n&lt;/div&gt;\n'},68021:e=&gt;{e.exports='&lt;div translate&gt;\n  This action restores the default set of permissions to the {{dialog.data.roleName}} role. As a result, users and\n  groups who are currently assigned this role may gain or lose access rights.\n&lt;/div&gt;\n&lt;div class="role-page__reset-dialog__checkbox-block" ng-if="dialog.data.services.length &gt; 1 &amp;&amp; !dialog.data.embedded"&gt;\n  &lt;rg-checkbox\n    ng-repeat="service in dialog.data.services track by service.id"\n    ng-model="service.checked"\n  &gt;\n    &lt;div class="role-page__reset-dialog__service-name"&gt;{{service.name}}&lt;/div&gt;\n    &lt;div class="role-page__reset-dialog__service-url"&gt;{{service.homeUrl}}&lt;/div&gt;\n  &lt;/rg-checkbox&gt;\n&lt;/div&gt;\n'},71260:(e,t,n)=&gt;{e.exports='&lt;h2 class="ring-sidebar__title"&gt;{{ $ctrl.sidebarElement.name }}&lt;/h2&gt;\n\n&lt;div class="ring-sidebar__section"&gt;\n  &lt;rg-icon size="14" glyph="'+n(8429)+'" ng-if="$ctrl.sidebarElement.global"\n           class="ring-sidebar__section-icon"&gt;&lt;/rg-icon&gt;\n  &lt;span class="ring-sidebar__section-title" ng-show="$ctrl.sidebarElement.global" translate&gt;Global permission&lt;/span&gt;\n  &lt;span class="ring-sidebar__section-title"\n        ng-show="$ctrl.sidebarElement.leaf &amp;&amp; !$ctrl.sidebarElement.global" translate&gt;Per-project permission&lt;/span&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.description"&gt;\n  &lt;div class="ring-sidebar__section-text"&gt;{{ $ctrl.sidebarElement.description }}&lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.leaf"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;ID&lt;/span&gt;\n  &lt;div class="ring-sidebar__section-text ring-sidebar__section-text_multiline"&gt;\n    &lt;div ng-repeat="id in $ctrl.sidebarElement.ids"&gt;{{ id }} &lt;sup\n      ng-show="$ctrl.sidebarElement.ids.length &gt; 1" class="role-page__permissions__id-source"&gt;{{\n      $ctrl.sidebarElement.idsSource[$index] }}&lt;/sup&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.leaf"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;Key&lt;/span&gt;\n  &lt;div class="ring-sidebar__section-text ring-sidebar__section-text_multiline"&gt;\n    &lt;div ng-repeat="key in $ctrl.sidebarElement.keys"&gt;{{ key }}&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.leaf &amp;&amp; $ctrl.sidebarElement.entityType"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;Entity&lt;/span&gt;\n  &lt;div class="ring-sidebar__section-text"&gt;{{ $ctrl.sidebarElement.entityType }}&lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.leaf &amp;&amp; $ctrl.sidebarElement.operation"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;Operation&lt;/span&gt;\n  &lt;div class="ring-sidebar__section-text"&gt;{{ $ctrl.sidebarElement.operation }}&lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.impliedPermissions.length"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;Implied permissions&lt;/span&gt;\n  &lt;div class="ring-sidebar__section-text" ng-repeat="permission in $ctrl.sidebarElement.impliedPermissions"&gt;\n    {{permission.name}}\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.dependentPermissions.length"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;Dependent permissions&lt;/span&gt;\n  &lt;div class="ring-sidebar__section-text" ng-repeat="permission in $ctrl.sidebarElement.dependentPermissions"&gt;\n    {{permission.name}}\n  &lt;/div&gt;\n&lt;/div&gt;\n'},38287:e=&gt;{e.exports='&lt;div rg-button-toolbar&gt;\n  &lt;rg-button\n    ng-controller="RolePermissionResetCtrl as ctrl"\n    rg-promised-click="ctrl.resetToDefault()"\n    delayed="true"\n    rg-permission="role-manage"\n  &gt;&lt;span translate&gt;Restore default permissions&lt;/span&gt;&lt;/rg-button&gt;\n&lt;/div&gt;\n'},41584:e=&gt;{e.exports='&lt;div rg-button-toolbar ng-controller="RolePermissionToolbarCtrl as ctrl"&gt;\n  &lt;input type="text" ng-model="ctrl.view.filter" class="ring-input role-page__filter" placeholder="{{\'Filter permissions\' | translate}}"&gt;\n\n  &lt;div class="hub-header__controls__right-toolbar"&gt;\n    &lt;span class="hub-header__toolbar-text" translate&gt;Grouped by&lt;/span&gt;\n\n    &lt;div rg-button-group&gt;\n      &lt;rg-button\n        ng-repeat="group in ctrl.view.groups"\n        active="ctrl.view.group === group"\n        ng-click="ctrl.view.group = group"\n      &gt;\n        &lt;span&gt;{{group.name}}&lt;/span&gt;\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},55539:e=&gt;{e.exports='&lt;div rg-error-page="role" ng-controller="RoleCtrl as RoleCtrl"&gt;\n  &lt;div class="hub-header"&gt;\n    &lt;rg-breadcrumb label="{{ \'Roles\' | translate }}" link="roles" class="breadcrumbs-with-description"&gt;\n      {{ role.name }}\n      &lt;sup ng-if="role.immutable"&gt;&lt;span translate&gt;read-only&lt;/span&gt;&lt;/sup&gt;\n    &lt;/rg-breadcrumb&gt;\n    &lt;div class="breadcrumbs-with-description__description" title="{{ role.description }}"&gt;{{ role.description }}&lt;/div&gt;\n    &lt;div class="ring-button-toolbar hub-header__toolbar"&gt;\n      &lt;hub-header-delete\n        rg-permission="role-manage"\n        ng-if="!role.immutable"\n        label="{{ \'Delete role\' | translate}}"\n        item="role"\n        confirm-message="delete-roles?"\n        success-message="roles-success-delete"\n        error-message="roles-delete"&gt;\n      &lt;/hub-header-delete&gt;\n      &lt;rg-button\n        rg-permission="role-manage"\n        data-test="clone-button"\n        delayed="true"\n        rg-promised-click="RoleCtrl.clone()"\n      &gt;&lt;span translate&gt;Clone role&lt;/span&gt;&lt;/rg-button&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;rg-tabs tabs-class="\'container container_tabs\'"&gt;\n      &lt;rg-tabs-pane\n        x-title="{{ \'Settings\' | translate }}"\n        tab-id="general"\n      &gt;\n        &lt;rg-template template="generalTemplate"&gt;&lt;/rg-template&gt;\n      &lt;/rg-tabs-pane&gt;\n\n      &lt;rg-tabs-pane\n        x-title="{{ \'Permissions\' | translate }}"\n        tab-id="permissions"\n      &gt;\n        &lt;rg-template template="permissionsTemplate"&gt;&lt;/rg-template&gt;\n      &lt;/rg-tabs-pane&gt;\n  &lt;/rg-tabs&gt;\n\n  &lt;hub-page-help url="Configuring-Role-Settings.html"&gt;\n    &lt;span translate&gt;Manage the set of permissions that are added to the selected role:\n      &lt;ul class="hub-menu__list"&gt;\n        &lt;li class="hub-menu__list-item"&gt;A role can contain permissions from multiple services.&lt;/li&gt;\n        &lt;li class="hub-menu__list-item"&gt;Permissions are granted to a user or group within a role.&lt;/li&gt;\n        &lt;li class="hub-menu__list-item"&gt;Permissions that are marked with the globe icon are granted in a global context.\n        These permissions do not depend on a specific project. For example, if you grant a user permission to view services,\n        this user can view the list of all services that are connected to Hub.&lt;/li&gt;\n      &lt;/ul&gt;\n    &lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},73438:e=&gt;{e.exports='&lt;div rg-error-page="samlSettings"&gt;\n  &lt;hub-header-with-description description-id="\'saml-page\'"&gt;\n    &lt;hub-header-with-description-title&gt;{{ \'SAML 2.0 Identity Provider\' | translate }}&lt;/hub-header-with-description-title&gt;\n    &lt;hub-header-with-description-description&gt;\n      &lt;p translate&gt;Use a YouTrack service as the Identity Provider (IdP), authentication, and authorization manager for your external web-based applications. When you configure YouTrack as the IdP for a service provider, your users can log into external services with their YouTrack credentials or any other account that is supported by an active authentication module. &lt;hub-help-link url="SAML-Management.html"&gt;Learn more â†’&lt;/hub-help-link&gt;&lt;/p&gt;\n    &lt;/hub-header-with-description-description&gt;\n  &lt;/hub-header-with-description&gt;\n\n  &lt;rg-tabs tabs-class="\'container container_tabs\'"&gt;\n    &lt;rg-tabs-pane\n      x-title="{{ \'Settings\' | translate }}"\n      tab-id="settings"\n    &gt;\n      &lt;rg-template template="$ctrl.settingsTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/rg-tabs-pane&gt;\n\n    &lt;rg-tabs-pane\n      x-title="{{ \'Registered Service Providers\' | translate }}"\n      tab-id="registered-providers"\n    &gt;\n      &lt;rg-template template="$ctrl.serviceProvidersTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/rg-tabs-pane&gt;\n  &lt;/rg-tabs&gt;\n\n  &lt;hub-page-help url="SAML-Management.html"&gt;\n    &lt;span translate&gt;\n      This section provides all attributes of Hub as the Identity Provider (IdP) in SAML 2.0. Please note that you must\n      select &lt;a class="ring-link" href="keystores"&gt;an SSL Keystore&lt;/a&gt; to encrypt the connection between Hub and\n      a service provider.&lt;br&gt;\n      Use the displayed attributes to set up Hub as the IdP for your web-service. When done, register your web-service\n      as the service provider to enable your users to log into using their credentials in Hub or any other connected\n      service.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},51415:e=&gt;{e.exports='&lt;div hub-resource="SamlServiceProviderResource"&gt;\n  &lt;hub-resource-query-data\n    fields="id,name,description,entityId,assertionConsumerUrl,logoutResponseSupported,loginAttributeName,fullNameAttributeName,emailAttributeName,groupsAttributeName"\n    items-field="items"\n    data="data"\n    query="query"\n  &gt;&lt;/hub-resource-query-data&gt;\n\n  &lt;hub-table\n    data="data"\n    columns="$ctrl.columns"\n    order-by="$ctrl.orderByQuery"\n    on-selection-change="$ctrl.onSelect(selection)"\n\n    toolbar-template="$ctrl.toolbarTemplate"\n    right-toolbar-template="$ctrl.rightToolbarTemplate"\n    sidebar-template="$ctrl.sidebarTemplate"\n    empty-template="$ctrl.emptyTemplate"\n    sidebar-empty="{{ \'Select a service provider to see details\' | translate }}"\n  &gt;&lt;/hub-table&gt;\n&lt;/div&gt;\n'},37945:(e,t,n)=&gt;{e.exports='&lt;div class="ring-form__group" rg-dialog-title="{{ dialog.data.getDialogTitle(dialog.data.update) }}"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n  &lt;div class="ring-form__control hub-form-control"&gt;\n    &lt;input id="create-dialog__name" name="name" required type="text"\n           ng-class="dialog.dialogForm.name | rgInputClass" ng-model="dialog.data.item.name"\n           class="ring-input-size_md"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__description" translate&gt;Description&lt;/label&gt;\n\n  &lt;div class="ring-form__control hub-form-control"&gt;\n    &lt;textarea\n      id="create-dialog__description"\n      name="description"\n      msd-elastic="\\n"\n      class="ring-input ring-input_no-resize ring-input-size_m ring-input-height_l"\n      ng-class="dialog.dialogForm.description | rgInputClass"\n      ng-model="dialog.data.item.description"\n    &gt;&lt;/textarea&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.description"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label saml-page__dialog__label" for="create-dialog__entityId"&gt;\n    &lt;span translate&gt;SP entity ID&lt;/span&gt;\n    &lt;rg-icon\n      rg-tooltip="\'The URL that identifies Hub as an identity provider\' | translate"\n      glyph="'+n(69840)+'"\n      size="16"\n      class="ring-tooltip-ng__hint-icon saml-page__dialog__icon"&gt;&lt;/rg-icon&gt;\n  &lt;/label&gt;\n\n  &lt;div class="ring-form__control hub-form-control"&gt;\n    &lt;input id="create-dialog__entityId" name="entityId" required type="text"\n           ng-class="dialog.dialogForm.entityId | rgInputClass" ng-model="dialog.data.item.entityId"\n           class="ring-input-size_md"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.entityId"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label saml-page__dialog__label" for="create-dialog__assertionConsumerUrl"&gt;\n    &lt;span translate&gt;ACS URL&lt;/span&gt;\n    &lt;rg-icon\n      rg-tooltip="\'The assertion consumer service URL used by Hub as an identity provider\' | translate"\n      glyph="'+n(69840)+'"\n      size="16"\n      class="ring-tooltip-ng__hint-icon saml-page__dialog__icon"&gt;&lt;/rg-icon&gt;\n  &lt;/label&gt;\n\n  &lt;div class="ring-form__control hub-form-control"&gt;\n    &lt;input id="create-dialog__assertionConsumerUrl" name="assertionConsumerUrl" type="url"\n           required\n           ng-class="dialog.dialogForm.assertionConsumerUrl | rgInputClass"\n           class="ring-input-size_md"\n           ng-model="dialog.data.item.assertionConsumerUrl"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.assertionConsumerUrl"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label saml-page__dialog__label" for="create-dialog__loginAttributeName"&gt;\n    &lt;span translate&gt;Username attribute&lt;/span&gt;\n    &lt;rg-icon\n      rg-tooltip="\'Name of the SAML attribute that stores the user login\' | translate"\n      glyph="'+n(69840)+'"\n      size="16"\n      class="ring-tooltip-ng__hint-icon saml-page__dialog__icon"&gt;&lt;/rg-icon&gt;\n  &lt;/label&gt;\n\n  &lt;div class="ring-form__control hub-form-control"&gt;\n    &lt;input id="create-dialog__loginAttributeName" name="loginAttributeName"\n           ng-class="dialog.dialogForm.loginAttributeName | rgInputClass"\n           class="ring-input-size_md"\n           ng-model="dialog.data.item.loginAttributeName"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.loginAttributeName"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label saml-page__dialog__label" for="create-dialog__fullNameAttributeName"&gt;\n    &lt;span translate&gt;Full name attribute&lt;/span&gt;\n    &lt;rg-icon\n      rg-tooltip="\'Name of the SAML attribute that stores the full name of the user\' | translate"\n      glyph="'+n(69840)+'"\n      size="16"\n      class="ring-tooltip-ng__hint-icon saml-page__dialog__icon"&gt;&lt;/rg-icon&gt;\n  &lt;/label&gt;\n\n  &lt;div class="ring-form__control hub-form-control"&gt;\n    &lt;input id="create-dialog__fullNameAttributeName" name="fullNameAttributeName"\n           ng-class="dialog.dialogForm.fullNameAttributeName | rgInputClass"\n           class="ring-input-size_md"\n           ng-model="dialog.data.item.fullNameAttributeName"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.fullNameAttributeName"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label saml-page__dialog__label" for="create-dialog__emailAttributeName"&gt;\n    &lt;span translate&gt;Email attribute&lt;/span&gt;\n    &lt;rg-icon\n      rg-tooltip="\'Name of the SAML attribute that stores the user email\' | translate"\n      glyph="'+n(69840)+'"\n      size="16"\n      class="ring-tooltip-ng__hint-icon saml-page__dialog__icon"&gt;&lt;/rg-icon&gt;\n  &lt;/label&gt;\n\n  &lt;div class="ring-form__control hub-form-control"&gt;\n    &lt;input id="create-dialog__emailAttributeName" name="emailAttributeName"\n           ng-class="dialog.dialogForm.emailAttributeName | rgInputClass"\n           class="ring-input-size_md"\n           ng-model="dialog.data.item.emailAttributeName"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.emailAttributeName"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label saml-page__dialog__label" for="create-dialog__groupsAttributeName"&gt;\n    &lt;span translate&gt;Groups attribute&lt;/span&gt;\n    &lt;rg-icon\n      rg-tooltip="\'Name of the SAML attribute that stores the user groups\' | translate"\n      glyph="'+n(69840)+'"\n      size="16"\n      class="ring-tooltip-ng__hint-icon saml-page__dialog__icon"&gt;&lt;/rg-icon&gt;\n  &lt;/label&gt;\n\n  &lt;div class="ring-form__control hub-form-control"&gt;\n    &lt;input id="create-dialog__groupsAttributeName" name="groupsAttributeName"\n           ng-class="dialog.dialogForm.groupsAttributeName | rgInputClass"\n           class="ring-input-size_md"\n           ng-model="dialog.data.item.groupsAttributeName"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.groupsAttributeName"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;div class="ring-form__group"&gt;\n    &lt;div class="ring-form__control"&gt;\n\n      &lt;rg-checkbox ng-model="dialog.data.item.logoutResponseSupported"&gt;\n        &lt;span translate&gt;Send logout response&lt;/span&gt;\n      &lt;/rg-checkbox&gt;\n\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},10236:e=&gt;{e.exports='&lt;div class="search-error"&gt;\n  &lt;span class="search-error__title" translate&gt;No Registered Service Providers&lt;/span&gt;\n  &lt;span class="search-error__title search-error__title_small" translate&gt;No SAML 2.0 service providers are registered yet.&lt;/span&gt;\n&lt;/div&gt;\n'},89702:e=&gt;{e.exports='&lt;hub-header\n  docked\n  foo="{{$ctrl.data.total &gt; 0 || query}}"\n  query="query"\n  embedded="true"\n  placeholder="{{ \'Filter service providers\' | translate }}"\n  hub-resource="SamlServiceProviderResource"\n&gt;&lt;/hub-header&gt;\n'},68675:e=&gt;{e.exports='&lt;h2 class="ring-sidebar__title"&gt;{{ $ctrl.sidebarElement.name }}&lt;/h2&gt;\n\n&lt;div class="ring-sidebar__section"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;Name&lt;/span&gt;\n\n  &lt;div class="ring-sidebar__section-text"&gt;{{ $ctrl.sidebarElement.name }}&lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.description"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;Description&lt;/span&gt;\n\n  &lt;div class="ring-sidebar__section-text"&gt;{{ $ctrl.sidebarElement.description }}&lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;SP entity ID&lt;/span&gt;\n\n  &lt;div class="ring-sidebar__section-text"&gt;{{ $ctrl.sidebarElement.entityId }}&lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;ACS URL&lt;/span&gt;\n\n  &lt;div class="ring-sidebar__section-text"&gt;{{ $ctrl.sidebarElement.assertionConsumerUrl }}&lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.loginAttributeName"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;Username attribute&lt;/span&gt;\n\n  &lt;div class="ring-sidebar__section-text"&gt;{{ $ctrl.sidebarElement.loginAttributeName }}&lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.fullNameAttributeName"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;Full name attribute&lt;/span&gt;\n\n  &lt;div class="ring-sidebar__section-text"&gt;{{ $ctrl.sidebarElement.fullNameAttributeName }}&lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.emailAttributeName"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;Email attribute&lt;/span&gt;\n\n  &lt;div class="ring-sidebar__section-text"&gt;{{ $ctrl.sidebarElement.emailAttributeName }}&lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.groupsAttributeName"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;Groups attribute&lt;/span&gt;\n\n  &lt;div class="ring-sidebar__section-text"&gt;{{ $ctrl.sidebarElement.groupsAttributeName }}&lt;/div&gt;\n&lt;/div&gt;\n\n\n&lt;div class="ring-sidebar__section"&gt;\n  &lt;hub-audit-link entity="$ctrl.sidebarElement" name="{{ $ctrl.sidebarElement.name }}"&gt;&lt;/hub-audit-link&gt;\n&lt;/div&gt;\n'},51620:e=&gt;{e.exports='&lt;ng-controller ng-controller="HubTableSelectionCtrl as selectionCtrl"&gt;\n&lt;ng-controller ng-controller="ServiceProvidersToolbarCtrl as toolbarCtrl"&gt;\n&lt;div rg-button-toolbar&gt;\n  &lt;rg-button\n    mode="primary"\n    ng-disabled="!toolbarCtrl.updatable"\n    delayed="true"\n    rg-promised-click\n    hub-resource-create\n    create-dialog-template="toolbarCtrl.dialogTemplate"\n    create-dialog-data="{getDialogTitle: toolbarCtrl.getDialogTitle}"\n    create-dialog-button-label="{{ \'Register\' | translate}}"\n    on-resource-creation="toolbarCtrl.refreshList()"\n  &gt;&lt;span translate&gt;New service provider&lt;/span&gt;&lt;/rg-button&gt;\n\n  &lt;rg-button\n    ng-show="selectionCtrl.selection.size == 1 &amp;&amp; toolbarCtrl.updatable"\n    rg-promised-click="toolbarCtrl.showUpdateDialog(selectionCtrl.selection.items)"\n  &gt;&lt;span translate&gt;Edit&lt;/span&gt;&lt;/rg-button&gt;\n\n  &lt;rg-button\n    title="{{ \'Delete selected service provider\' | translate }}"\n    danger="true"\n    ng-show="selectionCtrl.selection.size &gt;= 1 &amp;&amp; toolbarCtrl.updatable"\n    rg-promised-click="toolbarCtrl.remove(selectionCtrl.selection.items)"\n  &gt;\n    &lt;span translate&gt;Delete&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n'},77442:e=&gt;{e.exports='&lt;div class="container container_form" hub-resource="SamlIdentityProviderResource"&gt;\n  &lt;form-save item="$ctrl.samlSettings"&gt;\n\n    &lt;form-control-link x-link="{{$ctrl.samlURL}}" x-label="{{\'Sign in URL\' | translate}}"\n                       x-decription="{{\'Identity provider URL\' | translate}}"&gt;\n    &lt;/form-control-link&gt;\n\n    &lt;form-control-link x-link="{{$ctrl.logoutURL}}" x-label="{{\'Sign out URL\' | translate}}"&gt;\n    &lt;/form-control-link&gt;\n\n    &lt;form-control-link x-link="{{$ctrl.metadataURL}}" x-label="{{\'Metadata URL\' | translate}}"&gt;\n    &lt;/form-control-link&gt;\n\n    &lt;form-control-edit-text\n      data-label="{{ \'IdP entity ID\' | translate }}"\n      data-disabled="!$ctrl.updatable"\n      data-model="$ctrl.samlSettings.entityId"\n      data-required="true"&gt;\n        &lt;description&gt;&lt;span translate&gt;Identity provider entity ID&lt;/span&gt;&lt;/description&gt;\n    &lt;/form-control-edit-text&gt;\n\n    &lt;form-control-select\n      data-no-filter="true"\n      data-instant="true"\n      data-label="{{\'Default name ID\' | translate}}"\n      data-disabled="!$ctrl.updatable"\n      data-model="$ctrl.samlSettings.defaultNameIdType"\n      data-config="$ctrl.wideSelectConfig"\n      data-options="type.value as type.label select as $ctrl.getNameIdButtonText(type) describe as type.value for type in $ctrl.nameIdTypes(query) track by type.value"\n    &gt;\n        &lt;description&gt;\n          &lt;span translate&gt;Default name ID format returned when unspecified name format is requested&lt;/span&gt;\n        &lt;/description&gt;\n    &lt;/form-control-select&gt;\n\n    &lt;ssl-key-picker item="$ctrl.samlSettings" x-disabled="!$ctrl.updatable"&gt;\n      &lt;span class="ring-form__control__description"\n            translate&gt;Authenticates your YouTrack installation when connecting to external service providers. &lt;a ng-href="keystores" class="ring-link"&gt;Manage SSL keys&lt;/a&gt;&lt;/span&gt;\n    &lt;/ssl-key-picker&gt;\n\n    &lt;form-control-text ng-show="$ctrl.samlSettings.keyStore.id"\n                       x-label="{{\'Fingerprints\' | translate}}"\n                       x-text="{{$ctrl.samlSettings.keyStore.certificate.fingerprint.sha256 | fingerprint}}"\n                       x-description="{{\'The SHA-256 fingerprint of the SAML certificate\' | translate}}"&gt;\n    &lt;/form-control-text&gt;\n\n    &lt;form-control-text ng-show="$ctrl.samlSettings.keyStore.id"\n                       x-text="{{$ctrl.samlSettings.keyStore.certificate.fingerprint.sha1 | fingerprint}}"\n                       x-description="{{\'The SHA-1 fingerprint of the SAML certificate\' | translate}}"&gt;\n    &lt;/form-control-text&gt;\n\n    &lt;form-control-text ng-show="$ctrl.samlSettings.keyStore.id"\n                       x-text="{{$ctrl.samlSettings.keyStore.certificate.fingerprint.md5 | fingerprint}}"\n                       x-description="{{\'The MD-5 fingerprint of the SAML certificate\' | translate}}"&gt;\n    &lt;/form-control-text&gt;\n\n\n    &lt;hub-audit-link type="[identityprovidermetadata, serviceprovidermetadata]" name="{{ \'SAML 2.0 Settings\' | translate }}"&gt;&lt;/hub-audit-link&gt;\n\n  &lt;/form-save&gt;\n&lt;/div&gt;\n'},40892:e=&gt;{e.exports='&lt;div class="ring-form__group" rg-dialog-title="{{ \'New Service\' | translate }}"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;input id="create-dialog__name" name="name" required type="text"\n           ng-class="dialog.dialogForm.name | rgInputClass" ng-model="dialog.data.item.name"\n           class="ring-input-size_md"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__homeUrl" translate&gt;Home URL&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;input id="create-dialog__homeUrl" name="homeUrl" type="url"\n           ng-class="dialog.dialogForm.homeUrl | rgInputClass"\n           class="ring-input-size_md"\n           ng-model="dialog.data.item.homeUrl"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.homeUrl"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},91880:(e,t,n)=&gt;{e.exports='&lt;div hub-resource="ServiceResource" rg-error-page hub-resource-item-open="services/:id"&gt;\n  &lt;hub-resource-query-data\n    fields="id,key,name,homeUrl,userUriPattern,groupUriPattern,applicationName,trusted,iconUrl,resources(id,name),permissions(id,name),licenseSettings(licenseName)"\n    items-field="services"\n    data="data"\n    order-by="$ctrl.orderByQuery"\n  &gt;&lt;/hub-resource-query-data&gt;\n\n  &lt;hub-header placeholder="{{ \'Filter services\' | translate }}"&gt;&lt;/hub-header&gt;\n\n  &lt;hub-table\n    data="data"\n    columns="$ctrl.columns"\n    default-sort-key="name"\n    order-by="$ctrl.orderByQuery"\n\n    title-format="\'services-total-title\'"\n    toolbar-template="$ctrl.toolbarTemplate"\n    sidebar-template="$ctrl.sidebarTemplate"\n    sidebar-empty="{{ \'Select service to see details\' | translate }}"\n    sidebar-icon="'+n(70764)+'"\n  &gt;&lt;/hub-table&gt;\n\n  &lt;hub-page-help url="Managing-Services.html"&gt;\n    &lt;span translate&gt;A service is any application that is connected to Hub.\n      Add and trust a service to start managing its resources and configure user access. &lt;br&gt;\n      Filter the list of services by attributes, including name, vendor, access permissions, and URL. The search box provides query\n      completion to help you choose from available search attributes.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},99886:(e,t,n)=&gt;{e.exports='&lt;img class="ring-sidebar__avatar" ng-if="$ctrl.sidebarElement.iconUrl" ng-src="{{ $ctrl.sidebarElement.iconUrl }}"/&gt;\n\n&lt;h2 class="ring-sidebar__title"&gt;\n    &lt;a class="ring-link" href="services/{{ $ctrl.sidebarElement.key | encodeLink:$ctrl.sidebarElement.id }}"&gt;{{ $ctrl.sidebarElement.name }}&lt;/a&gt;\n    &lt;rg-badge class-name="\'title-badge\'" valid="true" ng-if="$ctrl.sidebarElement.trusted"&gt;&lt;span translate&gt;trusted&lt;/span&gt;&lt;/rg-badge&gt;\n    &lt;rg-badge class-name="\'title-badge\'" invalid="true" ng-if="!$ctrl.sidebarElement.trusted"&gt;&lt;span translate&gt;untrusted&lt;/span&gt;&lt;/rg-badge&gt;\n&lt;/h2&gt;\n\n&lt;div class="ring-sidebar__section"&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;Home URL&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;span&gt;{{ $ctrl.sidebarElement.homeUrl }}&lt;/span&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.userUriPattern"&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;User URI Pattern&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;span&gt;{{ $ctrl.sidebarElement.userUriPattern }}&lt;/span&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.groupUriPattern"&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;Group URI Pattern&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;span&gt;{{ $ctrl.sidebarElement.groupUriPattern }}&lt;/span&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.applicationName"&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;Application&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;span&gt;{{ $ctrl.sidebarElement.applicationName }}&lt;/span&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.permissions"&gt;\n    &lt;rg-icon size="14" glyph="'+n(34301)+'" class="ring-sidebar__section-icon"&gt;&lt;/rg-icon&gt;\n\n    &lt;span class="ring-sidebar__section-title"&gt;\n        &lt;span translate translate-n="$ctrl.sidebarElement.permissions.length" translate-plural="{{ $count }} Permissions"&gt;{{ $count }} Permission&lt;/span&gt;\n    &lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;span ng-repeat="permission in $ctrl.sidebarElement.permissions"&gt;{{permission.name}}{{$last ? \'\' : \', \'}}&lt;/span&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.resources"&gt;\n    &lt;rg-icon size="14" glyph="'+n(57663)+'" class="ring-sidebar__section-icon"&gt;&lt;/rg-icon&gt;\n\n    &lt;span class="ring-sidebar__section-title"&gt;\n        &lt;span translate translate-n="$ctrl.sidebarElement.resources.length" translate-plural="{{ $count }} Resources"&gt;{{ $count }} Resource&lt;/span&gt;\n    &lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;span ng-repeat="resource in $ctrl.sidebarElement.resources"&gt;{{resource.name}}{{$last ? \'\' : \', \'}}&lt;/span&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n\x3c!--TODO: Enable back when service permissions are not ignored --\x3e\n\x3c!--&lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.projectRoles"&gt;--\x3e\n    \x3c!--&lt;rg-icon size="14" glyph="/user-gear.svg" class="ring-sidebar__section-icon"&gt;&lt;/rg-icon&gt;--\x3e\n\n    \x3c!--&lt;span class="ring-sidebar__section-title"&gt;--\x3e\n        \x3c!--&lt;span translate translate-n="$ctrl.sidebarElement.projectRoles.length"--\x3e\n              \x3c!--translate-plural="{{ $count }} Roles"&gt;{{ $count }} Role&lt;/span&gt;--\x3e\n    \x3c!--&lt;/span&gt;--\x3e\n\n    \x3c!--&lt;div class="ring-sidebar__section-text"&gt;--\x3e\n        \x3c!--&lt;span ng-repeat="projectRole in $ctrl.sidebarElement.projectRoles"&gt;--\x3e\n            \x3c!--&lt;a class="ring-link" href="projects/{{ projectRole.project.id }}"&gt;{{ projectRole.project.name }}&lt;/a&gt;--\x3e\n            \x3c!--&lt;a class="ring-link" href="roles/{{ projectRole.role.id }}"&gt;{{ projectRole.role.name }}&lt;/a&gt;{{$last ? \'\' : \', \'}}--\x3e\n        \x3c!--&lt;/span&gt;--\x3e\n    \x3c!--&lt;/div&gt;--\x3e\n\x3c!--&lt;/div&gt;--\x3e\n'},12617:e=&gt;{e.exports='&lt;ng-controller ng-controller="HubTableSelectionCtrl as selectionCtrl"&gt;\n&lt;ng-controller ng-controller="ServicesToolbarCtrl as toolbarCtrl"&gt;\n&lt;div rg-button-toolbar&gt;\n  &lt;rg-button\n    mode="primary"\n    delayed="true"\n    rg-permission="low-level"\n    rg-promised-click\n    hub-resource-create\n    create-dialog-template="toolbarCtrl.dialogTemplate"\n    create-dialog-button-label="{{ \'Create\' | translate}}"\n    redirect-url="/services/:id"\n  &gt;&lt;span translate&gt;New service&lt;/span&gt;&lt;/rg-button&gt;\n\n  &lt;rg-button\n    rg-permission="low-level"\n    ng-show="toolbarCtrl.isVerifyVisible(selectionCtrl.selection, true)"\n\n    rg-promised-click="toolbarCtrl.verify(selectionCtrl.selection.items, true)"\n    promised-mode="loader"\n  &gt;\n    &lt;span translate&gt;Trust&lt;/span&gt;\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    rg-permission="low-level"\n    ng-show="toolbarCtrl.isVerifyVisible(selectionCtrl.selection, false)"\n\n    rg-promised-click="toolbarCtrl.verify(selectionCtrl.selection.items, false)"\n    promised-mode="loader"\n  &gt;\n    &lt;span translate&gt;Distrust&lt;/span&gt;\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    title="{{ \'Delete selected services\' | translate }}"\n    danger="true"\n    rg-permission="low-level"\n    ng-show="toolbarCtrl.hasNonHostServices(selectionCtrl.selection)"\n\n    rg-promised-click="toolbarCtrl.remove(selectionCtrl.selection.items)"\n  &gt;\n    &lt;span translate&gt;Delete&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n'},91609:(e,t,n)=&gt;{e.exports='&lt;div hub-resource="ServiceResource"&gt;\n  &lt;div hub-resource="SettingsResource" class="container" ng-if="!serviceData.service.licenseSettings"&gt;\n    &lt;rg-button\n      mode="primary"\n      delayed="true"\n      rg-promised-click="addLicense()"\n      rg-permission="low-level"\n    &gt;&lt;span translate&gt;Add license&lt;/span&gt;&lt;/rg-button&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-if="serviceData.service.licenseSettings"&gt;\n    &lt;div class="service-page__licenses__info"&gt;\n      &lt;rg-group&gt;\n        &lt;span translate&gt;License {{ serviceData.service.licenseSettings.licenseName }}:&lt;/span&gt;\n\n        &lt;rg-icon glyph="'+n(66985)+'" size="16" class="service-page__licenses-icon"}&gt;&lt;/rg-icon&gt;\n\n        &lt;span&gt;\n          &lt;span ng-if="!isLicenseLimited()" translate&gt;Unlimited&lt;/span&gt;\n          &lt;span ng-if="isLicenseLimited()"\n                data-test="available-license-count"\n              translate&gt;{{serviceData.service.licenseSettings.availableLicenses}} available&lt;/span&gt;\n        &lt;/span&gt;\n\n        &lt;rg-icon glyph="'+n(17576)+'" size="16" class="service-page__licenses-icon"}&gt;&lt;/rg-icon&gt;\n\n        &lt;span&gt;\n          &lt;span translate ng-if="!isLicenseValidForever()"&gt;\n            Valid until {{serviceData.service.licenseSettings.licenseInfo.expirationDate | licenseDate}}\n          &lt;/span&gt;\n          &lt;span ng-if="isLicenseValidForever()" translate&gt;\n            Valid forever\n          &lt;/span&gt;\n        &lt;/span&gt;\n\n        &lt;a class="ring-link" ng-if="isLicenseUpdatable()" ng-click="setLicense()"} translate&gt;\n          Edit license...\n        &lt;/a&gt;\n      &lt;/rg-group&gt;\n    &lt;/div&gt;\n\n    &lt;div ng-if="isLicenseLimited()"&gt;\n      &lt;rg-template rg-permission="user-read | user-read-basic" template="licenseUsersTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},51446:e=&gt;{e.exports='&lt;div ng-controller="ServiceLicenseDialogCtrl"&gt;\n  &lt;div class="service-page__dialog-description" translate&gt;\n    {{dialog.data.freeLicensesNum}} of {{dialog.data.availableLicensesNum}} licenses available\n  &lt;/div&gt;\n\n  &lt;div tr&gt;&lt;/div&gt;\n\n  &lt;rg-tags-input\n    height="\'S\'"\n    name="dialog.data.grantEntities"\n    tags="dialog.data.grantEntities"\n    x-data-source="dialog.data.datasource"\n    on-add-tag="dialog.data.onAddEntry"\n    on-remove-tag="dialog.data.onRemoveEntry"\n    max-popup-height="250"\n    placeholder="dialog.data.placeholder"\n    loading-message="\'Loading...\' | translate"\n  &gt;&lt;/rg-tags-input&gt;\n\n  &lt;input type="hidden" ng-required="dialog.data.grantEntities.length &lt; 1 || dialog.data.freeLicensesNum &lt; 0" value="" ng-model="grantEntities"/&gt;\n&lt;/div&gt;\n'},8738:e=&gt;{e.exports='&lt;div&gt;\n\n  &lt;div&gt;\n    &lt;span ng-if="dialog.data.users.length === 1 &amp;&amp; !dialog.data.hasGroups" translate&gt;\n      When you confirm this action, the license is revoked from &lt;b&gt;{{dialog.data.users[0].name}}&lt;/b&gt;\n    &lt;/span&gt;\n\n    &lt;span ng-if="dialog.data.users.length &gt; 1 &amp;&amp; !dialog.data.hasGroups" translate&gt;\n      When you confirm this action, the license is revoked from &lt;b&gt;{{dialog.data.users.length}} users&lt;/b&gt;\n    &lt;/span&gt;\n\n    &lt;span ng-if="dialog.data.groups.length === 1 &amp;&amp; !dialog.data.hasUsers" translate&gt;\n      When you confirm this action, the &lt;b&gt;{{dialog.data.groups[0].name}}&lt;/b&gt; group is no longer used to manage this license\n    &lt;/span&gt;\n\n    &lt;span ng-if="dialog.data.groups.length &gt; 1 &amp;&amp; !dialog.data.hasUsers" translate&gt;\n      When you confirm this action, &lt;b&gt;{{dialog.data.groups.length}} groups&lt;/b&gt; are no longer used to manage this license\n    &lt;/span&gt;\n\n    &lt;span ng-if="dialog.data.hasUsers &amp;&amp; dialog.data.hasGroups"&gt;\n      When you confirm this action, the license is revoked from &lt;b&gt;{{dialog.data.users.length}} users&lt;/b&gt;\n      and &lt;b&gt;{{dialog.data.groups.length}} groups&lt;/b&gt;\n    &lt;/span&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-if="dialog.data.hasGroups &amp;&amp; !dialog.data.allGroupsAreEmpty" class="service-page__dialog-options"&gt;\n    &lt;div class="service-page__options-title"&gt;\n      &lt;span ng-if="dialog.data.groups.length === 1" translate&gt;Select an option for removing this group:&lt;/span&gt;\n      &lt;span ng-if="dialog.data.groups.length &gt; 1" translate&gt;Select an option for removing these groups:&lt;/span&gt;\n    &lt;/div&gt;\n\n    &lt;rg-radio\n      value="WHOLE_GROUP"\n      ng-model="data.option"\n      name="option"\n    &gt;\n      &lt;span translate\n            ng-if="dialog.data.groups.length === 1"&gt;Revoke the license from the group and its members\n      &lt;/span&gt;&lt;span translate\n                   ng-if="dialog.data.groups.length &gt; 1"\n    &gt;Revoke the license from the groups and their members&lt;/span&gt;\n    &lt;/rg-radio&gt;\n\n    &lt;rg-radio\n      value="KEEP_USERS"\n      ng-model="data.option"\n      name="option"\n    &gt;\n      &lt;span translate\n            ng-if="dialog.data.groups.length === 1"\n      &gt;Revoke the license from the group, but grant its members the license directly\n      &lt;/span&gt;&lt;span translate\n                   ng-if="dialog.data.groups.length &gt; 1"\n    &gt;Revoke the license from the groups, but grant their members the license directly&lt;/span&gt;\n    &lt;/rg-radio&gt;\n\n  &lt;/div&gt;\n&lt;/div&gt;\n\n\n'},33993:e=&gt;{e.exports='&lt;div ng-controller="ServiceLicenseUsersCtrl as $ctrl" class="service-page__licenses"&gt;\n  &lt;rg-sidebar\n    data-test="license-users-sidebar"\n    show="$ctrl.isSidebarShown"\n    place-under-sibling=".ring-table__toolbar"\n    sync-bottom="[data-test=\'ring-footer\'];-40"\n    listen-to-height-change=".app__content"\n    top-offset="1"\n  &gt;\n    &lt;rg-template ng-if="$ctrl.sidebarElement._user || $ctrl.sidebarElement._group" template="$ctrl.sidebarTemplate"&gt;&lt;/rg-template&gt;\n\n    &lt;div ng-if="!($ctrl.sidebarElement._user || $ctrl.sidebarElement._group)" class="ring-sidebar__empty" data-test="table-sidebar-empty"&gt;\n      &lt;div class="ring-sidebar__empty-description"&gt;{{\'Select an item to see details\' | translate}}&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/rg-sidebar&gt;\n\n  &lt;rg-legacy-table-toolbar stick container=".service-page__licenses"&gt;\n    &lt;rg-template data-test="table-toolbar-left" template="$ctrl.toolbarLeftTemplate"&gt;&lt;/rg-template&gt;\n    &lt;rg-template ng-show="$ctrl.items.length" class="team-tab__toolbar-right" data-test="table-toolbar-right" template="$ctrl.toolbarRightTemplate"&gt;&lt;/rg-template&gt;\n  &lt;/rg-legacy-table-toolbar&gt;\n\n  &lt;rg-data-list\n    data="$ctrl.items"\n    selection="$ctrl.selection"\n    on-select="$ctrl.onSelect"\n    item-formatter="$ctrl.itemFormatter"\n    shortcuts="$ctrl.shortcuts"\n  &gt;&lt;/rg-data-list&gt;\n&lt;/div&gt;\n'},57323:e=&gt;{e.exports='&lt;div class="search-error" ng-if="!data.error &amp;&amp; data.total === 0"&gt;\n    &lt;span class="search-error__title ring-clearfix" translate&gt;No Users or Groups&lt;/span&gt;\n    &lt;span class="search-error__title search-error__title_small" translate&gt;there are no users having this license.&lt;/span&gt;\n&lt;/div&gt;\n'},14105:e=&gt;{e.exports='&lt;div ng-controller="LicenseUsersSidebarCtrl as sidebarCtrl"&gt;\n  &lt;div class="team-tab__sidebar-header"&gt;\n    &lt;img class="ring-sidebar__avatar"\n         ng-if="sidebarCtrl.getItem().iconUrl || sidebarCtrl.getItem().profile"\n         ng-src="{{ sidebarCtrl.getItem().iconUrl || sidebarCtrl.getItem().profile.avatar.url }}" /&gt;\n\n    &lt;div class="team-tab__sidebar-header-title"&gt;\n      &lt;h2 class="ring-sidebar__title"&gt;\n        &lt;span translate&gt;{{sidebarCtrl.getItem().name}}&lt;/span&gt;\n      &lt;/h2&gt;\n\n      &lt;span ng-if="sidebarCtrl.isUser()"&gt;{{ sidebarCtrl.getItem().profile.email.email }}&lt;/span&gt;\n      &lt;span ng-if="!sidebarCtrl.isUser()"&gt;{{ sidebarCtrl.getItem().description }}&lt;/span&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n\n  &lt;div class="ring-sidebar__section"&gt;\n    &lt;div ng-show="sidebarCtrl.loadingRoles"&gt;\n      &lt;rg-loader-inline&gt;&lt;/rg-loader-inline&gt;\n    &lt;/div&gt;\n\n    &lt;div ng-hide="sidebarCtrl.loadingRoles"&gt;\n      &lt;div class="ring-sidebar__section-title service-page__licenses__sidebar__title" translate&gt;Roles in Projects&lt;/div&gt;\n\n      &lt;div ng-repeat="data in sidebarCtrl.visibleRoles"&gt;\n        &lt;hub-expander&gt;\n          &lt;header&gt;\n            &lt;a class="ring-link" ng-href="projects/{{ ::data.project.name | encodeLink:data.project.id }}"&gt;{{:: data.project.name}}&lt;/a&gt;\n          &lt;/header&gt;\n\n          &lt;content&gt;\n            &lt;div class="team-tab__sidebar-permissions"&gt;\n              &lt;span class="team-tab__sidebar-permissions-title" translate&gt;Roles&lt;/span&gt;\n\n              &lt;div&gt;\n                &lt;div class="team-tab__sidebar-permission" ng-repeat="role in :: data.roles"&gt;\n                  &lt;span class="team-tab__sidebar-permission-name"&gt;{{:: role.name}}&lt;/span&gt;\n\n                  &lt;div class="team-tab__sidebar-permission-services"&gt;\n                    &lt;rg-badge ng-repeat="badge in role.badges"&gt;\n                      {{:: badge}}\n                    &lt;/rg-badge&gt;\n                  &lt;/div&gt;\n                &lt;/div&gt;\n              &lt;/div&gt;\n            &lt;/div&gt;\n          &lt;/content&gt;\n        &lt;/hub-expander&gt;\n      &lt;/div&gt;\n\n      &lt;span class="ring-link ring-link_pseudo service-page__licenses__sidebar__show-more"\n            ng-show="sidebarCtrl.hidden" ng-click="sidebarCtrl.showMore()" translate&gt;Show more&lt;/span&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},20005:e=&gt;{e.exports='&lt;rg-sidebar-toggle-button data-test="table-toolbar-toggle" model="$ctrl.isSidebarShown" class="hub-header__controls__right-toolbar"&gt;\n  &lt;span title="{{ \'Details\' | translate }}" translate&gt;Details&lt;/span&gt;\n&lt;/rg-sidebar-toggle-button&gt;\n\n&lt;div rg-button-group class="hub-header__controls__right-toolbar"&gt;\n  &lt;rg-button ng-click="$ctrl.setPlainMode(false)" active="!$ctrl.plainMode"&gt;\n    &lt;span translate&gt;By groups&lt;/span&gt;\n  &lt;/rg-button&gt;\n  &lt;rg-button ng-click="$ctrl.setPlainMode(true)" active="$ctrl.plainMode"&gt;\n    &lt;span translate&gt;Users&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n\n&lt;hub-header\n  docked\n  embedded="true"\n  theme="light"\n  class="hub-header__controls__right-toolbar"\n  placeholder="{{ \'Search by user\' | translate }}"\n  hub-resource="UserResource"\n&gt;&lt;/hub-header&gt;\n'},54404:e=&gt;{e.exports='&lt;ng-controller ng-controller="ServiceLicenseUsersSelectionCtrl as selectionCtrl"&gt;\n&lt;ng-controller ng-controller="ServiceLicenseToolbarCtrl"&gt;\n  &lt;div rg-button-toolbar&gt;\n    &lt;rg-button\n      mode="primary"\n      delayed="true"\n      rg-permission="group-update"\n      ng-click="grantLicenseDialog(selectionCtrl.selection.items)"\n      ng-disabled="!serviceData.availableLicenses"\n      data-test="button-grant-license"\n    &gt;&lt;span translate&gt;Grant license&lt;/span&gt;&lt;/rg-button&gt;\n\n    &lt;rg-button\n      ng-show="isRevokeAvailable(selectionCtrl.selection.items)"\n      ng-click="revokeLicenseDialog(selectionCtrl.selection.items)"\n      rg-permission="group-update"\n    &gt;&lt;span translate&gt;Revoke license&lt;/span&gt;&lt;/rg-button&gt;\n  &lt;/div&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n'},10194:e=&gt;{e.exports='&lt;div hub-resource="ServicePermissionResource"&gt;\n  &lt;hub-resource-query-data\n    fields="id,key,name,description,global,entityType,operation"\n    items-field="permissions" data="permissions.data" query="query"\n    params="{\'id\': getServiceId()}"&gt;&lt;/hub-resource-query-data&gt;\n\n  &lt;hub-table\n    data="permissions.data"\n    columns="permissionsColumns"\n    selectable="true"\n    multi-selectable="false"\n\n    toolbar-template="permissionsToolbarTemplate"\n    sidebar-template="permissionsSidebarTemplate"\n    empty-template="permissionsEmptyTemplate"\n    sidebar-empty="{{ \'Select permission to see details\' | translate }}"\n  &gt;&lt;/hub-table&gt;\n&lt;/div&gt;\n'},80313:e=&gt;{e.exports='&lt;div class="search-error" ng-if="!$ctrl.data.error &amp;&amp; $ctrl.data.total === 0"&gt;\n    &lt;span class="search-error__title ring-clearfix" translate&gt;No Permissions&lt;/span&gt;\n    &lt;span class="search-error__title search-error__title_small ring-clearfix" translate&gt;The service provides no permissions.&lt;/span&gt;\n&lt;/div&gt;\n'},78119:(e,t,n)=&gt;{e.exports='&lt;h2 class="ring-sidebar__title"&gt;{{ $ctrl.sidebarElement.name }}&lt;/h2&gt;\n\n&lt;div class="ring-sidebar__section"&gt;\n    &lt;span ng-show="$ctrl.sidebarElement.global"&gt;\n      &lt;rg-icon size="14" glyph="'+n(8429)+'" class="ring-sidebar__section-icon"&gt;&lt;/rg-icon&gt;\n      &lt;span class="ring-sidebar__section-title" translate&gt;Global permission&lt;/span&gt;\n    &lt;/span&gt;\n    &lt;span class="ring-sidebar__section-title" ng-show="!$ctrl.sidebarElement.global" translate&gt;Per-project permission&lt;/span&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.description"&gt;\n    &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;span&gt;{{ $ctrl.sidebarElement.description }}&lt;/span&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.key"&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;Key&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;span&gt;{{ $ctrl.sidebarElement.key }}&lt;/span&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.entityType"&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;Entity Type&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;span&gt;{{ $ctrl.sidebarElement.entityType }}&lt;/span&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.operation"&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;Operation&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;span&gt;{{ $ctrl.sidebarElement.operation }}&lt;/span&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.service"&gt;\n    &lt;rg-icon size="14" glyph="'+n(70764)+'" class="ring-sidebar__section-icon"&gt;&lt;/rg-icon&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;Service&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;a class="ring-link" ng-href="services/{{ $ctrl.sidebarElement.service.key | encodeLink:$ctrl.sidebarElement.service.id }}"&gt;{{ $ctrl.sidebarElement.service.name }}&lt;/a&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n\n'},81537:e=&gt;{e.exports='&lt;div rg-button-toolbar rg-permission="low-level"&gt;\n&lt;/div&gt;\n'},99053:e=&gt;{e.exports='&lt;div hub-resource="ServiceResourceResource"&gt;\n  &lt;hub-resource-query-data\n    fields="id,key,type,name,homeUrl,project(id,name)"\n    items-field="resources"\n    data="resources.data"\n    query="query"\n    params="{\'id\': getServiceId()}"\n    order-by="orderByQuery"\n  &gt;&lt;/hub-resource-query-data&gt;\n\n  &lt;hub-table\n    data="resources.data"\n    columns="resourcesColumns"\n    default-sort-key="name"\n    order-by="orderByQuery"\n\n    toolbar-template="resourcesToolbarTemplate"\n    sidebar-template="resourcesSidebarTemplate"\n    empty-template="resourcesEmptyTemplate"\n    sidebar-empty="{{ \'Select a resource to see details\' | translate }}"\n  &gt;&lt;/hub-table&gt;\n&lt;/div&gt;\n'},27306:e=&gt;{e.exports='&lt;div class="search-error" ng-if="!$ctrl.data.error &amp;&amp; $ctrl.data.total === 0"&gt;\n    &lt;span class="search-error__title" translate&gt;No Resources&lt;/span&gt;\n    &lt;span class="search-error__title search-error__title_small" translate&gt;The service provides no resources.&lt;/span&gt;\n&lt;/div&gt;\n'},62642:(e,t,n)=&gt;{e.exports='&lt;h2 class="ring-sidebar__title"&gt;{{ $ctrl.sidebarElement.name }}&lt;/h2&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.key"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;Key&lt;/span&gt;\n\n  &lt;div class="ring-sidebar__section-text"&gt;\n    {{ $ctrl.sidebarElement.key }}\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.type"&gt;\n  &lt;span class="ring-sidebar__section-title" translate&gt;Type&lt;/span&gt;\n\n  &lt;div class="ring-sidebar__section-text"&gt;\n    {{ $ctrl.sidebarElement.type }}\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.homeUrl"&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;Home URL&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;a class="ring-link" ng-href="{{ $ctrl.sidebarElement.homeUrl }}"&gt;{{ $ctrl.sidebarElement.homeUrl }}&lt;/a&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.service"&gt;\n    &lt;rg-icon size="14" glyph="'+n(70764)+'" class="ring-sidebar__section-icon"&gt;&lt;/rg-icon&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;Service&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;a class="ring-link" ng-href="services/{{ $ctrl.sidebarElement.service.key | encodeLink:$ctrl.sidebarElement.service.id }}"&gt;{{ $ctrl.sidebarElement.service.name }}&lt;/a&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.project"&gt;\n    &lt;rg-icon size="14" glyph="'+n(8429)+'" class="ring-sidebar__section-icon"&gt;&lt;/rg-icon&gt;\n    &lt;span class="ring-sidebar__section-title" translate&gt;Project&lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-text"&gt;\n        &lt;a class="ring-link" ng-href="projects/{{ $ctrl.sidebarElement.project.name | encodeLink:$ctrl.sidebarElement.project.id }}"&gt;{{ $ctrl.sidebarElement.project.name }}&lt;/a&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},26125:(e,t,n)=&gt;{e.exports='&lt;ng-controller ng-controller="HubTableSelectionCtrl as selectionCtrl" rg-permission="low-level"&gt;\n&lt;ng-controller ng-controller="ServicePageResourcesToolbarCtrl as toolbarCtrl"&gt;\n&lt;div rg-button-toolbar&gt;\n  &lt;rg-button\n    title="{{ \'Move selected resources to another project\' | translate }}"\n    loader="toolbarCtrl.moveResourcesLoader"\n    data-test="move-button"\n    ng-show="selectionCtrl.selection.size &gt;= 1"\n    rg-permission="low-level"\n\n    rg-select\n    select-type="dropdown"\n    options="item.name for item in toolbarCtrl.targetProjectsDataSource(query, selectionCtrl.selection.items) track by item.id"\n    external-filter="true"\n    on-select="toolbarCtrl.moveResources(selected.originalModel, selectionCtrl.selection.items)"\n    not-found-message="{{\'No projects found\' | translate}}"\n  &gt;\n    &lt;span translate&gt;Change project&lt;/span&gt;\n    &lt;rg-icon glyph="'+n(96971)+'" size="14"&gt;&lt;/rg-icon&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n'},20126:e=&gt;{e.exports="&lt;div translate&gt;\n  This action restores the default set of permissions to the roles as they are defined in {{dialog.data.serviceName}}. As a result,\n  users and groups who are currently assigned these roles may gain or lose access rights.\n&lt;/div&gt;\n"},76009:e=&gt;{e.exports="&lt;div translate&gt;\n  This action restores the default set of permissions to the {{dialog.data.roleName}} role. As a result, users and groups who are\n  currently assigned this role may gain or lose access rights.\n&lt;/div&gt;\n"},13728:(e,t,n)=&gt;{e.exports='&lt;div class="container container_form" ng-show="service.defaultRoles"&gt;\n    &lt;div class="ring-clearfix"&gt;\n        &lt;span class="container__title" translate&gt;Default roles provided by the {{ service.name }} service&lt;/span&gt;\n\n        &lt;div class="global__pull-right"&gt;\n            &lt;rg-icon size="14" glyph="'+n(8429)+'" class="global__icon_blue service-page__global-icon_header"&gt;&lt;/rg-icon&gt;\n\n            &lt;span class="container__right-title" translate&gt;Global permissions&lt;/span&gt;\n\n            &lt;rg-button ng-click="resetAllServiceRoles()" rg-permission="role-manage"&gt;\n              &lt;span translate&gt;Restore default permissions for all roles&lt;/span&gt;\n            &lt;/rg-button&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;rg-island class="service-page__role" ng-repeat="role in service.defaultRoles"&gt;\n\n        &lt;rg-island-header border="true"&gt;\n            &lt;span class="service-page__header-title"&gt;{{ role.name }}&lt;/span&gt;\n            &lt;rg-button class="service-page__island-header-button"\n                       ng-click="resetServiceRole(role)"\n                       rg-permission="role-manage"\n            &gt;&lt;span translate&gt;Restore default permissions&lt;/span&gt;&lt;/rg-button&gt;\n        &lt;/rg-island-header&gt;\n\n        &lt;rg-island-content&gt;\n            &lt;div class="service-page__role__column" ng-repeat="colNum in [0, 1, 2]"&gt;\n                &lt;div ng-repeat="permission in role.permissions|portion:colNum:3"\n                     class="service-page__role__column__group ring-clearfix"&gt;\n                    &lt;div class="service-page__role__column__field"&gt;\n                        &lt;span class="service-page__role__column__title"&gt;{{ permission.name }}&lt;/span&gt;\n                        &lt;rg-icon size="14" glyph="'+n(8429)+'" ng-show="permission.global" title="{{ \'Permission is global\' | translate }}" class="global__icon_blue service-page__global-icon_list"&gt;&lt;/rg-icon&gt;\n\n                        &lt;div class="ring-clearfix"&gt;&lt;/div&gt;\n                        &lt;span class="service-page__role__column__description"&gt;{{ permission.description }}&lt;/span&gt;\n                    &lt;/div&gt;\n                &lt;/div&gt;\n            &lt;/div&gt;\n        &lt;/rg-island-content&gt;\n    &lt;/rg-island&gt;\n&lt;/div&gt;\n&lt;div class="search-error" ng-if="service.$resolved &amp;&amp; !service.defaultRoles"&gt;\n    &lt;span class="search-error__title ring-clearfix" translate&gt;No Default Roles&lt;/span&gt;\n    &lt;span class="search-error__title search-error__title_small ring-clearfix" translate&gt;The service provides no default roles.&lt;/span&gt;\n&lt;/div&gt;\n'},36786:e=&gt;{e.exports='&lt;div rg-error-page="service"&gt;\n    &lt;div class="hub-header"&gt;\n        &lt;div rg-button-toolbar class="hub-header__toolbar"&gt;\n          &lt;rg-button\n            rg-permission="low-level"\n            rg-promised-click="toggleTrustedState(!service.trusted)"\n            promised-mode="loader"&gt;\n            &lt;span ng-show="!service.trusted" translate&gt;Trust service&lt;/span&gt;\n            &lt;span ng-show="service.trusted" translate&gt;Distrust service&lt;/span&gt;\n          &lt;/rg-button&gt;\n\n          &lt;hub-header-delete\n            inline="true"\n            rg-permission="low-level"\n            label="{{ \'Delete service\' | translate}}"\n            item="service"\n            confirm-message="delete-services?"\n            success-message="services-success-delete"\n            error-message="low-level"\n          &gt;&lt;/hub-header-delete&gt;\n        &lt;/div&gt;\n        &lt;rg-breadcrumb label="{{ \'Services\' | translate }}" link="services"&gt;{{ service.name }}&lt;rg-badge\n          class-name="\'title-badge\'" valid="true" ng-show="service.trusted"&gt;&lt;span translate&gt;trusted&lt;/span&gt;&lt;/rg-badge&gt;&lt;rg-badge\n          class-name="\'title-badge\'" invalid="true" ng-show="!service.trusted"&gt;&lt;span translate&gt;untrusted&lt;/span&gt;&lt;/rg-badge&gt;\n        &lt;/rg-breadcrumb&gt;\n    &lt;/div&gt;\n\n    &lt;rg-tabs tabs-class="\'container container_tabs\'"&gt;\n        &lt;rg-tabs-pane\n          x-title="{{ \'Settings\' | translate }}"\n          tab-index="1"\n          tab-id="settings"\n        &gt;\n          &lt;rg-template template="settingsTemplate"&gt;&lt;/rg-template&gt;\n        &lt;/rg-tabs-pane&gt;\n\n        &lt;rg-tabs-pane\n          x-title="{{ \'Resources\' | translate }}"\n          tab-index="2" tab-id="resources"\n          counter="{{ service.resources.length || 0}}"\n          selected="resourcesSelected"\n        &gt;\n          &lt;rg-template ng-if="resourcesSelected" template="resourcesTemplate"&gt;&lt;/rg-template&gt;\n        &lt;/rg-tabs-pane&gt;\n\n        &lt;rg-tabs-pane\n          x-title="{{ \'Permissions\' | translate }}"\n          tab-index="3"\n          tab-id="permissions"\n          counter="{{ service.permissions.length || 0}}"\n        &gt;\n          &lt;rg-template template="permissionsTemplate"&gt;&lt;/rg-template&gt;\n        &lt;/rg-tabs-pane&gt;\n\n        &lt;rg-tabs-pane\n          x-title="{{ \'Default Roles\' | translate }}"\n          tab-index="4"\n          tab-id="default-roles"\n          counter="{{ service.defaultRoles.length || 0}}"\n        &gt;\n          &lt;rg-template template="rolesTemplate"&gt;&lt;/rg-template&gt;\n        &lt;/rg-tabs-pane&gt;\n\n        &lt;div rg-permission-if="low-level-read"&gt;\n          &lt;rg-tabs-pane\n            x-title="{{ \'License\' | translate }}"\n            tab-index="5" tab-id="license"\n            ng-if="service.licenseSettings || !hideAddLicense"\n          &gt;\n            &lt;rg-template template="licenseTemplate"&gt;&lt;/rg-template&gt;\n          &lt;/rg-tabs-pane&gt;\n        &lt;/div&gt;\n    &lt;/rg-tabs&gt;\n\n  &lt;hub-page-help url="Configuring-Service-Settings.html"&gt;\n    &lt;span translate&gt;Review the settings for the connected service in Hub:\n      &lt;ul class="hub-menu__list"&gt;\n        &lt;li class="hub-menu__list-item"&gt;General settings, including the connection settings, authentication parameters, and URIs.&lt;/li&gt;\n        &lt;li class="hub-menu__list-item"&gt;Resources that are provided by this service.&lt;/li&gt;\n        &lt;li class="hub-menu__list-item"&gt;Permissions that are specific to this service.&lt;/li&gt;\n        &lt;li class="hub-menu__list-item"&gt;Default roles that are provided by the service.&lt;/li&gt;\n        &lt;li class="hub-menu__list-item"&gt;The license that is associated with the service.&lt;/li&gt;\n      &lt;/ul&gt;\n    &lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},907:(e,t,n)=&gt;{e.exports='&lt;div class="container container_form" hub-resource="ServiceResource"&gt;\n  &lt;div class="ring-form__group" ng-show="!(service | isSafeService)"&gt;\n    &lt;div class="ring-form__control"&gt;\n      &lt;rg-icon size="14" glyph="'+n(24193)+'" title="{{ \'This service uses unsecured connection\' | translate }}" class="global__warning"&gt;&lt;/rg-icon&gt;\n      &lt;span translate&gt;This service uses unsecured connection&lt;/span&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;form-save item="serviceData.service" draft="serviceDraft"\n             collections="{viewers: HeaderVisibleGroupsResource}"&gt;\n    &lt;form-control-edit-text\n      data-test="name-field"\n      data-label="{{ \'Name\' | translate }}"\n      data-model="serviceDraft.name"\n      data-extra-class="ring-input-size_md"\n      data-disabled="!updatable"\n      data-required="true"&gt;\n    &lt;/form-control-edit-text&gt;\n\n    &lt;form-control-text\n      data-test="id-field"\n      data-label="{{ \'ID\' | translate }}"\n      data-text="{{serviceDraft.id}}"\n    &gt;&lt;/form-control-text&gt;\n\n    &lt;form-control-text\n      data-test="key-field"\n      data-label="{{ \'Key\' | translate }}"\n      data-text="{{serviceDraft.key}}"\n    &gt;&lt;/form-control-text&gt;\n\n    &lt;form-control-icon\n      data-test="icon-field"\n      x-disabled="!updatable"\n      x-label="{{ \'Image\' | translate }}"\n      x-model="serviceDraft.iconUrl"\n    &gt;&lt;/form-control-icon&gt;\n\n    &lt;div class="ring-form__group" ng-show="updatable &amp;&amp; !isHosted"&gt;\n      &lt;label class="ring-form__label" translate&gt;Secret&lt;/label&gt;\n\n      &lt;div class="ring-form__control"&gt;\n        &lt;rg-button delayed="true" rg-promised-click="changeSecret()"&gt;&lt;span translate&gt;Change&lt;/span&gt;&lt;/rg-button&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;form-control-edit-text\n      data-test="home-url-field"\n      data-required="serviceData.service.id === \'0-0-0-0-0\'"\n      data-extra-class="ring-input-size_l"\n      data-label="{{ \'Home URL\' | translate }}"\n      data-model="serviceDraft.homeUrl"\n      data-type="url"\n      data-disabled="!updatable"&gt;\n        &lt;rg-button-link class="control-button" ng-href="{{serviceDraft.homeUrl}}"\n                        target="_blank" ng-show="serviceDraft.homeUrl"&gt;\n          &lt;span translate&gt;Open URL&lt;/span&gt;\n        &lt;/rg-button-link&gt;\n    &lt;/form-control-edit-text&gt;\n\n    &lt;form-control-edit-text\n      data-test="user-uri-pattern-field"\n      data-extra-class="ring-input-size_l"\n      data-label="{{ \'User URI pattern\' | translate }}"\n      data-model="serviceDraft.userUriPattern"\n      data-disabled="!updatable"&gt;\n      &lt;description&gt;&lt;span translate&gt;Use :id and :login to reference the id or login of the user&lt;/span&gt;&lt;/description&gt;\n    &lt;/form-control-edit-text&gt;\n\n    &lt;form-control-edit-text\n      data-test="group-uri-pattern-field"\n      data-extra-class="ring-input-size_l"\n      data-label="{{ \'Group URI pattern\' | translate }}"\n      data-model="serviceDraft.groupUriPattern"\n      data-disabled="!updatable"&gt;\n      &lt;description&gt;&lt;span translate&gt;Use :id and :name to reference the id or name of the group&lt;/span&gt;&lt;/description&gt;\n    &lt;/form-control-edit-text&gt;\n\n    &lt;form-control-edit-textarea\n      data-test="base-urls-field"\n      rg-permission="low-level-read"\n      data-label="{{\'Base URLs\' | translate}}"\n      data-extra-class="ring-input-size_l ring-input-height_l"\n      data-model="serviceDraft.baseUrls"\n      data-disabled="!updatable"\n      data-array="true"\n    &gt;&lt;/form-control-edit-textarea&gt;\n\n    &lt;form-control-edit-textarea\n      data-test="redirect-uris-field"\n      rg-permission="low-level-read"\n      data-label="{{\'Redirect URIs\' | translate}}"\n      data-extra-class="ring-input-size_l ring-input-height_l"\n      data-model="serviceDraft.redirectUris"\n      data-disabled="!updatable"\n      data-array="true"\n    &gt;\n      &lt;content ng-show="serviceDraft.untrustedRedirectUris"&gt;\n        &lt;div ng-repeat="untrustedUri in serviceDraft.untrustedRedirectUris"\n             ng-controller="ServiceUntrustedRedirectUriCtrl"&gt;\n          &lt;div class="user-page__login_block"&gt;\n            &lt;rg-icon size="14" glyph="'+n(24193)+'" title="{{ \'This service was accessed by this URI\' | translate }}" class="global__warning"&gt;&lt;/rg-icon&gt;\n\n            {{:: untrustedUri.redirectURI }} &lt;span\n            class="user-page__last-access"\n            translate&gt;â€” Last access: {{:: untrustedUri.triedAt| date:\'mediumDate\' }}&lt;/span&gt;\n          &lt;/div&gt;\n\n          &lt;div rg-permission="low-level"&gt;\n            &lt;rg-button rg-promised-click="acceptRedirectUri(untrustedUri)" promised-mode="loader"&gt;\n              &lt;span translate title="{{\'Save as a valid redirect URI for the service\' | translate}}"&gt;Allow access&lt;/span&gt;\n            &lt;/rg-button&gt;\n\n            &lt;rg-button rg-promised-click="rejectRedirectUri(untrustedUri)" promised-mode="loader"&gt;\n              &lt;span translate&gt;Ignore&lt;/span&gt;\n            &lt;/rg-button&gt;\n          &lt;/div&gt;\n        &lt;/div&gt;\n      &lt;/content&gt;\n      &lt;description&gt;\n        &lt;span translate&gt;Relative URIs are resolved against the service Home URL and Base URLs&lt;/span&gt;\n      &lt;/description&gt;\n    &lt;/form-control-edit-textarea&gt;\n\n    &lt;groups-picker\n      data-test="header-visible-groups-field"\n      rg-permission="low-level-read"\n      label="{{\'Access\' | translate}}"\n      placeholder="{{\'Add groups\' | translate}}"\n      model="serviceDraft.viewers"\n    &gt;\n      &lt;description&gt;\n        &lt;span translate&gt;Grants group members access to the application from the Services menu&lt;/span&gt;\n      &lt;/description&gt;\n    &lt;/groups-picker&gt;\n\n    &lt;hub-audit-link entity="service" principal&gt;&lt;/hub-audit-link&gt;\n\n    &lt;hub-audit-link\n      ng-if="service.licenseSettings"\n      entity="service.licenseSettings"\n      name="{{ \'License\' | translate }}"\n      no-title="true"\n    &gt;&lt;/hub-audit-link&gt;\n  &lt;/form-save&gt;\n\n  &lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n  &lt;div class="ring-form__title ring-form__title_separated" translate&gt;Application&lt;/div&gt;\n\n  &lt;form-control-edit-text\n    data-test="application-name-field"\n    data-label="{{ \'Name\' | translate }}"\n    data-model="service.applicationName"\n    data-disabled="true"&gt;\n  &lt;/form-control-edit-text&gt;\n\n  &lt;form-control-edit-text\n    data-test="version-field"\n    data-label="{{ \'Version\' | translate }}"\n    data-model="service.version"\n    data-disabled="true"&gt;\n  &lt;/form-control-edit-text&gt;\n\n  &lt;form-control-edit-text\n    data-test="vendor-field"\n    data-label="{{ \'Vendor\' | translate }}"\n    data-model="service.vendor"\n    data-disabled="true"&gt;\n  &lt;/form-control-edit-text&gt;\n\n  &lt;div class="ring-form__group" data-test="release-date-field"&gt;\n    &lt;label class="ring-form__label"&gt;{{ \'Release date\' | translate }}&lt;/label&gt;\n\n    &lt;div class="ring-form__control hub-form-control"&gt;\n      &lt;input class="ring-input ring-input-size_md ring-js-shortcuts"\n             ng-value="service.releaseDate | date:\'mediumDate\'"\n             ng-disabled="true"&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},16935:e=&gt;{e.exports='&lt;div ng-controller="ChangeSecret" class="service-page__change-secret-dialog"&gt;\n  &lt;div class="ring-form__group" rg-dialog-title="{{ \'Change service secret\' | translate }}"&gt;\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n      &lt;div rg-button-group&gt;\n        &lt;rg-button active="generate" ng-click="switchMode(true)"&gt;\n          &lt;span translate&gt;Generate&lt;/span&gt;\n        &lt;/rg-button&gt;\n        &lt;rg-button active="!generate" ng-click="switchMode(false)"&gt;\n          &lt;span translate&gt;Key in&lt;/span&gt;\n        &lt;/rg-button&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;span ng-show="generate"&gt;\n    &lt;label class="ring-form__label" translate&gt;New Secret&lt;/label&gt;\n\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n      &lt;div&gt;{{ dialog.data.secret }}&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/span&gt;\n\n  &lt;span ng-if="!generate"&gt;\n    &lt;div class="ring-form__group"&gt;\n      &lt;label class="ring-form__label" for="create-dialog__secret" translate&gt;New Secret&lt;/label&gt;\n\n      &lt;div class="ring-form__control ring-form__control_small"&gt;\n        &lt;input id="create-dialog__secret" name="secret" ng-required="!generate" type="password"\n               ng-class="dialog.dialogForm.secret | rgInputClass" ng-model="dialog.data.secret"\n               class="ring-input-size_md"&gt;\n\n        &lt;div rg-error-bubble="dialog.dialogForm.secret"&gt;&lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-form__group service-page__change-secret-confirm"&gt;\n      &lt;label class="ring-form__label" for="create-dialog__confirm" translate translate-context="Form field label"&gt;Confirm&lt;/label&gt;\n\n      &lt;div class="ring-form__control ring-form__control_small"&gt;\n        &lt;input id="create-dialog__confirm" name="confirm" ng-required="!generate" rg-equal-value="dialog.data.secret" type="password"\n               ng-class="dialog.dialogForm.confirm | rgInputClass" ng-model="dialog.data.confirm"\n               class="ring-input-size_md"&gt;\n\n        &lt;div rg-error-bubble="dialog.dialogForm.confirm"&gt;&lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/span&gt;\n\n  &lt;div&gt;\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n      &lt;div class="ring-form__control__description service-page__change-secret-dialog-description"&gt;\n        &lt;div translate class="service-page__change-secret-description-item"&gt;\n          If the service secret is saved on the client side, you must also change the service secret in the connected service.\n        &lt;/div&gt;\n        &lt;div translate class="service-page__change-secret-description-item service-page__change-secret-description-item_warning"&gt;\n          Proceed only if you are able to make the relevant changes on the service side and in Hub.\n        &lt;/div&gt;\n        &lt;div class="service-page__change-secret-description-item"&gt;\n          &lt;span translate&gt;For instructions, refer to the&lt;/span&gt; &lt;hub-help-link url="Change-the-Service-Secret.html"&gt;&lt;span translate-comment="documentation link in service/settings -&gt; change secret dialog" translate&gt;documentation&lt;/span&gt;&lt;/hub-help-link&gt;.\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},75821:(e,t,n)=&gt;{e.exports='&lt;div rg-error-page&gt;\n  &lt;div class="hub-header"&gt;\n    &lt;rg-breadcrumb&gt;{{ \'System Settings\' | translate }}&lt;/rg-breadcrumb&gt;\n  &lt;/div&gt;\n\n  &lt;div class="container container_legacy" hub-resource="SettingsResource"&gt;\n    &lt;form-save items="items" after-save="reloadIfLocaleChanged(old, new)"&gt;\n      &lt;form-control-select\n        data-disabled="readOnly || languageSelectorDisabled"\n        data-label="{{ \'System Language\' | translate }}"\n        data-model="publicSettings.locale"\n        data-options="o.label describe as getLocaleDescription(o) for o in locales track by o.name"\n      &gt;\n        &lt;description ng-if="publicSettings.locale.community"&gt;\n          &lt;rg-icon glyph="'+n(24193)+'" size="12" class="global__warning"&gt;&lt;/rg-icon&gt;\n          &lt;span translate&gt;Localization for this language is supported by the Hub user community. Untranslated interface text appears in English. You may encounter other errors and inconsistencies. If you\'d like to help the community with this translation, you\'re more than welcome to join.&lt;/span&gt;\n          &lt;a class="ring-link" data-test="crowdinLink" target="_blank"\n             ng-href="https://crowdin.com/project/youtrack-custom-localization" translate&gt;View translations&lt;/a&gt;\n        &lt;/description&gt;\n      &lt;/form-control-select&gt;\n\n      &lt;form-control-toggle\n        data-disabled="readOnly"\n        data-label="{{ \'Read-only Mode\' | translate }}"\n        data-model="backupSettings.databaseReadonly"\n      &gt;&lt;/form-control-toggle&gt;\n\n      &lt;form-control-icon\n        x-disabled="readOnly"\n        x-label="{{ \'Company Logo\' | translate }}"\n        x-model="publicSettings.companyLogo"&gt;\n      &lt;/form-control-icon&gt;\n\n      &lt;form-control-button-toggle\n        data-disabled="readOnly"\n        data-label="{{ \'Anonymization scheme\' | translate }}"\n        data-primary-label="{{ \'Hashed\' | translate }}"\n        data-secondary-label="{{ \'Randomized\' | translate }}"\n        data-model="internalSettings.hashAnonymization"\n        data-test="anonymization-scheme"\n      &gt;\n        &lt;description&gt;&lt;span translate&gt;If hashed, personal data is pseudonymised with SHA-256 hashes.&lt;/span&gt;\n        &lt;/description&gt;\n      &lt;/form-control-button-toggle&gt;\n\n      &lt;form-control-edit-textarea\n        ng-if="!isHosted"\n        data-disabled="readOnly"\n        data-test="debug-categories-field"\n        data-extra-class="ring-input-size_l ring-input-height_l"\n        data-label="{{ \'Logging event categories\' | translate }}"\n        data-model="internalSettings.debugCategories"\n        data-array="true"&gt;\n        &lt;description&gt;&lt;span translate&gt;To enable DEBUG level logging, enter a line-separated list of categories. To enable TRACE level, append the category name with ":trace". For supported event categories, contact the {{ hostServiceName }} support team.&lt;/span&gt;&lt;/description&gt;\n      &lt;/form-control-edit-textarea&gt;\n\n      &lt;form-control-text\n        data-label="{{ \'Experimental Features\' | translate }}"\n        ng-if="showFeatures"&gt;\n        &lt;a class="ring-link" ng-href="features" data-test="features-page-link"&gt;\n          &lt;span translate&gt;Open features configuration page&lt;/span&gt;\n        &lt;/a&gt;\n      &lt;/form-control-text&gt;\n\n      &lt;hub-audit-link entity="[publicSettings, internalSettings]"\n                  name="{{ \'Settings\' | translate }}"&gt;&lt;/hub-audit-link&gt;\n    &lt;/form-save&gt;\n  &lt;/div&gt;\n\n  &lt;hub-page-help url="Configuring-HUB-System-Settings.html"&gt;\n    &lt;span translate&gt;Manage system-wide settings for your Hub installation.&lt;br&gt;Set the default system language and limit the duration for connections to the Hub service.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},27027:e=&gt;{e.exports='&lt;div hub-resource="SettingsResource" ng-controller="SettingsNotificationCtrl" rg-error-page&gt;\n  &lt;rg-template template="headerTemplate"&gt;&lt;/rg-template&gt;\n\n  &lt;div class="container container_legacy"&gt;\n    &lt;div ng-show="ready"&gt;\n      &lt;form-save\n        item="notificationSettings"\n        draft="draft"\n        on-dirty-change="isFormDirty = $isDirty"\n      &gt;\n        &lt;form-control-select data-test="protocol-field"\n                             data-disabled="readOnly"\n                             data-label="{{ \'Protocol\' | translate }}"\n                             data-model="draft.protocol"\n                             data-options="o.value as o.label for o in smtpProtocols track by o.value"&gt;\n        &lt;/form-control-select&gt;\n\n        &lt;form-control-toggle\n          data-label="{{ \'Connect anonymously\' | translate }}"\n          data-model="draft.smtpAnonymous"\n          data-disabled="readOnly"\n        &gt;\n\n        &lt;/form-control-toggle&gt;\n\n        &lt;form-control-edit-text data-test="host-field"\n                                data-disabled="readOnly"\n                                data-label="{{ \'Host\' | translate }}"\n                                data-model="draft.host"\n                                data-extra-class="ring-input-size_md"&gt;\n        &lt;/form-control-edit-text&gt;\n\n        &lt;form-control-edit-text data-test="port-field"\n                                data-disabled="readOnly"\n                                data-label="{{ \'Port\' | translate }}"\n                                data-type="number"\n                                data-model="draft.port"\n                                data-extra-class="ring-input-size_md"\n                                data-required="true"&gt;\n        &lt;/form-control-edit-text&gt;\n\n        &lt;form-control-edit-text data-test="from-field"\n                                data-disabled="readOnly"\n                                data-label="{{ \'Email â€œFromâ€ address\' | translate }}"\n                                data-model="draft.from"\n                                data-extra-class="ring-input-size_l"\n                                data-validators="emailValidators"\n                                data-show-warning="isFormDirty"&gt;\n          &lt;description&gt;&lt;span translate class="ring-input-size_l"&gt;Used as the â€˜Fromâ€™ address in email notifications. Use the format "sender&amp;nbsp;name"&amp;nbsp;&amp;lt;email@yourdomain.com&amp;gt;  or simply enter a valid email address.&lt;/span&gt;\n          &lt;/description&gt;\n        &lt;/form-control-edit-text&gt;\n\n        &lt;div class="ring-form__group hub-section-title"&gt;\n          &lt;label class="ring-form__label_title" translate&gt;Security and Authorization&lt;/label&gt;\n        &lt;/div&gt;\n\n        &lt;form-control-edit-text data-test="username-field"\n                                data-disabled="readOnly || draft.smtpAnonymous"\n                                data-label="{{ \'Username\' | translate }}"\n                                data-model="draft.login"\n                                data-extra-class="ring-input-size_md"&gt;\n        &lt;/form-control-edit-text&gt;\n\n        &lt;div class="ring-form__group" data-test="password-field"&gt;\n          &lt;label class="ring-form__label"\n                 translate&gt;Password&lt;/label&gt;\n\n          &lt;div class="ring-form__control"&gt;\n            &lt;rg-button-set&gt;\n              &lt;rg-button\n                ng-disabled="readOnly || draft.smtpAnonymous"\n                delayed="true"\n                rg-promised-click="changePassword()"\n              &gt;&lt;span translate&gt;Change password&lt;/span&gt;&lt;/rg-button&gt;\n\n              &lt;rg-button ng-show="notificationSettings.passwordDefined" ng-click="resetPassword()"&gt;\n                &lt;span translate&gt;Delete password&lt;/span&gt;\n              &lt;/rg-button&gt;\n            &lt;/rg-button-set&gt;\n          &lt;/div&gt;\n        &lt;/div&gt;\n\n        &lt;ssl-key-picker data-test="ssl-key-field" disabled="readOnly" item="draft"&gt;&lt;/ssl-key-picker&gt;\n\n        &lt;hub-audit-link entity="draft" name="{{ \'SMTP\' | translate }}"&gt;&lt;/hub-audit-link&gt;\n      &lt;/form-save&gt;\n    &lt;/div&gt;\n    &lt;rg-template template="configureButtonTemplate"&gt;&lt;/rg-template&gt;\n  &lt;/div&gt;\n\n  &lt;hub-page-help url="Configuring-HUB-SMTP-Settings.html"&gt;\n    &lt;span translate&gt;Connect to an SMTP server to send notification messages from Hub by email.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},48937:(e,t,n)=&gt;{e.exports='&lt;div ng-show="clusters.length"&gt;\n  &lt;div rg-button-toolbar&gt;\n    &lt;rg-button\n      mode="primary"\n      title="{{ \'Merge all found sets of duplicate user accounts\' | translate }}"\n      ng-click="mergeAll()"\n    &gt;\n      &lt;span translate&gt;Merge all&lt;/span&gt;\n    &lt;/rg-button&gt;\n\n    &lt;rg-button\n      title="{{ \'Merge sets of duplicate user accounts on this page\' | translate }}"\n      ng-click="mergePage()"\n      ng-show="clusterCount &gt; resultsPerPage"\n    &gt;\n      &lt;span translate&gt;Merge page&lt;/span&gt;\n    &lt;/rg-button&gt;\n\n    &lt;rg-button\n      rg-select\n      select-type="dropdown"\n      options="getReliabilityLabel(item) for item in loadReliabilities() track by item.id"\n      on-select="onReliabilitySelect(selected.originalModel)"\n    &gt;\n      &lt;span translate&gt;Search again&lt;/span&gt;\n      &lt;rg-icon glyph="'+n(96971)+'" size="14"&gt;&lt;/rg-icon&gt;\n    &lt;/rg-button&gt;\n  &lt;/div&gt;\n\n  &lt;div rg-button-toolbar class="hub-header__controls__right-toolbar"&gt;\n    &lt;div rg-button-group&gt;\n      &lt;span class="pagination__current-page" translate&gt;{{ currentPage() }} of {{ clusterCount }}&lt;/span&gt;\n    &lt;/div&gt;\n\n    &lt;div rg-button-group&gt;\n      &lt;rg-button\n        icon="'+n(54374)+'"\n        icon-size="14"\n        short="true"\n        ng-click="prevPage()"\n        ng-disabled="skip &lt;= 0"\n      &gt;&lt;/rg-button&gt;\n\n      &lt;rg-button\n        icon="'+n(25426)+'"\n        icon-size="14"\n        short="true"\n        ng-click="nextPage()"\n        ng-disabled="skip + resultsPerPage &gt;= clusterCount -1"\n      &gt;&lt;/rg-button&gt;\n    &lt;/div&gt;\n\n    &lt;rg-button icon="'+n(96971)+'"\n               rg-select\n               select-type="dropdown"\n               options="getPerPageOptionLabel(item) for item in resultsPerPageOptions track by item"\n               on-select="onChangeCountPerPage(selected.originalModel)"&gt;\n      &lt;span translate&gt;{{ $parent.resultsPerPage }} per page&lt;/span&gt;\n    &lt;/rg-button&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-nothing-found" ng-show="!clusters.length"&gt;\n    &lt;rg-icon height="78" width="100" glyph="'+n(1081)+'" class="search-error__img"&gt;&lt;/rg-icon&gt;\n    &lt;span class="search-error__title" translate&gt;No matches for your search request were found&lt;/span&gt;\n\n  &lt;rg-button icon="'+n(96971)+'" rg-select\n             select-type="dropdown"\n             options="getReliabilityLabel(item) for item in loadReliabilities() track by item.id"\n             on-select="onReliabilitySelect(selected.originalModel)"&gt;\n    &lt;span translate&gt;Search again&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n\n&lt;rg-island ng-repeat="cluster in clusters" class="duplicates-cluster"&gt;\n  &lt;table class="duplicates-cluster__block"&gt;\n    &lt;tr ng-repeat="dupUser in cluster.users" class="duplicates-cluster__row" data-test="user-row"&gt;\n      &lt;td class="duplicates-cluster__row__img"&gt;\n        &lt;div class="ring-form__group_short"&gt;\n          &lt;rg-radio\n            data-test="user-avatar-picker"\n            ng-value="dupUser.user.login"\n            ng-model="cluster.login"\n            ng-change="updateCluster(cluster)"\n            name="login-{{ cluster.users[0].user.id }}"\n          &gt;\n            &lt;img data-test="user-avatar-value" ng-src="{{ dupUser.user.profile.avatar.url }}" class="duplicates-cluster__row__img__img"/&gt;\n          &lt;/rg-radio&gt;\n        &lt;/div&gt;\n      &lt;/td&gt;\n\n      &lt;td class="duplicates-cluster__row__name"&gt;\n          &lt;a ng-href="users/{{ dupUser.user.id }}"\n             data-test="user-login-value"\n             title="{{ dupUser.user.id }}"\n             class="ring-link duplicates-cluster__row__name_title"&gt;{{ dupUser.user.login }}&lt;/a&gt;\n          &lt;rg-badge disabled="true" ng-show="dupUser.user.banned"&gt;\n            &lt;span ng-if="dupUser.user.banBadge"&gt;{{dupUser.user.banBadge}}&lt;/span&gt;\n            &lt;span ng-if="!dupUser.user.banBadge" translate&gt;banned&lt;/span&gt;\n          &lt;/rg-badge&gt;\n      &lt;/td&gt;\n\n      &lt;td class="duplicates-cluster__row__name"&gt;\n        &lt;div class="ring-form__group_short"&gt;\n          &lt;rg-radio\n            data-test="user-name-picker"\n            ng-value="dupUser.user.name"\n            ng-model="cluster.name"\n            ng-change="updateCluster(cluster)"\n            name="name-{{ cluster.users[0].user.id }}"\n          &gt;\n            &lt;span data-test="user-name-value"&gt;{{ dupUser.user.name }}&lt;/span&gt;\n          &lt;/rg-radio&gt;\n        &lt;/div&gt;\n      &lt;/td&gt;\n\n      &lt;td&gt;\n        &lt;div class="ring-form__group_short"&gt;\n\n          &lt;rg-radio\n            data-test="user-email-picker"\n            ng-value="dupUser.user.profile.email.email"\n            ng-model="cluster.email"\n            ng-change="updateCluster(cluster)"\n            name="email-{{ cluster.users[0].user.id }}"\n          &gt;\n            &lt;span data-test="user-email-value"&gt;{{ dupUser.user.profile.email.email }}&lt;/span&gt;\n            &lt;span class="duplicates-progress__not-verified-email" ng-show="!dupUser.user.profile.email.verified" translate&gt;not verified&lt;/span&gt;\n          &lt;/rg-radio&gt;\n        &lt;/div&gt;\n      &lt;/td&gt;\n\n      &lt;td class="duplicates-cluster__row__remove"&gt;\n        &lt;rg-icon size="14" glyph="'+n(9912)+'" ng-click="removeUser(dupUser)" data-test="remove-user" ng-show="cluster.users.length &gt; 2" class="ring-link global__icon_grey duplicates-cluster__row__remove__icon"&gt;&lt;/rg-icon&gt;\n      &lt;/td&gt;\n    &lt;/tr&gt;\n  &lt;/table&gt;\n\n  &lt;div rg-panel&gt;\n    &lt;div class="duplicates-footer-block" ng-click="updateCluster(cluster)" data-test="update-cluster"&gt;\n      &lt;rg-checkbox ng-model="cluster.banned" data-test="ban-user"&gt;\n        &lt;span translate&gt;Ban User&lt;/span&gt;\n      &lt;/rg-checkbox&gt;\n    &lt;/div&gt;\n\n    &lt;div class="duplicates-footer-block"&gt;\n      &lt;rg-button mode="primary" ng-click="mergeCluster(cluster)" data-test="do-merge"&gt;\n        &lt;span translate&gt;Merge&lt;/span&gt;\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n\n    &lt;div class="duplicates-footer-block"&gt;\n      &lt;span translate&gt;as &lt;/span&gt;\n      &lt;span&gt;{{ cluster.login }},\n              {{ cluster.name }},\n              {{ cluster.email }}&lt;/span&gt;\n    &lt;/div&gt;\n\n    &lt;div rg-button-toolbar class="duplicates-cluster__footer__dont-merge"&gt;\n      &lt;rg-button ng-click="removeCluster(cluster)" data-test="dont-merge"&gt;\n        &lt;span translate&gt;Don\'t merge&lt;/span&gt;\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/rg-island&gt;\n'},72234:e=&gt;{e.exports='&lt;div hub-resource="UserResource"&gt;\n  &lt;hub-header placeholder="{{ \'Filter users\' | translate }}"&gt;\n    &lt;rg-breadcrumb label="{{ \'Users\' | translate }}" link="users?query={{query}}"\n                   class="ring-breadcrumb_header"&gt;\n      &lt;span translate&gt;Duplicates&lt;/span&gt;\n    &lt;/rg-breadcrumb&gt;\n  &lt;/hub-header&gt;\n&lt;/div&gt;\n\n&lt;div class="container"&gt;\n  &lt;div class="duplicates-progress" ng-show="isSearchInProgress()"&gt;\n    &lt;span class="duplicates-progress__title" translate&gt;Searching for duplicates&lt;/span&gt;\n    &lt;rg-progress-bar class-name="\'duplicates-progress__progress-bar\'" value="searchProgress.percent"/&gt;\n  &lt;/div&gt;\n\n  &lt;rg-template ng-controller="UserDuplicatesFind" ng-show="searchProgress.phase == \'after\'"\n    template="resultsTemplate"&gt;&lt;/rg-template&gt;\n&lt;/div&gt;\n'},2231:(e,t,n)=&gt;{e.exports='&lt;div class="ring-form__group" rg-dialog-title="{{ \'New User\' | translate }}"&gt;\n  &lt;div class="ring-form__control"&gt;\n    &lt;div rg-button-group&gt;\n      &lt;rg-button\n        active="!dialog.data.createAccount"\n        ng-click="dialog.data.setMode(false)"\n      &gt;\n        &lt;span translate&gt;Invite users&lt;/span&gt;\n      &lt;/rg-button&gt;\n\n      &lt;rg-button\n        active="dialog.data.createAccount"\n        ng-click="dialog.data.setMode(true)"\n      &gt;\n        &lt;span translate&gt;Create user&lt;/span&gt;\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group" ng-if="!dialog.data.createAccount"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__emails" translate&gt;Emails&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;textarea\n      id="create-dialog__emails"\n      name="emails"\n      msd-elastic="\\n"\n      required email-list\n      class="ring-input ring-input_no-resize ring-input-size_m ring-input-height_l"\n      ng-class="dialog.dialogForm.emails | rgInputClass"\n      ng-model="dialog.data.emails"\n      ng-attr-placeholder="{{ \'Space-separated list of email addresses\' | translate }}"\n    &gt;&lt;/textarea&gt;\n\n    \x3c!-- textarea + placeholder + IE = https://github.com/angular/angular.js/issues/5025 --\x3e\n    &lt;div ng-show="dialog.data.invite.state === 1"&gt;\n      &lt;span translate&gt;Inviting user {{ dialog.data.invite.progress.done }} of {{ dialog.data.invite.progress.total }}&lt;/span&gt;\n    &lt;/div&gt;\n\n    &lt;div ng-show="dialog.data.invite.state === 2"&gt;\n      &lt;div ng-show="dialog.data.invite.successEmails.length"&gt;\n        &lt;span translate\n              translate-n="dialog.data.invite.successEmails.length"\n              translate-plural="Successfully invited {{ $count }} users"&gt;Successfully invited {{ $count }} user&lt;/span&gt;\n      &lt;/div&gt;\n\n      &lt;div class="hub-text-error"&gt;\n        &lt;div ng-show="dialog.data.invite.failedEmails.length"&gt;\n          &lt;span translate\n              translate-n="dialog.data.invite.failedEmails.length"\n              translate-plural="Failed to invite {{ $count }} users"&gt;Failed to invite {{ $count }} user&lt;/span&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="hub-text-error" ng-repeat="fail in dialog.data.invite.failedEmails"&gt;\n        &lt;div ng-if="dialog.data.invite.antiSpamBanError !== fail.error"&gt;\n          &lt;span translate&gt;{{fail.email}}: {{fail.error}}&lt;/span&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n      &lt;div class="hub-text-error" ng-if="dialog.data.invite.antiSpamBanError !== \'\'"&gt;\n        &lt;span&gt;{{dialog.data.invite.antiSpamBanError}}&lt;/span&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n    &lt;div rg-error-bubble="dialog.dialogForm.emails"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group" ng-if="dialog.data.userTypes.length"&gt;\n    &lt;label class="ring-form__label" translate&gt;User type&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;rg-select class="ring-input-size_md"\n                 options="o.name for o in dialog.data.userTypes track by o.id"\n                 ng-model="dialog.data.item.userType"&gt;&lt;/rg-select&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div ng-if="dialog.data.createAccount"&gt;\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Full Name&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input id="create-dialog__name" name="name" type="text"\n             ng-class="dialog.dialogForm.name | rgInputClass"\n             class="ring-input-size_md"\n             autocomplete="off"\n             ng-model="dialog.data.item.name" required&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__email" translate&gt;Email&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input id="create-dialog__email" name="email" type="email"\n             ng-class="dialog.dialogForm.email | rgInputClass"\n             class="ring-input-size_md"\n             autocomplete="off"\n             ng-model="dialog.data.item.details[0].email.email"\n      &gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.email"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group" ng-if="dialog.data.item.userType"&gt;\n    &lt;label class="ring-form__label" translate&gt;User type&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;rg-select class="ring-input-size_md"\n                 options="o.name for o in dialog.data.userTypes track by o.id"\n                 ng-model="dialog.data.item.userType"\n      &gt;&lt;/rg-select&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__password"\n           translate&gt;Password&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n\n      &lt;password-strength value="dialog.data.item.details[0].password.value" username="dialog.data.item.name" class="ring-input-size_md"&gt;\n        &lt;input id="create-dialog__password" name="password" required type="password"\n               autocomplete="off"\n               ng-class="dialog.dialogForm.password | rgInputClass"\n               ng-model="dialog.data.item.details[0].password.value"&gt;\n      &lt;/password-strength&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.password"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__confirm"\n           translate translate-context="Form field label"&gt;Confirm&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input\n        id="create-dialog__confirm"\n        name="confirm"\n        rg-equal-value="dialog.data.item.details[0].password.value"\n        type="password"\n        autocomplete="off"\n        ng-class="dialog.dialogForm.confirm | rgInputClass"\n        class="ring-input-size_md"\n        ng-model="dialog.data.confirm"\n      &gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.confirm"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;div class="ring-form__control  user-list__create-dialog_checkbox"&gt;\n      &lt;rg-checkbox ng-model="dialog.data.item.details[0].passwordChangeRequired"&gt;\n        &lt;span translate&gt;Force changing password&lt;/span&gt;\n      &lt;/rg-checkbox&gt;\n      &lt;rg-icon rg-tooltip=":: dialog.data.hint" glyph="'+n(69840)+'" size="16" class="ring-tooltip-ng__hint-icon"&gt;&lt;/rg-icon&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},55196:(e,t,n)=&gt;{e.exports='&lt;div ng-controller="UserListSidebarCtrl"&gt;\n    &lt;img class="ring-sidebar__avatar" ng-if="$ctrl.sidebarElement.profile.avatar.url"\n         ng-src="{{ $ctrl.sidebarElement.profile.avatar.url }}"/&gt;\n\n    &lt;h2 class="ring-sidebar__title"&gt;&lt;a class="ring-link" href="users/{{ $ctrl.sidebarElement.login | encodeLogin:$ctrl.sidebarElement.id }}"&gt;{{ $ctrl.sidebarElement.login\n        }}&lt;/a&gt;\n      &lt;rg-badge ng-show="$ctrl.sidebarElement.banned" class-name="\'title-badge\'" disabled="true"&gt;&lt;span ng-if="$ctrl.sidebarElement.banBadge"&gt;{{$ctrl.sidebarElement.banBadge}}&lt;/span&gt;&lt;span ng-if="!$ctrl.sidebarElement.banBadge" translate&gt;banned&lt;/span&gt;&lt;/rg-badge&gt;&lt;/h2&gt;\n\n    &lt;div class="ring-sidebar__section"&gt;\n        &lt;span class="ring-sidebar__section-title" translate&gt;Full Name&lt;/span&gt;\n\n        &lt;div class="ring-sidebar__section-text"&gt;{{ $ctrl.sidebarElement.name }}&lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.profile.email.email"&gt;\n        &lt;rg-icon glyph="'+n(55543)+'" class="ring-sidebar__section-icon"&gt;&lt;/rg-icon&gt;\n\n        &lt;span class="ring-sidebar__section-title" translate&gt;Email&lt;/span&gt;\n\n        &lt;div class="ring-sidebar__section-text"&gt;\n            &lt;span&gt;{{ $ctrl.sidebarElement.profile.email.email }}&lt;/span&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.creationTime"&gt;\n        &lt;span class="ring-sidebar__section-title" translate&gt;Registered&lt;/span&gt;\n\n        &lt;div class="ring-sidebar__section-text"&gt;{{ $ctrl.sidebarElement.creationTime | date:\'medium\' }}&lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-sidebar__section" ng-if="$ctrl.sidebarElement.lastAccessTime"&gt;\n        &lt;span class="ring-sidebar__section-title" translate&gt;Last Login&lt;/span&gt;\n\n        &lt;div class="ring-sidebar__section-text"&gt;{{ $ctrl.sidebarElement.lastAccessTime | date:\'medium\' }}&lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.VCSUserNames.length"&gt;\n        &lt;span class="ring-sidebar__section-title"\n              translate-n="$ctrl.sidebarElement.VCSUserNames.length"\n              translate-plural="{{ $count }} VCS Usernames"\n              translate&gt;{{ $count }} VCS Username&lt;/span&gt;\n        &lt;div class="ring-sidebar__section-text"&gt;\n            &lt;span ng-repeat="vcsUserName in $ctrl.sidebarElement.VCSUserNames"&gt;{{ vcsUserName.name }}{{$last ? \'\' : \', \'}}&lt;/span&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.projectRoles.length"&gt;\n        &lt;rg-icon size="14" glyph="'+n(57522)+'" class="ring-sidebar__section-icon"&gt;&lt;/rg-icon&gt;\n\n        &lt;span class="ring-sidebar__section-title"\n              translate-n="$ctrl.sidebarElement.projectRoles.length"\n              translate-plural="{{ $count }} Roles"\n              translate&gt;{{ $count }} Role&lt;/span&gt;\n\n        &lt;div class="ring-sidebar__section-roster"&gt;\n              &lt;span class="roster_inline"\n                    hub-roster="$ctrl.sidebarElement.projectRoles"\n                    hub-roster-field="role"\n                    hub-roster-href-fn="roleHref"\n                    hub-roster-name="project.name + \' \' + role.name"\n                    hub-roster-remove="removeRole($ctrl.sidebarElement, role)"\n                    hub-roster-removable="canRemoveRole($ctrl.sidebarElement, role)"&gt;&lt;/span&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-sidebar__section" ng-show="$ctrl.sidebarElement.groups.length"&gt;\n        &lt;rg-icon glyph="'+n(46968)+'" class="ring-sidebar__section-icon"&gt;&lt;/rg-icon&gt;\n\n        &lt;span class="ring-sidebar__section-title"\n              translate-n="$ctrl.sidebarElement.groups.length"\n              translate-plural="{{ $count }} Groups"\n              translate&gt;{{ $count }} Group&lt;/span&gt;\n\n        &lt;div class="ring-sidebar__section-roster"&gt;\n            &lt;span class="roster_inline"\n                  hub-roster="$ctrl.sidebarElement.groups"\n                  hub-roster-field="group"\n                  hub-roster-href-fn="groupHref"\n                  hub-roster-remove="removeGroup($ctrl.sidebarElement, group)"\n                  hub-roster-removable="canRemoveGroup($ctrl.sidebarElement, group)"&gt;&lt;/span&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div ng-repeat="attribute in $ctrl.sidebarElement.profile.attributes"&gt;\n\n      &lt;div class="ring-sidebar__section" ng-if="attribute.prototype.showOnUserList" data-test="custom-attribute"&gt;\n\n        &lt;span class="ring-sidebar__section-title"&gt;{{attribute.prototype.name}}&lt;/span&gt;\n\n        &lt;div class="ring-sidebar__section-text"&gt;\n          &lt;span&gt;{{ getAttributeValue(attribute) || \'-\' }}&lt;/span&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n    &lt;/div&gt;\n\n&lt;/div&gt;\n'},72462:(e,t,n)=&gt;{e.exports='&lt;ng-controller ng-controller="HubTableSelectionCtrl as selectionCtrl"&gt;\n&lt;ng-controller ng-controller="UserListCreateCtrl as createCtrl"&gt;\n&lt;ng-controller ng-controller="UserListGroupManagerCtrl as managerCtrl"&gt;\n&lt;ng-controller ng-controller="UserListMergeCtrl as mergeCtrl"&gt;\n&lt;ng-controller ng-controller="UserListBanCtrl as banCtrl"&gt;\n&lt;ng-controller ng-controller="UserListDeleteCtrl as deleteCtrl"&gt;\n&lt;div rg-button-toolbar&gt;\n  &lt;rg-button\n    data-test="create-button"\n    mode="primary"\n    delayed="true"\n    rg-permission="user-create"\n    rg-promised-click="createCtrl.createUserDialog()"\n  &gt;&lt;span translate&gt;New user&lt;/span&gt;&lt;/rg-button&gt;\n\n  &lt;rg-button\n    title="{{ \'Add selected users to Group\' | translate }}"\n    loader="managerCtrl.addGroupToUsersLoader"\n    data-test="add-to-group-button"\n    ng-if="selectionCtrl.selection.size &gt;= 1"\n    rg-permission="group-update"\n\n    rg-select\n    select-type="dropdown"\n    options="item.name for item in managerCtrl.addToGroupDataSource(selectionCtrl.selection.items) track by item.id"\n    filter="true"\n    on-select="managerCtrl.addGroupToUsers(selectionCtrl.selection.items, selected.originalModel)"\n    not-found-message="{{\'No groups to add\' | translate}}"\n  &gt;\n    &lt;span translate&gt;Add to group&lt;/span&gt;\n    &lt;rg-icon glyph="'+n(96971)+'" size="14"&gt;&lt;/rg-icon&gt;\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    title="{{ \'Remove selected users from Group\' | translate }}"\n          loader="managerCtrl.removeGroupFromUsersLoader"\n    data-test="remove-from-group-button"\n    ng-if="selectionCtrl.selection.size &gt;= 1"\n    rg-permission="group-update"\n\n    rg-select\n    config="managerCtrl.selectConfig"\n    select-type="dropdown"\n    options="item.name for item in managerCtrl.removeFromGroupDataSource(selectionCtrl.selection.items) track by item.id"\n    filter="true"\n    on-select="managerCtrl.removeGroupFromUsers(selectionCtrl.selection.items, selected.originalModel)"\n    not-found-message="{{\'No groups to remove\' | translate}}"\n  &gt;\n    &lt;span translate&gt;Remove from group&lt;/span&gt;\n    &lt;rg-icon glyph="'+n(96971)+'" size="14"&gt;&lt;/rg-icon&gt;\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    ng-if="selectionCtrl.selection.size &gt;= 2"\n    title="{{ \'Merge selected users\' | translate }}"\n    data-test="merge-button"\n    rg-permission="user-update"\n    delayed="true"\n\n    rg-promised-click="mergeCtrl.merge(selectionCtrl.selection)"\n  &gt;&lt;span translate&gt;Merge&lt;/span&gt;&lt;/rg-button&gt;\n\n  &lt;rg-button\n    title="{{ \'Ban selected users\' | translate }}"\n    data-test="ban-button"\n    ng-if="banCtrl.isBanVisible(selectionCtrl.selection.items, true)"\n    rg-permission="user-update"\n\n    rg-promised-click="banCtrl.setBan(true, selectionCtrl.selection.items)"\n  &gt;\n    &lt;span translate&gt;Ban&lt;/span&gt;\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    title="{{ \'Unban selected users\' | translate }}"\n    data-test="unban-button"\n    ng-if="banCtrl.isBanVisible(selectionCtrl.selection.items, false)"\n    rg-permission="user-update"\n\n    rg-promised-click="banCtrl.setBan(false, selectionCtrl.selection.items)"\n    promised-mode="loader"\n  &gt;\n    &lt;span translate&gt;Unban&lt;/span&gt;\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    title="{{ \'Delete selected users\' | translate }}"\n    danger="true"\n    data-test="delete-button"\n    ng-if="selectionCtrl.selection.items.length &gt; 0"\n    rg-permission="user-delete"\n\n    rg-promised-click="deleteCtrl.remove(selectionCtrl.selection)"\n  &gt;\n    &lt;span translate&gt;Delete&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n'},37019:(e,t,n)=&gt;{e.exports='&lt;hub-user-type-filter&gt;&lt;/hub-user-type-filter&gt;\n&lt;div rg-button-toolbar&gt;\n  &lt;div rg-button-group ng-controller="UserDuplicatesFind"&gt;\n    &lt;rg-button\n      title="{{ \'Find duplicate user accounts\' | translate }}"\n      data-test="find-duplicates-button"\n      rg-permission="user-update"\n\n      rg-select\n      select-type="dropdown"\n      options="getReliabilityLabel(item) for item in loadReliabilities() track by item.id"\n      on-select="onReliabilitySelect(selected.originalModel)"\n    &gt;\n      &lt;span translate&gt;Find duplicates&lt;/span&gt;\n      &lt;rg-icon glyph="'+n(96971)+'" size="14"&gt;&lt;/rg-icon&gt;\n    &lt;/rg-button&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},46607:(e,t,n)=&gt;{e.exports='&lt;div hub-resource="UserResource" rg-error-page&gt;\n  &lt;hub-resource-query-data\n    fields="id,login,name,userType(id),profile(email,avatar,attributes(value,prototype(id,name,type,showOnUserList))),banned,banReason,banBadge,groups(id,name,iconUrl,project/id),projectRoles(id,role(id,key,name),project(id,name)),VCSUserNames(name),creationTime,lastAccessTime,twoFactorAuthentication/enabled,webauthnDevice/enabled"\n    items-field="users"\n    data="data"\n    order-by="$ctrl.orderByQuery"\n    extra-query="{{$ctrl.extraFilter}}"\n  &gt;&lt;/hub-resource-query-data&gt;\n\n  &lt;hub-header placeholder="{{ \'Filter users\' | translate }}"&gt;&lt;/hub-header&gt;\n\n  &lt;div class="user-list__table"&gt;\n    &lt;a class="ring-link user-list__manage-attributes-link"\n       href="user-profile-attributes"\n       rg-permission="user-read"\n       data-test="manage--user-profile-attributes"\n    &gt;\n      &lt;span translate&gt;Manage custom attributes&lt;/span&gt;\n    &lt;/a&gt;\n    &lt;hub-table\n      data="data"\n      columns="$ctrl.columns"\n      default-sort-key="creationTime"\n      order-by="$ctrl.orderByQuery"\n\n      title-format="\'users-total-title\'"\n      toolbar-template="$ctrl.toolbarTemplate"\n      right-toolbar-template="$ctrl.rightToolbarTemplate"\n      sidebar-template="$ctrl.sidebarTemplate"\n      sidebar-empty="{{ \'Select a user to see details\' | translate }}"\n      sidebar-icon="'+n(66985)+'"\n\n      description-id="user-list"\n    &gt;\n      &lt;p translate&gt;This list displays all of the user accounts that are registered in YouTrack. Filter the list of users by attributes, including name, login, access permissions, group, and ban status. The search box provides query completion to help you choose from available search attributes. &lt;hub-help-link url="Managing-User-Accounts.html"&gt;Learn more â†’&lt;/hub-help-link&gt;&lt;/p&gt;\n    &lt;/hub-table&gt;\n  &lt;/div&gt;\n\n  &lt;hub-page-help url="Managing-User-Accounts.html"&gt;\n    &lt;span translate&gt;The Users list displays all of the user accounts that are registered in Hub. Filter the list of users by attributes, including name, login,\n      access permissions, group, and ban status. The search box provides query completion to help you choose from available search attributes.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},69488:(e,t,n)=&gt;{e.exports='&lt;h2 class="ring-sidebar__title"&gt;\n    &lt;a class="ring-link" ng-href="services/{{ ctrl.sidebarElement.client.key | encodeLink:ctrl.sidebarElement.client.id }}"&gt;{{ ctrl.sidebarElement.client.name }}&lt;/a&gt;\n&lt;/h2&gt;\n\n&lt;div class="ring-sidebar__section project-role__sidebar__groups"&gt;\n    &lt;div class="project-role__sidebar__groups__group"&gt;\n        &lt;span class="project-role__sidebar__groups__group__name" translate&gt;Expires&lt;/span&gt;\n\n        &lt;div class="project-role__sidebar__groups__group__project"&gt;{{ ctrl.sidebarElement.expiresOn | date:\'medium\'}}&lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="ctrl.sidebarElement.scope"&gt;\n    &lt;span class="ring-sidebar__section-title"&gt;\n        &lt;span translate\n              translate-n="ctrl.sidebarElement.scope.length"\n              translate-plural="{{ $count }} Services"&gt;{{ $count }} Service&lt;/span&gt;\n    &lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-roster"&gt;\n        &lt;div class="roster roster_inline"&gt;\n            &lt;div ng-repeat="service in ctrl.sidebarElement.scope" class="roster__item"&gt;\n                &lt;img ng-if="service.iconUrl" class="roster__item__img" ng-src="{{ service.iconUrl }}"&gt;\n                &lt;rg-icon ng-if="!service.iconUrl" size="16" glyph="'+n(70764)+'" class="roster__item__img"&gt;&lt;/rg-icon&gt;\n                &lt;a class="ring-link roster__item__label" ng-href="services/{{ service.key | encodeLink:service.id }}"&gt;{{ service.name }}&lt;/a&gt;\n            &lt;/div&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},54435:e=&gt;{e.exports='&lt;div ng-controller="AuthenticationCtrl as ctrl"&gt;\n  &lt;hub-user-profile-authentication\n    user="user"\n    page-data="ctrl.pageData"\n    page-ready="pageReady"\n    is-own-profile="isOwnProfile"\n    host-service-application-name="ctrl.hostServiceApplicationName"\n    read-users-basic="readUsersBasic"\n    hub-backend="hubBackend"\n    help-base-url="ctrl.helpBaseUrl"\n    is-standalone-hub="ctrl.isStandalone"\n    on-reload-user-detail="reloadUserDetails()"\n    on-reload-webauthn="reloadWebauthn()"\n    on-two-factor-authentication-update="ctrl.onTwoFactorAuthenticationUpdate()"\n  &gt;&lt;/hub-user-profile-authentication&gt;\n&lt;/div&gt;\n'},33553:(e,t,n)=&gt;{e.exports='&lt;ng-controller ng-controller="UserListBanCtrl as banCtrl"&gt;\n  &lt;div hub-resource="UserResource" class="ring-form container container_form" ng-controller="UserGeneralCtrl as userGeneralCtrl"&gt;\n    &lt;div ng-show="crossProfilesNavigation.length &amp;&amp; !guestProfile" class="user-page__profiles"&gt;\n      &lt;div class="user-page__profiles-header" translate&gt;Connected Profiles&lt;/div&gt;\n      &lt;div ng-repeat="profile in crossProfilesNavigation" class="user-page__profile"&gt;\n        &lt;span class="user-page__profile-icon-frame"&gt;&lt;img class="user-page__profile-icon" ng-if="profile.icon"\n                                                         ng-src="{{profile.icon}}"&gt;&lt;/span&gt;&lt;a\n        ng-href="{{ profile.link }}" class="ring-link user-page__profile-link"&gt;{{profile.name}}&lt;/a&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;form-save\n      item="user"\n      draft="userDraft"\n      item-modifier="itemModifier(item)"\n      before-save="prepareVerification()"\n      after-save="updateUser()"\n      on-dirty-change="isFormDirty = $isDirty"\n    &gt;\n      &lt;form-control-combo\n        data-disabled="!userGeneralCtrl.pageData.canUpdateProfile || userDraft.eraseTimestamp"\n        data-required="true"\n        data-model="userDraft.name"\n        data-options="o.name describe as o.description for o in userGeneralCtrl.shared.nameDatasource(userDraft.name, top)"\n        data-label="{{\'Full name\' | translate}}"\n        data-show-warning="isFormDirty"\n      &gt;&lt;/form-control-combo&gt;\n\n      &lt;form-control-combo\n        data-disabled="!userGeneralCtrl.pageData.canUpdateProfile || userDraft.eraseTimestamp"\n        data-required="true"\n        data-model="userDraft.login"\n        data-validators="userGeneralCtrl.shared.validators.login"\n        data-options="o.name describe as o.description for o in userGeneralCtrl.shared.loginDatasource(userDraft.login, top)"\n        data-label="{{\'Username\' | translate}}"\n        data-show-warning="isFormDirty"\n      &gt;&lt;/form-control-combo&gt;\n\n      &lt;div class="ring-form__group" ng-show="!guestProfile &amp;&amp; !userDraft.eraseTimestamp"&gt;\n        &lt;label class="ring-form__label" translate&gt;Avatar&lt;/label&gt;\n        &lt;div class="ring-form__control"&gt;\n          &lt;div class="ring-avatar-editor__frame"&gt;\n            &lt;div class="ring-avatar-editor" ng-click="userGeneralCtrl.pageData.canUpdateProfile &amp;&amp; userGeneralCtrl.shared.selectAvatar()"&gt;\n              &lt;rg-icon\n                size="14"\n                glyph="'+n(49817)+'"\n                class="ring-avatar-editor__icon"\n                ng-if="userGeneralCtrl.pageData.canUpdateProfile"\n              &gt;&lt;/rg-icon&gt;\n              &lt;img class="ring-avatar-editor__img" ng-src="{{ profile.avatar.url | dpr:40:profile.avatar.version }}"/&gt;\n            &lt;/div&gt;\n          &lt;/div&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group" ng-if="showUserType &amp;&amp; userDraft.userType"&gt;\n        &lt;form-control-select\n          data-disabled="!(userGeneralCtrl.pageData.canUpdateProfile &amp;&amp; userGeneralCtrl.pageData.canUpdateUser)"\n          data-label="{{ \'User type\' | translate }}"\n          data-model="userDraft.userType"\n          data-options="o.name for o in userGeneralCtrl.shared.licenseTypes.types track by o.id"\n          data-no-filter="true"\n        &gt;\n      &lt;/div&gt;\n\n      &lt;form-control-combo\n        ng-if="userGeneralCtrl.pageData.canReadProfileFull"\n        data-disabled="!userGeneralCtrl.pageData.canUpdateProfile || userDraft.eraseTimestamp"\n        data-model="userDraft.profile.email.email"\n        data-validators="userGeneralCtrl.shared.validators.email"\n        data-options="o.name describe as o.description for o in userGeneralCtrl.shared.emailDatasource(userDraft.profile.email.email, top)"\n        data-label="{{\'Email\' | translate}}"\n        data-show-warning="isFormDirty"&gt;\n        &lt;controls\n          ng-if="(userDraft.profile.email &amp;&amp; userDraft.profile.email.email) === (user.profile.email &amp;&amp; user.profile.email.email)"\n        &gt;\n          &lt;rg-group&gt;\n            &lt;span\n              class="hub-resource__subcontrol ring-form__control_on"\n              ng-if="user.profile.email.email &amp;&amp; user.profile.email.verified"\n              data-test="user-email-verified"\n              translate\n              translate-context="Email verification state"\n            &gt;Verified&lt;/span&gt;\n\n            &lt;span\n              ng-if="user.profile.email.email &amp;&amp; !user.profile.email.verified"\n              class="hub-resource__subcontrol ring-form__control_off"\n              data-test="user-email-not-verified"\n            &gt;\n              &lt;span ng-show="!emailVerificationRequired" translate translate-context="Email verification state"&gt;Unverified&lt;/span&gt;\n              &lt;span ng-show="emailVerificationRequired &amp;&amp; !user.profile.unverifiedEmail.email" translate&gt;verification required&lt;/span&gt;\n              &lt;span ng-show="emailVerificationRequired &amp;&amp; user.profile.unverifiedEmail.email" translate&gt;pending verification&lt;/span&gt;\n            &lt;/span&gt;\n\n            &lt;rg-button\n              ng-if="user.profile.email.email &amp;&amp; !user.profile.email.verified &amp;&amp; userGeneralCtrl.pageData.canUpdateProfile"\n              ng-click="(emailVerificationRequired &amp;&amp; user.profile.unverifiedEmail &amp;&amp; user.profile.unverifiedEmail.email &amp;&amp; !user.profile.email.verified) ? userGeneralCtrl.shared.verifyUnverifiedEmail(user.profile.unverifiedEmail) : userGeneralCtrl.shared.verifyEmail(userDraft.profile.email)"\n              data-test="verify-email-button"\n              text="true"\n              inline="true"\n            &gt;\n              &lt;span translate&gt;Send verification email&lt;/span&gt;\n            &lt;/rg-button&gt;\n          &lt;/rg-group&gt;\n        &lt;/controls&gt;\n\n        &lt;description&gt;\n          &lt;div ng-class="{\'user-page__general__verify\': emailVerificationRequired &amp;&amp; user.profile.email.email &amp;&amp; user.profile.email.verified &amp;&amp; user.profile.unverifiedEmail.email }"&gt;\n            &lt;div\n              ng-if="emailVerificationRequired &amp;&amp; user.profile.email.email &amp;&amp; user.profile.email.verified &amp;&amp; user.profile.unverifiedEmail.email"&gt;\n              &lt;div translate&gt;\n                Pending change to &lt;b&gt;{{user.profile.unverifiedEmail.email}}&lt;/b&gt;. Update is applied when user verifies\n                this email\n              &lt;/div&gt;\n\n              &lt;rg-button-set class="user-page__general__verify__button"&gt;\n                &lt;rg-button\n                  ng-show="userGeneralCtrl.pageData.canUpdateProfile"\n                  ng-click="userGeneralCtrl.shared.verifyUnverifiedEmail(user.profile.unverifiedEmail)"\n                  data-test="resend-email-button"\n                &gt;\n                  &lt;span translate&gt;Resend verification email&lt;/span&gt;\n                &lt;/rg-button&gt;\n\n                &lt;rg-button\n                  ng-show="userGeneralCtrl.pageData.canUpdateProfile"\n                  rg-promised-click="revokeEmail()"\n                  promised-mode="loader"\n                  data-test="revoke-email-button"\n                &gt;\n                  &lt;span translate&gt;Revert to verified email&lt;/span&gt;\n                &lt;/rg-button&gt;\n              &lt;/rg-button-set&gt;\n            &lt;/div&gt;\n          &lt;/div&gt;\n        &lt;/description&gt;\n      &lt;/form-control-combo&gt;\n\n      &lt;div ng-show="userDraft.profile.attributes.length"&gt;\n        &lt;div ng-repeat="profileField in userDraft.profile.attributes"&gt;\n          &lt;user-profile-field model="profileField"\n                              disabled="!userGeneralCtrl.pageData.canUpdateProfile || userDraft.eraseTimestamp"\n                              data-show-warning="isFormDirty"\n          &gt;&lt;/user-profile-field&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;form-control-edit-textarea\n        ng-if="userGeneralCtrl.pageData.canReadProfileFull"\n        data-label="{{\'VCS usernames\' | translate}}"\n        data-extra-class="ring-input-size_l ring-input-height_l"\n        data-model="userDraft.VCSUserNames"\n        data-disabled="!userGeneralCtrl.pageData.canUpdateProfile || userDraft.eraseTimestamp"\n        data-array="true"\n        data-formatter="userGeneralCtrl.shared.VCSUserNamesModel.formatter"\n        data-parser="userGeneralCtrl.shared.VCSUserNamesModel.parser"\n      &gt;&lt;/form-control-edit-textarea&gt;\n\n      &lt;div class="ring-form__group" ng-show="!guestProfile &amp;&amp; !hidePublicSSHKeys &amp;&amp; canReadProfileFull"&gt;\n        &lt;label class="ring-form__label" translate&gt;SSH public keys&lt;/label&gt;\n\n        &lt;div class="ring-form__control" ng-show="canUpdateProfile &amp;&amp; !userDraft.eraseTimestamp"&gt;\n          &lt;rg-button\n            data-test="add-ssh-key"\n            delayed="true"\n            rg-promised-click="addSshPublicKey()"\n          &gt;&lt;span translate&gt;Add key&lt;/span&gt;&lt;/rg-button&gt;\n        &lt;/div&gt;\n\n        &lt;div\n          class="ring-form__control user-page__general__section"\n          ng-repeat="key in user.sshPublicKeys"\n          data-test="ssh-key"\n        &gt;\n          &lt;div&gt;\n            &lt;span data-test="finger-print-ssh-key"&gt;{{ ::key.fingerPrint }}&lt;/span&gt;\n            &lt;span data-test="comment-ssh-key" class="user-page__ssh-key_comment"&gt;{{ ::key.comment }}&lt;/span&gt;\n            &lt;form-control-text-copy\n              data-label="{{ \'SSH public key\' | translate }}"\n              data-text="{{key.openSshKey}}"\n              data-button-only="true"\n              data-extra-class="user-page__ssh-key_copy-to-clipboard"&gt;\n            &lt;/form-control-text-copy&gt;\n          &lt;/div&gt;\n\n          &lt;rg-group&gt;\n            &lt;rg-button-link\n              data-test="download-ssh-key"\n              href="{{getLinkForSSHKey(key)}}"\n              download="ssh-key.pub"\n              text="true"\n              inline="true"\n              delayed="true"\n            &gt;\n              &lt;span translate&gt;Download&lt;/span&gt;\n            &lt;/rg-button-link&gt;\n\n            &lt;rg-button\n              data-test="delete-ssh-key"\n              ng-show="canUpdateProfile"\n              ng-click="removeSshPublicKey(key)"\n              danger="true"\n              title="{{ \'Remove SSH public key\' | translate}}"\n              text="true"\n              inline="true"\n            &gt;\n              &lt;span translate&gt;Delete key&lt;/span&gt;\n            &lt;/rg-button&gt;\n          &lt;/rg-group&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;form-control-select\n        ng-hide="hideLocaleSelector || !userGeneralCtrl.pageData.canReadProfileFull"\n        data-disabled="!userGeneralCtrl.pageData.canUpdateProfile || userDraft.eraseTimestamp || languageSelectorDisabled"\n        data-label="{{ \'Language\' | translate }}"\n        data-model="userDraft.profile.locale"\n        data-options="o.label describe as getLocaleDescription(o) for o in locales track by o.name"\n        data-no-filter="true"\n      &gt;\n        &lt;description ng-if="userDraft.profile.locale.community"&gt;\n          &lt;rg-icon glyph="'+n(24193)+'" size="12" class="global__warning"&gt;&lt;/rg-icon&gt;\n          &lt;span translate&gt;Localization for this language is supported by the Hub user community. Untranslated interface text appears in English. You may encounter other errors and inconsistencies. If you\'d like to help the community with this translation, you\'re more than welcome to join.&lt;/span&gt;\n          &lt;a class="ring-link" data-test="crowdinLink" target="_blank"\n             ng-href="https://crowdin.com/project/youtrack-custom-localization" translate&gt;View translations&lt;/a&gt;\n          &lt;br/&gt;\n        &lt;/description&gt;\n        &lt;description&gt;\n          &lt;span translate&gt;Set your display language for Hub. The language for search queries is always English and is not affected.&lt;/span&gt;\n        &lt;/description&gt;\n      &lt;/form-control-select&gt;\n\n      &lt;div class="ring-form__group" ng-if="userGeneralCtrl.pageData.canReadProfileFull"&gt;\n        &lt;label class="ring-form__label" translate&gt;Registration date&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          {{:: user.creationTime | date:\'medium\' }}\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group" ng-if="endUserAgreement.enabled &amp;&amp; !guestProfile &amp;&amp; userGeneralCtrl.pageData.canReadProfileFull"&gt;\n        &lt;label class="ring-form__label" translate&gt;User agreement&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          &lt;div ng-show="user.endUserAgreementConsent.time &amp;&amp; !user.endUserAgreementConsent.revocationTime"&gt;\n            &lt;span translate&gt;Accepted &lt;a class="ring-link" ng-click="userGeneralCtrl.shared.showEndUserAgreement()"\n                                        translate&gt;version {{:: user.endUserAgreementConsent.majorVersion\n              }}.{{:: user.endUserAgreementConsent.minorVersion}}&lt;/a&gt; on {{:: user.endUserAgreementConsent.time | date:\'medium\'\n              }}&lt;/span&gt;\n          &lt;/div&gt;\n          &lt;div ng-show="user.endUserAgreementConsent.revocationTime"&gt;\n            &lt;span translate&gt;Revoked acceptance of version {{:: user.endUserAgreementConsent.majorVersion\n              }}.{{:: user.endUserAgreementConsent.minorVersion}} on {{:: user.endUserAgreementConsent.revocationTime | date:\'medium\'\n              }}&lt;/span&gt;\n          &lt;/div&gt;\n          &lt;div ng-show="!user.endUserAgreementConsent.accepted"&gt;\n            &lt;span translate&gt;Pending acceptance of &lt;a class="ring-link" ng-click="userGeneralCtrl.shared.showEndUserAgreement()" translate&gt;version {{:: endUserAgreement.majorVersion\n              }}.{{:: endUserAgreement.minorVersion}}&lt;/a&gt;&lt;/span&gt;\n          &lt;/div&gt;\n\n          &lt;rg-button\n            ng-if="userGeneralCtrl.pageData.isOwnProfile &amp;&amp; user.endUserAgreementConsent.accepted"\n            danger="true"\n            ng-click="userGeneralCtrl.shared.revokeUserAgreementConsent()"\n          &gt;\n            &lt;span translate&gt;Revoke agreement&lt;/span&gt;\n          &lt;/rg-button&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div class="ring-form__group" ng-if="userGeneralCtrl.pageData.canDownloadPersonalData"&gt;\n        &lt;label class="ring-form__label" translate&gt;Personal data&lt;/label&gt;\n\n        &lt;div class="ring-form__control"&gt;\n          &lt;rg-button ng-click="downloadPersonalData()" loader="personalDataIsDownloading"&gt;\n            &lt;span translate&gt;Download in CSV format&lt;/span&gt;\n          &lt;/rg-button&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/form-save&gt;\n\n    &lt;user-licenses user="user" ng-if="userGeneralCtrl.pageData.canReadProfileFull &amp;&amp; userGeneralCtrl.isStandalone" read-only="!userGeneralCtrl.pageData.canUpdateProfile"&gt;&lt;/user-licenses&gt;\n\n    &lt;hub-audit-link entity="[user, user.details]" principal&gt;&lt;/hub-audit-link&gt;\n  &lt;/div&gt;\n&lt;/ng-controller&gt;\n'},5057:(e,t,n)=&gt;{e.exports='&lt;div ng-controller="UserGroupsCtrl as $ctrl"&gt;\n  &lt;div ng-if="$ctrl.groupsSidebarTemplate"\n       ng-controller="UserGroupsTableCtrl as tableCtrl"\n       hub-resource="GroupResource"\n       hub-resource-item-open="groups/:id"&gt;\n  &lt;hub-resource-query-forest\n    fields="id,name,description,iconUrl,autoJoin,project(id),requiredTwoFactorAuthentication,projectRoles(project(id,name),role(id,key,name)),implicit"\n    extra-query="user:{{user.id}} or is: allUsers or is: registeredUsers"\n    children-field="subgroups"\n    data="groups.data"\n    order-by="item.name"\n    on-item-level-change="tableCtrl.onItemLevelChange"\n    collapsed-items="tableCtrl.collapsedItems"\n  &gt;&lt;/hub-resource-query-forest&gt;\n\n  &lt;hub-table\n    data="groups.data"\n    columns="tableCtrl.columns"\n    is-item-selectable="tableCtrl.isItemSelectable"\n    is-disabled-selection-visible="tableCtrl.isDisabledSelectionVisible"\n\n    get-item-level="tableCtrl.getItemLevel"\n    is-item-collapsible="tableCtrl.isItemCollapsible"\n    is-parent-collapsible="tableCtrl.isParentCollapsible"\n    is-item-collapsed="tableCtrl.isItemCollapsed"\n    on-item-collapse="tableCtrl.onItemCollapse"\n    on-item-expand="tableCtrl.onItemExpand"\n    get-checkbox-tooltip="tableCtrl.getCheckboxTooltip"\n\n    toolbar-template="$ctrl.groupsToolbarTemplate"\n    sidebar-template="$ctrl.groupsSidebarTemplate"\n    empty-template="$ctrl.groupsEmptyTemplate"\n\n    sidebar-empty="{{ \'Select group to see details\' | translate }}"\n    sidebar-icon="'+n(46968)+'"\n\n    embedded="$ctrl.isInYoutrackEmbedded"\n    context="$ctrl"\n  &gt;&lt;/hub-table&gt;\n\n&lt;/div&gt;\n&lt;/div&gt;\n'},49037:e=&gt;{e.exports='&lt;div class="search-error" ng-if="!data.error &amp;&amp; data.total === 0"&gt;\n  &lt;span class="search-error__title ring-clearfix" translate&gt;No Groups&lt;/span&gt;\n    &lt;span class="search-error__title search-error__title_small"\n          translate&gt;The user is not a member of any groups or you do not have permission to view groups. To view groups, your user account must be assigned a role with the Read User Group permission.&lt;/span&gt;\n&lt;/div&gt;\n'},64751:e=&gt;{e.exports='&lt;ng-controller ng-controller="UserGroupsToolbarCtrl as groupsToolbarCtrl"&gt;\n  &lt;ng-controller ng-controller="HubTableSelectionCtrl as selectionCtrl"&gt;\n    &lt;hub-user-profile-groups-toolbar\n      selection="selectionCtrl.selection"\n      on-show-loader="groupsToolbarCtrl.onShowLoader()"\n      on-hide-loader="groupsToolbarCtrl.onHideLoader()"\n      on-refresh="groupsToolbarCtrl.onRefresh()"\n    &gt;&lt;/hub-user-profile-groups-toolbar&gt;\n  &lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n'},6812:e=&gt;{e.exports='&lt;div ng-if="$ctrl.services.length" data-test="user-licenses"&gt;\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" translate&gt;Licenses&lt;/label&gt;\n\n    &lt;div class="ring-form__control"\n         ng-show="!readOnly &amp;&amp; $ctrl.hasUnlicensedServices() &amp;&amp; ($ctrl.userUpdate || $ctrl.selfUpdate)"\n         rg-permission="low-level low-level-read"&gt;\n      &lt;rg-button\n              data-test="add-license"\n              delayed="true"\n              rg-promised-click="$ctrl.add()"\n      &gt;&lt;span translate&gt;Grant license&lt;/span&gt;&lt;/rg-button&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-form__control user-page__general__section"\n         ng-repeat="service in $ctrl.services | filter:$ctrl.userLicensesFilter | orderBy:\'licensed\'" data-test="user-license"&gt;\n      &lt;div&gt;\n        &lt;span class="ring-form__label_title"&gt;{{ service.name }}&lt;/span&gt;\n      &lt;/div&gt;\n\n      &lt;div class="user-page__login_block"&gt;\n        &lt;span&gt;{{ service.licenseSettings.licenseName }}&lt;/span&gt;\n        &lt;span class="user-page__profile__licenses__extra" ng-show="service.limitedLicense"&gt;&amp;mdash;\n          &lt;span translate&gt;Expiration date {{ service.licenseExpiration }}&lt;/span&gt;,\n          &lt;span translate&gt;Free updates until {{ service.licenseFreeUpdateEnd }}&lt;/span&gt;\n        &lt;/span&gt;\n        &lt;span class="user-page__profile__licenses__extra" ng-show="!service.limitedLicense"&gt;&amp;mdash;\n          &lt;span translate&gt;Unlimited user license&lt;/span&gt;\n        &lt;/span&gt;\n      &lt;/div&gt;\n\n      &lt;rg-button-set ng-show="!readOnly &amp;&amp; service.limitedLicense"&gt;\n        &lt;rg-button\n                data-test="revoke-user-license"\n                rg-promised-click="$ctrl.revoke(service)"\n        &gt;\n          &lt;span translate&gt;Revoke license&lt;/span&gt;\n        &lt;/rg-button&gt;\n      &lt;/rg-button-set&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n&lt;/div&gt;\n'},15385:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label" translate&gt;For service&lt;/label&gt;\n\n  &lt;div class="ring-form__control ring-form__control_small"&gt;\n    &lt;rg-select ng-model="data.service" filter="true" ng-disabled="data.initialLoading" ng-required="true"\n               select-type="button"\n            options="item.name for item in data.getOptions() track by item.id"&gt;\n    &lt;/rg-select&gt;\n\n    &lt;div class="ring-form__control__description" ng-show="data.service &amp;&amp; !data.service.exceeded"&gt;\n      {{ data.service.licenseSettings.licenseName }}.\n      &lt;span translate\n            translate-n="data.service.availableLicenses"\n            translate-plural="You can grant this license to {{$count}} users"&gt;\n            You can grant this license to {{$count}} user\n      &lt;/span&gt;.\n    &lt;/div&gt;\n\n    &lt;div class="ring-form__control__description" ng-show="data.service &amp;&amp; data.service.exceeded"&gt;\n      &lt;span translate&gt;No available licenses.&lt;/span&gt;\n      &lt;a ng-href="services/{{data.service.key | encodeLink:data.service.id}}?tab=license" class="ring-link"&gt;Manage&lt;/a&gt;\n    &lt;/div&gt;\n\n    &lt;input type="hidden" ng-model="disabledDialog" ng-required="data.service &amp;&amp; data.service.exceeded"&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},62786:e=&gt;{e.exports='&lt;div class="ring-form__group" rg-dialog-title="{{ \'Add SSH Public Key\' | translate }}"&gt;\n  &lt;div\n    base64-input\n    decode-file-data="true"\n    required\n    name="data"\n    ng-model="dialog.data.item.data"\n    unsupported-text="{{\'Unfortunately, your browser doesn\\\'t support upload ssh public key as a file. Paste the key here.\' | translate}}"\n    input-id="create-dialog__data"\n  &gt;\n    &lt;span translate&gt;Supported file formats are &lt;a class="ring-link" href="https://www.ietf.org/proceedings/50/I-D/secsh-publickeyfile-01.txt"&gt;SECSH&lt;/a&gt; and &lt;a class="ring-link" href="http://tools.ietf.org/html/rfc4253#section-6.6"&gt;OpenSSH&lt;/a&gt;. Supported key formats are RSA, DSA and Ed25519. Default file location is &amp;lt;home&amp;nbsp;directory&amp;gt;/.ssh/id_rsa.pub&lt;/span&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},40177:e=&gt;{e.exports='&lt;div class="user-page" rg-error-page="user"&gt;\n  &lt;div class="hub-header"&gt;\n    &lt;div rg-button-toolbar class="hub-header__toolbar" ng-controller="UserListBanCtrl as banCtrl"&gt;\n      &lt;rg-button\n        data-test="ban-button"\n        ng-show="canUpdateProfile &amp;&amp; !isOwnProfile || canUpdateGuestProfile &amp;&amp; !isOwnProfile"\n        rg-promised-click="banCtrl.setBan(!user.banned, [user])"\n        promised-mode="loader"&gt;\n        &lt;span ng-show="!user.banned" translate&gt;Ban user&lt;/span&gt;\n        &lt;span ng-show="user.banned" translate&gt;Unban user&lt;/span&gt;\n      &lt;/rg-button&gt;\n\n      &lt;rg-button\n        ng-controller="UserPageRemovePersonalData as dataCtrl"\n        data-test="remove-data-button"\n        danger="true"\n        ng-show="!guestProfile &amp;&amp; canUpdateProfile &amp;&amp; !user.eraseTimestamp"\n        rg-promised-click="dataCtrl.dialog(user, isOwnProfile)"\n      &gt;\n        &lt;span translate&gt;Anonymize user&lt;/span&gt;\n      &lt;/rg-button&gt;\n\n      &lt;rg-button\n        ng-controller="UserListDeleteCtrl as deleteCtrl"\n        data-test="delete-button"\n        danger="true"\n        ng-show="deleteUsers &amp;&amp; !guestProfile"\n\n        rg-permission="user-delete"\n        rg-promised-click="deleteCtrl.one(user, isOwnProfile)"\n      &gt;\n        &lt;span ng-show="!isOwnProfile" translate&gt;Delete user&lt;/span&gt;\n        &lt;span ng-show="isOwnProfile" translate&gt;Delete me&lt;/span&gt;\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n\n    &lt;rg-breadcrumb ng-if="readUsers" label="{{ \'Users\' | translate }}" link="users"&gt;\n      &lt;span ng-class="user.banned &amp;&amp; \'user-page__banned-username\'"&gt;{{ user.name }}&lt;/span&gt;\n      &lt;sup ng-show="user.banned" class="user-page__status"&gt;\n        &lt;span class="user-page__banned-tag"&gt;&lt;span ng-if="user.banBadge"&gt;{{user.banBadge}}&lt;/span&gt;&lt;span ng-if="!user.banBadge" translate-comment="User state in UI" translate=""&gt;banned&lt;/span&gt;&lt;/span&gt;&lt;span ng-show="user.banReason"&gt;: &lt;span data-test="user-ban-reason"&gt;{{user.banReason}}&lt;/span&gt;&lt;/span&gt;\n      &lt;/sup&gt;\n      &lt;sup ng-show="isOwnProfile" class="user-page__status user-page__status_green" translate&gt;it\'s me&lt;/sup&gt;\n    &lt;/rg-breadcrumb&gt;\n    &lt;rg-breadcrumb ng-if="!readUsers"&gt;\n      &lt;span ng-class="user.banned &amp;&amp; \'user-page__banned-username\'"&gt;{{ user.name }}&lt;/span&gt;\n      &lt;sup ng-show="isOwnProfile" class="disabled" translate&gt;it\'s me&lt;/sup&gt;\n    &lt;/rg-breadcrumb&gt;\n  &lt;/div&gt;\n\n  &lt;rg-tabs class="user-page__profile" tabs-class="\'container container_tabs\'" ng-show="canReadProfile"&gt;\n    &lt;rg-tabs-pane\n      x-title="{{ \'Settings\' | translate }}"\n      tab-index="0"\n      tab-id="general"\n    &gt;\n      &lt;rg-template template="generalTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/rg-tabs-pane&gt;\n\n    &lt;rg-tabs-pane\n      x-title="{{ \'Groups\' | translate }}"\n      tab-index="1"\n      tab-id="groups"\n      counter="{{ groups.data.total }}"\n      selected="groupsSelected"\n      rg-permission-if="group-read"\n    &gt;\n      &lt;rg-template template="groupsTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/rg-tabs-pane&gt;\n\n    &lt;rg-tabs-pane\n      x-title="{{ \'Roles\' | translate }}"\n      tab-index="2"\n      tab-id="access"\n      selected="rolesSelected"\n      rg-permission-if="project-read role-read"\n    &gt;\n      &lt;hub-user-access-tab\n        user="user"\n        datasource="hubBackend"\n      &gt;&lt;/hub-user-access-tab&gt;\n    &lt;/rg-tabs-pane&gt;\n\n    &lt;rg-tabs-pane\n      x-title="{{ \'Account Security\' | translate }}"\n      tab-index="3"\n      tab-id="authentication"\n      selected="authenticationSelected"\n      ng-if="canReadProfileFull"\n    &gt;\n      &lt;rg-template template="authenticationTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/rg-tabs-pane&gt;\n  &lt;/rg-tabs&gt;\n\n  &lt;hub-page-help url="Configuring-User-Account-Settings.html"&gt;\n    &lt;span translate&gt;This page allows you to review and manage details of a user account.&lt;br&gt;\n      Displayed information depends on the permissions granted to you. For example, if you have the default Observer\n      role in Hub, you will see only General settings of your own account: name, logins, emails, etc.&lt;br&gt;\n      If you have administrator\'s permissions, you will also have access to lists of user groups of which the account\n      is a member, granted roles and overall access status.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},93486:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label"&gt;{{dialog.data.translations.roleLabel}}&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;rg-select\n      name="role"\n      data-test="role-select"\n      ng-model="dialog.data.role"\n      select-type="button"\n      class="ring-input-size_md"\n      external-filter="true"\n      config="dialog.data.selectConfig"\n      label="{{dialog.data.translations.roleSelectEmpty}}"\n      not-found-message="{{dialog.data.translations.roleSelectNotFound}}"\n      loading-message="{{dialog.data.translations.loading}}"\n      options="describe as item.name for item in dialog.data.getRoles(query, dialog.data.project) track by item.id"\n      required\n    &gt;&lt;/rg-select&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label"&gt;{{dialog.data.translations.secondaryLabel}}&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;rg-tags-input\n      height="\'S\'"\n      data-test="project-tags-input"\n      tags="dialog.data.targets"\n      x-data-source="dialog.data.getTargets"\n      on-add-tag="dialog.data.onAddTarget"\n      on-remove-tag="dialog.data.onRemoveTarget"\n      placeholder="dialog.data.translations.secondaryPlaceholder"\n      data-disabled="!dialog.data.role"\n      max-popup-height="250"\n      loading-message="dialog.data.translations.loading"\n    &gt;&lt;/rg-tags-input&gt;\n\n    &lt;input type="hidden" ng-required="dialog.data.targets.length &lt; 1" value="" ng-model="dialog.data.noop"/&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},72400:(e,t,n)=&gt;{e.exports='&lt;div class="content ring-clearfix"&gt;\n  &lt;div class="table__container"&gt;\n    &lt;rg-sidebar\n      data-test="table-sidebar"\n      ng-if="$ctrl.view.sidebarEnabled"\n      show="$ctrl.view.showSidebar"\n      place-under-sibling=".ring-table__toolbar"\n      sync-bottom="[data-test=\'ring-footer\'];-40"\n      top-offset="1"\n      dialog-is-active="$ctrl.view.dialogIsActive"\n    &gt;\n      &lt;rg-template ng-if="$ctrl.sidebarElement" template="$ctrl.sidebarTemplate"&gt;&lt;/rg-template&gt;\n\n      &lt;div ng-if="!$ctrl.sidebarElement" class="ring-sidebar__empty" data-test="table-sidebar-empty"&gt;\n        &lt;rg-icon class="ring-sidebar__empty-icon" size="128" glyph="'+n(57522)+'"&gt;&lt;/rg-icon&gt;\n        &lt;div class="ring-sidebar__empty-description"&gt;{{\'Select a role to see details\' | translate}}&lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/rg-sidebar&gt;\n\n    &lt;rg-legacy-table-toolbar stick container=".table__container"&gt;\n      &lt;rg-template data-test="table-toolbar-left" template="$ctrl.toolbarTemplate" class="hub-header__controls__left-toolbar"&gt;&lt;/rg-template&gt;\n      &lt;rg-template data-test="table-toolbar-right" template="$ctrl.rightToolbarTemplate" class="hub-header__controls__right-toolbar"&gt;&lt;/rg-template&gt;\n    &lt;/rg-legacy-table-toolbar&gt;\n\n    &lt;div ng-class="$ctrl.view.loading &amp;&amp; \'project-role__loading\'"&gt;\n      &lt;div ng-repeat="section in $ctrl.view.items track by section.label"\n           ng-show="section.data.length"\n           class="project-role__section"&gt;\n\n        &lt;div class="project-role__section__title"&gt;\n        &lt;span ng-if="section.icon" class="project-role__section__title__icon"&gt;\n          &lt;rg-icon size="14" glyph="{{section.icon}}"&gt;&lt;/rg-icon&gt;\n        &lt;/span&gt;\n          &lt;span class="project-role__section__title__text"&gt;{{section.label}}&lt;/span&gt;\n          &lt;rg-badge ng-show="section.badge" class="project-role__badge"&gt;{{section.badge}}&lt;/rg-badge&gt;\n        &lt;/div&gt;\n\n        &lt;rg-data-list\n          ng-if="section.data.length &amp;&amp; !$ctrl.view.loading"\n          data="section.data"\n          selection="$ctrl.selection"\n          remote-selection="true"\n          on-select="$ctrl.view.onSelect"\n          item-formatter="$ctrl.view.itemFormatter"\n          shortcuts="$ctrl.view.shortcuts"\n        &gt;&lt;/rg-data-list&gt;\n\n        &lt;span class="project-role__section__title__more"\n              ng-if="section.more" ng-click="$ctrl.onSectionMoreLess(section)"&gt;\n        &lt;span ng-show="section.more.length &gt; 0" translate&gt;Show {{section.more.length}} more&lt;/span&gt;\n        &lt;span ng-show="section.more.length === 0" translate&gt;Show less&lt;/span&gt;\n      &lt;/span&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;rg-loader class="project-role__loader" ng-show="$ctrl.view.loading"&gt;&lt;/rg-loader&gt;\n\n    &lt;div ng-if="!$ctrl.view.error &amp;&amp; $ctrl.view.total === 0 &amp;&amp; !$ctrl.view.loading"&gt;\n      &lt;rg-template ng-if="!$ctrl.view.queryAssistQuery" template="$ctrl.emptyTemplate"&gt;&lt;/rg-template&gt;\n      &lt;rg-template ng-if="$ctrl.view.queryAssistQuery" template="$ctrl.defaultEmptyTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/div&gt;\n    &lt;rg-template ng-if="$ctrl.view.error" template="$ctrl.defaultBadRequestTemplate"&gt;&lt;/rg-template&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},9362:e=&gt;{e.exports='&lt;div class="search-error" ng-if="!$ctrl.view.error &amp;&amp; $ctrl.view.total === 0"&gt;\n  &lt;span class="search-error__title ring-clearfix" translate&gt;\n    No roles\n  &lt;/span&gt;\n\n  &lt;span class="search-error__title search-error__title_small"&gt;\n    &lt;span ng-if="$ctrl.view.type === \'user\'" translate&gt;This user does not have any group or role assignments&lt;/span&gt;\n    &lt;span ng-if="$ctrl.view.type === \'group\'" translate&gt;This group does not have any role assignments&lt;/span&gt;\n    &lt;span ng-if="$ctrl.view.type === \'project\'" translate&gt;There aren\'t any role assignments for users or groups in this project. Access is granted exclusively to the members of the project team.&lt;/span&gt;\n    &lt;span ng-if="$ctrl.view.type === \'organization\'" translate&gt;There aren\'t any role assignments for users or groups in this organization&lt;/span&gt;\n  &lt;/span&gt;\n&lt;/div&gt;\n'},19717:e=&gt;{e.exports='&lt;div ng-controller="ProjectRolesSidebarCtrl as $ctrl"&gt;\n  &lt;div ng-repeat="role in $ctrl.view.roles"&gt;\n    &lt;h2 class="ring-sidebar__title"&gt;\n      &lt;span translate&gt;Role&lt;/span&gt; &lt;a class="ring-link" ng-href="{{ \'roles\' | linkToHub:role.key:role.id }}"&gt;{{ role.name }}&lt;/a&gt;\n    &lt;/h2&gt;\n\n    &lt;div ng-show="description" class="ring-sidebar__section project-role__sidebar__description"&gt;{{ description }}&lt;/div&gt;\n\n    &lt;div ng-show="role.permissions.length" class="ring-sidebar__section project-role__sidebar__tree" data-test="permission-set-block"&gt;\n      &lt;div class="project-role__sidebar__tree__label" translate&gt;Permissions&lt;/div&gt;\n\n      &lt;hub-expander ng-repeat="permissionsGroup in role.permissions" data-test="permissions-of-service-block"&gt;\n        &lt;header&gt;\n          &lt;span translate&gt;Service&lt;/span&gt;\n          &lt;a class="ring-link" ng-href="{{ \'services\' | linkToHub:permissionsGroup.service.key:permissionsGroup.service.id }}" data-test="service-name-link"&gt;{{ permissionsGroup.service.name }}&lt;/a&gt;\n          &lt;span class="project-role__sidebar__tree__description"&gt;\n          &lt;span\n            class="project-role__sidebar__tree__description__label"\n            data-test="service-application-name-span"\n            translate\n          &gt;{{ permissionsGroup.service.applicationName }} application&lt;/span&gt;\n        &lt;/span&gt;\n        &lt;/header&gt;\n\n        &lt;content&gt;\n          &lt;div class="project-role__sidebar__tree__block"&gt;\n            &lt;div ng-repeat="permission in permissionsGroup.permissions" data-test="permission-list-item"&gt;\n              &lt;span data-test="permission-name-span"&gt;{{ permission.name }}&lt;/span&gt;\n              &lt;span class="project-role__sidebar__tree__info" data-test="permission-entity-type-span"&gt;{{ permission.entityType }}&lt;/span&gt;\n            &lt;/div&gt;\n          &lt;/div&gt;\n        &lt;/content&gt;\n      &lt;/hub-expander&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n&lt;/div&gt;\n'},97683:e=&gt;{e.exports='&lt;div ng-controller="ProjectRolesToolbarCtrl as toolbarCtrl"&gt;\n  &lt;rg-sidebar-toggle-button data-test="table-toolbar-toggle" ng-if="$ctrl.view.sidebarEnabled" model="$ctrl.view.showSidebar" class="hub-header__controls__right-toolbar" dialog-is-active="$ctrl.view.dialogIsActive"&gt;\n    &lt;span title="{{ \'Details\' | translate }}" translate&gt;Details&lt;/span&gt;\n  &lt;/rg-sidebar-toggle-button&gt;\n\n  &lt;div class="hub-header__controls__right-toolbar"&gt;\n    &lt;span class="hub-header__toolbar-text" translate&gt;View by&lt;/span&gt;\n\n    &lt;span rg-button-group&gt;\n      &lt;rg-button\n        data-test="default-mode-button"\n        active="!toolbarCtrl.isRolesMode()"\n        ng-click="toolbarCtrl.setMode()"\n      &gt;\n        &lt;span ng-show="!toolbarCtrl.accessOwnerMode" translate&gt;User or group&lt;/span&gt;\n        &lt;span ng-show="toolbarCtrl.accessOwnerMode" translate translate-context="Roles tab of Users/Groups page, \'view by\' toggle"&gt;Project or organization&lt;/span&gt;\n      &lt;/rg-button&gt;\n\n      &lt;rg-button\n        data-test="roles-mode-button"\n        active="toolbarCtrl.isRolesMode()"\n        ng-click="toolbarCtrl.setMode(\'roles\')"\n      &gt;\n        &lt;span translate translate-context="Access tab \'by role\' toggle"&gt;Role&lt;/span&gt;\n      &lt;/rg-button&gt;\n    &lt;/span&gt;\n  &lt;/div&gt;\n\n  &lt;hub-header\n    docked\n    embedded\n    class="hub-header__controls__right-toolbar"\n    placeholder="{{ toolbarCtrl.filterPlaceholder }}"\n    datasource="toolbarCtrl.queryAssistDatasource"\n  &gt;&lt;/hub-header&gt;\n&lt;/div&gt;\n'},17432:e=&gt;{e.exports='&lt;ng-controller ng-controller="AccessTabSelectionCtrl as selectionCtrl"&gt;\n&lt;ng-controller ng-controller="ProjectRolesToolbarCtrl as toolbarCtrl"&gt;\n&lt;div rg-button-toolbar&gt;\n  &lt;rg-button\n    mode="primary"\n    delayed="true"\n    rg-promised-click="toolbarCtrl.grantRole()"\n    ng-show="toolbarCtrl.canGrantRole()"\n    ng-disabled="toolbarCtrl.inactiveMode"\n    data-test="grant-role-button"\n  &gt;&lt;span translate&gt;Grant role&lt;/span&gt;&lt;/rg-button&gt;\n\n  &lt;rg-button\n    ng-show="toolbarCtrl.canModifyListOfRoles() &amp;&amp; toolbarCtrl.isRoleRevokeEnabled(selectionCtrl.selection)"\n    rg-promised-click="toolbarCtrl.revokeRole(selectionCtrl.selection.items)"\n    promised-mode="{{toolbarCtrl.revokePromisedMode}}"\n    data-test="revoke-role-button"\n  &gt;\n    &lt;span translate&gt;Revoke role&lt;/span&gt;\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    title="{{ \'Remove selected users from Group\' | translate }}"\n    data-test="remove-from-group-button"\n    ng-show="toolbarCtrl.isGroupRemoveEnabled(selectionCtrl.selection)"\n    rg-permission="jetbrains.jetpass.group-update"\n\n    rg-promised-click="toolbarCtrl.removeFromGroup(selectionCtrl.selection.items)"\n  &gt;\n      &lt;span translate&gt;Remove from group&lt;/span&gt;\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    title="{{ \'Remove selected users from team\' | translate }}"\n    data-test="remove-from-team-button"\n    ng-show="toolbarCtrl.isTeamRemoveEnabled(selectionCtrl.selection)"\n    rg-permission="jetbrains.jetpass.project-update"\n\n    rg-promised-click="toolbarCtrl.removeFromTeam(selectionCtrl.selection.items)"\n  &gt;\n    &lt;span translate&gt;Remove from team&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n&lt;/ng-controller&gt;\n&lt;/ng-controller&gt;\n'},78320:e=&gt;{e.exports='&lt;div\n  ng-if="$ctrl.entity || $ctrl.type"\n  class="ring-form__group audit-link__form-group"\n  ng-class="{\'audit-link_sticked\': $ctrl.noTitle}"\n  rg-permission="jetbrains.jetpass.low-level-read"\n&gt;\n  &lt;label class="ring-form__label"\n         ng-if="!$ctrl.noTitle"\n         translate&gt;Audit&lt;/label&gt;\n\n  &lt;div class="ring-form__control" ng-if="$ctrl.entity"&gt;\n    &lt;a class="ring-link" href="{{\'\' | linkToHub:\'\':(\'events?query=\' + $ctrl.getQuery())}}"\n       translate&gt;Changes applied to {{ $ctrl.getName() }}&lt;/a&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__control" ng-if="$ctrl.isPrincipal"&gt;\n    &lt;a class="ring-link" href="{{\'\' | linkToHub:\'\':(\'events?query=author: {\' + $ctrl.getId() + \'}\')}}"\n       translate&gt;Changes made by {{ $ctrl.getName() }}&lt;/a&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__control" ng-if="$ctrl.isType"&gt;\n    &lt;a class="ring-link" href="{{\'\' | linkToHub:\'\':(\'events?query=\' + $ctrl.getTypeQuery())}}"\n       translate&gt;Changes made by {{ $ctrl.getName() }}&lt;/a&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},84349:e=&gt;{e.exports='&lt;div rg-dialog-title="{{ \'New Microsoft Entra ID Auth Module\' | translate }}"&gt;\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input id="create-dialog__name" name="name" required type="text"\n             ng-class="dialog.dialogForm.name | rgInputClass" ng-model="dialog.data.item.name"\n             class="ring-input-size_md"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__tenant" translate&gt;Tenant ID&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input id="create-dialog__tenant" name="tenant" type="text"\n             ng-class="dialog.dialogForm.tenant | rgInputClass" ng-model="dialog.data.item.tenant"\n             placeholder="{{ \'common\' | translate }}"\n             class="ring-input-size_md"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.tenant"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},40614:e=&gt;{e.exports='&lt;form-control-icon\n  x-label="{{ \'Button image\' | translate }}"\n  x-model="moduleDraft.iconUrl"&gt;\n&lt;/form-control-icon&gt;\n\n&lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n&lt;form-control-full-text&gt;\n  &lt;span translate&gt;To enable authentication with Microsoft Entra ID, use this authorized redirect URI to generate a client ID and client secret.&lt;/span&gt;\n  &lt;hub-help-link data-url="{{ getDocumentationLink(module) }}"&gt;&lt;span translate&gt;Learn more&lt;/span&gt;&lt;/hub-help-link&gt;\n&lt;/form-control-full-text&gt;\n\n&lt;form-control-text-copy\n  data-label="{{ \'Redirect URI\' | translate }}"\n  data-text="{{ moduleDraft.redirectUri }}"&gt;\n&lt;/form-control-text-copy&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Client ID\' | translate }}"\n  data-model="moduleDraft.clientId"\n  data-disabled="!updatable"\n  data-required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n  &lt;description&gt;&lt;span translate&gt;The client ID generated in Microsoft Entra ID&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Client secret\' | translate }}"\n  data-model="moduleDraft.clientSecret"\n  data-disabled="!updatable"\n  data-required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n  &lt;description&gt;&lt;span translate&gt;The client secret generated in Microsoft Entra ID&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  placeholder="{{ \'common\' | translate }}"\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Tenant ID\' | translate }}"\n  data-model="moduleDraft.tenant"\n  data-disabled="!updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;div class="ring-form__title ring-form__title_separated" ng-if="moduleDraft.attributeMappings"&gt;\n  &lt;span translate&gt;Field Mapping&lt;/span&gt;\n&lt;/div&gt;\n\n&lt;div ng-repeat="attributeMapping in moduleDraft.attributeMappings"&gt;\n  &lt;form-control-edit-text\n    data-label="{{ attributeMapping.attributePrototype.name }}"\n    data-model="attributeMapping.mapping"\n    data-extra-class="ring-input-size_md"\n    data-disabled="!updatable"&gt;\n  &lt;/form-control-edit-text&gt;\n&lt;/div&gt;\n\n&lt;hub-page-help data-url="{{ getDocumentationLink(module) }}"&gt;\n  &lt;div translate&gt;\n    To let users log in to Hub with their Microsoft Entra ID accounts, you need the client ID and client secret, which are\n    typically obtained when the service is registered with the Microsoft Entra ID.\n    Use the URI provided on this page as an authorized redirect URI.\n    You can configure how Hub manages accounts for users that sign in with Microsoft Entra ID:\n    &lt;ul class="hub-menu__list"&gt;\n      &lt;li class="hub-menu__list-item"&gt;Allow or deny the automatic creation of user accounts. When a user logs in with\n        Microsoft Entra ID credentials, Hub uses the identifier and the email address to determine whether the user has an existing account.\n        If a match is not found, a new user account is created.&lt;/li&gt;\n      &lt;li class="hub-menu__list-item"&gt;Create a list of groups to which new accounts are added automatically.&lt;/li&gt;\n    &lt;/ul&gt;\n  &lt;/div&gt;\n&lt;/hub-page-help&gt;\n\n\n\n'},83837:e=&gt;{e.exports='&lt;div rg-dialog-title="{{ \'Add Mapping\' | translate }}"&gt;\n  &lt;div class="ring-form__group"&gt;\n    &lt;form-control-edit-text\n      data-extra-class="ring-input-size_md"\n      data-label="{{\'Microsoft Entra ID group name\' | translate}}"\n      data-model="dialog.data.externalGroupName"\n      data-required="true"\n      data-config="dialog.data.externalGroupNameConfig"\n    &gt;&lt;/form-control-edit-text&gt;\n  &lt;/div&gt;\n\n  &lt;form-control-select\n    data-label="{{\'Target group\' | translate}}"\n    data-instant="true"\n    data-required="true"\n    data-options="describe as item.name for item in dialog.data.groupData(query) track by item.id"\n    data-model="dialog.data.group"\n  &gt;&lt;/form-control-select&gt;\n&lt;/div&gt;\n'},14926:e=&gt;{e.exports='&lt;form-save item="module" draft="moduleDraft" collections="{autoJoinGroups: AutoJoinGroupResource}" panel-class="container"&gt;\n  &lt;div ng-controller="AzureGroupMappingCtrl as azureCtrl" class="authmodule-page__azure"&gt;\n    &lt;rg-legacy-table-toolbar stick container=".authmodule-page__azure"&gt;\n      &lt;div rg-button-toolbar&gt;\n        &lt;rg-button\n          data-test="add-group-mapping-data"\n          delayed="true"\n          mode="primary"\n          rg-promised-click="azureCtrl.addGroupMapping()"\n        &gt;&lt;span title="{{\'Map a group in Hub to a group in the Microsoft Entra ID service\' | translate}}"\n               translate&gt;Add mapping&lt;/span&gt;&lt;/rg-button&gt;\n        &lt;rg-button\n          data-test="remove-group-mapping-data"\n          ng-disabled="azureCtrl.selection.getActive().size === 0"\n          ng-click="azureCtrl.removeGroupMapping()"&gt;\n          &lt;span title="{{azureCtrl.removeButtonTitle()}}" translate&gt;Remove&lt;/span&gt;\n        &lt;/rg-button&gt;\n      &lt;/div&gt;\n    &lt;/rg-legacy-table-toolbar&gt;\n\n    &lt;rg-table\n      ng-if="moduleDraft.groupMappings &amp;&amp; moduleDraft.groupMappings.length"\n      data="moduleDraft.groupMappings"\n      columns="azureCtrl.columns"\n      get-item-key="azureCtrl.keyGetter"\n\n      selection="azureCtrl.selection"\n      on-select="azureCtrl.onSelect"\n    &gt;&lt;/rg-table&gt;\n\n    &lt;div ng-if="!moduleDraft.groupMappings.length" class="ring-form__control__description container"&gt;\n      &lt;span translate&gt;Synchronize group memberships for accounts in the Microsoft Entra ID service by adding mappings to target groups here&lt;/span&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/form-save&gt;\n\n'},71230:e=&gt;{e.exports='&lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n&lt;div ng-controller="CoreAuthModuleEditCtrl"&gt;\n  &lt;form-control-button-toggle\n    data-label="{{\'Password restore\' | translate}}"\n    data-disabled="!updatable"\n    data-primary-label="{{ \'Enabled\' | translate }}"\n    data-secondary-label="{{ \'Disabled\' | translate }}"\n    data-model="moduleDraft.passwordRestoreEnabled"&gt;\n      &lt;description&gt;\n        &lt;span ng-show="moduleDraft.passwordRestoreEnabled" translate&gt;Users can reset a forgotten password&lt;/span&gt;\n        &lt;span ng-show="!moduleDraft.passwordRestoreEnabled" translate&gt;Passwords must be set by an administrator&lt;/span&gt;\n      &lt;/description&gt;\n  &lt;/form-control-button-toggle&gt;\n\n  &lt;form-control-select\n          data-label="{{\'Password Strength\' | translate}}"\n          data-model="moduleDraft.passwordStrengthPolicy"\n          data-disabled="!updatable"\n          data-config="wideSelectConfig"\n          data-options="score.value as score.label select as getScoreButtonText(score) describe as score.description for score in scores(query) track by score.value"&gt;\n          &lt;description&gt;\n            &lt;span translate&gt;How strong should user passwords be?&lt;/span&gt;\n          &lt;/description&gt;\n  &lt;/form-control-select&gt;\n\n  &lt;form-control-button-toggle\n    data-label="{{\'Registration\' | translate}}"\n    data-disabled="!updatable"\n    data-primary-label="{{ \'Enabled\' | translate }}"\n    data-secondary-label="{{ \'Disabled\' | translate }}"\n    data-model="moduleDraft.registrationEnabled"&gt;\n      &lt;description&gt;\n        &lt;span ng-show="moduleDraft.registrationEnabled" translate&gt;Users can register their own account in Hub&lt;/span&gt;\n        &lt;span ng-show="!moduleDraft.registrationEnabled" translate&gt;Users must be created or invited to join by an administrator&lt;/span&gt;\n      &lt;/description&gt;\n  &lt;/form-control-button-toggle&gt;\n\n  &lt;div ng-show="moduleDraft.registrationEnabled"&gt;\n    &lt;rg-template template="autojoinTemplate"&gt;&lt;/rg-template&gt;\n\n    &lt;div&gt;\n      &lt;form-control-button-toggle x-label="{{\'reCAPTCHA\' | translate}}"\n                           x-disabled="!updatable"\n                           data-primary-label="{{ \'Enabled\' | translate }}"\n                           data-secondary-label="{{ \'Disabled\' | translate }}"\n                           x-model="moduleDraft.captchaEnabled"&gt;\n        &lt;description&gt;\n          &lt;span ng-show="moduleDraft.captchaEnabled" translate&gt;Users must verify that they are not a robot to register. You can set up reCAPTCHA on the &lt;a href="authmodules/settings" class="ring-link"&gt;Common Settings&lt;/a&gt; page.&lt;/span&gt;\n          &lt;span ng-show="!moduleDraft.captchaEnabled" translate&gt;Users do not have to enter a CAPTCHA to register&lt;/span&gt;\n        &lt;/description&gt;\n      &lt;/form-control-button-toggle&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;hub-page-help data-url="{{ getDocumentationLink(module) }}"&gt;\n    &lt;span translate&gt;The &lt;b&gt;Hub&lt;/b&gt; authentication module is the default authorization scheme for managing user account credentials.\n      &lt;ul class="hub-menu__list"&gt;\n        &lt;li class="hub-menu__list-item"&gt;Enable or disable user registration. If registration is disabled, only administrators are able to create new accounts or invite users to register in &lt;b&gt;Hub&lt;/b&gt;.&lt;/li&gt;\n        &lt;li class="hub-menu__list-item"&gt;Enable and configure &lt;b&gt;reCAPTCHA&lt;/b&gt; as an additional security check during user registration.&lt;/li&gt;\n        &lt;li class="hub-menu__list-item"&gt;Create a list of groups to which new accounts are added automatically.&lt;/li&gt;\n      &lt;/ul&gt;\n    &lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},6782:e=&gt;{e.exports="&lt;div rg-dialog-title=\"{{ 'Require Password Change' | translate }}\"&gt;\n  &lt;span translate&gt;Force all users with Hub accounts to change their passwords on the next login.\n    Currently active sessions are not affected.&lt;/span&gt;\n&lt;/div&gt;\n"},38094:e=&gt;{e.exports='&lt;div class="ring-form__group" ng-show="data.detail.email.email"&gt;\n    &lt;label class="ring-form__label" translate&gt;Email&lt;/label&gt;\n\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n        &lt;input class="ring-input ring-input-size_md" type="text" value="{{ data.detail.email.email }}" disabled&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},44895:e=&gt;{e.exports='&lt;rg-button\n  delayed="true"\n  rg-promised-click="changePassword(login.detail)"\n&gt;&lt;span translate&gt;Change password&lt;/span&gt;&lt;/rg-button&gt;\n'},87745:e=&gt;{e.exports='&lt;div class="ring-form__group" rg-dialog-title="{{ dialog.data.item.title }}"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;input id="create-dialog__name" name="name" required type="text"\n           ng-class="dialog.dialogForm.name | rgInputClass" ng-model="dialog.data.item.name"\n           class="ring-input-size_md"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__serverUrl" translate&gt;Server URL&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;input id="create-dialog__serverUrl" name="serverUrl" required ldap-url\n           ng-class="dialog.dialogForm.serverUrl | rgInputClass" ng-model="dialog.data.item.serverUrl"\n           class="ring-input-size_md"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.serverUrl"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},4201:e=&gt;{e.exports='&lt;form-control-icon\n        x-disabled="true"\n        x-label="{{ \'Button image\' | translate }}"\n        x-model="moduleDraft.iconUrl"&gt;\n&lt;/form-control-icon&gt;\n\n&lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n&lt;form-control-full-text ng-show="moduleDraft.disabled"&gt;\n  &lt;div translate&gt;\n    To enable authentication with GitHub,\n    &lt;a class="ring-link" ng-href="{{ moduleDraft.serverUrl }}/settings/applications/new"&gt;register an application in GitHub&lt;/a&gt;.\n    Use this authorization callback URL to generate a client ID and client secret.\n    &lt;hub-help-link data-url="{{ getDocumentationLink(module) }}" class="ring-link"&gt;&lt;span translate&gt;Learn more&lt;/span&gt;&lt;/hub-help-link&gt;\n  &lt;/div&gt;\n&lt;/form-control-full-text&gt;\n\n&lt;form-control-text-copy\n    x-label="{{ \'Authorization callback URL\' | translate }}"\n    x-text="{{ moduleDraft.redirectUri }}"&gt;\n&lt;/form-control-text-copy&gt;\n\n&lt;form-control-edit-text\n     data-extra-class="ring-input-size_l"\n     data-label="{{ \'Client ID\' | translate }}"\n     data-model="moduleDraft.clientId"\n     data-disabled="!updatable"\n     required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n  &lt;description&gt;&lt;span translate&gt;The client ID generated in GitHub&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n     data-extra-class="ring-input-size_l"\n     data-label="{{ \'Client secret\' | translate }}"\n     data-model="moduleDraft.clientSecret"\n     data-disabled="!updatable"\n     required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n  &lt;description&gt;&lt;span translate&gt;The client secret generated in GitHub&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n&lt;form-control-edit-text\n        data-extra-class="ring-input-size_l"\n        data-label="{{ \'Server URL\' | translate }}"\n        data-model="moduleDraft.serverUrl"\n        data-disabled="!updatable"\n        required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n  &lt;description&gt;\n    &lt;span translate&gt;URL of the GitHub or GitHub Enterprise server that authenticates Hub login requests&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n     data-extra-class="ring-input-size_l"\n     data-label="{{ \'Scope\' | translate }}"\n     data-model="moduleDraft.scope"\n     data-disabled="!updatable"\n     required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n  &lt;description&gt;\n    &lt;span translate&gt;A comma-separated list of &lt;a class="ring-link" href="https://developer.github.com/v3/oauth/#scopes"&gt;scopes&lt;/a&gt;&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n     data-extra-class="ring-input-size_l"\n     data-label="{{ \'Allowed organizations\' | translate }}"\n     data-placeholder="{{ \'Everybody\' | translate }}"\n     data-model="moduleDraft.allowedOrganizations"\n     data-disabled="!updatable"&gt;\n  &lt;description&gt;\n    &lt;span translate&gt;A comma-separated list of GitHub organizations. Logins for the auth module are restricted to members of the specified organizations. If empty, any user with a GitHub account can log in using this auth module.&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;hub-page-help data-url="{{ getDocumentationLink(module) }}"&gt;\n  &lt;span translate&gt;To let users log in to Hub with their &lt;b&gt;GitHub&lt;/b&gt; credentials, you must register an application in &lt;b&gt;GitHub&lt;/b&gt;\n    and generate a Client ID and Client Secret in &lt;a href="https://github.com/settings/developers" class="ring-link"&gt;GitHub Developer Applications&lt;/a&gt;.\n    Paste the URL that is provided on this page as the &lt;b&gt;Authorization callback URL&lt;/b&gt;.\n    When the module is enabled, you can configure the options that define how Hub treats &lt;b&gt;GitHub&lt;/b&gt; accounts:\n    &lt;ul class="hub-menu__list"&gt;\n      &lt;li class="hub-menu__list-item"&gt;Allow or deny the automatic creation of user accounts. When a user logs in, Hub checks if an account with the same email address exists. If a match is not found, a new account is created in Hub.&lt;/li&gt;\n      &lt;li class="hub-menu__list-item"&gt;Create a list of groups to which new accounts are added automatically.&lt;/li&gt;\n    &lt;/ul&gt;\n  &lt;/span&gt;\n&lt;/hub-page-help&gt;\n'},17143:e=&gt;{e.exports='&lt;form-control-icon\n        x-disabled="true"\n        x-label="{{ \'Button image\' | translate }}"\n        x-model="moduleDraft.iconUrl"&gt;\n&lt;/form-control-icon&gt;\n\n&lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n&lt;form-control-full-text&gt;\n  &lt;div&gt;\n    &lt;span translate&gt;To enable authentication with Google, use this authorized redirect URI to generate a client ID and client secret in the&lt;/span&gt;\n    &lt;a href="https://console.developers.google.com/projectselector/apis/credentials" class="ring-link"&gt;Google Cloud Platform&lt;/a&gt;.\n    &lt;hub-help-link data-url="{{ getDocumentationLink(module) }}" class="ring-link"&gt;&lt;span translate&gt;Learn more&lt;/span&gt;&lt;/hub-help-link&gt;\n  &lt;/div&gt;\n&lt;/form-control-full-text&gt;\n\n&lt;form-control-text-copy\n    x-label="{{ \'Authorized redirect URI\' | translate }}"\n    x-text="{{moduleDraft.redirectUri}}"&gt;\n&lt;/form-control-text-copy&gt;\n\n&lt;form-control-edit-text\n     data-extra-class="ring-input-size_l"\n     data-label="{{ \'Client ID\' | translate }}"\n     data-model="moduleDraft.clientId"\n     data-disabled="!updatable"\n     data-required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n  &lt;description&gt;&lt;span translate&gt;The client ID generated in the Google Cloud Platform&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n     data-extra-class="ring-input-size_l"\n     data-label="{{ \'Client secret\' | translate }}"\n     data-model="moduleDraft.clientSecret"\n     data-disabled="!updatable"\n     data-required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n  &lt;description&gt;&lt;span translate&gt;The client secret generated in the Google Cloud Platform&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;hub-page-help data-url="{{ getDocumentationLink(module) }}"&gt;\n  &lt;div&gt;\n    &lt;p translate&gt;To let users log in to Hub with their Google accounts, you need the client ID and client secret from the\n    &lt;a href="https://console.developers.google.com/projectselector/apis/credentials" class="ring-link"&gt;Google Cloud Platform&lt;/a&gt;.\n    Use the URI provided on this page as the Authorized redirect URI.\n      You can configure how Hub manages accounts for users that sign in with Google authentication:&lt;/p&gt;\n    &lt;ul class="hub-menu__list"&gt;\n      &lt;li class="hub-menu__list-item" translate&gt;Allow or deny the automatic creation of user accounts. When a user logs in with\n        Google credentials, Hub uses the email address to determine whether the user has an existing account.\n        If a match is not found, a new user account is created.&lt;/li&gt;\n      &lt;li class="hub-menu__list-item" translate&gt;If you use Google Apps for Work, you can enter your domain name to restrict\n        the creation of user accounts to users with an email address from the specified domain.&lt;/li&gt;\n      &lt;li class="hub-menu__list-item" translate&gt;Create a list of groups to which new accounts are added automatically.&lt;/li&gt;\n    &lt;/ul&gt;\n  &lt;/div&gt;\n&lt;/hub-page-help&gt;\n'},15270:e=&gt;{e.exports='&lt;form-control-icon\n  x-disabled="true"\n  x-label="{{ \'Button image\' | translate }}"\n  x-model="moduleDraft.iconUrl"&gt;\n&lt;/form-control-icon&gt;\n\n&lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Extension grant\' | translate }}"\n  data-model="moduleDraft.extensionGrantType"\n  data-disabled="!updatable"\n  data-required="false"&gt;\n  &lt;description&gt;&lt;span translate&gt;Optional extension grant name for the authorization service&lt;br/&gt;\n  If specified, allows exchanging access tokens issued by the authorization service for Hub access tokens &lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n'},89194:e=&gt;{e.exports='&lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n&lt;form-control-edit-text\n     data-extra-class="ring-input-size_l"\n     data-label="{{ \'Server URL\' | translate }}"\n     data-model="moduleDraft.serverUrl"\n     data-disabled="!updatable"\n     data-required="updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n     data-extra-class="ring-input-size_l"\n     data-label="{{ \'Change password URI\' | translate }}"\n     data-model="moduleDraft.changePasswordUri"\n     data-disabled="!updatable"&gt;\n  &lt;description&gt;\n    &lt;span translate&gt;May be absolute or relative to the server URL&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;ssl-key-picker item="moduleDraft" disabled="!updatable"&gt;&lt;/ssl-key-picker&gt;\n\n&lt;form-control-button-toggle\n        data-label="{{ \'Registration\' | translate }}"\n        data-model="moduleDraft.registrationEnabled"\n        data-primary-label="{{ \'Enabled\' | translate }}"\n        data-secondary-label="{{ \'Disabled\' | translate }}"\n&gt;&lt;/form-control-button-toggle&gt;\n'},49831:e=&gt;{e.exports='&lt;div class="ring-form__group" ng-show="data.detail.login"&gt;\n    &lt;label class="ring-form__label" translate&gt;Login&lt;/label&gt;\n\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n        &lt;input class="ring-input ring-input-size_md" type="text" value="{{ data.detail.login }}" disabled&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n&lt;div class="ring-form__group" ng-show="data.detail.fullName"&gt;\n    &lt;label class="ring-form__label" translate&gt;Full name&lt;/label&gt;\n\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n        &lt;input class="ring-input ring-input-size_md" type="text" value="{{ data.detail.fullName }}" disabled&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n&lt;div class="ring-form__group" ng-show="data.detail.email.email"&gt;\n    &lt;label class="ring-form__label" translate&gt;Email&lt;/label&gt;\n\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n        &lt;input class="ring-input ring-input-size_md" type="text" value="{{ data.detail.email.email }}" disabled&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n\n'},69922:e=&gt;{e.exports='&lt;span translate&gt;\n  &lt;a class="ring-link" target="_blank" href="{{ login.detail.changePasswordUrl }}"&gt;Change password&lt;/a&gt;\n  in JetBrains Account\n&lt;/span&gt;\n'},85917:e=&gt;{e.exports='&lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n&lt;form-control-edit-text\n     data-extra-class="ring-input-size_l"\n     data-label="{{ \'Server URL\' | translate }}"\n     data-model="moduleDraft.serverUrl"\n     data-disabled="!updatable"\n     data-required="updatable"&gt;\n  &lt;description&gt;\n    &lt;span translate&gt;URL of the Atlassian JIRA server that authenticates Hub login requests&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n     data-extra-class="ring-input-size_l"\n     data-label="{{ \'Change password URI\' | translate }}"\n     data-model="moduleDraft.changePasswordUri"\n     data-disabled="!updatable"&gt;\n  &lt;description&gt;\n    &lt;span translate&gt;URI for the restore password link on the login page. May be absolute or relative to the server URL&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;ssl-key-picker item="moduleDraft" disabled="!updatable"&gt;&lt;/ssl-key-picker&gt;\n\n&lt;hub-page-help data-url="{{ getDocumentationLink(module) }}"&gt;\n  &lt;span translate&gt; To let users log in to Hub with their &lt;b&gt;JIRA&lt;/b&gt; credentials, provide the URL\n    of the &lt;b&gt;JIRA&lt;/b&gt; instance and configure the following options:\n    &lt;ul class="hub-menu__list"&gt;\n      &lt;li class="hub-menu__list-item"&gt;To let users change their passwords, specify the URI for the &lt;b&gt;Restore password&lt;/b&gt; link on the login page.\n      Both relative to &lt;b&gt;JIRA&lt;/b&gt; Server URL and absolute URIs are supported.&lt;/li&gt;\n      &lt;li class="hub-menu__list-item"&gt;Allow or deny the automatic creation of user accounts.\n      When a user logs in, Hub checks if an account with the same email address exists.\n      If a match is not found, a new account is created in Hub.&lt;/li&gt;\n      &lt;li class="hub-menu__list-item"&gt;Create a list of groups to which new accounts are added automatically.&lt;/li&gt;\n    &lt;/ul&gt;\n  &lt;/span&gt;\n&lt;/hub-page-help&gt;\n'},1815:e=&gt;{e.exports='&lt;div class="ring-form__group" ng-show="data.detail.login"&gt;\n    &lt;label class="ring-form__label" translate&gt;Login&lt;/label&gt;\n\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n        &lt;input class="ring-input ring-input-size_md" type="text" value="{{ data.detail.login }}" disabled&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n&lt;div class="ring-form__group" ng-show="data.detail.email.email"&gt;\n    &lt;label class="ring-form__label" translate&gt;Email&lt;/label&gt;\n\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n        &lt;input class="ring-input ring-input-size_md" type="text" value="{{ data.detail.email.email }}" disabled&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},66739:e=&gt;{e.exports='&lt;span translate&gt;&lt;a class="ring-link" target="_blank" href="{{ login.detail.changePasswordUrl }}"&gt;Change password&lt;/a&gt; in Atlassian Jira&lt;/span&gt;\n'},64433:e=&gt;{e.exports='&lt;div ng-controller="LdapAuthModuleCreateCtrl"&gt;\n  &lt;div class="ring-form__group" rg-dialog-title="{{ dialog.data.item.title }}"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input id="create-dialog__name" name="name" required type="text"\n             ng-class="dialog.dialogForm.name | rgInputClass" ng-model="dialog.data.item.name"\n             class="ring-input-size_md"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__server" translate&gt;Server&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input id="create-dialog__server" name="server" required\n             ng-class="dialog.dialogForm.server | rgInputClass" ng-model="dialog.data.server"\n             placeholder="{{ \'ldap.mycompany.com\' | translate }}"\n             class="ring-input-size_md"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.server"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__port" translate&gt;Port&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input id="create-dialog__port" name="port" required type="number"\n             ng-class="dialog.dialogForm.port | rgInputClass" ng-model="dialog.data.port"\n             class="ring-input-size_s"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.port"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;form-control-toggle\n    data-label="{{ \'SSL\' | translate }}"\n    data-model="dialog.data.ssl"\n  &gt;&lt;/form-control-toggle&gt;\n\n  &lt;div class="ring-form__group" ng-if="!dialog.data.withoutSearchBase"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__search-base" translate&gt;Search base&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input id="create-dialog__search-base" name="searchBase" required\n             placeholder="dc=company,dc=com"\n             ng-class="dialog.dialogForm.port | rgInputClass" ng-model="dialog.data.searchBase"\n             class="ring-input-size_md"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.searchBase"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},65816:e=&gt;{e.exports='&lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Server URL\' | translate }}"\n  data-model="moduleDraft.serverUrl"\n  data-disabled="!updatable"\n  data-required="updatable"&gt;\n  &lt;description&gt;&lt;span translate&gt;The LDAP URL of the directory service in the format ldap://host:port/DN. Example: ldap://ldap.company.com:389/cn=users,dc=company,dc=com&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;ssl-key-picker item="moduleDraft" disabled="!updatable"&gt;&lt;/ssl-key-picker&gt;\n\n&lt;form-control-button-toggle\n  data-label="{{ \'Bind account\' | translate }}"\n  data-primary-label="{{ \'Fixed\' | translate }}"\n  data-secondary-label="{{ \'Dynamic\' | translate }}"\n  data-model="moduleDraft.useBindUser"\n  data-disabled="!updatable"\n&gt;&lt;/form-control-button-toggle&gt;\n\n&lt;form-control-edit-text\n  ng-if="!moduleDraft.useBindUser"\n  data-required="true"\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Bind DN\' | translate }}"\n  data-model="moduleDraft.formatDN"\n  data-disabled="!updatable || moduleDraft.useBindUser"&gt;\n  &lt;description&gt;&lt;span translate&gt;The query used to bind with the directory service. Use %u to reference the username entered in the login page. Example for LDAP/OpenLDAP: uid=%u, dc=domain,dc=com Example for Active Directory: %u@domain&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  ng-if="moduleDraft.useBindUser"\n  data-required="true"\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Bind DN\' | translate }}"\n  data-model="moduleDraft.bindUserLogin"\n  data-disabled="!updatable || !moduleDraft.useBindUser"&gt;\n  &lt;description&gt;&lt;span translate&gt;The DN of the account that authenticates and queries the directory service&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;div class="ring-form__group" ng-show="moduleDraft.useBindUser"&gt;\n  &lt;label class="ring-form__label"\n         translate&gt;Password&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;rg-button delayed="true"\n               rg-promised-click="changePassword(module, true)"\n               ng-disabled="!updatable || !moduleDraft.useBindUser"&gt;\n      &lt;span translate&gt;Change password&lt;/span&gt;\n    &lt;/rg-button&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Filter\' | translate }}"\n  data-model="moduleDraft.filter"\n  data-disabled="!updatable"&gt;\n  &lt;description&gt;&lt;span translate&gt;\n    The query used to locate the authenticated user. Use %u to reference the username entered in the login page.\n    If empty, the filter "&amp;lt;login&amp;gt;=%u" is used, where &amp;lt;login&amp;gt; is the value of the Username attribute.&lt;br/&gt;\n    When Hub finds a record in the LDAP service that matches this filter, it fetches values from the Attributes\n    Mapping that are specified for each field and copies them to the user profile in Hub.&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-button-toggle\n  data-label="{{ \'LDAP referral\' | translate }}"\n  data-primary-label="{{ \'Ignore\' | translate }}"\n  data-secondary-label="{{ \'Follow\' | translate }}"\n  data-model="moduleDraft.referralIgnored"\n  data-disabled="!updatable"&gt;\n  &lt;description&gt;&lt;span translate&gt;\n    Determines whether the LDAP authentication module ignores or follows requests from the service to locate\n    additional information in the LDAP directory.\n  &lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-button-toggle&gt;\n\n&lt;form-control-button-toggle\n  data-label="{{ \'LDAP account status\' | translate }}"\n  data-primary-label="{{ \'Ignore\' | translate }}"\n  data-secondary-label="{{ \'Forward\' | translate }}"\n  data-model="moduleDraft.userStatusIgnored"\n  data-disabled="!updatable"\n  data-test="ldap-user-status"\n  ng-show="(moduleDraft.userIdAttributeName === \'sAMAccountName\') || moduleDraft.useBindUser"&gt;\n  &lt;description&gt;\n    &lt;span ng-show="moduleDraft.userIdAttributeName === \'sAMAccountName\'" translate&gt;\n      Determines whether user accounts are banned in Hub when an account with corresponding credentials is denied access by the Active Directory service.&lt;/span&gt;\n    &lt;span ng-show="moduleDraft.userIdAttributeName !== \'sAMAccountName\' &amp;&amp; moduleDraft.useBindUser" translate&gt;\n      Determines whether user accounts are banned in Hub when an account with corresponding credentials is deleted in the linked directory service.&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-button-toggle&gt;\n\n&lt;form-control-select\n  ng-show="moduleDraft.useBindUser"\n  data-label="{{\'Synchronization\' | translate}}"\n  data-instant="true"\n  data-disabled="!updatable"\n  data-options="o.value as o.label select as o.label describe as o.value for o in getSyncIntervals() track by o.tracker"\n  data-model="moduleDraft.syncInterval"\n  data-test="ldap-sync-interval-selector"\n  class="authmodule-page__ldap__sync-selector"&gt;\n&lt;/form-control-select&gt;\n\n&lt;rg-button ng-show="module.useBindUser &amp;&amp; updatable"\n           rg-promised-click="syncNow()"\n           promised-mode="loader"\n           data-test="ldap-sync-now-button"\n           class="authmodule-page__ldap__sync-button"&gt;\n  &lt;span translate&gt;Synchronize now&lt;/span&gt;\n&lt;/rg-button&gt;\n\n&lt;span\n  class="ring-form__control__description authmodule-page__ldap__sync-description"\n  ng-show="moduleDraft.useBindUser"\n  translate&gt;\n  Periodically synchronizes user attributes and group memberships with the directory service\n&lt;/span&gt;\n\n&lt;div class="ring-form__title ring-form__title_separated" translate&gt;Attribute Mapping&lt;/div&gt;\n\n&lt;form-control-edit-text\n  data-required="true"\n  data-label="{{ \'Username\' | translate }}"\n  data-model="moduleDraft.userIdAttributeName"\n  data-extra-class="ring-input-size_md"\n  data-disabled="!updatable"&gt;\n  &lt;description&gt;&lt;span translate&gt;\n    The value for this attribute is used to identify user accounts in the LDAP service. The default values are\n    "uid" for LDAP/OpenLDAP and "sAMAccountName" for Active Directory.\n  &lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-label="{{ \'Full name\' | translate }}"\n  data-model="moduleDraft.fullNameAttributeName"\n  data-extra-class="ring-input-size_md"\n  data-disabled="!updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-label="{{ \'Email\' | translate }}"\n  data-model="moduleDraft.emailAttributeName"\n  data-extra-class="ring-input-size_md"\n  data-disabled="!updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-label="{{ \'VCS username\' | translate }}"\n  data-model="moduleDraft.VCSNameAttributeName"\n  data-extra-class="ring-input-size_md"\n  data-disabled="!updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-label="{{ \'Groups\' | translate }}"\n  data-model="moduleDraft.groupsAttributeName"\n  data-extra-class="ring-input-size_md"\n  data-disabled="!updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;div ng-repeat="attributeMapping in moduleDraft.attributeMappings"&gt;\n  &lt;form-control-edit-text\n    data-label="{{ attributeMapping.attributePrototype.name }}"\n    data-model="attributeMapping.mapping"\n    data-extra-class="ring-input-size_md"\n    data-disabled="!updatable"&gt;\n  &lt;/form-control-edit-text&gt;\n&lt;/div&gt;\n\n&lt;form-control-edit-text\n  data-label="{{ \'Account expired\' | translate }}"\n  data-model="moduleDraft.accountExpiresAttributeName"\n  data-extra-class="ring-input-size_md"\n  ng-show="moduleDraft.userIdAttributeName === \'sAMAccountName\'"\n  data-disabled="!updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-label="{{ \'Account disabled\' | translate }}"\n  data-model="moduleDraft.userAccountControlAttributeName"\n  data-extra-class="ring-input-size_md"\n  ng-show="moduleDraft.userIdAttributeName === \'sAMAccountName\'"\n  data-disabled="!updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-label="{{ \'Lockout threshold\' | translate }}"\n  data-model="moduleDraft.lockoutThresholdAttributeName"\n  data-extra-class="ring-input-size_md"\n  ng-show="moduleDraft.userIdAttributeName === \'sAMAccountName\'"\n  data-disabled="!updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-label="{{ \'Lockout time\' | translate }}"\n  data-model="moduleDraft.lockoutTimeAttributeName"\n  data-extra-class="ring-input-size_md"\n  ng-show="moduleDraft.userIdAttributeName === \'sAMAccountName\'"\n  data-disabled="!updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-label="{{ \'Lockout duration\' | translate }}"\n  data-model="moduleDraft.lockoutDurationAttributeName"\n  data-extra-class="ring-input-size_md"\n  ng-show="moduleDraft.userIdAttributeName === \'sAMAccountName\'"\n  data-disabled="!updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;hub-page-help data-url="{{ getDocumentationLink(module) }}"&gt;\n      &lt;span translate&gt;The &lt;b&gt;LDAP&lt;/b&gt; authentication Module lets users log in to Hub and any connected services with credentials that are stored in a directory service.\n        An &lt;b&gt;LDAP&lt;/b&gt; integration does not import all of the user accounts from the directory service.\nWhen the module is enabled, you can check its connectivity and configure additional parameters:\n &lt;ul class="hub-menu__list"&gt;\n   &lt;li class="hub-menu__list-item"&gt;Enter the domain components that define the top-level LDAP DN where user accounts are stored. &lt;/li&gt;\n   &lt;li class="hub-menu__list-item"&gt;Map attributes stored in your directory services to user accounts in Hub.&lt;/li&gt;\n   &lt;li class="hub-menu__list-item"&gt;Create a list of groups to which new accounts are added automatically.&lt;/li&gt;\n &lt;/ul&gt;&lt;/span&gt;\n&lt;/hub-page-help&gt;\n'},85281:e=&gt;{e.exports='&lt;div rg-dialog-title="{{ \'Add Mapping\' | translate }}"&gt;\n  &lt;div class="ring-form__group"&gt;\n    &lt;form-control-combo\n      data-required="true"\n      data-model="dialog.data.externalGroupName"\n      data-options="item.label as item.label for item in dialog.data.getLdapGroups(query) track by item.key"\n      data-label="{{\'LDAP group DN\' | translate}}"\n      data-config="dialog.data.externalGroupNameConfig"\n    &gt;&lt;/form-control-combo&gt;\n  &lt;/div&gt;\n\n  &lt;form-control-select\n    data-label="{{\'Target group\' | translate}}"\n    data-instant="true"\n    data-required="true"\n    data-options="describe as item.name for item in dialog.data.groupData(query) track by item.id"\n    data-model="dialog.data.group"\n  &gt;&lt;/form-control-select&gt;\n&lt;/div&gt;\n'},6196:e=&gt;{e.exports='&lt;div class="ring-form__group" ng-show="data.detail.userid"&gt;\n    &lt;label class="ring-form__label" translate&gt;Username&lt;/label&gt;\n\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n      {{ data.detail.userid }}\n    &lt;/div&gt;\n&lt;/div&gt;\n&lt;div class="ring-form__group" ng-show="data.detail.fullName"&gt;\n    &lt;label class="ring-form__label" translate&gt;Full name&lt;/label&gt;\n\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n      {{ data.detail.fullName }}\n    &lt;/div&gt;\n&lt;/div&gt;\n&lt;div class="ring-form__group" ng-show="data.detail.email.email"&gt;\n    &lt;label class="ring-form__label" translate&gt;Email&lt;/label&gt;\n\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n      {{ data.detail.email.email }}\n    &lt;/div&gt;\n&lt;/div&gt;\n&lt;div class="ring-form__group" ng-show="data.detail.VCSName"&gt;\n    &lt;label class="ring-form__label" translate&gt;VCS name&lt;/label&gt;\n\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n      {{ data.detail.VCSName }}\n    &lt;/div&gt;\n&lt;/div&gt;\n&lt;div class="ring-form__group" ng-show="data.detail.ldapGroupNames"&gt;\n  &lt;label class="ring-form__label" translate&gt;LDAP groups&lt;/label&gt;\n\n  &lt;div class="ring-form__control ring-form__control_small authmodule-page__ldap__test-group-name" ng-repeat="groupName in data.detail.ldapGroupNames"&gt;\n    {{ groupName }}\n  &lt;/div&gt;\n&lt;/div&gt;\n\n'},8132:e=&gt;{e.exports='&lt;form-save item="module" draft="moduleDraft" collections="{autoJoinGroups: AutoJoinGroupResource}" panel-class="container"&gt;\n  &lt;div ng-controller="LdapGroupMappingCtrl as ldapCtrl" class="authmodule-page__ldap"&gt;\n    &lt;rg-legacy-table-toolbar stick container=".authmodule-page__ldap"&gt;\n      &lt;div rg-button-toolbar&gt;\n        &lt;rg-button\n          data-test="add-group-mapping-data"\n          ng-show="updatable"\n          delayed="true"\n          mode="primary"\n          rg-promised-click="ldapCtrl.addGroupMapping()"\n        &gt;&lt;span title="{{\'Map a group in Hub to a group in the LDAP service\' | translate}}"\n               translate&gt;Add mapping&lt;/span&gt;&lt;/rg-button&gt;\n        &lt;rg-button\n          data-test="remove-group-mapping-data"\n          ng-show="updatable"\n          ng-disabled="ldapCtrl.selection.getActive().size === 0"\n          ng-click="ldapCtrl.removeGroupMapping()"&gt;\n          &lt;span title="{{ldapCtrl.removeButtonTitle()}}" translate&gt;Remove&lt;/span&gt;\n        &lt;/rg-button&gt;\n      &lt;/div&gt;\n    &lt;/rg-legacy-table-toolbar&gt;\n\n    &lt;rg-table\n      ng-if="moduleDraft.groupMappings &amp;&amp; moduleDraft.groupMappings.length"\n      data="moduleDraft.groupMappings"\n      columns="ldapCtrl.columns"\n      get-item-key="ldapCtrl.keyGetter"\n\n      selection="ldapCtrl.selection"\n      on-select="ldapCtrl.onSelect"\n    &gt;&lt;/rg-table&gt;\n\n    &lt;div ng-if="!moduleDraft.groupMappings.length" class="ring-form__control__description container"&gt;\n      &lt;span translate&gt;Synchronize group memberships for accounts in the LDAP service by adding mappings to target groups here&lt;/span&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/form-save&gt;\n\n'},57541:e=&gt;{e.exports="&lt;span translate&gt;To change password, contact an administrator&lt;/span&gt;\n"},76191:e=&gt;{e.exports='&lt;div ng-controller="KeycloakModuleCreateDialogCtrl"&gt;\n  &lt;div class="ring-form__group" rg-dialog-title="{{ \'New Keycloak Auth Module\' | translate }}"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input id="create-dialog__name" name="name" required type="text"\n             ng-class="dialog.dialogForm.name | rgInputClass" ng-model="dialog.data.item.name"\n             class="ring-input-size_md"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__rootUrl" translate&gt;Keycloak root URL&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input id="create-dialog__rootUrl" name="rootUrl" required\n             ng-class="dialog.dialogForm.rootUrl | rgInputClass" ng-model="rootUrl"\n             class="ring-input-size_md"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.rootUrl"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__realm" translate&gt;Keycloak realm&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input id="create-dialog__realm" name="realm" required\n             ng-class="dialog.dialogForm.realm | rgInputClass" ng-model="realm"\n             class="ring-input-size_md"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.realm"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},72827:e=&gt;{e.exports='&lt;div class="ring-form__group" rg-dialog-title="{{ \'New OAuth 2.0 Auth Module\' | translate }}"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;input id="create-dialog__name" name="name" required type="text"\n           ng-class="dialog.dialogForm.name | rgInputClass" ng-model="dialog.data.item.name"\n           class="ring-input-size_md"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__serverUrl" translate&gt;Authorization URL&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;input id="create-dialog__serverUrl" name="serverUrl" required ldap-url\n           ng-class="dialog.dialogForm.serverUrl | rgInputClass" ng-model="dialog.data.item.serverUrl"\n           class="ring-input-size_md"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.serverUrl"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},33471:(e,t,n)=&gt;{e.exports='&lt;form-control-icon\n        x-label="{{ \'Button image\' | translate }}"\n        x-model="moduleDraft.iconUrl"&gt;\n&lt;/form-control-icon&gt;\n\n&lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n&lt;form-control-full-text&gt;\n  &lt;span translate&gt;To enable authentication with {{moduleDraft.name}}, use this authorized redirect URI to generate a client ID and client secret.&lt;/span&gt;\n  &lt;hub-help-link data-url="{{ getDocumentationLink(module) }}"&gt;&lt;span translate&gt;Learn more&lt;/span&gt;&lt;/hub-help-link&gt;\n&lt;/form-control-full-text&gt;\n\n&lt;form-control-text-copy\n        data-label="{{ \'Redirect URI\' | translate }}"\n        data-text="{{ moduleDraft.redirectUri }}"&gt;\n&lt;/form-control-text-copy&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Client ID\' | translate }}"\n  data-model="moduleDraft.clientId"\n  data-disabled="!updatable"\n  data-required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n  &lt;description&gt;&lt;span translate&gt;The client ID generated by the authorization service&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Client secret\' | translate }}"\n  data-model="moduleDraft.clientSecret"\n  data-disabled="!updatable"\n  data-required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n  &lt;description&gt;&lt;span translate&gt;The client secret generated by the authorization service&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Extension grant\' | translate }}"\n  data-model="moduleDraft.extensionGrantType"\n  data-disabled="!updatable"\n  data-required="false"&gt;\n  &lt;description&gt;&lt;span translate&gt;Optional extension grant name for the authorization service.\n  If specified, allows exchanging access tokens issued by the authorization service for Hub access tokens.&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;div class="ring-form__title ring-form__title_separated" translate&gt;Authorization Service Endpoints&lt;/div&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Authorization\' | translate }}"\n  data-type="url"\n  data-model="moduleDraft.serverUrl"\n  data-disabled="!updatable"\n  data-required="updatable"&gt;\n  &lt;description&gt;&lt;span translate&gt;The endpoint Hub uses to interact with the resource owner and obtain an authorization grant&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Token\' | translate }}"\n  data-type="url"\n  data-model="moduleDraft.tokenUrl"\n  data-disabled="!updatable"\n  data-required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n  &lt;description&gt;&lt;span translate&gt;The endpoint Hub uses to obtain an access token&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'User data\' | translate }}"\n  data-type="url"\n  data-model="moduleDraft.userInfoUrl"\n  data-disabled="!updatable"\n  data-required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n  &lt;description&gt;&lt;span translate&gt;\n    The endpoint used to locate profile data for the authenticated user.\n    When a user profile response object is returned by the authorization service, values from the specified field paths are copied to the user profile in Hub.\n    Use a sequence of path segments separated by slashes (/) to specify a path to a field inside a nested object.\n  &lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Email\' | translate }}"\n  data-type="url"\n  data-model="moduleDraft.userEmailUrl"\n  data-disabled="!updatable"&gt;\n  &lt;description&gt;&lt;span translate&gt;\n    The endpoint used to locate the email address of the authenticated user.\n    Use only when the email address is not stored in the user profile.\n  &lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Avatar\' | translate }}"\n  data-type="url"\n  data-model="moduleDraft.userAvatarUrl"\n  data-disabled="!updatable"&gt;\n  &lt;description&gt;&lt;span translate&gt;\n    The endpoint used to locate the binary file that is used as the avatar for the authenticated user.\n    Use only when the avatar isnâ€™t stored directly in the user profile.\n  &lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;div class="ring-form__title ring-form__title_separated"&gt;\n  &lt;span translate&gt;Field Mapping&lt;/span&gt;\n  &lt;rg-icon\n    rg-tooltip="\'To specify paths to fields inside nested objects, enter a sequence of segments separated by the slash character (/). To reference values that may be stored in more than one location, use \\\'?:\\\' as a delimiter for multiple paths.\' | translate"\n    glyph="'+n(69840)+'"\n    size="16"\n    class="ring-tooltip-ng__hint-icon"&gt;\n  &lt;/rg-icon&gt;\n&lt;/div&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'User ID\' | translate }}"\n  data-model="moduleDraft.userIdPath"\n  data-disabled="!updatable"\n  data-required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Username\' | translate }}"\n  data-model="moduleDraft.userNamePath"\n  data-disabled="!updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Full name\' | translate }}"\n  data-model="moduleDraft.fullNamePath"\n  data-disabled="!updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Email\' | translate }}"\n  data-model="moduleDraft.userEmailPath"\n  data-disabled="!updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Email verification state\' | translate }}"\n  data-model="moduleDraft.userEmailVerifiedPath"\n  data-disabled="!updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Avatar\' | translate }}"\n  data-model="moduleDraft.userPictureIdPath"\n  data-disabled="!updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-type="url"\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Image URL pattern\' | translate }}"\n  data-model="moduleDraft.userPictureUrlPattern"\n  data-disabled="!updatable"&gt;\n  &lt;description&gt;&lt;span translate&gt;\n    Used to generate a URL for images that are referenced by an ID.\n    The &lt;code&gt;&amp;lt;picture-id&amp;gt;&lt;/code&gt; is replaced with the value from the field that stores the image.\n  &lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Groups\' | translate }}"\n  data-model="moduleDraft.userGroupsPath"\n  data-disabled="!updatable"&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;div ng-repeat="attributeMapping in moduleDraft.attributeMappings"&gt;\n  &lt;form-control-edit-text\n    data-label="{{ attributeMapping.attributePrototype.name }}"\n    data-model="attributeMapping.mapping"\n    data-extra-class="ring-input-size_md"\n    data-disabled="!updatable"&gt;\n  &lt;/form-control-edit-text&gt;\n&lt;/div&gt;\n\n&lt;hub-page-help data-url="{{ getDocumentationLink(module) }}"&gt;\n  &lt;div translate&gt;\n    To let users log in to Hub with their OAuth identity provider accounts, you need the client ID and client secret, which are\n    typically obtained when the service is registered with the OAuth identity provider.\n    Use the URI provided on this page as an authorized redirect URI.\n    You can configure how Hub manages accounts for users that sign in with OAuth:\n    &lt;ul class="hub-menu__list"&gt;\n      &lt;li class="hub-menu__list-item"&gt;Allow or deny the automatic creation of user accounts. When a user logs in with\n        OAuth identity provider credentials, Hub uses the email address to determine whether the user has an existing account.\n        If a match is not found, a new user account is created.&lt;/li&gt;\n      &lt;li class="hub-menu__list-item"&gt;Create a list of groups to which new accounts are added automatically.&lt;/li&gt;\n    &lt;/ul&gt;\n  &lt;/div&gt;\n&lt;/hub-page-help&gt;\n'},52313:e=&gt;{e.exports='&lt;div rg-dialog-title="{{ \'Add Mapping\' | translate }}"&gt;\n  &lt;div class="ring-form__group"&gt;\n    &lt;form-control-edit-text\n      data-extra-class="ring-input-size_md"\n      data-label="{{\'OAuth group name\' | translate}}"\n      data-model="dialog.data.externalGroupName"\n      data-required="true"\n      data-config="dialog.data.externalGroupNameConfig"\n    &gt;&lt;/form-control-edit-text&gt;\n  &lt;/div&gt;\n\n  &lt;form-control-select\n    data-label="{{\'Target group\' | translate}}"\n    data-instant="true"\n    data-required="true"\n    data-options="describe as item.name for item in dialog.data.groupData(query) track by item.id"\n    data-model="dialog.data.group"\n  &gt;&lt;/form-control-select&gt;\n&lt;/div&gt;\n'},64844:e=&gt;{e.exports='&lt;form-save item="module" draft="moduleDraft" collections="{autoJoinGroups: AutoJoinGroupResource}" panel-class="container"&gt;\n  &lt;div ng-controller="OAuth2GroupMappingCtrl as oauth2Ctrl" class="authmodule-page__oauth2"&gt;\n    &lt;rg-legacy-table-toolbar stick container=".authmodule-page__oauth2"&gt;\n      &lt;div rg-button-toolbar&gt;\n        &lt;rg-button\n          data-test="add-group-mapping-data"\n          ng-show="updatable"\n          delayed="true"\n          mode="primary"\n          rg-promised-click="oauth2Ctrl.addGroupMapping()"\n        &gt;&lt;span title="{{\'Map a group in Hub to a group in the OAuth2 service\' | translate}}"\n               translate&gt;Add mapping&lt;/span&gt;&lt;/rg-button&gt;\n        &lt;rg-button\n          data-test="remove-group-mapping-data"\n          ng-show="updatable"\n          ng-disabled="oauth2Ctrl.selection.getActive().size === 0"\n          ng-click="oauth2Ctrl.removeGroupMapping()"&gt;\n          &lt;span title="{{oauth2Ctrl.removeButtonTitle()}}" translate&gt;Remove&lt;/span&gt;\n        &lt;/rg-button&gt;\n      &lt;/div&gt;\n    &lt;/rg-legacy-table-toolbar&gt;\n\n    &lt;rg-table\n      ng-if="moduleDraft.groupMappings &amp;&amp; moduleDraft.groupMappings.length"\n      data="moduleDraft.groupMappings"\n      columns="oauth2Ctrl.columns"\n      get-item-key="oauth2Ctrl.keyGetter"\n\n      selection="oauth2Ctrl.selection"\n      on-select="oauth2Ctrl.onSelect"\n    &gt;&lt;/rg-table&gt;\n\n    &lt;div ng-if="!moduleDraft.groupMappings.length" class="ring-form__control__description container"&gt;\n      &lt;span translate&gt;Synchronize group memberships for accounts in the OAuth2 service by adding mappings to target groups here&lt;/span&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/form-save&gt;\n\n'},99240:e=&gt;{e.exports='&lt;div ng-controller="OktaModuleCreateDialogCtrl"&gt;\n  &lt;div class="ring-form__group" rg-dialog-title="{{ \'New Okta Auth Module\' | translate }}"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input id="create-dialog__name" name="name" required type="text"\n             ng-class="dialog.dialogForm.name | rgInputClass" ng-model="dialog.data.item.name"\n             class="ring-input-size_md"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__domain" translate&gt;Okta domain&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input id="create-dialog__domain" name="domain" required\n             ng-class="dialog.dialogForm.domain | rgInputClass" ng-model="domain"\n             class="ring-input-size_md"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.domain"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},82697:(e,t,n)=&gt;{e.exports='&lt;form-control-icon\n        x-label="{{ \'Button image\' | translate }}"\n        x-model="moduleDraft.iconUrl"&gt;\n&lt;/form-control-icon&gt;\n\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Domain\' | translate }}"\n  data-model="moduleDraft.oktaDomain"\n  data-disabled="!updatable"\n  data-required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n  &lt;description&gt;&lt;span translate&gt;Your Okta domain. For example, companyname.okta.com&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n&lt;form-control-full-text&gt;\n  &lt;span translate&gt;To enable authentication with {{moduleDraft.name}}, use this authorized redirect URI to generate a client ID and client secret.&lt;/span&gt;\n  &lt;hub-help-link data-url="{{ getDocumentationLink(module) }}"&gt;&lt;span translate&gt;Learn more&lt;/span&gt;&lt;/hub-help-link&gt;\n&lt;/form-control-full-text&gt;\n\n&lt;form-control-text-copy\n        data-label="{{ \'Redirect URI\' | translate }}"\n        data-text="{{ moduleDraft.redirectUri }}"&gt;\n&lt;/form-control-text-copy&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Client ID\' | translate }}"\n  data-model="moduleDraft.clientId"\n  data-disabled="!updatable"\n  data-required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n  &lt;description&gt;&lt;span translate&gt;The client ID generated by Okta&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Client secret\' | translate }}"\n  data-model="moduleDraft.clientSecret"\n  data-type="password"\n  data-disabled="!updatable"\n  data-required="updatable &amp;&amp; !moduleDraft.disabled"&gt;\n  &lt;description&gt;&lt;span translate&gt;The client secret generated by Okta&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Extension grant\' | translate }}"\n  data-model="moduleDraft.extensionGrantType"\n  data-disabled="!updatable"\n  data-required="false"&gt;\n  &lt;description&gt;&lt;span translate&gt;Optional extension grant name for Okta.\n  If specified, allows exchanging access tokens issued by Okta for Hub access tokens.&lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n\n&lt;div class="ring-form__title ring-form__title_separated"&gt;\n  &lt;span translate&gt;Synchronization&lt;/span&gt;\n  &lt;rg-icon\n    rg-tooltip="{{\'To synchronize user attributes and group memberships with Okta, use these settings to set the synchronization schedule and store an API token from Okta\' | translate}}"\n    glyph="'+n(69840)+'"\n    size="16"\n    class="ring-tooltip-ng__hint-icon"&gt;\n  &lt;/rg-icon&gt;\n&lt;/div&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'API token\' | translate }}"\n  data-model="moduleDraft.apiToken"\n  data-type="password"\n  data-disabled="!updatable"&gt;\n  &lt;description&gt;&lt;span translate&gt;\n      Provide an API token that grants authorized access to Okta\n  &lt;/span&gt;&lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-select\n  data-label="{{\'Schedule\' | translate}}"\n  data-instant="true"\n  data-disabled="!moduleDraft.apiToken || !updatable"\n  data-options="o.value as o.label select as o.label describe as o.value for o in getSyncIntervals() track by o.tracker"\n  data-model="moduleDraft.syncInterval"\n  data-test="ldap-sync-interval-selector"\n  class="authmodule-page__ldap__sync-selector"&gt;\n&lt;/form-control-select&gt;\n\n&lt;rg-button\n  rg-promised-click="syncNow()"\n  promised-mode="loader"\n  ng-disabled="!moduleDraft.apiToken || !updatable"\n  data-test="ldap-sync-now-button"\n  class="authmodule-page__ldap__sync-button"&gt;\n  &lt;span translate&gt;Synchronize now&lt;/span&gt;\n&lt;/rg-button&gt;\n\n\x3c!--todo We now have a css file for okta sync settings, tho for some reason if we use it the button is aligned wrongly--\x3e\n&lt;span\n  class="ring-form__control__description authmodule-page__ldap__sync-description"\n  translate&gt;\n  Set the schedule for synchronizing user attributes and group memberships with the directory service\n&lt;/span&gt;\n\n\n&lt;div class="ring-form__title ring-form__title_separated" ng-if="moduleDraft.attributeMappings"&gt;\n  &lt;span translate&gt;Field Mapping&lt;/span&gt;\n  &lt;rg-icon\n    rg-tooltip="\'To specify paths to fields inside nested objects, enter a sequence of segments separated by the slash character (/). To reference values that may be stored in more than one location, use \\\'?:\\\' as a delimiter for multiple paths.\' | translate"\n    glyph="'+n(69840)+'"\n    size="16"\n    class="ring-tooltip-ng__hint-icon"&gt;\n  &lt;/rg-icon&gt;\n&lt;/div&gt;\n\n\n&lt;div ng-repeat="attributeMapping in moduleDraft.attributeMappings"&gt;\n  &lt;form-control-edit-text\n    data-label="{{ attributeMapping.attributePrototype.name }}"\n    data-model="attributeMapping.mapping"\n    data-extra-class="ring-input-size_md"\n    data-disabled="!updatable"&gt;\n  &lt;/form-control-edit-text&gt;\n&lt;/div&gt;\n\n&lt;hub-page-help data-url="{{ getDocumentationLink(module) }}"&gt;\n  &lt;div translate&gt;\n    To let users log in to Hub with their Okta accounts, you need a client ID and client secret, which are\n    typically obtained when the Hub service is registered as an application in Okta.\n    Use the URI provided on this page as an authorized redirect URI.\n    You can configure how Hub manages accounts for users that sign in with Okta:\n    &lt;ul class="hub-menu__list"&gt;\n      &lt;li class="hub-menu__list-item"&gt;Allow or deny the automatic creation of user accounts. When a user logs in with\n        Okta credentials, Hub uses the email address to determine whether the user has an existing account.\n        If a match is not found, a new user account is created.&lt;/li&gt;\n      &lt;li class="hub-menu__list-item"&gt;Create a list of groups to which new accounts are added automatically.&lt;/li&gt;\n    &lt;/ul&gt;\n  &lt;/div&gt;\n&lt;/hub-page-help&gt;\n'},19935:e=&gt;{e.exports='&lt;div rg-dialog-title="{{ \'Add Mapping\' | translate }}"&gt;\n  &lt;div class="ring-form__group"&gt;\n    &lt;form-control-edit-text\n      data-extra-class="ring-input-size_md"\n      data-label="{{\'Okta group name\' | translate}}"\n      data-model="dialog.data.externalGroupName"\n      data-required="true"\n      data-config="dialog.data.externalGroupNameConfig"\n    &gt;&lt;/form-control-edit-text&gt;\n  &lt;/div&gt;\n\n  &lt;form-control-select\n    data-label="{{\'Target group\' | translate}}"\n    data-instant="true"\n    data-required="true"\n    data-options="describe as item.name for item in dialog.data.groupData(query) track by item.id"\n    data-model="dialog.data.group"\n  &gt;&lt;/form-control-select&gt;\n&lt;/div&gt;\n'},91768:e=&gt;{e.exports='&lt;form-save item="module" draft="moduleDraft" collections="{autoJoinGroups: AutoJoinGroupResource}" panel-class="container"&gt;\n  &lt;div ng-controller="OktaGroupMappingCtrl as oktaCtrl" class="authmodule-page__okta"&gt;\n    &lt;rg-legacy-table-toolbar stick container=".authmodule-page__okta"&gt;\n      &lt;div rg-button-toolbar&gt;\n        &lt;rg-button\n          data-test="add-group-mapping-data"\n          ng-show="updatable"\n          delayed="true"\n          mode="primary"\n          rg-promised-click="oktaCtrl.addGroupMapping()"\n        &gt;&lt;span title="{{\'Map a group in Hub to a group in the Okta service\' | translate}}"\n               translate&gt;Add mapping&lt;/span&gt;&lt;/rg-button&gt;\n        &lt;rg-button\n          data-test="remove-group-mapping-data"\n          ng-show="updatable"\n          ng-disabled="oktaCtrl.selection.getActive().size === 0"\n          ng-click="oktaCtrl.removeGroupMapping()"&gt;\n          &lt;span title="{{oktaCtrl.removeButtonTitle()}}" translate&gt;Remove&lt;/span&gt;\n        &lt;/rg-button&gt;\n      &lt;/div&gt;\n    &lt;/rg-legacy-table-toolbar&gt;\n\n    &lt;rg-table\n      ng-if="moduleDraft.groupMappings &amp;&amp; moduleDraft.groupMappings.length"\n      data="moduleDraft.groupMappings"\n      columns="oktaCtrl.columns"\n      get-item-key="oktaCtrl.keyGetter"\n\n      selection="oktaCtrl.selection"\n      on-select="oktaCtrl.onSelect"\n    &gt;&lt;/rg-table&gt;\n\n    &lt;div ng-if="!moduleDraft.groupMappings.length" class="ring-form__control__description container"&gt;\n      &lt;span translate&gt;None of the groups in the Okta service are mapped to groups in Hub&lt;/span&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/form-save&gt;\n\n'},53686:e=&gt;{e.exports='&lt;form-control-icon\n        x-label="{{ \'Button image\' | translate }}"\n        x-model="moduleDraft.iconUrl"&gt;\n&lt;/form-control-icon&gt;\n\n&lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Server URL\' | translate }}"\n  data-model="moduleDraft.serverUrl"\n  data-disabled="!updatable"\n  data-required="updatable"&gt;\n  &lt;description&gt;\n    &lt;span translate&gt;URL of the OpenID provider that authenticates Hub login requests&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;div class="ring-form__title ring-form__title_separated" translate&gt;Schema&lt;/div&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Email\' | translate }}"\n  data-model="moduleDraft.emailSchema"\n  data-disabled="!updatable"&gt;\n  &lt;description&gt;\n    &lt;span translate&gt;Stores the location that contains the email address&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'First name\' | translate }}"\n  data-model="moduleDraft.firstNameSchema"\n  data-disabled="!updatable"&gt;\n  &lt;description&gt;\n    &lt;span translate&gt;Stores the location that contains the first name of the user&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Last name\' | translate }}"\n  data-model="moduleDraft.lastNameSchema"\n  data-disabled="!updatable"&gt;\n  &lt;description&gt;\n    &lt;span translate&gt;Stores the location that contains the last name of the user&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Full name\' | translate }}"\n  data-model="moduleDraft.fullNameSchema"\n  data-disabled="!updatable"&gt;\n  &lt;description&gt;\n    &lt;span translate&gt;Stores the location that contains the full name of the user&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;form-control-edit-text\n  data-extra-class="ring-input-size_l"\n  data-label="{{ \'Avatar\' | translate }}"\n  data-model="moduleDraft.avatarSchema"\n  data-disabled="!updatable"&gt;\n  &lt;description&gt;\n    &lt;span translate&gt;Stores the location that contains the avatar of the user&lt;/span&gt;\n  &lt;/description&gt;\n&lt;/form-control-edit-text&gt;\n\n&lt;hub-page-help data-url="{{ getDocumentationLink(module) }}"&gt;\n  &lt;span translate&gt;Enable authentication for any OpenID provider that uses &lt;b&gt;OpenID 2.0&lt;/b&gt;.\n    In addition to the basic settings, you can configure options that define how Hub treats the new user accounts with &lt;b&gt;OpenID 2.0&lt;/b&gt; credentials:\n    &lt;ul class="hub-menu__list"&gt;\n      &lt;li class="hub-menu__list-item"&gt;Use the Schema settings to map user data that is stored with the OpenID provider to user accounts in Hub.&lt;/li&gt;\n      &lt;li class="hub-menu__list-item"&gt;Allow or deny the automatic creation of user accounts. When a user logs in with &lt;b&gt;OpenID 2.0&lt;/b&gt; credentials,\n        Hub checks if an account with the same email address exists. If a match is not found, a new account is created in Hub.&lt;/li&gt;\n      &lt;li class="hub-menu__list-item"&gt;Create a list of groups to which new accounts that are created with &lt;b&gt;OpenID 2.0&lt;/b&gt; credentials are added automatically.&lt;/li&gt;\n    &lt;/ul&gt;\n  &lt;/span&gt;\n&lt;/hub-page-help&gt;\n'},49929:(e,t,n)=&gt;{e.exports='&lt;div&gt;\n  &lt;div class="ring-form__group" rg-dialog-title="{{ \'New SAML 2.0 Auth Module\' | translate }}"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n    &lt;div class="ring-form__control hub-form-control authmodule-list__create-dialog__saml__control"&gt;\n      &lt;input id="create-dialog__name" name="name" required type="text"\n             ng-class="dialog.dialogForm.name | rgInputClass" ng-model="dialog.data.item.name"\n             class="ring-input-size_md authmodule-list__create-dialog__saml__input"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.name" class="authmodule-list__create-dialog__saml__bubble"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__url" translate&gt;SAML SSO URL&lt;/label&gt;\n\n    &lt;div class="ring-form__control hub-form-control authmodule-list__create-dialog__saml__control"&gt;\n      &lt;input id="create-dialog__url" name="url" required\n             ng-class="dialog.dialogForm.url | rgInputClass" ng-model="dialog.data.item.serverUrl"\n             class="ring-input-size_md"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.url" class="authmodule-list__create-dialog__saml__bubble"&gt;&lt;/div&gt;\n      &lt;rg-icon\n        rg-tooltip="\'The URL that Hub uses to redirect users to the external identity provider. Hub supports HTTP-redirect binding for sign-on only.\' | translate"\n        glyph="'+n(69840)+'"\n        size="16"\n        class="ring-tooltip-ng__hint-icon"&gt;&lt;/rg-icon&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__idpEntityId" translate&gt;IdP entity ID&lt;/label&gt;\n\n    &lt;div class="ring-form__control hub-form-control authmodule-list__create-dialog__saml__control"&gt;\n      &lt;input id="create-dialog__idpEntityId" name="idpEntityId" required\n             ng-class="dialog.dialogForm.idpEntityId | rgInputClass" ng-model="dialog.data.item.idpEntityId"\n             class="ring-input-size_md"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.idpEntityId" class="authmodule-list__create-dialog__saml__bubble"&gt;&lt;/div&gt;\n      &lt;rg-icon\n        rg-tooltip="\'The entity ID of the external identity provider\' | translate"\n        glyph="'+n(69840)+'"\n        size="16"\n        class="ring-tooltip-ng__hint-icon"&gt;&lt;/rg-icon&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__certificateFingerprint" translate&gt;Certificate fingerprint&lt;/label&gt;\n\n    &lt;div class="ring-form__control hub-form-control authmodule-list__create-dialog__saml__control"&gt;\n      &lt;input id="create-dialog__certificateFingerprint" name="certificateFingerprint" required\n             ng-class="dialog.dialogForm.certificateFingerprint | rgInputClass" ng-model="dialog.data.item.certificateFingerprint"\n             class="ring-input-size_md" spellcheck="false"&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.certificateFingerprint" class="authmodule-list__create-dialog__saml__bubble"&gt;&lt;/div&gt;\n      &lt;rg-icon\n        rg-tooltip="\'The SHA-256 fingerprint of the identity provider SAML certificate. Use the SAML XML Metadata from your identity provider to generate the fingerprint.\' | translate"\n        glyph="'+n(69840)+'"\n        size="16"\n        class="ring-tooltip-ng__hint-icon"&gt;&lt;/rg-icon&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n&lt;/div&gt;\n'},75584:e=&gt;{e.exports='&lt;div ng-controller="SamlAuthModuleEditCtrl"&gt;\n  &lt;form-control-icon\n    x-label="{{ \'Button image\' | translate }}"\n    x-model="moduleDraft.iconUrl"&gt;\n  &lt;/form-control-icon&gt;\n\n  &lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n  &lt;form-control-edit-text\n    data-extra-class="ring-input-size_l"\n    data-label="{{ \'SAML SSO URL\' | translate }}"\n    data-model="moduleDraft.serverUrl"\n    data-disabled="!updatable"\n    data-required="updatable"&gt;\n    &lt;description&gt;\n      &lt;span translate&gt;The URL that Hub uses to redirect users to the external identity provider. Hub supports HTTP-redirect binding for sign-on only.&lt;/span&gt;\n    &lt;/description&gt;\n  &lt;/form-control-edit-text&gt;\n\n  &lt;form-control-edit-text\n    data-extra-class="ring-input-size_l"\n    data-label="{{ \'IdP entity ID\' | translate }}"\n    data-model="moduleDraft.idpEntityId"\n    data-disabled="!updatable"\n    data-required="updatable"&gt;\n    &lt;description&gt;\n      &lt;span translate&gt;The entity ID of the external identity provider&lt;/span&gt;\n    &lt;/description&gt;\n  &lt;/form-control-edit-text&gt;\n\n  &lt;form-control-edit-text\n    data-extra-class="ring-input-size_l"\n    data-label="{{ \'Certificate fingerprint\' | translate }}"\n    data-model="moduleDraft.certificateFingerprint"\n    data-disabled="!updatable"\n    data-required="updatable"&gt;\n    &lt;description&gt;\n      &lt;span translate&gt;The SHA-256 fingerprint of the identity provider SAML certificate. Use the SAML XML Metadata from your identity provider to generate the fingerprint.&lt;/span&gt;\n    &lt;/description&gt;\n  &lt;/form-control-edit-text&gt;\n\n  &lt;form-control-separator&gt;&lt;/form-control-separator&gt;\n\n  &lt;form-control-edit-text\n    data-extra-class="ring-input-size_l"\n    data-label="{{ \'SP entity ID\' | translate }}"\n    data-model="moduleDraft.spEntityId"\n    data-disabled="!updatable"\n    data-required="updatable"&gt;\n    &lt;description&gt;\n      &lt;span translate&gt;The URL that identifies Hub as a service provider&lt;/span&gt;\n    &lt;/description&gt;\n  &lt;/form-control-edit-text&gt;\n\n  &lt;ssl-key-picker item="moduleDraft" disabled="!updatable"&gt;\n      &lt;span\n        class="ring-form__control__description"\n        translate&gt;Authenticates Hub as a service provider in requests and responses sent to external servers&lt;/span&gt;\n  &lt;/ssl-key-picker&gt;\n\n  &lt;form-control-link\n    data-link="{{ moduleDraft.ascUrl }}"\n    data-label="{{\'ACS URL\' | translate}}"\n    data-description="{{\'The assertion consumer service URL used by Hub as a service provider\' | translate}}"&gt;\n  &lt;/form-control-link&gt;\n\n  &lt;form-control-link\n    data-link="{{ moduleDraft.spMetadataUrl }}"\n    data-label="{{\'SP metadata\' | translate}}"\n    data-description="{{\'The URL that Hub uses to provide metadata to the external identity provider\' | translate}}"&gt;\n  &lt;/form-control-link&gt;\n\n  &lt;form-control-select\n    data-disabled="!updatable"\n    data-label="{{ \'Contact user\' | translate }}"\n    data-config="contactUserSelectConfig"\n    data-model="moduleDraft.contactUser"\n    data-options="user.login describe as user.profile.email.email for user in userDataSource(query) track by user.id"&gt;\n    &lt;description&gt;\n      &lt;span translate&gt;The user who is responsible for the SAML 2.0 service provider configuration. Must have a verified email address.&lt;/span&gt;\n    &lt;/description&gt;\n  &lt;/form-control-select&gt;\n\n  &lt;div class="ring-form__title ring-form__title_separated" translate&gt;Attributes&lt;/div&gt;\n\n  &lt;form-control-edit-text\n    data-extra-class="ring-input-size_l"\n    data-label="{{ \'Username\' | translate }}"\n    data-model="moduleDraft.loginAttributeName"\n    data-disabled="!updatable"&gt;\n    &lt;description&gt;\n      &lt;span translate&gt;Name of the SAML attribute that stores the username&lt;/span&gt;\n    &lt;/description&gt;\n  &lt;/form-control-edit-text&gt;\n\n  &lt;form-control-edit-text\n    data-extra-class="ring-input-size_l"\n    data-label="{{ \'Email\' | translate }}"\n    data-model="moduleDraft.emailAttributeName"\n    data-disabled="!updatable"&gt;\n    &lt;description&gt;\n      &lt;span translate&gt;Name of the SAML attribute that stores the email address&lt;/span&gt;\n    &lt;/description&gt;\n  &lt;/form-control-edit-text&gt;\n\n  &lt;form-control-edit-text\n    data-extra-class="ring-input-size_l"\n    data-label="{{ \'First name\' | translate }}"\n    data-model="moduleDraft.firstNameAttributeName"\n    data-disabled="!updatable"&gt;\n    &lt;description&gt;\n      &lt;span translate&gt;Name of the SAML attribute that stores the first name of the user&lt;/span&gt;\n    &lt;/description&gt;\n  &lt;/form-control-edit-text&gt;\n\n  &lt;form-control-edit-text\n    data-extra-class="ring-input-size_l"\n    data-label="{{ \'Last name\' | translate }}"\n    data-model="moduleDraft.lastNameAttributeName"\n    data-disabled="!updatable"&gt;\n    &lt;description&gt;\n      &lt;span translate&gt;Name of the SAML attribute that stores the last name of the user&lt;/span&gt;\n    &lt;/description&gt;\n  &lt;/form-control-edit-text&gt;\n\n  &lt;form-control-edit-text\n    data-extra-class="ring-input-size_l"\n    data-label="{{ \'Full name\' | translate }}"\n    data-model="moduleDraft.fullNameAttributeName"\n    data-disabled="!updatable"&gt;\n    &lt;description&gt;\n      &lt;span translate&gt;Name of the SAML attribute that stores the full name of the user&lt;/span&gt;\n    &lt;/description&gt;\n  &lt;/form-control-edit-text&gt;\n\n  &lt;form-control-edit-text\n    data-extra-class="ring-input-size_l"\n    data-label="{{ \'Groups\' | translate }}"\n    data-model="moduleDraft.groupsAttributeName"\n    data-disabled="!updatable"&gt;\n  &lt;/form-control-edit-text&gt;\n\n  &lt;div ng-repeat="attributeMapping in moduleDraft.attributeMappings"&gt;\n    &lt;form-control-edit-text\n      data-label="{{ attributeMapping.attributePrototype.name }}"\n      data-model="attributeMapping.mapping"\n      data-extra-class="ring-input-size_md"\n      data-disabled="!updatable"&gt;\n    &lt;/form-control-edit-text&gt;\n  &lt;/div&gt;\n\n  &lt;hub-page-help data-url="{{ getDocumentationLink(module) }}"&gt;\n    &lt;span translate&gt;The &lt;b&gt;SAML 2.0&lt;/b&gt; authentication module lets you connect Hub to an external SAML identity provider and use the SAML IdP to manage single sign-on for all of your user accounts.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},76343:e=&gt;{e.exports='&lt;div rg-dialog-title="{{ \'Add Mapping\' | translate }}"&gt;\n  &lt;div class="ring-form__group"&gt;\n    &lt;form-control-edit-text\n      data-extra-class="ring-input-size_md"\n      data-label="{{\'SAML group name\' | translate}}"\n      data-model="dialog.data.externalGroupName"\n      data-required="true"\n      data-config="dialog.data.externalGroupNameConfig"\n    &gt;&lt;/form-control-edit-text&gt;\n  &lt;/div&gt;\n\n  &lt;form-control-select\n    data-label="{{\'Target group\' | translate}}"\n    data-instant="true"\n    data-required="true"\n    data-options="describe as item.name for item in dialog.data.groupData(query) track by item.id"\n    data-model="dialog.data.group"\n  &gt;&lt;/form-control-select&gt;\n&lt;/div&gt;\n'},11177:e=&gt;{e.exports='&lt;form-save item="module" draft="moduleDraft" collections="{autoJoinGroups: AutoJoinGroupResource}" panel-class="container"&gt;\n  &lt;div ng-controller="SamlGroupMappingCtrl as samlCtrl" class="authmodule-page__saml"&gt;\n    &lt;rg-legacy-table-toolbar stick container=".authmodule-page__saml"&gt;\n      &lt;div rg-button-toolbar&gt;\n        &lt;rg-button\n          data-test="add-group-mapping-data"\n          ng-show="updatable"\n          delayed="true"\n          mode="primary"\n          rg-promised-click="samlCtrl.addGroupMapping()"\n        &gt;&lt;span title="{{\'Map a group in Hub to a group in the SAML service\' | translate}}"\n               translate&gt;Add mapping&lt;/span&gt;&lt;/rg-button&gt;\n        &lt;rg-button\n          data-test="remove-group-mapping-data"\n          ng-show="updatable"\n          ng-disabled="samlCtrl.selection.getActive().size === 0"\n          ng-click="samlCtrl.removeGroupMapping()"&gt;\n          &lt;span title="{{samlCtrl.removeButtonTitle()}}" translate&gt;Remove&lt;/span&gt;\n        &lt;/rg-button&gt;\n      &lt;/div&gt;\n    &lt;/rg-legacy-table-toolbar&gt;\n\n    &lt;rg-table\n      ng-if="moduleDraft.groupMappings &amp;&amp; moduleDraft.groupMappings.length"\n      data="moduleDraft.groupMappings"\n      columns="samlCtrl.columns"\n      get-item-key="samlCtrl.keyGetter"\n\n      selection="samlCtrl.selection"\n      on-select="samlCtrl.onSelect"\n    &gt;&lt;/rg-table&gt;\n\n    &lt;div ng-if="!moduleDraft.groupMappings.length" class="ring-form__control__description container"&gt;\n      &lt;span translate&gt;Synchronize group memberships for accounts in the SAML service by adding mappings to target groups here&lt;/span&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/form-save&gt;\n\n'},24388:(e,t,n)=&gt;{e.exports='&lt;div class="ring-form__group" ng-show="dialog.data.requireOldPassword"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__oldPassword"\n         translate&gt;Old Password&lt;/label&gt;\n\n  &lt;div class="ring-form__control ring-form__control_small"&gt;\n    &lt;input id="create-dialog__oldPassword" name="oldPassword" ng-required="dialog.data.requireOldPassword"\n           type="password"\n           ng-class="dialog.data.getOldPasswordClasses(dialog.dialogForm.oldPassword)"\n           ng-model="dialog.data.oldPassword"\n           class="ring-input-size_md"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.oldPassword"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group" rg-dialog-title="{{ \'Change Password\' | translate }}"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__password"\n          translate&gt;New Password&lt;/label&gt;\n\n  &lt;div class="ring-form__control ring-form__control_small"&gt;\n    &lt;password-strength ng-if="!dialog.data.hideStrength" value="dialog.data.password" user="dialog.data.user.id" class="ring-input-size_md"&gt;\n      &lt;input id="create-dialog__password" name="password" required type="password"\n             ng-class="dialog.dialogForm.password | rgInputClass" ng-model="dialog.data.password"\n      &gt;\n    &lt;/password-strength&gt;\n\n    &lt;input ng-if="dialog.data.hideStrength" id="create-dialog__password" name="password" required type="password"\n           ng-class="dialog.dialogForm.password | rgInputClass" ng-model="dialog.data.password"\n    &gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.password"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__confirm"\n         translate translate-context="Form field label"&gt;Confirm&lt;/label&gt;\n\n  &lt;div class="ring-form__control ring-form__control_small"&gt;\n    &lt;input id="create-dialog__confirm" name="confirm" rg-equal-value="dialog.data.password" type="password"\n           ng-class="dialog.dialogForm.confirm | rgInputClass" ng-model="dialog.data.confirm"\n           class="ring-input-size_md"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.confirm"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group" ng-show="dialog.data.displayPasswordChangeCheckbox &amp;&amp; !dialog.data.requireOldPassword"&gt;\n  &lt;div class="ring-form__control ring-form__control_small"&gt;\n    &lt;rg-checkbox ng-model="dialog.data.forceChange"&gt;&lt;span translate&gt;Force changing password&lt;/span&gt;&lt;/rg-checkbox&gt;\n    &lt;rg-icon rg-tooltip=":: dialog.data.hint" glyph="'+n(69840)+'" size="16" class="ring-tooltip-ng__hint-icon"&gt;&lt;/rg-icon&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},58606:(e,t,n)=&gt;{e.exports='&lt;div&gt;\n  &lt;div class="expander__header"&gt;\n    &lt;a class="ring-link expander__link" ng-click="$ctrl.toggleExpanded()" data-test="permissions-toggle"&gt;\n      &lt;rg-icon ng-show="$ctrl.expanded" size="13" glyph="'+n(59227)+'"&gt;&lt;/rg-icon&gt;\n      &lt;rg-icon ng-show="!$ctrl.expanded" size="13" glyph="'+n(58716)+'"&gt;&lt;/rg-icon&gt;\n    &lt;/a&gt;\n\n    &lt;span ng-transclude="header" class="expander__header-content"&gt;&lt;/span&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-transclude="content" ng-if="$ctrl.expanded"&gt;&lt;/div&gt;\n&lt;/div&gt;\n'},9066:e=&gt;{e.exports='&lt;div class="hub-frame__outer" ng-class="frameClass"&gt;\n  &lt;img class="hub-frame__image" ng-class="imageClass" ng-src="{{src}}"&gt;\n&lt;/div&gt;\n'},75239:e=&gt;{e.exports='&lt;rg-button\n        data-test="delete-button"\n        danger="true"\n        ng-class="{\'hub-header__control\': !inline}"\n\n        rg-promised-click="onClick()"\n&gt;{{label}}&lt;/rg-button&gt;\n'},19128:(e,t,n)=&gt;{e.exports='&lt;div class="hub-header-with-description"&gt;\n  &lt;div class="hub-header"&gt;\n    &lt;rg-heading class="hub-header__title"&gt;\n      &lt;span ng-transclude="title"&gt;&lt;/span&gt;\n\n      &lt;rg-icon\n        ng-if="isAvailable &amp;&amp; descriptionId"\n        size="16"\n        glyph="'+n(69840)+'"\n        class="ring-link hub-header-title__icon"\n        ng-class="{\'global__icon_blue\': !isEnabled}"\n        ng-click="onToggle()"\n        title="{{isEnabled ? (\'Hide description\' | translate) : (\'Show description\' | translate)}}"\n      &gt;&lt;/rg-icon&gt;\n    &lt;/rg-heading&gt;\n  &lt;/div&gt;\n\n  &lt;div class="hub-header-description" ng-if="isAvailable &amp;&amp; descriptionId &amp;&amp; isEnabled"&gt;\n    &lt;div ng-transclude="description"&gt;&lt;/div&gt;\n\n    &lt;rg-icon\n      size="16"\n      glyph="'+n(9912)+'"\n      class="ring-link hub-header-description__icon"\n      ng-click="onToggle()"\n      title="{{::\'Hide description\' | translate}}"\n    &gt;&lt;/rg-icon&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},58866:e=&gt;{e.exports='&lt;div\n  class="hub-header_with-search"\n  ng-class="{\'hub-header\': true, \'hub-header_embedded\': embedded,\n  \'hub-header_docked\': docked, \'hub-header_padded\': padded,\n  \'hub-header_docked_active\': docked &amp;&amp; (focus || query.length),\n  \'hub-header_light\': theme === \'light\'\n  }"&gt;\n    &lt;form class="hub-header__form ring-header__search"&gt;\n        &lt;div class="hub-header__query-input" rg-shortcuts="hub-header" shortcuts-map="keys" shortcuts-focus="focus"&gt;\n          &lt;rg-query-assist\n            x-clear="true"\n            x-data-source="source"\n            huge="!embedded"\n            glass="true"\n            on-apply="search"\n            on-change="change"\n            on-focus-change="focusChange"\n            focus="focus"\n            placeholder="placeholder"\n            hint="\'Press â‡¥ to complete first item\' | translate"\n            hint-on-selection="\'Press â†© to complete selected item\' | translate"\n            query="query"\n            size="\'FULL\'"\n          /&gt;\n        &lt;/div&gt;\n    &lt;/form&gt;\n    &lt;div ng-transclude&gt;&lt;/div&gt;\n&lt;/div&gt;\n'},43571:e=&gt;{e.exports='&lt;rg-tags-input\n  height="\'S\'"\n  tags="$ctrl.tags"\n  x-data-source="$ctrl.datasource"\n  on-add-tag="$ctrl.onAdd"\n  on-remove-tag="$ctrl.onRemove"\n  placeholder="$ctrl.placeholder"\n  size="$ctrl.size"\n  data-disabled="$ctrl.disabled"\n  max-popup-height="250"\n  loading-message="\'Loading...\' | translate"\n&gt;&lt;/rg-tags-input&gt;\n\n&lt;input type="hidden" ng-required="$ctrl.required &amp;&amp; $ctrl.model.length &lt; 1" ng-model="disabler" value=""/&gt;\n'},11823:e=&gt;{e.exports='&lt;div class="content ring-clearfix"&gt;\n  &lt;hub-header-with-description ng-if="$ctrl.getTitle" description-id="$ctrl.descriptionId"&gt;\n    &lt;hub-header-with-description-title&gt;{{$ctrl.getTitle($ctrl.data.headerTotal || $ctrl.data.total)}}&lt;/hub-header-with-description-title&gt;\n    &lt;hub-header-with-description-description&gt;\n      &lt;ng-transclude&gt;&lt;/ng-transclude&gt;\n    &lt;/hub-header-with-description-description&gt;\n  &lt;/hub-header-with-description&gt;\n\n  &lt;div class="table__container"&gt;\n    &lt;react-sidebar-wrapper\n      ng-if="$ctrl.sidebar"\n      show="$ctrl.view.showSidebar"\n      component="$ctrl.sidebar.component"\n      item="$ctrl.sidebarElement"\n      empty="$ctrl.sidebar.empty"\n      icon="$ctrl.sidebar.icon"\n    &gt;&lt;/react-sidebar-wrapper&gt;\n\n    &lt;rg-sidebar\n      data-test="table-sidebar"\n      ng-if="$ctrl.view.sidebarEnabled &amp;&amp; !$ctrl.sidebar &amp;&amp; $ctrl.toolbarIsReady"\n      show="$ctrl.view.showSidebar"\n      place-under-sibling=".ring-table__toolbar-controls"\n      sync-bottom="[data-test=\'table-pager\'];2,[data-test=\'ring-footer\'];-40"\n      listen-to-height-change="{{$ctrl.listenToHeightChangeSelector || \'.app__content\'}}"\n      top-offset="1"\n      dialog-is-active="$ctrl.view.dialogIsActive"\n    &gt;\n      &lt;rg-template ng-if="$ctrl.sidebarElement" template="$ctrl.sidebarTemplate()"&gt;&lt;/rg-template&gt;\n\n      &lt;div ng-if="!$ctrl.sidebarElement" class="ring-sidebar__empty" data-test="table-sidebar-empty"&gt;\n        &lt;rg-icon ng-if="$ctrl.sidebarIcon" class="ring-sidebar__empty-icon" size="128" glyph="{{$ctrl.sidebarIcon}}"&gt;&lt;/rg-icon&gt;\n        &lt;div class="ring-sidebar__empty-description"&gt;{{$ctrl.sidebarEmpty}}&lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/rg-sidebar&gt;\n\n    &lt;rg-legacy-table-toolbar\n      stick\n      ng-if="!$ctrl.toolbarComponent"\n      toolbar-is-ready="$ctrl.toolbarIsReady"\n      container=".table__container"&gt;\n      &lt;rg-template data-test="table-toolbar-left" template="$ctrl.toolbarTemplate()"&gt;&lt;/rg-template&gt;\n\n      &lt;rg-sidebar-toggle-button data-test="table-toolbar-toggle" ng-if="$ctrl.view.sidebarEnabled" model="$ctrl.view.showSidebar" class="hub-header__controls__sidebar" dialog-is-active="$ctrl.view.dialogIsActive"&gt;\n        &lt;span title="{{ \'Details\' | translate }}" translate&gt;Details&lt;/span&gt;\n      &lt;/rg-sidebar-toggle-button&gt;\n\n      &lt;rg-template data-test="table-toolbar-right" template="$ctrl.rightToolbarTemplate()" class="hub-header__controls__right-toolbar"&gt;&lt;/rg-template&gt;\n    &lt;/rg-legacy-table-toolbar&gt;\n\n    &lt;react-toolbar-wrapper\n      ng-if="$ctrl.toolbarComponent"\n      data-test="table-toolbar-left"\n      component="$ctrl.toolbarComponent"\n      selection="$ctrl.selection"\n      sidebar-is-open="$ctrl.view.showSidebar"\n      height="$ctrl.toolbarHeight"\n    &gt;&lt;/react-toolbar-wrapper&gt;\n\n    &lt;rg-smart-table\n      class="table__data"\n      ng-class="{\'table__data_with-pager\': (!$ctrl.view.noPager &amp;&amp; !$ctrl.data.error)}"\n      ng-if="$ctrl.data"\n      data="$ctrl.getData()"\n      columns="$ctrl.columns"\n      on-selection-change="$ctrl.onSelect"\n      draggable="$ctrl.draggable"\n      sticky-header-offset="::$ctrl.toolbarHeight"\n      on-reorder="$ctrl.onReorderHandler"\n      loading="$ctrl.loading || $ctrl.forceLoading"\n      selectable="$ctrl.selectable"\n      multi-selectable="$ctrl.multiSelectable"\n      sort-key="$ctrl.sortKey"\n      sort-order="$ctrl.sortOrder"\n      loader-class-name="\'table__loader\' + ($ctrl.view.showSidebar ? \' table__loader_moved-left\' : \'\')"\n      on-sort="$ctrl.onSort"\n      shortcuts="$ctrl.shortcuts"\n      is-item-selectable="$ctrl.isItemSelectable"\n      is-disabled-selection-visible="$ctrl.isDisabledSelectionVisible"\n      get-checkbox-tooltip="$ctrl.getCheckboxTooltip"\n\n      get-item-level="$ctrl.getItemLevel"\n      is-item-collapsible="$ctrl.isItemCollapsible"\n      is-parent-collapsible="$ctrl.isParentCollapsible"\n      is-item-collapsed="$ctrl.isItemCollapsed"\n      on-item-collapse="$ctrl.onItemCollapse"\n      on-item-expand="$ctrl.onItemExpand"\n    &gt;&lt;/rg-smart-table&gt;\n\n    &lt;div\n      data-test="table-pager"\n      class="table__bottom-pager"\n      ng-if="!$ctrl.view.noPager &amp;&amp; !$ctrl.data.error &amp;&amp; $ctrl.meta.total &gt; $ctrl.meta.pageSizes[0]"\n    &gt;\n      &lt;rg-pager\n        class="table__bottom-pager__inner"\n        total="$ctrl.meta.total"\n        current-page="$ctrl.meta.currentPage"\n        page-size="$ctrl.meta.pageSize"\n        translations="$ctrl.pagerTranslations"\n        on-page-change="$ctrl.onPageChange"\n        on-page-size-change="$ctrl.onPageSizeChange"\n      &gt;&lt;/rg-pager&gt;\n    &lt;/div&gt;\n\n\n    &lt;rg-template ng-if="!$ctrl.data.error &amp;&amp; $ctrl.data.total === 0 &amp;&amp; !$ctrl.loading" template="$ctrl.emptyTemplate() || $ctrl.defaultEmptyTemplate"&gt;&lt;/rg-template&gt;\n    &lt;rg-template ng-if="$ctrl.data.error" template="$ctrl.defaultBadRequestTemplate"&gt;&lt;/rg-template&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},86535:e=&gt;{e.exports='&lt;rg-tags-input\n  height="\'S\'"\n  tags="$ctrl.tags"\n  x-data-source="$ctrl.datasource"\n  on-add-tag="$ctrl.onAdd"\n  on-remove-tag="$ctrl.onRemove"\n  placeholder="$ctrl.placeholder"\n  size="$ctrl.size"\n  data-disabled="$ctrl.disabled"\n  loading-message="\'Loading...\' | translate"\n&gt;&lt;/rg-tags-input&gt;\n'},41246:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__username"\n         translate&gt;Username or email&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;input id="create-dialog__username" name="username" ng-required="true"\n           type="text" ng-class="dialog.dialogForm.username | rgInputClass" ng-model="dialog.data.username"\n           class="ring-input-size_md"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.username"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__password"\n         translate&gt;Password&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;password-strength value="dialog.data.password" username="dialog.data.username" class="ring-input-size_md"&gt;\n      &lt;input id="create-dialog__password" name="password" ng-required="true"\n             type="password" ng-class="dialog.dialogForm.password | rgInputClass" ng-model="dialog.data.password"\n      &gt;\n    &lt;/password-strength&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.password"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div ng-if="dialog.data.matches.modules.length" class="merge-user-details__group"&gt;\n    &lt;div class="merge-user-details__group__title" translate\n         translate-plural="Credentials match existing logins for {{$count}} auth modules"\n         translate-n="dialog.data.matches.modules.length"&gt;\n        Credentials match existing logins for {{$count}} auth module\n    &lt;/div&gt;\n\n    &lt;div class="merge-user-details__item" ng-repeat="module in dialog.data.matches.modules"&gt;\n        &lt;div class="merge-user-details__item__checkbox"&gt;\n            &lt;rg-checkbox ng-model="module.checked"&gt;&lt;/rg-checkbox&gt;\n        &lt;/div&gt;\n        &lt;div class="merge-user-details__item__data"&gt;\n            &lt;div class="merge-user-details__item__data__title" translate&gt;Add {{module.name}} credentials to profile&lt;/div&gt;\n            &lt;div&gt;\n                &lt;span ng-show="module.login"&gt;&lt;span translate&gt;Username:&lt;/span&gt; {{module.login}}&lt;/span&gt;\n                &lt;span ng-show="module.email"&gt;&lt;span translate&gt;Email:&lt;/span&gt; {{module.email}}&lt;/span&gt;\n            &lt;/div&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div ng-if="dialog.data.matches.users.length" class="merge-user-details__group"&gt;\n  &lt;div class="merge-user-details__group__title" translate\n       translate-plural="Credentials match existing logins for {{$count}} users"\n       translate-n="dialog.data.matches.users.length"&gt;\n    Credentials match existing logins for {{$count}} user\n  &lt;/div&gt;\n\n  &lt;div class="merge-user-details__item" ng-class="{\'merge-user-details__item_disabled\': user.disabled}" ng-repeat="user in dialog.data.matches.users"&gt;\n    &lt;div class="merge-user-details__item__checkbox"&gt;\n      &lt;rg-checkbox ng-model="user.checked" ng-disabled="user.disabled"&gt;\n        &lt;span translate&gt;Merge &lt;a class="ring-link" ng-href="users/{{user.id}}"&gt;{{user.login}}&lt;/a&gt; with current profile&lt;/span&gt;\n      &lt;/rg-checkbox&gt;\n    &lt;/div&gt;\n    &lt;div class="merge-user-details__item__data"&gt;\n      &lt;div class="merge-user-details__item__data__subgroup" ng-repeat="module in user.modules"&gt;\n        &lt;div class="merge-user-details__item__data__title"&gt;{{module.name}}&lt;/div&gt;\n        &lt;div&gt;\n          &lt;span ng-show="module.login"&gt;&lt;span translate&gt;Username:&lt;/span&gt; {{module.login}}&lt;/span&gt;\n          &lt;span ng-show="module.email"&gt;&lt;span translate&gt;Email:&lt;/span&gt; {{module.email}}&lt;/span&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div ng-if="dialog.data.matches.createAllowed" class="merge-user-details__group"&gt;\n  &lt;div class="merge-user-details__group__title" translate&gt;\n    These credentials are currently not in use\n  &lt;/div&gt;\n\n  &lt;div class="merge-user-details__item"&gt;\n    &lt;div class="merge-user-details__item__checkbox"&gt;\n      &lt;rg-checkbox ng-model="dialog.data.matches.create.checked" ng-disabled="dialog.data.matches.error"&gt;\n        &lt;span translate&gt;Save credentials in user profile&lt;/span&gt;\n      &lt;/rg-checkbox&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="merge-user-details__item__data__error" ng-show="dialog.data.matches.error"&gt;{{dialog.data.matches.error}}&lt;/div&gt;\n'},7981:e=&gt;{e.exports='&lt;div rg-dialog-title="{{ dialog.data.title }}"&gt;\n  &lt;div\n    class="ring-form__group merge-dialog__description"\n    ng-if="dialog.data.description"\n  &gt;\n    &lt;div ng-bind-html="dialog.data.description"&gt;&lt;/div&gt;\n\n    &lt;ul\n      class="merge-dialog__description-messages"\n      ng-if="dialog.data.messages &amp;&amp; dialog.data.messages.length &gt; 0"\n    &gt;\n      &lt;li\n        class="merge-dialog__description-message"\n        ng-repeat="message in dialog.data.messages"\n        ng-bind-html="message"\n      &gt;&lt;/li&gt;\n    &lt;/ul&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-repeat="field in dialog.data.fields" ng-hide="field.disabled" class="ring-form__group"&gt;\n    &lt;div ng-if="field.type === \'string\' &amp;&amp; (field.options.length &gt;= 2 || field.showIfOneValue) &amp;&amp; dialog.data.checkDepends(field)"&gt;\n      &lt;label class="ring-form__label merge-dialog__label" for="create-dialog__{{ field.name }}"&gt;{{ field.label }}&lt;/label&gt;\n\n      &lt;div class="ring-form__control"&gt;\n        &lt;rg-select\n          id="create-dialog__{{ field.name }}"\n          class="ring-input-size_md"\n          ng-model="field.value"\n          config="field.config"\n          filter="field.filter"\n          select-type="button"\n          ng-disabled="!field.externalFilter &amp;&amp; field.options.length &lt;= 1"\n          ng-required="field.required"\n          label="{{ field.placeholder }}"\n          lazy="false"\n          with-infinite-scroll="field.externalFilter"\n          external-filter="field.externalFilter"\n          options="{{ field.optionsParser }}"\n        &gt;&lt;/rg-select&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-form__group" ng-if="field.type === \'boolean\' &amp;&amp; dialog.data.checkDepends(field)"&gt;\n      &lt;div class="ring-form__control"&gt;\n        &lt;rg-checkbox ng-model="field.value"&gt;{{field.label}}&lt;/rg-checkbox&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="ring-form__group" ng-if="field.type === \'textarea\' &amp;&amp; dialog.data.checkDepends(field)"&gt;\n      &lt;label class="ring-form__label merge-dialog__label" for="create-dialog__{{ field.name }}"&gt;{{ field.label }}&lt;/label&gt;\n\n      &lt;div class="ring-form__control"&gt;\n        &lt;textarea\n          ng-model="field.value"\n          id="create-dialog__{{ field.name }}"\n          msd-elastic="\\n"\n          ng-required="field.required"\n          class="ring-input ring-input_no-resize ring-input-size_md"\n        &gt;&lt;/textarea&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},24e3:(e,t,n)=&gt;{e.exports='&lt;div class="roster"&gt;\n    &lt;div ng-repeat="item in items" class="roster__item"&gt;\n        &lt;hub-frame ng-if="item.iconUrl" frame-class="roster__item__frame" image-class="roster__item__img" image-src="{{ item.iconUrl }}"&gt;&lt;/hub-frame&gt;\n        &lt;a class="ring-link roster__item__label" ng-href="{{ getHref(item) }}"&gt;{{ getName(item) }}&lt;/a&gt;\n\n        &lt;rg-button\n          icon="'+n(9912)+'"\n          ng-show="isRemovable(makeObject(item))"\n          ng-click="remove(item)"\n          class="roster__item__remove"\n        &gt;&lt;/rg-button&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},45321:e=&gt;{e.exports='&lt;div class="search-error"&gt;\n  &lt;span class="search-error__title" translate&gt;The search query contains unknown values&lt;/span&gt;\n  &lt;span class="search-error__title search-error__title_small"\n        translate&gt;Please check the spelling of your search request and try again.&lt;/span&gt;\n&lt;/div&gt;\n'},33436:e=&gt;{e.exports='&lt;div class="search-error"&gt;\n    &lt;span class="search-error__title"\n          translate&gt;We can\'t find anything that matches your search request&lt;/span&gt;\n    &lt;span class="search-error__title search-error__title_small"\n          translate&gt;It can also mean that you don\'t have permission to view the items returned by the query. Please check your query and try again.&lt;/span&gt;\n&lt;/div&gt;\n'},16589:e=&gt;{e.exports='&lt;div ng-show="data.roles"&gt;\n  &lt;span ng-show="rolesNum === 1" translate&gt;Team members are granted the team role: {{data.roles}}&lt;/span&gt;\n  &lt;span ng-show="rolesNum &gt; 1" translate&gt;Team members are granted the team roles: {{data.roles}}&lt;/span&gt;\n&lt;/div&gt;\n\n&lt;hub-members-picker\n  model="data.members"\n  required="true"\n  datasource="data.datasource"\n  groups-query="data.groupsQuery"\n  users-query="data.usersQuery"\n  size="\'L\'"\n&gt;&lt;/hub-members-picker&gt;\n'},22984:e=&gt;{e.exports='&lt;div class="search-error"&gt;\n  &lt;span class="search-error__title"\n          translate&gt;Build a team and work together&lt;/span&gt;\n  &lt;span class="search-error__title search-error__title_small"\n        translate&gt;Adding members to the project team gives users and groups a predefined level of access to project resources. For granular permission management, use the Access tab.&lt;/span&gt;\n&lt;/div&gt;\n'},60326:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;span translate&gt;When you confirm this action, &lt;/span&gt;\n\n  &lt;b ng-show="data.users.length === 1"&gt;{{data.users[0].name}}&lt;/b&gt;\n  &lt;b ng-show="data.users.length &gt; 1"\n     translate\n     translate-plural="{{$count}} users"\n     translate-n="data.users.length"&gt;\n    {{$count}} user\n  &lt;/b&gt;\n\n  &lt;span ng-show="data.groups.length &amp;&amp; data.users.length" translate&gt;and&lt;/span&gt;\n\n  &lt;span ng-show="data.groups.length === 1" translate&gt;the &lt;b&gt;{{data.groups[0].name}} group&lt;/b&gt;&lt;/span&gt;\n  &lt;b ng-show="data.groups.length &gt; 1"\n     translate\n     translate-plural="{{$count}} groups"\n     translate-n="data.groups.length"&gt;\n    {{$count}} group\n  &lt;/b&gt;\n\n  &lt;span ng-show="data.groupingState"&gt;\n    &lt;span\n      translate\n      translate-plural="are removed from the project team"\n      translate-n="data.groups.length + data.users.length"\n    &gt;is removed from the project team&lt;/span&gt;\n  &lt;/span&gt;\n\n  &lt;span ng-show="!data.groupingState"&gt;\n    &lt;span\n      translate\n      translate-plural="are no longer assigned to the project team directly"\n      translate-n="data.users.length"\n    &gt;is no longer assigned to the project team directly&lt;/span&gt;\n  &lt;/span&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group" ng-show="!data.groupingState"&gt;\n  &lt;span ng-show="data.users.length === 1" translate&gt;The user remains on the project team as a member of one or more groups that are assigned to the project&lt;/span&gt;\n  &lt;span ng-show="data.users.length &gt; 1" translate&gt;The users remain on the project team as members of one or more groups that are assigned to the project&lt;/span&gt;\n&lt;/div&gt;\n\n&lt;div ng-if="data.hasNonEmptyGroups"&gt;\n  &lt;div translate class="project-page__options-title"&gt;Select an option for removing this group:&lt;/div&gt;\n\n  &lt;div class="project-page__options-option"&gt;\n    &lt;rg-radio\n      ng-value="dialog.data.WHOLE_GROUP"\n      name="option"\n      ng-model="data.option"\n      data-test="remove-with-members"\n    &gt;\n      &lt;span translate&gt;Remove the group and its members from the project team&lt;/span&gt;\n    &lt;/rg-radio&gt;\n  &lt;/div&gt;\n\n  &lt;div&gt;\n    &lt;rg-radio\n      ng-value="dialog.data.KEEP_USERS"\n      name="option"\n      ng-model="data.option"\n      data-test="remove-without-members"\n    &gt;\n      &lt;span translate&gt;Remove the group, but add its members to the project team&lt;/span&gt;\n    &lt;/rg-radio&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n\n'},66138:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;span translate&gt;These roles are automatically granted to team members in this project&lt;/span&gt;\n&lt;/div&gt;\n\n&lt;hub-tags-input\n  x-datasource="data.source(query)"\n  x-placeholder="{{\'Select roles\' | translate}}"\n  x-model="data.roles"\n  size="\'L\'"\n&gt;&lt;/hub-tags-input&gt;\n'},43876:e=&gt;{e.exports='&lt;div ng-controller="TeamSidebarCtrl as sidebarCtrl"&gt;\n  &lt;div class="team-tab__sidebar-header"&gt;\n    &lt;img class="ring-sidebar__avatar"\n         ng-if="sidebarCtrl.getItem().iconUrl || sidebarCtrl.getItem().profile"\n         ng-src="{{ sidebarCtrl.getItem().iconUrl || sidebarCtrl.getItem().profile.avatar.url }}" /&gt;\n\n    &lt;div class="team-tab__sidebar-header-title"&gt;\n      &lt;h2 class="ring-sidebar__title"&gt;\n        &lt;span translate&gt;{{sidebarCtrl.getItem().name}}&lt;/span&gt;\n      &lt;/h2&gt;\n\n      &lt;span ng-if="sidebarCtrl.isUser()"&gt;{{ sidebarCtrl.getItem().profile.email.email }}&lt;/span&gt;\n      &lt;span ng-if="!sidebarCtrl.isUser()"&gt;{{ sidebarCtrl.getItem().description }}&lt;/span&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-sidebar__section team-tab__sidebar-tree"&gt;\n    &lt;div ng-if="sidebarCtrl.loadingRoles"&gt;\n      &lt;rg-loader-inline&gt;&lt;/rg-loader-inline&gt;\n    &lt;/div&gt;\n\n    &lt;div ng-if="!sidebarCtrl.loadingRoles"&gt;\n      &lt;team-sidebar-roles-list\n        ng-if="sidebarCtrl.roles.currentProject"\n        access-scope="sidebarCtrl.roles.currentProject"\n        is-self-owner="sidebarCtrl.isSelfOwner(owner)"\n        is-current-team="sidebarCtrl.isCurrentTeam(owner)"\n      &gt;&lt;/team-sidebar-roles-list&gt;\n\n      &lt;team-sidebar-roles-list\n        ng-if="sidebarCtrl.roles.globalProject"\n        access-scope="sidebarCtrl.roles.globalProject"\n        is-self-owner="sidebarCtrl.isSelfOwner(owner)"\n        is-current-team="sidebarCtrl.isCurrentTeam(owner)"\n      &gt;&lt;/team-sidebar-roles-list&gt;\n\n      &lt;team-sidebar-roles-list\n        ng-if="sidebarCtrl.roles.currentOrganization"\n        access-scope="sidebarCtrl.roles.currentOrganization"\n        is-self-owner="sidebarCtrl.isSelfOwner(owner)"\n        is-current-team="sidebarCtrl.isCurrentTeam(owner)"\n      &gt;&lt;/team-sidebar-roles-list&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},82994:e=&gt;{e.exports='&lt;hub-expander on-expand="$ctrl.onExpandRoot(expanded)"&gt;\n  &lt;header&gt;\n    &lt;a class="ring-link" ng-href="{{ \'roles\' | linkToHub:$ctrl.role.role.key:$ctrl.role.role.id }}"&gt;{{:: $ctrl.role.role.name}}&lt;/a&gt;:\n\n    &lt;span&gt;\n      {{$ctrl.getRoleOrigins($ctrl.role).join(\', \')}}\n    &lt;/span&gt;\n  &lt;/header&gt;\n\n  &lt;content&gt;\n    &lt;div class="team-tab__sidebar-permissions"&gt;\n      &lt;span class="team-tab__sidebar-permissions-title" translate&gt;Permissions&lt;/span&gt;\n      &lt;hub-expander\n        ng-repeat="(entity, permissionGroup) in :: $ctrl.role.role.groupedPermisisons"\n        on-expand="$ctrl.onExpandEntity(expanded, entity)"\n      &gt;\n        &lt;header&gt;{{:: entity}}&lt;/header&gt;\n        &lt;content&gt;\n          &lt;div class="team-tab__sidebar-permission-list"&gt;\n            &lt;div  class="team-tab__sidebar-permission" ng-repeat="(permissionName, permissionsByServices) in :: permissionGroup"&gt;\n              &lt;span class="team-tab__sidebar-permission-name"&gt;{{:: permissionName}}&lt;/span&gt;\n\n              &lt;div class="team-tab__sidebar-permission-services"&gt;\n                &lt;rg-badge ng-repeat="permission in permissionsByServices"&gt;\n                  {{:: permission.service.name}}\n                &lt;/rg-badge&gt;\n              &lt;/div&gt;\n            &lt;/div&gt;\n          &lt;/div&gt;\n        &lt;/content&gt;\n      &lt;/hub-expander&gt;\n    &lt;/div&gt;\n  &lt;/content&gt;\n&lt;/hub-expander&gt;\n'},74176:e=&gt;{e.exports='&lt;div class="team-tab__sidebar-role-list"&gt;\n  &lt;span class="ring-sidebar__section-title team-tab__sidebar-project-roles-title"&gt;\n    &lt;span ng-if="$ctrl.accessScope.type === \'project\'" translate&gt;\n      Roles in {{:: $ctrl.accessScope.name}} Project\n    &lt;/span&gt;\n    &lt;span ng-if="$ctrl.accessScope.type === \'organization\'" translate&gt;\n      Roles in {{:: $ctrl.accessScope.name}} Organization\n    &lt;/span&gt;\n  &lt;/span&gt;\n\n  &lt;team-sidebar-roles-list-item\n    ng-class="{\'team-tab__sidebar-role-list-item-by-team\': $last}"\n    ng-repeat="role in :: $ctrl.accessScope.teamMemberRoles"\n    role="role"\n    is-self-owner="$ctrl.isSelfOwner({owner: owner})"\n    is-current-team="$ctrl.isCurrentTeam({owner: owner})"\n  &gt;&lt;/team-sidebar-roles-list-item&gt;\n\n  &lt;team-sidebar-roles-list-item\n    ng-repeat="role in :: $ctrl.accessScope.transitionedRoles"\n    role="role"\n    is-self-owner="$ctrl.isSelfOwner({owner: owner})"\n    is-current-team="$ctrl.isCurrentTeam({owner: owner})"\n  &gt;&lt;/team-sidebar-roles-list-item&gt;\n&lt;/div&gt;\n'},98319:(e,t,n)=&gt;{e.exports='&lt;div class="team-tab"&gt;\n  &lt;rg-sidebar\n    data-test="team-sidebar"\n    show="$ctrl.isSidebarShown"\n    place-under-sibling=".ring-table__toolbar"\n    sync-bottom="[data-test=\'ring-footer\'];-40"\n    top-offset="1"\n  &gt;\n    &lt;rg-template ng-if="$ctrl.sidebarElement" template="$ctrl.sidebarTemplate"&gt;&lt;/rg-template&gt;\n\n    &lt;div ng-if="!$ctrl.sidebarElement" class="ring-sidebar__empty" data-test="table-sidebar-empty"&gt;\n      &lt;rg-icon class="ring-sidebar__empty-icon" size="128" glyph="'+n(57522)+'"&gt;&lt;/rg-icon&gt;\n      &lt;div class="ring-sidebar__empty-description"&gt;{{\'Select an item to see details\' | translate}}&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/rg-sidebar&gt;\n\n  &lt;rg-legacy-table-toolbar stick container=".team-tab"&gt;\n    &lt;div ng-controller="ProjectTeamToolbarController as toolbarCtrl"&gt;\n      &lt;rg-template data-test="table-toolbar-left" template="$ctrl.toolbarLeftTemplate"&gt;&lt;/rg-template&gt;\n      &lt;rg-template class="team-tab__toolbar-right" data-test="table-toolbar-right" template="$ctrl.toolbarRightTemplate"&gt;&lt;/rg-template&gt;\n    &lt;/div&gt;\n  &lt;/rg-legacy-table-toolbar&gt;\n\n  &lt;div ng-if="$ctrl.groupingState &amp;&amp; !$ctrl.isEmptyTeam()"&gt;\n    &lt;rg-data-list\n      data="$ctrl.ownUserItems"\n      selection="$ctrl.selection"\n      remote-selection="true"\n      on-select="$ctrl.onSelect"\n      item-formatter="$ctrl.itemFormatter"\n      shortcuts="$ctrl.shortcuts"\n    &gt;&lt;/rg-data-list&gt;\n\n    &lt;div ng-show="!$ctrl.loading &amp;&amp; $ctrl.totalOwnUsers &amp;&amp; $ctrl.totalOwnUsers &gt; $ctrl.ownUserItems.length" class="team-tab__load-more"&gt;\n      &lt;a class="ring-link ring-link_pseudo" ng-click="$ctrl.loadMoreOwnUsers()"&gt;\n        &lt;span translate&gt;Show more&lt;/span&gt;\n      &lt;/a&gt;\n      &lt;rg-loader-inline ng-show="$ctrl.loadingMore"&gt;&lt;/rg-loader-inline&gt;\n    &lt;/div&gt;\n\n    &lt;rg-data-list\n      data="$ctrl.otherUserItems"\n      selection="$ctrl.selection"\n      on-select="$ctrl.onSelect"\n      remote-selection="true"\n      item-formatter="$ctrl.itemFormatter"\n      loading="$ctrl.loading"\n      class="team-tab__data-list"\n      shortcuts="$ctrl.shortcuts"\n\n      item-more-less-state="$ctrl.itemMoreLessState"\n      on-item-more-less="$ctrl.onItemMoreLess"\n    &gt;&lt;/rg-data-list&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-if="!$ctrl.groupingState &amp;&amp; !$ctrl.isEmptyTeam()" class="team-tab__data-list"&gt;\n    &lt;rg-data-list\n      class="team-tab__data-list"\n      data="$ctrl.otherUserItems"\n      selection="$ctrl.selection"\n      remote-selection="true"\n      on-select="$ctrl.onSelect"\n      item-formatter="$ctrl.itemFormatter"\n      shortcuts="$ctrl.shortcuts"\n      loading="$ctrl.loading"\n    &gt;&lt;/rg-data-list&gt;\n\n    &lt;div class="table__bottom-pager"&gt;\n      &lt;rg-pager\n        total="$ctrl.usersTotal"\n        class="table__bottom-pager__inner"\n        current-page="$ctrl.pager.currentPage"\n        page-size="$ctrl.pager.pageSize"\n        translations="$ctrl.pager.translations"\n        on-page-change="$ctrl.pager.onPageChange"\n        on-page-size-change="$ctrl.pager.onPageSizeChange"\n      &gt;&lt;/rg-pager&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-if="!$ctrl.error &amp;&amp; $ctrl.isEmptyTeam()"&gt;\n    &lt;rg-template ng-if="!$ctrl.queryAssistQuery" template="$ctrl.emptyTemplate"&gt;&lt;/rg-template&gt;\n    &lt;rg-template ng-if="$ctrl.queryAssistQuery" template="$ctrl.defaultEmptyTemplate"&gt;&lt;/rg-template&gt;\n  &lt;/div&gt;\n  &lt;rg-template ng-if="$ctrl.error" template="$ctrl.defaultBadRequestTemplate"&gt;&lt;/rg-template&gt;\n\n&lt;/div&gt;\n'},61573:e=&gt;{e.exports='&lt;div class="team-tab__toolbar-roles"&gt;\n  &lt;span class="team-tab__additional-description" ng-if="$ctrl.getToolbarAdditionalDescription()"&gt;\n    {{ $ctrl.getToolbarAdditionalDescription() }}\n  &lt;/span&gt;\n\n  &lt;span ng-if="toolbarCtrl.canReadProjectRoles"&gt;\n    &lt;span\n      ng-if="toolbarCtrl.rolesList.length"\n      class="team-tab__toolbar-label"\n    &gt;\n      &lt;span translate&gt;Team roles:&lt;/span&gt;\n      &lt;span&gt;{{toolbarCtrl.rolesList}}&lt;/span&gt;\n    &lt;/span&gt;\n\n    &lt;span ng-if="!toolbarCtrl.rolesList.length" translate&gt;No assigned roles&lt;/span&gt;\n\n    &lt;rg-button\n      class="team-tab__toolbar-roles-edit"\n      ng-click="toolbarCtrl.changeRoles()"\n      text="true"\n      inline="true"\n      ng-if="toolbarCtrl.canUpdateProjectRoles"\n    &gt;&lt;span translate&gt;Edit...&lt;/span&gt;&lt;/rg-button&gt;\n  &lt;/span&gt;\n&lt;/div&gt;\n\n&lt;div rg-button-toolbar&gt;\n  &lt;rg-button\n    mode="primary"\n    delayed="true"\n    rg-promised-click="toolbarCtrl.addToTeam()"\n    rg-permission="jetbrains.jetpass.project-update"\n    in-project="toolbarCtrl.projectId"\n    data-test="add-to-team-button"\n  &gt;&lt;span translate&gt;Add members&lt;/span&gt;&lt;/rg-button&gt;\n\n  &lt;rg-button\n    ng-show="toolbarCtrl.isRemoveAvailable()"\n\n    rg-promised-click="toolbarCtrl.removeFromTeam()"\n\n    rg-permission="jetbrains.jetpass.project-update"\n    in-project="toolbarCtrl.projectId"\n    data-test="remove-from-team-button"\n  &gt;\n    &lt;span ng-show="$ctrl.groupingState" translate&gt;Remove from team&lt;/span&gt;\n    &lt;span ng-show="!$ctrl.groupingState" translate&gt;Remove direct assignment&lt;/span&gt;\n  &lt;/rg-button&gt;\n\n  &lt;div\n    ng-repeat="component in $ctrl.getToolbarAdditionalComponentsSettings(toolbarCtrl.getSelectedUsers()) track by component.id"\n    rg-tooltip="{{component.title}}"\n    style="display: inline-block;"\n  &gt;\n    &lt;rg-button\n      data-test="{{\'team-toolbar-\' + component.id}}"\n      ng-disabled="component.disabled"\n      ng-click="component.onClick(toolbarCtrl.getSelectedUsers())"\n    &gt;&lt;span&gt;{{component.label}}&lt;/span&gt;&lt;/rg-button&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},76982:e=&gt;{e.exports='&lt;rg-sidebar-toggle-button data-test="table-toolbar-toggle" model="$ctrl.isSidebarShown" class="hub-header__controls__right-toolbar"&gt;\n  &lt;span title="{{ \'Details\' | translate }}" translate&gt;Details&lt;/span&gt;\n&lt;/rg-sidebar-toggle-button&gt;\n\n&lt;div rg-button-group class="hub-header__controls__right-toolbar"&gt;\n  &lt;rg-button ng-click="$ctrl.setGrouping(true)" active="$ctrl.groupingState"&gt;\n    &lt;span translate&gt;By group&lt;/span&gt;\n  &lt;/rg-button&gt;\n  &lt;rg-button ng-click="$ctrl.setGrouping(false)" active="!$ctrl.groupingState"&gt;\n    &lt;span translate&gt;Users&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n\n&lt;hub-header\n  docked\n  theme="light"\n  embedded="true"\n  class="hub-header__controls__right-toolbar"\n  placeholder="{{ \'Search by user\' | translate }}"\n  datasource="$ctrl.queryAssistDatasource"\n&gt;\n&lt;/hub-header&gt;\n'},32e3:(e,t,n)=&gt;{e.exports='&lt;div ng-if="$ctrl.hasReporterWarning()"&gt;\n  &lt;div ng-if="!$ctrl.isHub" class="hub-user-access-tab__projects"&gt;\n    &lt;div ng-if="$ctrl.user.helpdeskProjectSettings.length" class="hub-user-access-tab__header" data-test="access-tab-header" translate=""&gt;Reporter access in restricted helpdesk projects&lt;/div&gt;\n    &lt;div class="hub-user-access-tab__projects-list"&gt;\n\n      &lt;div ng-repeat="helpdeskProject in $ctrl.user.helpdeskProjectSettings" ng-if="helpdeskProject.parent.restricted" class="hub-user-access-tab__project" data-test="access-tab-project"&gt;\n        &lt;div class="hub-user-access-tab__project-icon"&gt;\n          &lt;rg-avatar ng-if="helpdeskProject.parent.iconUrl" size="40" url="::helpdeskProject.parent.iconUrl"&gt;&lt;/rg-avatar&gt;\n          &lt;rg-icon ng-if="!helpdeskProject.parent.iconUrl" glyph="{{$ctrl.puzzleIconGlyph}}"&gt;&lt;/rg-icon&gt;\n        &lt;/div&gt;\n\n        &lt;div class="hub-user-access-tab__project-content"&gt;\n          &lt;div class="hub-user-access-tab__project-content-title"&gt;\n            &lt;rg-link ng-href="{{$ctrl.getProjectLink(helpdeskProject.parent)}}" class="hub-user-access-tab__project-content-title-text" data-test="access-tab-project-title-text"&gt;\n              {{ helpdeskProject.parent.name }}\n            &lt;/rg-link&gt;\n            &lt;rg-badge class="hub-user-access-tab__project-content-title-badge" ng-if="!helpdeskProject.parent.restricted"&gt;&lt;span translate=""&gt;Helpdesk&lt;/span&gt;&lt;/rg-badge&gt;\n            &lt;rg-badge class="hub-user-access-tab__project-content-title-badge" ng-if="helpdeskProject.parent.restricted"&gt;&lt;span translate=""&gt;Restricted Helpdesk&lt;/span&gt;&lt;/rg-badge&gt;\n          &lt;/div&gt;\n          &lt;div ng-if="helpdeskProject.parent.description" class="hub-user-access-tab__project-content-description"&gt;\n            {{ $ctrl.removeMarkdownFromDescription(helpdeskProject.parent.description) }}\n          &lt;/div&gt;\n        &lt;/div&gt;\n\n        &lt;div class="hub-user-access-tab__project-row-right"&gt;\n          &lt;rg-button ng-click="$ctrl.revokeAccess(helpdeskProject.id, helpdeskProject.parent.id)" text="true" data-test="revoke-access-button"&gt;&lt;span translate=""&gt;Revoke access&lt;/span&gt;&lt;/rg-button&gt;\n          &lt;div class="hub-user-access-tab__project-team"&gt;\n            &lt;rg-link\n              ng-repeat="teamMember in $ctrl.teamMembers(helpdeskProject.parent.team.users)"\n              ng-href="{{$ctrl.getUserOrTeamLink(helpdeskProject.parent, teamMember, teamMember.showMore)}}"\n              class="hub-user-access-tab__project-team-member"\n              data-test="access-tab-project-team-member"\n              ng-class="{\'hub-user-access-tab__project-team-member-show-more\': teamMember.showMore}"\n            &gt;\n                &lt;img\n                  ng-if="teamMember.avatar.url"\n                  class="hub-user-access-tab__project-team-member-avatar"\n                  ng-src="{{ teamMember.avatar.url }}"\n                /&gt;\n                &lt;div ng-if="teamMember.showMore" class="hub-user-access-tab__project-team-member-count"&gt;\n                  {{ $ctrl.getRemainUsersCount(helpdeskProject.parent.team.users) }}\n                &lt;/div&gt;\n            &lt;/rg-link&gt;\n          &lt;/div&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="hub-user-access-tab__roles"&gt;\n    &lt;div ng-if="$ctrl.user.helpdeskProjectSettings.length" class="hub-user-access-tab__header" translate=""&gt;Roles&lt;/div&gt;\n    &lt;div class="hub-user-access-tab__note"&gt;\n      &lt;rg-icon color="GRAY" glyph="'+n(57703)+'" size="16"&gt;&lt;/rg-icon&gt;\n      &lt;div translate=""&gt;\n        &lt;span translate=""&gt;\n          This user is currently designated as a Reporter. Roles that grant additional permissions unavailable to reporters are deactivated. You cannot grant additional roles to this user but can revoke them if you like.\n        &lt;/span&gt;&lt;br/&gt;\n        &lt;span translate=""&gt;\n          To grant new roles to this user, you must first switch their user type, which you can do in their user profile or from the &lt;a class="ring-link" ng-href="{{ \'users\' | linkToHub }}"&gt;Users list&lt;/a&gt;.\n        &lt;/span&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n    &lt;details class="hub-user-access-tab__collapsible-details"&gt;\n      &lt;summary class="hub-user-access-tab__collapsible-summary ring-link ring-link_pseudo"&gt;\n        &lt;rg-icon class="hub-user-access-tab__collapsible-icon" glyph="'+n(25426)+'" size="16"&gt;\n        &lt;/rg-icon&gt;&lt;span translate=""&gt;Deactivated roles&lt;/span&gt;\n      &lt;/summary&gt;\n      &lt;hub-access-tab\n        user="$ctrl.user"\n        datasource="$ctrl.datasource"\n        inactive-mode="true"\n      &gt;&lt;/hub-access-tab&gt;\n    &lt;/details&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n&lt;hub-access-tab ng-if="!$ctrl.hasReporterWarning()" user="$ctrl.user" datasource="$ctrl.datasource"&gt;&lt;/hub-access-tab&gt;\n'},13291:e=&gt;{e.exports='&lt;div&gt;\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__badge" translate&gt;Status&lt;/label&gt;\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n      &lt;rg-select options="option for option in dialog.data.banBadgeOptions"\n                 name="create-dialog__badge"\n                 ng-model="dialog.data.banBadge"&gt;&lt;/rg-select&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Reason&lt;/label&gt;\n\n    &lt;div class="ring-form__control ring-form__control_small"&gt;\n        &lt;textarea name="banReason" class="ring-input-size_md"\n                  ng-attr-placeholder="{{\'Enter an optional explanation for banning this user\' | translate}}"\n                  ng-class="dialog.dialogForm.banReason | rgInputClass"\n                  ng-model="dialog.data.banReason"&gt;\n        &lt;/textarea&gt;\n\n      &lt;div rg-error-bubble="dialog.dialogForm.banReason"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},79229:e=&gt;{e.exports='&lt;p translate class="remove-personal-data__message"&gt;When you confirm this operation, the full name, email addresses, logins, login details, profile change\n  history, and IP addresses that are associated with this user account are anonymized.&lt;/p&gt;\n&lt;p class="remove-personal-data__warning"\n   translate&gt;WARNING! This operation cannot be undone.&lt;/p&gt;\n\n&lt;p translate&gt;To confirm, enter the username of the user to be anonymized.&lt;/p&gt;\n\n&lt;div&gt;\n  &lt;input id="remove-personal-data__login"\n         name="login"\n         class="ring-input"\n         ng-pattern="dialog.data.expectedLoginPattern"\n         ng-required="true"\n         ng-model="dialog.data.confirmationLogin"\n         type="text"&gt;\n&lt;/div&gt;\n\n'},68179:e=&gt;{e.exports='&lt;div class="ring-form__group" rg-dialog-title="{{ \'New Application Password\' | translate }}"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;input id="create-dialog__name" name="name" required type="text"\n           ng-class="dialog.dialogForm.name | rgInputClass" ng-model="dialog.data.item.name"\n           class="ring-input-size_md"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n\n    &lt;div class="ring-form__control__description"\n         translate&gt;Enter a name that helps you remember which application you use this password for. For example \'Calendar\' or \'Address Book\'.&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},38758:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;div class="user-page__authentication__show-token__warning" translate&gt;\n    Application password generated. Copy it before you close this dialog and keep it in a secure location. This is the only\n    time the password is visible.\n  &lt;/div&gt;\n  &lt;div class="user-page__authentication__show-token__value"&gt;{{dialog.data.item.password}}&lt;/div&gt;\n&lt;/div&gt;\n'},87266:e=&gt;{e.exports='&lt;h2 class="ring-sidebar__title"&gt;\n    {{ ctrl.sidebarElement.name }}\n&lt;/h2&gt;\n\n&lt;div class="ring-sidebar__section project-role__sidebar__groups"&gt;\n    &lt;div class="project-role__sidebar__groups__group" ng-if="ctrl.sidebarElement.creationTime"&gt;\n        &lt;span class="project-role__sidebar__groups__group__name" translate&gt;Created&lt;/span&gt;\n\n        &lt;div class="project-role__sidebar__groups__group__project"&gt;{{:: ctrl.sidebarElement.creationTime | date:\'medium\' }}&lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="project-role__sidebar__groups__group"&gt;\n        &lt;span class="project-role__sidebar__groups__group__name" translate&gt;Last usage&lt;/span&gt;\n\n        &lt;div class="project-role__sidebar__groups__group__project"&gt;\n          &lt;span ng-if="ctrl.sidebarElement.lastAccessTime"&gt;\n            &lt;span&gt;{{:: ctrl.sidebarElement.lastAccessTime | date:\'medium\' }},&lt;/span&gt;\n            &lt;span translate&gt;IP {{:: ctrl.sidebarElement.lastAccessAddress }}&lt;/span&gt;\n          &lt;/span&gt;\n          &lt;span ng-if="!ctrl.sidebarElement.lastAccessTime" translate&gt;Never&lt;/span&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n'},26840:e=&gt;{e.exports='&lt;div class="search-error"&gt;\n    &lt;span class="search-error__title" translate&gt;There are no authentication tokens for this user.&lt;/span&gt;\n&lt;/div&gt;\n'},72134:e=&gt;{e.exports='&lt;div class="ring-form__group" rg-dialog-title="{{ \'New Permanent Token\' | translate }}"&gt;\n  &lt;label class="ring-form__label" for="create-dialog__name" translate&gt;Name&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;input id="create-dialog__name" name="name" required type="text"\n           ng-class="dialog.dialogForm.name | rgInputClass" ng-model="dialog.data.item.name"\n           class="ring-input-size_md"&gt;\n\n    &lt;div rg-error-bubble="dialog.dialogForm.name"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-form__group"&gt;\n  &lt;label class="ring-form__label" translate&gt;Scope&lt;/label&gt;\n\n  &lt;div class="ring-form__control"&gt;\n    &lt;rg-tags-input\n      height="\'S\'"\n      name="scope"\n      tags="dialog.data.item.scope"\n      placeholder="\'Select services\' | translate"\n      x-data-source="dialog.data.getServices"\n      on-add-tag="dialog.data.onAddScope"\n      on-remove-tag="dialog.data.onRemoveScope"\n      max-popup-height="250"\n      loading-message="\'Loading...\' | translate"\n    &gt;&lt;/rg-tags-input&gt;\n\n    &lt;input ng-show="false" required ng-model="dialog.data.item.scope"/&gt;\n\n    &lt;div class="ring-form__control__description" translate&gt;Services which the user can access with this token&lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},45556:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n  &lt;div class="user-page__authentication__show-token__warning" translate&gt;\n    Permanent token created. Copy it before you close this dialog and keep it in a secure location. This is the only\n    time the token is visible.\n  &lt;/div&gt;\n  &lt;div class="user-page__authentication__show-token__value"&gt;{{dialog.data.item.token}}&lt;/div&gt;\n&lt;/div&gt;\n'},53662:(e,t,n)=&gt;{e.exports='&lt;h2 class="ring-sidebar__title"&gt;\n    {{ ctrl.sidebarElement.name }}\n&lt;/h2&gt;\n\n&lt;div class="ring-sidebar__section project-role__sidebar__groups"&gt;\n    &lt;div class="project-role__sidebar__groups__group" ng-if="ctrl.sidebarElement.creationTime"&gt;\n        &lt;span class="project-role__sidebar__groups__group__name" translate&gt;Created&lt;/span&gt;\n\n        &lt;div class="project-role__sidebar__groups__group__project"&gt;{{ ctrl.sidebarElement.creationTime | date:\'medium\' }}&lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div class="project-role__sidebar__groups__group"&gt;\n        &lt;span class="project-role__sidebar__groups__group__name" translate&gt;Last usage&lt;/span&gt;\n\n        &lt;div class="project-role__sidebar__groups__group__project"&gt;\n          &lt;span ng-if="ctrl.sidebarElement.lastAccessTime"&gt;{{ ctrl.sidebarElement.lastAccessTime | date:\'medium\' }}&lt;/span&gt;\n          &lt;span ng-if="!ctrl.sidebarElement.lastAccessTime" translate&gt;Never&lt;/span&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="ctrl.sidebarElement.scope"&gt;\n    &lt;span class="ring-sidebar__section-title"&gt;\n        &lt;span translate\n              translate-n="ctrl.sidebarElement.scope.length"\n              translate-plural="{{ $count }} Services"&gt;{{ $count }} Service&lt;/span&gt;\n    &lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-roster"&gt;\n        &lt;div class="roster roster_inline"&gt;\n            &lt;div ng-repeat="service in ctrl.sidebarElement.scope" class="roster__item"&gt;\n                &lt;img ng-if="service.iconUrl" class="roster__item__img" ng-src="{{ service.iconUrl }}"&gt;\n                &lt;rg-icon ng-if="!service.iconUrl" size="16" glyph="'+n(70764)+'" class="roster__item__img"&gt;&lt;/rg-icon&gt;\n                &lt;a class="ring-link roster__item__label" ng-href="services/{{ service.key | encodeLink:service.id }}"&gt;{{ service.name }}&lt;/a&gt;\n            &lt;/div&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},21294:(e,t,n)=&gt;{e.exports='&lt;h2 class="ring-sidebar__title"&gt;\n    &lt;a class="ring-link" ng-href="services/{{ ctrl.sidebarElement.client.id }}"&gt;{{ ctrl.sidebarElement.client.name }}&lt;/a&gt;\n&lt;/h2&gt;\n\n&lt;div class="ring-sidebar__section" ng-show="ctrl.sidebarElement.scope"&gt;\n    &lt;span class="ring-sidebar__section-title"&gt;\n        &lt;span translate\n              translate-n="ctrl.sidebarElement.scope.length"\n              translate-plural="{{ $count }} Services"&gt;{{ $count }} Service&lt;/span&gt;\n    &lt;/span&gt;\n\n    &lt;div class="ring-sidebar__section-roster"&gt;\n        &lt;div class="roster roster_inline"&gt;\n            &lt;div ng-repeat="service in ctrl.sidebarElement.scope" class="roster__item"&gt;\n                &lt;img ng-if="service.iconUrl" class="roster__item__img" ng-src="{{ service.iconUrl }}"&gt;\n                &lt;rg-icon ng-if="!service.iconUrl" size="16" glyph="'+n(70764)+'" class="roster__item__img"&gt;&lt;/rg-icon&gt;\n                  &lt;a class="ring-link roster__item__label" ng-href="services/{{ service.key | encodeLink:service.id }}"&gt;{{ service.name }}&lt;/a&gt;\n            &lt;/div&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},13121:e=&gt;{e.exports='&lt;div class="user-page__2fa"&gt;\n  &lt;p ng-if="data.user.requiredTwoFactorAuthentication" translate&gt;\n    An administrator has required two-factor authentication for one or more groups that you are a member of. To continue working with the access that is granted to your account, enable this feature.\n  &lt;/p&gt;\n\n  &lt;div ng-if="data.isInitial" translate&gt;When you enable this feature, you need to enter your password plus a code that is generated by a two-factor authentication app to sign in&lt;/div&gt;\n  &lt;div ng-if="!data.isInitial" translate&gt;Your secret for two-factor authentication was regenerated&lt;/div&gt;\n\n  &lt;div class="user-page__2fa__scan" ng-if="data.twoFactorAuthentication.scratchCodes"&gt;\n    &lt;strong translate&gt;Save recovery codes&lt;/strong&gt;\n\n    &lt;div translate&gt;Use these one-time recovery codes to access your account when you can\'t receive codes from your authentication app&lt;/div&gt;\n    &lt;ul class="user-page__2fa__codes"&gt;\n      &lt;li class="user-page__2fa__codes_block" ng-repeat="code in data.twoFactorAuthentication.scratchCodes track by code"&gt;\n        &lt;div\n          data-test="recovery-code"\n          class="user-page__2fa__codes__code"&gt;{{ code | scratchCode }}\n        &lt;/div&gt;\n      &lt;/li&gt;  \x3c!--div inside li is important for copy &amp; paste in different browsers--\x3e\n    &lt;/ul&gt;\n  &lt;/div&gt;\n\n  &lt;div class="user-page__2fa__scan"&gt;\n    &lt;strong translate&gt;Scan the image&lt;/strong&gt;\n\n    &lt;div ng-if="data.isInitial" translate&gt;To set up your account, scan this QR code&lt;/div&gt;\n    &lt;div ng-if="!data.isInitial" translate&gt;To apply the new secret in your authentication apps, scan this QR code&lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="user-page__2fa__qr-code"&gt;\n    &lt;img ng-src="{{ data.twoFactorAuthentication.qrCodeUri }}"&gt;\n  &lt;/div&gt;\n\n  &lt;div class="user-page__2fa__secret-key" translate&gt;If your app doesn\'t recognize the QR code, enter the following key manually: &lt;b&gt;{{ data.twoFactorAuthentication.secretKey }}&lt;/b&gt;&lt;/div&gt;\n\n  &lt;div&gt;&lt;strong translate&gt;To confirm the secret, enter the 6-digit code from the app&lt;/strong&gt;&lt;/div&gt;\n\n  &lt;div class="ring-form__group input-number-arrows-hidden"&gt;\n    &lt;input\n           name="name"\n           autofocus\n           required\n           type="text"\n           pattern="[0-9]{6}"\n           ng-class="dialog.dialogForm.name | rgInputClass"\n           ng-model="data.code"\n           class="ring-input-size_s"&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},52566:e=&gt;{e.exports='&lt;div rg-button-toolbar&gt;\n  &lt;rg-button\n    delayed="true"\n    ng-disabled="!ctrl.createEnabled || !ctrl.pageData.canUpdateProfile || ctrl.pageData.guestProfile"\n    rg-promised-click="ctrl.createPermanentToken()"\n    data-test="new-token"\n  &gt;&lt;span translate&gt;New token&lt;/span&gt;&lt;/rg-button&gt;\n\n  &lt;rg-button\n    delayed="true"\n    ng-show="ctrl.createEnabled &amp;&amp; ctrl.pageData.canUpdateProfile &amp;&amp; ctrl.pageData.isOwnProfile &amp;&amp; !ctrl.pageData.guestProfile"\n    rg-promised-click="ctrl.createApplicationPassword()"\n    data-test="new-password"\n  &gt;&lt;span translate&gt;New password&lt;/span&gt;&lt;/rg-button&gt;\n\n  &lt;rg-button\n    title="{{ \'Delete selected items\' | translate }}"\n    danger="true"\n    ng-show="ctrl.activeElements.length &gt;= 1 &amp;&amp; ctrl.pageData.canUpdateProfile"\n    rg-promised-click="ctrl.delete(ctrl.activeElements)"\n  &gt;&lt;span translate&gt;Delete&lt;/span&gt;&lt;/rg-button&gt;\n\n  \x3c!-- Need this to show sidebar. Because sidebar expects that there are some matching permissions --\x3e\n  &lt;span rg-permission="user-update"&gt;&lt;/span&gt;\n  &lt;span rg-permission="profile-updateSelf"&gt;&lt;/span&gt;\n&lt;/div&gt;\n'},15321:(e,t,n)=&gt;{e.exports='&lt;div class="auth-tab"&gt;\n  &lt;div class="user-page__general__ldap-warning" ng-if="ctrl.showLdapWarning" data-test="unpredictable-ldap-sync-warning"&gt;\n    &lt;rg-icon glyph="'+n(24193)+'" size="16" class="user-page__general__ldap-warning-icon"&gt;&lt;/rg-icon&gt;\n    &lt;span&gt;{{ctrl.ldapWarning}}&lt;/span&gt;\n  &lt;/div&gt;\n\n\n  \x3c!-- 2FA --\x3e\n\n  &lt;div ng-if="!ctrl.pageData.guestProfile &amp;&amp; ctrl.pageData.canReadProfileFull" class="auth-tab__container top"&gt;\n    &lt;div class="auth-tab__header" translate&gt;Two-factor Authentication\n      &lt;rg-icon\n        ng-if="ctrl.user.requiredTwoFactorAuthentication"\n        size="16"\n        glyph="'+n(51094)+'"\n        class="user-page__profile__security-2fa"\n        title="{{ \'An administrator has required two-factor authentication for one or more groups that you are a member of\' | translate}}"\n      &gt;\n      &lt;/rg-icon&gt;\n    &lt;/div&gt;\n\n    &lt;div class="auth-tab__note" translate&gt;Help protect your account from unauthorized access by requiring more than just a password to sign in&lt;/div&gt;\n\n    &lt;div ng-if="!ctrl.user.twoFactorAuthentication &amp;&amp; !ctrl.user.webauthnDevice" class="auth-tab__2FA-buttons"&gt;\n      &lt;p&gt;\n        &lt;rg-group&gt;\n          &lt;rg-button\n            mode="primary"\n            delayed="!ctrl.user.twoFactorAuthentication"\n            data-test="totp-register-button"\n            ng-show="ctrl.pageData.canUpdateProfile &amp;&amp; ctrl.pageData.isOwnProfile"\n            rg-promised-click="ctrl.registerTotp()"\n          &gt;&lt;span translate&gt;Pair with app&lt;/span&gt;&lt;/rg-button&gt;\n          &lt;rg-button\n            delayed="!ctrl.user.twoFactorAuthentication"\n            data-test="webauthn-register-button"\n            ng-show="ctrl.pageData.canUpdateProfile &amp;&amp; ctrl.pageData.isOwnProfile"\n            rg-promised-click="ctrl.registerHardwareToken()"\n          &gt;&lt;span translate&gt;Pair with hardware token&lt;/span&gt; &lt;/rg-button&gt;\n        &lt;/rg-group&gt;\n      &lt;/p&gt;\n\n      &lt;p&gt;\n        &lt;span translate&gt;No 2nd factor&lt;/span&gt;\n        &lt;rg-badge ng-show="ctrl.user.requiredTwoFactorAuthentication" invalid="true" data-test="2FA-required-badge"\n                  translate&gt;required\n        &lt;/rg-badge&gt;\n      &lt;/p&gt;\n    &lt;/div&gt;\n\n    &lt;div ng-if="ctrl.user.twoFactorAuthentication"&gt;\n      &lt;p&gt;\n        &lt;span translate&gt;Authentication app&lt;/span&gt;\n        &lt;rg-badge ng-show="ctrl.user.twoFactorAuthentication.enabled" valid="true" data-test="2FA-enabled-badge" translate&gt;\n          enabled\n        &lt;/rg-badge&gt;\n        &lt;rg-badge ng-show="!ctrl.user.twoFactorAuthentication.enabled" invalid="true" data-test="2FA-disabled-badge"\n                  translate&gt;disabled\n        &lt;/rg-badge&gt;\n        &lt;rg-badge ng-show="ctrl.user.requiredTwoFactorAuthentication" valid="true" data-test="2FA-required-badge"\n                  translate&gt;required\n        &lt;/rg-badge&gt;\n      &lt;/p&gt;\n\n      &lt;p&gt;\n        &lt;rg-group&gt;\n          &lt;rg-button\n            delayed="!ctrl.user.twoFactorAuthentication"\n            data-test="2fa-enable-button"\n            ng-show="ctrl.pageData.canUpdateProfile &amp;&amp; !ctrl.user.twoFactorAuthentication.enabled"\n            rg-promised-click="ctrl.enableTotp()"\n          &gt;&lt;span translate&gt;Enable&lt;/span&gt;&lt;/rg-button&gt;\n          &lt;rg-button\n            data-test="totp-disable-button"\n            ng-show="ctrl.pageData.canUpdateProfile &amp;&amp; ctrl.user.twoFactorAuthentication.enabled"\n            rg-promised-click="ctrl.disableTotp()"\n          &gt;&lt;span translate&gt;Disable&lt;/span&gt;&lt;/rg-button&gt;\n          &lt;rg-button\n            data-test="totp-remove-button"\n            danger="true"\n            ng-show="ctrl.pageData.canUpdateProfile"\n            rg-promised-click="ctrl.removeTotp(ctrl.pageData.isOwnProfile)"\n          &gt;&lt;span translate&gt;Delete authentication app integration&lt;/span&gt;&lt;/rg-button&gt;\n        &lt;/rg-group&gt;\n      &lt;/p&gt;\n    &lt;/div&gt;\n\n    &lt;div ng-if="ctrl.user.webauthnDevice"&gt;\n      &lt;p&gt;\n        &lt;span translate&gt;Hardware token&lt;/span&gt;\n        &lt;rg-badge ng-show="ctrl.user.webauthnDevice.enabled" valid="true" data-test="2FA-enabled-badge" translate&gt;enabled\n        &lt;/rg-badge&gt;\n        &lt;rg-badge ng-show="!ctrl.user.webauthnDevice.enabled" invalid="true" data-test="2FA-disabled-badge" translate&gt;\n          disabled\n        &lt;/rg-badge&gt;\n        &lt;rg-badge ng-show="ctrl.user.requiredTwoFactorAuthentication" valid="true" data-test="2FA-required-badge"\n                  translate&gt;required\n        &lt;/rg-badge&gt;\n      &lt;/p&gt;\n      &lt;img ng-if="ctrl.user.webauthnDevice.iconUrl" src="{{ ctrl.user.webauthnDevice.iconUrl }}"/&gt;\n      &lt;p&gt;&lt;a href="{{ ctrl.user.webauthnDevice.url }}" target="_blank"&gt;{{ ctrl.user.webauthnDevice.name }}&lt;/a&gt;&lt;/p&gt;\n      &lt;rg-group&gt;\n        &lt;rg-button\n          data-test="webauthn-enable-button"\n          ng-show="ctrl.pageData.canUpdateProfile &amp;&amp; !ctrl.user.webauthnDevice.enabled"\n          rg-promised-click="ctrl.enableWebauthn()"\n        &gt;&lt;span translate&gt;Enable&lt;/span&gt;&lt;/rg-button&gt;\n        &lt;rg-button\n          data-test="webauthn-disable-button"\n          ng-show="ctrl.pageData.canUpdateProfile &amp;&amp; ctrl.user.webauthnDevice.enabled"\n          rg-promised-click="ctrl.disableWebauthn()"\n        &gt;&lt;span translate&gt;Disable&lt;/span&gt;&lt;/rg-button&gt;\n        &lt;rg-button\n          data-test="webauthn-remove-button"\n          danger="true"\n          ng-show="ctrl.pageData.canUpdateProfile"\n          rg-promised-click="ctrl.removeWebauthn(ctrl.pageData.isOwnProfile)"\n        &gt;&lt;span translate&gt;Unregister device&lt;/span&gt;&lt;/rg-button&gt;\n      &lt;/rg-group&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n\n  \x3c!-- Credentials --\x3e\n\n  &lt;div ng-show="ctrl.logins.length || ctrl.pageData.canUpdateProfile" class="auth-tab__container"&gt;\n    &lt;div class="auth-tab__header" translate&gt;Credentials&lt;/div&gt;\n\n    &lt;p ng-show="!ctrl.coreModule.disabled &amp;&amp; ctrl.pageData.canUpdateProfile"&gt;\n      &lt;rg-button\n        mode="primary"\n        data-test="add-credentials"\n        delayed="true"\n        rg-promised-click="ctrl.addCredentials()"\n      &gt;&lt;span translate&gt;Add credentials&lt;/span&gt;&lt;/rg-button&gt;\n    &lt;/p&gt;\n\n    &lt;div&gt;\n      &lt;div ng-repeat="login in ctrl.logins" data-test="user-credentials" class="auth-tab__credentials__logins"&gt;\n        &lt;div&gt;\n          &lt;strong title="{{ login.authModule.type }}"&gt;{{ login.authModule.name }}&lt;/strong&gt;\n          &lt;span class="user-page__profile__additional" ng-show="ctrl.isShownOriginForAuthCredential(login.authModule)"&gt;\n            &lt;span translate&gt;imported from service&lt;/span&gt; &lt;a\n            class="ring-link" ng-href="{{ \'services\' | linkToHub:login.authModule.originService.key:login.authModule.originService.id }}"&gt;{{ login.authModule.originService.name }}&lt;/a&gt;\n          &lt;/span&gt;\n          &lt;sup ng-show="login.authModule.disabled" class="authmodule-page__badge authmodule-page__badge_disabled"\n               data-test="disabled-label" translate&gt;disabled&lt;/sup&gt;\n        &lt;/div&gt;\n\n        &lt;div class="user-page__login_block"&gt;\n          &lt;span class="user-page__line-block" ng-show="login.name" translate&gt;Name: {{ login.name }}&lt;/span&gt;\n          &lt;span class="user-page__line-block" ng-show="login.login" translate&gt;Username: {{ login.login }}&lt;/span&gt;\n          &lt;span class="user-page__line-block" ng-show="login.email" translate&gt;Email: {{ login.email }}&lt;/span&gt;\n\n          &lt;span class="user-page__line-block" ng-repeat="extraField in login.extraFields" ng-show="extraField.value"&gt;{{extraField.name}}: {{ extraField.value }}&lt;/span&gt;\n        &lt;/div&gt;\n\n        &lt;div ng-if="login.detail.lastAccessTime" class="user-page__last-access"&gt;\n          &lt;span translate&gt;Most recent login: {{:: login.detail.lastAccessTime | date:\'medium\' }},&lt;/span&gt;\n          &lt;span translate&gt;IP: {{:: login.detail.lastAccessAddress }},&lt;/span&gt;\n          &lt;span translate&gt;Browser: {{:: login.agent.browser}},&lt;/span&gt;\n          &lt;span translate&gt;OS: {{:: login.agent.os}}&lt;/span&gt;\n        &lt;/div&gt;\n\n        &lt;div class="auth-tab__credentials__logins__buttons"&gt;\n          &lt;rg-group ng-if="ctrl.pageData.canUpdateProfile"&gt;\n            &lt;rg-template\n              ng-if="login.changePasswordTemplate"\n              template="login.changePasswordTemplate"\n              class="auth-tab__credentials__logins__button"\n            &gt;&lt;/rg-template&gt;\n\n            &lt;rg-button\n              ng-if="!ctrl.pageData.isOwnProfile &amp;&amp; !login.externalChangePassword"\n              ng-disabled="login.detail.passwordChangeRequired"\n              data-test="require-password-change"\n              ng-click="ctrl.requirePasswordChange(login)"\n              class="auth-tab__credentials__logins__button"\n            &gt;\n              &lt;span ng-show="!login.detail.passwordChangeRequired" translate&gt;Require password change&lt;/span&gt;\n              &lt;span ng-show="login.detail.passwordChangeRequired" translate&gt;Password change requested&lt;/span&gt;\n            &lt;/rg-button&gt;\n\n            &lt;rg-button\n              data-test="revoke-credentials"\n              rg-promised-click="ctrl.revokeUserCredentials(login)"\n              promised-mode="loader"\n              title="{{\'Refresh token will be revoked. Any current session will be terminated when its access token expires.\' | translate}}"\n              class="auth-tab__credentials__logins__button"\n            &gt;\n              &lt;span translate&gt;Revoke refresh token&lt;/span&gt;\n            &lt;/rg-button&gt;\n\n            &lt;rg-button\n              ng-show="login.canBeDisabled"\n              data-test="disable-credentials"\n              rg-promised-click="ctrl.toggleDetail(login)"\n              class="auth-tab__credentials__logins__button"\n            &gt;\n              &lt;span ng-show="login.detail.disabled" translate&gt;Enable&lt;/span&gt;\n              &lt;span ng-show="!login.detail.disabled" translate&gt;Disable&lt;/span&gt;\n            &lt;/rg-button&gt;\n\n            &lt;rg-button\n              data-test="delete-credentials"\n              danger="true"\n              rg-promised-click="ctrl.revokeUserDetail(login)"\n              title="{{\'All sessions will be logged out and subsequent login attempts will be denied. Any current session will be terminated when its access token expires.\' | translate}}"\n              class="auth-tab__credentials__logins__button"\n            &gt;\n              &lt;span translate&gt;Delete credentials&lt;/span&gt;\n            &lt;/rg-button&gt;\n          &lt;/rg-group&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n\n  \x3c!-- Tokens --\x3e\n  &lt;span ng-if="!ctrl.data.userIsReporter"&gt;\n  &lt;div class="auth-tab__container"&gt;\n    &lt;div class="auth-tab__header" translate&gt;Tokens&lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;rg-sidebar\n    ng-if="ctrl.user.details"\n    show="ctrl.isSidebarShown"\n    place-under-sibling=".ring-table__toolbar"\n    sync-bottom="[data-test=\'ring-footer\'];-40"\n    listen-to-height-change="{{ctrl.listenToHeightChangeSelector || \'.app__content\'}}"\n    top-offset="1"\n  &gt;\n    &lt;rg-template ng-if="ctrl.sidebarElement" template="ctrl.sidebarTemplate"&gt;&lt;/rg-template&gt;\n\n    &lt;div ng-if="!ctrl.sidebarElement" class="ring-sidebar__empty" data-test="table-sidebar-empty"&gt;\n      &lt;div class="ring-sidebar__empty-description"&gt;{{\'Select an authentication item to see details\' | translate}}&lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/rg-sidebar&gt;\n\n  &lt;rg-legacy-table-toolbar stick container=".yt-user-profile"&gt;\n    &lt;hub-user-profile-authentication-toolbar\n      data-test="table-toolbar"\n      user-id="ctrl.user.id"\n      page-data="ctrl.pageData"\n      host-service-application-name="ctrl.hostServiceApplicationName"\n      hub-backend="ctrl.hubBackend"\n      active-elements="ctrl.selectionActiveElements"\n      on-authentication-tab-reload="ctrl.onAuthenticationTabReload()"\n    &gt;&lt;/hub-user-profile-authentication-toolbar&gt;\n\n    &lt;rg-sidebar-toggle-button data-test="table-toolbar-toggle" model="ctrl.isSidebarShown" class="hub-header__controls__right-toolbar"&gt;\n      &lt;span title="{{ \'Details\' | translate }}" translate&gt;Details&lt;/span&gt;\n    &lt;/rg-sidebar-toggle-button&gt;\n  &lt;/rg-legacy-table-toolbar&gt;\n\n  &lt;div ng-if="!ctrl.pageData.canUpdateProfile" class="user-page__profile__empty-table"&gt;\n    &lt;div class="user-page__authentication__empty-table-text"&gt;\n      &lt;div ng-if="ctrl.pageData.isOwnProfile"&gt;\n        &lt;div ng-if="!ctrl.isStandaloneHub"&gt;\n          &lt;div translate&gt;To create a permanent token, you need to sign in with the credentials for the account that you want to grant access to.&lt;/div&gt;\n          &lt;div translate&gt;If you are signed in and you don\'t see the option to create a token, ask an administrator to grant the Update Self permission to your account.&lt;/div&gt;\n        &lt;/div&gt;\n        &lt;div ng-if="ctrl.isStandaloneHub"&gt;\n          &lt;div translate&gt;To create a permanent token, you need to sign in with the credentials for the account that you want to grant access to.&lt;/div&gt;\n          &lt;div translate&gt;If you are signed in and you don\'t see the option to create a token, ask an administrator to grant the Read Service permission to your account or to add you to the group for whom the service is visible.&lt;/div&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div ng-if="!ctrl.pageData.isOwnProfile"&gt;\n        &lt;div translate&gt;To create a permanent token for use with an account other than your own, the permissions that are assigned to your account must be greater than or equal to the permissions that are available to the user for whom you want to create the token&lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-if="!ctrl.data.permanentTokens.length &amp;&amp; (ctrl.data.userHasSomeTokens || ctrl.pageData.canUpdateProfile)" class="user-page__profile__empty-table"&gt;\n    &lt;div class="user-page__authentication__empty-table-caption" ng-if="ctrl.data.userHasSomeTokens" translate&gt;Permanent Tokens&lt;/div&gt;\n\n    &lt;div class="user-page__authentication__empty-table-text"&gt;\n      &lt;div ng-if="ctrl.pageData.isOwnProfile"&gt;\n        &lt;div ng-if="ctrl.data.userHasSomeTokens"&gt;\n          &lt;div translate&gt;There are no permanent tokens for your account.&lt;/div&gt;\n        &lt;/div&gt;\n        &lt;div ng-if="!ctrl.data.userHasSomeTokens"&gt;\n          &lt;div translate&gt;There are no authentication tokens for your account.&lt;/div&gt;\n        &lt;/div&gt;\n\n        &lt;div ng-if="!ctrl.isStandaloneHub"&gt;\n          &lt;div translate&gt;This page lists authentication tokens that grant access to YouTrack. You can create your own permanent tokens that let you access the application with scripting packages and APIs.&lt;/div&gt;\n        &lt;/div&gt;\n        &lt;div ng-if="ctrl.isStandaloneHub"&gt;\n          &lt;div translate&gt;This page lists authentication tokens that grant access to Hub. You can create your own permanent tokens that let you access the application with scripting packages and APIs.&lt;/div&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n\n      &lt;div ng-if="!ctrl.pageData.isOwnProfile"&gt;\n        &lt;div translate&gt;There are no permanent tokens for this user.&lt;/div&gt;\n\n        &lt;div ng-if="!ctrl.isStandaloneHub"&gt;\n          &lt;div translate&gt;This page lists authentication tokens that grant access to YouTrack.&lt;/div&gt;\n        &lt;/div&gt;\n        &lt;div ng-if="ctrl.isStandaloneHub"&gt;\n          &lt;div translate&gt;This page lists authentication tokens that grant access to services that are connected to Hub.&lt;/div&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;rg-table\n    ng-show="ctrl.data.permanentTokens.length"\n    caption="ctrl.permanentTokensLabel"\n    data="ctrl.data.permanentTokens"\n    selection="ctrl.selections.permanentTokens"\n    remote-selection="true"\n    on-select="ctrl.onSelectPermanentToken"\n    columns="ctrl.columns.permanentTokens"\n    loading="ctrl.loading"\n    class-name="\'user-page__authentication__table\'"\n    shortcuts="ctrl.shortcuts"\n  &gt;&lt;/rg-table&gt;\n\n  &lt;rg-table\n    ng-show="ctrl.data.applicationPasswords.length"\n    caption="ctrl.applicationPasswordsLabel"\n    data="ctrl.data.applicationPasswords"\n    selection="ctrl.selections.applicationPasswords"\n    remote-selection="true"\n    on-select="ctrl.onSelectApplicationPassword"\n    columns="ctrl.columns.applicationPasswords"\n    loading="ctrl.loading"\n    class-name="\'user-page__authentication__table\'"\n    shortcuts="ctrl.shortcuts"\n  &gt;&lt;/rg-table&gt;\n\n  &lt;rg-table\n    ng-show="ctrl.data.refreshTokens.length"\n    caption="ctrl.refreshTokensLabel"\n    data="ctrl.data.refreshTokens"\n    selection="ctrl.selections.refreshTokens"\n    remote-selection="true"\n    on-select="ctrl.onSelectRefreshToken"\n    columns="ctrl.columns.refreshTokens"\n    loading="ctrl.loading"\n    class-name="\'user-page__authentication__table\'"\n    shortcuts="ctrl.shortcuts"\n  &gt;&lt;/rg-table&gt;\n\n  &lt;rg-table\n    ng-show="ctrl.data.approvedScopes.length"\n    caption="ctrl.approvedScopesLabel"\n    data="ctrl.data.approvedScopes"\n    selection="ctrl.selections.approvedScopes"\n    remote-selection="true"\n    on-select="ctrl.onSelectApprovedScope"\n    columns="ctrl.columns.approvedScopes"\n    loading="ctrl.loading"\n    class-name="\'user-page__authentication__table\'"\n    shortcuts="ctrl.shortcuts"\n  &gt;&lt;/rg-table&gt;\n  &lt;/span&gt;\n&lt;/div&gt;\n'},95089:e=&gt;{e.exports='&lt;div rg-dialog-title="{{ \'Select Avatar\' | translate }}"&gt;\n  &lt;div class="ring-form__group user-profile-general__avatar" ng-repeat="avatar in data.avatars"&gt;\n    &lt;img class="user-profile-general__avatar__img"\n         ng-click="data.select(avatar)"\n         ng-src="{{ avatar.url | dpr:40 }}"/&gt;\n\n    &lt;div class="user-profile-general__avatar__title"&gt;\n        &lt;span ng-if="avatar.type !== \'gravatar\'" class="user-profile-general__avatar__title__i"&gt;{{ avatar.label }}&lt;/span&gt;\n        &lt;span ng-if="avatar.type === \'gravatar\'" class="user-profile-general__avatar__title__i"\n            &gt;{{ avatar.label }} &lt;span class="user-profile-general__avatar__title__i_description"&gt;(&lt;span translate&gt;Email based avatar&lt;/span&gt; &amp;mdash; &lt;a href="http://www.gravatar.com" class="ring-link"&gt;gravatar.com&lt;/a&gt;)&lt;/span&gt;&lt;/span&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n  &lt;input class="ring-avatar-editor__file-input" id="avatar-upload-input" type="file" ng-model="fileInput" accept="image/*"&gt;\n&lt;/div&gt;\n'},659:(e,t,n)=&gt;{e.exports='&lt;div rg-button-toolbar&gt;\n  &lt;rg-button\n    mode="primary"\n    loader="$ctrl.addingToGroup"\n    rg-permission="group-update"\n    ng-disabled="$ctrl.inactiveMode"\n\n    rg-select\n    select-type="dropdown"\n    options="item.name for item in $ctrl.groupsDataSource(query) track by item.id"\n    external-filter="true"\n    on-select="$ctrl.onGroupToAddSelected(selected.originalModel)"\n  &gt;\n    &lt;span translate&gt;Add group&lt;/span&gt;\n    &lt;rg-icon glyph="'+n(96971)+'" size="14"&gt;&lt;/rg-icon&gt;\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    rg-permission="group-update"\n    ng-show="$ctrl.canRemove"\n    data-test="remove-group-button"\n    rg-promised-click="$ctrl.removeGroup($ctrl.selection.items)"\n    promised-mode="loader"\n  &gt;\n    &lt;span translate&gt;Remove&lt;/span&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n'},25750:(e,t,n)=&gt;{e.exports='&lt;div&gt;\n  &lt;p&gt;{{$ctrl.getDescription($ctrl.widget.manifest)}}&lt;/p&gt;\n\n  &lt;a\n    ng-if="$ctrl.widget.manifest.homeUrl"\n    class="ring-link"\n    ng-href="{{$ctrl.widget.manifest.homeUrl}}"\n  &gt;{{$ctrl.widget.manifest.homeUrl}}&lt;/a&gt;\n\n  &lt;div ng-if="$ctrl.widget.manifest.capabilities" class="custom-widget-list__info-capabilities-wrapper"&gt;\n    &lt;span translate translate-context="Dashboard" class="custom-widget-list__info-services-title"&gt;Capabilities&lt;/span&gt;\n    &lt;div\n      ng-if="$ctrl.widget.manifest.capabilities.popups"\n      translate translate-context="Dashboard"\n      class="custom-widget-list__info-capability"\n    &gt;\n      Show alerts and open links in new browser tabs or windows\n    &lt;/div&gt;\n    &lt;div\n      ng-if="$ctrl.widget.manifest.capabilities.topNavigation"\n      translate translate-context="Dashboard"\n      class="custom-widget-list__info-capability"\n    &gt;\n      Allows navigation away from the dashboard\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-if="$ctrl.widget.accessibleServices.length" class="custom-widget-list__info-services-wrapper"&gt;\n    &lt;span translate translate-context="Dashboard" class="custom-widget-list__info-services-title"&gt;Accessible services&lt;/span&gt;\n\n    &lt;custom-widget-accessible-services\n      class="custom-widget-list__info-services"\n      accessible-services="$ctrl.widget.accessibleServices"\n      services="$ctrl.widget.manifest.dependencies"\n    &gt;&lt;/custom-widget-accessible-services&gt;\n  &lt;/div&gt;\n\n  &lt;div class="custom-widget-list__info-manifest-wrapper"&gt;\n      &lt;span class="ring-link custom-widget-list__manifest-toggle" ng-click="$ctrl.widget.showManifest = !$ctrl.widget.showManifest"&gt;\n        &lt;rg-icon glyph="'+n(25426)+'" size="16" ng-if="!$ctrl.widget.showManifest"&gt;\n        &lt;/rg-icon&gt;&lt;rg-icon glyph="'+n(96971)+'" size="14" ng-if="$ctrl.widget.showManifest"&gt;\n        &lt;/rg-icon&gt;&lt;span translate class="custom-widget-list__info-manifest-title"&gt;Manifest&lt;/span&gt;\n      &lt;/span&gt;\n\n    &lt;div&gt;\n        &lt;pre\n          ng-if="$ctrl.widget.showManifest"\n          class="custom-widget-list__manifest"\n        &gt;{{$ctrl.widget.manifest | json}}&lt;/pre&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},75548:(e,t,n)=&gt;{e.exports='&lt;div rg-button-toolbar ng-if="btnCtrl.permissionsDetected"&gt;\n  &lt;rg-button\n    title="{{btnCtrl.isWindows() ? \'Alt-Insert\' : \'Ctrl-N\'}}"\n    data-test="add-widget-button"\n    rg-select select-type="dropdown" select-click-on="widget:open-add-dropdown"\n    config="btnCtrl.addWidgetDropdownConfig"\n    filter="true"\n    options="item.label for item in btnCtrl.widgetList track by item.id"\n    on-select="btnCtrl.createWidget(selected)"\n  &gt;\n    &lt;span translate translate-context="Dashboard"&gt;Add widget&lt;/span&gt;\n    &lt;rg-icon\n      glyph="'+n(96971)+'"\n      size="14"\n      color="BLACK"&gt;&lt;/rg-icon&gt;\n  &lt;/rg-button&gt;\n\n  &lt;rg-button\n    ng-if="btnCtrl.importWidgetsEnabled"\n    data-test="import-button"\n    rg-select\n    select-type="dropdown"\n    config="btnCtrl.importWidgetsDropdownConfig"\n    filter="true"\n    options="item.name describe as item.owner.name for item in btnCtrl.dashboardList track by item.id"\n    on-select="btnCtrl.importWidgets(selected)"\n  &gt;\n    &lt;span translate translate-context="Dashboard"&gt;Import from dashboard&lt;/span&gt;\n    &lt;rg-icon\n      glyph="'+n(96971)+'"\n      size="14"\n      color="BLACK"&gt;&lt;/rg-icon&gt;\n  &lt;/rg-button&gt;\n&lt;/div&gt;\n'},13913:e=&gt;{e.exports='&lt;rg-sortable-dashboards\n  dashboards="dialog.data.dashboards"\n  current-user="dialog.data.currentUser"\n  on-reorder="dialog.data.onReorder"\n  translations="dialog.data.translations"\n/&gt;\n'},83017:(e,t,n)=&gt;{e.exports='&lt;div rg-shortcuts="dashboard-shortcuts"\n     shortcuts-map="dshPageCtrl.shortcutActions"\n     shortcuts-focus="dshPageCtrl.dashboardConfig !== undefined"\n     dsh-grid-scroll-compensator\n     class="dashboard-page"&gt;\n  &lt;div class="dashboard-page__toolbar" ng-if="dshPageCtrl.dashboardsRes.items"&gt;\n    &lt;div class="dashboard-page__toolbar-buttons"&gt;\n\n      &lt;span class="dashboard-page__shared-with ring-link"\n            data-test="dashboard-shared-with"\n            rg-permission="jetbrains.jetpass.user-read | jetbrains.jetpass.user-read-basic | jetbrains.jetpass.group-read"\n            ng-if="dshPageCtrl.activeDashboard.permissions.length"\n            ng-click="dshPageCtrl.manageSharedAccess(dshPageCtrl.activeDashboard)"&gt;\n        &lt;rg-icon class="dashboard-page__shared-with-icon" glyph="'+n(46968)+'" size="16" color="BLACK"&gt;\n      &lt;/rg-icon&gt;&lt;span\n        &gt;{{dshPageCtrl.getSharedWith(dshPageCtrl.activeDashboard)}}&lt;/span&gt;\n      &lt;/span&gt;\n      &lt;rg-button\n              ng-if="dshPageCtrl.canAddToMyDashboards(dshPageCtrl.activeDashboard)"\n              data-test="dashboard-add-to-favorites"\n              class="dashboard-page__add-button"\n              ng-click="dshPageCtrl.makeFavorite(dshPageCtrl.activeDashboard)"&gt;\n        &lt;span translate translate-context="Dashboard"&gt;Add to my dashboards&lt;/span&gt;\n      &lt;/rg-button&gt;\n\n      &lt;dashboard-buttons ng-if="dshPageCtrl.isEditable(dshPageCtrl.activeDashboard)"&gt;&lt;/dashboard-buttons&gt;\n\n      &lt;rg-button\n              class="dashboard-page__share-button"\n              ng-if="dshPageCtrl.isShareable(dshPageCtrl.activeDashboard)"\n              rg-permission="jetbrains.jetpass.user-read | jetbrains.jetpass.user-read-basic | jetbrains.jetpass.group-read"\n              data-test="share-dashboard-button"\n              ng-click="dshPageCtrl.shareDashboard(dshPageCtrl.activeDashboard)"&gt;\n        &lt;span translate translate-context="Dashboard"&gt;Share&lt;/span&gt;...\n      &lt;/rg-button&gt;\n\n      &lt;rg-button class="dashboard-page__edit-button"\n              ng-if="dshPageCtrl.isEditable(dshPageCtrl.activeDashboard)"\n              data-test="edit-dashboard-dropdown"\n              rg-select select-type="dropdown"\n              options="item in dshPageCtrl.getEditDashboardOptions(dshPageCtrl.activeDashboard)"\n              on-select="dshPageCtrl.editDashboard(selected.originalModel)"&gt;\n        &lt;span translate translate-context="Dashboard"&gt;Edit&lt;/span&gt;\n        &lt;rg-icon glyph="'+n(96971)+'" size="14"&gt;&lt;/rg-icon&gt;\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n\n    &lt;div&gt;\n      &lt;span class="dashboard-page__dashboard-title"&gt;\n        &lt;span class="dashboard-page__dashboard-dropdown"\n              title="â‡§ â†“"\n              data-test="dashboards-dropdown"\n              rg-select select-type="dropdown" select-click-on="dashboard:page-open-dashboard-list"\n              config="dshPageCtrl.dashboardsListConfig"\n              on-open="dshPageCtrl.onDashboardSelectOpen()"\n              on-select="dshPageCtrl.onSelectDashboard(selected._dashboard, event)"\n              options="dashboard.name for dashboard in dshPageCtrl.getDashboardList() track by dashboard.id"\n              filter="dshPageCtrl.dashboardListFilter"\n        &gt;{{dshPageCtrl.getDashboardDropdownName()}}&lt;rg-icon\n          class="dashboard-page__dashboard-dropdown-icon"\n          glyph="'+n(96971)+'"\n          size="16"\n        &gt;&lt;/rg-icon&gt;&lt;/span&gt;\n        &lt;span class="ring-link dashboard-page__new-count"\n              ng-if="dshPageCtrl.getNewlyAddedCount() &gt; 0"\n              ng-click="dshPageCtrl.shortcutActions.openDashboardsList()"\n              data-test="new-dashboards-dropdown"\n              translate translate-context="Dashboard"\n              translate-n="dshPageCtrl.getNewlyAddedCount()"\n              translate-plural="{{dshPageCtrl.getNewlyAddedCount()}} new"&gt;{{dshPageCtrl.getNewlyAddedCount()}} new&lt;/span&gt;\n      &lt;/span&gt;\n      &lt;div ng-if="dshPageCtrl.getDashboardShortList().length &gt; 1 &amp;&amp; dshPageCtrl.activeDashboard.favorite" class="dashboard-page__siblings"&gt;\n        &lt;span ng-if="dshPageCtrl.getPreviousDashboard()" title="â‡§ â†"&gt;\n          &lt;a class="ring-link dashboard-page__sibling-link"\n             data-test="prev-dashboard-link"\n             ng-click="dshPageCtrl.goToPreviousDashboard()"&gt;{{dshPageCtrl.getPreviousDashboard().name}}&lt;/a&gt;\n          &lt;span class="dashboard-page__arrow-left"&gt;â†&lt;/span&gt;\n        &lt;/span&gt;\n        &lt;span class="dashboard-page__count" translate&gt;{{dshPageCtrl.getActiveDashboardNum()}} of {{dshPageCtrl.getDashboardShortList().length}}&lt;/span&gt;\n        &lt;span ng-if="dshPageCtrl.getNextDashboard()" title="â‡§ â†’"&gt;\n          &lt;span class="dashboard-page__arrow-right"&gt;â†’&lt;/span&gt;\n          &lt;a class="ring-link dashboard-page__sibling-link"\n             data-test="next-dashboard-link"\n             ng-click="dshPageCtrl.goToNextDashboard()"&gt;{{dshPageCtrl.getNextDashboard().name}}&lt;/a&gt;\n        &lt;/span&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n\n  &lt;dashboard ng-if="dshPageCtrl.activeDashboard" dashboard="dshPageCtrl.activeDashboard.data"\n             config="dshPageCtrl.dashboardConfig"\n             on-save="dshPageCtrl.updateDashboard(dshPageCtrl.activeDashboard)"&gt;&lt;/dashboard&gt;\n\n  &lt;div ng-if="dshPageCtrl.dashboardsRes.$resolved &amp;&amp; dshPageCtrl.activeDashboard &amp;&amp; !dshPageCtrl.activeDashboard.data.widgets.length" class="dashboard__empty"&gt;\n    &lt;div class="dashboard__empty-smile"&gt;(ãƒ»_ãƒ»)&lt;/div&gt;\n    &lt;div class="dashboard__shortcuts"&gt;\n      &lt;table class="dashboard__shortcuts-table"&gt;\n        &lt;tbody&gt;\n          &lt;tr class="dashboard__shortcuts-table-row" ng-if="dshPageCtrl.isEditable(dshPageCtrl.activeDashboard)"&gt;\n            &lt;td class="dashboard__empty-shortcuts-shortcut"&gt;{{dshPageCtrl.isMac() ? \'âŒƒ âŒ¥ N\' : \'Alt+Shift+Insert\'}}&lt;/td&gt;\n            &lt;td class="dashboard__empty-shortcuts-hint" translate translate-context="Dashboard"&gt;Add widget&lt;/td&gt;\n          &lt;/tr&gt;\n          &lt;tr class="dashboard__shortcuts-table-row"&gt;\n            &lt;td class="dashboard__empty-shortcuts-shortcut"&gt;{{dshPageCtrl.isMac() ? \'â‡§ â†“\' : \'Shift+â†“\'}}&lt;/td&gt;\n            &lt;td class="dashboard__empty-shortcuts-hint" translate translate-context="Dashboard"&gt;List dashboards&lt;/td&gt;\n          &lt;/tr&gt;\n          &lt;tr class="dashboard__shortcuts-table-row"&gt;\n            &lt;td class="dashboard__empty-shortcuts-shortcut"&gt;{{dshPageCtrl.isMac() ? \'â‡§ â†\' : \'Shift+â†\'}}&lt;/td&gt;\n            &lt;td class="dashboard__empty-shortcuts-hint" translate translate-context="Dashboard"&gt;Previous dashboard&lt;/td&gt;\n          &lt;/tr&gt;\n          &lt;tr class="dashboard__shortcuts-table-row"&gt;\n            &lt;td class="dashboard__empty-shortcuts-shortcut"&gt;{{dshPageCtrl.isMac() ? \'â‡§ â†’\' : \'Shift+â†’\'}}&lt;/td&gt;\n            &lt;td class="dashboard__empty-shortcuts-hint" translate translate-context="Dashboard"&gt;Next dashboard&lt;/td&gt;\n          &lt;/tr&gt;\n        &lt;/tbody&gt;\n      &lt;/table&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-if="dshPageCtrl.dashboardsRes.$resolved &amp;&amp; dshPageCtrl.dashboardsRes.items.length &amp;&amp; dshPageCtrl.dashboardNotFound"&gt;\n    &lt;rg-error-message\n      class="dashboard-page__error-message"\n      code="404"\n      message="{{\'Dashboard not found\'  | translate:\'Dashboard\'}}"\n      icon="{{dshPageCtrl.notFoundIcon}}"\n      links="dshPageCtrl.notFoundLinks"&gt;\n      &lt;span&gt;{{:: dshPageCtrl.notFoundMessage}}&lt;/span&gt;\n    &lt;/rg-error-message&gt;\n  &lt;/div&gt;\n\n  &lt;hub-page-help url="Dashboard.html"&gt;\n    &lt;span translate translate-context="Dashboard"&gt;Get an overview of your projects at a glance. Add widgets to the dashboard as cards\n      and arrange them any way you like. Different widgets are available for each of the JetBrains team tools\n      that are integrated with your installation. Build a personal dashboard or share the dashboard with your project team.&lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},61273:e=&gt;{e.exports='&lt;div class="ring-form__group"&gt;\n    &lt;label class="ring-form__label"\n           translate&gt;Name&lt;/label&gt;\n\n    &lt;div class="ring-form__control"&gt;\n      &lt;input class="ring-input"\n             data-test="dashboard-name-input"\n             ng-model="data.name"\n             required/&gt;\n\n      &lt;div class="ring-error-bubble active"\n           ng-if="data.isNameExist(data.name)" translate translate-context="Dashboard"&gt;\n        Another dashboard with the name "{{data.name}}" already exists\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n&lt;/div&gt;\n'},75344:e=&gt;{e.exports='&lt;div class="dashboard"&gt;\n  &lt;div ng-if="dshCtrl.dashboard.widgets.length &gt; 0" gridster="dshCtrl.gridsterOptions" class="widget-gridster" dsh-gridster-resizer&gt;\n    &lt;ul widget-gridster-navigation-helper&gt;\n      &lt;li\n        gridster-item="dshCtrl.customItemMap"\n        ng-repeat="widget in dshCtrl.dashboard.widgets"\n        ng-show="dshCtrl.shouldShowWidget(widget)"\n      &gt;\n        &lt;dashboard-widget\n          name="widget.directive"\n          widget-id="widget.id || widget.directive"\n          config="widget.config"\n          can-move-across-dashboards="dshCtrl.config.otherDashboardsExists"\n          editable="dshCtrl.config.editable"\n          remove="dshCtrl.removeWidget(widget)"\n        &gt;&lt;/dashboard-widget&gt;\n      &lt;/li&gt;\n    &lt;/ul&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},59998:e=&gt;{e.exports='&lt;rg-select class="widget__config-element"\n           rg-autofocus="true"\n           ng-if="selectServiceCtrl.selectOptions.length !== 1"\n           ng-model="selectServiceCtrl.model"\n           select-type="button"\n           options="item.text for item in selectServiceCtrl.selectOptions track by item.id"\n           label="{{\'Select service\' | translate:\'Dashboard\'}}"\n           label-field="text"&gt;&lt;/rg-select&gt;\n'},74223:(e,t,n)=&gt;{e.exports='&lt;div\n  class="share__manage-access-row"\n  data-test="manage-access-row"\n  ng-repeat="item in listCtrl.getItems() track by item.id"\n&gt;\n  &lt;div class="share__manage-access-personality"&gt;\n    &lt;rg-avatar\n      ng-if=":: listCtrl.getIconURL(item)"\n      size="20"\n      url=":: listCtrl.getIconURL(item)"\n    &gt;&lt;/rg-avatar&gt;\n    &lt;rg-icon\n      ng-if=":: !listCtrl.getIconURL(item)"\n      size="14"\n      class="share__manage-access-group-icon"\n      glyph="'+n(46968)+'"\n    &gt;&lt;/rg-icon&gt;\n    &lt;span class="share__manage-access-text" data-test="item-name"&gt;{{:: item.personality.name}}&lt;/span&gt;\n    &lt;span class="share__manage-access-text share__manage-access-description"\n          ng-if="item.personality.profile.email" data-test="item-email"&gt;{{:: item.personality.profile.email.email}}&lt;/span&gt;\n  &lt;/div&gt;\n\n  &lt;div class="share__manage-access-controls"&gt;\n    &lt;rg-button\n      text="true"\n      ng-disabled="!listCtrl.canUpdate"\n      data-test="toggle-access"\n      data-test-allowed="{{item.isWritable}}"\n      ng-click="listCtrl.onChangeAccess(item, !item.isWritable)"\n    &gt;\n      &lt;span translate ng-if="item.isWritable"&gt;Prohibit editing&lt;/span&gt;\n      &lt;span translate ng-if="!item.isWritable"&gt;Allow editing&lt;/span&gt;\n    &lt;/rg-button&gt;\n\n    &lt;rg-button\n      mode="primary"\n      ng-disabled="!listCtrl.canUpdate"\n      icon="'+n(26137)+'"\n      data-test="remove"\n      ng-click="listCtrl.onRemove(item)"\n    &gt;&lt;/rg-button&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},20742:e=&gt;{e.exports='&lt;div class="share__dashboard-popup"&gt;\n  &lt;div class="share__dashboard-popup-shared-with"&gt;\n    &lt;span ng-if="dialog.data.existPermissions.length"&gt;\n      &lt;a class="ring-link" ng-click="dialog.data.goToManagePermissions()"&gt;\n          {{dialog.data.getSharedWith(dshPageCtrl.activeDashboard)}}\n      &lt;/a&gt;\n    &lt;/span&gt;\n  &lt;/div&gt;\n\n  \x3c!-- Hackish way to invallidate form --\x3e\n  &lt;input ng-show="false" type="text" ng-model="dialog.data.addedUsersAndGroups[0]" required/&gt;\n\n  &lt;rg-tags-input\n    height="\'S\'"\n    size="\'L\'"\n    x-data-source="dialog.data.usersAndGroupsDataSource"\n    on-add-tag="dialog.data.onAddUserOrGroup"\n    on-remove-tag="dialog.data.onRemoveUserOrGroup"\n    auto-open="true"\n    placeholder="\'Add user, group or team\' | translate"\n    max-popup-height="250"\n    loading-message="\'Loading...\' | translate"\n  &gt;&lt;/rg-tags-input&gt;\n\n  &lt;div class="ring-form__group"&gt;\n    &lt;rg-checkbox ng-model="dialog.data.canUpdate" ng-if="true"&gt; \x3c!-- ng-if="true" is a workaround for FF 63 bug https://youtrack.jetbrains.com/issue/JPS-9518 --\x3e\n      &lt;span translate translate-context="Dashboard"&gt;Allow to edit dashboard&lt;/span&gt;\n    &lt;/rg-checkbox&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},37996:e=&gt;{e.exports='&lt;div class="share__manage-access-popup" data-test="manage-access-dialog"&gt;\n  &lt;div ng-if="dialog.data.resolved"&gt;\n    &lt;h4 class="share__manage-access-title share__manage-access-title_first" translate&gt;\n      Users &lt;span class="share__manage-access-description"&gt;{{dialog.data.getUsers().length}}&lt;/span&gt;\n    &lt;/h4&gt;\n\n    &lt;dsh-manage-access-list\n      get-items="dialog.data.getUsers"\n      on-change-access="dialog.data.updateWritePermission"\n      on-remove="dialog.data.removePermission"\n      can-update="dialog.data.canChange"\n      data-test="allowed-users"\n    &gt;&lt;/dsh-manage-access-list&gt;\n\n    &lt;div class="ring-line share__manage-access-line"&gt;&lt;/div&gt;\n\n    &lt;h4 class="share__manage-access-title" translate&gt;\n      Groups &lt;span class="share__manage-access-description"&gt;{{dialog.data.getGroups().length}}&lt;/span&gt;\n    &lt;/h4&gt;\n\n    &lt;dsh-manage-access-list\n      get-items="dialog.data.getGroups"\n      on-change-access="dialog.data.updateWritePermission"\n      on-remove="dialog.data.removePermission"\n      can-update="dialog.data.canChange"\n      data-test="allowed-groups"\n    &gt;&lt;/dsh-manage-access-list&gt;\n\n    &lt;div class="ring-line share__manage-access-line"&gt;&lt;/div&gt;\n\n    &lt;h4 class="share__manage-access-title" translate&gt;\n      Teams &lt;span class="share__manage-access-description"&gt;{{dialog.data.getProjectTeams().length}}&lt;/span&gt;\n    &lt;/h4&gt;\n\n    &lt;dsh-manage-access-list\n      get-items="dialog.data.getProjectTeams"\n      on-change-access="dialog.data.updateWritePermission"\n      on-remove="dialog.data.removePermission"\n      can-update="dialog.data.canChange"\n      data-test="allowed-teams"\n    &gt;&lt;/dsh-manage-access-list&gt;\n    \n  &lt;/div&gt;\n\n  &lt;rg-loader ng-if="!dialog.data.resolved"/&gt;\n&lt;/div&gt;\n'},92860:e=&gt;{e.exports='&lt;div class="share__widget-dialog ring-form"&gt;\n  &lt;div class="share__widget-dialog__form"&gt;\n    &lt;div class="ring-form__group"&gt;\n      &lt;form-control-edit-text data-test="new-redirect-uri-field"\n                              data-label="{{ \'Target web page\' | translate }}"\n                              data-model="dialog.data.targetPageUri"\n                              data-placeholder="https://www.targetpage.com/full/path/"\n                              size="m"\n                              data-validators="dialog.data.uriValidator"&gt;\n        &lt;description&gt;\n          &lt;span translate&gt;Enter the URL of the page into which you want to embed this widget. The web address is added to the list of redirect URIs for the {{applicationName}} service.&lt;/span&gt;\n          &lt;a class="ring-link"\n             ng-if="dialog.data.descriptionLink"\n             target="_blank"\n             ng-href="{{dialog.data.descriptionLink.href}}"&gt;\n            {{dialog.data.descriptionLink.title}}\n          &lt;/a&gt;\n        &lt;/description&gt;\n      &lt;/form-control-edit-text&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="share__widget-dialog__src-wrapper"&gt;\n    &lt;pre class="share__widget-dialog__src"\n         ng-click="dialog.data.copyAction()"\n         title="{{\'Copy\' | translate}}"&gt;{{dialog.data.code}}&lt;/pre&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},77565:e=&gt;{e.exports='&lt;div class="share__widget-dialog"&gt;\n  &lt;div class="ring-form__group"&gt;\n    &lt;span translate translate-context="Dashboard"&gt;Copy this link and send it to another user&lt;/span&gt;\n  &lt;/div&gt;\n\n  &lt;div class="share__widget-dialog__src-wrapper"&gt;\n    &lt;pre class="share__widget-dialog__src"\n         ng-click="dialog.data.copyAction()"\n         title="{{\'Copy\' | translate}}"&gt;{{dialog.data.link}}&lt;/pre&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},78555:e=&gt;{e.exports='&lt;rg-select\n  class="widget__config-element"\n  rg-autofocus="true"\n  ng-model="upsourceSelectCtrl.model"\n  clear="upsourceSelectCtrl.clear"\n  select-type="button"\n  options="item.text for item in upsourceSelectCtrl.dataSource(query) track by item.id"\n  label="{{upsourceSelectCtrl.label}}"\n  config="upsourceSelectCtrl.selectConfig"\n  config-auto-update="true"\n  filter="true"\n  multiple="upsourceSelectCtrl.multiple"\n&gt;&lt;/rg-select&gt;\n'},74357:e=&gt;{e.exports='&lt;rg-select name="dashboard"\n           label="{{\'Select the target dashboard\' | translate:\'Dashboard\'}}"\n           ng-model="data.selectedDashboard"\n           select-type="button"\n           filter="true"\n           options="item.name for item in data.dashboards track by item.id"\n           rg-autofocus="true"\n           required&gt;&lt;/rg-select&gt;\n'},2146:e=&gt;{e.exports='&lt;div class="dashboard-page"&gt;\n  &lt;div class="dashboard-page__toolbar" ng-form="widgetUrlForm"&gt;\n\n    &lt;input\n      required\n      class="ring-input ring-input-size_l"\n      type="url"\n      placeholder="{{\'Enter widget hosting URL\' | translate:\'Dashboard\'}}"\n      ng-model="playgroundCtrl.widgetURL"\n      ng-keypress="playgroundCtrl.onKeyPress($event)"\n      data-test="widget-url-input"\n    /&gt;\n    &lt;rg-button\n      mode="primary"\n      loader="playgroundCtrl.isLoading"\n      ng-disabled="widgetUrlForm.$error.required || playgroundCtrl.isLoading"\n      ng-click="playgroundCtrl.loadWidget(playgroundCtrl.widgetURL)"\n      data-test="load-widget-button"\n    &gt;\n      &lt;span ng-if="!playgroundCtrl.customWidget" translate&gt;Load widget&lt;/span&gt;\n      &lt;span ng-if="playgroundCtrl.customWidget" translate&gt;Reload widget &lt;/span&gt;\n    &lt;/rg-button&gt;\n\n    &lt;rg-button\n      ng-if="playgroundCtrl.customWidget"\n      ng-click="playgroundCtrl.resetConfig()"\n      data-test="clear-widget-config-button"\n    &gt;\n      &lt;span translate&gt;Reset config&lt;/span&gt;\n    &lt;/rg-button&gt;\n  &lt;/div&gt;\n\n  &lt;div class="dashboard" ng-if="playgroundCtrl.customWidget"&gt;\n    &lt;div gridster="playgroundCtrl.gridsterOptions" class="widget-gridster" dsh-gridster-resizer&gt;\n      &lt;ul&gt;\n        &lt;li gridster-item="playgroundCtrl.customItemMap" ng-repeat="widget in [playgroundCtrl.customWidget]"&gt;\n          &lt;widget-custom\n            widget-id="playgroundCtrl.widgetId"\n            config="playgroundCtrl.customWidget.config"\n            can-move-across-dashboards="false"\n            editable="true"\n            widgets-registry="playgroundCtrl.widgetsRegistry"\n            data-test="custom-widget"\n          &gt;&lt;/widget-custom&gt;\n        &lt;/li&gt;\n      &lt;/ul&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-if="!playgroundCtrl.customWidget" class="dashboard__empty"&gt;\n    &lt;div class="dashboard__empty-smile"&gt;(ãƒ»_ãƒ»)&lt;/div&gt;\n    &lt;div translate translate-context="Dashboard" class="widget-playground-page__empty-message"&gt;\n      To view and test your widget, upload it to an HTTP server and point to its location in the input field\n    &lt;/div&gt;\n    &lt;div translate translate-context="Dashboard" class="widget-playground-page__empty-message"&gt;\n      For detailed instructions, &lt;a\n        target="_blank"\n        ng-href="{{playgroundCtrl.dshGetWidgetPlaygroundHelpLink()}}"\n        class="ring-link"&gt;&lt;span&gt;read the documentation&lt;/span&gt;&lt;/a&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;hub-page-help url="Custom-Widgets.html"&gt;\n    &lt;span translate translate-context="Dashboard"&gt;\n      Preview and test the functionality of custom widgets. Reload the widget to apply updates to widget code.\n    &lt;/span&gt;\n  &lt;/hub-page-help&gt;\n&lt;/div&gt;\n'},79109:(e,t,n)=&gt;{e.exports='&lt;rg-island\n  class="widget"\n  narrow="true"\n  ng-class="{\'widget_config\': widgetCtrl.isShowConfig() || widgetCtrl.config._isMoving}"\n&gt;\n\n    &lt;rg-island-header\n      border="true"\n      wrap-with-title="false"\n      class="widget__header"\n      data-test="widget-header"\n      ng-class="{\n        \'widget__header_draggable\': widgetCtrl.editable &amp;&amp; !widgetCtrl.isShowConfig(),\n        \'widget__header_full-width\': widgetCtrl.widgetIsScrolled\n      }"\n      ng-dblclick="widgetCtrl.fullscreen()"&gt;\n\n      &lt;span class="widget__header-service-logo" ng-if="widgetCtrl.isIconEnabled() &amp;&amp; widgetCtrl.iconUrl"&gt;\n        &lt;img ng-src="{{widgetCtrl.iconUrl}}" class="widget__custom-icon" data-test="custom-icon"/&gt;\n      &lt;/span&gt;\n\n      &lt;img\n        class="widget__header-service-logo"\n        ng-if="widgetCtrl.isIconEnabled() &amp;&amp; !widgetCtrl.iconUrl &amp;&amp; widgetCtrl.serviceName"\n        ng-src="{{widgetCtrl.getLogoIcon()}}"/&gt;\n\n      &lt;div class="widget__header-label"&gt;\n        &lt;rg-icon\n          ng-if="widgetCtrl.viewModel.error"\n          glyph="'+n(24193)+'"\n          size="16"\n          class="widget__icon-warning"\n          data-test="service-icon"\n          title="{{widgetCtrl.viewModel.error}}"&gt;&lt;/rg-icon&gt;\n\n        &lt;span ng-if="widgetCtrl.isShowConfig() || !widgetCtrl.hasHeader"&gt;\n          {{ widgetCtrl.getHeaderText() }}\n        &lt;/span&gt;\n      &lt;/div&gt;\n\n      &lt;div class="widget__header-space"&gt;&lt;/div&gt;\n\n      \x3c!-- Refresh button --\x3e\n      &lt;rg-button\n        ng-show="widgetCtrl.canRefresh &amp;&amp; !widgetCtrl.isShowConfig()"\n        ng-click="widgetCtrl.forceRefresh()"\n        ng-mousedown="widgetCtrl.doNothing($event)"\n        ng-mouseup="widgetCtrl.doNothing($event)"\n        ng-dblclick="widgetCtrl.doNothing($event)"\n        data-test="widget-refresh"\n        title="{{ widgetCtrl.getRefreshTitle() }}"\n        ng-class="{widget__control_refresh: widgetCtrl.isLoading()}"\n        icon="'+n(39234)+'"\n        class="widget__icon"\n      &gt;&lt;/rg-button&gt;\n\n      \x3c!-- DropDown with actions --\x3e\n      &lt;div\n        ng-if="widgetCtrl.isEditIconAvailable()"\n        ng-mousedown="widgetCtrl.doNothing($event)"\n        ng-mouseup="widgetCtrl.doNothing($event)"\n        ng-dblclick="widgetCtrl.doNothing($event)"\n        data-test="widget-actions-dropdown"\n        class="widget__control-dropdown"\n\n        rg-select\n        select-type="dropdown" select-click-on="dashboard:widget-open-edit-dropdown"\n        options="item in widgetCtrl.getWidgetDropdownOptions()"\n        on-select="widgetCtrl.onDropdownSelect(selected)"\n      &gt;\n        &lt;rg-button\n          icon="'+n(27526)+'"\n          class="widget__icon widget__chevron-icon"\n        &gt;&lt;/rg-button&gt;\n      &lt;/div&gt;\n    &lt;/rg-island-header&gt;\n\n    &lt;rg-island-content\n      class="widget__content"\n      ng-class="{\'widget__content_no-paddings\': !widgetCtrl.hasPaddings()}"\n      fade="widgetCtrl.hasFades()"\n      on-scroll="widgetCtrl.onScroll($scrollTop)"\n      ng-show="!widgetCtrl.isShowFullWidgetError()"\n    &gt;\n      &lt;ng-transclude&gt;&lt;/ng-transclude&gt;\n    &lt;/rg-island-content&gt;\n\n    &lt;rg-island-content ng-if="widgetCtrl.isShowFullWidgetError()" class="widget__content" fade="false"&gt;\n      &lt;widget-empty header="{{widgetCtrl.viewModel.errorSmile}}"&gt;\n        &lt;span class="widget__empty-error" title="{{widgetCtrl.viewModel.error}}"&gt;{{widgetCtrl.viewModel.error | limitedText:140}}&lt;/span&gt;\n      &lt;/widget-empty&gt;\n    &lt;/rg-island-content&gt;\n\n  &lt;div rg-panel class="widget__footer" ng-if="widgetCtrl.isShowConfig() &amp;&amp; widgetCtrl.hasFooterInConfigMode()"&gt;\n    &lt;rg-button ng-show="!widgetCtrl.isCompleted() &amp;&amp; !widgetCtrl.hideCreateWidgetButton"\n               mode="primary"\n               type="submit"\n               data-test="widget-create"\n               ng-disabled="!widgetCtrl.canSaveWidget()"\n               ng-click="widgetCtrl.saveConfig()"&gt;\n      &lt;span translate translate-context="Dashboard"&gt;Create widget&lt;/span&gt;\n    &lt;/rg-button&gt;\n    &lt;rg-button ng-show="widgetCtrl.isCompleted() &amp;&amp; !widgetCtrl.hideCreateWidgetButton"\n               mode="primary"\n               type="submit"\n               data-test="widget-apply-config"\n               ng-disabled="!widgetCtrl.canSaveWidget()"\n               ng-click="widgetCtrl.saveConfig()"&gt;\n      &lt;span translate translate-context="Dashboard"&gt;Apply&lt;/span&gt;\n    &lt;/rg-button&gt;\n\n    &lt;rg-button ng-show="widgetCtrl.canCancelConfig() &amp;&amp; widgetCtrl.isCompleted()"\n               class="widget__right-btn"\n               data-test="widget-cancel-config"\n               ng-click="widgetCtrl.cancelConfig()"&gt;\n      &lt;span translate translate-context="Dashboard"&gt;Cancel&lt;/span&gt;\n    &lt;/rg-button&gt;\n    &lt;rg-button ng-show="!widgetCtrl.isCompleted()"\n               class="widget__right-btn"\n               data-test="widget-cancel-creation"\n               ng-click="widgetCtrl.removeWidgetAndClearCache()"&gt;\n      &lt;span translate translate-context="Dashboard"&gt;Cancel&lt;/span&gt;\n    &lt;/rg-button&gt;\n  &lt;/div&gt;\n&lt;/rg-island&gt;\n'},27614:e=&gt;{e.exports='&lt;div class="widget__empty"&gt;\n  &lt;div class="widget__empty-smile" ng-class="headerClass"&gt;{{header}}&lt;/div&gt;\n  &lt;div class="widget__empty-message" ng-transclude&gt;&lt;/div&gt;\n&lt;/div&gt;\n'},17839:e=&gt;{e.exports='&lt;div class="widget__edit-label"&gt;\n  &lt;input class="ring-input"\n         data-test="widget-name-input"\n         type="text"\n         ng-model="$ctrl.widget.config.name"\n         ng-attr-placeholder="{{\'Optional title\' | translate:\'dashboard\'}}"/&gt;\n&lt;/div&gt;\n\n&lt;div class="widget__edit-label" ng-show="$ctrl.widget.canRefresh"&gt;\n  &lt;input class="ring-input"\n         ng-class="{\'ring-input_error\': $ctrl.widget.config.refreshPeriod &lt; $ctrl.widget.MIN_REFRESH_PERIOD}"\n         data-test="widget-refresh-rate-input"\n         type="number"\n         min="0"\n         ng-model="$ctrl.widget.config.refreshPeriod"\n         ng-attr-placeholder="{{\'Custom refresh rate, seconds\' | translate:\'dashboard\'}}"/&gt;\n  &lt;span class="widget__edit-description" translate&gt;Default refresh rate is {{$ctrl.widget.defaultRefreshPeriod}} seconds&lt;/span&gt;\n&lt;/div&gt;\n'},42276:e=&gt;{e.exports='&lt;widget data-test-widget-key="{{widgetCtrl.widget.manifest.key}}"&gt;\n\n  &lt;div widget__header&gt;\n    &lt;span ng-if="!widgetCtrl.isShowConfig()" class="widget__header-text"&gt;\n      &lt;a ng-if="widgetCtrl.labelUrl"\n         ng-href="{{widgetCtrl.labelUrl}}"\n         class="ring-link widget__header-link"&gt;\n        {{widgetCtrl.label}}\n      &lt;/a&gt;\n\n      &lt;span ng-if="!widgetCtrl.labelUrl"&gt;\n        {{widgetCtrl.label}}\n      &lt;/span&gt;\n    &lt;/span&gt;\n  &lt;/div&gt;\n\n  &lt;div\n    class="custom__iframe-container"\n    data-test="iframe-container"\n  &gt;&lt;/div&gt;\n\n  &lt;div class="custom__mouse-handler"&gt;&lt;/div&gt;\n&lt;/widget&gt;\n'},43132:e=&gt;{e.exports='&lt;div&gt;\n  &lt;custom-widget-info class="custom__widget-info" widget="dialog.data.widget"&gt;&lt;/custom-widget-info&gt;\n&lt;/div&gt;\n'},64495:(e,t,n)=&gt;{e.exports='&lt;rg-island\n  class="widget"\n  narrow="true"&gt;\n\n  &lt;rg-island-header\n    border="true"\n    wrap-with-title="false"\n    class="widget__header"\n  &gt;\n    &lt;div class="widget__header-label"&gt;\n      &lt;rg-icon class="widget__icon-warning" glyph="'+n(24193)+'" size="16"&gt;&lt;/rg-icon&gt;\n      &lt;span class="widget__header-text"&gt;{{widgetName}}&lt;/span&gt;\n    &lt;/div&gt;\n\n    &lt;div class="widget__header-space"&gt;&lt;/div&gt;\n\n    &lt;rg-icon\n      ng-click="remove()"\n      class="widget__control widget__icon"\n      glyph="'+n(9912)+'"\n      size="16"\n    &gt;&lt;/rg-icon&gt;\n  &lt;/rg-island-header&gt;\n\n  &lt;rg-island-content class="widget__content-wrapper"&gt;\n    \x3c!--We don\'t know what that widget is--\x3e\n    &lt;div ng-if="!serviceName"&gt;\n      &lt;span class="unrecognized__title" translate translate-context="Dashboard"&gt;The widget was not found in the system&lt;/span&gt;\n\n      &lt;p class="unrecognized__text-block" translate translate-context="Dashboard"&gt;Most likely, the widget has been removed from the system by its developers.&lt;/p&gt;\n\n      &lt;p class="unrecognized__text-block" translate translate-context="Dashboard"&gt;You might want to remove the current widget and replace it with an alternative one.&lt;/p&gt;\n    &lt;/div&gt;\n\n    \x3c!--Widget service (YouTrack, for example) isn\'t registered in Hub--\x3e\n    &lt;div ng-if="serviceName"&gt;\n      &lt;span class="unrecognized__title" translate translate-context="Dashboard"&gt;No connection to service&lt;/span&gt;\n\n      &lt;p class="unrecognized__text-block" translate translate-context="Dashboard"&gt;This widget canâ€™t connect to the {{serviceName}} service.&lt;/p&gt;\n\n      &lt;p class="unrecognized__text-block" translate translate-context="Dashboard"&gt;Please contact your system administrator to check if the service is connected to Hub or delete the widget.&lt;/p&gt;\n    &lt;/div&gt;\n\n    &lt;div&gt;\n      &lt;p class="unrecognized__text-block"&gt;\n        &lt;a class="ring-link"\n           ng-show="!showWidgetConfigurationDetails"\n           ng-click="showWidgetConfigurationDetails = true"\n           translate translate-context="Dashboard"&gt;Show widget configuration&lt;/a&gt;\n        &lt;div ng-if="showWidgetConfigurationDetails" class="unrecognized__widget-config"&gt;\n          {{config | json}}\n        &lt;/div&gt;\n      &lt;/p&gt;\n    &lt;/div&gt;\n  &lt;/rg-island-content&gt;\n&lt;/rg-island&gt;\n'},53779:e=&gt;{e.exports='&lt;widget&gt;\n  &lt;div widget__header&gt;\n    &lt;a\n      target="_blank"\n      ng-if="widgetCtrl.config.projects.length === 1"\n      class="ring-link widget__header-text widget__header-link"\n      dsh-gridster-no-drag\n      ng-href="{{widgetCtrl.serviceUrl}}/{{widgetCtrl.config.projects[0].id}}/view{{widgetCtrl.getQueryParams()}}"\n      ng-show="!widgetCtrl.isShowConfig()"\n    &gt;\n      &lt;span ng-if="!widgetCtrl.config.name"&gt;\n        {{\'Commits:\' | translate:\'Dashboard\'}} {{widgetCtrl.getProjectsPresentation(widgetCtrl.config.projects)}}\n        &lt;span ng-if="widgetCtrl.config.query" gridster-no-drag&gt;({{widgetCtrl.getQueryPresentation(widgetCtrl.config.query)}})&lt;/span&gt;\n      &lt;/span&gt;\n      &lt;span ng-if="widgetCtrl.config.name"&gt;{{widgetCtrl.config.name}}&lt;/span&gt;&lt;/span&gt;\n    &lt;/a&gt;\n\n    &lt;span ng-if="widgetCtrl.config.projects.length &gt; 1"&gt;\n      &lt;span ng-if="!widgetCtrl.config.name"&gt;\n        {{\'Commits:\' | translate:\'Dashboard\'}} {{widgetCtrl.getProjectsPresentation(widgetCtrl.config.projects)}}\n        &lt;span ng-if="widgetCtrl.config.query" gridster-no-drag&gt;({{widgetCtrl.getQueryPresentation(widgetCtrl.config.query)}})&lt;/span&gt;\n      &lt;/span&gt;\n      &lt;span ng-if="widgetCtrl.config.name"&gt;{{widgetCtrl.config.name}}&lt;/span&gt;&lt;/span&gt;\n    &lt;/span&gt;\n  &lt;/div&gt;\n  &lt;div ng-show="!widgetCtrl.isShowConfig()"&gt;\n    &lt;widget-empty ng-if="!widgetCtrl.data.result.commits.length &amp;&amp; !widgetCtrl.viewModel.error" header="(ãƒ»_ãƒ»)"&gt;\n      &lt;span translate translate-context="Dashboard"&gt;No commits found&lt;/span&gt;&lt;br/&gt;\n      &lt;span class="ring-link widget__empty-link" translate translate-context="Dashboard" ng-click="widgetCtrl.toggleConfig()"&gt;Edit search query&lt;/span&gt;\n    &lt;/widget-empty&gt;\n\n    &lt;div ng-repeat="rev in widgetCtrl.data.result.commits track by rev.revisionId" class="upsource-commits__commit"&gt;\n      &lt;rg-avatar\n        size="32"\n        class="upsource-commits__avatar"\n        url="::rev.author.avatarUrl"\n      &gt;&lt;/rg-avatar&gt;\n\n      &lt;div class="upsource-commits__top-line"&gt;\n        &lt;a target="_blank"\n           class="ring-link upsource-commits__link"\n           ng-href="{{::widgetCtrl.getViewCommitUrl(rev)}}"\n           title="{{::rev.revisionCommitMessage}}"\n        &gt;{{::rev.revisionCommitMessage}}&lt;/a&gt;\n        &lt;a target="_blank"\n           ng-if="widgetCtrl.config.projects.length &gt; 1"\n           class="ring-link upsource-commits__project-key"\n           ng-href="{{::widgetCtrl.getViewProjectUrl(rev)}}"\n           title="{{::rev.projectId}}"&gt;{{::rev.projectId}}&lt;/a&gt;\n      &lt;/div&gt;\n\n      &lt;div class="upsource-commits__bottom-line"&gt;\n        &lt;div class="upsource-commits__commit-info"&gt;{{::rev.author.name}} &lt;span class="upsource-commits__date"&gt;{{::rev.revisionDate | date:\'MMM d, HH:mm\'}}&lt;/span&gt;&lt;/div&gt;\n\n        &lt;a target="_blank"\n           class="ring-link upsource-commits__hash"\n           ng-href="{{::widgetCtrl.getViewCommitUrl(rev)}}"\n           title="{{::rev.vcsRevisionId}}"&gt;{{::rev.shortRevisionId}}&lt;/a&gt;\n\n        &lt;dsh-commit-review review="rev.reviewInfo" revision="rev"\n                         class="upsource-commits__review"\n                         on-before-create="widgetCtrl.prepareNewTabForReview();"\n                         on-create="widgetCtrl.onReviewCreated(rev, review, reviewUrl)"\n                         on-create-error="widgetCtrl.closeReviewTab()"\n                         project-id="rev.projectId" upsource-url="widgetCtrl.serviceUrl"&gt;&lt;/dsh-commit-review&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    &lt;div ng-show="widgetCtrl.viewModel.error" class="widget__error"&gt;{{widgetCtrl.viewModel.error}}&lt;/div&gt;\n  &lt;/div&gt;\n  &lt;div ng-if="widgetCtrl.isShowConfig()"&gt;\n    &lt;widget-general-editor widget="widgetCtrl"&gt;&lt;/widget-general-editor&gt;\n\n    &lt;select-hub-service model="widgetCtrl.config.service" application-name="Upsource"&gt;&lt;/select-hub-service&gt;\n\n    &lt;div ng-if="widgetCtrl.serviceUrl"&gt;\n        &lt;select-upsource-project\n          model="widgetCtrl.config.projects"\n          url="{{widgetCtrl.serviceUrl}}"\n          multiple="true"\n          label="{{\'Select projects\' | translate:\'Dashboard\'}}"\n        &gt;&lt;/select-upsource-project&gt;\n    &lt;/div&gt;\n\n    &lt;div ng-if="widgetCtrl.config.projects.length"&gt;\n      &lt;label class="widget__config-label" translate translate-context="Dashboard"&gt;Search query:&lt;/label&gt;\n\n      &lt;rg-query-assist\n        query="widgetCtrl.config.query"\n        focus="true"\n        x-data-source="widgetCtrl.queryAssistSource"\n        on-apply="widgetCtrl.saveQuery"\n        placeholder="\'Search revisions\' | translate"\n        hint="\'Press â‡¥ to complete first item\' | translate"\n        hint-on-selection="\'Press âŽ to complete selected item\' | translate"\n      /&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n&lt;/widget&gt;\n'},1937:(e,t,n)=&gt;{e.exports='&lt;div&gt;\n  &lt;span ng-if="reviewCtrl.review"&gt;\n    &lt;a ng-if="reviewCtrl.isReviewOpen(reviewCtrl.review)" target="_blank"\n       class="ring-link upsource-commits__review-link upsource-commits__review-link_open"\n       ng-href="{{::reviewCtrl.getReviewHref(reviewCtrl.review)}}"&gt;\n\n      &lt;rg-icon size="16" glyph="'+n(61222)+'"\n            title="{{\'Review is opened\' | translate:\'Dashboard\'}}"&gt;&lt;/rg-icon&gt;\n    &lt;/a&gt;\n    &lt;a ng-if="!reviewCtrl.isReviewOpen(reviewCtrl.review)" target="_blank"\n       class="ring-link upsource-commits__review-link upsource-commits__review-link_closed"\n       ng-href="{{::reviewCtrl.getReviewHref(reviewCtrl.review)}}"&gt;\n\n      &lt;rg-icon size="16" glyph="'+n(61222)+'"\n            title="{{\'Review is closed\' | translate:\'Dashboard\'}}"&gt;&lt;/rg-icon&gt;\n    &lt;/a&gt;\n  &lt;/span&gt;\n\n  &lt;a target="_blank" class="ring-link upsource-commits__create-review" ng-if="!reviewCtrl.review"\n    ng-click="reviewCtrl.createReview(reviewCtrl.revision)" translate translate-context="Dashboard"&gt;Create review&lt;/a&gt;\n&lt;/div&gt;\n'},53475:e=&gt;{e.exports='&lt;widget&gt;\n\n  &lt;div widget__header&gt;\n    &lt;span ng-show="!widgetCtrl.isShowConfig()" class="widget__header-text"&gt;\n      &lt;span ng-show="!widgetCtrl.config.name"&gt;Reviews&lt;span ng-show="widgetCtrl.config.query"&gt;: ({{widgetCtrl.getQueryPresentation(widgetCtrl.config.query)}})&lt;/span&gt;&lt;/span&gt;\n      &lt;span ng-show="widgetCtrl.config.name"&gt;{{widgetCtrl.config.name}}&lt;/span&gt;\n    &lt;/span&gt;\n    &lt;span ng-show="!widgetCtrl.isShowConfig()" class="widget__plate"&gt;{{widgetCtrl.data.result.result.reviews.length || 0}}&lt;/span&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-show="!widgetCtrl.isShowConfig()"&gt;\n\n    &lt;widget-empty ng-if="!widgetCtrl.data.result.result.reviews.length" header="(ãƒ»_ãƒ»)"&gt;\n      &lt;span translate translate-context="Dashboard"&gt;No reviews found&lt;/span&gt;&lt;br/&gt;\n      &lt;span class="ring-link widget__empty-link" translate translate-context="Dashboard" ng-click="widgetCtrl.toggleConfig()"&gt;Edit search query&lt;/span&gt;\n    &lt;/widget-empty&gt;\n\n    &lt;div&gt;\n      &lt;div ng-repeat="rev in widgetCtrl.data.result.result.reviews" class="upsource-reviews__review"&gt;\n        &lt;div class="upsource-reviews__review-header"&gt;\n          &lt;div class="upsource-reviews__participants"&gt;\n            &lt;div class="upsource-reviews__review-user" ng-repeat="user in ::rev.participants track by (user.userId + user.role)"\n                 ng-if="::widgetCtrl.getAuthors(rev).indexOf(user) === -1"&gt;\n              &lt;rg-avatar\n                size="20"\n                url="::widgetCtrl.getParticipantInfo(user).avatarUrl"\n                title="{{::widgetCtrl.getParticipantInfo(user).name + \' (\' + (user.role === widgetCtrl.roles.watcher ? \'Watcher\' : \'Reviewer\') + \')\'}}"\n              &gt;&lt;/rg-avatar&gt;\n              &lt;img\n                ng-if="::widgetCtrl.hasParticipantAcceptedChanges(user)"\n                title="{{\'Reviewer accepted the changes\' | translate:\'Dashboard\'}}"\n                class="upsource-reviews__status"\n                ng-src="{{ :: widgetCtrl.acceptIcon }}"\n                data-test="review-accepted"\n              /&gt;\n              &lt;img\n                ng-if="::widgetCtrl.hasParticipantRejectedChanges(user)"\n                title="{{\'Reviewer raised concern about the changes\' | translate:\'Dashboard\'}}"\n                class="upsource-reviews__status"\n                ng-src="{{ :: widgetCtrl.concernIcon }}"\n                data-test="review-rejected"\n              /&gt;\n            &lt;/div&gt;\n          &lt;/div&gt;\n        &lt;/div&gt;\n        &lt;div title="Created at {{:: rev.createdAt | date:\'MMM d, HH:mm\'}}"&gt;\n          &lt;span class="upsource-reviews__review-id"&gt;{{::rev.reviewId.reviewId}}&lt;/span&gt;&lt;a target="_blank" class="ring-link upsource-reviews__review-link"\n             ng-class="{\'upsource-reviews__review-link_closed\': rev.state === widgetCtrl.state.closed}"\n             ng-href="{{::widgetCtrl.serviceUrl + \'/\' + rev.reviewId.projectId + \'/review/\' + rev.reviewId.reviewId}}"&gt;{{::rev.title}}&lt;/a&gt;\n        &lt;/div&gt;\n        &lt;div ng-if="::widgetCtrl.getAuthors(rev).length &gt; 0" class="upsource-reviews__authors"&gt;\n          &lt;span&gt;{{::widgetCtrl.getAuthorFieldName(rev)}}&lt;/span&gt;: {{::widgetCtrl.getAuthorNames(rev)}}\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div class="issues__config" ng-if="widgetCtrl.isShowConfig()"&gt;\n    &lt;widget-general-editor widget="widgetCtrl"&gt;&lt;/widget-general-editor&gt;\n\n    &lt;select-hub-service model="widgetCtrl.config.service"\n                        application-name="Upsource"&gt;&lt;/select-hub-service&gt;\n\n    &lt;div ng-if="widgetCtrl.serviceUrl"&gt;\n      &lt;select-upsource-project\n        model="widgetCtrl.config.project"\n        url="{{widgetCtrl.serviceUrl}}"\n        clear="true"\n        label="{{\'Select project\' | translate:\'Dashboard\'}}"\n      &gt;&lt;/select-upsource-project&gt;\n    &lt;/div&gt;\n\n    &lt;div ng-if="widgetCtrl.serviceUrl"&gt;\n      &lt;label class="widget__config-label" translate translate-context="Dashboard"&gt;Search query:&lt;/label&gt;\n\n      &lt;rg-query-assist\n        query="widgetCtrl.config.query"\n        x-data-source="widgetCtrl.queryAssistSource"\n        on-apply="widgetCtrl.saveQuery"\n        placeholder="\'Search revisions\' | translate"\n        hint="\'Press â‡¥ to complete first item\' | translate"\n        hint-on-selection="\'Press âŽ to complete selected item\' | translate"\n      /&gt;\n    &lt;/div&gt;\n\n  &lt;/div&gt;\n&lt;/widget&gt;\n'},61948:e=&gt;{e.exports='&lt;widget class="youtrack-report__widget"&gt;\n  &lt;div widget__header&gt;\n    &lt;a target="_blank" class="ring-link widget__header-text widget__header-link" ng-show="!widgetCtrl.isShowConfig()" dsh-gridster-no-drag\n       ng-href="{{widgetCtrl.getReportUrl()}}"&gt;\n      &lt;span ng-show="!widgetCtrl.config.name"&gt;{{widgetCtrl.getHeaderText(report.name ? report : widgetCtrl.config.report)}}&lt;/span&gt;\n      &lt;span ng-show="widgetCtrl.config.name"&gt;{{widgetCtrl.config.name}}&lt;/span&gt;\n    &lt;/a&gt;\n  &lt;/div&gt;\n  &lt;div ng-show="!widgetCtrl.isShowConfig()" ng-if="widgetCtrl.getReportType(report)" class="report-widget__container"&gt;\n    &lt;div ng-if="widgetCtrl.viewModel.error" class="widget__error"&gt;\n      &lt;span translate translate-context="Dashboard"&gt;The report could not be displayed.&lt;/span&gt;\n      &lt;p&gt;Please &lt;a target="_blank" class="ring-link" ng-href="{{widgetCtrl.getReportUrl()}}"&gt;check the report&lt;/a&gt;\n        in your tracker and correct its settings, if necessary.\n        &lt;a class="ring-link" ng-click="showErrorDetails = true" ng-show="!showErrorDetails" translate translate-context="Dashboard"&gt;Details...&lt;/a&gt;\n      &lt;/p&gt;\n\n      &lt;p ng-show="showErrorDetails"&gt;{{widgetCtrl.viewModel.error}}&lt;/p&gt;\n    &lt;/div&gt;\n\n    &lt;div ng-include="widgetCtrl.getReportTemplateUrl()" ng-if="!widgetCtrl.viewModel.error" class="youtrack-report__container"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n  &lt;div ng-if="widgetCtrl.isShowConfig()"&gt;\n    &lt;widget-general-editor widget="widgetCtrl"&gt;&lt;/widget-general-editor&gt;\n\n    &lt;select-hub-service model="widgetCtrl.config.service" application-name="YouTrack"&gt;&lt;/select-hub-service&gt;\n\n    &lt;youtrack-report-select ng-if="widgetCtrl.serviceUrl" service-url="widgetCtrl.serviceUrl" selected-report="widgetCtrl.config.report"\n                            on-service-select="widgetCtrl.onServiceSelect(selectedReport)"&gt;&lt;/youtrack-report-select&gt;\n  &lt;/div&gt;\n&lt;/widget&gt;\n'},31254:e=&gt;{e.exports='&lt;div ng-if="report &amp;&amp; report.data" class="youtrack-report__container"\n     ng-include="\'youtrack-report__interval-widget/youtrack-report__interval-widget.html\'"&gt;&lt;/div&gt;\n'},39504:e=&gt;{e.exports='&lt;div ng-if="report &amp;&amp; report.data" class="youtrack-report__burndown-container"&gt;\n\n    &lt;div class="report-chart report-widget__chart"&gt;\n\n        &lt;div class="youtrack-report__burndown-title"&gt;\n          &lt;div class="youtrack-report__burndown-date"&gt;\n            &lt;span translate translate-context="Dashboard"&gt;Date:&lt;/span&gt; {{lastCalculated}}\n          &lt;/div&gt;\n          &lt;div class="youtrack-report__burndown-effort-presentation" ng-class="{\'youtrack-report__burndown-overdue\' : isOverdue}"&gt;\n            {{remainingEffortPresentation}}\n          &lt;/div&gt;\n        &lt;/div&gt;\n\n        &lt;svg class="youtrack-report__chart_full-height js-report-container"&gt;&lt;/svg&gt;\n\n        &lt;div rg-template="XAxisTpl"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},41099:e=&gt;{e.exports='&lt;div ng-include="\'youtrack-report__title.html\'"&gt;&lt;/div&gt;\n&lt;div ng-if="report &amp;&amp; report.data" class="report-chart report-widget__chart"&gt;\n    &lt;widget-legend chart="chart" serieses="data" threshold="3"&gt;&lt;/widget-legend&gt;\n    &lt;svg class="youtrack-report__chart_full-height js-report-container"&gt;&lt;/svg&gt;\n    &lt;div ng-include="\'youtrack-report__x-axis.html\'"&gt;&lt;/div&gt;\n&lt;/div&gt;\n'},4575:e=&gt;{e.exports='&lt;div ng-if="report &amp;&amp; report.data"&gt;\n    &lt;div ng-if="isReady" class="report-chart report-widget__chart widget-custom-distribution__chart"&gt;\n        &lt;div class="widget-custom-distribution__legend-y"\n             ng-style="{\'height\': chartHeight + \'px\'}"&gt;\n\n            &lt;div ng-repeat="group in report.data.groups"\n                 class="widget-custom-distribution__legend-y__i"\n                 ng-style="{height: lineHeight + \'px\'}"&gt;\n\n                &lt;div class="widget-custom-distribution__legend-y__name"&gt;\n                    {{group.presentation}}\n                &lt;/div&gt;\n            &lt;/div&gt;\n        &lt;/div&gt;\n        &lt;div ng-style="{\'height\': chartHeight + \'px\'}"&gt;\n            &lt;svg class="js-report-container"&gt;&lt;/svg&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},52634:e=&gt;{e.exports='&lt;table ng-if="report &amp;&amp; report.data" class="yt-table widget-table yt-table_underline-group yt-table_time-report"&gt;\n  &lt;thead class="yt-table__header"&gt;\n  &lt;tr class="yt-table__row"&gt;\n    &lt;th class="yt-table__cell_title"\n        colspan="2"&gt;\n      &lt;span translate&gt;Issues&lt;/span&gt;&lt;span ng-if="report.grouping"&gt;, &lt;span translate&gt;group by&lt;/span&gt;\n          {{report.grouping &amp;&amp; report.grouping.presentation}}\n        &lt;/span&gt;\n    &lt;/th&gt;\n    &lt;th class="yt-table__cell_title"&gt;\n      &lt;span translate&gt;Estimation&lt;/span&gt;\n    &lt;/th&gt;\n  &lt;/tr&gt;\n  &lt;/thead&gt;\n\n  &lt;tbody ng-repeat="group in report.data.groups"\n         class="yt-table__group"&gt;\n  &lt;tr class="yt-table__row"&gt;\n    &lt;td colspan="2" class="yt-table__cell yt-table__group__title"&gt;\n      {{report.grouping &amp;&amp; group.name}}\n    &lt;/td&gt;\n    &lt;td class="yt-table__cell time-report__value yt-bold"&gt;\n      {{report.grouping &amp;&amp; group.estimation.presentation}}\n    &lt;/td&gt;\n  &lt;/tr&gt;\n  &lt;tr ng-repeat="line in group.issueItems"\n      rg-tooltip="{{estimationReportCtrl.getTooltipText(line)}}"\n      class="yt-table__row"&gt;\n    &lt;td class="yt-table__cell yt-table_time__id"&gt;\n      &lt;a target="_blank" ng-if="line.issueId" class="ring-link" ng-href="{{getIssueUrl(line)}}"&gt;{{line.issueId}}&lt;/a&gt;\n      &lt;span ng-if="!line.issueId"&gt;&amp;mdash;&lt;/span&gt;\n      &lt;span ng-if="estimationReportCtrl.hasDuplicates(line)"&gt;*&lt;/span&gt;\n    &lt;/td&gt;\n    &lt;td class="yt-table__cell"&gt;\n      &lt;span ng-if="line.issue"&gt;{{line.issue.summary}}&lt;/span&gt;\n      &lt;span ng-if="!line.issue" translate&gt;&amp;lt;issue was removed&amp;gt;&lt;/span&gt;\n    &lt;/td&gt;\n    &lt;td class="yt-table__cell time-report__value"&gt;\n      {{line.estimation.presentation}}\n    &lt;/td&gt;\n  &lt;/tr&gt;\n  &lt;/tbody&gt;\n\n  &lt;tfoot&gt;\n  &lt;tr class="yt-table__row"&gt;\n    &lt;td colspan="5" class="yt-table__cell time-report__value"&gt;\n      &lt;span translate&gt;Total estimation:&lt;/span&gt;\n      &lt;span class="time-report__total"&gt;{{report.data.itemsEstimationSum.presentation}}&lt;/span&gt;\n    &lt;/td&gt;\n  &lt;/tr&gt;\n  &lt;/tfoot&gt;\n&lt;/table&gt;\n'},51496:e=&gt;{e.exports='&lt;div ng-if="report &amp;&amp; report.data" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget.html\'"&gt;&lt;/div&gt;\n'},9475:e=&gt;{e.exports='&lt;div ng-if="report &amp;&amp; report.data" class="youtrack-report__container" ng-include="\'youtrack-report__rate-widget/youtrack-report__rate-widget.html\'"&gt;&lt;/div&gt;\n'},52445:e=&gt;{e.exports='&lt;div ng-if="report &amp;&amp; report.data" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget.html\'"&gt;&lt;/div&gt;\n'},54921:e=&gt;{e.exports='&lt;div ng-include="\'youtrack-report__title.html\'"&gt;&lt;/div&gt;\n&lt;div ng-if="isReady" class="report-chart report-widget__chart"&gt;\n    &lt;svg class="youtrack-report__chart_full-height js-report-container"&gt;&lt;/svg&gt;\n    &lt;div ng-include="\'youtrack-report__x-axis.html\'"&gt;&lt;/div&gt;\n&lt;/div&gt;\n'},33920:e=&gt;{e.exports='&lt;div ng-if="report &amp;&amp; report.data &amp;&amp; report.presentation === \'DEFAULT\'"&gt;\n    \x3c!--Render as bars widget for every case other than \'All data\'--\x3e\n    &lt;div ng-if="dataIndex !== 0" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget.html\'"&gt;&lt;/div&gt;\n    \x3c!--Colored bars render in case of All data presentation--\x3e\n    &lt;div ng-if="dataIndex === 0"&gt;\n      &lt;div ng-if="dynamicChart" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget-dynamic-title.html\'"&gt;&lt;/div&gt;\n      &lt;div ng-if="!dynamicChart" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget-static-title.html\'"&gt;&lt;/div&gt;\n        &lt;div ng-if="isReady" class="report-chart report-widget__chart report-widget__chart_flex"&gt;\n            &lt;div class="widget-simple-bars__legend-y" ng-style="{\'height\': chartHeight + \'px\'}"&gt;\n                &lt;div ng-repeat="yCol in ycolumns"\n                     class="report-distribution__legend-y__i"\n                     ng-style="{\'height\': lineHeight + \'px\', \'line-height\': lineHeight + \'px\'}"&gt;\n\n                    &lt;img ng-if="hasAvatars &amp;&amp; yCol.avatarUrl"\n                         class="report-distribution__legend-avatar"\n                         ng-src="{{getAvatar(yCol.avatarUrl)}}"\n                         width="{{imageSize}}" height="{{imageSize}}"/&gt;\n\n                    &lt;div ng-if="hasAvatars &amp;&amp; !(yCol.avatarUrl)"\n                         class="report-distribution__legend-avatar"\n                         ng-style="{\'width\': imageSize + \'px\', \'height\': imageSize + \'px\'}"&gt;&lt;/div&gt;\n\n                    &lt;div class="widget-simple-bars__legend-y__percent"&gt;\n                        {{round(((yCol.size.value || yCol.size) * 100) / totalSize) + \'%\'}}\n                    &lt;/div&gt;\n                    &lt;div class="widget-simple-bars__legend-y__total"&gt;\n                      {{yCol.size.presentation || yCol.size.value || yCol.size}}\n                    &lt;/div&gt;\n                    &lt;div title="{{yCol.name}}" class="widget-simple-bars__legend-y__name widget-simple-bars__legend-y__short-name"&gt;\n                        {{yCol.name}}\n                    &lt;/div&gt;\n                &lt;/div&gt;\n            &lt;/div&gt;\n            &lt;div class="widget-simple-bars__chart" ng-style="{\'height\': chartHeight + \'px\'}"&gt;\n                &lt;svg class="report-widget__chart js-report-container"&gt;&lt;/svg&gt;\n            &lt;/div&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;table ng-if="report &amp;&amp; report.data &amp;&amp; report.presentation === \'MATRIX\'" class="youtrack-report__issue-distribution-table yt-table"&gt;\n  &lt;thead&gt;\n    &lt;tr class="" ng-if="!tooBig()"&gt;\n      &lt;th class="yt-table__cell yt-table__cell_title"&gt;&lt;/th&gt;\n      &lt;th ng-repeat="xCol in report.data.xcolumns" class="yt-table__cell yt-table__cell_title"&gt;{{xCol.name}}\n      &lt;/th&gt;\n      &lt;th ng-if="report.data.xcolumns.length &lt; 1" colspan="2" class="yt-table__cell yt-table__cell_title"&gt;&lt;span\n        translate translate-context="Dashboard"&gt;Nothing found&lt;/span&gt;&lt;/th&gt;\n      &lt;th class="yt-table__cell yt-table__cell_title"&gt;&lt;span class="report-value_total" translate translate-context="Dashboard"&gt;Total&lt;/span&gt;&lt;/th&gt;\n    &lt;/tr&gt;\n    &lt;tr ng-if="report.data.ycolumns.length &lt; 1"&gt;\n      &lt;td colspan="4" translate translate-context="Dashboard"&gt;Nothing found&lt;/td&gt;\n    &lt;/tr&gt;\n    &lt;tr ng-if="tooBig()"&gt;\n      &lt;td colspan="4" translate translate-context="Dashboard"&gt;Too many cells&lt;/td&gt;\n    &lt;/tr&gt;\n  &lt;/thead&gt;\n  &lt;tbody class="yt-table__group" ng-if="!tooBig()"&gt;\n    &lt;tr ng-repeat="yCol in report.data.ycolumns" class="yt-table__row"&gt;\n      &lt;td class="yt-table__cell"&gt;{{yCol.name}}&lt;/td&gt;\n      &lt;td ng-repeat="xCol in report.data.xcolumns"\n          class="yt-table__cell report-value"&gt;\n        &lt;a ng-if="report.data.counts[xCol.index][yCol.index] &gt; 0 || report.data.counts[xCol.index][yCol.index].value &gt; 0"\n           class="ring-link report-value__i"\n           title="{{getFilterPresentation(report.data.xfilter) + \': \' + xCol.name + \' | \' + getFilterPresentation(report.data.yfilter) + \': \' + yCol.name}}"\n           target="_blank"\n           ng-href="{{getMatrixReportQueryUrl(report.data, xCol.index, yCol.index)}}"&gt;\n          {{report.data.counts[xCol.index][yCol.index].presentation || report.data.counts[xCol.index][yCol.index]}}\n        &lt;/a&gt;\n      &lt;/td&gt;\n      &lt;td class="yt-table__cell report-value report-value_total"&gt;\n        &lt;a class="ring-link report-value__i"\n           title="{{getFilterPresentation(report.data.yfilter) + \': \' + yCol.name}}"\n           target="_blank"\n           href="{{getColumnQueryUrl(yCol)}}"&gt;{{yCol.size.presentation || yCol.size.value || yCol.size}}&lt;/a&gt;\n      &lt;/td&gt;\n    &lt;/tr&gt;\n\n    &lt;tr class="yt-table__row"&gt;\n      &lt;td ng-if="report.data.xcolumns.length &gt; 0" class="yt-table__cell"&gt;&lt;span translate translate-context="Dashboard"&gt;Total&lt;/span&gt;&lt;/td&gt;\n      &lt;td ng-if="report.data.xcolumns.length &lt; 1" class="yt-table__cell"&gt;&lt;/td&gt;\n\n      &lt;td ng-repeat="xCol in report.data.xcolumns"\n          class="yt-table__cell report-value report-value_total"&gt;\n        &lt;a class="ring-link  report-value__i"\n           title="{{getFilterPresentation(report.data.xfilter) + \': \' + xCol.name}}"\n           target="_blank"\n           href="{{getColumnQueryUrl(xCol)}}"&gt;\n          {{xCol.size.presentation || xCol.size.value || xCol.size}}\n        &lt;/a&gt;\n      &lt;/td&gt;\n      &lt;td class="yt-table__cell report-value report-value_total"&gt;\n        &lt;a class="ring-link report-value__i"\n           target="_blank"\n           href="{{getColumnQueryUrl(report)}}"&gt;{{report.data.total.presentation || report.data.total}}&lt;/a&gt;\n      &lt;/td&gt;\n    &lt;/tr&gt;\n  &lt;/tbody&gt;\n&lt;/table&gt;\n'},62911:e=&gt;{e.exports='&lt;div ng-if="report &amp;&amp; report.data" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget.html\'"&gt;&lt;/div&gt;\n'},85854:e=&gt;{e.exports='&lt;div ng-if="report &amp;&amp; report.data" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget.html\'"&gt;&lt;/div&gt;\n'},72289:e=&gt;{e.exports='&lt;div&gt;\n  &lt;div ng-if="serieses.length &gt; 1 &amp;&amp; serieses.length &lt;= threshold"&gt;\n    &lt;div class="report-btn-group"&gt;\n      &lt;div class="report-widget-legend-btn"\n           ng-repeat="series in legendItems"\n           ng-click="onSelectSeries(series)"&gt;\n          &lt;span class="color-coding__round-sample report-widget-legend-btn__sample"\n                ng-style="{\n                \'background-color\': getColor(series, series.index, !series.selected),\n                \'border-color\': getColor(series, series.index)\n                }"&gt;&lt;/span&gt;\n        &lt;span class="report-widget-legend-btn__name"&gt;{{series.name}}&lt;/span&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n\n    \x3c!--TODO(maksimrv): This add bottom margin. Change on special style for this section--\x3e\n    &lt;div class="report-dropdown-select"&gt;&lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;div yt-legend-color-select=""\n       ng-if="serieses.length &gt; threshold"\n       serieses="legendItems"\n       on-select-series="onSelectSeries"&gt;\n  &lt;/div&gt;\n&lt;/div&gt;\n'},20920:e=&gt;{e.exports='&lt;div ng-include="\'youtrack-report__title.html\'"&gt;&lt;/div&gt;\n&lt;div ng-if="isReady" class="report-chart report-widget__chart"&gt;\n  &lt;rg-group class="report-widget__chart-right-toolbar"&gt;\n    &lt;div rg-button-group&gt;\n      &lt;rg-button ng-repeat="view in views"\n                 active="view === currentState.view"\n                 ng-click="regroup(view)"&gt;\n        {{view.title}}\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n    &lt;div rg-button-group&gt;\n      &lt;rg-button ng-repeat="scale in scales"\n                 active="scale === currentState.scale"\n                 ng-click="rescale(scale)"&gt;\n        {{scale.unit}}\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n  &lt;/rg-group&gt;\n  &lt;div class="widget-rate__chart-title"&gt;\n    {{chartNames[0]}}\n  &lt;/div&gt;\n  &lt;svg class="youtrack-report__chart_full-height js-report-container"&gt;&lt;/svg&gt;\n  &lt;div class="widget-rate__chart-title"&gt;\n    {{chartNames[1]}}\n  &lt;/div&gt;\n  &lt;div class="report-widget__xAxis"&gt;\n    {{rangeStart}} &amp;ndash; {{rangeEnd}}\n  &lt;/div&gt;\n&lt;/div&gt;\n'},73401:e=&gt;{e.exports='&lt;div ng-if="report &amp;&amp; report.data" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget.html\'"&gt;&lt;/div&gt;\n'},33899:e=&gt;{e.exports='&lt;div ng-if="report &amp;&amp; report.data"\n     class="youtrack-report__subcontainer"\n     ng-include="\'youtrack-report__interval-widget/youtrack-report__interval-widget.html\'"&gt;&lt;/div&gt;\n'},46754:e=&gt;{e.exports='&lt;div ng-if="report &amp;&amp; report.data"\n     class="youtrack-report__subcontainer"\n     ng-include="\'youtrack-report__rate-widget/youtrack-report__rate-widget.html\'"&gt;&lt;/div&gt;\n'},96785:e=&gt;{e.exports='&lt;div class="youtrack-report__select"&gt;\n\n  &lt;input class="youtrack-report__select-input" ng-model="vm.searchReport" ng-keydown="handleKeys($event)" placeholder="{{\'Search reports\' | translate:\'Dashboard\'}}" autofocus&gt;\n\n  &lt;div class="youtrack-report__select-item"\n      ng-repeat="report in filterReports(vm.searchReport) track by report.id"\n      ng-class="{\'youtrack-report__select-item_selected\': report.id === selectedReport.id}"\n      ng-click="selectReport(report)"&gt;\n    &lt;span class="youtrack-report__select-report"&gt;{{report.name}}&lt;/span&gt;\n  &lt;/div&gt;\n\n  &lt;div ng-show="!vm.reportsResource.$resolved" class="youtrack-report__select-loading" translate translate-context="Dashboard"&gt;Loading...&lt;/div&gt;\n\n  &lt;div ng-if="vm.error" class="youtrack-report__select-error" &gt;\n    {{vm.error}}\n  &lt;/div&gt;\n\n  &lt;div ng-if="!vm.availableReports.length &amp;&amp; !vm.error &amp;&amp; vm.reportsResource.$resolved" class="youtrack-report__select-empty"&gt;\n    &lt;span translate translate-context="Dashboard"&gt;No reports available.&lt;/span&gt;\n    &lt;a ng-href="{{serviceUrl}}/reports" class="ring-link youtrack-report__select-create" target="_blank" translate translate-context="Dashboard"&gt;Create new report&lt;/a&gt;\n  &lt;/div&gt;\n\n&lt;/div&gt;\n'},4586:(e,t,n)=&gt;{e.exports='&lt;div ng-if="isReady" class="widget-simple-bars__header"&gt;\n  &lt;div class="widget-controls__group-by"\n       rg-select type="dropdown" options="item.label for item in groupByValues track by item.key" on-select="changeGroupBy(selected.originalModel)" label-field="label"&gt;\n    &lt;span title="{{groupByValues[dataIndex].label}}"\n          class="widget-simple-bars__header__group-by"&gt;\n        {{groupByValues[dataIndex].label}}\n    &lt;/span&gt;\n\n    &lt;rg-icon class="youtrack-report__caret" glyph="'+n(96971)+'" size="14" color="BLACK"&gt;&lt;/rg-icon&gt;\n  &lt;/div&gt;\n  &lt;div class="widget-simple-bars__header__right"&gt;\n    {{groupByValues[dataIndex].size.value || groupByValues[dataIndex].size}}\n  &lt;/div&gt;\n&lt;/div&gt;\n\n'},82925:e=&gt;{e.exports='&lt;div ng-if="isReady" class="widget-simple-bars__header"&gt;\n  &lt;div translate translate-context="Dashboard"&gt;Total&lt;/div&gt;\n  &lt;div class="widget-simple-bars__header__right"&gt;{{totalSize}}&lt;/div&gt;\n&lt;/div&gt;\n'},585:e=&gt;{e.exports='&lt;div ng-if="report.presentation !== \'PIE\'"&gt;\n\n    &lt;div ng-if="dynamicChart" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget-dynamic-title.html\'"&gt;&lt;/div&gt;\n    &lt;div ng-if="!dynamicChart" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget-static-title.html\'"&gt;&lt;/div&gt;\n\n  &lt;div ng-if="isReady" class="report-chart report-widget__chart report-widget__chart_flex"&gt;\n        &lt;div class="widget-simple-bars__legend-y"  ng-style="{\'height\': chartHeight + \'px\'}"&gt;\n            &lt;div ng-repeat="xCol in data"\n                 class="report-distribution__legend-y__i"\n                 ng-style="{\'height\': lineHeight + \'px\', \'line-height\': lineHeight + \'px\'}"&gt;\n\n                &lt;img ng-if="hasAvatars &amp;&amp; xCol.avatarUrl"\n                     class="report-distribution__legend-avatar"\n                     ng-src="{{getAvatar(xCol.avatarUrl)}}"\n                     width="{{imageSize}}" height="{{imageSize}}"/&gt;\n\n                &lt;div ng-if="hasAvatars &amp;&amp; !(xCol.avatarUrl)"\n                     class="report-distribution__legend-avatar"\n                     ng-style="{\'width\': imageSize + \'px\', \'height\': imageSize + \'px\'}"&gt;&lt;/div&gt;\n\n                &lt;div class="widget-simple-bars__legend-y__percent"&gt;\n                  {{getSimpleBarsPercentText(xCol.size, totalSize)}}\n                &lt;/div&gt;\n                &lt;div class="widget-simple-bars__legend-y__total"&gt;\n                    {{xCol.size.presentation || xCol.size}}\n                &lt;/div&gt;\n                &lt;div title="{{xCol.name}}" class="widget-simple-bars__legend-y__name widget-simple-bars__legend-y__short-name"&gt;\n                    {{xCol.name}}\n                &lt;/div&gt;\n            &lt;/div&gt;\n        &lt;/div&gt;\n        &lt;div class="widget-simple-bars__chart" ng-style="{\'height\': chartHeight + \'px\'};"&gt;\n            &lt;svg class="report-widget__chart js-report-container"&gt;&lt;/svg&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n&lt;div ng-if="report.presentation === \'PIE\'"&gt;\n    &lt;div ng-if="isReady" class="report-chart report-widget__chart"&gt;\n        &lt;div ng-style="{\'height\': chartHeight + \'px\'};"&gt;\n            &lt;svg class="report-widget__chart js-report-container"&gt;&lt;/svg&gt;\n        &lt;/div&gt;\n        &lt;div ng-repeat="xCol in data"\n             class="report-distribution__legend-y__i"\n             ng-style="{\'height\': lineHeight + \'px\', \'line-height\': lineHeight + \'px\'}"&gt;\n\n            &lt;div class="widget-simple-bars__legend-y__color-label"\n                 ng-style="{\'width\': labelSize + \'px\', \'height\': labelSize + \'px\', \'background\': getColor(xCol, $index)}"&gt;&lt;/div&gt;\n\n            &lt;img ng-if="hasAvatars &amp;&amp; xCol.avatarUrl"\n                 class="report-distribution__legend-avatar"\n                 ng-src="{{getAvatar(xCol.avatarUrl)}}"\n                 width="{{imageSize}}" height="{{imageSize}}"/&gt;\n\n            &lt;div ng-if="hasAvatars &amp;&amp; !(xCol.avatarUrl)"\n                 class="report-distribution__legend-avatar"\n                 ng-style="{\'width\': imageSize + \'px\', \'height\': imageSize + \'px\'}"&gt;&lt;/div&gt;\n\n            &lt;div class="widget-simple-bars__legend-y__percent"&gt;\n              {{getSimpleBarsPercentText(xCol.size, totalSize)}}\n            &lt;/div&gt;\n            &lt;div class="widget-simple-bars__legend-y__total"&gt;\n                {{xCol.size.presentation || xCol.size}}\n            &lt;/div&gt;\n            &lt;div class="widget-simple-bars__legend-y__name"&gt;\n                &lt;a class="ring-link" target="_blank" ng-href="{{getYouTrackSearchUrl(xCol)}}"&gt;{{xCol.name}}&lt;/a&gt;\n            &lt;/div&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n'},58285:e=&gt;{e.exports='&lt;div ng-if="report &amp;&amp; report.data"&gt;\n  &lt;div class="widget__title"&gt;\n\n    \x3c!--Time report actions--\x3e\n    &lt;div rg-button-group class="widget-time__header__per-user-toggler"\n         ng-if="(!timeReportCtrl.hasGroups() || timeReportCtrl.isDetailedView)"&gt;\n      &lt;rg-button ng-disabled="!isReady" active="id.perUser"\n              ng-click="timeReportCtrl.setPerUser(true)"&gt;&lt;span translate translate-context="Dashboard"&gt;Per User&lt;/span&gt;\n      &lt;/rg-button&gt;\n      &lt;rg-button ng-disabled="!isReady" active="!id.perUser"\n              ng-click="timeReportCtrl.setPerUser(false)"&gt;&lt;span translate translate-context="Dashboard"&gt;Per Issue&lt;/span&gt;\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n\n    \x3c!--Widget title information--\x3e\n    &lt;div&gt;\n      &lt;strong translate translate-context="Dashboard"&gt;Time spent&lt;/strong&gt; &amp;mdash; &lt;yt-period-value value-presentation="report.data.duration"&gt;&lt;/yt-period-value&gt;\n      &lt;div ng-if="timeReportCtrl.hasGroups()" class="youtrack-report__details-toggle"&gt;\n        &lt;a\n          class="ring-link"\n          ng-if="!timeReportCtrl.isDetailedView"\n          ng-click="timeReportCtrl.isDetailedView = true"\n          translate&gt;Show details&lt;/a&gt;\n        &lt;a\n          class="ring-link"\n          ng-if="timeReportCtrl.isDetailedView"\n          ng-click="timeReportCtrl.isDetailedView = false"\n          translate&gt;Hide details&lt;/a&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;table class="widget-table yt-table"&gt;\n    &lt;thead&gt;&lt;/thead&gt;\n    &lt;tbody class="yt-table__group" ng-repeat="group in report.data.groups"&gt;\n      &lt;tr ng-if="timeReportCtrl.hasGroups()" class="yt-table__row"&gt;\n        &lt;td colspan="{{timeReportCtrl.getGroupColSpan()}}" class="yt-table__cell yt-table__group__title"&gt;\n          &lt;yt-report-group group="group"&gt;&lt;/yt-report-group&gt;\n        &lt;/td&gt;\n        &lt;td class="yt-table__cell yt-table__cell_progress-bar" ng-if="timeReportCtrl.isShowGroupEstimation()"&gt;\n          &amp;nbsp;\n        &lt;/td&gt;\n        &lt;td class="yt-table__cell time-report__value yt-bold"&gt;\n          &lt;yt-period-value value-presentation="group.estimation" show-zero="false"&gt;&lt;/yt-period-value&gt;\n        &lt;/td&gt;\n        &lt;td class="yt-table__cell time-report__value yt-bold"&gt;\n          &lt;yt-period-value value-presentation="group.duration" show-zero="false"&gt;&lt;/yt-period-value&gt;\n        &lt;/td&gt;\n      &lt;/tr&gt;\n\n      &lt;tr\n        ng-if="!timeReportCtrl.hasGroups() || timeReportCtrl.isDetailedView"\n        ng-repeat="line in timeReportCtrl.lines[group.name]"\n        class="yt-table__row"\n      &gt;\n        &lt;td class="yt-table__cell yt-table_time__id" ng-if="!id.perUser"&gt;\n          &lt;a class="ring-link" ng-if="line.firstInSubGroup" target="_blank"\n             ng-href="{{timeReportCtrl.getIssueUrl(line)}}"&gt;{{line.issueId}}&lt;/a&gt;\n        &lt;/td&gt;\n\n        &lt;td class="yt-table__cell yt-table_time__id" ng-if="id.perUser"&gt;\n          &lt;a class="ring-link" ng-if="line.firstInSubGroup" target="_blank"\n             ng-href="{{timeReportCtrl.getUserUrl(line)}}"&gt;\n            &lt;rg-avatar\n              size="16"\n              url="line.userAvatarUrl"\n            &gt;&lt;/rg-avatar&gt;\n          &lt;/a&gt;\n        &lt;/td&gt;\n\n        &lt;td class="yt-table__cell"&gt;\n          &lt;span ng-if="line.firstInSubGroup"&gt;{{line.description}}&lt;/span&gt;\n        &lt;/td&gt;\n\n        &lt;td class="yt-table__cell yt-table__cell_progress-bar" ng-if="timeReportCtrl.isShowGroupEstimation()"&gt;\n          &lt;yt-report-time-progress progress="line.periods.totalSpentTime"\n                                   estimation="line.periods.estimation"\n                                   ng-if="timeReportCtrl.isShowLinesEstimation() &amp;&amp; line.periods.estimation &amp;&amp; line.periods.estimation.value"&gt;\n          &lt;/yt-report-time-progress&gt;\n        &lt;/td&gt;\n\n        &lt;td class="yt-table__cell time-report__value"&gt;\n          &lt;span ng-if="line.firstInSubGroup"&gt;\n            &lt;yt-period-value value-presentation="line.periods.estimation" show-zero="false"&gt;&lt;/yt-period-value&gt;\n          &lt;/span&gt;\n        &lt;/td&gt;\n        &lt;td class="yt-table__cell time-report__value"&gt;\n          &lt;yt-period-value value-presentation="line.periods.timeSpent"&gt;&lt;/yt-period-value&gt;\n        &lt;/td&gt;\n      &lt;/tr&gt;\n    &lt;/tbody&gt;\n  &lt;/table&gt;\n\n&lt;/div&gt;\n'},75632:e=&gt;{e.exports='\x3c!--\n&lt;div ng-if="report.parameters"&gt;\n    &lt;div class="report__query"&gt;\n        &lt;span ng-repeat="project in report.parameters.projects"\n              class="report__query__i"&gt;{{project.name}}&lt;/span&gt;&lt;span class="report__query__i"&gt;{{report.parameters.query | mayBeEmpty}}&lt;/span&gt;\n    &lt;/div&gt;\n&lt;/div&gt;--\x3e\n'},68921:e=&gt;{e.exports='&lt;div ng-if="report &amp;&amp; report.data" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget.html\'"&gt;&lt;/div&gt;\n'},8458:e=&gt;{e.exports='&lt;div ng-if="report &amp;&amp; report.data"\n     class="youtrack-report__subcontainer"\n     ng-include="\'youtrack-report__rate-widget/youtrack-report__rate-widget.html\'"&gt;&lt;/div&gt;\n'},24777:e=&gt;{e.exports='&lt;div class="report-widget__xAxis"&gt;\n    &lt;span class="report-widget__xAxis__i report-widget__xAxis__i_left"&gt;{{rangeStart}}&lt;/span&gt;\n    &lt;span class="report-widget__xAxis__i report-widget__xAxis__i_right"&gt;{{rangeEnd}}&lt;/span&gt;\n&lt;/div&gt;\n'},52163:()=&gt;{angular.module("youtrack.components.resources").factory("abstractResourceFactory",["$resource","$window",function(e,t){const n={id:"@id",listController:"@listController",docController:"@docController"};return r=&gt;o=&gt;{const i=o(((o,i,a,s)=&gt;{let c=r,l=a;return t.isTest||(l=angular.extend({$top:-1},a)),c.length&gt;0&amp;&amp;c.lastIndexOf("/")===c.length-1||(c+="/"),e(`${c}${o}/:listController/:id/:docController`,angular.extend({},n,l),i,s)}));return i.baseUrl=r,i}}])},39865:()=&gt;{angular.module("youtrack.components.reportTypes").constant("colorPalette",[16777215,9261312,13526784,4232704,28900,9437266,20641,3119248,9311744,14418051,8240438,16740643,16743363,16701258,12051073,14219251,15132390,15136463,16772764,16763114,14876672,14742011,16573937,16247233,9626069,10936572,14730104,12237498,2473650,4367327,8882055,5066061,2385170,26206,5582848,1710618]).constant("d3Palette",[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725,3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654,3244733,7057110,10406625,13032431,15095053,16616764,16625259,16634018,3253076,7652470,10607003,13101504,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081]).constant("distinctPalette",[7057110,10406625,13032431,16616764,16625259,16634018,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081]).filter("asColor",(function(){return e=&gt;`rgb(${[(16711680&amp;(e&gt;&gt;&gt;=0))&gt;&gt;&gt;16,(65280&amp;e)&gt;&gt;&gt;8,255&amp;e].join(",")})`})).factory("colorUtils",["colorPalette","asColorFilter","distinctPalette","d3Palette",function(e,t,n,r){const o=n=&gt;(r,o)=&gt;{const i=(r.data?r.data:r).colorIndex;let a;return a=i&gt;0?e[i]:((e,t)=&gt;e[t%e.length])(n,o),t(a)},i=(e,t,i)=&gt;o(i?n:r)(e,t);return{palette:e,asColor:t,getColor:i,getDistinctColor:(e,t)=&gt;i(e,t,!0),getColourer:e=&gt;o(e?n:r)}}])},503:()=&gt;{angular.module("youtrack.components.reportTypes").factory("gapBurndownChartConfig",["timeTrackingPeriods","reportsWidgetDateFilter",function(e,t){return(n,r)=&gt;{let o,i;const a=r.data.yaxisType;if(a&amp;&amp;"integer"!==a.name)if("period"===a.name){const t=e(a);i=e=&gt;0===e?"0":t.toString(e),o=()=&gt;t.linearScale([0,1],[0,1])}else i=d3.format(",.2f");else i=d3.format(",.1f");return{xAxisTickFormat:e=&gt;0===e.getHours()&amp;&amp;0===e.getMinutes()&amp;&amp;0===e.getSeconds()?t(e):"",yAxisTickFormat:i,xAxisLabel:r.data.xlabel,yAxisLabel:r.data.ylabel,xScale:d3.time.scale(),yScale:o?o():d3.scale.linear(),xGetter:e=&gt;e.date,yGetter:e=&gt;e.value}}}])},87175:()=&gt;{angular.module("youtrack.components.reportTypes").factory("gapBurndownChartData",["i18n",function(e){return(t,n)=&gt;{const r=n.data,o=d3.time.format("%Y-%m-%d"),i=e=&gt;({date:o.parse(e.time),value:e.value}),a=o.parse(r.sprintFinish),s=r.ideal.map(i),c=r.remainingEstimation.map(i),l=c.filter((e=&gt;e.date&lt;=a)),g=c.filter((e=&gt;e.date&gt;=a)),u=[{key:e("Ideal Burndown"),values:s,color:"#76a800"},{key:e("Remaining Effort"),values:l,color:"#25b7ff"}];r.cumulativeSpentTime&amp;&amp;r.cumulativeSpentTime.length&gt;0&amp;&amp;u.push({key:e("Spent time"),values:r.cumulativeSpentTime.map(i),color:"#c6dbef"}),g.length&gt;0&amp;&amp;u.push({key:e("Overdue effort"),values:g,color:"#fd8d3c"});let d=null;if(s.length&gt;0){const e=s[s.length-1].date,t=c[c.length-1].date;d=[s[0].date,t&gt;e?t:e]}let p=0===u.length?null:d3.extent(d3.merge(u.map((e=&gt;e.values.map((e=&gt;e.value))))));return p&amp;&amp;(p[0]||0===p[0])&amp;&amp;p[0]===p[1]&amp;&amp;(p=[p[0],p[0]+15]),{chartData:u,range:d,domain:p,isOverdue:g.length&gt;0}}}])},51917:()=&gt;{angular.module("youtrack.components.reportTypes").factory("gapCumulativeFlowChartConfig",["reportsWidgetDateFilter",function(e){return t=&gt;({xScale:d3.scale.linear(),xGetter:e=&gt;e.index,xAxisTickFormat:n=&gt;{const r=t.chartData[0].values[n];if(!r)return"";const o=r.date;return 0===o.getHours()&amp;&amp;0===o.getMinutes()&amp;&amp;0===o.getSeconds()?e(o):""},yGetter:e=&gt;e.value})}])},7441:()=&gt;{angular.module("youtrack.components.reportTypes").factory("gapCumulativeFlowChartData",(function(){return(e,t)=&gt;{const n=t.data;let r=!1;const o=d3.time.format("%Y-%m-%d"),i=n.names.map(((e,t)=&gt;{const i=n.colors[t];return r=r||i&gt;0,{key:e,values:n.sample.map((e=&gt;({date:o.parse(e.date),value:e.values[t].value,presentation:e.values[t].presentation}))),colorIndex:i}})).reverse();let a=0===i.length?null:d3.extent(d3.merge(i.map((e=&gt;e.values.map((e=&gt;e.value))))));return a=a&amp;&amp;(a[0]||0===a[0])&amp;&amp;a[0]===a[1]?[a[0],a[0]+15]:null,{chartData:i,valueType:n.valueType,domain:a,range:i.length&gt;0?[i[0],i[i.length-1]]:null,hasPredefinedColor:r}}}))},79233:()=&gt;{angular.module("youtrack.components.report").service("gapIssueDistributionDataLoader",(function(){return e=&gt;{const t=e.report.data;return e.xcolumns.map((n=&gt;{const r=e.ycolumns.map((e=&gt;{const r=t.counts[n.index][e.index];return{name:e.name,user:e.user,avatarUrl:e.avatarUrl,queryUrl:t.queryUrls[n.index][e.index],issuesQuery:t.issuesQueries[n.index][e.index],size:r}}));return e.dataIndex?r:{key:n.name,values:r,colorIndex:n.colorIndex}}))}}))},45352:()=&gt;{angular.module("youtrack.components.reportTypes").factory("gapSimpleBars",["colorUtils","loadAxisConfig","nv",function(e,t,n){const r=(r,o,i)=&gt;{const a=o.data&amp;&amp;o.data.columns||[];if("DEFAULT"===o.presentation){r.xcolumns=a;const e=25;r.lineHeight=22,r.chartHeight=r.lineHeight*a.length+e,r.hasAvatars=!1,a.forEach((e=&gt;{r.hasAvatars=r.hasAvatars||e.user&amp;&amp;e.avatarUrl&amp;&amp;e.avatarUrl.length&gt;0})),r.imageSize=r.hasAvatars?r.lineHeight-2:0,t(o.data.valueType).then((t=&gt;{n.addGraph((()=&gt;{const o=n.models.multiBarHorizontalChart().margin({left:5,right:20,top:0,bottom:e}).x((e=&gt;e.name)).y((e=&gt;e.size.value)).tooltips(!1).showControls(!1).showLegend(!1).transitionDuration(350).showXAxis(!1);return i.disableLinks||o.multibar.getUrl((e=&gt;e.queryUrl)),o.xAxis.tickFormat((e=&gt;e)),o.yAxis.tickFormat(t.tickFormat),o.multibar.yScale(t.scale),d3.select(i.element.querySelector(".chart-Node")).datum([{values:a}]).call(o),r.onWindowResize(o.update),o}))}))}else{const t=a.slice().sort(((e,t)=&gt;t.size.value-e.size.value));r.xcolumns=t,r.chartHeight=600;let o=!1,s=0;a.forEach((e=&gt;{const t=e.colorIndex;s+=e.size.value,o=o||t&amp;&amp;t&gt;0})),n.addGraph((()=&gt;{const a=n.models.flexPieChart().x((e=&gt;e.name)).y((e=&gt;e.size.value)).valueFormat((e=&gt;`${e} (${Math.round(100*e/s)}%)`)).showLegend(!1).showLabels(!0).color(e.getColourer(o));return i.disableLinks||a.getUrl((e=&gt;e.data.queryUrl)),d3.select(i.element.querySelector(".chart-Node")).datum(t).transition().duration(350).call(a),r.chart=a,r.$apply(),r.onWindowResize(a.update),a}))}};return r.watch=e=&gt;{e.$watch("report.presentation",((t,n)=&gt;{("DEFAULT"===t&amp;&amp;"PIE"===n||"PIE"===t&amp;&amp;"DEFAULT"===n)&amp;&amp;e.prepareReportRender(e.report)}))},r}])},65677:()=&gt;{nv.models.multiBobber=function(){"use strict";var e,t,n,r,o,i,a,s={top:0,right:0,bottom:0,left:0},c=960,l=500,g=d3.scale.ordinal(),u=d3.scale.linear(),d=Math.floor(1e4*Math.random()),p=function(e){return e.x},A=function(e){return e.y},C=[0],I=!0,f=!1,m=0,h=null,v=nv.utils.defaultColor(),b=!1,y=null,w=1200,_=.1,j=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout");function x(E){return E.each((function(x){var E=c-s.left-s.right,S=l-s.top-s.bottom,T=d3.select(this);b&amp;&amp;x.length&amp;&amp;(b=[{values:x[0].values.map((function(e){return{x:e.x,y:0,series:e.series,size:.01}}))}]),f&amp;&amp;(h||(h=0===m?"zero":function(e){for(var t=-1,n=e[0].length,r=[];++t&lt;n;){for(var o=0,i=0;i&lt;m;i++)o-=e[i][t][1];r[t]=o}return r})),(x=d3.layout.stack().offset(h).order("reverse").values((function(e){return e.values})).y(A)(!x.length&amp;&amp;b?b:x)).forEach((function(e,t){e.values.forEach((function(e){e.series=t}))}));var M=t&amp;&amp;n?[]:x.map((function(e){return e.values.map((function(e,t){return{x:p(e,t),y:A(e,t),y0:e.y0}}))}));g.domain(t||d3.merge(M).map((function(e){return e.x}))).rangeBands(r||[0,E],_);var L=f?d3.merge([M[0].map((function(e){return e.y0+e.y})),M[M.length-1].map((function(e){return e.y0}))]):d3.merge(M).map((function(e){return e.y}));u.domain(n||d3.extent(L.concat(C))).range(o||[S,0]),g.domain()[0]===g.domain()[1]&amp;&amp;(g.domain()[0]?g.domain([g.domain()[0]-.01*g.domain()[0],g.domain()[1]+.01*g.domain()[1]]):g.domain([-1,1])),u.domain()[0]===u.domain()[1]&amp;&amp;(u.domain()[0]?u.domain([u.domain()[0]+.01*u.domain()[0],u.domain()[1]-.01*u.domain()[1]]):u.domain([-1,1])),i=i||g,a=a||u;var k=T.selectAll("g.nv-wrap.nv-multibar").data([x]),O=k.enter().append("g").attr("class","nvd3 nv-wrap nv-multibar"),P=O.append("defs"),N=O.append("g"),D=k.select("g");N.append("g").attr("class","nv-groups"),k.attr("transform","translate("+s.left+","+s.top+")"),P.append("clipPath").attr("id","nv-edge-clip-"+d).append("rect"),k.select("#nv-edge-clip-"+d+" rect").attr("width",E).attr("height",S),D.attr("clip-path",I?"url(#nv-edge-clip-"+d+")":"");var R=k.select(".nv-groups").selectAll(".nv-group").data((function(e){return e}),(function(e,t){return t}));R.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),R.exit().transition().selectAll("rect.nv-bar").delay((function(e,t){return t*w/x[0].values.length})).attr("y",(function(e){return a(f?e.y0:0)})).attr("height",0).remove(),R.attr("class",(function(e,t){return"nv-group nv-series-"+t})).classed("hover",(function(e){return e.hover})).style("fill",(function(e,t){return v(e,t)})).style("stroke",(function(e,t){return v(e,t)})),R.transition().style("stroke-opacity",1).style("fill-opacity",.75);var U=R.selectAll("rect.nv-bar").data((function(e){return b&amp;&amp;!x.length?b.values:e.values}));U.exit().remove(),U.enter().append("rect").attr("class",(function(e,t){return"nv-bar "+(A(e,t)&lt;0?"negative":"positive")+" nv-bobber-"+t})).attr("x",(function(e,t,n){return f?0:n*g.rangeBand()/x.length})).attr("y",(function(e){return a(f?e.y0:0)})).attr("height",0).attr("width",g.rangeBand()/(f?1:x.length)).attr("transform",(function(e,t){return"translate("+g(p(e,t))+",0)"})),U.style("fill",(function(e,t,n){return v(e,n,t)})).style("stroke",(function(e,t,n){return v(e,n,t)})).on("mouseover",(function(e,t){d3.selectAll(".nv-bobber-"+t).classed("hover",!0),j.elementMouseover({value:A(e,t),point:e,data:x,mouse:d3.mouse(this.ownerSVGElement),pos:[g(p(e,t)),u((f?e.y0:0)+A(e,t)/2)],pointIndex:t,e:d3.event})})).on("mouseout",(function(e,t){d3.selectAll(".nv-bobber-"+t).classed("hover",!1),j.elementMouseout({value:A(e,t),point:e,data:x,pointIndex:t,e:d3.event})})).on("click",(function(e,t){j.elementClick({value:A(e,t),point:e,data:x,pos:[g(p(e,t)),u((f?e.y0:0)+A(e,t)/2)],pointIndex:t,e:d3.event}),d3.event.stopPropagation()})).on("dblclick",(function(e,t){j.elementDblClick({value:A(e,t),point:e,data:x,pos:[g(p(e,t)),u((f?e.y0:0)+A(e,t)/2)],pointIndex:t,e:d3.event}),d3.event.stopPropagation()})),U.attr("class",(function(e,t){return"nv-bar "+(A(e,t)&lt;0?"negative":"positive")+" nv-bobber-"+t})).transition().attr("transform",(function(e,t){return"translate("+g(p(e,t))+",0)"})),y&amp;&amp;(e||(e=x.map((function(){return!0}))),U.style("fill",(function(t,n,r){return d3.rgb(y(t,n)).darker(e.map((function(e,t){return t})).filter((function(t,n){return!e[n]}))[r]).toString()})).style("stroke",(function(t,n,r){return d3.rgb(y(t,n)).darker(e.map((function(e,t){return t})).filter((function(t,n){return!e[n]}))[r]).toString()}))),f?U.transition().delay((function(e,t){return t*w/x[0].values.length})).attr("y",(function(e){return u(e.y0+e.y)})).attr("height",(function(e){var t=Math.abs(u(e.y+e.y0)-u(e.y0));return Math.max(0===e.y0?t+1:t,1)})).attr("x",(function(e){return f?0:e.series*g.rangeBand()/x.length})).attr("width",g.rangeBand()/(f?1:x.length)):U.transition().delay((function(e,t){return t*w/x[0].values.length})).attr("x",(function(e){return e.series*g.rangeBand()/x.length})).attr("width",g.rangeBand()/x.length).attr("y",(function(e,t){return A(e,t)&lt;0?u(0):u(0)-u(A(e,t))&lt;1?u(0)-1:u(A(e,t))||0})).attr("height",(function(e,t){return Math.max(Math.abs(u(A(e,t))-u(0)),1)||0})),i=g.copy(),a=u.copy()})),x}return x.dispatch=j,x.options=nv.utils.optionsFunc.bind(x),x.x=function(e){return arguments.length?(p=e,x):p},x.y=function(e){return arguments.length?(A=e,x):A},x.margin=function(e){return arguments.length?(s.top=void 0!==e.top?e.top:s.top,s.right=void 0!==e.right?e.right:s.right,s.bottom=void 0!==e.bottom?e.bottom:s.bottom,s.left=void 0!==e.left?e.left:s.left,x):s},x.width=function(e){return arguments.length?(c=e,x):c},x.height=function(e){return arguments.length?(l=e,x):l},x.xScale=function(e){return arguments.length?(g=e,x):g},x.yScale=function(e){return arguments.length?(u=e,x):u},x.xDomain=function(e){return arguments.length?(t=e,x):t},x.yDomain=function(e){return arguments.length?(n=e,x):n},x.xRange=function(e){return arguments.length?(r=e,x):r},x.yRange=function(e){return arguments.length?(o=e,x):o},x.forceY=function(e){return arguments.length?(C=e,x):C},x.stacked=function(e){return arguments.length?(f=e,x):f},x.stackOffset=function(e){return arguments.length?(h=e,x):h},x.clipEdge=function(e){return arguments.length?(I=e,x):I},x.color=function(e){return arguments.length?(v=nv.utils.getColor(e),x):v},x.barColor=function(e){return arguments.length?(y=nv.utils.getColor(e),x):y},x.disabled=function(t){return arguments.length?(e=t,x):e},x.id=function(e){return arguments.length?(d=e,x):d},x.hideable=function(e){return arguments.length?(b=e,x):b},x.delay=function(e){return arguments.length?(w=e,x):w},x.groupSpacing=function(e){return arguments.length?(_=e,x):_},x.bobberZeroLevel=function(e){return arguments.length?(m=e,x):m},x},nv.models.multiBobberChart=function(){var e,t,n=nv.models.multiBobber(),r=nv.models.axis(),o=nv.models.axis(),i=nv.models.legend(),a=nv.models.legend(),s=nv.models.tooltip(),c={top:30,right:20,bottom:50,left:60},l=null,g=null,u=nv.utils.defaultColor(),d=!0,p=!0,A=!0,C=!0,I=!1,f=!0,m=100,h=36,v=!1,b=0,y=!0,w={stacked:!1},_=null,j="No Data Available.",x=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),E=function(){return d?180:0},S=250;function T(M){return M.each((function(M){var L,k=d3.select(this),O=this,P=(l||parseInt(k.style("width"))||960)-c.left-c.right,N=(g||parseInt(k.style("height"))||400)-c.top-c.bottom;if(T.update=function(){k.transition().duration(S).call(T)},T.container=this,w.disabled=M.map((function(e){return!!e.disabled})),!_)for(L in _={},w)w[L]instanceof Array?_[L]=w[L].slice(0):_[L]=w[L];if(!(M&amp;&amp;M.length&amp;&amp;M.filter((function(e){return e.values.length})).length)){var D=k.selectAll(".nv-noData").data([j]);return D.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),D.attr("x",c.left+P/2).attr("y",c.top+N/2).text((function(e){return e})),T}k.selectAll(".nv-noData").remove(),e=n.xScale(),t=n.yScale();var R=k.selectAll("g.nv-wrap.nv-multiBobberWithLegend").data([M]),U=R.enter().append("g").attr("class","nvd3 nv-wrap nv-multiBobberWithLegend").append("g"),z=R.select("g");if(U.append("g").attr("class","nv-x nv-axis"),U.append("g").attr("class","nv-y nv-axis"),U.append("g").attr("class","nv-barsWrap"),U.append("g").attr("class","nv-legendWrap"),U.append("g").attr("class","nv-controlsWrap"),p&amp;&amp;(i.width(P-E()),n.barColor()&amp;&amp;M.forEach((function(e,t){e.color=d3.rgb("#ccc").darker(1.5*t).toString()})),z.select(".nv-legendWrap").datum(M).call(i),c.top!==i.height()&amp;&amp;(c.top=i.height(),N=(g||parseInt(k.style("height"))||400)-c.top-c.bottom),z.select(".nv-legendWrap").attr("transform","translate("+E()+","+-c.top+")")),d){var $=[{key:"Grouped",disabled:n.stacked()},{key:"Stacked",disabled:!n.stacked()}];a.width(E()).color(["#444","#444","#444"]),z.select(".nv-controlsWrap").datum($).attr("transform","translate(0,"+-c.top+")").call(a)}if(R.attr("transform","translate("+c.left+","+c.top+")"),I&amp;&amp;z.select(".nv-y.nv-axis").attr("transform","translate("+P+",0)"),n.disabled(M.map((function(e){return e.disabled}))).width(P).height(N).color(M.map((function(e,t){return e.color||u(e,t)})).filter((function(e,t){return!M[t].disabled}))),z.select(".nv-barsWrap").datum(M.filter((function(e,t){return e.seriesIndex=t,!e.disabled}))).transition().call(n),A){r.scale(e).ticks(P/m).tickSize(-N,0),z.select(".nv-x.nv-axis").attr("transform","translate(0,"+t.range()[0]+")"),z.select(".nv-x.nv-axis").transition().call(r);var G=z.select(".nv-x.nv-axis &gt; g").selectAll("g");if(G.selectAll("line, text").style("opacity",1),v){var B=function(e,t){return"translate("+e+","+t+")"};G.selectAll("text").attr("transform",(function(e,t,n){return B(0,n%2==0?5:17)}));var F=d3.selectAll(".nv-x.nv-axis .nv-wrap g g text")[0].length;z.selectAll(".nv-x.nv-axis .nv-axisMaxMin text").attr("transform",(function(e,t){return B(0,0===t||F%2!=0?17:5)}))}f&amp;&amp;G.filter((function(e,t){return t%Math.ceil(M[0].values.length/(P/m))!=0})).selectAll("text, line").style("opacity",0),b&amp;&amp;G.selectAll(".tick text").attr("transform","rotate("+b+" 0,0)").style("text-anchor",b&gt;0?"start":"end"),z.select(".nv-x.nv-axis").selectAll("g.nv-axisMaxMin text").style("opacity",1)}C&amp;&amp;(o.scale(t).ticks(N/h).tickSize(-P,0),z.select(".nv-y.nv-axis").transition().call(o)),i.dispatch.on("stateChange",(function(e){w=e,x.stateChange(w),T.update()})),a.dispatch.on("legendClick",(function(e){if(e.disabled){switch($=$.map((function(e){return e.disabled=!0,e})),e.disabled=!1,e.key){case"Grouped":n.stacked(!1);break;case"Stacked":n.stacked(!0)}w.stacked=n.stacked(),x.stateChange(w),T.update()}})),x.on("tooltipShow",(function(e){y&amp;&amp;function(e,t){var i=[];e.data.filter((function(e){return!e.disabled})).forEach((function(t){i.push({key:t.key,value:T.y()(t.values[e.pointIndex]),color:u(t,t.seriesIndex)})}));var a=e.pos[0]+c.left,l=e.mouse?e.mouse[1]:e.e.offsetY;s.position({left:a,top:l}).chartContainer(t).enabled(y).valueFormatter((function(e){return o.tickFormat()(e)})).data({value:r.tickFormat()(n.x()(e.point,e.pointIndex)),series:i})()}(e,O.parentNode)})),x.on("changeState",(function(e){void 0!==e.disabled&amp;&amp;(M.forEach((function(t,n){t.disabled=e.disabled[n]})),w.disabled=e.disabled),void 0!==e.stacked&amp;&amp;(n.stacked(e.stacked),w.stacked=e.stacked),T.update()}))})),T}return n.stacked(!1),r.orient("bottom").tickPadding(7).highlightZero(!0).showMaxMin(!1).tickFormat((function(e){return e})),o.orient(I?"right":"left").tickFormat(d3.format(",.1f")),a.updateState(!1),n.dispatch.on("elementMouseover.tooltip",(function(e){x.tooltipShow(e)})),n.dispatch.on("elementMouseout.tooltip",(function(e){x.tooltipHide(e)})),x.on("tooltipHide",(function(){y&amp;&amp;nv.tooltip.cleanup()})),T.dispatch=x,T.tooltip=s,T.multibar=n,T.legend=i,T.xAxis=r,T.yAxis=o,d3.rebind(T,n,"x","y","xDomain","yDomain","xRange","yRange","forceX","forceY","clipEdge","id","stacked","stackOffset","delay","barColor","groupSpacing","bobberZeroLevel"),T.options=nv.utils.optionsFunc.bind(T),T.margin=function(e){return arguments.length?(c.top=void 0!==e.top?e.top:c.top,c.right=void 0!==e.right?e.right:c.right,c.bottom=void 0!==e.bottom?e.bottom:c.bottom,c.left=void 0!==e.left?e.left:c.left,T):c},T.width=function(e){return arguments.length?(l=e,T):l},T.height=function(e){return arguments.length?(g=e,T):g},T.color=function(e){return arguments.length?(u=nv.utils.getColor(e),i.color(u),T):u},T.showControls=function(e){return arguments.length?(d=e,T):d},T.showLegend=function(e){return arguments.length?(p=e,T):p},T.showXAxis=function(e){return arguments.length?(A=e,T):A},T.showYAxis=function(e){return arguments.length?(C=e,T):C},T.rightAlignYAxis=function(e){return arguments.length?(I=e,o.orient(e?"right":"left"),T):I},T.reduceXTicks=function(e){return arguments.length?(f=e,T):f},T.xTickStepWidth=function(e){return arguments.length?(m=e,T):m},T.yTickStepWidth=function(e){return arguments.length?(h=e,T):h},T.rotateLabels=function(e){return arguments.length?(b=e,T):b},T.staggerLabels=function(e){return arguments.length?(v=e,T):v},T.tooltips=function(e){return arguments.length?(y=e,T):y},T.state=function(e){return arguments.length?(w=e,T):w},T.defaultState=function(e){return arguments.length?(_=e,T):_},T.noData=function(e){return arguments.length?(j=e,T):j},T.transitionDuration=function(e){return arguments.length?(S=e,T):S},T}},98247:()=&gt;{angular.module("youtrack.components.report").factory("rateReport",["gapReportBase","initScales","initViews","getOptimalScale",function(e,t,n,r){return(o,i,a,s,c)=&gt;{e(o,i,a),t(o),n(o);const l=o.prepareReportRender;o.prepareReportRender=e=&gt;{l(e),nv.addGraph((()=&gt;{const e=nv.models.multiBobberChart().margin({left:24}).x((e=&gt;e[0])).y((e=&gt;e[1])).bobberZeroLevel(1).transitionDuration(100).showControls(!1).yTickStepWidth(96);return e.tooltip.distance(32),e.tooltip.snapDistance(16),e.yAxis.tickFormat(Math.abs),o.chart=e,o.currentState={scale:o.scales[1],view:o.views[0]},o.regroup(o.currentState.view,!0),o.rescale(o.currentState.scale,!0),o.onWindowResize(o.chart.update),o.$apply(),e}))},o.rescale=(e,t)=&gt;{o.currentState.scale=e||r(o),o.chart.xScaleStep(o.currentState.scale.step),o.chart.xAxis.tickFormat(o.currentState.scale.dateFormat);const n=d3.select(s.querySelector(".chart-Node"));t||n.selectAll(".tick").remove(),n.datum(function(e){const t=c.map((e=&gt;({key:e.name,values:[]}))),n=o.report.data.groups;let r=0;const i=e.step.floor(new Date(o.report.data.range.from)),a=e.step.ceil(new Date(o.report.data.range.to));return e.step.range(i,a).forEach((o=&gt;{const i=e.step.offset(o,1).getTime(),a=[...new Array(t.length)].map(Number.prototype.valueOf,0);for(;r&lt;n.length&amp;&amp;n[r].timestamp&lt;i;){for(let e=0;e&lt;t.length;e++)a[e]+=n[r][c[e].id];r++}for(let e=0;e&lt;t.length;e++)t[e].values.push([o,a[e]])})),t}(o.currentState.scale)).call(o.chart)},o.regroup=(e,t)=&gt;{o.currentState.view=e||o.views[0],o.chart.stacked(o.currentState.view.value),t||o.chart.update()}}}])},96383:()=&gt;{angular.module("youtrack.components.reportBase").factory("reportWindowResize",(function(){const e={};return{register:(t,n)=&gt;{angular.isFunction(n)&amp;&amp;(e[t.$id]||(e[t.$id]=[],t.$on("$destroy",(()=&gt;{delete e[t.$id]}))),e[t.$id].push(n))},getCallbacks:()=&gt;{let t=[];for(const n in e)e.hasOwnProperty(n)&amp;&amp;(t=t.concat(e[n]));return t}}}))},72524:()=&gt;{angular.module("youtrack.components.report").directive("ytReportGroup",(function(){return{transclude:!0,restrict:"E",scope:{group:"="},template:'&lt;span class="yt-report-group_wrapper"&gt;  &lt;span ng-if="isIssue"&gt;    &lt;a class="ring-link yt-report-group_link" ng-href="issue/{{issue.idReadable}}"&gt;{{issue.idReadable}}&lt;/a&gt;  &lt;span rg-tooltip="{{issue.summary}}"&gt;{{issue.summary}}&lt;/span&gt;   &lt;/span&gt;   &lt;span ng-if="isUser"&gt;     &lt;a class="ring-link yt-report-group_link" ng-href="{{ userLink }}"&gt;      {{user.visibleName}}     &lt;/a&gt;{{user.postfix}}   &lt;/span&gt;   &lt;span ng-if="isDefault"&gt;{{group.name}}&lt;/span&gt; &lt;/span&gt;',link:function(e){const t=e.group.meta||{};e.isUser=angular.isObject(t.linkedUser),e.user=t.linkedUser,e.userLink=(t.linkedUser||{}).canReadProfile?`users/${t.linkedUser.ringId}`:null,e.isIssue=angular.isObject(t.linkedIssue),e.issue=t.linkedIssue,e.isDefault=!e.isIssue&amp;&amp;!e.isUser}}}))},86557:e=&gt;{var t="youtrack-report__average-age/youtrack-report__average-age.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="report &amp;&amp; report.data" class="youtrack-report__container"\n     ng-include="\'youtrack-report__interval-widget/youtrack-report__interval-widget.html\'"&gt;&lt;/div&gt;\n')}]),e.exports=t},88498:e=&gt;{var t="youtrack-report__burndown/youtrack-report__burndown.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="report &amp;&amp; report.data" class="youtrack-report__burndown-container"&gt;\n\n    &lt;div class="report-chart report-widget__chart"&gt;\n\n        &lt;div class="youtrack-report__burndown-title"&gt;\n          &lt;div class="youtrack-report__burndown-date"&gt;\n            &lt;span translate translate-context="Dashboard"&gt;Date:&lt;/span&gt; {{lastCalculated}}\n          &lt;/div&gt;\n          &lt;div class="youtrack-report__burndown-effort-presentation" ng-class="{\'youtrack-report__burndown-overdue\' : isOverdue}"&gt;\n            {{remainingEffortPresentation}}\n          &lt;/div&gt;\n        &lt;/div&gt;\n\n        &lt;svg class="youtrack-report__chart_full-height js-report-container"&gt;&lt;/svg&gt;\n\n        &lt;div rg-template="XAxisTpl"&gt;&lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n')}]),e.exports=t},29432:e=&gt;{var t="youtrack-report__cumulative-flow/youtrack-report__cumulative-flow.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-include="\'youtrack-report__title.html\'"&gt;&lt;/div&gt;\n&lt;div ng-if="report &amp;&amp; report.data" class="report-chart report-widget__chart"&gt;\n    &lt;widget-legend chart="chart" serieses="data" threshold="3"&gt;&lt;/widget-legend&gt;\n    &lt;svg class="youtrack-report__chart_full-height js-report-container"&gt;&lt;/svg&gt;\n    &lt;div ng-include="\'youtrack-report__x-axis.html\'"&gt;&lt;/div&gt;\n&lt;/div&gt;\n')}]),e.exports=t},1799:e=&gt;{var t="youtrack-report__custom-distribution/youtrack-report__custom-distribution.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="report &amp;&amp; report.data"&gt;\n    &lt;div ng-if="isReady" class="report-chart report-widget__chart widget-custom-distribution__chart"&gt;\n        &lt;div class="widget-custom-distribution__legend-y"\n             ng-style="{\'height\': chartHeight + \'px\'}"&gt;\n\n            &lt;div ng-repeat="group in report.data.groups"\n                 class="widget-custom-distribution__legend-y__i"\n                 ng-style="{height: lineHeight + \'px\'}"&gt;\n\n                &lt;div class="widget-custom-distribution__legend-y__name"&gt;\n                    {{group.presentation}}\n                &lt;/div&gt;\n            &lt;/div&gt;\n        &lt;/div&gt;\n        &lt;div ng-style="{\'height\': chartHeight + \'px\'}"&gt;\n            &lt;svg class="js-report-container"&gt;&lt;/svg&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n')}]),e.exports=t},91392:e=&gt;{var t="youtrack-report__estimation/youtrack-report__estimation.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;table ng-if="report &amp;&amp; report.data" class="yt-table widget-table yt-table_underline-group yt-table_time-report"&gt;\n  &lt;thead class="yt-table__header"&gt;\n  &lt;tr class="yt-table__row"&gt;\n    &lt;th class="yt-table__cell_title"\n        colspan="2"&gt;\n      &lt;span translate&gt;Issues&lt;/span&gt;&lt;span ng-if="report.grouping"&gt;, &lt;span translate&gt;group by&lt;/span&gt;\n          {{report.grouping &amp;&amp; report.grouping.presentation}}\n        &lt;/span&gt;\n    &lt;/th&gt;\n    &lt;th class="yt-table__cell_title"&gt;\n      &lt;span translate&gt;Estimation&lt;/span&gt;\n    &lt;/th&gt;\n  &lt;/tr&gt;\n  &lt;/thead&gt;\n\n  &lt;tbody ng-repeat="group in report.data.groups"\n         class="yt-table__group"&gt;\n  &lt;tr class="yt-table__row"&gt;\n    &lt;td colspan="2" class="yt-table__cell yt-table__group__title"&gt;\n      {{report.grouping &amp;&amp; group.name}}\n    &lt;/td&gt;\n    &lt;td class="yt-table__cell time-report__value yt-bold"&gt;\n      {{report.grouping &amp;&amp; group.estimation.presentation}}\n    &lt;/td&gt;\n  &lt;/tr&gt;\n  &lt;tr ng-repeat="line in group.issueItems"\n      rg-tooltip="{{estimationReportCtrl.getTooltipText(line)}}"\n      class="yt-table__row"&gt;\n    &lt;td class="yt-table__cell yt-table_time__id"&gt;\n      &lt;a target="_blank" ng-if="line.issueId" class="ring-link" ng-href="{{getIssueUrl(line)}}"&gt;{{line.issueId}}&lt;/a&gt;\n      &lt;span ng-if="!line.issueId"&gt;&amp;mdash;&lt;/span&gt;\n      &lt;span ng-if="estimationReportCtrl.hasDuplicates(line)"&gt;*&lt;/span&gt;\n    &lt;/td&gt;\n    &lt;td class="yt-table__cell"&gt;\n      &lt;span ng-if="line.issue"&gt;{{line.issue.summary}}&lt;/span&gt;\n      &lt;span ng-if="!line.issue" translate&gt;&amp;lt;issue was removed&amp;gt;&lt;/span&gt;\n    &lt;/td&gt;\n    &lt;td class="yt-table__cell time-report__value"&gt;\n      {{line.estimation.presentation}}\n    &lt;/td&gt;\n  &lt;/tr&gt;\n  &lt;/tbody&gt;\n\n  &lt;tfoot&gt;\n  &lt;tr class="yt-table__row"&gt;\n    &lt;td colspan="5" class="yt-table__cell time-report__value"&gt;\n      &lt;span translate&gt;Total estimation:&lt;/span&gt;\n      &lt;span class="time-report__total"&gt;{{report.data.itemsEstimationSum.presentation}}&lt;/span&gt;\n    &lt;/td&gt;\n  &lt;/tr&gt;\n  &lt;/tfoot&gt;\n&lt;/table&gt;\n')}]),e.exports=t},543:e=&gt;{var t="youtrack-report__event-transition/youtrack-report__event-transition.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="report &amp;&amp; report.data" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget.html\'"&gt;&lt;/div&gt;\n')}]),e.exports=t},52787:e=&gt;{var t="youtrack-report__fix-rate/youtrack-report__fix-rate.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="report &amp;&amp; report.data" class="youtrack-report__container" ng-include="\'youtrack-report__rate-widget/youtrack-report__rate-widget.html\'"&gt;&lt;/div&gt;\n')}]),e.exports=t},30763:e=&gt;{var t="youtrack-report__flat-distribution/youtrack-report__flat-distribution.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="report &amp;&amp; report.data" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget.html\'"&gt;&lt;/div&gt;\n')}]),e.exports=t},63959:e=&gt;{var t="youtrack-report__interval-widget/youtrack-report__interval-widget.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-include="\'youtrack-report__title.html\'"&gt;&lt;/div&gt;\n&lt;div ng-if="isReady" class="report-chart report-widget__chart"&gt;\n    &lt;svg class="youtrack-report__chart_full-height js-report-container"&gt;&lt;/svg&gt;\n    &lt;div ng-include="\'youtrack-report__x-axis.html\'"&gt;&lt;/div&gt;\n&lt;/div&gt;\n')}]),e.exports=t},74975:e=&gt;{var t="youtrack-report__issue-distribution/youtrack-report__issue-distribution.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="report &amp;&amp; report.data &amp;&amp; report.presentation === \'DEFAULT\'"&gt;\n    \x3c!--Render as bars widget for every case other than \'All data\'--\x3e\n    &lt;div ng-if="dataIndex !== 0" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget.html\'"&gt;&lt;/div&gt;\n    \x3c!--Colored bars render in case of All data presentation--\x3e\n    &lt;div ng-if="dataIndex === 0"&gt;\n      &lt;div ng-if="dynamicChart" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget-dynamic-title.html\'"&gt;&lt;/div&gt;\n      &lt;div ng-if="!dynamicChart" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget-static-title.html\'"&gt;&lt;/div&gt;\n        &lt;div ng-if="isReady" class="report-chart report-widget__chart report-widget__chart_flex"&gt;\n            &lt;div class="widget-simple-bars__legend-y" ng-style="{\'height\': chartHeight + \'px\'}"&gt;\n                &lt;div ng-repeat="yCol in ycolumns"\n                     class="report-distribution__legend-y__i"\n                     ng-style="{\'height\': lineHeight + \'px\', \'line-height\': lineHeight + \'px\'}"&gt;\n\n                    &lt;img ng-if="hasAvatars &amp;&amp; yCol.avatarUrl"\n                         class="report-distribution__legend-avatar"\n                         ng-src="{{getAvatar(yCol.avatarUrl)}}"\n                         width="{{imageSize}}" height="{{imageSize}}"/&gt;\n\n                    &lt;div ng-if="hasAvatars &amp;&amp; !(yCol.avatarUrl)"\n                         class="report-distribution__legend-avatar"\n                         ng-style="{\'width\': imageSize + \'px\', \'height\': imageSize + \'px\'}"&gt;&lt;/div&gt;\n\n                    &lt;div class="widget-simple-bars__legend-y__percent"&gt;\n                        {{round(((yCol.size.value || yCol.size) * 100) / totalSize) + \'%\'}}\n                    &lt;/div&gt;\n                    &lt;div class="widget-simple-bars__legend-y__total"&gt;\n                      {{yCol.size.presentation || yCol.size.value || yCol.size}}\n                    &lt;/div&gt;\n                    &lt;div title="{{yCol.name}}" class="widget-simple-bars__legend-y__name widget-simple-bars__legend-y__short-name"&gt;\n                        {{yCol.name}}\n                    &lt;/div&gt;\n                &lt;/div&gt;\n            &lt;/div&gt;\n            &lt;div class="widget-simple-bars__chart" ng-style="{\'height\': chartHeight + \'px\'}"&gt;\n                &lt;svg class="report-widget__chart js-report-container"&gt;&lt;/svg&gt;\n            &lt;/div&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n\n&lt;table ng-if="report &amp;&amp; report.data &amp;&amp; report.presentation === \'MATRIX\'" class="youtrack-report__issue-distribution-table yt-table"&gt;\n  &lt;thead&gt;\n    &lt;tr class="" ng-if="!tooBig()"&gt;\n      &lt;th class="yt-table__cell yt-table__cell_title"&gt;&lt;/th&gt;\n      &lt;th ng-repeat="xCol in report.data.xcolumns" class="yt-table__cell yt-table__cell_title"&gt;{{xCol.name}}\n      &lt;/th&gt;\n      &lt;th ng-if="report.data.xcolumns.length &lt; 1" colspan="2" class="yt-table__cell yt-table__cell_title"&gt;&lt;span\n        translate translate-context="Dashboard"&gt;Nothing found&lt;/span&gt;&lt;/th&gt;\n      &lt;th class="yt-table__cell yt-table__cell_title"&gt;&lt;span class="report-value_total" translate translate-context="Dashboard"&gt;Total&lt;/span&gt;&lt;/th&gt;\n    &lt;/tr&gt;\n    &lt;tr ng-if="report.data.ycolumns.length &lt; 1"&gt;\n      &lt;td colspan="4" translate translate-context="Dashboard"&gt;Nothing found&lt;/td&gt;\n    &lt;/tr&gt;\n    &lt;tr ng-if="tooBig()"&gt;\n      &lt;td colspan="4" translate translate-context="Dashboard"&gt;Too many cells&lt;/td&gt;\n    &lt;/tr&gt;\n  &lt;/thead&gt;\n  &lt;tbody class="yt-table__group" ng-if="!tooBig()"&gt;\n    &lt;tr ng-repeat="yCol in report.data.ycolumns" class="yt-table__row"&gt;\n      &lt;td class="yt-table__cell"&gt;{{yCol.name}}&lt;/td&gt;\n      &lt;td ng-repeat="xCol in report.data.xcolumns"\n          class="yt-table__cell report-value"&gt;\n        &lt;a ng-if="report.data.counts[xCol.index][yCol.index] &gt; 0 || report.data.counts[xCol.index][yCol.index].value &gt; 0"\n           class="ring-link report-value__i"\n           title="{{getFilterPresentation(report.data.xfilter) + \': \' + xCol.name + \' | \' + getFilterPresentation(report.data.yfilter) + \': \' + yCol.name}}"\n           target="_blank"\n           ng-href="{{getMatrixReportQueryUrl(report.data, xCol.index, yCol.index)}}"&gt;\n          {{report.data.counts[xCol.index][yCol.index].presentation || report.data.counts[xCol.index][yCol.index]}}\n        &lt;/a&gt;\n      &lt;/td&gt;\n      &lt;td class="yt-table__cell report-value report-value_total"&gt;\n        &lt;a class="ring-link report-value__i"\n           title="{{getFilterPresentation(report.data.yfilter) + \': \' + yCol.name}}"\n           target="_blank"\n           href="{{getColumnQueryUrl(yCol)}}"&gt;{{yCol.size.presentation || yCol.size.value || yCol.size}}&lt;/a&gt;\n      &lt;/td&gt;\n    &lt;/tr&gt;\n\n    &lt;tr class="yt-table__row"&gt;\n      &lt;td ng-if="report.data.xcolumns.length &gt; 0" class="yt-table__cell"&gt;&lt;span translate translate-context="Dashboard"&gt;Total&lt;/span&gt;&lt;/td&gt;\n      &lt;td ng-if="report.data.xcolumns.length &lt; 1" class="yt-table__cell"&gt;&lt;/td&gt;\n\n      &lt;td ng-repeat="xCol in report.data.xcolumns"\n          class="yt-table__cell report-value report-value_total"&gt;\n        &lt;a class="ring-link  report-value__i"\n           title="{{getFilterPresentation(report.data.xfilter) + \': \' + xCol.name}}"\n           target="_blank"\n           href="{{getColumnQueryUrl(xCol)}}"&gt;\n          {{xCol.size.presentation || xCol.size.value || xCol.size}}\n        &lt;/a&gt;\n      &lt;/td&gt;\n      &lt;td class="yt-table__cell report-value report-value_total"&gt;\n        &lt;a class="ring-link report-value__i"\n           target="_blank"\n           href="{{getColumnQueryUrl(report)}}"&gt;{{report.data.total.presentation || report.data.total}}&lt;/a&gt;\n      &lt;/td&gt;\n    &lt;/tr&gt;\n  &lt;/tbody&gt;\n&lt;/table&gt;\n')}]),e.exports=t},74474:e=&gt;{var t="youtrack-report__issues-per-assignee/youtrack-report__issues-per-assignee.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="report &amp;&amp; report.data" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget.html\'"&gt;&lt;/div&gt;\n')}]),e.exports=t},38614:e=&gt;{var t="youtrack-report__issues-per-project/youtrack-report__issues-per-project.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="report &amp;&amp; report.data" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget.html\'"&gt;&lt;/div&gt;\n')}]),e.exports=t},68965:e=&gt;{var t="youtrack-report__rate-widget/youtrack-report__rate-widget.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-include="\'youtrack-report__title.html\'"&gt;&lt;/div&gt;\n&lt;div ng-if="isReady" class="report-chart report-widget__chart"&gt;\n  &lt;rg-group class="report-widget__chart-right-toolbar"&gt;\n    &lt;div rg-button-group&gt;\n      &lt;rg-button ng-repeat="view in views"\n                 active="view === currentState.view"\n                 ng-click="regroup(view)"&gt;\n        {{view.title}}\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n    &lt;div rg-button-group&gt;\n      &lt;rg-button ng-repeat="scale in scales"\n                 active="scale === currentState.scale"\n                 ng-click="rescale(scale)"&gt;\n        {{scale.unit}}\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n  &lt;/rg-group&gt;\n  &lt;div class="widget-rate__chart-title"&gt;\n    {{chartNames[0]}}\n  &lt;/div&gt;\n  &lt;svg class="youtrack-report__chart_full-height js-report-container"&gt;&lt;/svg&gt;\n  &lt;div class="widget-rate__chart-title"&gt;\n    {{chartNames[1]}}\n  &lt;/div&gt;\n  &lt;div class="report-widget__xAxis"&gt;\n    {{rangeStart}} &amp;ndash; {{rangeEnd}}\n  &lt;/div&gt;\n&lt;/div&gt;\n')}]),e.exports=t},77917:e=&gt;{var t="youtrack-report__reopened-distribution/youtrack-report__reopened-distribution.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="report &amp;&amp; report.data" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget.html\'"&gt;&lt;/div&gt;\n')}]),e.exports=t},35393:e=&gt;{var t="youtrack-report__resolution-time/youtrack-report__resolution-time.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="report &amp;&amp; report.data"\n     class="youtrack-report__subcontainer"\n     ng-include="\'youtrack-report__interval-widget/youtrack-report__interval-widget.html\'"&gt;&lt;/div&gt;\n')}]),e.exports=t},81416:e=&gt;{var t="youtrack-report__resolve-rate/youtrack-report__resolve-rate.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="report &amp;&amp; report.data"\n     class="youtrack-report__subcontainer"\n     ng-include="\'youtrack-report__rate-widget/youtrack-report__rate-widget.html\'"&gt;&lt;/div&gt;\n')}]),e.exports=t},28922:(e,t,n)=&gt;{var r="youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget-dynamic-title.html",o='&lt;div ng-if="isReady" class="widget-simple-bars__header"&gt;\n  &lt;div class="widget-controls__group-by"\n       rg-select type="dropdown" options="item.label for item in groupByValues track by item.key" on-select="changeGroupBy(selected.originalModel)" label-field="label"&gt;\n    &lt;span title="{{groupByValues[dataIndex].label}}"\n          class="widget-simple-bars__header__group-by"&gt;\n        {{groupByValues[dataIndex].label}}\n    &lt;/span&gt;\n\n    &lt;rg-icon class="youtrack-report__caret" glyph="'+n(96971)+'" size="14" color="BLACK"&gt;&lt;/rg-icon&gt;\n  &lt;/div&gt;\n  &lt;div class="widget-simple-bars__header__right"&gt;\n    {{groupByValues[dataIndex].size.value || groupByValues[dataIndex].size}}\n  &lt;/div&gt;\n&lt;/div&gt;\n\n';window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(r,o)}]),e.exports=r},44008:e=&gt;{var t="youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget-static-title.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="isReady" class="widget-simple-bars__header"&gt;\n  &lt;div translate translate-context="Dashboard"&gt;Total&lt;/div&gt;\n  &lt;div class="widget-simple-bars__header__right"&gt;{{totalSize}}&lt;/div&gt;\n&lt;/div&gt;\n')}]),e.exports=t},75206:e=&gt;{var t="youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="report.presentation !== \'PIE\'"&gt;\n\n    &lt;div ng-if="dynamicChart" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget-dynamic-title.html\'"&gt;&lt;/div&gt;\n    &lt;div ng-if="!dynamicChart" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget-static-title.html\'"&gt;&lt;/div&gt;\n\n  &lt;div ng-if="isReady" class="report-chart report-widget__chart report-widget__chart_flex"&gt;\n        &lt;div class="widget-simple-bars__legend-y"  ng-style="{\'height\': chartHeight + \'px\'}"&gt;\n            &lt;div ng-repeat="xCol in data"\n                 class="report-distribution__legend-y__i"\n                 ng-style="{\'height\': lineHeight + \'px\', \'line-height\': lineHeight + \'px\'}"&gt;\n\n                &lt;img ng-if="hasAvatars &amp;&amp; xCol.avatarUrl"\n                     class="report-distribution__legend-avatar"\n                     ng-src="{{getAvatar(xCol.avatarUrl)}}"\n                     width="{{imageSize}}" height="{{imageSize}}"/&gt;\n\n                &lt;div ng-if="hasAvatars &amp;&amp; !(xCol.avatarUrl)"\n                     class="report-distribution__legend-avatar"\n                     ng-style="{\'width\': imageSize + \'px\', \'height\': imageSize + \'px\'}"&gt;&lt;/div&gt;\n\n                &lt;div class="widget-simple-bars__legend-y__percent"&gt;\n                  {{getSimpleBarsPercentText(xCol.size, totalSize)}}\n                &lt;/div&gt;\n                &lt;div class="widget-simple-bars__legend-y__total"&gt;\n                    {{xCol.size.presentation || xCol.size}}\n                &lt;/div&gt;\n                &lt;div title="{{xCol.name}}" class="widget-simple-bars__legend-y__name widget-simple-bars__legend-y__short-name"&gt;\n                    {{xCol.name}}\n                &lt;/div&gt;\n            &lt;/div&gt;\n        &lt;/div&gt;\n        &lt;div class="widget-simple-bars__chart" ng-style="{\'height\': chartHeight + \'px\'};"&gt;\n            &lt;svg class="report-widget__chart js-report-container"&gt;&lt;/svg&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n&lt;div ng-if="report.presentation === \'PIE\'"&gt;\n    &lt;div ng-if="isReady" class="report-chart report-widget__chart"&gt;\n        &lt;div ng-style="{\'height\': chartHeight + \'px\'};"&gt;\n            &lt;svg class="report-widget__chart js-report-container"&gt;&lt;/svg&gt;\n        &lt;/div&gt;\n        &lt;div ng-repeat="xCol in data"\n             class="report-distribution__legend-y__i"\n             ng-style="{\'height\': lineHeight + \'px\', \'line-height\': lineHeight + \'px\'}"&gt;\n\n            &lt;div class="widget-simple-bars__legend-y__color-label"\n                 ng-style="{\'width\': labelSize + \'px\', \'height\': labelSize + \'px\', \'background\': getColor(xCol, $index)}"&gt;&lt;/div&gt;\n\n            &lt;img ng-if="hasAvatars &amp;&amp; xCol.avatarUrl"\n                 class="report-distribution__legend-avatar"\n                 ng-src="{{getAvatar(xCol.avatarUrl)}}"\n                 width="{{imageSize}}" height="{{imageSize}}"/&gt;\n\n            &lt;div ng-if="hasAvatars &amp;&amp; !(xCol.avatarUrl)"\n                 class="report-distribution__legend-avatar"\n                 ng-style="{\'width\': imageSize + \'px\', \'height\': imageSize + \'px\'}"&gt;&lt;/div&gt;\n\n            &lt;div class="widget-simple-bars__legend-y__percent"&gt;\n              {{getSimpleBarsPercentText(xCol.size, totalSize)}}\n            &lt;/div&gt;\n            &lt;div class="widget-simple-bars__legend-y__total"&gt;\n                {{xCol.size.presentation || xCol.size}}\n            &lt;/div&gt;\n            &lt;div class="widget-simple-bars__legend-y__name"&gt;\n                &lt;a class="ring-link" target="_blank" ng-href="{{getYouTrackSearchUrl(xCol)}}"&gt;{{xCol.name}}&lt;/a&gt;\n            &lt;/div&gt;\n        &lt;/div&gt;\n    &lt;/div&gt;\n&lt;/div&gt;\n')}]),e.exports=t},86815:e=&gt;{var t="youtrack-report__time/youtrack-report__time.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="report &amp;&amp; report.data"&gt;\n  &lt;div class="widget__title"&gt;\n\n    \x3c!--Time report actions--\x3e\n    &lt;div rg-button-group class="widget-time__header__per-user-toggler"\n         ng-if="(!timeReportCtrl.hasGroups() || timeReportCtrl.isDetailedView)"&gt;\n      &lt;rg-button ng-disabled="!isReady" active="id.perUser"\n              ng-click="timeReportCtrl.setPerUser(true)"&gt;&lt;span translate translate-context="Dashboard"&gt;Per User&lt;/span&gt;\n      &lt;/rg-button&gt;\n      &lt;rg-button ng-disabled="!isReady" active="!id.perUser"\n              ng-click="timeReportCtrl.setPerUser(false)"&gt;&lt;span translate translate-context="Dashboard"&gt;Per Issue&lt;/span&gt;\n      &lt;/rg-button&gt;\n    &lt;/div&gt;\n\n    \x3c!--Widget title information--\x3e\n    &lt;div&gt;\n      &lt;strong translate translate-context="Dashboard"&gt;Time spent&lt;/strong&gt; &amp;mdash; &lt;yt-period-value value-presentation="report.data.duration"&gt;&lt;/yt-period-value&gt;\n      &lt;div ng-if="timeReportCtrl.hasGroups()" class="youtrack-report__details-toggle"&gt;\n        &lt;a\n          class="ring-link"\n          ng-if="!timeReportCtrl.isDetailedView"\n          ng-click="timeReportCtrl.isDetailedView = true"\n          translate&gt;Show details&lt;/a&gt;\n        &lt;a\n          class="ring-link"\n          ng-if="timeReportCtrl.isDetailedView"\n          ng-click="timeReportCtrl.isDetailedView = false"\n          translate&gt;Hide details&lt;/a&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n  &lt;/div&gt;\n\n  &lt;table class="widget-table yt-table"&gt;\n    &lt;thead&gt;&lt;/thead&gt;\n    &lt;tbody class="yt-table__group" ng-repeat="group in report.data.groups"&gt;\n      &lt;tr ng-if="timeReportCtrl.hasGroups()" class="yt-table__row"&gt;\n        &lt;td colspan="{{timeReportCtrl.getGroupColSpan()}}" class="yt-table__cell yt-table__group__title"&gt;\n          &lt;yt-report-group group="group"&gt;&lt;/yt-report-group&gt;\n        &lt;/td&gt;\n        &lt;td class="yt-table__cell yt-table__cell_progress-bar" ng-if="timeReportCtrl.isShowGroupEstimation()"&gt;\n          &amp;nbsp;\n        &lt;/td&gt;\n        &lt;td class="yt-table__cell time-report__value yt-bold"&gt;\n          &lt;yt-period-value value-presentation="group.estimation" show-zero="false"&gt;&lt;/yt-period-value&gt;\n        &lt;/td&gt;\n        &lt;td class="yt-table__cell time-report__value yt-bold"&gt;\n          &lt;yt-period-value value-presentation="group.duration" show-zero="false"&gt;&lt;/yt-period-value&gt;\n        &lt;/td&gt;\n      &lt;/tr&gt;\n\n      &lt;tr\n        ng-if="!timeReportCtrl.hasGroups() || timeReportCtrl.isDetailedView"\n        ng-repeat="line in timeReportCtrl.lines[group.name]"\n        class="yt-table__row"\n      &gt;\n        &lt;td class="yt-table__cell yt-table_time__id" ng-if="!id.perUser"&gt;\n          &lt;a class="ring-link" ng-if="line.firstInSubGroup" target="_blank"\n             ng-href="{{timeReportCtrl.getIssueUrl(line)}}"&gt;{{line.issueId}}&lt;/a&gt;\n        &lt;/td&gt;\n\n        &lt;td class="yt-table__cell yt-table_time__id" ng-if="id.perUser"&gt;\n          &lt;a class="ring-link" ng-if="line.firstInSubGroup" target="_blank"\n             ng-href="{{timeReportCtrl.getUserUrl(line)}}"&gt;\n            &lt;rg-avatar\n              size="16"\n              url="line.userAvatarUrl"\n            &gt;&lt;/rg-avatar&gt;\n          &lt;/a&gt;\n        &lt;/td&gt;\n\n        &lt;td class="yt-table__cell"&gt;\n          &lt;span ng-if="line.firstInSubGroup"&gt;{{line.description}}&lt;/span&gt;\n        &lt;/td&gt;\n\n        &lt;td class="yt-table__cell yt-table__cell_progress-bar" ng-if="timeReportCtrl.isShowGroupEstimation()"&gt;\n          &lt;yt-report-time-progress progress="line.periods.totalSpentTime"\n                                   estimation="line.periods.estimation"\n                                   ng-if="timeReportCtrl.isShowLinesEstimation() &amp;&amp; line.periods.estimation &amp;&amp; line.periods.estimation.value"&gt;\n          &lt;/yt-report-time-progress&gt;\n        &lt;/td&gt;\n\n        &lt;td class="yt-table__cell time-report__value"&gt;\n          &lt;span ng-if="line.firstInSubGroup"&gt;\n            &lt;yt-period-value value-presentation="line.periods.estimation" show-zero="false"&gt;&lt;/yt-period-value&gt;\n          &lt;/span&gt;\n        &lt;/td&gt;\n        &lt;td class="yt-table__cell time-report__value"&gt;\n          &lt;yt-period-value value-presentation="line.periods.timeSpent"&gt;&lt;/yt-period-value&gt;\n        &lt;/td&gt;\n      &lt;/tr&gt;\n    &lt;/tbody&gt;\n  &lt;/table&gt;\n\n&lt;/div&gt;\n')}]),e.exports=t},51486:e=&gt;{var t="youtrack-report__title.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'\x3c!--\n&lt;div ng-if="report.parameters"&gt;\n    &lt;div class="report__query"&gt;\n        &lt;span ng-repeat="project in report.parameters.projects"\n              class="report__query__i"&gt;{{project.name}}&lt;/span&gt;&lt;span class="report__query__i"&gt;{{report.parameters.query | mayBeEmpty}}&lt;/span&gt;\n    &lt;/div&gt;\n&lt;/div&gt;--\x3e\n')}]),e.exports=t},73574:e=&gt;{var t="youtrack-report__verified-distribution/youtrack-report__verified-distribution.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="report &amp;&amp; report.data" ng-include="\'youtrack-report__simple-bars-widget/youtrack-report__simple-bars-widget.html\'"&gt;&lt;/div&gt;\n')}]),e.exports=t},42330:e=&gt;{var t="youtrack-report__verify-rate/youtrack-report__verify-rate.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div ng-if="report &amp;&amp; report.data"\n     class="youtrack-report__subcontainer"\n     ng-include="\'youtrack-report__rate-widget/youtrack-report__rate-widget.html\'"&gt;&lt;/div&gt;\n')}]),e.exports=t},50717:e=&gt;{var t="youtrack-report__x-axis.html";window.angular.module("widget.youtrackDashboard.report").run(["$templateCache",function(e){e.put(t,'&lt;div class="report-widget__xAxis"&gt;\n    &lt;span class="report-widget__xAxis__i report-widget__xAxis__i_left"&gt;{{rangeStart}}&lt;/span&gt;\n    &lt;span class="report-widget__xAxis__i report-widget__xAxis__i_right"&gt;{{rangeEnd}}&lt;/span&gt;\n&lt;/div&gt;\n')}]),e.exports=t},99996:e=&gt;{e.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMDAiIGhlaWdodD0iMzAwIiB2aWV3Qm94PSIwIDAgNDMwIDQzMCI+PGRlZnMvPjxzdHlsZT4uc3QyMDZ7ZmlsbDojZmZmfS5zdDIwOCwuc3QyMTF7ZmlsbDpub25lO3N0cm9rZTojMDAwO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMH0uc3QyMTF7c3Ryb2tlLXdpZHRoOjh9PC9zdHlsZT48ZyBpZD0iTGF5ZXJfMSI+PHBhdGggZmlsbD0iI2Y2ZmNmZiIgZD0iTTI2MiAxMTAuOWExMjQgMTI0IDAgMDE4Ny42IDIyNS4zYy0xNC41IDkuOC04My40LTIzLjctOTkuNi0yNy40LTMxLjgtNy4yLTE5LjUtNS4xLTM3LjItMzIuMy04LjgtMTMuNi01MS43LTcuMS01NC40LTI0LjRBMTIzLjkgMTIzLjkgMCAwMTI2MiAxMTAuOXoiIG9wYWNpdHk9Ii4xIi8+PHBhdGggZmlsbD0iI2Y2ZmJmZiIgZD0iTTI2MS45IDExMC45QTEyMy44IDEyMy44IDAgMDEzNDkuNSAzMzZjLTE0LjYgOS44LTgzLjEtMjMuNC05OS40LTI3LTMxLjgtNy4xLTE5LjYtNS4zLTM3LjMtMzIuNC04LjktMTMuNi01MS44LTctNTQuNS0yNC40YTEyNCAxMjQgMCAwMTEwMy42LTE0MS4zeiIgb3BhY2l0eT0iLjEiLz48cGF0aCBmaWxsPSIjZjVmYmZmIiBkPSJNMjYxLjkgMTExYTEyMy44IDEyMy44IDAgMDE4Ny44IDIyNC45Yy0xNC42IDkuOC04Mi45LTIzLjEtOTkuMy0yNi43LTMxLjctNy0xOS42LTUuNi0zNy40LTMyLjYtOS0xMy43LTUxLjgtNy01NC41LTI0LjVBMTIzLjYgMTIzLjYgMCAwMTI2MS45IDExMXoiIG9wYWNpdHk9Ii4xIi8+PHBhdGggZmlsbD0iI2Y0ZmJmZiIgZD0iTTI2MS44IDExMWExMjMuNyAxMjMuNyAwIDAxMTQxLjEgMTAzLjQgMTIzLjggMTIzLjggMCAwMS01My4zIDEyMS4zYy0xNC42IDkuOS04Mi43LTIyLjgtOTkuMS0yNi40LTMxLjctNi45LTE5LjctNS44LTM3LjYtMzIuNy05LjEtMTMuNy01MS45LTYuOS01NC42LTI0LjVBMTIzLjkgMTIzLjkgMCAwMTI2MS44IDExMXoiIG9wYWNpdHk9Ii4xIi8+PHBhdGggZmlsbD0iI2YzZmFmZiIgZD0iTTI2MS44IDExMWExMjMuNiAxMjMuNiAwIDAxMTQxIDEwMy40IDEyMy43IDEyMy43IDAgMDEtNTMuMiAxMjEuMWMtMTQuNiA5LjktODIuNS0yMi41LTk4LjktMjYtMzEuNy02LjgtMTkuOC02LjEtMzcuNy0zMi44LTkuMi0xMy43LTUyLTYuOS01NC43LTI0LjZBMTIzLjkgMTIzLjkgMCAwMTI2MS44IDExMXoiIG9wYWNpdHk9Ii4xIi8+PHBhdGggZmlsbD0iI2YzZmFmZiIgZD0iTTI2MS44IDExMWExMjMuNiAxMjMuNiAwIDAxODggMjI0LjRjLTE0LjYgMTAtODIuMi0yMi4yLTk4LjctMjUuNy0zMS42LTYuOC0xOS44LTYuMy0zNy44LTMzLTkuMy0xMy44LTUyLTYuOS01NC44LTI0LjdhMTIzLjUgMTIzLjUgMCAwMTEwMy4zLTE0MXoiIG9wYWNpdHk9Ii4xIi8+PHBhdGggZmlsbD0iI2YyZmFmZiIgZD0iTTI2MS43IDExMS4xYTEyMy41IDEyMy41IDAgMDE4OCAyMjQuMWMtMTQuNiAxMC04Mi0yMS45LTk4LjUtMjUuNC0zMS42LTYuNy0xOS45LTYuNi0zNy45LTMzLjEtOS40LTEzLjgtNTIuMS02LjgtNTQuOC0yNC43YTEyMy40IDEyMy40IDAgMDExMDMuMi0xNDAuOXoiIG9wYWNpdHk9Ii4xIi8+PHBhdGggZmlsbD0iI2YxZmFmZiIgZD0iTTI2MS43IDExMS4xYTEyMy40IDEyMy40IDAgMDE4OCAyMjRjLTE0LjcgMTAtODEuOC0yMS42LTk4LjQtMjUuMS0zMS42LTYuNi0yMC02LjktMzguMS0zMy4zLTkuNS0xMy44LTUyLjEtNi44LTU0LjktMjQuOGExMjMuNiAxMjMuNiAwIDAxMTAzLjQtMTQwLjh6IiBvcGFjaXR5PSIuMSIvPjxwYXRoIGZpbGw9IiNmMGY5ZmYiIGQ9Ik0yNjEuNiAxMTEuMWExMjMuNSAxMjMuNSAwIDAxMTQwLjggMTAzLjIgMTIzLjYgMTIzLjYgMCAwMS01Mi42IDEyMC42Yy0xNC43IDEwLjEtODEuNS0yMS4zLTk4LjItMjQuNy0zMS41LTYuNS0yMC03LjEtMzguMi0zMy40LTkuNi0xMy45LTUyLjItNi43LTU1LTI0LjlhMTIzLjQgMTIzLjQgMCAwMTEwMy4yLTE0MC44eiIgb3BhY2l0eT0iLjEiLz48cGF0aCBmaWxsPSIjZWZmOWZmIiBkPSJNMjYxLjYgMTExLjFhMTIzLjMgMTIzLjMgMCAwMTg4LjIgMjIzLjZjLTE0LjcgMTAuMS04MS4zLTIxLTk4LTI0LjQtMzEuNS02LjQtMjAuMS03LjQtMzguMy0zMy41LTkuNy0xMy45LTUyLjItNi43LTU1LTI0LjlhMTIzLjMgMTIzLjMgMCAwMTEwMy4xLTE0MC44eiIgb3BhY2l0eT0iLjEiLz48cGF0aCBmaWxsPSIjZWZmOWZmIiBkPSJNMjYxLjUgMTExLjJhMTIzLjQgMTIzLjQgMCAwMTE0MC43IDEwMy4xIDEyMy40IDEyMy40IDAgMDEtNTIuNCAxMjAuM2MtMTQuNyAxMC4yLTgxLjEtMjAuNy05Ny44LTI0LjEtMzEuNS02LjQtMjAuMi03LjYtMzguNC0zMy43LTkuNy0xMy45LTUyLjMtNi43LTU1LjEtMjVhMTIzLjEgMTIzLjEgMCAwMTEwMy0xNDAuNnoiIG9wYWNpdHk9Ii4xIi8+PHBhdGggZmlsbD0iI2VlZjhmZiIgZD0iTTI2MS41IDExMS4yYTEyMy4zIDEyMy4zIDAgMDExNDAuNiAxMDMuMSAxMjMuMyAxMjMuMyAwIDAxLTUyLjIgMTIwLjFjLTE0LjcgMTAuMi04MC45LTIwLjQtOTcuNy0yMy43LTMxLjQtNi4zLTIwLjMtNy45LTM4LjYtMzMuOC05LjgtMTQtNTIuMy02LjYtNTUuMi0yNS4xYTEyMy4zIDEyMy4zIDAgMDExMDMuMS0xNDAuNnoiIG9wYWNpdHk9Ii4xIi8+PHBhdGggZmlsbD0iI2VkZjhmZiIgZD0iTTI2MS41IDExMS4yYTEyMy4xIDEyMy4xIDAgMDExNDAuNSAxMDMgMTIzLjQgMTIzLjQgMCAwMS01Mi4xIDEyMGMtMTQuNyAxMC4yLTgwLjYtMjAuMS05Ny41LTIzLjQtMzEuNC02LjItMjAuMy04LjEtMzguNy0zMy45LTkuOS0xNC01Mi40LTYuNi01NS4zLTI1LjFhMTIzLjMgMTIzLjMgMCAwMTEwMy4xLTE0MC42eiIgb3BhY2l0eT0iLjEiLz48cGF0aCBmaWxsPSIjZWNmOGZmIiBkPSJNMjYxLjQgMTExLjJhMTIzLjIgMTIzLjIgMCAwMTE0MC41IDEwMyAxMjMuMiAxMjMuMiAwIDAxLTUyIDExOS44Yy0xNC44IDEwLjMtODAuNC0xOS44LTk3LjMtMjMuMS0zMS40LTYuMS0yMC40LTguNC0zOC44LTM0LjEtMTAtMTQtNTIuNS02LjUtNTUuMy0yNS4yYTEyMy4xIDEyMy4xIDAgMDExMDIuOS0xNDAuNHoiIG9wYWNpdHk9Ii4xIi8+PHBhdGggZmlsbD0iI2VjZjdmZiIgZD0iTTI2MS40IDExMS4zYTEyMyAxMjMgMCAwMTE0MC40IDEwMi45IDEyMy4xIDEyMy4xIDAgMDEtNTEuOSAxMTkuN2MtMTQuOCAxMC4zLTgwLjItMTkuNS05Ny4xLTIyLjctMzEuMy02LjEtMjAuNS04LjYtMzguOS0zNC4yLTEwLjEtMTQuMS01Mi41LTYuNS01NS40LTI1LjNhMTIzIDEyMyAwIDAxMTAyLjktMTQwLjR6IiBvcGFjaXR5PSIuMSIvPjxwYXRoIGZpbGw9IiNlYmY3ZmYiIGQ9Ik0yNjEuMyAxMTEuM2ExMjMgMTIzIDAgMDExNDAuMyAxMDIuOSAxMjMgMTIzIDAgMDEtNTEuNyAxMTkuNWMtMTQuOCAxMC40LTgwLTE5LjItOTctMjIuNC0zMS4zLTYtMjAuNi04LjktMzkuMS0zNC40LTEwLjItMTQuMS01Mi42LTYuNC01NS41LTI1LjNhMTIzLjMgMTIzLjMgMCAwMTEwMy0xNDAuM3oiIG9wYWNpdHk9Ii4xIi8+PHBhdGggZmlsbD0iI2VhZjdmZiIgZD0iTTI2MS4zIDExMS4zYTEyMyAxMjMgMCAwMTE0MC4zIDEwMi45QTEyMyAxMjMgMCAwMTM1MCAzMzMuNmMtMTQuOCAxMC40LTc5LjctMTguOS05Ni44LTIyLjEtMzEuMy01LjktMjAuNi05LjEtMzkuMi0zNC41LTEwLjMtMTQuMS01Mi42LTYuNC01NS41LTI1LjRhMTIyLjkgMTIyLjkgMCAwMTEwMi44LTE0MC4zeiIgb3BhY2l0eT0iLjEiLz48cGF0aCBmaWxsPSIjZTlmN2ZmIiBkPSJNMjYxLjIgMTExLjNhMTIzIDEyMyAwIDAxMTQwLjIgMTAyLjggMTIyLjggMTIyLjggMCAwMS01MS41IDExOS4yYy0xNC44IDEwLjQtNzkuNS0xOC42LTk2LjYtMjEuOC0zMS4yLTUuOC0yMC43LTkuNC0zOS4zLTM0LjYtMTAuNC0xNC4xLTUyLjctNi40LTU1LjYtMjUuNGExMjMgMTIzIDAgMDExMDIuOC0xNDAuMnoiIG9wYWNpdHk9Ii4xIi8+PHBhdGggZmlsbD0iI2U4ZjZmZiIgZD0iTTI2MS4yIDExMS40YTEyMi43IDEyMi43IDAgMDExNDAuMSAxMDIuN0ExMjMgMTIzIDAgMDEzNTAgMzMzLjJjLTE0LjggMTAuNS03OS4zLTE4LjMtOTYuNC0yMS40LTMxLjItNS43LTIwLjgtOS42LTM5LjQtMzQuOC0xMC41LTE0LjItNTIuNy02LjMtNTUuNy0yNS41YTEyMi43IDEyMi43IDAgMDExMDIuNy0xNDAuMXoiIG9wYWNpdHk9Ii4xIi8+PHBhdGggZmlsbD0iI2U4ZjZmZiIgZD0iTTI2MS4xIDExMS40YTEyMi45IDEyMi45IDAgMDExNDAuMSAxMDIuN0ExMjIuNyAxMjIuNyAwIDAxMzUwIDMzM2MtMTQuOSAxMC41LTc5LTE4LTk2LjMtMjEuMS0zMS4xLTUuNy0yMC45LTkuOS0zOS42LTM0LjktMTAuNi0xNC4yLTUyLjgtNi4zLTU1LjgtMjUuNmExMjMgMTIzIDAgMDExMDIuOC0xNDB6IiBvcGFjaXR5PSIuMSIvPjxwYXRoIGZpbGw9IiNlN2Y2ZmYiIGQ9Ik0yNjEuMSAxMTEuNGExMjIuNyAxMjIuNyAwIDAxMTQwIDEwMi43QTEyMi44IDEyMi44IDAgMDEzNTAgMzMyLjljLTE0LjkgMTAuNi03OC44LTE3LjctOTYuMS0yMC44LTMxLjEtNS42LTIxLTEwLjEtMzkuNy0zNS0xMC43LTE0LjItNTIuOC02LjItNTUuOC0yNS42YTEyMi44IDEyMi44IDAgMDExMDIuNy0xNDAuMXoiIG9wYWNpdHk9Ii4yIi8+PHBhdGggZmlsbD0iI2U2ZjVmZiIgZD0iTTI2MS4xIDExMS40YTEyMi44IDEyMi44IDAgMDExNDAgMTAyLjYgMTIzLjEgMTIzLjEgMCAwMS01MC45IDExOC43Yy0xNC45IDEwLjYtNzguNi0xNy40LTk1LjktMjAuNC0zMS4xLTUuNS0yMS4xLTEwLjQtMzkuOC0zNS4yLTEwLjgtMTQuMy01Mi45LTYuMi01NS45LTI1LjdhMTIyLjUgMTIyLjUgMCAwMTEwMi41LTE0MHoiIG9wYWNpdHk9Ii4yIi8+PHBhdGggZmlsbD0iI2U1ZjVmZiIgZD0iTTI2MSAxMTEuNWExMjIuNiAxMjIuNiAwIDAxMTM5LjkgMTAyLjYgMTIyLjcgMTIyLjcgMCAwMS01MC44IDExOC41Yy0xNC45IDEwLjYtNzguNC0xNy4xLTk1LjctMjAuMS0zMS01LjQtMjEuMS0xMC42LTQwLTM1LjMtMTAuOS0xNC4zLTUzLTYuMi01Ni0yNS44QTEyMi43IDEyMi43IDAgMDEyNjEgMTExLjV6IiBvcGFjaXR5PSIuMiIvPjxwYXRoIGZpbGw9IiNlNWY1ZmYiIGQ9Ik0yNjEgMTExLjVBMTIyLjYgMTIyLjYgMCAwMTQwMC44IDIxNGExMjIuOCAxMjIuOCAwIDAxLTUwLjcgMTE4LjRjLTE0LjkgMTAuNy03OC4xLTE2LjgtOTUuNi0xOS44LTMxLTUuNC0yMS4yLTEwLjktNDAuMS0zNS40LTExLTE0LjMtNTMtNi4xLTU2LTI1LjhBMTIyLjcgMTIyLjcgMCAwMTI2MSAxMTEuNXoiIG9wYWNpdHk9Ii4yIi8+PHBhdGggZmlsbD0iI2U0ZjRmZiIgZD0iTTI2MC45IDExMS41QTEyMi42IDEyMi42IDAgMDE0MDAuNyAyMTRhMTIyLjUgMTIyLjUgMCAwMS01MC41IDExOC4yYy0xNC45IDEwLjctNzcuOS0xNi41LTk1LjQtMTkuNC0zMS01LjMtMjEuMy0xMS4xLTQwLjItMzUuNi0xMS4xLTE0LjQtNTMuMS02LjEtNTYuMS0yNS45YTEyMi41IDEyMi41IDAgMDExMDIuNC0xMzkuOHoiIG9wYWNpdHk9Ii4yIi8+PHBhdGggZmlsbD0iI2UzZjRmZiIgZD0iTTI2MC45IDExMS41YTEyMi41IDEyMi41IDAgMDExMzkuNyAxMDIuNGM3LjMgNDcuMy0xNC4xIDkyLTUwLjQgMTE4LjEtMTQuOSAxMC44LTc3LjctMTYuMi05NS4yLTE5LjEtMzAuOS01LjItMjEuNC0xMS40LTQwLjMtMzUuNy0xMS4yLTE0LjQtNTMuMS02LTU2LjItMjZhMTIyLjUgMTIyLjUgMCAwMTEwMi40LTEzOS43eiIgb3BhY2l0eT0iLjIiLz48cGF0aCBmaWxsPSIjZTJmNGZmIiBkPSJNMjYwLjggMTExLjZBMTIyLjMgMTIyLjMgMCAwMTQwMC40IDIxNGExMjIuNSAxMjIuNSAwIDAxLTUwLjMgMTE3LjljLTE1IDEwLjgtNzcuNC0xNS45LTk1LTE4LjgtMzAuOS01LjEtMjEuNS0xMS42LTQwLjUtMzUuOS0xMS4zLTE0LjQtNTMuMi02LTU2LjMtMjZhMTIyLjYgMTIyLjYgMCAwMTEwMi41LTEzOS42eiIgb3BhY2l0eT0iLjIiLz48cGF0aCBmaWxsPSIjZTJmM2ZmIiBkPSJNMjYwLjggMTExLjZhMTIyLjQgMTIyLjQgMCAwMTEzOS42IDEwMi4zYzcuMyA0Ny4yLTE0IDkxLjctNTAuMSAxMTcuOC0xNSAxMC44LTc3LjItMTUuNi05NC45LTE4LjUtMzAuOS01LjEtMjEuNi0xMS45LTQwLjYtMzYtMTEuNC0xNC41LTUzLjItNi01Ni4zLTI2LjFhMTIyLjMgMTIyLjMgMCAwMTEwMi4zLTEzOS41eiIgb3BhY2l0eT0iLjIiLz48cGF0aCBmaWxsPSIjZTFmM2ZmIiBkPSJNMjYwLjggMTExLjZhMTIyLjMgMTIyLjMgMCAwMTEzOS41IDEwMi4zYzcuMyA0Ny4xLTE0IDkxLjUtNTAgMTE3LjYtMTUgMTAuOS03Ny0xNS4zLTk0LjctMTguMS0zMC44LTUtMjEuNy0xMi4xLTQwLjctMzYuMS0xMS41LTE0LjUtNTMuMy01LjktNTYuNC0yNi4xYTEyMi40IDEyMi40IDAgMDExMDIuMy0xMzkuNnoiIG9wYWNpdHk9Ii4yIi8+PHBhdGggZmlsbD0iI2UwZjNmZiIgZD0iTTI2MC43IDExMS42YTEyMi4zIDEyMi4zIDAgMDExMzkuNSAxMDIuMmM3LjIgNDctMTMuOSA5MS40LTQ5LjkgMTE3LjUtMTUgMTAuOS03Ni43LTE1LTk0LjUtMTcuOC0zMC44LTQuOS0yMS44LTEyLjMtNDAuOC0zNi4zLTExLjYtMTQuNS01My4zLTUuOS01Ni41LTI2LjJhMTIyLjIgMTIyLjIgMCAwMTEwMi4yLTEzOS40eiIgb3BhY2l0eT0iLjIiLz48cGF0aCBmaWxsPSIjZGZmM2ZmIiBkPSJNMjYwLjcgMTExLjdhMTIyLjIgMTIyLjIgMCAwMTEzOS40IDEwMi4yIDEyMi4zIDEyMi4zIDAgMDEtNDkuNyAxMTcuM2MtMTUgMTEtNzYuNS0xNC43LTk0LjMtMTcuNS0zMC44LTQuOC0yMS44LTEyLjYtNDEtMzYuNC0xMS43LTE0LjYtNTMuNC01LjgtNTYuNS0yNi4zYTEyMiAxMjIgMCAwMTEwMi4xLTEzOS4zeiIgb3BhY2l0eT0iLjIiLz48cGF0aCBmaWxsPSIjZGVmMmZmIiBkPSJNMjYwLjYgMTExLjdhMTIyIDEyMiAwIDAxMTM5LjMgMTAyLjFBMTIyLjMgMTIyLjMgMCAwMTM1MC4zIDMzMWMtMTUgMTEtNzYuMy0xNC40LTk0LjItMTcuMS0zMC43LTQuOC0yMS45LTEyLjgtNDEuMS0zNi41LTExLjgtMTQuNi01My41LTUuOC01Ni42LTI2LjNhMTIyLjIgMTIyLjIgMCAwMTEwMi4yLTEzOS40eiIgb3BhY2l0eT0iLjIiLz48cGF0aCBmaWxsPSIjZGVmMmZmIiBkPSJNMjYwLjYgMTExLjdhMTIyLjEgMTIyLjEgMCAwMTEzOS4zIDEwMi4xIDEyMiAxMjIgMCAwMS00OS41IDExN2MtMTUuMSAxMS03Ni4xLTE0LjEtOTQtMTYuOC0zMC43LTQuNy0yMi0xMy4xLTQxLjItMzYuNy0xMS45LTE0LjYtNTMuNS01LjgtNTYuNy0yNi40YTEyMiAxMjIgMCAwMTEwMi4xLTEzOS4yeiIgb3BhY2l0eT0iLjIiLz48cGF0aCBmaWxsPSIjZGRmMmZmIiBkPSJNMjYwLjUgMTExLjdhMTIyIDEyMiAwIDAxMTM5LjIgMTAyLjEgMTIyLjIgMTIyLjIgMCAwMS00OS4zIDExNi45Yy0xNS4xIDExLjEtNzUuOC0xMy44LTkzLjgtMTYuNS0zMC42LTQuNi0yMi4xLTEzLjMtNDEuMy0zNi44LTEyLTE0LjctNTMuNi01LjctNTYuOC0yNi41YTEyMiAxMjIgMCAwMTEwMi0xMzkuMnoiIG9wYWNpdHk9Ii4yIi8+PHBhdGggZmlsbD0iI2RjZjFmZiIgZD0iTTI2MC41IDExMS44YTEyMS45IDEyMS45IDAgMDExMzkuMSAxMDIgMTIyIDEyMiAwIDAxLTQ5LjIgMTE2LjhjLTE1LjEgMTEuMS03NS42LTEzLjUtOTMuNi0xNi4xLTMwLjYtNC42LTIyLjItMTMuNi00MS41LTM2LjktMTIuMS0xNC43LTUzLjYtNS43LTU2LjgtMjYuNWExMjIgMTIyIDAgMDExMDItMTM5LjN6IiBvcGFjaXR5PSIuMiIvPjxwYXRoIGZpbGw9IiNkYmYxZmYiIGQ9Ik0yNjAuNCAxMTEuOGExMjIgMTIyIDAgMDExMzkuMSAxMDIgMTIxLjggMTIxLjggMCAwMS00OS4xIDExNi42Yy0xNS4xIDExLjItNzUuNC0xMy4yLTkzLjUtMTUuOC0zMC42LTQuNS0yMi4zLTEzLjgtNDEuNi0zNy4xLTEyLjItMTQuNy01My43LTUuNi01Ni45LTI2LjZhMTIyIDEyMiAwIDAxMTAyLTEzOS4xeiIgb3BhY2l0eT0iLjIiLz48cGF0aCBmaWxsPSIjZGJmMWZmIiBkPSJNMjYwLjQgMTExLjhhMTIyIDEyMiAwIDAxMTM5IDEwMS45IDEyMi4xIDEyMi4xIDAgMDEtNDguOSAxMTYuNWMtMTUuMSAxMS4yLTc1LjEtMTIuOS05My4zLTE1LjUtMzAuNS00LjQtMjIuNC0xNC00MS43LTM3LjItMTIuMy0xNC44LTUzLjctNS42LTU3LTI2LjdhMTIxLjggMTIxLjggMCAwMTEwMS45LTEzOXoiIG9wYWNpdHk9Ii4yIi8+PHBhdGggZmlsbD0iI2RhZjBmZiIgZD0iTTI2MC40IDExMS44YTEyMS44IDEyMS44IDAgMDExMzguOSAxMDEuOUExMjEuNyAxMjEuNyAwIDAxMzUwLjUgMzMwYy0xNS4xIDExLjItNzQuOS0xMi42LTkzLjEtMTUuMi0zMC41LTQuMy0yMi41LTE0LjMtNDEuOS0zNy40LTEyLjQtMTQuOC01My44LTUuNi01Ny4xLTI2LjdhMTIyIDEyMiAwIDAxMTAyLTEzOC45eiIgb3BhY2l0eT0iLjIiLz48cGF0aCBmaWxsPSIjZDlmMGZmIiBkPSJNMjYwLjMgMTExLjlhMTIxLjkgMTIxLjkgMCAwMTEzOC45IDEwMS44IDEyMiAxMjIgMCAwMS00OC43IDExNi4yYy0xNS4yIDExLjMtNzQuNy0xMi4zLTkyLjktMTQuOC0zMC41LTQuMy0yMi42LTE0LjUtNDItMzcuNS0xMi41LTE0LjgtNTMuOC01LjUtNTcuMS0yNi44YTEyMS43IDEyMS43IDAgMDExMDEuOC0xMzguOXoiIG9wYWNpdHk9Ii4yIi8+PHBhdGggZmlsbD0iI2Q4ZjBmZiIgZD0iTTI2MC4zIDExMS45YTEyMS43IDEyMS43IDAgMDExMzguOCAxMDEuOCAxMjEuNyAxMjEuNyAwIDAxLTQ4LjUgMTE2Yy0xNS4yIDExLjMtNzQuNS0xMi05Mi43LTE0LjUtMzAuNC00LjItMjIuNy0xNC44LTQyLjEtMzcuNi0xMi42LTE0LjktNTMuOS01LjUtNTcuMi0yNi45YTEyMS42IDEyMS42IDAgMDExMDEuNy0xMzguOHoiIG9wYWNpdHk9Ii4yIi8+PHBhdGggZmlsbD0iI2Q3ZjBmZiIgZD0iTTI2MC4yIDExMS45QTEyMS44IDEyMS44IDAgMDEzOTkgMjEzLjZhMTIxLjkgMTIxLjkgMCAwMS00OC40IDExNS45Yy0xNS4yIDExLjQtNzQuMi0xMS43LTkyLjYtMTQuMi0zMC40LTQuMS0yMi44LTE1LTQyLjItMzcuOC0xMi43LTE0LjktNTQtNS40LTU3LjMtMjYuOWExMjEuNyAxMjEuNyAwIDAxMTAxLjctMTM4Ljd6IiBvcGFjaXR5PSIuMyIvPjxwYXRoIGZpbGw9IiNkN2VmZmYiIGQ9Ik0yNjAuMiAxMTEuOWExMjEuNiAxMjEuNiAwIDAxMTM4LjcgMTAxLjcgMTIxLjYgMTIxLjYgMCAwMS00OC4zIDExNS43Yy0xNS4yIDExLjQtNzQtMTEuNC05Mi40LTEzLjgtMzAuMy00LjEtMjIuOS0xNS4zLTQyLjQtMzcuOS0xMi44LTE0LjktNTQtNS40LTU3LjMtMjdhMTIxLjYgMTIxLjYgMCAwMTEwMS43LTEzOC43eiIgb3BhY2l0eT0iLjMiLz48cGF0aCBmaWxsPSIjZDZlZmZmIiBkPSJNMjYwLjEgMTEyYTEyMS42IDEyMS42IDAgMDExMzguNiAxMDEuNiAxMjEuNiAxMjEuNiAwIDAxLTQ4LjEgMTE1LjZjLTE1LjIgMTEuNC03My44LTExLjEtOTIuMi0xMy41LTMwLjMtNC0yMy0xNS41LTQyLjUtMzgtMTIuOS0xNC45LTU0LjEtNS4zLTU3LjQtMjdBMTIxLjUgMTIxLjUgMCAwMTI2MC4xIDExMnoiIG9wYWNpdHk9Ii4zIi8+PHBhdGggZmlsbD0iI2Q1ZWZmZiIgZD0iTTI2MC4xIDExMmExMjEuNiAxMjEuNiAwIDAxMTM4LjYgMTAxLjZjNy4xIDQ2LTEzLjQgODkuMy00OCAxMTUuNC0xNS4yIDExLjUtNzMuNS0xMC44LTkyLTEzLjItMzAuMy0zLjktMjMuMS0xNS43LTQyLjYtMzguMi0xMy0xNS01NC4xLTUuMy01Ny41LTI3LjFBMTIxLjMgMTIxLjMgMCAwMTI2MC4xIDExMnoiIG9wYWNpdHk9Ii4zIi8+PHBhdGggZmlsbD0iI2Q0ZWVmZiIgZD0iTTI2MC4xIDExMmExMjEuNSAxMjEuNSAwIDAxMTM4LjUgMTAxLjUgMTIxLjMgMTIxLjMgMCAwMS00Ny45IDExNS4zYy0xNS4yIDExLjUtNzMuMy0xMC41LTkxLjktMTIuOC0zMC4yLTMuOS0yMy4yLTE2LTQyLjctMzguMy0xMy4xLTE1LTU0LjItNS4zLTU3LjYtMjcuMkExMjEuNSAxMjEuNSAwIDAxMjYwLjEgMTEyeiIgb3BhY2l0eT0iLjMiLz48cGF0aCBmaWxsPSIjZDRlZWZmIiBkPSJNMjYwIDExMmExMjEuMyAxMjEuMyAwIDAxMTM4LjQgMTAxLjVjNy4xIDQ1LjktMTMuMyA4OS00Ny43IDExNS4xLTE1LjMgMTEuNi03My4xLTEwLjItOTEuNy0xMi41LTMwLjItMy44LTIzLjMtMTYuMi00Mi45LTM4LjQtMTMuMi0xNS01NC4yLTUuMi01Ny42LTI3LjJBMTIxLjUgMTIxLjUgMCAwMTI2MCAxMTJ6IiBvcGFjaXR5PSIuMyIvPjxwYXRoIGZpbGw9IiNkM2VlZmYiIGQ9Ik0yNjAgMTEyLjFhMTIxLjMgMTIxLjMgMCAwMTEzOC40IDEwMS40IDEyMS4zIDEyMS4zIDAgMDEtNDcuNiAxMTVjLTE1LjMgMTEuNi03Mi44LTkuOS05MS41LTEyLjItMzAuMi0zLjctMjMuNC0xNi41LTQzLTM4LjYtMTMuMy0xNS4xLTU0LjMtNS4yLTU3LjctMjcuM0ExMjEgMTIxIDAgMDEyNjAgMTEyLjF6IiBvcGFjaXR5PSIuMyIvPjxwYXRoIGZpbGw9IiNkMmVkZmYiIGQ9Ik0yNTkuOSAxMTIuMWExMjEuMiAxMjEuMiAwIDAxMTM4LjMgMTAxLjRjNyA0NS43LTEzLjIgODguNy00Ny41IDExNC44LTE1LjMgMTEuNy03Mi42LTkuNi05MS4zLTExLjktMzAuMS0zLjctMjMuNS0xNi43LTQzLjEtMzguNy0xMy41LTE1LjEtNTQuMy01LjEtNTcuOC0yNy40YTEyMS4yIDEyMS4yIDAgMDExMDEuNC0xMzguMnoiIG9wYWNpdHk9Ii4zIi8+PHBhdGggZmlsbD0iI2QxZWRmZiIgZD0iTTI1OS45IDExMi4xYTEyMS4xIDEyMS4xIDAgMDExMzguMiAxMDEuNGM3IDQ1LjYtMTMuMiA4OC42LTQ3LjMgMTE0LjctMTUuMyAxMS43LTcyLjQtOS4zLTkxLjItMTEuNS0zMC4xLTMuNi0yMy42LTE2LjktNDMuMi0zOC45LTEzLjYtMTUuMS01NC40LTUuMS01Ny44LTI3LjRhMTIxLjEgMTIxLjEgMCAwMTEwMS4zLTEzOC4zeiIgb3BhY2l0eT0iLjMiLz48cGF0aCBmaWxsPSIjZDBlZGZmIiBkPSJNMjU5LjggMTEyLjFBMTIxLjIgMTIxLjIgMCAwMTM5OCAyMTMuNGM3IDQ1LjYtMTMuMSA4OC40LTQ3LjIgMTE0LjYtMTUuMyAxMS43LTcyLjItOS05MS0xMS4yLTMwLTMuNS0yMy43LTE3LjItNDMuNC0zOS0xMy43LTE1LjItNTQuNS01LjEtNTcuOS0yNy41YTEyMS4yIDEyMS4yIDAgMDExMDEuMy0xMzguMnoiIG9wYWNpdHk9Ii4zIi8+PHBhdGggZmlsbD0iI2QwZWNmZiIgZD0iTTI1OS44IDExMi4yYTEyMS4xIDEyMS4xIDAgMDExMzguMSAxMDEuM2M3IDQ1LjUtMTMuMSA4OC4zLTQ3LjEgMTE0LjQtMTUuMyAxMS44LTcxLjktOC43LTkwLjgtMTAuOS0zMC0zLjUtMjMuOC0xNy40LTQzLjUtMzkuMS0xMy44LTE1LjItNTQuNS01LTU4LTI3LjZhMTIxLjEgMTIxLjEgMCAwMTEwMS4zLTEzOC4xeiIgb3BhY2l0eT0iLjMiLz48cGF0aCBmaWxsPSIjY2ZlY2ZmIiBkPSJNMjU5LjggMTEyLjJhMTIxIDEyMSAwIDAxMTM4LjEgMTAxLjIgMTIxIDEyMSAwIDAxLTQ3IDExNC4zYy0xNS4zIDExLjgtNzEuNy04LjQtOTAuNi0xMC41LTMwLTMuNC0yMy45LTE3LjYtNDMuNi0zOS4zLTEzLjktMTUuMi01NC42LTUtNTguMS0yNy42YTEyMSAxMjEgMCAwMTEwMS4yLTEzOC4xeiIgb3BhY2l0eT0iLjMiLz48cGF0aCBmaWxsPSIjY2VlY2ZmIiBkPSJNMjU5LjcgMTEyLjJhMTIxIDEyMSAwIDAxMTM4IDEwMS4yYzcgNDUuNC0xMyA4OC00Ni44IDExNC4xLTE1LjQgMTEuOS03MS41LTguMS05MC41LTEwLjItMjkuOS0zLjMtMjQtMTcuOS00My43LTM5LjQtMTQtMTUuMi01NC42LTQuOS01OC4xLTI3LjdhMTIxIDEyMSAwIDAxMTAxLjEtMTM4eiIgb3BhY2l0eT0iLjMiLz48cGF0aCBmaWxsPSIjY2RlY2ZmIiBkPSJNMjU5LjcgMTEyLjJhMTIwLjggMTIwLjggMCAwMTEzNy45IDEwMS4xIDEyMSAxMjEgMCAwMS00Ni43IDExNGMtMTUuNCAxMS45LTcxLjItNy44LTkwLjMtOS45LTI5LjktMy4zLTI0LjEtMTguMS00My45LTM5LjUtMTQuMS0xNS4zLTU0LjctNC45LTU4LjItMjcuN2ExMjEgMTIxIDAgMDExMDEuMi0xMzh6IiBvcGFjaXR5PSIuMyIvPjxwYXRoIGZpbGw9IiNjZGViZmYiIGQ9Ik0yNTkuNiAxMTIuMmExMjAuOSAxMjAuOSAwIDAxMTM3LjkgMTAxLjFjNyA0NS4yLTEyLjkgODcuNy00Ni42IDExMy44LTE1LjQgMTEuOS03MS03LjUtOTAuMS05LjUtMjkuOS0zLjItMjQuMi0xOC4zLTQ0LTM5LjctMTQuMi0xNS4zLTU0LjctNC45LTU4LjMtMjcuOGExMjEgMTIxIDAgMDExMDEuMS0xMzcuOXoiIG9wYWNpdHk9Ii4zIi8+PHBhdGggZmlsbD0iI2NjZWJmZiIgZD0iTTI1OS42IDExMi4zYTEyMC44IDEyMC44IDAgMDExMzcuOCAxMDFjNyA0NS4xLTEyLjkgODcuNi00Ni40IDExMy43LTE1LjQgMTItNzAuOC03LjItODkuOS05LjItMjkuOC0zLjEtMjQuMy0xOC42LTQ0LjEtMzkuOC0xNC4zLTE1LjMtNTQuOC00LjgtNTguMy0yNy45YTEyMC41IDEyMC41IDAgMDExMDAuOS0xMzcuOHoiIG9wYWNpdHk9Ii4zIi8+PHBhdGggZmlsbD0iI2NiZWJmZiIgZD0iTTI1OS41IDExMi4zYTEyMC43IDEyMC43IDAgMDExMzcuNyAxMDEgMTIwLjcgMTIwLjcgMCAwMS00Ni4zIDExMy41Yy0xNS40IDEyLTcwLjUtNi45LTg5LjgtOC45LTI5LjgtMy4xLTI0LjQtMTguOC00NC4zLTM5LjktMTQuNC0xNS40LTU0LjktNC44LTU4LjQtMjcuOWExMjEgMTIxIDAgMDExMDEuMS0xMzcuOHoiIG9wYWNpdHk9Ii4zIi8+PHBhdGggZmlsbD0iI2NhZWFmZiIgZD0iTTI1OS41IDExMi4zYTEyMC44IDEyMC44IDAgMDExMzcuNyAxMDAuOWM2LjkgNDUtMTIuOCA4Ny4zLTQ2LjIgMTEzLjQtMTUuNCAxMi4xLTcwLjMtNi42LTg5LjYtOC42LTI5LjctMy0yNC41LTE5LjEtNDQuNC00MC4xLTE0LjUtMTUuNC01NC45LTQuNy01OC41LTI4YTEyMC44IDEyMC44IDAgMDExMDEtMTM3LjZ6IiBvcGFjaXR5PSIuMyIvPjxwYXRoIGZpbGw9IiNjOWVhZmYiIGQ9Ik0yNTkuNCAxMTIuM0ExMjAuNiAxMjAuNiAwIDAxMzk3IDIxMy4yYTEyMC41IDEyMC41IDAgMDEtNDYgMTEzLjJjLTE1LjUgMTIuMS03MC4xLTYuMy04OS40LTguMi0yOS43LTIuOS0yNC42LTE5LjMtNDQuNS00MC4yLTE0LjYtMTUuNC01NS00LjctNTguNi0yOC4xYTEyMC44IDEyMC44IDAgMDExMDAuOS0xMzcuNnoiIG9wYWNpdHk9Ii4zIi8+PHBhdGggZmlsbD0iI2M5ZWFmZiIgZD0iTTI1OS40IDExMi40YTEyMC42IDEyMC42IDAgMDExMzcuNSAxMDAuOGM2LjkgNDQuOS0xMi43IDg3LTQ1LjkgMTEzLjEtMTUuNSAxMi4yLTY5LjgtNi04OS4yLTcuOS0yOS43LTIuOS0yNC44LTE5LjUtNDQuNi00MC40LTE0LjctMTUuNC01NS00LjctNTguNi0yOC4xYTEyMC41IDEyMC41IDAgMDExMDAuOC0xMzcuNXoiIG9wYWNpdHk9Ii4zIi8+PHBhdGggZmlsbD0iI2M4ZTlmZiIgZD0iTTI1OS40IDExMi40YTEyMC42IDEyMC42IDAgMDExMzcuNSAxMDAuOCAxMjAuNCAxMjAuNCAwIDAxLTQ1LjggMTEyLjljLTE1LjUgMTIuMi02OS42LTUuNy04OS4xLTcuNi0yOS42LTIuOC0yNC45LTE5LjgtNDQuOC00MC41LTE0LjgtMTUuNS01NS4xLTQuNi01OC43LTI4LjJhMTIwLjYgMTIwLjYgMCAwMTEwMC45LTEzNy40eiIgb3BhY2l0eT0iLjQiLz48cGF0aCBmaWxsPSIjYzdlOWZmIiBkPSJNMjU5LjMgMTEyLjRhMTIwLjUgMTIwLjUgMCAwMTEzNy40IDEwMC44QTEyMC41IDEyMC41IDAgMDEzNTEuMSAzMjZjLTE1LjUgMTIuMi02OS40LTUuNC04OC45LTcuMi0yOS42LTIuNy0yNS0yMC00NC45LTQwLjYtMTUtMTUuNS01NS4xLTQuNi01OC44LTI4LjNhMTIwLjYgMTIwLjYgMCAwMTEwMC44LTEzNy41eiIgb3BhY2l0eT0iLjQiLz48cGF0aCBmaWxsPSIjYzZlOWZmIiBkPSJNMjU5LjMgMTEyLjRhMTIwLjYgMTIwLjYgMCAwMTEzNy40IDEwMC43IDEyMC41IDEyMC41IDAgMDEtNDUuNSAxMTIuN2MtMTUuNSAxMi4zLTY5LjItNS4xLTg4LjctNi45LTI5LjUtMi43LTI1LjEtMjAuMi00NS00MC44LTE1LjEtMTUuNS01NS4yLTQuNS01OC44LTI4LjNhMTIwLjMgMTIwLjMgMCAwMTEwMC42LTEzNy40eiIgb3BhY2l0eT0iLjQiLz48cGF0aCBmaWxsPSIjYzZlOWZmIiBkPSJNMjU5LjIgMTEyLjVhMTIwLjQgMTIwLjQgMCAwMTEzNy4zIDEwMC43IDEyMC4xIDEyMC4xIDAgMDEtNDUuNCAxMTIuNWMtMTUuNSAxMi4zLTY4LjktNC44LTg4LjUtNi42LTI5LjUtMi42LTI1LjItMjAuNC00NS4xLTQwLjktMTUuMi0xNS42LTU1LjItNC41LTU4LjktMjguNGExMjAuNCAxMjAuNCAwIDAxMTAwLjYtMTM3LjN6IiBvcGFjaXR5PSIuNCIvPjxwYXRoIGZpbGw9IiNjNWU4ZmYiIGQ9Ik0yNTkuMiAxMTIuNWExMjAuMyAxMjAuMyAwIDAxMTM3LjIgMTAwLjYgMTIwLjQgMTIwLjQgMCAwMS00NS4yIDExMi40Yy0xNS41IDEyLjQtNjguNy00LjUtODguNC02LjItMjkuNS0yLjYtMjUuMy0yMC43LTQ1LjMtNDEtMTUuMy0xNS42LTU1LjMtNC41LTU5LTI4LjUtMTAtNjUuOCAzNS0xMjcuMiAxMDAuNy0xMzcuM3oiIG9wYWNpdHk9Ii40Ii8+PHBhdGggZmlsbD0iI2M0ZThmZiIgZD0iTTI1OS4xIDExMi41YTEyMC4zIDEyMC4zIDAgMDExMzcuMiAxMDAuNiAxMjAuMiAxMjAuMiAwIDAxLTQ1LjEgMTEyLjJjLTE1LjYgMTIuNC02OC41LTQuMi04OC4yLTUuOS0yOS40LTIuNS0yNS40LTIwLjktNDUuNC00MS4yLTE1LjQtMTUuNi01NS40LTQuNC01OS4xLTI4LjUtMTAtNjUuNyAzNS0xMjcuMSAxMDAuNi0xMzcuMnoiIG9wYWNpdHk9Ii40Ii8+PHBhdGggZmlsbD0iI2MzZThmZiIgZD0iTTI1OS4xIDExMi41QTEyMC4yIDEyMC4yIDAgMDEzOTYuMiAyMTNjNi44IDQ0LjMtMTIuNCA4Ni00NSAxMTIuMS0xNS42IDEyLjUtNjguMi0zLjktODgtNS42LTI5LjQtMi40LTI1LjUtMjEuMS00NS41LTQxLjMtMTUuNS0xNS42LTU1LjQtNC40LTU5LjEtMjguNmExMjAuMiAxMjAuMiAwIDAxMTAwLjUtMTM3LjF6IiBvcGFjaXR5PSIuNCIvPjxwYXRoIGZpbGw9IiNjMmU3ZmYiIGQ9Ik0yNTkuMSAxMTIuNmExMjAuMSAxMjAuMSAwIDAxMTM3IDEwMC41QTEyMC4yIDEyMC4yIDAgMDEzNTEuMyAzMjVjLTE1LjYgMTIuNS02OC0zLjctODcuOC01LjMtMjkuMy0yLjQtMjUuNi0yMS40LTQ1LjYtNDEuNS0xNS42LTE1LjctNTUuNS00LjMtNTkuMi0yOC42YTEyMCAxMjAgMCAwMTEwMC40LTEzN3oiIG9wYWNpdHk9Ii40Ii8+PHBhdGggZmlsbD0iI2MyZTdmZiIgZD0iTTI1OSAxMTIuNkExMjAuMSAxMjAuMSAwIDAxMzk2IDIxM2ExMjAuMSAxMjAuMSAwIDAxLTQ0LjcgMTExLjhjLTE1LjYgMTIuNS02Ny44LTMuNC04Ny43LTQuOS0yOS4zLTIuMy0yNS43LTIxLjYtNDUuOC00MS42LTE1LjctMTUuNy01NS41LTQuMy01OS4zLTI4LjctMTAtNjUuNiAzNS0xMjYuOSAxMDAuNS0xMzd6IiBvcGFjaXR5PSIuNCIvPjxwYXRoIGZpbGw9IiNjMWU3ZmYiIGQ9Ik0yNTkgMTEyLjZBMTIwIDEyMCAwIDAxMzk1LjkgMjEzYTEyMCAxMjAgMCAwMS00NC42IDExMS42Yy0xNS42IDEyLjYtNjcuNS0zLjEtODcuNS00LjYtMjkuMy0yLjItMjUuOS0yMS44LTQ1LjktNDEuNy0xNS44LTE1LjctNTUuNi00LjItNTkuNC0yOC44QTEyMC4xIDEyMC4xIDAgMDEyNTkgMTEyLjZ6IiBvcGFjaXR5PSIuNCIvPjxwYXRoIGZpbGw9IiNjMGU2ZmYiIGQ9Ik0yNTguOSAxMTIuNmExMjAgMTIwIDAgMDExMzYuOSAxMDAuMyAxMTkuOSAxMTkuOSAwIDAxLTQ0LjQgMTExLjVjLTE1LjYgMTIuNi02Ny4zLTIuOC04Ny4zLTQuMy0yOS4yLTIuMi0yNi0yMi4xLTQ2LTQxLjktMTYtMTUuNy01NS42LTQuMi01OS40LTI4LjhhMTE5LjggMTE5LjggMCAwMTEwMC4yLTEzNi44eiIgb3BhY2l0eT0iLjQiLz48cGF0aCBmaWxsPSIjYmZlNmZmIiBkPSJNMjU4LjkgMTEyLjdBMTIwIDEyMCAwIDAxMzk1LjcgMjEzYzYuOCA0NC0xMi4yIDg1LjMtNDQuMyAxMTEuMy0xNS42IDEyLjctNjcuMS0yLjUtODcuMS0zLjktMjkuMi0yLjEtMjYuMS0yMi4zLTQ2LjItNDItMTYuMS0xNS44LTU1LjctNC4yLTU5LjUtMjguOWExMTkuOSAxMTkuOSAwIDAxMTAwLjMtMTM2Ljh6IiBvcGFjaXR5PSIuNCIvPjxwYXRoIGZpbGw9IiNiZmU2ZmYiIGQ9Ik0yNTguOCAxMTIuN2ExMTkuOCAxMTkuOCAwIDAxMTM2LjcgMTAwLjIgMTE5LjYgMTE5LjYgMCAwMS00NC4yIDExMS4yYy0xNS43IDEyLjctNjYuOC0yLjItODYuOS0zLjYtMjkuMi0yLjEtMjYuMi0yMi41LTQ2LjMtNDIuMS0xNi4yLTE1LjgtNTUuNy00LjEtNTkuNi0yOWExMjAgMTIwIDAgMDExMDAuMy0xMzYuN3oiIG9wYWNpdHk9Ii40Ii8+PHBhdGggZmlsbD0iI2JlZTZmZiIgZD0iTTI1OC44IDExMi43YTExOS45IDExOS45IDAgMDExMzYuNyAxMDAuMmM2LjggNDMuOC0xMi4xIDg1LTQ0IDExMS0xNS43IDEyLjgtNjYuNi0xLjktODYuOC0zLjMtMjkuMS0yLTI2LjMtMjIuOC00Ni40LTQyLjMtMTYuMy0xNS44LTU1LjgtNC4xLTU5LjYtMjlhMTE5LjcgMTE5LjcgMCAwMTEwMC4xLTEzNi42eiIgb3BhY2l0eT0iLjQiLz48cGF0aCBmaWxsPSIjYmRlNWZmIiBkPSJNMjU4LjcgMTEyLjdhMTE5LjggMTE5LjggMCAwMTEzNi42IDEwMC4xYzYuNyA0My44LTEyIDg0LjktNDMuOSAxMTAuOS0xNS43IDEyLjgtNjYuNC0xLjYtODYuNi0yLjktMjkuMS0xLjktMjYuNC0yMy00Ni41LTQyLjQtMTYuNC0xNS44LTU1LjktNC01OS43LTI5LjFhMTE5LjggMTE5LjggMCAwMTEwMC4xLTEzNi42eiIgb3BhY2l0eT0iLjQiLz48cGF0aCBmaWxsPSIjYmNlNWZmIiBkPSJNMjU4LjcgMTEyLjhhMTE5LjcgMTE5LjcgMCAwMTEzNi41IDEwMC4xYzYuNyA0My43LTEyIDg0LjgtNDMuOCAxMTAuNy0xNS43IDEyLjgtNjYuMi0xLjMtODYuNC0yLjYtMjktMS45LTI2LjUtMjMuMi00Ni43LTQyLjUtMTYuNS0xNS45LTU1LjktNC01OS44LTI5LjJhMTE5LjggMTE5LjggMCAwMTEwMC4yLTEzNi41eiIgb3BhY2l0eT0iLjQiLz48cGF0aCBmaWxsPSIjYmJlNWZmIiBkPSJNMjU4LjcgMTEyLjhhMTE5LjcgMTE5LjcgMCAwMTEzNi41IDEwMC4xYzYuNyA0My42LTEyIDg0LjYtNDMuNiAxMTAuNi0xNS43IDEyLjktNjUuOS0xLTg2LjItMi4zLTI5LTEuOC0yNi43LTIzLjQtNDYuOC00Mi43LTE2LjYtMTUuOS01Ni00LTU5LjktMjkuMmExMTkuNSAxMTkuNSAwIDAxMTAwLTEzNi41eiIgb3BhY2l0eT0iLjQiLz48cGF0aCBmaWxsPSIjYmJlNGZmIiBkPSJNMjU4LjYgMTEyLjhhMTE5LjUgMTE5LjUgMCAwMTEzNi40IDEwMCAxMTkuNyAxMTkuNyAwIDAxLTQzLjUgMTEwLjVjLTE1LjcgMTIuOS02NS43LS43LTg2LjEtMi0yOS0xLjgtMjYuOC0yMy43LTQ2LjktNDIuOC0xNi43LTE1LjktNTYtMy45LTU5LjktMjkuM2ExMTkuNiAxMTkuNiAwIDAxMTAwLTEzNi40eiIgb3BhY2l0eT0iLjQiLz48cGF0aCBmaWxsPSIjYmFlNGZmIiBkPSJNMjU4LjYgMTEyLjhhMTE5LjUgMTE5LjUgMCAwMTEzNi4zIDEwMCAxMTkuNSAxMTkuNSAwIDAxLTQzLjQgMTEwLjNjLTE1LjcgMTMtNjUuNS0uNC04NS45LTEuNi0yOC45LTEuNy0yNi45LTIzLjktNDctNDMtMTYuOS0xNS45LTU2LjEtMy45LTYwLTI5LjNhMTE5LjYgMTE5LjYgMCAwMTEwMC0xMzYuNHoiIG9wYWNpdHk9Ii40Ii8+PHBhdGggZmlsbD0iI2I5ZTRmZiIgZD0iTTI1OC41IDExMi45YTExOS42IDExOS42IDAgMDExMzYuMyA5OS45QTExOS41IDExOS41IDAgMDEzNTEuNiAzMjNjLTE1LjggMTMtNjUuMi0uMS04NS43LTEuMy0yOC45LTEuNi0yNy0yNC4xLTQ3LjItNDMuMS0xNy0xNi01Ni4xLTMuOC02MC4xLTI5LjRhMTE5LjUgMTE5LjUgMCAwMTk5LjktMTM2LjN6IiBvcGFjaXR5PSIuNCIvPjxwYXRoIGZpbGw9IiNiOGUzZmYiIGQ9Ik0yNTguNSAxMTIuOWExMTkuNCAxMTkuNCAwIDAxMTM2LjIgOTkuOSAxMTkuMyAxMTkuMyAwIDAxLTQzLjEgMTEwYy0xNS44IDEzLjEtNjUgLjItODUuNS0xLTI4LjgtMS42LTI3LjEtMjQuMy00Ny4zLTQzLjItMTcuMS0xNi01Ni4yLTMuOC02MC4xLTI5LjVhMTE5LjMgMTE5LjMgMCAwMTk5LjgtMTM2LjJ6IiBvcGFjaXR5PSIuNSIvPjxwYXRoIGZpbGw9IiNiOGUzZmYiIGQ9Ik0yNTguNCAxMTIuOWExMTkuNSAxMTkuNSAwIDAxMTM2LjIgOTkuOCAxMTkuMSAxMTkuMSAwIDAxLTQzIDEwOS45Yy0xNS44IDEzLjEtNjQuOC41LTg1LjQtLjYtMjguOC0xLjUtMjcuMi0yNC42LTQ3LjQtNDMuNC0xNy4yLTE2LTU2LjItMy44LTYwLjItMjkuNWExMTkuNCAxMTkuNCAwIDAxOTkuOC0xMzYuMnoiIG9wYWNpdHk9Ii41Ii8+PHBhdGggZmlsbD0iI2I3ZTNmZiIgZD0iTTI1OC40IDExMi45YTExOS4zIDExOS4zIDAgMDExMzYuMSA5OS44IDExOS40IDExOS40IDAgMDEtNDIuOCAxMDkuN2MtMTUuOCAxMy4xLTY0LjUuOC04NS4yLS4zLTI4LjgtMS41LTI3LjMtMjQuOC00Ny41LTQzLjUtMTcuMy0xNi01Ni4zLTMuNy02MC4zLTI5LjZhMTE5LjMgMTE5LjMgMCAwMTk5LjctMTM2LjF6IiBvcGFjaXR5PSIuNSIvPjxwYXRoIGZpbGw9IiNiNmUyZmYiIGQ9Ik0yNTguNCAxMTNjNjUuMS0xMCAxMjYgMzQuNiAxMzYgOTkuN2ExMTkuMyAxMTkuMyAwIDAxLTQyLjcgMTA5LjZjLTE1LjggMTMuMi02NC4zIDEtODUgMC0yOC43LTEuNC0yNy41LTI1LTQ3LjctNDMuNi0xNy40LTE2LjEtNTYuNC0zLjctNjAuNC0yOS43LTEwLTY1LjEgMzQuNy0xMjYgOTkuOC0xMzZ6IiBvcGFjaXR5PSIuNSIvPjxwYXRoIGZpbGw9IiNiNWUyZmYiIGQ9Ik0yNTguMyAxMTNhMTE5LjMgMTE5LjMgMCAwMTEzNiA5OS43YzYuNiA0My0xMS42IDgzLjUtNDIuNiAxMDkuNC0xNS44IDEzLjItNjQuMSAxLjMtODQuOC40LTI4LjctMS40LTI3LjYtMjUuMi00Ny44LTQzLjgtMTcuNS0xNi4xLTU2LjQtMy42LTYwLjQtMjkuN2ExMTkgMTE5IDAgMDE5OS42LTEzNnoiIG9wYWNpdHk9Ii41Ii8+PHBhdGggZmlsbD0iI2I0ZTJmZiIgZD0iTTI1OC4zIDExM2M2NS0xMCAxMjUuOSAzNC42IDEzNS45IDk5LjZhMTE5IDExOSAwIDAxLTQyLjQgMTA5LjNjLTE1LjggMTMuMy02My44IDEuNi04NC43LjctMjguNi0xLjMtMjcuNy0yNS41LTQ3LjktNDMuOS0xNy43LTE2LjEtNTYuNS0zLjYtNjAuNS0yOS44QTExOSAxMTkgMCAwMTI1OC4zIDExM3oiIG9wYWNpdHk9Ii41Ii8+PHBhdGggZmlsbD0iI2I0ZTJmZiIgZD0iTTI1OC4yIDExM0ExMTkgMTE5IDAgMDEzOTQgMjEyLjZhMTE5IDExOSAwIDAxLTQyLjMgMTA5LjFjLTE1LjggMTMuMy02My42IDEuOS04NC41IDEtMjguNi0xLjItMjcuOC0yNS43LTQ4LTQ0LTE3LjgtMTYuMS01Ni41LTMuNi02MC42LTI5LjlBMTE5LjEgMTE5LjEgMCAwMTI1OC4yIDExM3oiIG9wYWNpdHk9Ii41Ii8+PHBhdGggZmlsbD0iI2IzZTFmZiIgZD0iTTI1OC4yIDExMy4xQTExOSAxMTkgMCAwMTM5NCAyMTIuNmExMTkgMTE5IDAgMDEtNDIuMiAxMDljLTE1LjkgMTMuNC02My40IDIuMi04NC4zIDEuMy0yOC42LTEuMi0yNy45LTI1LjktNDguMi00NC4yLTE3LjktMTYuMS01Ni42LTMuNS02MC42LTI5LjlhMTE4LjkgMTE4LjkgMCAwMTk5LjUtMTM1Ljd6IiBvcGFjaXR5PSIuNSIvPjxwYXRoIGZpbGw9IiNiMmUxZmYiIGQ9Ik0yNTguMSAxMTMuMWExMTkgMTE5IDAgMDExMzUuNyA5OS41YzYuNiA0Mi44LTExLjQgODMtNDIuMSAxMDguOC0xNS45IDEzLjQtNjMuMiAyLjUtODQuMSAxLjctMjguNS0xLjEtMjguMS0yNi4xLTQ4LjMtNDQuMy0xOC0xNi4yLTU2LjYtMy41LTYwLjctMzBhMTE5IDExOSAwIDAxOTkuNS0xMzUuN3oiIG9wYWNpdHk9Ii41Ii8+PHBhdGggZmlsbD0iI2IxZTFmZiIgZD0iTTI1OC4xIDExMy4xYTExOC44IDExOC44IDAgMDExMzUuNiA5OS40IDExOC45IDExOC45IDAgMDEtNDEuOSAxMDguN2MtMTUuOSAxMy41LTYyLjkgMi44LTg0IDItMjguNS0xLjEtMjguMi0yNi40LTQ4LjQtNDQuNS0xOC4xLTE2LjItNTYuNy0zLjQtNjAuOC0zMC4xYTExOC45IDExOC45IDAgMDE5OS41LTEzNS41eiIgb3BhY2l0eT0iLjUiLz48cGF0aCBmaWxsPSIjYjFlMGZmIiBkPSJNMjU4LjEgMTEzLjFhMTE4LjkgMTE4LjkgMCAwMTEzNS42IDk5LjQgMTE4LjcgMTE4LjcgMCAwMS00MS44IDEwOC42Yy0xNS45IDEzLjUtNjIuNyAzLjEtODMuOCAyLjMtMjguNC0xLTI4LjMtMjYuNi00OC42LTQ0LjYtMTguMi0xNi4yLTU2LjctMy40LTYwLjktMzAuMWExMTkgMTE5IDAgMDE5OS41LTEzNS42eiIgb3BhY2l0eT0iLjUiLz48cGF0aCBmaWxsPSIjYjBlMGZmIiBkPSJNMjU4IDExMy4yYTExOC44IDExOC44IDAgMDExMzUuNSA5OS40QTExOC45IDExOC45IDAgMDEzNTEuOCAzMjFjLTE1LjkgMTMuNS02Mi41IDMuNC04My42IDIuNy0yOC40LTEtMjguNC0yNi44LTQ4LjctNDQuNy0xOC40LTE2LjItNTYuOC0zLjQtNjAuOS0zMC4yQTExOC44IDExOC44IDAgMDEyNTggMTEzLjJ6IiBvcGFjaXR5PSIuNSIvPjxwYXRoIGZpbGw9IiNhZmUwZmYiIGQ9Ik0yNTggMTEzLjJhMTE4LjggMTE4LjggMCAwMTEzNS41IDk5LjNBMTE4LjggMTE4LjggMCAwMTM1MiAzMjAuOGMtMTUuOSAxMy42LTYyLjIgMy43LTgzLjQgMy0yOC40LS45LTI4LjUtMjctNDguOC00NC45LTE4LjUtMTYuMi01Ni45LTMuMy02MS0zMC4yQTExOC42IDExOC42IDAgMDEyNTggMTEzLjJ6IiBvcGFjaXR5PSIuNSIvPjxwYXRoIGZpbGw9IiNhZWRmZmYiIGQ9Ik0yNTcuOSAxMTMuMmExMTguNyAxMTguNyAwIDAxMTM1LjQgOTkuMyAxMTguNiAxMTguNiAwIDAxLTQxLjQgMTA4LjFjLTE1LjkgMTMuNi02MiA0LTgzLjMgMy4zLTI4LjMtLjgtMjguNi0yNy4zLTQ4LjktNDUtMTguNi0xNi4zLTU2LjktMy4zLTYxLjEtMzAuM2ExMTguOCAxMTguOCAwIDAxOTkuMy0xMzUuNHoiIG9wYWNpdHk9Ii41Ii8+PHBhdGggZmlsbD0iI2FlZGZmZiIgZD0iTTI1Ny45IDExMy4yYTExOC41IDExOC41IDAgMDExMzUuMyA5OS4yIDExOC41IDExOC41IDAgMDEtNDEuMyAxMDhjLTE2IDEzLjctNjEuOCA0LjMtODMuMSAzLjctMjguMy0uOC0yOC44LTI3LjUtNDkuMS00NS4xLTE4LjctMTYuMy01Ny0zLjItNjEuMS0zMC40YTExOC44IDExOC44IDAgMDE5OS4zLTEzNS40eiIgb3BhY2l0eT0iLjUiLz48cGF0aCBmaWxsPSIjYWRkZmZmIiBkPSJNMjU3LjggMTEzLjNhMTE4LjYgMTE4LjYgMCAwMTEzNS4zIDk5LjJjNi41IDQyLjItMTEuMSA4Mi00MS4xIDEwNy44LTE2IDEzLjctNjEuNSA0LjUtODIuOSA0LTI4LjItLjctMjguOS0yNy43LTQ5LjItNDUuMy0xOC44LTE2LjMtNTctMy4yLTYxLjItMzAuNGExMTguNSAxMTguNSAwIDAxOTkuMS0xMzUuM3oiIG9wYWNpdHk9Ii41Ii8+PHBhdGggZmlsbD0iI2FjZGZmZiIgZD0iTTI1Ny44IDExMy4zQTExOC41IDExOC41IDAgMDEzOTMgMjEyLjRjNi41IDQyLjItMTEgODEuOS00MSAxMDcuNy0xNiAxMy44LTYxLjMgNC44LTgyLjcgNC4zLTI4LjItLjctMjktMjcuOS00OS4zLTQ1LjQtMTguOS0xNi4zLTU3LjEtMy4yLTYxLjMtMzAuNWExMTguNSAxMTguNSAwIDAxOTkuMS0xMzUuMnoiIG9wYWNpdHk9Ii41Ii8+PHBhdGggZmlsbD0iI2FiZGVmZiIgZD0iTTI1Ny43IDExMy4zYTExOC40IDExOC40IDAgMDExMzUuMSA5OS4xYzYuNSA0Mi4xLTExIDgxLjctNDAuOSAxMDcuNS0xNiAxMy44LTYxLjEgNS4xLTgyLjYgNC42LTI4LjItLjYtMjkuMS0yOC4xLTQ5LjQtNDUuNS0xOS4xLTE2LjMtNTcuMS0zLjEtNjEuNC0zMC42YTExOC44IDExOC44IDAgMDE5OS4yLTEzNS4xeiIgb3BhY2l0eT0iLjUiLz48cGF0aCBmaWxsPSIjYWFkZWZmIiBkPSJNMjU3LjcgMTEzLjNhMTE4LjUgMTE4LjUgMCAwMTEzNS4xIDk5YzYuNSA0Mi0xMC45IDgxLjYtNDAuNyAxMDcuNC0xNiAxMy45LTYwLjggNS40LTgyLjQgNS0yOC4xLS42LTI5LjItMjguNC00OS42LTQ1LjctMTkuMi0xNi4zLTU3LjItMy4xLTYxLjQtMzAuNmExMTguNSAxMTguNSAwIDAxOTktMTM1LjF6IiBvcGFjaXR5PSIuNSIvPjxwYXRoIGZpbGw9IiNhYWRlZmYiIGQ9Ik0yNTcuNyAxMTMuNGExMTguNCAxMTguNCAwIDAxMTM1IDk5IDExOCAxMTggMCAwMS00MC42IDEwNy4yYy0xNiAxMy45LTYwLjYgNS43LTgyLjIgNS4zLTI4LjEtLjUtMjkuNC0yOC42LTQ5LjctNDUuOC0xOS4zLTE2LjQtNTcuMi0zLTYxLjUtMzAuN2ExMTguMyAxMTguMyAwIDAxOTktMTM1eiIgb3BhY2l0eT0iLjUiLz48cGF0aCBmaWxsPSIjYTlkZGZmIiBkPSJNMjU3LjYgMTEzLjRjNjQuNi05LjkgMTI1IDM0LjQgMTM1IDk4LjlhMTE4LjEgMTE4LjEgMCAwMS00MC41IDEwNy4xYy0xNiAxMy45LTYwLjQgNi04MiA1LjYtMjgtLjUtMjkuNS0yOC44LTQ5LjgtNDYtMTkuNC0xNi40LTU3LjMtMy02MS42LTMwLjhhMTE4LjEgMTE4LjEgMCAwMTk4LjktMTM0Ljh6IiBvcGFjaXR5PSIuNiIvPjxwYXRoIGZpbGw9IiNhOGRkZmYiIGQ9Ik0yNTcuNiAxMTMuNGExMTguMyAxMTguMyAwIDAxMTM0LjkgOTguOSAxMTguMSAxMTguMSAwIDAxLTQwLjMgMTA2LjljLTE2IDE0LTYwLjIgNi4zLTgxLjkgNi0yOC0uNC0yOS42LTI5LTQ5LjktNDYuMS0xOS41LTE2LjQtNTcuNC0yLjktNjEuNy0zMC44LTEwLTY0LjYgMzQuMy0xMjUgOTguOS0xMzQuOXoiIG9wYWNpdHk9Ii42Ii8+PHBhdGggZmlsbD0iI2E3ZGRmZiIgZD0iTTI1Ny41IDExMy40YTExOC4yIDExOC4yIDAgMDExMzQuOCA5OC44QTExOCAxMTggMCAwMTM1Mi4xIDMxOWMtMTYuMSAxNC01OS45IDYuNi04MS43IDYuMy0yOC0uMy0yOS43LTI5LjItNTAuMS00Ni4yLTE5LjctMTYuNC01Ny40LTIuOS02MS43LTMwLjlhMTE4LjMgMTE4LjMgMCAwMTk4LjktMTM0Ljh6IiBvcGFjaXR5PSIuNiIvPjxwYXRoIGZpbGw9IiNhN2RjZmYiIGQ9Ik0yNTcuNSAxMTMuNWExMTguMiAxMTguMiAwIDAxMTM0LjggOTguOCAxMTcuOCAxMTcuOCAwIDAxLTQwLjEgMTA2LjZjLTE2LjEgMTQuMS01OS43IDYuOS04MS41IDYuNi0yNy45LS4zLTI5LjktMjkuNS01MC4yLTQ2LjQtMTkuOC0xNi40LTU3LjUtMi45LTYxLjgtMzAuOWExMTguMSAxMTguMSAwIDAxOTguOC0xMzQuN3oiIG9wYWNpdHk9Ii42Ii8+PHBhdGggZmlsbD0iI2E2ZGNmZiIgZD0iTTI1Ny40IDExMy41YTExOC4xIDExOC4xIDAgMDExMzQuNyA5OC44IDExOCAxMTggMCAwMS0zOS45IDEwNi41Yy0xNi4xIDE0LjEtNTkuNSA3LjEtODEuMyA3LTI3LjktLjItMzAtMjkuNy01MC4zLTQ2LjUtMTkuOS0xNi40LTU3LjUtMi44LTYxLjktMzFhMTE4LjEgMTE4LjEgMCAwMTk4LjctMTM0Ljh6IiBvcGFjaXR5PSIuNiIvPjxwYXRoIGZpbGw9IiNhNWRjZmYiIGQ9Ik0yNTcuNCAxMTMuNUExMTggMTE4IDAgMDEzOTIgMjEyLjJhMTE4IDExOCAwIDAxLTM5LjggMTA2LjRjLTE2LjEgMTQuMi01OS4yIDcuNC04MS4yIDcuMy0yNy45LS4yLTMwLjEtMjkuOS01MC41LTQ2LjYtMjAtMTYuNS01Ny42LTIuOC02MS45LTMxLjFhMTE4LjIgMTE4LjIgMCAwMTk4LjgtMTM0Ljd6IiBvcGFjaXR5PSIuNiIvPjxwYXRoIGZpbGw9IiNhNGRiZmYiIGQ9Ik0yNTcuNCAxMTMuNUExMTggMTE4IDAgMDEzOTIgMjEyLjJhMTE3LjcgMTE3LjcgMCAwMS0zOS43IDEwNi4yYy0xNi4xIDE0LjItNTkgNy43LTgxIDcuNi0yNy44LS4xLTMwLjItMzAuMS01MC42LTQ2LjgtMjAuMS0xNi41LTU3LjYtMi43LTYyLTMxLjFhMTE4IDExOCAwIDAxOTguNy0xMzQuNnoiIG9wYWNpdHk9Ii42Ii8+PHBhdGggZmlsbD0iI2EzZGJmZiIgZD0iTTI1Ny4zIDExMy42YTExNy45IDExNy45IDAgMDExMzQuNSA5OC42IDExNy44IDExNy44IDAgMDEtMzkuNSAxMDYuMWMtMTYuMSAxNC4zLTU4LjggOC04MC44IDcuOS0yNy44LS4xLTMwLjMtMzAuMy01MC43LTQ2LjktMjAuMy0xNi41LTU3LjctMi43LTYyLjEtMzEuMmExMTcuOSAxMTcuOSAwIDAxOTguNi0xMzQuNXoiIG9wYWNpdHk9Ii42Ii8+PHBhdGggZmlsbD0iI2EzZGJmZiIgZD0iTTI1Ny4zIDExMy42YTExNy44IDExNy44IDAgMDExMzQuNCA5OC42IDExNy43IDExNy43IDAgMDEtMzkuNCAxMDUuOWMtMTYuMSAxNC4zLTU4LjUgOC4zLTgwLjYgOC4zLTI3LjcgMC0zMC41LTMwLjYtNTAuOC00Ny0yMC40LTE2LjUtNTcuNy0yLjctNjIuMi0zMS4zYTExNy45IDExNy45IDAgMDE5OC42LTEzNC41eiIgb3BhY2l0eT0iLjYiLz48cGF0aCBmaWxsPSIjYTJkYmZmIiBkPSJNMjU3LjIgMTEzLjZhMTE3LjggMTE3LjggMCAwMTEzNC40IDk4LjUgMTE3LjggMTE3LjggMCAwMS0zOS4zIDEwNS44Yy0xNi4xIDE0LjQtNTguMyA4LjYtODAuNCA4LjYtMjcuNyAwLTMwLjYtMzAuOC01MS00Ny4yLTIwLjUtMTYuNS01Ny44LTIuNi02Mi4yLTMxLjNhMTE3LjggMTE3LjggMCAwMTk4LjUtMTM0LjR6IiBvcGFjaXR5PSIuNiIvPjxwYXRoIGZpbGw9IiNhMWRhZmYiIGQ9Ik0yNTcuMiAxMTMuNmExMTcuNyAxMTcuNyAwIDAxMTM0LjMgOTguNWM2LjMgNDEuMi0xMC40IDgwLTM5LjEgMTA1LjYtMTYuMiAxNC40LTU4LjEgOC45LTgwLjMgOC45LTI3LjcuMS0zMC43LTMxLTUxLjEtNDcuMy0yMC42LTE2LjUtNTcuOS0yLjYtNjIuMy0zMS40YTExNy44IDExNy44IDAgMDE5OC41LTEzNC4zeiIgb3BhY2l0eT0iLjYiLz48cGF0aCBmaWxsPSIjYTBkYWZmIiBkPSJNMjU3LjEgMTEzLjdhMTE3LjcgMTE3LjcgMCAwMTEzNC4zIDk4LjQgMTE3LjYgMTE3LjYgMCAwMS0zOSAxMDUuNWMtMTYuMiAxNC40LTU3LjggOS4yLTgwLjEgOS4zLTI3LjYuMS0zMC44LTMxLjItNTEuMi00Ny41LTIwLjgtMTYuNS01Ny45LTIuNS02Mi40LTMxLjVhMTE3LjcgMTE3LjcgMCAwMTk4LjQtMTM0LjJ6IiBvcGFjaXR5PSIuNiIvPjxwYXRoIGZpbGw9IiNhMGRhZmYiIGQ9Ik0yNTcuMSAxMTMuN2ExMTcuNyAxMTcuNyAwIDAxMTM0LjIgOTguNGM2LjMgNDEtMTAuMyA3OS43LTM4LjkgMTA1LjMtMTYuMiAxNC41LTU3LjYgOS41LTc5LjkgOS42LTI3LjYuMi0zMS0zMS40LTUxLjMtNDcuNi0yMC45LTE2LjYtNTgtMi41LTYyLjQtMzEuNWExMTcuNSAxMTcuNSAwIDAxOTguMy0xMzQuMnoiIG9wYWNpdHk9Ii42Ii8+PHBhdGggZmlsbD0iIzlmZDlmZiIgZD0iTTI1NyAxMTMuN0ExMTcuNSAxMTcuNSAwIDAxMzkxLjEgMjEyYTExNy41IDExNy41IDAgMDEtMzguNyAxMDUuMmMtMTYuMiAxNC41LTU3LjQgOS43LTc5LjcgOS45LTI3LjUuMi0zMS4xLTMxLjYtNTEuNS00Ny43LTIxLTE2LjYtNTgtMi41LTYyLjUtMzEuNkExMTcuNiAxMTcuNiAwIDAxMjU3IDExMy43eiIgb3BhY2l0eT0iLjYiLz48cGF0aCBmaWxsPSIjOWVkOWZmIiBkPSJNMjU3IDExMy43QTExNy41IDExNy41IDAgMDEzOTEuMSAyMTJhMTE3LjMgMTE3LjMgMCAwMS0zOC42IDEwNWMtMTYuMiAxNC42LTU3LjEgMTAtNzkuNiAxMC4zLTI3LjUuMy0zMS4yLTMxLjktNTEuNi00Ny45LTIxLjEtMTYuNi01OC4xLTIuNC02Mi42LTMxLjdhMTE3LjUgMTE3LjUgMCAwMTk4LjMtMTM0eiIgb3BhY2l0eT0iLjYiLz48cGF0aCBmaWxsPSIjOWRkOWZmIiBkPSJNMjU3IDExMy44QTExNy41IDExNy41IDAgMDEzOTEgMjEyYTExNy4xIDExNy4xIDAgMDEtMzguNSAxMDQuOWMtMTYuMiAxNC42LTU2LjkgMTAuMy03OS40IDEwLjYtMjcuNS4zLTMxLjMtMzIuMS01MS43LTQ4LTIxLjItMTYuNi01OC4xLTIuNC02Mi43LTMxLjdhMTE3LjQgMTE3LjQgMCAwMTk4LjMtMTM0eiIgb3BhY2l0eT0iLjYiLz48cGF0aCBmaWxsPSIjOWNkOGZmIiBkPSJNMjU2LjkgMTEzLjhhMTE3LjUgMTE3LjUgMCAwMTEzNCA5OC4yIDExNy4xIDExNy4xIDAgMDEtMzguMyAxMDQuN2MtMTYuMiAxNC43LTU2LjcgMTAuNi03OS4yIDEwLjktMjcuNC40LTMxLjQtMzIuMy01MS44LTQ4LjEtMjEuNC0xNi42LTU4LjItMi4zLTYyLjctMzEuOGExMTcuMSAxMTcuMSAwIDAxOTgtMTMzLjl6IiBvcGFjaXR5PSIuNiIvPjxwYXRoIGZpbGw9IiM5Y2Q4ZmYiIGQ9Ik0yNTYuOSAxMTMuOGM2NC4xLTkuOSAxMjQgMzQuMSAxMzMuOSA5OC4xYTExNyAxMTcgMCAwMS0zOC4yIDEwNC42Yy0xNi4yIDE0LjctNTYuNSAxMC45LTc5IDExLjItMjcuNC40LTMxLjYtMzIuNS01Mi00OC4zLTIxLjUtMTYuNi01OC4zLTIuMy02Mi44LTMxLjgtOS45LTY0IDM0LTEyMy45IDk4LjEtMTMzLjh6IiBvcGFjaXR5PSIuNiIvPjxwYXRoIGZpbGw9IiM5YmQ4ZmYiIGQ9Ik0yNTYuOCAxMTMuOGM2NC05LjkgMTI0IDM0LjEgMTMzLjggOTguMSA2LjIgNDAuNi0xMCA3OC45LTM4LjEgMTA0LjUtMTYuMiAxNC44LTU2LjIgMTEuMi03OC45IDExLjYtMjcuMy41LTMxLjctMzIuNy01Mi4xLTQ4LjQtMjEuNi0xNi42LTU4LjMtMi4zLTYyLjktMzEuOWExMTcuNiAxMTcuNiAwIDAxOTguMi0xMzMuOXoiIG9wYWNpdHk9Ii42Ii8+PHBhdGggZmlsbD0iIzlhZDhmZiIgZD0iTTI1Ni44IDExMy45YzY0LTkuOSAxMjMuOSAzNCAxMzMuNyA5OC4xIDYuMiA0MC41LTkuOSA3OC44LTM3LjkgMTA0LjMtMTYuMyAxNC44LTU2IDExLjUtNzguNyAxMS45LTI3LjMuNS0zMS44LTMyLjktNTIuMi00OC42LTIxLjctMTYuNi01OC40LTIuMi02Mi45LTMyLTkuOS02NCAzNC0xMjMuOSA5OC0xMzMuN3oiIG9wYWNpdHk9Ii42Ii8+PHBhdGggZmlsbD0iIzk5ZDdmZiIgZD0iTTI1Ni43IDExMy45YzY0LTkuOSAxMjMuOCAzNCAxMzMuNyA5OCA2LjIgNDAuNC05LjkgNzguNi0zNy44IDEwNC4yLTE2LjMgMTQuOS01NS44IDExLjctNzguNSAxMi4yLTI3LjMuNi0zMS45LTMzLjItNTIuNC00OC43LTIxLjktMTYuNi01OC40LTIuMi02My0zMmExMTcuMyAxMTcuMyAwIDAxOTgtMTMzLjd6IiBvcGFjaXR5PSIuNyIvPjxwYXRoIGZpbGw9IiM5OWQ3ZmYiIGQ9Ik0yNTYuNyAxMTMuOWM2NC05LjggMTIzLjggMzQgMTMzLjYgOTggNi4yIDQwLjQtOS44IDc4LjUtMzcuNyAxMDQtMTYuMyAxNC45LTU1LjUgMTItNzguMyAxMi42LTI3LjIuNi0zMi4xLTMzLjQtNTIuNS00OC44LTIyLTE2LjYtNTguNS0yLjEtNjMuMS0zMi4xLTkuOC02NCAzNC0xMjMuOSA5OC0xMzMuN3oiIG9wYWNpdHk9Ii43Ii8+PHBhdGggZmlsbD0iIzk4ZDdmZiIgZD0iTTI1Ni43IDExMy45YzYzLjktOS44IDEyMy43IDM0IDEzMy42IDk3LjlhMTE3IDExNyAwIDAxLTM3LjUgMTAzLjljLTE2LjMgMTUtNTUuMyAxMi4zLTc4LjIgMTIuOS0yNy4yLjctMzIuMi0zMy42LTUyLjYtNDktMjIuMS0xNi43LTU4LjUtMi4xLTYzLjItMzIuMmExMTcgMTE3IDAgMDE5Ny45LTEzMy41eiIgb3BhY2l0eT0iLjciLz48cGF0aCBmaWxsPSIjOTdkNmZmIiBkPSJNMjU2LjYgMTEzLjlhMTE3IDExNyAwIDAxMTMzLjUgOTcuOWM2LjIgNDAuMi05LjcgNzguMi0zNy40IDEwMy43LTE2LjMgMTUtNTUuMSAxMi42LTc4IDEzLjItMjcuMS43LTMyLjMtMzMuOC01Mi43LTQ5LjEtMjIuMi0xNi43LTU4LjYtMi4xLTYzLjItMzIuMmExMTcgMTE3IDAgMDE5Ny44LTEzMy41eiIgb3BhY2l0eT0iLjciLz48cGF0aCBmaWxsPSIjOTZkNmZmIiBkPSJNMjU2LjYgMTE0QTExNyAxMTcgMCAwMTM5MCAyMTEuOGM2LjIgNDAuMS05LjcgNzguMS0zNy4zIDEwMy42LTE2LjMgMTUuMS01NC44IDEyLjktNzcuOCAxMy42LTI3LjEuOC0zMi40LTM0LTUyLjktNDkuMi0yMi40LTE2LjctNTguNi0yLTYzLjMtMzIuM0ExMTcgMTE3IDAgMDEyNTYuNiAxMTR6IiBvcGFjaXR5PSIuNyIvPjxwYXRoIGZpbGw9IiM5NWQ2ZmYiIGQ9Ik0yNTYuNSAxMTRhMTE3IDExNyAwIDAxMTMzLjQgOTcuOGM2LjIgNDAuMS05LjYgNzgtMzcuMiAxMDMuNC0xNi4zIDE1LjEtNTQuNiAxMy4yLTc3LjYgMTMuOS0yNy4xLjgtMzIuNi0zNC4yLTUzLTQ5LjQtMjIuNS0xNi43LTU4LjctMi02My40LTMyLjRBMTE3IDExNyAwIDAxMjU2LjUgMTE0eiIgb3BhY2l0eT0iLjciLz48cGF0aCBmaWxsPSIjOTVkNWZmIiBkPSJNMjU2LjUgMTE0YTExNi45IDExNi45IDAgMDExMzMuMyA5Ny43YzYuMiA0MC05LjYgNzcuOC0zNyAxMDMuMy0xNi4zIDE1LjEtNTQuNCAxMy41LTc3LjUgMTQuMi0yNyAuOS0zMi43LTM0LjQtNTMuMS00OS41LTIyLjYtMTYuNy01OC44LTEuOS02My40LTMyLjRBMTE2LjggMTE2LjggMCAwMTI1Ni41IDExNHoiIG9wYWNpdHk9Ii43Ii8+PHBhdGggZmlsbD0iIzk0ZDVmZiIgZD0iTTI1Ni40IDExNGExMTYuOCAxMTYuOCAwIDAxMTMzLjIgOTcuN2M2LjEgMzkuOS05LjUgNzcuNy0zNi45IDEwMy4xLTE2LjMgMTUuMi01NC4xIDEzLjctNzcuMyAxNC41LTI3IC45LTMyLjgtMzQuNi01My4yLTQ5LjYtMjIuNy0xNi43LTU4LjgtMS45LTYzLjUtMzIuNUExMTcgMTE3IDAgMDEyNTYuNCAxMTR6IiBvcGFjaXR5PSIuNyIvPjxwYXRoIGZpbGw9IiM5M2Q1ZmYiIGQ9Ik0yNTYuNCAxMTQuMWExMTYuOCAxMTYuOCAwIDAxMTMzLjIgOTcuNmM2LjEgMzkuOS05LjUgNzcuNi0zNi44IDEwMy0xNi40IDE1LjItNTMuOSAxNC03Ny4xIDE0LjktMjcgMS0zMi45LTM0LjktNTMuNC00OS44LTIyLjktMTYuNy01OC45LTEuOC02My42LTMyLjVhMTE2LjggMTE2LjggMCAwMTk3LjctMTMzLjJ6IiBvcGFjaXR5PSIuNyIvPjxwYXRoIGZpbGw9IiM5MmQ1ZmYiIGQ9Ik0yNTYuNCAxMTQuMWExMTYuNyAxMTYuNyAwIDAxMTMzLjEgOTcuNmM2LjEgMzkuOC05LjQgNzcuNC0zNi42IDEwMi44LTE2LjQgMTUuMy01My43IDE0LjMtNzYuOSAxNS4yLTI2LjkgMS0zMy4xLTM1LjEtNTMuNS00OS45LTIzLTE2LjctNTguOS0xLjgtNjMuNy0zMi42YTExNi42IDExNi42IDAgMDE5Ny42LTEzMy4xeiIgb3BhY2l0eT0iLjciLz48cGF0aCBmaWxsPSIjOTJkNGZmIiBkPSJNMjU2LjMgMTE0LjFhMTE2LjggMTE2LjggMCAwMTEzMy4xIDk3LjVjNi4xIDM5LjctOS40IDc3LjMtMzYuNSAxMDIuNy0xNi40IDE1LjMtNTMuNSAxNC42LTc2LjggMTUuNS0yNi45IDEuMS0zMy4yLTM1LjMtNTMuNi01MC4xLTIzLjEtMTYuNy01OS0xLjgtNjMuNy0zMi43YTExNi42IDExNi42IDAgMDE5Ny41LTEzMi45eiIgb3BhY2l0eT0iLjciLz48cGF0aCBmaWxsPSIjOTFkNGZmIiBkPSJNMjU2LjMgMTE0LjFhMTE2LjcgMTE2LjcgMCAwMTEzMyA5Ny41YzYuMSAzOS42LTkuMyA3Ny4yLTM2LjQgMTAyLjYtMTYuNCAxNS40LTUzLjIgMTQuOS03Ni42IDE1LjktMjYuOCAxLjEtMzMuMy0zNS41LTUzLjctNTAuMi0yMy4yLTE2LjctNTktMS43LTYzLjgtMzIuN2ExMTYuNiAxMTYuNiAwIDAxOTcuNS0xMzMuMXoiIG9wYWNpdHk9Ii43Ii8+PHBhdGggZmlsbD0iIzkwZDRmZiIgZD0iTTI1Ni4yIDExNC4yYTExNi41IDExNi41IDAgMDExMzIuOSA5Ny41YzYuMSAzOS42LTkuMyA3Ny0zNi4yIDEwMi40LTE2LjQgMTUuNC01MyAxNS4yLTc2LjQgMTYuMi0yNi44IDEuMi0zMy40LTM1LjctNTMuOS01MC4zLTIzLjQtMTYuNy01OS4xLTEuNy02My45LTMyLjhhMTE2LjcgMTE2LjcgMCAwMTk3LjUtMTMzeiIgb3BhY2l0eT0iLjciLz48cGF0aCBmaWxsPSIjOGZkM2ZmIiBkPSJNMjU2LjIgMTE0LjJhMTE2LjUgMTE2LjUgMCAwMTEzMi45IDk3LjRjNi4xIDM5LjUtOS4yIDc2LjktMzYuMSAxMDIuMy0xNi40IDE1LjUtNTIuOCAxNS40LTc2LjIgMTYuNS0yNi44IDEuMi0zMy41LTM1LjktNTQtNTAuNS0yMy41LTE2LjctNTkuMS0xLjYtNjMuOS0zMi45YTExNi4zIDExNi4zIDAgMDE5Ny4zLTEzMi44eiIgb3BhY2l0eT0iLjciLz48cGF0aCBmaWxsPSIjOGVkM2ZmIiBkPSJNMjU2LjEgMTE0LjJjNjMuNi05LjggMTIzIDMzLjggMTMyLjggOTcuNGExMTYgMTE2IDAgMDEtMzYgMTAyLjFjLTE2LjQgMTUuNS01Mi41IDE1LjctNzYuMSAxNi45LTI2LjcgMS4zLTMzLjctMzYuMS01NC4xLTUwLjYtMjMuNi0xNi43LTU5LjItMS42LTY0LTMyLjlhMTE2LjcgMTE2LjcgMCAwMTk3LjQtMTMyLjl6IiBvcGFjaXR5PSIuNyIvPjxwYXRoIGZpbGw9IiM4ZWQzZmYiIGQ9Ik0yNTYuMSAxMTQuMmM2My41LTkuOCAxMjMgMzMuOCAxMzIuNyA5Ny4zIDYuMSAzOS40LTkuMSA3Ni42LTM1LjggMTAyLTE2LjQgMTUuNi01Mi4zIDE2LTc1LjkgMTcuMi0yNi43IDEuMy0zMy44LTM2LjMtNTQuMi01MC43LTIzLjctMTYuNy01OS4zLTEuNi02NC4xLTMzYTExNi41IDExNi41IDAgMDE5Ny4zLTEzMi44eiIgb3BhY2l0eT0iLjciLz48cGF0aCBmaWxsPSIjOGRkMmZmIiBkPSJNMjU2IDExNC4zYTExNi40IDExNi40IDAgMDExMzIuNyA5Ny4zYzYgMzkuMy05IDc2LjUtMzUuNyAxMDEuOC0xNi40IDE1LjYtNTIuMSAxNi4zLTc1LjcgMTcuNS0yNi42IDEuNC0zMy45LTM2LjUtNTQuNC01MC45LTIzLjktMTYuNy01OS4zLTEuNS02NC4yLTMzLjFBMTE2LjMgMTE2LjMgMCAwMTI1NiAxMTQuM3oiIG9wYWNpdHk9Ii43Ii8+PHBhdGggZmlsbD0iIzhjZDJmZiIgZD0iTTI1NiAxMTQuM2ExMTYuMyAxMTYuMyAwIDAxMTMyLjYgOTcuMmM2IDM5LjItOSA3Ni40LTM1LjYgMTAxLjctMTYuNCAxNS43LTUxLjggMTYuNi03NS41IDE3LjgtMjYuNiAxLjQtMzQtMzYuOC01NC41LTUxLTI0LTE2LjctNTkuNC0xLjUtNjQuMi0zMy4xQTExNi4yIDExNi4yIDAgMDEyNTYgMTE0LjN6IiBvcGFjaXR5PSIuNyIvPjxwYXRoIGZpbGw9IiM4YmQyZmYiIGQ9Ik0yNTYgMTE0LjNhMTE2LjEgMTE2LjEgMCAwMTEzMi41IDk3LjJBMTE2IDExNiAwIDAxMzUzLjEgMzEzYy0xNi41IDE1LjctNTEuNiAxNi45LTc1LjQgMTguMi0yNi42IDEuNS0zNC4yLTM3LTU0LjYtNTEuMS0yNC4xLTE2LjctNTkuNC0xLjQtNjQuMy0zMy4yQTExNi4yIDExNi4yIDAgMDEyNTYgMTE0LjN6IiBvcGFjaXR5PSIuNyIvPjxwYXRoIGZpbGw9IiM4YmQxZmYiIGQ9Ik0yNTUuOSAxMTQuM2ExMTYuMiAxMTYuMiAwIDAxMTMyLjUgOTcuMSAxMTYgMTE2IDAgMDEtMzUuMyAxMDEuNGMtMTYuNSAxNS44LTUxLjQgMTcuMS03NS4yIDE4LjUtMjYuNSAxLjUtMzQuMy0zNy4yLTU0LjgtNTEuMy0yNC4zLTE2LjctNTkuNS0xLjQtNjQuNC0zMy4zYTExNi4zIDExNi4zIDAgMDE5Ny4yLTEzMi40eiIgb3BhY2l0eT0iLjciLz48cGF0aCBmaWxsPSIjOGFkMWZmIiBkPSJNMjU1LjkgMTE0LjRhMTE1LjUgMTE1LjUgMCAwMTk3LjIgMTk4LjNjLTE2LjUgMTUuOC01MS4yIDE3LjQtNzUgMTguOC0yNi41IDEuNi0zNC40LTM3LjQtNTQuOS01MS40LTI0LjQtMTYuNy01OS41LTEuNC02NC41LTMzLjNhMTE2LjEgMTE2LjEgMCAwMTk3LjItMTMyLjR6IiBvcGFjaXR5PSIuOCIvPjxwYXRoIGZpbGw9IiM4OWQxZmYiIGQ9Ik0yNTUuOCAxMTQuNGExMTYuMSAxMTYuMSAwIDAxMTMyLjQgOTcgMTE2IDExNiAwIDAxLTM1IDEwMS4xYy0xNi41IDE1LjktNTAuOSAxNy43LTc0LjggMTkuMi0yNi41IDEuNi0zNC41LTM3LjYtNTUtNTEuNi0yNC41LTE2LjctNTkuNi0xLjMtNjQuNS0zMy40YTExNS44IDExNS44IDAgMDE5Ni45LTEzMi4zeiIgb3BhY2l0eT0iLjgiLz48cGF0aCBmaWxsPSIjODhkMWZmIiBkPSJNMjU1LjggMTE0LjRhMTE2IDExNiAwIDAxMTMyLjMgOTdjNiAzOC44LTguNyA3NS43LTM0LjkgMTAwLjktMTYuNSAxNS45LTUwLjcgMTgtNzQuNiAxOS41LTI2LjQgMS43LTM0LjctMzcuOC01NS4xLTUxLjctMjQuNi0xNi43LTU5LjYtMS4zLTY0LjYtMzMuNGExMTUuOSAxMTUuOSAwIDAxOTYuOS0xMzIuM3oiIG9wYWNpdHk9Ii44Ii8+PHBhdGggZmlsbD0iIzg3ZDBmZiIgZD0iTTI1NS43IDExNC40YTExNiAxMTYgMCAwMTEzMi4yIDk2LjljNiAzOC44LTguNyA3NS42LTM0LjggMTAwLjgtMTYuNSAxNi01MC41IDE4LjMtNzQuNSAxOS44LTI2LjQgMS43LTM0LjgtMzgtNTUuMy01MS44LTI0LjgtMTYuNy01OS43LTEuMi02NC43LTMzLjVhMTE2LjMgMTE2LjMgMCAwMTk3LjEtMTMyLjJ6IiBvcGFjaXR5PSIuOCIvPjxwYXRoIGZpbGw9IiM4N2QwZmYiIGQ9Ik0yNTUuNyAxMTQuNUExMTUuMyAxMTUuMyAwIDAxMzUzLjMgMzEyYy0xNi41IDE2LTUwLjIgMTguNS03NC4zIDIwLjItMjYuMyAxLjgtMzQuOS0zOC4yLTU1LjQtNTItMjQuOS0xNi43LTU5LjgtMS4yLTY0LjctMzMuNmExMTUuNyAxMTUuNyAwIDAxOTYuOC0xMzIuMXoiIG9wYWNpdHk9Ii44Ii8+PHBhdGggZmlsbD0iIzg2ZDBmZiIgZD0iTTI1NS43IDExNC41YTExNS44IDExNS44IDAgMDExMzIuMSA5Ni44YzUuOSAzOC42LTguNiA3NS4zLTM0LjUgMTAwLjUtMTYuNSAxNi4xLTUwIDE4LjgtNzQuMSAyMC41LTI2LjMgMS44LTM1LTM4LjQtNTUuNS01Mi4xLTI1LTE2LjctNTkuOC0xLjItNjQuOC0zMy42YTExNS43IDExNS43IDAgMDE5Ni44LTEzMi4xeiIgb3BhY2l0eT0iLjgiLz48cGF0aCBmaWxsPSIjODVjZmZmIiBkPSJNMjU1LjYgMTE0LjVhMTE1LjcgMTE1LjcgMCAwMTEzMiA5Ni44YzUuOSAzOC42LTguNSA3NS4yLTM0LjQgMTAwLjQtMTYuNSAxNi4xLTQ5LjggMTkuMS03My45IDIwLjgtMjYuMyAxLjktMzUuMi0zOC42LTU1LjYtNTIuMi0yNS4yLTE2LjctNTkuOS0xLjEtNjQuOS0zMy43YTExNS44IDExNS44IDAgMDE5Ni44LTEzMi4xeiIgb3BhY2l0eT0iLjgiLz48cGF0aCBmaWxsPSIjODRjZmZmIiBkPSJNMjU1LjYgMTE0LjVhMTE1LjggMTE1LjggMCAwMTEzMiA5Ni44YzUuOSAzOC41LTguNSA3NS0zNC4yIDEwMC4yLTE2LjUgMTYuMS00OS41IDE5LjQtNzMuOCAyMS4xLTI2LjIgMS45LTM1LjMtMzguOC01NS44LTUyLjQtMjUuMy0xNi43LTU5LjktMS4xLTY1LTMzLjhhMTE1LjggMTE1LjggMCAwMTk2LjgtMTMxLjl6IiBvcGFjaXR5PSIuOCIvPjxwYXRoIGZpbGw9IiM4NGNmZmYiIGQ9Ik0yNTUuNSAxMTQuNmExMTUuNyAxMTUuNyAwIDAxMTMxLjkgOTYuN2M1LjkgMzguNC04LjQgNzQuOS0zNC4xIDEwMC4xLTE2LjUgMTYuMi00OS4zIDE5LjctNzMuNiAyMS41LTI2LjIgMS45LTM1LjQtMzkuMS01NS45LTUyLjUtMjUuNC0xNi43LTYwLTEtNjUtMzMuOGExMTUuNyAxMTUuNyAwIDAxOTYuNy0xMzJ6IiBvcGFjaXR5PSIuOCIvPjxwYXRoIGZpbGw9IiM4M2NlZmYiIGQ9Ik0yNTUuNSAxMTQuNmExMTUuNiAxMTUuNiAwIDAxMTMxLjggOTYuN2M1LjkgMzguMy04LjQgNzQuOC0zNCA5OS45LTE2LjYgMTYuMi00OS4xIDIwLTczLjQgMjEuOC0yNi4yIDItMzUuNS0zOS4zLTU2LTUyLjYtMjUuNi0xNi43LTYwLTEtNjUuMS0zMy45YTExNS42IDExNS42IDAgMDE5Ni43LTEzMS45eiIgb3BhY2l0eT0iLjgiLz48cGF0aCBmaWxsPSIjODJjZWZmIiBkPSJNMjU1LjQgMTE0LjZhMTE1LjUgMTE1LjUgMCAwMTEzMS44IDk2LjZjNS45IDM4LjMtOC4zIDc0LjYtMzMuOCA5OS44LTE2LjYgMTYuMy00OC45IDIwLjItNzMuMiAyMi4xLTI2LjEgMi0zNS43LTM5LjUtNTYuMS01Mi44LTI1LjctMTYuNy02MC4xLTEtNjUuMi0zNC05LjgtNjMgMzMuNS0xMjIgOTYuNS0xMzEuN3oiIG9wYWNpdHk9Ii44Ii8+PHBhdGggZmlsbD0iIzgxY2VmZiIgZD0iTTI1NS40IDExNC42YzYzLTkuNyAxMjIgMzMuNSAxMzEuNyA5Ni42IDUuOSAzOC4yLTguMyA3NC41LTMzLjcgOTkuNi0xNi42IDE2LjMtNDguNiAyMC41LTczLjEgMjIuNS0yNi4xIDIuMS0zNS44LTM5LjctNTYuMy01Mi45LTI1LjgtMTYuNy02MC4xLS45LTY1LjItMzRhMTE1LjYgMTE1LjYgMCAwMTk2LjYtMTMxLjh6IiBvcGFjaXR5PSIuOCIvPjxwYXRoIGZpbGw9IiM4MGNlZmYiIGQ9Ik0yNTUuMyAxMTQuN2M2My05LjcgMTIyIDMzLjUgMTMxLjcgOTYuNWExMTUgMTE1IDAgMDEtMzMuNiA5OS41Yy0xNi42IDE2LjQtNDguNCAyMC44LTcyLjkgMjIuOC0yNiAyLjEtMzUuOS0zOS45LTU2LjQtNTMuMS0yNS45LTE2LjctNjAuMi0uOS02NS4zLTM0LjFhMTE1LjQgMTE1LjQgMCAwMTk2LjUtMTMxLjZ6IiBvcGFjaXR5PSIuOCIvPjxwYXRoIGZpbGw9IiM4MGNkZmYiIGQ9Ik0yNTUuMyAxMTQuN2ExMTUgMTE1IDAgMDE5OC4yIDE5NS44Yy0xNi42IDE2LjQtNDguMiAyMS4xLTcyLjcgMjMuMS0yNiAyLjItMzYtNDAuMS01Ni41LTUzLjItMjYuMS0xNi43LTYwLjMtLjgtNjUuNC0zNC4xYTExNS4yIDExNS4yIDAgMDE5Ni40LTEzMS42eiIgb3BhY2l0eT0iLjgiLz48cGF0aCBmaWxsPSIjN2ZjZGZmIiBkPSJNMjU1LjMgMTE0LjdhMTE1LjMgMTE1LjMgMCAwMTEzMS41IDk2LjRjNS44IDM4LTguMSA3NC4xLTMzLjMgOTkuMi0xNi42IDE2LjUtNDcuOSAyMS4zLTcyLjUgMjMuNS0yNiAyLjItMzYuMi00MC4zLTU2LjctNTMuMy0yNi4yLTE2LjctNjAuMy0uOC02NS41LTM0LjJhMTE1LjQgMTE1LjQgMCAwMTk2LjUtMTMxLjZ6IiBvcGFjaXR5PSIuOCIvPjxwYXRoIGZpbGw9IiM3ZWNkZmYiIGQ9Ik0yNTUuMiAxMTQuN2ExMTQuOCAxMTQuOCAwIDAxOTguMyAxOTUuNGMtMTYuNiAxNi41LTQ3LjcgMjEuNi03Mi40IDIzLjgtMjUuOSAyLjMtMzYuMy00MC41LTU2LjgtNTMuNS0yNi4zLTE2LjctNjAuNC0uNy02NS41LTM0LjNhMTE1LjMgMTE1LjMgMCAwMTk2LjQtMTMxLjR6IiBvcGFjaXR5PSIuOCIvPjxwYXRoIGZpbGw9IiM3ZGNjZmYiIGQ9Ik0yNTUuMiAxMTQuOGExMTUuMiAxMTUuMiAwIDAxMTMxLjQgOTYuM2M1LjggMzcuOC04IDczLjktMzMgOTguOS0xNi42IDE2LjYtNDcuNSAyMS45LTcyLjIgMjQuMS0yNS45IDIuMy0zNi40LTQwLjctNTYuOS01My42LTI2LjUtMTYuNy02MC40LS43LTY1LjYtMzQuM2ExMTUuMSAxMTUuMSAwIDAxOTYuMy0xMzEuNHoiIG9wYWNpdHk9Ii44Ii8+PHBhdGggZmlsbD0iIzdkY2NmZiIgZD0iTTI1NS4xIDExNC44YTExNC43IDExNC43IDAgMDE5OC40IDE5NWMtMTYuNiAxNi42LTQ3LjMgMjIuMi03MiAyNC40LTI1LjkgMi40LTM2LjUtNDAuOS01Ny01My43LTI2LjYtMTYuNy02MC41LS43LTY1LjctMzQuNGExMTUuMyAxMTUuMyAwIDAxOTYuMy0xMzEuM3oiIG9wYWNpdHk9Ii44Ii8+PHBhdGggZmlsbD0iIzdjY2NmZiIgZD0iTTI1NS4xIDExNC44QTExNS4xIDExNS4xIDAgMDEzODYuNCAyMTFjNS44IDM3LjctNy45IDczLjYtMzIuOCA5OC42LTE2LjYgMTYuNy00NyAyMi41LTcxLjggMjQuOC0yNS44IDIuNC0zNi43LTQxLjEtNTcuMi01My45LTI2LjctMTYuNi02MC41LS42LTY1LjctMzQuNWExMTUgMTE1IDAgMDE5Ni4yLTEzMS4yeiIgb3BhY2l0eT0iLjgiLz48cGF0aCBmaWxsPSIjN2JjYmZmIiBkPSJNMjU1IDExNC44YTExNC42IDExNC42IDAgMDE5OC41IDE5NC43Yy0xNi42IDE2LjctNDYuOCAyMi43LTcxLjcgMjUuMS0yNS44IDIuNS0zNi44LTQxLjMtNTcuMy01NC0yNi45LTE2LjYtNjAuNi0uNi02NS44LTM0LjVBMTE1LjMgMTE1LjMgMCAwMTI1NSAxMTQuOHoiIG9wYWNpdHk9Ii44Ii8+PHBhdGggZmlsbD0iIzdhY2JmZiIgZD0iTTI1NSAxMTQuOWExMTUgMTE1IDAgMDExMzEuMiA5Ni4yYzUuOCAzNy41LTcuOCA3My4zLTMyLjUgOTguMy0xNi42IDE2LjgtNDYuNiAyMy03MS41IDI1LjQtMjUuNyAyLjUtMzYuOS00MS41LTU3LjQtNTQuMS0yNy0xNi42LTYwLjYtLjUtNjUuOS0zNC42QTExNC44IDExNC44IDAgMDEyNTUgMTE0Ljl6IiBvcGFjaXR5PSIuOSIvPjxwYXRoIGZpbGw9IiM3YWNiZmYiIGQ9Ik0yNTUgMTE0LjlhMTE0LjUgMTE0LjUgMCAwMTk4LjcgMTk0LjNjLTE2LjYgMTYuOC00Ni4zIDIzLjMtNzEuMyAyNS44LTI1LjcgMi41LTM3LTQxLjctNTcuNS01NC4zLTI3LjEtMTYuNi02MC43LS41LTY2LTM0LjdBMTE0LjggMTE0LjggMCAwMTI1NSAxMTQuOXoiIG9wYWNpdHk9Ii45Ii8+PHBhdGggZmlsbD0iIzc5Y2FmZiIgZD0iTTI1NC45IDExNC45QTExNC40IDExNC40IDAgMDEzNTMuNiAzMDljLTE2LjcgMTYuOS00Ni4xIDIzLjYtNzEuMSAyNi4xLTI1LjcgMi42LTM3LjItNDEuOS01Ny43LTU0LjQtMjcuMy0xNi42LTYwLjgtLjUtNjYtMzQuN2ExMTUgMTE1IDAgMDE5Ni4xLTEzMS4xeiIgb3BhY2l0eT0iLjkiLz48cGF0aCBmaWxsPSIjNzhjYWZmIiBkPSJNMjU0LjkgMTE0LjlhMTE0LjggMTE0LjggMCAwMTEzMSA5NmM1LjcgMzcuMy03LjYgNzIuOS0zMi4xIDk3LjktMTYuNyAxNi45LTQ1LjkgMjMuOS03MSAyNi40LTI1LjYgMi42LTM3LjMtNDIuMS01Ny44LTU0LjYtMjcuNC0xNi42LTYwLjgtLjQtNjYuMS0zNC44YTExNC44IDExNC44IDAgMDE5Ni0xMzAuOXoiIG9wYWNpdHk9Ii45Ii8+PHBhdGggZmlsbD0iIzc3Y2FmZiIgZD0iTTI1NC44IDExNWExMTQuOCAxMTQuOCAwIDAxMTMwLjkgOTZjNS43IDM3LjMtNy42IDcyLjgtMzIgOTcuNy0xNi43IDE3LTQ1LjYgMjQuMS03MC44IDI2LjgtMjUuNiAyLjctMzcuNC00Mi4zLTU3LjktNTQuNy0yNy41LTE2LjYtNjAuOS0uNC02Ni4yLTM0LjlhMTE0LjggMTE0LjggMCAwMTk2LTEzMC45eiIgb3BhY2l0eT0iLjkiLz48cGF0aCBmaWxsPSIjNzZjYWZmIiBkPSJNMjU0LjggMTE1YTExNC40IDExNC40IDAgMDE5OC45IDE5My41Yy0xNi43IDE3LTQ1LjQgMjQuNC03MC42IDI3LjEtMjUuNiAyLjctMzcuNS00Mi42LTU4LTU0LjgtMjcuNy0xNi42LTYwLjktLjMtNjYuMi0zNC45QTExNC43IDExNC43IDAgMDEyNTQuOCAxMTV6IiBvcGFjaXR5PSIuOSIvPjxwYXRoIGZpbGw9IiM3NmM5ZmYiIGQ9Ik0yNTQuNyAxMTVhMTE0LjIgMTE0LjIgMCAwMTk5LjEgMTkzLjNjLTE2LjcgMTcuMS00NS4yIDI0LjctNzAuNCAyNy40LTI1LjUgMi44LTM3LjctNDIuOC01OC4yLTU1LTI3LjgtMTYuNi02MS0uMy02Ni4zLTM1QTExNC42IDExNC42IDAgMDEyNTQuNyAxMTV6IiBvcGFjaXR5PSIuOSIvPjxwYXRoIGZpbGw9IiM3NWM5ZmYiIGQ9Ik0yNTQuNyAxMTVhMTE0LjYgMTE0LjYgMCAwMTEzMC43IDk1LjhjNS43IDM3LTcuNCA3Mi40LTMxLjYgOTcuMy0xNi43IDE3LjEtNDUgMjUtNzAuMyAyNy43LTI1LjUgMi44LTM3LjgtNDMtNTguMy01NS4xLTI3LjktMTYuNS02MS0uMy02Ni40LTM1QTExNC43IDExNC43IDAgMDEyNTQuNyAxMTV6IiBvcGFjaXR5PSIuOSIvPjxwYXRoIGZpbGw9IiM3NGM5ZmYiIGQ9Ik0yNTQuNyAxMTUuMWM2Mi41LTkuNiAxMjEgMzMuMyAxMzAuNiA5NS44IDUuNyAzNy03LjMgNzIuMy0zMS41IDk3LjEtMTYuNyAxNy4yLTQ0LjcgMjUuMi03MC4xIDI4LjEtMjUuNCAyLjktMzcuOS00My4yLTU4LjQtNTUuMi0yOC4xLTE2LjUtNjEuMS0uMi02Ni41LTM1LjFhMTE0LjYgMTE0LjYgMCAwMTk1LjktMTMwLjd6IiBvcGFjaXR5PSIuOSIvPjxwYXRoIGZpbGw9IiM3M2M4ZmYiIGQ9Ik0yNTQuNiAxMTUuMWExMTQuMiAxMTQuMiAwIDAxOTkuMyAxOTIuN2MtMTYuNyAxNy4yLTQ0LjUgMjUuNS02OS45IDI4LjQtMjUuNCAyLjktMzgtNDMuNC01OC41LTU1LjQtMjguMi0xNi41LTYxLjEtLjItNjYuNS0zNS4yYTExNC4zIDExNC4zIDAgMDE5NS42LTEzMC41eiIgb3BhY2l0eT0iLjkiLz48cGF0aCBmaWxsPSIjNzNjOGZmIiBkPSJNMjU0LjYgMTE1LjFhMTE0LjQgMTE0LjQgMCAwMTEzMC41IDk1LjdjNS43IDM2LjgtNy4yIDcyLTMxLjIgOTYuOC0xNi43IDE3LjMtNDQuMyAyNS44LTY5LjcgMjguNy0yNS40IDIuOS0zOC4yLTQzLjYtNTguNy01NS41LTI4LjMtMTYuNS02MS4yLS4xLTY2LjYtMzUuMmExMTQuNCAxMTQuNCAwIDAxOTUuNy0xMzAuNXoiIG9wYWNpdHk9Ii45Ii8+PHBhdGggZmlsbD0iIzcyYzhmZiIgZD0iTTI1NC41IDExNS4xYTExNCAxMTQgMCAwMTk5LjQgMTkyLjNjLTE2LjcgMTcuMy00NC4xIDI2LjEtNjkuNiAyOS4xLTI1LjMgMy0zOC4zLTQzLjgtNTguOC01NS42LTI4LjUtMTYuNS02MS4zLS4xLTY2LjctMzUuM2ExMTQuNiAxMTQuNiAwIDAxOTUuNy0xMzAuNXoiIG9wYWNpdHk9Ii45Ii8+PHBhdGggZmlsbD0iIzcxYzdmZiIgZD0iTTI1NC41IDExNS4yQTExNCAxMTQgMCAwMTM1NCAzMDcuM2MtMTYuNyAxNy40LTQzLjggMjYuMy02OS40IDI5LjQtMjUuMyAzLTM4LjQtNDQtNTguOS01NS44LTI4LjYtMTYuNS02MS4zLS4xLTY2LjgtMzUuNGExMTQuMiAxMTQuMiAwIDAxOTUuNi0xMzAuM3oiIG9wYWNpdHk9Ii45Ii8+PHBhdGggZmlsbD0iIzcwYzdmZiIgZD0iTTI1NC40IDExNS4yYTExNC4yIDExNC4yIDAgMDExMzAuMyA5NS41YzUuNiAzNi42LTcuMSA3MS42LTMwLjggOTYuNC0xNi43IDE3LjQtNDMuNiAyNi42LTY5LjIgMjkuNy0yNS4zIDMuMS0zOC41LTQ0LjItNTkuMS01NS45LTI4LjctMTYuNC02MS40IDAtNjYuOC0zNS40YTExNC40IDExNC40IDAgMDE5NS42LTEzMC4zeiIgb3BhY2l0eT0iLjkiLz48cGF0aCBmaWxsPSIjNmZjN2ZmIiBkPSJNMjU0LjQgMTE1LjJBMTE0IDExNCAwIDAxMzU0IDMwN2MtMTYuNyAxNy41LTQzLjQgMjYuOS02OSAzMC4xLTI1LjIgMy4xLTM4LjctNDQuNC01OS4yLTU2LjEtMjguOS0xNi40LTYxLjQgMC02Ni45LTM1LjVhMTE0LjIgMTE0LjIgMCAwMTk1LjUtMTMwLjN6IiBvcGFjaXR5PSIuOSIvPjxwYXRoIGZpbGw9IiM2ZmM3ZmYiIGQ9Ik0yNTQuMyAxMTUuMkExMTQuMSAxMTQuMSAwIDAxMzU0IDMwNi44Yy0xNi43IDE3LjUtNDMuMSAyNy4yLTY4LjggMzAuNC0yNS4yIDMuMi0zOC44LTQ0LjYtNTkuMy01Ni4yLTI5LTE2LjQtNjEuNS4xLTY3LTM1LjZhMTE0LjEgMTE0LjEgMCAwMTk1LjQtMTMwLjJ6IiBvcGFjaXR5PSIuOSIvPjxwYXRoIGZpbGw9IiM2ZWM2ZmYiIGQ9Ik0yNTQuMyAxMTUuM0ExMTQgMTE0IDAgMDEzNTQgMzA2LjdjLTE2LjcgMTcuNi00Mi45IDI3LjQtNjguNyAzMC43LTI1LjIgMy4yLTM4LjktNDQuOC01OS40LTU2LjMtMjkuMS0xNi40LTYxLjUuMS02Ny0zNS42YTExNCAxMTQgMCAwMTk1LjQtMTMwLjJ6IiBvcGFjaXR5PSIuOSIvPjxwYXRoIGZpbGw9IiM2ZGM2ZmYiIGQ9Ik0yNTQuMyAxMTUuM2ExMTQgMTE0IDAgMDE5OS44IDE5MS4yYy0xNi43IDE3LjYtNDIuNyAyNy43LTY4LjUgMzEtMjUuMSAzLjItMzktNDUtNTkuNi01Ni41LTI5LjMtMTYuNC02MS42LjEtNjcuMS0zNS43YTExNCAxMTQgMCAwMTk1LjQtMTMweiIgb3BhY2l0eT0iLjkiLz48cGF0aCBmaWxsPSIjNmNjNmZmIiBkPSJNMjU0LjIgMTE1LjNhMTE0IDExNCAwIDAxOTkuOSAxOTFjLTE2LjggMTcuNy00Mi41IDI4LTY4LjMgMzEuNC0yNS4xIDMuMy0zOS4xLTQ1LjItNTkuNy01Ni42LTI5LjQtMTYuNC02MS43LjItNjcuMi0zNS43YTExNCAxMTQgMCAwMTk1LjMtMTMwLjF6IiBvcGFjaXR5PSIuOSIvPjxwYXRoIGZpbGw9IiM2Y2M1ZmYiIGQ9Ik0yNTQuMiAxMTUuM2ExMTMuOCAxMTMuOCAwIDAxOTkuOSAxOTAuOGMtMTYuOCAxNy43LTQyLjIgMjguMy02OC4xIDMxLjctMjUuMSAzLjMtMzkuMy00NS40LTU5LjgtNTYuNy0yOS41LTE2LjMtNjEuNy4yLTY3LjMtMzUuOGExMTQgMTE0IDAgMDE5NS4zLTEzMHoiIG9wYWNpdHk9Ii45Ii8+PHBhdGggZmlsbD0iIzZiYzVmZiIgZD0iTTI1NC4xIDExNS40YTExMy45IDExMy45IDAgMDExMDAgMTkwLjZjLTE2LjggMTcuOC00MiAyOC41LTY4IDMyLTI1IDMuNC0zOS40LTQ1LjYtNTkuOS01Ni45LTI5LjctMTYuMy02MS44LjMtNjcuMy0zNS45YTExMy44IDExMy44IDAgMDE5NS4yLTEyOS44eiIvPjxwYXRoIGZpbGw9IiM2YWM1ZmYiIGQ9Ik0yNTQuMSAxMTUuNGExMTMuNyAxMTMuNyAwIDAxMTAwLjEgMTkwLjQgMTE0LjcgMTE0LjcgMCAwMS02Ny44IDMyLjRjLTI1IDMuNC0zOS41LTQ1LjgtNjAuMS01Ny0yOS44LTE2LjMtNjEuOC4zLTY3LjQtMzUuOWExMTMuOCAxMTMuOCAwIDAxOTUuMi0xMjkuOXoiLz48cGF0aCBmaWxsPSIjNjljNGZmIiBkPSJNMjU0IDExNS40YTExMy44IDExMy44IDAgMDExMDAuMiAxOTAuMiAxMTQuMiAxMTQuMiAwIDAxLTY3LjYgMzIuN2MtMjQuOSAzLjUtMzkuNi00Ni02MC4yLTU3LjItMjkuOS0xNi4zLTYxLjkuMy02Ny41LTM2LTkuNi02MiAzMy0xMjAuMSA5NS4xLTEyOS43eiIvPjxwYXRoIGZpbGw9IiM2OGM0ZmYiIGQ9Ik0yNTQgMTE1LjRhMTEzLjcgMTEzLjcgMCAwMTEwMC4yIDE5MCAxMTMuNCAxMTMuNCAwIDAxLTY3LjQgMzNjLTI0LjkgMy41LTM5LjgtNDYuMi02MC4zLTU3LjMtMzAuMS0xNi4yLTYxLjkuNC02Ny41LTM2LjFhMTEzLjYgMTEzLjYgMCAwMTk1LTEyOS42eiIvPjxwYXRoIGZpbGw9IiM2OGM0ZmYiIGQ9Ik0yNTQgMTE1LjVhMTEzLjYgMTEzLjYgMCAwMTEwMC4zIDE4OS44IDExNC41IDExNC41IDAgMDEtNjcuMyAzMy40Yy0yNC45IDMuNS0zOS45LTQ2LjQtNjAuNC01Ny40LTMwLjItMTYuMi02MiAuNC02Ny42LTM2LjFhMTEzLjUgMTEzLjUgMCAwMTk1LTEyOS43eiIvPjxwYXRoIGZpbGw9IiM2N2M0ZmYiIGQ9Ik0yNTMuOSAxMTUuNWExMTMuNyAxMTMuNyAwIDAxMTAwLjQgMTg5LjYgMTEzLjcgMTEzLjcgMCAwMS02Ny4xIDMzLjdjLTI0LjggMy42LTQwLTQ2LjYtNjAuNi01Ny42LTMwLjQtMTYuMi02MiAuNS02Ny43LTM2LjItOS41LTYyIDMzLTEyMCA5NS0xMjkuNXoiLz48cGF0aCBmaWxsPSIjNjZjM2ZmIiBkPSJNMjUzLjkgMTE1LjVhMTEzLjYgMTEzLjYgMCAwMTEwMC40IDE4OS40IDExMy4yIDExMy4yIDAgMDEtNjYuOSAzNGMtMjQuOCAzLjYtNDAuMS00Ni44LTYwLjctNTcuNy0zMC41LTE2LjItNjIuMS41LTY3LjgtMzYuM2ExMTMuNSAxMTMuNSAwIDAxOTUtMTI5LjR6Ii8+PHBhdGggZmlsbD0iIzY1YzNmZiIgZD0iTTI1My44IDExNS41YTExMy41IDExMy41IDAgMDExMDAuNSAxODkuMyAxMTMgMTEzIDAgMDEtNjYuNyAzNC4zYy0yNC44IDMuNy00MC4zLTQ3LTYwLjgtNTcuOC0zMC42LTE2LjItNjIuMi42LTY3LjgtMzYuM2ExMTMuNSAxMTMuNSAwIDAxOTQuOC0xMjkuNXoiLz48cGF0aCBmaWxsPSIjNjVjM2ZmIiBkPSJNMjUzLjggMTE1LjZhMTEzLjUgMTEzLjUgMCAwMTEwMC42IDE4OS4xIDExMy41IDExMy41IDAgMDEtNjYuNiAzNC43Yy0yNC43IDMuNy00MC40LTQ3LjItNjEtNTgtMzAuOC0xNi4xLTYyLjIuNi02Ny45LTM2LjQtOS41LTYyIDMzLTExOS45IDk0LjktMTI5LjR6Ii8+PHBhdGggZmlsbD0iIzY0YzJmZiIgZD0iTTI1My43IDExNS42YTExMy40IDExMy40IDAgMTEzNC4yIDIyMy45Yy0yNC43IDMuNy00MC41LTQ3LjQtNjEuMS01OC4xLTMwLjktMTYuMS02Mi4zLjYtNjgtMzYuNWExMTMuNSAxMTMuNSAwIDAxOTQuOS0xMjkuM3oiLz48cGF0aCBmaWxsPSIjNjNjMmZmIiBkPSJNMTU4LjkgMjQ0LjhhMTEzLjQgMTEzLjQgMCAxMTEyOS4zIDk0LjhjLTI0LjcgMy44LTQwLjYtNDcuNi02MS4yLTU4LjItMzEuMS0xNi4xLTYyLjMuNi02OC4xLTM2LjZ6Ii8+PGxpbmVhckdyYWRpZW50IGlkPSJTVkdJRF8xXyIgeDE9IjExMjYuNCIgeDI9IjExMjYuNCIgeTE9Ii0yMzE0LjUiIHkyPSItMjA2Ni44IiBncmFkaWVudFRyYW5zZm9ybT0icm90YXRlKDI0LjMgLTUyMTguOSAtMzAyMC41KSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIG9mZnNldD0iMCIgc3RvcC1jb2xvcj0iIzYzYzJmZiIvPjxzdG9wIG9mZnNldD0iLjEiIHN0b3AtY29sb3I9IiM2Y2IzZmUiLz48c3RvcCBvZmZzZXQ9Ii4zIiBzdG9wLWNvbG9yPSIjODM4ZGZhIi8+PHN0b3Agb2Zmc2V0PSIuNSIgc3RvcC1jb2xvcj0iI2E0NTZmNCIvPjxzdG9wIG9mZnNldD0iLjciIHN0b3AtY29sb3I9IiM3NDQ4ZWUiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMyZTM0ZTYiLz48L2xpbmVhckdyYWRpZW50PjxwYXRoIGZpbGw9InVybCgjU1ZHSURfMV8pIiBkPSJNMzczLjkgMjkxLjJhMTE0LjEgMTE0LjEgMCAwMS0yNy41IDM3LjdjLTIuNyAyLjUtOTkuNy04LjItMTA2LjEtMTEuMS0yMC4zLTkuMi00NC44LTI0LjEtNTYuMy00MS41LTIuNS0zLjgtMTEuNSAyLjUtMTMuNC0xLTEwLjYtMTguNi0xOC4xLTUwLjEtNi4yLTc4LjUgMjQuMy01Ny45IDk1LjQtODIgMTUyLjYtNTYuMXM4Mi43IDkzLjMgNTYuOSAxNTAuNXoiLz48Zz48cGF0aCBkPSJNMjY3LjkgMTgxLjZzMTUuNC00LjcgMTkuMi0xOS4yYTI2LjYgMjYuNiAwIDAxOC41LTEzLjljNC42LTMuOSAxMC40LTQuOSAxNS42LTcuNmEyNy4zIDI3LjMgMCAwMDE0LjMtMTYuOWM0LjUtMTcgMTkuMi0xOS4yIDE5LjItMTkuMkwzNzUgMTM1cy0xNC43IDIuMi0xOS4yIDE5LjJjLTIgNy41LTcuNSAxMy4zLTE0LjMgMTYuOS01LjMgMi44LTExIDMuNy0xNS42IDcuNmEyNyAyNyAwIDAwLTguNSAxMy45Yy0zLjggMTQuNS0xOS4yIDE5LjItMTkuMiAxOS4ybC0zMC4zLTMwLjJ6Ii8+PHBhdGggZD0iTTI3Ni4zIDIyNy42YTIzLjYgMjMuNiAwIDAxLTIzLjMtMjAuM2wtLjEtLjVoLS42YTYuNSA2LjUgMCAxMS0uMS0xM2MuNyAwIDEuNS4xIDIuMi40bC40LjIuMi0uNGEyMy41IDIzLjUgMCAwMTQyLjQgMGwuMi40LjQtLjJhNi41IDYuNSAwIDExMi4yIDEyLjZoLS43bC0uMS41YTIzLjMgMjMuMyAwIDAxLTIzLjEgMjAuM3oiIGNsYXNzPSJzdDIwNiIvPjxwYXRoIGQ9Ik0yNzYuMyAxODEuMWM4LjggMCAxNi45IDUuMSAyMC44IDEzLjFsLjQuOC44LS4zYy43LS4yIDEuMy0uNCAyLS40IDMuMyAwIDYgMi43IDYgNnMtMi43IDYtNiA2aC0xLjFsLS4xLjlhMjMgMjMgMCAwMS00NS42IDBsLS4xLS45aC0xLjFjLTMuMyAwLTYtMi43LTYtNnMyLjctNiA2LTZjLjcgMCAxLjQuMSAyIC40bC44LjMuNC0uOGMzLjgtOCAxMi0xMy4xIDIwLjgtMTMuMW0wLTFjLTkuNSAwLTE3LjggNS42LTIxLjcgMTMuNmE3IDcgMCAwMC05LjMgNi42IDcgNyAwIDAwNyA3aC4yYTI0IDI0IDAgMDA0Ny42IDBoLjJhNyA3IDAgMDA3LTcgNyA3IDAgMDAtOS4zLTYuNiAyNCAyNCAwIDAwLTIxLjctMTMuNnoiLz48Zz48cGF0aCBkPSJNMjczLjkgMTk4LjV2My42YzAgLjkuNyAxLjYgMS42IDEuNi45IDAgMS42LS43IDEuNi0xLjZ2LTMuNmMwLS45LS43LTEuNi0xLjYtMS42LS45IDAtMS42LjctMS42IDEuNnpNMjU5LjQgMTk4LjV2My42YzAgLjkuNyAxLjYgMS42IDEuNi45IDAgMS42LS43IDEuNi0xLjZ2LTMuNmMwLS45LS43LTEuNi0xLjYtMS42LS45IDAtMS42LjctMS42IDEuNnoiLz48L2c+PC9nPjxsaW5lYXJHcmFkaWVudCBpZD0iU1ZHSURfMl8iIHgxPSIxNTcuMSIgeDI9IjI3NS4yIiB5MT0iMTkzLjEiIHkyPSIzNjMuNSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIG9mZnNldD0iMCIgc3RvcC1jb2xvcj0iIzYzYzJmZiIvPjxzdG9wIG9mZnNldD0iLjEiIHN0b3AtY29sb3I9IiM2Y2IzZmUiLz48c3RvcCBvZmZzZXQ9Ii4zIiBzdG9wLWNvbG9yPSIjODM4ZGZhIi8+PHN0b3Agb2Zmc2V0PSIuNSIgc3RvcC1jb2xvcj0iI2E0NTZmNCIvPjxzdG9wIG9mZnNldD0iLjciIHN0b3AtY29sb3I9IiM3NDQ4ZWUiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMyZTM0ZTYiLz48L2xpbmVhckdyYWRpZW50PjxwYXRoIGZpbGw9InVybCgjU1ZHSURfMl8pIiBkPSJNMzUyIDM0MC45di0yMi43YzAtNDMtMzAuOS03OS4xLTczLjgtNzkuMWgtNzEuOGE3NCA3NCAwIDAwLTczLjggNjkuMWMtLjIgMy4zLS4yIDI5LjMgMCAzMi43SDM1MnoiLz48Zz48cGF0aCBkPSJNODQuNCAxOTkuMXYtMzkuOWE3Ny41IDc3LjUgMCAwMTE1NSAwdjEyNC45IiBjbGFzcz0ic3QyMDgiLz48cGF0aCBkPSJNNzIuOSAyOTguNWgxNzYuNyIgY2xhc3M9InN0MjExIi8+PHBhdGggZD0iTTE2MS45IDI0Ny4ydjM1LjdNMTIxLjQgMTQ4LjZjMi4zLTIwLjkgMTAuOS01My42IDQwLjUtNjYuOXY2Ni45TTIwMSAyODIuOVYxNjcuNHMyLjItNzQuMi0zOS4xLTg1LjciIGNsYXNzPSJzdDIwOCIvPjxwYXRoIGQ9Ik0xODEuNSAxNjcuNHY3OS41aC00MC4zdi03OS41IiBjbGFzcz0ic3QyMDgiLz48cGF0aCBkPSJNMTM3LjUgMjUwLjlIMTg1IiBjbGFzcz0ic3QyMTEiLz48cGF0aCBkPSJNMTgxLjUgMTY4LjhhMjAuMiAyMC4yIDAgMDAtNDAuNCAwTTEwMC45IDI0Ni45di03OS41TTE0MS4zIDE2OC44YTIwLjIgMjAuMiAwIDAwLTQwLjQgMCIgY2xhc3M9InN0MjA4Ii8+PC9nPjxnPjxwYXRoIGQ9Ik0xMDAuOSAxOTkuMUg0MmExMiAxMiAwIDAwMCAyMy44IDEyIDEyIDAgMDAwIDIzLjggMTIgMTIgMCAwMDAgMjMuOGg3MS42YTEyIDEyIDAgMDAwLTIzLjhNMTI1LjYgMjgyLjdhMTIgMTIgMCAwMC0xMS45LTExLjlINDJjLTYuNiAwLTExLjkgNS40LTExLjkgMTEuOXM1LjQgMTEuOSAxMS45IDExLjloNzEuNmExMiAxMiAwIDAwMTItMTEuOXpNNDIgMjQ2LjloNzEuNk00MiAyMjNoNTguOSIgY2xhc3M9InN0MjA4Ii8+PC9nPjxnPjxwYXRoIGQ9Ik0yNjkgMTI1LjFhMjAgMjAgMCAwMS0xOC42LTUuM2MtNy44LTcuOC03LjgtMjAuMyAwLTI4LjFzMjAuMy03LjggMjguMSAwYTIwIDIwIDAgMDE1IDE5LjdNMzIwIDU2LjhhNjQuNyA2NC43IDAgMDEtNTIuOSA2OC43TTIxNS41IDE2MS4zYTY0LjcgNjQuNyAwIDAwNjguNy01Mi45IiBjbGFzcz0ic3QyMDgiLz48L2c+PHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgZD0iTTE1NS44IDcwLjJjLjUtLjkgMS4zLTEuNyAyLjItMi4yYTcuMyA3LjMgMCAwMTEwLjEgMTAuMWMtLjUuOS0xLjMgMS43LTIuMiAyLjJhNy4zIDcuMyAwIDAxLTEwLjEtMTAuMXoiLz48cGF0aCBkPSJNMzExLjMgMzAxYzAtNi42LTUuNC0xMi0xMi0xMnMtMTIgNS40LTEyIDEyYzAtNi42LTUuNC0xMi0xMi0xMnMtMTIgNS40LTEyIDEyYTEyIDEyIDAgMDAtMTItMTJjLTYuNiAwLTEyIDYtMTIgMTIuNmgtMTkuNmEyOC40IDI4LjQgMCAwMC0yOC40IDI4LjR2NTMuN2g4Ny42YTExOS42IDExOS42IDAgMDAzMi40LTgydi0uN3oiIGNsYXNzPSJzdDIwNiIvPjxnPjxwYXRoIGQ9Ik0xOTEuMyAzODQuMXYtNTMuN2EyOC40IDI4LjQgMCAwMTI4LjQtMjguNGgxOS42TTI4Ny4zIDMwMS40di42YzAgMTItMi4yIDIzLjUtNi4yIDM0LjFNMjYzLjMgMzAxLjR2LjZhNzEgNzEgMCAwMS04LjcgMzQuM00yNjMuMyAzMDEuNGMwLTYuNiA1LjQtMTIgMTItMTJzMTIgNS40IDEyIDEyIiBjbGFzcz0ic3QyMDgiLz48cGF0aCBkPSJNMjM5LjMgMzAyYzAtNi42IDUuNC0xMi42IDEyLTEyLjZhMTIgMTIgMCAwMTEyIDEyTTI4Ny4zIDMwMS40YzAtNi42IDUuNC0xMiAxMi0xMnMxMiA1LjQgMTIgMTJNMzExLjMgMzAxLjR2LjZjMCAzMS43LTEyLjMgNjAuNi0zMi40IDgyIiBjbGFzcz0ic3QyMDgiLz48L2c+PC9nPjwvc3ZnPgo="},41366:e=&gt;{e.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAgMTAwIj48cGF0aCBmaWxsPSIjMmZkYzVjIiBkPSJNNzUuNTg1IDg4Ljg4OWgtNTEuMTdhMTMuMzQzIDEzLjM0MyAwIDAgMS0xMy4zMDQtMTMuMzA0di01MS4xN2ExMy4zNDMgMTMuMzQzIDAgMCAxIDEzLjMwNC0xMy4zMDRoNTEuMTdhMTMuMzQzIDEzLjM0MyAwIDAgMSAxMy4zMDQgMTMuMzA0djUxLjE3YTEzLjM0MyAxMy4zNDMgMCAwIDEtMTMuMzA0IDEzLjMwNHoiLz48Y2lyY2xlIGZpbGw9IiNmZmYiIGN4PSIzMC41NTYiIGN5PSI0MS41NzUiIHI9IjEwLjIiLz48Y2lyY2xlIGN4PSIzMC4zODUiIGN5PSIzNS42OTkiIHI9IjMuODg3Ii8+PGNpcmNsZSBmaWxsPSIjZmZmIiBjeD0iNjkuNDQ0IiBjeT0iNDEuNTc1IiByPSIxMC4yIi8+PGNpcmNsZSBjeD0iNjkuMjc0IiBjeT0iMzUuNjk5IiByPSIzLjg4NyIvPjxwYXRoIGQ9Ik0xNi41NzMgMzQuMzI0YTMuNjQ2IDMuNjQ2IDAgMCAxLTMuMzI0LTUuOTMzYzMuNTAzLTQuMjM3IDcuMTktNi4xNDUgMTIuODQzLTcuOTc5YTMxLjM1MyAzMS4zNTMgMCAwIDEgMTIuMDE3LTEuNDgxIDMuNjQ1IDMuNjQ1IDAgMCAxLS41NjIgNy4yNjggMjQuMTkgMjQuMTkgMCAwIDAtOS4yMDggMS4xNDhjLTQuMjY3IDEuMzg3LTYuODkgMi41NjYtOS40NyA1LjY5YTMuNjMzIDMuNjMzIDAgMCAxLTIuMjk2IDEuMjg3em02Ni44NTQgMGEzLjY0NiAzLjY0NiAwIDAgMCAzLjMyNC01LjkzM2MtMy41MDMtNC4yMzctNy4xOS02LjE0NS0xMi44NDMtNy45NzlhMzEuMzUzIDMxLjM1MyAwIDAgMC0xMi4wMTctMS40ODEgMy42NDUgMy42NDUgMCAwIDAgLjU2MiA3LjI2OCAyNC4xOSAyNC4xOSAwIDAgMSA5LjIwOCAxLjE0OGM0LjI2NyAxLjM4NyA2Ljg5IDIuNTY2IDkuNDcgNS42OWEzLjYzMyAzLjYzMyAwIDAgMCAyLjI5NiAxLjI4N3pNNTAgODMuMzMzYy0xMS41NCAwLTIyLjM1MS05LjY3LTIyLjM1MS0xOC42NTZhMy42NDYgMy42NDYgMCAwIDEgNy4yOTIgMGMwIDEuMTYzIDUuODIxIDExLjM2NSAxNS4wNTkgMTEuMzY1UzY1LjA2IDY1Ljg0IDY1LjA2IDY0LjY3N2EzLjY0NiAzLjY0NiAwIDAgMSA3LjI5MSAwYzAgOC45ODUtMTAuODEgMTguNjU2LTIyLjM1MSAxOC42NTZ6Ii8+PC9zdmc+"},34071:e=&gt;{e.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAgMTAwIj48cGF0aCBmaWxsPSIjOWE3YWZmIiBkPSJNNzQuODU0IDg4Ljg4OUgyNS4xNDZhMTQuMDc2IDE0LjA3NiAwIDAgMS0xNC4wMzUtMTQuMDM1VjI1LjE0NmExNC4wNzYgMTQuMDc2IDAgMCAxIDE0LjAzNS0xNC4wMzVoNDkuNzA4YTE0LjA3NiAxNC4wNzYgMCAwIDEgMTQuMDM1IDE0LjAzNXY0OS43MDhhMTQuMDc2IDE0LjA3NiAwIDAgMS0xNC4wMzUgMTQuMDM1eiIvPjxyZWN0IHg9IjM1LjUzOCIgeT0iNjQuOTMxIiB3aWR0aD0iMjguOTIzIiBoZWlnaHQ9IjcuMjkyIiByeD0iMy42NDYiIHJ5PSIzLjY0NiIvPjxjaXJjbGUgZmlsbD0iI2ZmZiIgY3g9IjMwLjU1NiIgY3k9IjQxLjU3NSIgcj0iMTAuMiIvPjxjaXJjbGUgY3g9IjM1Ljk0MSIgY3k9IjQxLjI1NCIgcj0iMy44ODciLz48Y2lyY2xlIGZpbGw9IiNmZmYiIGN4PSI2OS40NDQiIGN5PSI0MS41NzUiIHI9IjEwLjIiLz48Y2lyY2xlIGN4PSI3NC44MyIgY3k9IjQxLjI1NCIgcj0iMy44ODciLz48cGF0aCBkPSJNMTUuMzk1IDM5LjU1OWEzLjY0NiAzLjY0NiAwIDAgMS0yLjQ1NC02LjM0MkEzMC4wNDkgMzAuMDQ5IDAgMCAxIDI4LjEwNiAyNmEzMS4zNTMgMzEuMzUzIDAgMCAxIDEyLjEwNS4yMjggMy42NDUgMy42NDUgMCAwIDEtMS41OCA3LjExNiAyNC4xOSAyNC4xOSAwIDAgMC05LjI3OS0uMTYyQTIzLjA5NyAyMy4wOTcgMCAwIDAgMTcuODUgMzguNjFhMy42MzMgMy42MzMgMCAwIDEtMi40NTUuOTV6bTY4LjY3NyAwYTMuNjQ2IDMuNjQ2IDAgMCAwIDIuNDU1LTYuMzQyQTMwLjA0OSAzMC4wNDkgMCAwIDAgNzEuMzYyIDI2YTMxLjM1MyAzMS4zNTMgMCAwIDAtMTIuMTA2LjIyOCAzLjY0NSAzLjY0NSAwIDAgMCAxLjU4MSA3LjExNiAyNC4xOSAyNC4xOSAwIDAgMSA5LjI3OS0uMTYyIDIzLjA5NyAyMy4wOTcgMCAwIDEgMTEuNTAyIDUuNDI2IDMuNjMzIDMuNjMzIDAgMCAwIDIuNDU0Ljk1eiIvPjwvc3ZnPg=="},2970:e=&gt;{e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0xMC0zMFQxODo0NTo1MiswMzowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTEwLTMwVDE4OjQ5OjE4KzAzOjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0xMC0zMFQxODo0OToxOCswMzowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDpkNjczNDgxYi1hMjkwLTRjNmMtYTJkYi1mMzUxNjE1OWY4ODk8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6ZDY3MzQ4MWItYTI5MC00YzZjLWEyZGItZjM1MTYxNTlmODg5PC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6ZDY3MzQ4MWItYTI5MC00YzZjLWEyZGItZjM1MTYxNTlmODg5PC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmQ2NzM0ODFiLWEyOTAtNGM2Yy1hMmRiLWYzNTE2MTU5Zjg4OTwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0xMC0zMFQxODo0NTo1MiswMzowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQ4PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQ4PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz5x7KE4AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAM7SURBVHja7NlNiJVVGAfw31VLnTLTHEsmmggNqRTNFmJRWYG0CIQQc7RNoW2CIlCkrRZYglRokEgUce1Dqk2EREVWBsnUxi+iwqu0KdQpbXQhc9s8Ay+X8+ade99x7sD7h2dzzrnnff7nOc/XuZV6vW48Y4JxjpJASaAkUBIoCbSFSa38qFKp5E11YxWWYzFuxGScxTF8h/dxOG+DESfWer0+YklgCrbhAuqXkSFUcX0R+hRBoAvfNqF4o/yMazqBwDstKD8sW9slUGmlmMv4wB1xnxud4jTewKHwg1V4NLHVUdw5lj7wUuJU/8HtiU/tSqwdaFefdsPo1MRYFb8kxvd3TBjN4AW8iJsxBzfhm5y10zuRAFzEryH/lzCXdiqBLBaEsy5CbzhwN64btVRcUCJbjK9bCKNtO3ERFngMH0Y2zsNpXI1pnWaBu/Bv4mQv4S3cG4rDhk60wKtRSjRiXRRtWfzdaeX0HKxIjB9MKC+veBtLAksSJQT056x/JDE2OWePK0IgLzRemxibHc6eKsPvGSsCeXd6RUPWnYidcdopvB5rrngU6onmJBXf+/EE1uKHJvLBtrHqBw620Qtk5VChYfTC3lubNeBmfNlkSfI29uLzhivzY9Y/8r49dc2JUXmVOICV0bTn4XxUrU/jC2zMzO3Dg/iz6GKuOxJUrYk9PsNt0XU9gFsiNP4evfLHOJNZvwN/YRZeiysEBqu9c/EcHoo9r8KpaD33jITApahv+vEKTlyGxAB2hzSD9xoHBqu9E/BM1E1vxvBCrMd9eQTyrtBZPIwZ0V29i2Wj+UDV1Vcb6uqrbcSWeEPaj2djutZKP3Aea9AXpn4yGvgPBqu9+3C8QP0ruDvC7uo4uJXR4cFXuT9M1feJSDArGvinMqRr0QN8H68LR1PVZQ6mYX4ovTxkdsx9gudxEi+Hky/Li0LNEhjGPGyKk0o19H/Eh89Fph4IJ52CmSE90a1lMYRPsT0S3/D1PobHcbgoAsO4IUy9OnyjlbJ8CD/ho6heTyasviCsrGgCjdfh/rgOC+N0e+LZcHo0PANhkd9wJJLXgYg4zb3fjIRA+f9ASaAkUBIoCZQExgv+GwBLFWutb+DuQgAAAABJRU5ErkJggg=="},48735:e=&gt;{e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0xMC0zMFQxODo0NzoxOCswMzowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTEwLTMwVDE4OjQ5OjQ4KzAzOjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0xMC0zMFQxODo0OTo0OCswMzowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDoxM2M5ZDZmZS0xMjRhLTQ3YjgtYTU4Mi0zNzEyMTU2Y2M4NTc8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6MTNjOWQ2ZmUtMTI0YS00N2I4LWE1ODItMzcxMjE1NmNjODU3PC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6MTNjOWQ2ZmUtMTI0YS00N2I4LWE1ODItMzcxMjE1NmNjODU3PC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjEzYzlkNmZlLTEyNGEtNDdiOC1hNTgyLTM3MTIxNTZjYzg1Nzwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0xMC0zMFQxODo0NzoxOCswMzowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQ4PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQ4PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz6ofcwVAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAANVSURBVHja7JlPixRXFMXPOfW6XUTyRzSCQhSCs3YbFNGd38Bv4S5kMb2LLrPJIvgJsnCRDxAEhaArs4ozzkyJjAgyQ0BliEqCdW8W71X1m0bH6uoSupMueDR0/enze/fce9+rprtjkQ9hwY8lwBJgCbDgR3jfiZXruA3g4pzovLO1ikvTRuD8HE30+S4WKucI4FEXgI05AnjYBWBt0QHmKQKbix6BtS4AWwB8YSNQjvgawPYciH9ajvhX1078cJ4T+D8BED5w8/oUP/QdgJtbqwfbbuU6Tr/Y3f35zd7eN2YVzB1uBjODm2Fyh/jFl8eLWSIwDcCJcsRtkjholCNuV9XbrxweK4Q7vB5msKraN6rq7dYsEZimF5xte6FXdowS6AAIkA6RMAkE4GbjGVbxa+cIlCO+BPCsT4AT3748bFU1JAWJoAhJYBqSQBIAUITgz386uTnrfmCzJcBnZ6756RbXXY6i2YimBFJQbbUEEYbDvT42NA96tZH7hVpwFK0kmvujIKEIYacPgM0+Adz9rKgkeCxcGVSd8GEw+GAOhhai1noFgH9NEYQgAOYAmZJZDoEwxGQuwuB+HwAbPVvoaJzlSdERCgDogAio0J2ZLVSOuAPgRUuAU2eu+eee1/ZsnFp9/ambD6NlJirQRD6oEKTiXl9vJaZpaFcOOHd1XwVilswT+TA4dOjNnz8etz4sVK9HzrW5kMCNle/thmXLg/hZwcxAKjUvQAIMDoJA8r0cMALFYLA702uVLos61p+powpJoBNIvo+iASK2YUKNaCYCggghPO4TYL2t+MabJIxM9qhFxzpEEHJloiNQXoEUwu99AmxMIz5+mfyM8YzLCasrUHQSBB9XoFRSRUDS3T4BngB4BeCTVuIbhjjFJCEK1oiO1hIIczWiTWNrgbrVRlirKlSO6FN25DFEvt6py2eyFpkvHcZlNQyG/+z8cORVbwDv68hseWO9wmyEZ+udZjnR9AGhCOF5W1FhCoCNLuLzSIzzISWzJ2vFIpWe61Aotj8GwHpX8U0+SKCnzQuVic6S2QWp+ONjADzoKj6HoJSJfnefkHSv7TNb50A54iMAv836iqH2vrKcyHdkRSj+pvRL60lZ/k+8BFgCLAGWAP9rgH8HAAXZGacjDhH3AAAAAElFTkSuQmCC"},28172:e=&gt;{e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0xMC0zMFQxODo0NDoyNSswMzowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTEwLTMwVDE4OjUwOjQ2KzAzOjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0xMC0zMFQxODo1MDo0NiswMzowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDo3M2IwOGUxZi1lNTg0LTRhYjctYjMwNS05MWU1MjYzZjE3ZDQ8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6NzNiMDhlMWYtZTU4NC00YWI3LWIzMDUtOTFlNTI2M2YxN2Q0PC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6NzNiMDhlMWYtZTU4NC00YWI3LWIzMDUtOTFlNTI2M2YxN2Q0PC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczYjA4ZTFmLWU1ODQtNGFiNy1iMzA1LTkxZTUyNjNmMTdkNDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0xMC0zMFQxODo0NDoyNSswMzowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQ4PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQ4PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz7FoLEfAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAD/SURBVHja7NmhE8FgGMfx75wmCYogarIgOM0/oZE1Jzi35C/QRP8IQXCSRHOaKnAnTaHZbGbs4ffcveXd3t0+e95377Ob43keliOD8RBAgH8HZF8dWO1Mw55aAdpAHSgBeeAEHIEdsAHWy0lr/FFAiHCAEdB7kOncrRWB2g2TOsAQ6FtdAyVgYHkRtxPObuJTqBFw7AKsgANwr2POaQOUffq3QBPYp30KFXz6u++8+SQBjk//wvpOfFIpIcAPAbyAFnXMzHoGXMuAufUMuJYXcaynnwaAG/cCcYo558nbJuoY7QMCCCCAAAIIIIAAAgggQLSPEv2pF0AAAb4a1wEAiqIxq8L7HncAAAAASUVORK5CYII="},2612:e=&gt;{e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0xMC0zMFQxODo0Nzo0NiswMzowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTEwLTMwVDE4OjUwOjE1KzAzOjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0xMC0zMFQxODo1MDoxNSswMzowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDoyZDIxZTUwYS1iOTg5LTQ4YWItYmNjMS1iN2QxMzU4MDA0NDE8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6MmQyMWU1MGEtYjk4OS00OGFiLWJjYzEtYjdkMTM1ODAwNDQxPC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6MmQyMWU1MGEtYjk4OS00OGFiLWJjYzEtYjdkMTM1ODAwNDQxPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjJkMjFlNTBhLWI5ODktNDhhYi1iY2MxLWI3ZDEzNTgwMDQ0MTwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0xMC0zMFQxODo0Nzo0NiswMzowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQ4PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQ4PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4hkhnwAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAO/SURBVHja7JlNaBNBFMd/SaZJN2m0iLQ0rVVr21Txo+LXQVBBW72o4MehVagHLXoQPXoQD4oHr9KD3gyiRz/wqogXhfWmWMSDiOIGvxGxVE2zHjptt8nump2dHIp5l2Tmvdn3/jP/NzP7NmLbNnNZosxxqQGoAagBmOMi/JRvd6wo7YoDL4GzwE3NsRwGzgNZ4I9T0X5/VNsK7AKWAqerMJmn5LP7q0mhQfm7AVirMfh1wPoSH9oBpIHdjvawRgDHHP/3AqlqANgDJB3tQ0CDhuAb5LOmJCVBaAcw4LIiAxoADLpMxKBuAAs9kmtYM32mpF/61AbgIFDn0r9eJqCO5HVKnfSpDcBgwBkMM/uBaFQJgMXAZh+9ajKXJm+pbJa+QwMYACIhAlEFHqlkk/AEULjeHWQpVWh0tFLqOmIJdhfKDBUW8Iw846zys/v4Orau8CsS6N1UJGyaOib8jerJs5om4KMqhY6wkn6S+AZnpIO/V/9zjEGRlfQDx8PkwE6iQCcRohQ9fc1TAOA3JsoEXURldH2qAAxgi1xK6PC2FQkbkbAD0cfXvoMY9dOtTfLUDwxgmwx9UhYAzXpo5GvbLH3NPtS2qQDYVdbTDiQphKWRp22S37S7avpUAPS57sxdCGKz35iC0MjTLsZvuoh7nDjbVQC0uvYmgGXUQfnOVAmNPGxslhEn4b2jqwAYAr67ahqBFiZUaORq00KBRs8h34EjKgDuAL3AE1dtG4IUP4PQyFWf4gdtrjddgMcyhrtq54DJG7mVXoSSGZ/MhxQxxiqlUdnsx/hJN2kX3k8AF4CtMoYQlzmTAiZnZSK9KyuydGLAzCHnR6MScEW6MVzm/h2wHZNzmO47ntorpckjWYm4Pat/PhEyM1TyolFZfys/SJf5vwX0Sl9VKKuYfMFkH3ACHNRpJU1q5sLlRqNZK5MiTyvzHeox4Dgm+zH5Ws260BSQK8BG4Pl0PmRpIso3LxpNg4rxhSwtDtUzYAMmV1VCUa+NmryQIEYAGwFkMYBCKV0c7T9kMeQl3gYuA5swGVUNI1xx12TcyomTso7zmTT1ZMiX0mh6Rdp4TwNJ4BOw18qJU5iMhwlBS3Xayol7wBrgAW0sIskrJ42MtA0pRsmwBLgPrJFjQou28rqVE5as55xhOYuFYeenqCMM+y09dABngJ1WTuR1+RVoFCsnisClzFDhId2MGB/sJqBID3liHLBy4imapSofOKycMJnHjnizfS3ebN+ggb5qBA8QqX0nrgGoAagBqAH4rwH8HQAhEOZB3cGxWQAAAABJRU5ErkJggg=="},53426:e=&gt;{e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIEAAACBCAYAAADnoNlQAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAFOJJREFUeNrsXXtwVNd5/7TvlXZXj9ULCSSBDRgCxnIDTYld7MZ1/4iLcZoMxXEMpnGHuPEY/+G2wbWHjqeua2daPJNgZvwAg0PCOIyx0iZpncQQO5kkfiHe4PCQhDCgt1ba96Pnu+yVltW993z33rMrge43s7O2uHvvuef8zu/7/b5z7m5JJpMBK6Z32KwusMICgRUWCKywQGCFBQIrLBBYYYHACgsEVlggsMICgRUWCKwYD8dUacjKlSs3srf/mmb9/3hbW9uWyW5EyVRYQGIAqGBv59irfBpOxNkMCOesdACwZZoCQL736c0EjAVuYW+fTPO0fCdjg/3TmQm2gBU7pm06YCywjr2tsDAAzVlhPL3SQVYMHsQOsDAgxRB7tbC0MDidmGCjBYCrAoXx5mnDBIwFWrIsUG6N/eRbxsligs0WAKaOSCw6EzAWuIO9vWuNtWbcx9hg3/XMBJYlnGJ9ZCsyC6AlXGKNMckyFk0kFi0dTPP1gSltGYvJBBstAOi2jFuuGybIWsKz1rgailbGBgevByawxOAU7ruCM4FoSzhcVgUnm2+GhMOleVzC7YXWsx9BoPe8mOtWz4Twyr8DRyzM5/Ff/Aicl7pEduNDjA12XMsgQDEorDx84NZ7GBAqucc5KoLgrKyGu3b+i5jrrt4EFTW1UOP3cY+1D/VB3dZ/EtmNHex1S6FEoq3AABC6PnCmcQEJAPZMGpKNcyDiZ6yx7Mvmr7vkLyQm6AYXpKN8JkiVByF0+0qhljErrK8tTZC1hMK8LtL/qSZiiaGB6VD7le2TZ9kAYmowfF322VNZIKUYaXYnS0ifG136l5D2lAp1V1mBfU0xwWaRlhABkHA4uce5IAOpmsbxQXR54ehtXzN+3aX3SOeQ43LaDonQEPdzaQae4bv+VrRl3HzNgCCL2MdEnS/s8bFUcBPp2PicRRP+1nXTFyQ6131df5Clgjsn/P2svYz2+cXLIVE3S2TXrs0K7WuCCYQq2YPzlpOOc7mYY/AFFP/tyO362eDgXQ8q/j2UTMPIEE2jDYllg4JYRlsBWGAVCNwydjE4C/rK6/hiMJ1SZAE5+hrmwsU59GWLvsZ50mfUQmKDRJzPTE3zIXzzF0V28ZLsGoywEP7wSU1NzfcqKipMncPtdkM0Gr1izWpvpd1IdT2kXG7NY07esQZus42SzvfJ0q9qD246A/3xJFQ5XdxzRe/8CixMDIEjEb3q3qiBDBeLxcZnrs32PRYzy8vLU+xcETN9nUqlPhNaJ9izZ8/Ply9f/ldmzzM6Oip11ovHLkgvXvg9bgjdcPOYI1CLRmcG3pudJLVhTZcDfh/hO4E/CzggTiDUe50jcI99CHw+H+jp83A4fCXNKQSeR8T4CUsHr7zySvOSJUvuNnsevCkEwHAiBa99eolm42pncQGA8VgwTW7HQ5W0Y89Face9kyyDsNcvDACS3hgaEjJ2wkDQ0tLyy3g8XmL2PMPDw9L7Mwc7IcSAwE0/5QGIVtRwj/tTbwa+GqCD4G5fWvoMLz6Lp8ED/POGMyWwN+wRBgA5bU4ZEGzduvWbCxYsuIHlKtNpoKysDI4NhmFvRx/pMz1BmgV7LJjS3Z6nammf+WSUdtyvYy44lnAIAQCG1+udOiBobW19wSwykSZLSq4QyTPttMWX6uoaVUuYG3/DGOALpfpz50J3Rvosd9BSGUgkaVpjV9grBABjolOnyCwICN58881XmpqaJDtQWmq8TBoKhaSb//G5Xvh9T4h7vMdhh966Fr5otOnTAkps4Cf00tFIGpzAB1pH0i4xgggASHookZhcEKAYXLhw4drcv8mzWU+g/UEAoRikuAEMZ80MkhhczwTeTKdxBR2w0VIJritciNHSws5Rr6QRzAIAg9nEyQVBXV3d6xUVFY78m9Eb6fSVmbqduYHuML8AI1nCGr4WQEtoRAsoAamRAKTOWBrcBDZAAPws4jYNADMTTwgItm/ffhtjgT+fUESJx3WdB92A0+mE86MxsiVMzmghHfdUTRpExQt1NDAdDtOO2xvxQE/aZhoAIqyiYRA0NDTs9ng8JWqzWk8awMA0QLWEuE+AYgnR5okKFJafd/PFH64rODK0624d8pgGgAiraAgEb7zxxsZFixYp8rHf7yefR2aN3zEhSLaEtUQWqE0JA8DIyAgkmfp/vpYmwqiW8WTaBceTTtPtM2sVDYGApYFn1f6NimxMA3LjnzlIs4RVdfXsjvnLuGjr0N6JCLmEjRa20ZGBBwN8NsB1hZEEDQgvR/xC2mnGKuoGwb59+3YyQeg1I1SwQ+U0gJbw+BBfTKIl7K/mi0G0cyJYQJ79+aB+tDLBrsEH2B+jKXAQRGIv0wX/GzNf9DFjFXWB4OWXX25maeABnvhDz8/rYIkN2GyhFoYyddT1gZRk60TN/omWMQObgvwOR8t4nmgZ34qVTrCMxbSKurqrtrb2dTYzShwOh6YLSGpUz7CD5TSAlpAiBtESxoIzSJZwfWVa+OzPj6/4knCTi3+d7hh9XQGBYDaMWkUyCF599dXbWltbV8h0rgUEtZUyeYUQAy0htTAUarhRqI3TO/uV4skgjX4PhWmgxJTQmTK3vcOoVSSDoKWl5a38AVUDQjAYVDzH4OD4lqwnPjxHum5lIEBaH0BLaGR9IBKJkGZ/fizzpOBLpXzQoWXMJGmAeSNaZgoERqwigp8Egl27dm2cO3dutdLM5qWG3JqAbB/RElLWBzAGqCxQn9JdrUTtgu03ujHjyWAcfCX8zx5hwp2yrnCC2cWfRYxbRr1WEQGA4CeBYMmSJS9oKX0lIOTmJzwmlRqfNU98QHs21T9jJvOcfHTjAhGuD1Bzojz7PR6P7o7u7++HgYEB6X5qM3F40E/YZ5jdisZV+KxN/zlorvBDtYroJmTm4IJg7969b+WvD1CAgJ2VO+Nkun2NuD7gZpYwVMUXg2gJH6pMkWeCntmPHYUDjrkWQYP/j2yGW8Tkyug3fDFosPPz/ulYBp9fUv13tJO4EnkhaYPvDxkHAtUq4v3IfWDjWcLFixffS7JweUCQZ2VuaVjPKmFJw2ySJcSaQK4lxEEzOvsxnSB4cTbJDgcHHNuvBhqsGTwSiJEsY6fGVjRcgUxlL7Ez5IRhgxqXYhVxTHCsSMKwoaFhn9L6AAUI8kVy1xKo6wNVvlLSlrEF7olbxiorK8mzP5facQbhQhbOdLvdrksnrCqLk9YVuuNpcGUm3j8yRFds/D5GMjZ4dsANfX19hvSKVlqUhGDeDjBVEOzYsWM1Y4Fb9DZABgLOHnQD2LEYuGVsO3GVsL92Num4p2pSqrM+f/ZTqN1M/AOBDTDaFSzjEYW//STihlOeoNRWBLFcYDNjFdVWLFVBwNzANqMdgjMLAYCI6+3tlV5Pf3iGRmf4zALBEq5wxWBupFfZ97Lr4toEdp4MBAq1m4mljAnuLeVrHdyKBqkc1kinJBupFC+NXNE4CGIUcTiI2K+89itZRZnpyHWC3bt3//usWbMq9DIAzjSkWMw52HBMCwHm8//AnNvHg3zV6mVicKh+DkEMZuBp3PbFZjJeI/+FAMB33LSql9rNxD9XRMFHWFc4GB7finZYo5j0UdwJbTmbT3AQ8Z4Q1AgGNQbLF8jYF1opQhEEzc3NG6gDjx2OuQvFFA58bgNkkfjsYZoYdOCWMYIlXBtISit6SoEdg+1ANsIXbx1DZCA4H/Tx2QDJoJ9po+FEUrKPWvHSiHI5GcGA94f9j3leyypin2hNBEN1SqRYvDjOckSnGs3oqWD5Z7ZAZd0MmOflV+6qNOr2OEOwg5D+EJD4wnyKfzO7DYsSscvdTOrznww7W1EN6SD/GctQuoRUIML7RTCgO8D7xP/HyYCTQMsRYd8oMkFHR8c2pRl26dKlsYdDEADUCtamxQ3aBzIrmKiqg54kjNkkrXg35pa2ZimhHwdbUtw5AkhmhkKzAjqfPWd6WM8Oa78iYbBX1ZDu9R8Do+Try6kChSH2PU5WvHccaPwbpmp5kQxBgkytWjG8//77v9PV1TWYn+flma837qoPwNKgel28evaNEGVNibBOGY7zix3S0zwRr6L/1SqhyqxQKI3w3PFLMJLkO42q5jnS/fLiT1wJWOmN6W4Hil8UkTgp5IHGe0dhjP+dnx5UW3L+/Pk1Snleb8h2ZdMiFTZgTqC3dNzbn4llVNVybrwXc8HxnKd5cHDzaU+pelYoVjgxHIW3zxO+s8BbBv2+IOmc3/Lpf+AY+wHHTa4FUKylKghWr17986NHj5r+EkW5MQvKvbBq1sRCTnXTxJpAOEF7mkeJDfJ9sVaqEskKzx27SDou2HID6bi/ZgzweRd9txBSP2oC2Q3JEwBnPg8Impx08eLFVQxVpnopd+MpsoHfaR+fldV10OuYqH7PJ4BUWTyedEhP8+BNKqUpnjAVxQq/vBSCD/sJW+Qqg9Dn5C8X48rkt3y0FVEcbLx/FIO5lcBcx8ADgiYIHnnkkY5jx469LYoyAwwAa+dUj4lB54wm1WMvx1Mk4YRskHC4SX65EKyAYP0PIgs4Z9IqoQ+URUmLUthmBLFSLSTfCWkBgatO1qxZcx/L60kzg5870749vw4amA3EZeJQibpDHUxhB/Mvixs130mY35pllBV2netnjpBP277GJna/fFE9gw3+10sjXOpHEaxVCFMqJKkBgbSf4MiRI0+Y6eD8Bj3XOhOSVfXcz52OprnFFIy3Ez7ozdi5ABTNCt1s8HeeJTwv4XJDkrBHUrKE/lHV3cwy9asN8lUFIIfyBFMCAgkE69ev33L27NmLRkGQ/7TysmofLPLQFm0G4zQS+mEsoClMjbACb6fS1k97SJYw2NRCtoR3euKqLkumfiqYVTGZBwRyD507d87wN0Iqibbnqmn+tytOs4yfpNxwIjWx2oje2GhgZ2FxTIkVPugbpVlCZoH7SquILDARdCjwkPqxLSLrG7lAIINgw4YN7x86dOiA0Yvme/YrT/PQLNAQlQ3iARAdyGJKrPB9xgKUULLAapZwvjN5VX/hNZHJjCx1UwAjA0EXV/b09Kw1ahmVFjm+XUF7mudSkmYZu9IO+E3Sa1oX8FhhH2MAiiV0q1hgJUuIWiC3vQi8Yqx1kDea5lrGw4cPv2bkYkqeHZ/mQSBQojNKs4y7GRuEMzbTukCNFQZjCVphiFlgl4YFzreEOBlw8OWtX2aoX88GFF3pYKzBDzzwTcYIuuuZakJlLUsJlKd5kH9ChHWFSKZEcguidEF+/KBjgCQG/TMaNS2wHPUlSVhr75OYEgdfxC6nZDJZWBBgnDp1apNIStpURftiC9yxS7GMWDdQs4xmAusB207TLGGoqoF0zqfLBidU+8yG3jRi6MpoGRkQTuv9nNpOYOrTPFJxKEpLH6/GyrmaRG88f5ImBiuaaesDtzrj0GqPCl/M0ssmhuHX3d29Tq9I1EL7piqaZfwsCSTLeJLZxVzLaJZmUQjuv0zItcwSDnppTwg/6e676vlMkY6mKCBAy8jY4Nd6PqO1Jx4tI1UkXjbABpRNMEJYoInGAl9zhmCG7UruRi0g4qvoxjSp3V4cEMiW0ey6Qm5g3YBiGQfTJTAQ56ePPqYL3kmUmW5X24VhOBXiM5W7tgEGHfxH29AS/r336hSQ+5hescMUCLKrjN/V8xmtUqz0BRBEkfhZLEmyjPuYU5AtoxFdgKnn+ROXSZawpJ74FbueASiDFNdCGw299tK0JF23bt13mD4g/1Qb7wnm+3xJWOrhzwq0gsOxOOm4H8b9hmfbtj/2kSxh5axm0vrAjbY4fNmpDEYR31puJK0I8SWnT5/eQD1W3giqFY8StcGZePZhDk5gFbEz7dQtmNAS/qBzgGQJBwK1pHM+7lUfaLO6xSjbCQHBww8/vIdqGSkbVdEyrvLRpAaFDTCQDfRukn3qCG3htGLOfNJxX7SNSpZQK8x+YbWRUrOwCkVXV9eXqJaRQlmPVtC+AAJ/pzCc5NM8WsaPU56x5xQplvCjAcKxaAldNPG5PtE5tmVfVD43WyMQCgIUie3t7f9nVhyO9e3ooFRTJ4nEKHXPgZ+cM186TftyTf/seTQAuIagLhOXBGDu1vj8kB+eNRpqm0k02UP0HnyRv42Mv056YPWTpK+xbYQ41Ae01wj0/Ibxb2++m/srbI7qOkg28J+d9Ib6YcWefwNnLCKqm1FYrGpra9s/6RZRzTCIOhF22qL33yQdi8vNvHUF//tt5GvP6T7OtYSZnF9i1Yr5f/hvkQDA2CgKAAUBQbZxB0Sdr/5MOwQvfMo9LulwwcV+dSXv6jwJpYd+Q79uXxcEh9S/TwH3CqScfG+PbZ914nciu7id9fGOKVMsKgYbYCx6j8YGPS6f6rqC/702/dc9/aEKv5dBrK6JyAL/I7pvhf96ekFAwJCKuuBFUecL9J4nz6ZLCmxQevi34GZMoPu6o/0sLZxQZAFKYJuD3adEdu3rItNAoZkAY3NWwAiJzzFt4Izz8+qQxw/94XFXYWO5OPCLHxm+7rzOdnDmfBmlnVnCWCUfBNjWeWJZYAiupV9Nz7LBoMhGo7CidmpXzjeBlX3wDtiiYePXTcYlIMhi0EbcMja7/VdQGuoT2aVbsgwL1xITIBDwF77bRZ1vDutYtFtckWh3Qk9oRLKERrSAklPwxkbBURmEhJf/+wTYRsFaoAMK8GvpY1YXCh8oZN4VdbJlP90GR27nPwIRdpdC+cc/FXYTy47uh/aGZrATnEoBxODmLLMWJEqK8aVOK1eu3Mfe7gUrjMQBBoA7CnkBW5FuZKM1llO374oCgqyg+VdrPA1ZwoPXBQhkdSvSMk6DGCoWgxYNBFlhY6UFfZZwsBgXKinWt33miMT97G2FNcbalpABoKVYF7NNwg1utsZ4agnpooMgW/t+3RpnTUu477oGQQ4bWCJROdYV+4KTAoKsZdxijfeEeLFQ6wNTkQlky9hhjftVlnBS9NKkgcCyjBNTZLEs4aRbRMsyTr4lnErpYFLskCUGpyAIsrXx6WwZ3y7ElrFrjQlkNpiulnHSmXBKgED0VrRrKB6fDEs45YShFZMfNqsLrLBAYIUFAissEFhhgcAKCwRWWCCwwgKBFRYIrLBAYIUFAissEFiRE/8vwABcmUOh+5re/gAAAABJRU5ErkJggg=="},78:e=&gt;{e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0xMC0zMFQxODo0NjowNyswMzowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTEwLTMwVDE4OjUxOjAyKzAzOjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0xMC0zMFQxODo1MTowMiswMzowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDpmMTYxOTU0ZS04MGNkLTQxZmEtYTU4Mi03ZTA2ZjExMGQyNDg8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6ZjE2MTk1NGUtODBjZC00MWZhLWE1ODItN2UwNmYxMTBkMjQ4PC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6ZjE2MTk1NGUtODBjZC00MWZhLWE1ODItN2UwNmYxMTBkMjQ4PC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmYxNjE5NTRlLTgwY2QtNDFmYS1hNTgyLTdlMDZmMTEwZDI0ODwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0xMC0zMFQxODo0NjowNyswMzowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQ4PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQ4PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz5kg5etAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAACRSURBVHja7NnBCYAwDIXhF/HsyQ2cxQHELZzCBdzMGVyid+MEgmC0lP7vWmj4mrZQau6uktOo8AAAUDugvRtI0xBxPdm2HJL0eq51dGMLAQAAAAAAAAAAAAAA4NGDRpIF1rHfAd28hxTws8/WAQ9cef+qixxiAAAAAAAAAAAAAADqBRg/9QAAAMiaCwAA//8DAHcfEqGxml2xAAAAAElFTkSuQmCC"},92502:e=&gt;{e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0xMC0zMFQxODo0NjozMCswMzowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTEwLTMwVDE4OjUyOjA5KzAzOjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0xMC0zMFQxODo1MjowOSswMzowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDphYjQyNDg5My05YzA1LTQ4ZTUtYjlmNi1hOGJmNWM1MDVjYTU8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6YWI0MjQ4OTMtOWMwNS00OGU1LWI5ZjYtYThiZjVjNTA1Y2E1PC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6YWI0MjQ4OTMtOWMwNS00OGU1LWI5ZjYtYThiZjVjNTA1Y2E1PC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmFiNDI0ODkzLTljMDUtNDhlNS1iOWY2LWE4YmY1YzUwNWNhNTwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0xMC0zMFQxODo0NjozMCswMzowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQ4PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQ4PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4pbu9MAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAALmSURBVHja7Jm9TxNhGMB/1w9o+WwRxBqKBRIVCgHRJqibGicTBwcXF/4BnBhEnTQ4aqKDiZtp4uIfYJq4GQ3GJg6CmJj4ERMVBxWwitfeOdgYbOF9r9f3PUvsk9xy997d87vn+z3Dtm22svjY4lIHqAP87wAB2QJj6MpGp1PAXaDXxTvXgJfAfeAa8Kp0gb1wTrsFpl0qD9AIJIEpYBE4Dxheu9CoIg9oAC4DV70ECAMDil35LHDSK4BBwK8hHi95BZDUlFBGiod2gBH0yZgXAEMaAVoAjNksxmxWTR1wZQHLtMktG9iW/GnBBgi3mNh+v5t0WilAmzz/WzZflgxw2Kaba5BbCeIPwN7d0xyduA2s6nIheQDnlp0rv14Kedi1IwFkisVOC4DcffKmO+/3+6AnBnAQmNEFIA/ggkuAgQSE/nz4KSDkvQV8/HQUuGX3+SD1V3cSAQ57HwNulAcYH4Zt0dKzCdUAXUC3JKMEK1a+JwYT4xumM9UAw9IVP3JGxcqfOPbbhcrlveo6kFSWgQwD9iXh0IHNlLeBrGoAcQAbmFh5uQv190JqDLo7RaseA59UAwxJMxAEy7JLOASdUYjvhL5eiLY7edcNHa2E2AJNjSaTpy1am6vdKHgK3FFdyOKA+NPtSaBA+RxwBiioBpAHcFckokD5U6Qz8zrmAVkPZBFprUb518AR0pl7ugYacQA3Bj/id+U9S8BFIEk6M+fmAQElFmhvXgFiEkUfAt+Br8AbYA54QDpjVmO6gEMrDUr8X7RL8Qg4TjqzigZxYvd+oEm4Ynu0Q3D1gi7lnQLIe6COtuhm/WmxqvIvAZKSXv4z4U0nwLc6v75TgKjwanNI1DU+Q7M4AbhVzNMbyTtGBxYF9y7UAsALoK+4Z1N6xEnERBV4XjeA4fY367qdsw+CSS0FPHGrnD2zX/lMXFaDBcpbwPNacCGRrAE3gXzpbAZcB77VrAvVitR/s9YB6gBbXH4NAPk4lvSvH1uQAAAAAElFTkSuQmCC"},70855:e=&gt;{e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAA4KGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNy0xMC0zMFQxODo0NDo1NSswMzowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE3LTEwLTMwVDE4OjUxOjI4KzAzOjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0xMC0zMFQxODo1MToyOCswMzowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDo1YzM2ZDQ0Mi02Mzk0LTQxYWItOGRiOC1kOTRhMzQ5OWZiYTE8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6NWMzNmQ0NDItNjM5NC00MWFiLThkYjgtZDk0YTM0OTlmYmExPC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6NWMzNmQ0NDItNjM5NC00MWFiLThkYjgtZDk0YTM0OTlmYmExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjVjMzZkNDQyLTYzOTQtNDFhYi04ZGI4LWQ5NGEzNDk5ZmJhMTwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0xMC0zMFQxODo0NDo1NSswMzowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjQ4PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjQ4PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4R9wbbAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAHGSURBVHja7Jm/S8NAFMc/8ReIxUWK1F8gLqKDoLiJIjqILroptfqHtbhZCyIILg4iLm5mcnJ0acUuQtVB1Li8wHGktbZJk8N7EHgX8nr3yXvf3DvqeJ6HydaF4WYBLMB/B+hpNbCSdtqd+wZYEX8tU/WuTcrAJLAsfllgjCqhHOCnsAR8mwTgAAfKuBiXiO8AT7nmmoxbAqbEfwDcuADy2ni/yTj17ZfaTmervVAl7aSACpBSxDgBfDUI6weegEEZT0sWyFS9jmfgFThWxiPA+i8x28riXX/xcW5khT+W0WFY4g2jhFQxL4j/BmSAWkDIKPAIdMtnc1zKjrhKKEjMA8BOneeysnh/Fy4npRc6Fj0EfWUiLZ+wAHQxrwJj2jOLwIz4H8BZ0rrRvPab2QZv/xJ4SRqAq+2oOcXvA3ajKJ+weyE1C7PAvPhbwJD4NeAiqQC6mHMB5XMOvCcVQBfznuwJm1GVTxTttFpGw8AR0CvjZ+Aq6QCu7My+bSj+KfBpwqG+UOd+KYK5IgHQxYz0QLemAOhiBjiRU5sRAEGntWJE80QGoJ9z700D6JhZAAtgASyABbAAFiBOc+w/9RbAAliAWO1nAMbOYFj/5qc6AAAAAElFTkSuQmCC"},16535:e=&gt;{e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAHgCAYAAAB91L6VAAAAAXNSR0IArs4c6QAAYTBJREFUeNrtnQmYZFV5908PYVEEEVdEkWgUVDRu0ahEjRoXEnHDlUjURBQUDfmUZebemho2ccMIKo5EDcYYbY1EMS0jM3Pvec+p6u6Zng0YUAdFUXCDAApCV1d3fc97llunanrG7qrq5d77/z3PeXpoZnqpOvf8z7sLAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAHqtXqiuHh4X2SJPmTiYmJfXkNDw/vN8jFX7PVag3h1QagPPAzvxDniT9T+MxqtVr78BmGVxvkAhbbQGj3WeQHEg8KAOUQ30V91pfyXAPgj1q5zgrdZ083Va31QWNjYw9PRkeP1FofRURP6nfJ0dEn1mq1Y5IkeVT4s+AdAaDY543/s9b6kXwG8FkwiDOFz6bR0dEjkyR5BJ9Ze/KseUHGpR8s6S2UN2H35zds2PA4Ivpb0vp0SXSJUuq/SWtJSm0npX6ktP4pKfXzvhYRf7xZKvULUurHRHSGf1jwUABQfMtXKfUBItrlzoCb3ZnQ7/qZJNpFSu1QSpFU6ltSqU9Lpf5fqtSrpJSP777kQ4jBYj8EQxwfCT9Xq9WeJrX+oCT6thFEpSbHN21qbd22rbV9x47Wtu3bzZ+3bN3amtiyZWBr0+bNrR3XXNPi70VEJ/ifDzFhAIp37njx4wt+fXS0dc2115ozYJBnCp9RfFbxmcVnF//ZnC9KNSTRTaTUlUqpM5VSzwx/Pj4T4YEDC0oovPxAENFrJNE3Sanf8CblTTuxdWtrdGyspbTmTdvkjcuC7JfSetJ9rufFX8MvUupufhCJ6JLQRYR3C4BiWr9SqQvNM6/UPf5MGdS5Ep5V7vNNPsv4TGOB5jPOCLLWt5FSV6RKvSE8F7uNEwAGcvsMY7xKqVdIpb6vtJ7mGyLfQnmTSqIpt3H54zQpNUNKtRZySaImPxSk9WchwAAUk/CZJqKP8jPPz/5Cny/uDJt2Z9qkE2pz5vHZ5/5OopR6VfizwhoGA9/4GzZsOJy0vow3I28+dgMFVu5iPAyzPRxT7IaWSn0GAgxA8S1gpdSF7B52omgu+XLQF/u9//+mc0k3+Qx0Qsw/x5drtdpjcA6BgRC6U7TWx3ESVSC8U+EDsEQrE2AFAQagHBawUh/xAiyX7uzJzh9emRBrfZNS6rWznaEA9CS+pPWH+NbHMZDAHbOUwhsuCDAAJRXgZXIOeSFubrZnJAtxDBEGPbHWlRex24eTmzZPTJgkBBf/mF4mwgsBBgACvJzOIhbiBlvDxljR+rKdO3fuJ1y5Et5F8EfxG2VkZGR/SfQVTnZwGc2NZWT1QoABgABPLcPzKPu5THIo0TeTJHkARBj8UbyrhMWXiL7mNvnMMt7oZrNvhwADUEoBlkTL8lxyGdoz5ufU+ts7duw40HgX166FCIM9iy+XHCmlLt/mxHeRUv37yVSc4k0OAQYAArzMFp+d0+5nHfYWMGLCoIMwxZ+U+oSvb1vO4hsmP2xHGRIApRTgZRoW280SRq8CsCeGvABrrd/NyVa1er21zN3OnS7oHTsgwACUxEiYrQ54mYpvdkbpWs23zD1duKESaJkLssQAInq2JLrDdbWaXATX8cyA1qS7XV4KAQag+BawVOrjLjl0cmDniNYzCyzCDSfAd9dqtRcIJGUBH4tIkuQApfVGI2QLk+0848qXeDWdW2bKfWy6z89nNYN65ObO669vSSkj/3tVMZ0EgEIRtnbkSWvXXnddmCA63es5wmeQP4/813Bn1cwCCHHDtNBUanRkZORggXhwqclcz9xoI+jn3Oy6ufVj5foHw3xNdm3zLZAnjvBG9Itjzr0s/jrclF0ptdm3gIP1C0CxrWCeA0xKaX72/fSiXlZ4BvHXGd+82YffWsG51bcYB2epOQe5RlgqtVpgelt58e4PpdQTeA6m63I1GSQ39SPA017Ix8bHzWbnZh7Ouv4ZaV1XSn2LiLiv9CdI6/OlUlWl1Gr+OMfFf/dcpdT76/X64X4z88UC7y4AxcSLVZIkj1BKvVcpda6cx7nhzxgiOt+cPUp93swsV6pGSvGs8kk/aMGNIfRGyfQAEkbNGevOwl8S0VPdxWI/vLNldee0s56bvQqv3L0lmxFc3shSqV9xMTrVaqdprY9NkuRR9Xr9fgv1YAIAyiHCg4TDcHyRJ6LnS6XeK5X6Oil1C59hTjAHNfzBnJHdWdEthM3KZ/1qrZ/Mm8xtsMleNla3+LLFu8l+vZ1S6w9uqNUet8C/jnelQ4ABKI8IL/gzPzo6eqRS6gOk1A4WYj7bOkR4nmG64Kxs8NcjpX6rlHqmQEJWSa1fojWh9dtH3NeIr2tEfjdpveaqq646tPvWyg8Nx3F48Z/DxT/XfJf7txBeAEpqCfd5dmSr61zqOFPGxsYOJq1XklJ3mfitq+2lwVjBH4UVXELrN9m06RGk9TVOgPuJ/ZrN5GLIPyail/jv5Td1UPMGsQQALGdMUhSfWf788v8j0fpYpfUNE1u39iPCWSyYE794xOuGDRseAyu4JJvLb6hUqbfw1A43aGG6j+y+KTf5Y1eSJMf4m5xLr4fgAgDybmlnQlyv1/9MKXWdMzh6agTC56afKseJXkqpdwo05yjHRvJ/JqW+bKYItZtu9HKbMzFfbuAhpXyev8WFbm4AACjA2TkUNC16Bin1a5clPdVHWdIkn8Gk1DeC7G7UBReVrPHG6OiRpPVNQWlQT6VGbD2bOcFa/5NwLmeILwCgqCLsjRip9Ym6Xm9xi8mePYhKTblkrFu11kdBgAu+ebw4Uq32+tD9zDeyeSZgmbjvVptE8DX/PdAEAwBQZDqGQhB9yeXQzMsV7c/bLjf02wQac5Rj4yilPp6N8+rB/cwJCMbyVequpFZ7Gm5uAICy4M+6er1+NJcSuTBcs8cqkgZPcyMi9LIvyaa5HymVBn2fW/O9uQUzeD+HTQMAKBMd41uJLgonM/Ugwg1nRY9zuROMmeJumn2c9fsE7k413wSCoIh82vVLnfYlRxBfAECZ8GceJ59Kovs4pOd7Pc9FhGXgTTQNPjiRtV5/Cs7TYorvkJ8QJKU8jmO/800eCMdq8Y1Nab05SZJDcGMDAJQNf+atW7fuQKU1hR5FOc9yJD6PjYATvV6gHKl4hJnJUqkPTNgC8Ol5ukx8nLjBqfNSqc903wYBAKBMFrCwbuiPsRtaEk3Np6TTnb38d5vGDa312YHRhGqSgm6WS3qJWQSbZYbLl7TW7xbI2gMAlJCwqkQqdZLrE20sWtlDJ0FzJhN9EUZNgQWYN41S6jtuKPRUDxM9mi7+25RSvsx87aC5BwAAlAXvhtZa/xUpdS9XhvgxrPNtaOQSsdb7Zh8Q4AIKsNb6IFJqwvUg7UWApzh5SxLdppT6c4H4LwCgpART5Y4Kpsr10tjI99K/bv34+IMhwAUVYDfv8iYzp7e3m1qDN4pS6sYkSY4UaCAOACi5ABPRYdwf2hk2jR5aUzZdVcqtSqnHQoALKsBE9CRS6nYXr5i3AHPfaOcq2V6r1R4GAQYAlF2AuRqElBpzmdCTPRg2TVfG9HvuMw0BLhg+o04p9RyOVbg3e7oHF/QkbzKl1KgvQYIAAwDKSFiKREolLrl1fgJsk1t9b4WmUupFwZmN5NYCMOQFmBtncNZdHw3EJ7fZTaY5ngwBBgCUXYCTJDlAKvX9ngQ4GGzD57JS6u8EaoELZf1m6fJKqVeZN7n3GcCTbpPpkZGRgyHAAAAIcHIAKXVVrwLshzJwFrXW+o0C5Z3FFGAiOsFPQfJvOgQYAAD6FGCidf0KsJuKdBIEuGAC7N9IpdRbwoJxCDAAACwPAebqFKXUOyHABRVgIvp7l+4OAQYAgGUgwL51pSkPhQBDgOciwEjCAgBAgAMB5rm+fVrAEGAIMAQYAADmKcA8pEbBAgZzEeC5TuyAAAMAwNwEuF8XNGLAEGAIMAAAzFOAt0OAwVwFGC5oAACAAAMIMAAA5FuAB5AFDQGGAEOAAQBgngI8iCQsCDAEGAIMAAA9CDAsYAABBgCAnAgwOmFBgCHAAADQpwDDBQ0gwAAAAAEGy1WAUQcMAAAQYAALGAAAci3A2yHAAAIMAABLIMCoAwZzFeB+XdAYRwgAgACjExaABQzyTrW6QrxheB9RTf5EnDyxr1g7sa+oDu9n1lr33/x5/v9+Dbf2yZb/3Mlr95313/t/a75HdYUQAocbGLgAwwUNFkWAYQGDHnbjUCayXhzNn1srlkTww5+DhZt/Nhx6oEcBHkQjDowjhADDAgaDE1sWNi+0cxLG5ABx9viDxaoNjxHxxieLKj1bVNK/FpE8TkTydaKSvkXE8iQRy3d2rFXyH0Qs3yoq9HpRob8VVflisSr5SxHLp4hI/qk4mx4qqlfef44/w59kVjP/DgIHIZibAMMCBnMSYJQhgYURXBautfvuVbSqyUNErJ8sKunfiJjeLuJ0pajQxSKSXxNxerWoyM0ilj8UsfyFiOl2Ecu7RSwbIpYzokItsVq3RLXWEtW6WzX7uYpqiZhmRCynRCzvEbH8PxHLW0Usd4mK3CLidKOI02+IKP2siNOKiOmfREW/UsTqz8XKsYdbsd2LKPPvNgwrGexFgLWGAANYwGARBDdz4+7BumXBYuuThbYi3ysq8l9FLL8jYrlVxPIWEcs/iNWqJc4db4nzt7TEBVvtOn9rS5w30RLnbm6Jc8ZbYs1op9Dyv6l0Lf5cKMz8b/jfnrvJfq2Or7/Ffn51rSVieZ+I5a9ELK8Rcfo9I85RerqoyuNEVT3BWOR7EuTMfY6DEgKMGDCAAIOFFFzeRyw4w1kiUycf0QeJOP0LY1lG8tMilhtFLG8SsbzXiKIRQi+Am61IsmjGkte0tVxpUsRy0n6kSREZy7dh/l+UNkUkmyLey+K/Y75OOmX+nfn34dc0X6tpvid/b/4ZWIz5Z/LCz5+zf/fnIpZaxOllIk7eJ2J6vqjWD531tTGvSWuFfV1wcJbVAkYWNFgUAUYSVpms3NaKWROlTGYxPVVU6F0ioi86y/YOI2znbe4SWtUSkbTu4cgLI380gjlt3MtWiBdhsZuapp2Yhz/PlPk8W9ShMLMo8wUilr8XFXmtiNKvijh9v1hFz541rsyv1RucIEOMS2UBQ4ABLGDQH1lJ0Cyie5Z6kIjky0QsPywqqTJxVnb7skix6J4z5q1aH4t1QsvW6WKKbI/L/ozN4GefMp9b7UV5c2Aly9+LKN0s4vRTokKvNnHk+byWoFgCjEYcABYw6BHrRh2eJRHp7PUPFpE83iYvyZ1GoIwQzWLdZouml73YzkeUo0yUu6xk9zrExOtGUZH/LmJ6s6jqR+72OrIQc80yDlYIMMYRQoBhAQMb152lFveD6w4UFXqJS5y63giOSYwaD+O23oXbLJTgzs9Kbhprn18TTvoy7mqT3HWTiOkyc3Fhr8Gsr3kVVnGBBBhlSAACDOYGH/4nm/eu8yHn2ttIniliOWaExsRxx12Jj4nV+oSnRY7bLts1s9vrwqVS7Irn185eVq4RFXmeSVDrFl0TR4d7uigCDBc0gACDvQvv2q737Ax9kKikrxIx/YeI5e1Z4tFqZa3cyAmLtfwgun/cOp7OXjcWY3ZTc4a1rU3+tqiot5ha6JC1vukHgABDgAsvwGjEUULh5Y5UIavko019LpfasIX74e0+uciVBHnRJYhuz2JM01kJFWdSX7DNvcbpdhHR2SLaeFTn+8Rdw2ARwwUNAYYAQ4CLsAOGdhPeSD5RxLTGdJviUhtuTmFdzL4sCIK7MK7qpit3cnXHW1iIudvXJ417ejchRow4TwLMZyMEGMAFDSwcXwwfYm65GNMnzKHv3cxGGEzTiWmI5KLVIU87IW7aC9C2lmm5Gcl/E6uSY3dzTaOWOB8CDBc0gACD3cqJVibHiFh+yrRc9G0YbcLQZC5qc4tsFfsGIJy0dYGJE98lIvnvYpV8Xmf4YI7DLABc0AACDJaA7oP6rORIEdNHRJz+slN4jcUL4V1e8eK2ENuErTtFlH7eTHPKLlYtNPSAAAMIMAR4mb3JQx3CWx072JYSpTeZJhFWeKchvLlYgRBzjFj+RsTpRzoae6CGGAIMIMAQ4CVnaLd5tdyFiXsym0lAm9tuTria8+ians7ex4rcJSL5Xle73Q41ID68bAQYrSgBBLg07mbX8D8TXvl0EadX2I5VfGCTt6aQXJXvmmKbNc1eDDulKRWRfPEe9wGAAAMIMFhAq7fD3Zw8QMRUMTHDduelqWzkHlYRlq0l5kuVzVxnUb5ErKTDOtzSOLDhggYQYLCAVi8n4ngi9VJRkePZUIQom4cL0Srmsu/v6pqPD/9IxMmbO/cHrOGlFGBYwAACXEjxDbOb1YNELD9mDmRjEXFdadpEnLcs8eG0mdUQ8+AHLluq6iOy/XEynkm4oAEEGAzG5Rz2bq6kfy0qcrOpGV1dc+5IQpy3lPHh1LqlTSMP+WNRSd/QFuG1+8IlDQEGEGAwCJcztyaMZSRieZ+pEzUWL9zNWCbW3zBhCI7/V+hiUa0favdMtTNkARbcBY0YMJiTAKMXdI5cztXkaBHTd4272Q5LQAcrrK4+0zRpBNh006IxUQ06acElvXgCrDUEGMACzjXhgRklJ4hY/sy5GdtlKVhYuy87dcm2tLxDxOmp2T5ai+cUFjCAAIO9vVtDgfgOiUp6jonvsnsxQk0v1pxrhydNA4819ZZpZ/kR+6yig9bCCjCGMQC4oHPrcq62S0hWrn+4iOU3TQckniHLBypaSGLNb+LSpFitbLlSlCozglK4tqVo3AELGMACBo6wnWS88ZmiIrc5N2ILLmesvlzS7DWxwx1uFpX0ldmeQ3LW4C1gZEEDCHDeLN8g2SpKXiNi+WvXZAFZzliD6qJls6Rjea+I6T2z7j0AFzSAAJdXfOV7zUFpJxch3os12Lgw5xCsGbONO+L0/Gzfcb0wgAsaQIBLRXjwcbIVH4y2nWQD8V6sBRt1yKVKdkrWF0xtOUQYLmiQPwEeGRk5GALcq/i614zfl1h+xli9dogC4r1YCx8X5u5ZJsxBV4gLJx4YiDAOfFjAABZwCcS3mhwgIvkVcxDa0YFTEAesxasXljOutnyDqCaPaIdEcOj3I8CERhwAArzMxfcMfZCZ3dvOdIb4Yi3BZCXZNCJckaPZMAeIcO8CPAAXtIQAQ4AhwAtq+R4iYvm/1vpwU4wgBlhLOWfYivAWUVWPhQj3LsDIggZzFmA04lgC8eV4W0zfc66/addIH0KAtZQNO2yZEu/JKN3WKcKICc/XBY1e0AAW8PK0fB8gYvldJ77NtvimEAGs5SPCxhJ27mhkR0OAAQQ4t/g63+pOHiX43y7mG1i+hHIjrKUW35lZRHg0S8yCCMMFDeCCzq34MrG83M7wNQ0R4HbGWv4x4VhuNPkKEOH5WcAQYAALeIkZDprdx/JTZo6v6UiEhCusXIiwH2n4beO9EWhbCQEGEOBcWL6tFYH4RmYsXEUFpUaI+WLlokRpxk1S+uKsXh0AAQYQ4GX2Yg9l81Zj+U4jvKb3LjpcYeW0Yxa3raykF2R7HKMM9yrAiAEDCPBSx30r6d+IWN4jzhnzvZ1xoGPlU4S5RSpfIit0ym6XTAgwekEDCPCyYK17HSJ9lIjTn5q4L8QXK7cr9ZOUGuYiyaMMI3kcXNF7EWBYwGCxBBjDGAJ8re9HuMWkJDcAvWHiaDjMsfJfqjTpEglvFlV6UseFEwKMGDCABbzkbmcT900vc+I7jXm+WAVaM7ZGmEvpUiXOvPqBHRdPCDAEGECAF198qyuEf0gqdJqZ59uR8QwLGKtg5Ul8wazQ52e9gEKAIcAAArzo1m+88YUilr/rSrqC+GIVyQJ2mdGqZS6akXyvO2FKm5QFAQY9CzA6YQ0o7lutPUzEcqtzPU+i1her2CJMkzYpi+4SMT2/zFYwBBhAgJeC4Va7FjJKP+9a900h6QqrJJbwpLtwbhLV+qFlFWEIMIALevFf0LDZxkmiWrdx33abSYgwVrGXvWj6OcKfzp6NkjXpgAADCPBSxX2r6gkilr8Q525C3BerhCKcNsVq1RKray2xKnmTfSZa7aTEsgowxhECCPAC8YaOIQvfdK7nBsYKYpXUFd0wF9BY3iRW1R5TNlc0LGAAAV4K13OF3uW6A7VQ74tVciGespOT6D/aXqLWirIKMDphAQjwQuATr6La40QsbzFTjtr1vlhY5Z2cxEMb7NCRtwaeoqEyCjAsYDAnAUYW9HzivkGdI9/07Zi2JrKesbBcfbBxRdONoqof2XFhLZEAoxc0gAAviAD7KUf0epPxvFrZmz8OXiwsFl7bevV80y/60o6wDVzQEGAIMFzQvbueXeJVNTlERHKHOG+zdz3D+l2ccpeme70bpgmEWXIvy/z/hvs38FIsphVs3dBcD/+yjosrBBgCDAGGAPfAUJZQUpFVl/GJxKuFrC1tC6xtbMLehjX1lom58+WH3f/cBIITfzgL3S/+HP8/ntrD7xO3S+RZtl4c2uI85Sw2vOYLkZBlpyaROG1k/yAeDBc0BBgCDAGeJ77d5MrkGBHL37jMZyReDe7AbpoaaltHPWOamvAB7kWVBdeK6L0ilr815S5xep2oyM2iImuiQsqsmLTpyhSl14pY/ljE8tcikn8w4QIWY/P1tluBZmH2JTQsyJGxsGElD6o22PeKjtX7i24FIwkLQIAXLO4bJF5F8t/dzX4a1tMARNfOSm4alyWL4oe3t5x3gYX2RyKWV4ko/ayI0zPEKnmiiNRLRZWeISL5eLFqw+GimjzEjMSrjhxsFv/57PUPFivpMBFteJyoJk8TlfSvRUW+ScTpv4hYfkrE6ZUiljtFLH9vLlL8PdlqZtHn99VeAiDGA6kN3mwTss68+oiOi2wJLGAIMIAADwI/cDxKXmqEwVpODRy0vRzM5tIy1RbdrS3XS7hh4uqx/IKI01NFTC8UVX2EqCYHLIg3gzN0V8nniYr8RxHLzxirOaZ7zCWArWT7Hk87L8c0xLjnsYUzLlfiY+4UGipiQhZc0AACvBC041ZDxnKyYoHEq/nHdKetW5Jc/Hart3JTEaWxiJIXibPpoXuNwXM5ixHP4f3M4ovRyXtYa4O/Z/5N8id7Pfg5sS5Onysi+f9ELEdELO/M4sjt/t5I5Jr/e99wdfK/EbF8un2th/eDAEOAIcAQ4LnHfiM6wRy+PrsTh+t8MpenTfyWBY1fP2Pp0hqxKvlLcXr9frPs1CEjmGudcPIlaCAHUMsm0oVfe7avy5+P1Z+LCn1IxLIuYnI/e+aibiL8MI89wJcXvnBF8t/ar3GxOmRBgEHPAow64D1aRW7YQnKAiOlqk22bDVvAnN8/euiyWLFosXjF8j4Ry/8RUXKCsTa74RKvk9fuaz4u6mHTGjICz+/1bElC1Yn7iwq9XET0ZWMVs0Vsh9DPYOzkfKzgMf74O1HVxxbRCkYMGECAF0qAY3qzcZ3aLFxYv38s+5WtXp/FzIlOcfolUZXPm9W9b4RvGVlDnHDHP9PwLCUzVXqqiOUnjTvVC3E7Toz3fvbGHO2ELI6t80UmvHQVVIBRBwzggh6E+LKL1Fi/21quJhWjBvfcAalhLiksTlF6n4jSL4tVybN2EzgjvDlwQe7pZ402HmWzqeUd5ndthyXglt7zargLy91ilXxBR3gHAgwBhgBDgGcVYI79euvXWnc4TGfrfMTi067VHTFJVbtZuyxkeTxIXOy4u5FEtfY0Ecv/NBa/tfa7s+NxUet2RfNFtkJfLJoVPKg6YH8WswBLCDBc0KUUYC++nKgTy+/C+t1rWdFkVsMbyx+KSvqO3V7LIh0e/LsY0Qh+p0geb8qYuObVxocbSNLaw0XNvj6/E/HG53Q8a7CAdxNgWMCwgOckwCMjIwcXUoA5+cZk8NZg/c42eq7dbnBGVOTnTGMMD7sXC31ouEztbM+MHCwq8jzjYrWXkSZiw3twRXMnslhe0uEdKZgAu7MRFjCAC3pehKPTeNwgd0myfYNh/Xa6nG0P5orcJWL5xrbwrt23yD1/d7+sVVdkjVqsNfxiEaWbjQib+mE0bNlt79i64F+JanJ0UazgQZUhQYBLIsBa6xPHxschwHuyfmP1TOMqs4kjsGTCOB67nE2LQfktUVWPzV67tSUYR7nXfeMOSW6FyR4BzgQ3PcPNBa7kl7fUl+4FdcFp3H798l0XPOBe0DNOgE+GAMMCLo8Ah4dATB9xsV/f9Wqm9PFe39WIk9J4IpR/vXyzjLKzmzVMpxiXtHXTN1AznLbd0LY95c6s+1nOreBBuaC9AG+emGiR1u+BABdVgGu1t0OA92D9rqofbibp2KEAU6VvvGGFo+GE5E4Ry7e2X7PitRXsm1CEK/QSM7mp3cIUyVn+IsLegYp6mzucct0jesCNOIwAK6VO9a8NBLhgAszuDXZz+De89ElY9nUZcofmu4z4mo5OZbda3PAEk1iU/lTE6V9lr9nJJXY5z8clzbFOHptoRXgaIuy6iNlktZFs2liOvSiDdkFPbNnCFvA/t50r1RV4qAogwF5kiOg08yZDgEXHw2/6AMv17nAo+dCFQHwjea2I9ZMzV+swXM5zCmm025k+wu6rTITLnlU/7Wrr7zM9wUW+48CzWsBa9yrA01u2bmUBPxMCXKgQVftNlEqdyW8yv9moAxZD2cO/KjnWxDptQ4lpiK+5iEyISP6peX04S7xgjfQX3LPCmeEMzyrmunLzmlK5LWE/qMNki6cfDQ6pXO6tAceAp7du28YW8BoIcHEF+DzzJg9AgHNvAYebuyI/ntVxltX9HIUuQprIhqkXranGYl7wvLu+mjzAinDp3dE2G9qUJKU3mMzxHFvBAxbgpjmbiS4KvJcQ4AK4oLM3kYgu2bZ9O7/hzV4FeFthBNi9LnwIxPIGcyjYxhszJY3PNZz4XpeVGYUxTdAbXoStJbze1FGXe6LSdLvNa3JC+1nM3z4LBVj2KcCSyAiwUuoLEOCiCrBSX+U3md/sPi1g5V3Qa3MpwK22+zmSrzOHAR8KpbVMaNJlO/9MVGvHQHwXSIRXjj3ctK+0lnCjlJc9e/GYNvutEkxJauVbgAdgAU85C/h/IMAFFODh4eF9SKn1HAMegAAn69atOzDchDl7UYYC9/O/O/GZLplVMtOe22q6FN2VDVPgmC/czgsjwpHmqUo/sXuupN3WItm0zUrkz0VV21BHDrOh/dm3a9eu/Umpq0IBlkTztoBdgmyNBR0CXDABVko9SCl1LdeazVeAg83kBXj9lVdeef/cCrB/2E3tL/3UDQ4vk/t5JmsRyB2urPV/krV8eTYuHvyF8br4aVvyxSKWv3P7rlFCEW6alp1m78l/sJe+/Aowh+FIqSu39zGOkM9kUyJKtGv9+vUPhwAXhGG3saWUjyelfu1aUTbneUPrFGCi/925c+d+uRVg/7Bzcwnjflat8pSIpOFgBddeks5vvzYtlBotFHyx8Z6Finy3ESCbeT9VLhF22eDWDf3VvLqh/dnHia6k9Tf7mAdszuTRsTE2du6UUj4lPLtBfhnytygieglnP+tazWdB9yTArth82Df3yJ0AtzpGyln3s3E9l2iUXJbxzLHI9MrMMkOTjUUQ4eB5ieWlLvu+RJnR7gLos6Er8iZRTR6VRzd0q9W+rEqlLncC3OjBBd3yZ7PSms/Xv/MWMLph5dv9POTLkIjofa4L1rwFONhMDd5kUql/67awc+d+rtYeJmL5I3HueDB2MC2LADes5Zv+VFTVE+zrgfaSi4ZvW3mWepCI5LgT4XJNUOJnrp38+MbdLic58i668/ViF57rWYCzftBEZwj0gy7AZTuodeX09j6acMy4DTXFZUxSqQsDkc9XnKIdhzveWL3sBizH5KN23Hd1zQ9XODGPB18xHk534anKF4hY/l6sGSubCE+bPWkHNFzqTpOhPGXed/VYWO16LPSa4Jp1wyKl/mu27wHyZwGbN29kbOxgItphblf9bRB/Qzs9pze0oawBR5Re5Mbrlan8yLo6bb3vl3bzCoDFDYX4vRina9wQkJLkImRjCqeMAEfpNlEdOzhvezH0MGqt3+0H3fQY4jPNOJyX8gdJkjxEIBEr33gXSar1X5FS99VHR70A95QkwDEKXlJal1Hu3M/tUXoHiFjW3e3b9X4uhft5yh30N4mzkiPNa4G479J7Y6oT9xcVOerK4crQi7ztjbGzt+/OBn7kbD/6HJhUqVfxhLlave6rTHoJ8TX537OAy1rtZQKJWLm2frPbmVLqXGf99pyAJYmm3A3vLq21aaSeuy5Y/uGONz5TxPL/XC1iWTJQXelHnS2OU+B6XmZ7sqJfmZWFZTkJJagH5j3JIhylH8rjnvRnoJTy6ZLot86CbfRo5ExnU5GU+oRAHDj/7mdumEFKbQnrf3stQXJNPK5PEpu1mDsB9g93TO+xJSCqHIdd5HrwWgtrY1aGBdfzMtiTQYwvlpdnTWHKkJWfDWcw5UjDs74mORHgWq32MNJ6q4sDT/Zg4GT1wM5Y2sm9G2AF5xTvGlFKvZbf4NA1Mt8uLWENsCT6dtCCLT+31fAWGadfcp2IytL9qunqTZuiQi+H9btcL4b6ySKWtzuLsCyjCxs2FJTeYMY35mxvdpQiEX0tzITupdkRn9F8VrtQ34kir70Wyn2proYDGP6nzxGEnRl6ROeEbu7cHXLV5BARyS3O0mgUvvzIWxn2wpFLK6ME7qp29i+P6fOXw3LUpjdcHPge0yFM5KskLnQRa63P2uzmrXM8uFcrmGPB7sy+qtujCXLkFnHNN+7lDitcQtSj+Jp/ywlcfDuTUh6fS/fz2iz++5wg/usEmGZKYP1OilX6WCHy2fav8PhwAM9gjuWtpizJWMFUgtwEsnHgOP2XPHpn/Fmotf4bc96Oj5ucmR4F2Jy3ritW0zflyPHc9bJdplthbdq3BlCb1o7/KnWDlPLRudwQfkB6TP9kBKmzBWCRs03tjN9Ifq1t/eI2vQzdVu33JJIXlmY+dRYH7iqNy2kcWCq1rSsOPNPPeEJS6nv++yAWnC/r9zW+v6i3fuebfBW4REwDjtzOquyYfkQXlyP+m9pkHpNoJmdEhV4SiC+yKpe3FfxEEcvbbCy40HXB7YlcLMBciuXrgXNkBXc1PPp0aPTIPqxg9jq61pRvgRWcA3ywnjOflVLKbYSG7P0mlm0Eszm0flMuN4K/OVZ37idiurqr9d9M4a3fOP1+dqAh83kZn+TBpbZCnxcXbC1HXbBpjWrq028VsR1EkLfWqIEb+vjAhTzVR86NObvN/HalNvuMaIjw8nU9h4MXPsQ1u3x78o03eig9arufrZBvJ6KH8tdfu3ZtPuO/Z61/rIjpRpt16WexFi3GloauvZZreP8PbpcMYc7vsmYoE+FK+tfWg6HL0KltytSnm3hw+tqOZzZnxs/ExMQDSalxb/z02HMha8zBH01ZktYVgbrg5Wzk2RsjET1VEv3S1ZI1+ki8ypp28NfiZh6BuyVfG8DfpqPkpSKme1zWZaPwh5pttfkjsZIOy5tbr7xWsHuPLt61v6nZ5olVxZ8ZPJ1dFmM7iCCPeQo+Rktan80NOUIDaN4i3P5zwzX3uJ2Inh2e9WCZ3b74ZsRzKYNatF6bbmQukE3cwEOpXyVJckxuXSDZAIb0FHPTLsf83ylxwbaW6Xntgfs5B3u1GrqhT3PemqLXq4fhkstmdcnnyA2dJMmfkVI/6zKCZnqxhJ0QN/wcdv89cueFLO7zWl0RtJw8tdv13I/1y7Vsrvb30tDVnTPffNCAgz6RdRoq9oHWzFyXbPVDfPN5YazSk0Qsf9PVMrWofaEnbcybrja92nPosQndw9xK0rWUnOlj/vpunkgp5Qfb9xNUMyybWxcRPYOU6uhF2o/1G/R+vr1Wqz0tt9avT8DiByNOrzAPeVRw97PPKo3kZjNzFu7nnApwdYWI5bfEh7cHOQuFvThOusvx9WKVLXXMWxw49EYmSXI0Ef2Sz+MgGWumH1e078UvpXyeQIes5SO+rt9zsq3HNmh7agruan8/JfIc/PfN7qvJQ0RFbjYxNX7Yi3mYzXS4n2P5Mbifc4h9zoac1+Z9JkPY9PMu8NQuvjSaGLC8TcTpX9hnNpexzmwIjlTqw84KbvVpBWcJsVwOSkqNJUlyiEBW9FIadsNhD9JPujem2afwZqVHzpK+OUns2Lrc3raywefGnfdzm5iUWRMFdj8TH2rHd3gBQP4ujrHiyV13FNwN3comQdnOWK/ueA1yd3+y/aGJ6DDSepeLBU/16JHcrUGH68nwue7vBxZLUzrjvu+sj43Z5t29DVuYNd5gBFjrfxZ578Di3VjciCKSf3At76YK7X62c453iVW1x+T5IIMACyHO0AeJipTOo1Hki+N00JLy1Lx7bfyZqZQ6eWx8vO+8nLA0ib+WyfVR6r3dVjdYBBeHt0aJ6IWS6PcuNtAYgOVrul65xCvp091zLcA+nrYqfZttQVnYEYTO/UyT9rCmb2QZtYj/5nDfBgk2nMne2ZRjpoAXxxkjwhwHjuR5gbWRS2HxPRlMZYpSV7m64KlBeCg5pjxm+03fR2Snm7EmoD54EQgGQD+elLrRxRgaXQH7nl3PrnXlvVrbxv35dm8EjSe4vtB225kp5pSZtPMQi9OVwWmABzOfZtQ+7ctjrQzlcw17eQxKkXJsBQcjYZ+ptL6LRbPPoTjharjJSz+v1Wr5LRHNmVvDWKTJxMRDpFKjpk2ZzbAbRNx32o8cVEqtDm5y+T28Qysilp+0TQ2M9VvMTFL+3figtnWjx8P6zTlrO+LAt7kkpUYhL49ZKZJxtX87GB+a2/3bUZak9YcGWJbkv45vVblNa/1IgSYdCy++nPEslRrhQLyL+fYlvmGau2vgcfWuXbv2F0WYvhH+/BX5FduYosAzgNs9dX9hks5EbjNJgQjiwGfTQ80Ma9vDfLLAM6xdLbDU4syrH9jxGuT33N7Hf5RKfWcATZJ2Cxm6pKyNPjMaIrxA4ssuBkn0za0243na36TkANLb3e3sFinlE0VRaszat+gDRCyv6kxkKfQBVhdV+zAiASvPD34Q/olpuPMCWUgvzqTrhnWdqFqLLo+1wHtxRT+WlPqJybHpb1xht+fSZEaT1t/dsWPHgRDhAeL9+iMjI/uT1l9zwfyZfjtdBbevBsd9uesVkU3/5wSCQgT0sxrg+qGiIse7aoCLaQHb9pNfndULAPLmwwzGaMoLC9/FzXhwTAb/z0RVPaEoAsxnqbeEZa32MlLqPtexcHJAuTucGT3tLOHvJEnyAIGYcP9vmn8Bx8bGDialrnDim5UbDaLel8uXTBa11qcH37sYKe3+4a1efYSI0x+4A2yyoIdXkIAlPzzrIQ7yG0ap0CmmRIdLdYqbiOWacaS3iSo9oygC3H2mEtF72Oip1et9J9AG/86EI10/iO+tX7/+wcL1jEZ2dA9xA39jSpLkUaT1Bud2nslqfQcgvlxPZtwhWn+0211SKAE2A87TX7iOQo3i11HS+8zvje5XxdnD3Jyi3axiqrDNOOyksrvFKvmCooVQwpwa0noNN+hgA4h6nxs82/jCaSfCWkr5p178h+EJm5vLKRRArfWzSOtrgpjvwMSXP7oMurWFFN8OCzh5lojpdtdNqFHYw8tkQHPLQjqhaIdXafFJdHH6XBHT/xkLsaiXSM7i9xeMSL3CPbuFOpPCM1Yp9a+m6sQ26WgMSISNTjhv6Q82Ej0/Ow5hDe/VRbFPR3tJKU+URLe5gP3UABKuspgvv+HuDfqi/56FjBd4AeLbdCz9HOCpwrrvvPXAw9wFMqALJcDV5GgTGy12K1XbRrVi2qi+rogCPIsIf5rPeGMJD0iETT6PUlMT1rt5J3dLDK1wDHHYyxtSr9cP5QEIHB8Yb082mhlQxlyjPjraMhnPRJf621Bhg/XZHODkFZn7rphdsMJm9r/J4mcQ4OJ4cVZtOFzEcqc4f6LIiYTTptmIHaX51iKHUcJ5vqT1ReyOdk2QGgMoTcrqhDm/h7+uVOpztVrtYYX1dvasEUGrtVSpV5HWW9mH73o7Z002ZP/ty5rcicW8yUQX+O9Z6Ey5tgC/xjzg/GBHRU1gocksgzTSR0GAi+LFcQd19apDRSw3ddYC00wx8xjqfFF+h/29TfJSId2mXSIcZwmxPLhhMEm2Mz7R1mVIXyu1ft1s2lNWt/MKdxv5M1Lqyz4pStpY70AynZ1bosmWL7eYDBp4d2yAQuJd+rF8o+kBXexWfnaeakX+UJxlJ1gVJYO03Dd0d4n82I4DzVAGU0pXVBe0axHLuRqV9F1OJVaYlrIl8H5Krf+RlPq9s4QHNdnOfy3T499lXv9XvV4/utQiHGQ5P4SIxq//wQ/COMCgXngTlGdh56+ttX5fqVwQ3n1VkSca97MV4OnCWsCmBImuM+5KCHCxBPjikf1FnF5tGq0UNpPfCzCHUug9ZRDgPYiw14LpAerAjM//uf6GG/i/twftK8uXIe1fdCnlScG4qskBvuBZ2ZKb7fvDq6+27d1KUqA9lPWCjpO3i2rd11AWV4DZPRnJHWLl+odb9yUEOP83ddcNiy9TMX2v0ALsG4ycO94upTN5KsXP3PV6UK/X70dK7eCY8CBaDc+yjMZs4hIord8tyhoPzgRYqUyAfWeUBRPgiYkHlugFbwtwJX1H0MRgurAuaAhwcQX4ZAgwBHgwU5Syee9kvQylFGBv9q8fH3+wJNrEboGgHmzgLmjj+yc6rUQu6LYAR2UQYLaA4YIuhQu68DHgErugpfxHHzJcYBf0DiI6rLQuaBEkYXGTbqXU5fziuKEI0wuUhHUflScOXD4BRhJWcQUYSViFF18i+idJdLdPwuKzWw4uCavJ2uKTsDZu3HiUQCZ05wtAtdrfEtFWbpLhbkDtMqQ+R1eFZUhSqQ+XQoTfEAw0N0lYBRdglCEVj72WIRW1nWo5ypA6xFfriun9sGmTOasHMKqwowzJNV66Tin12sAARFesbhcAz3TkRhz8ornY7cBEuKMRh9bFb8ThBTimN9sOOwUuQ0IjjmLS3YjjPDTiKKDl+0mO+Tov5aBaUmaNOPjrKqU+R0QP7dIcCHD4gnS0otQ6a0XpgvHTgxLhsBWld4MXUoSzRhzydeZmbR/s4k6SQSvKArrI3Ht4NlpRFlF8uRXlxIBbUTqtmHLasVsrSgxm2BNdwxiSPQ1j6F+Es2EMqsjDGNoCfJx5uIvcihLDGIotwGYYg/w/Ex/FMIaiiG82jEEObiJSxzAGWa8/L/zecDvPSYfb46Pq9frhpNT63cYRDkCEs3GERB8rpAh7AWKLMKY/mFrg4g5jwDjCIrugeRxhKFAYR5hLL2fgdj6HQ4Gm5bAziOQAxxEqpZQfRwirtzcRHvJuYa31QVKpb7lbTWtQIsy3Lh9rVkr9S3gBKNThFW98jojlHXYcYTpV4BrKaRsjbCfZCdx4835qu25udEqQyV/cMIrJY0hvy/IYCpLJH56pRHTK6Pi4z0hu9HOWd4nvDBtqUqkRHuojXGgRVm9/tybjghoZGdmfiL7mRHim39nAwRvX4M1gvibRa/xmKcSb5h/elckxIpa3inM3FXkesHVNXrCtJSL66m4HOMih+zkoEanIC10CVjNrWFHE/esz+avqCUURYD5LvQVKRC/nblScHOUbL/V8hgdlRjyCcJsV3+8kSfKAUDvAgESYP5JS3+Bbjpv5OD2g0VWTrv74ltHR0ScWxhXtH95qcqSI012uV7JLYEmLVII0k3XDMo0aZF1Uk0OK5sIr34Pfal+eYhq2lyt/gUyLeIm03dzi9DpRtX2KiyDA/izlfg+k1E/cjPfJAY2YnfZuZyL6LsR3gUV43bp1B7KLwdx2iJpOiAcRvG9s27GDP17N1rYoQocULz5n00NFJLcUvIbSWRDGyv+FqNKT7OUDD2Ih9m9ME4Xfv+0LpBZn2r71eb9A+jOUP7J1ut2esQ2XzzOQOl8X893IJawQ30UQYZ6gJJUaZXd0ODO4r+UsapOVp9Tq0H2SXxees+KrE/cXsVxvLIhCC3DadJnQ0yKSx3e8BiC/HpxYPdPERW2ddwFDKGkgwOYZ/Xb72c3v/uWz05+fRHSG8zLODKjFpKnzNRqg1LZgshHEdyHxiVn1ep1nCN/o3tTGgPqFTrk2aPdqrY91myi/VnCHC09+vfAuvI5ELFoZnARIwsjnjbvdyW11rciNZFwIJZ2yApxelr0GOc7k965nzeWkSv1uzObaTA1qqIIb2PDzJEmOEeWZcrfkDAWjDF/AbywH9AckwjO+gJu0ljt37twv167oapDNHctLnHtrqv3AF/EQYytiO3/8ZpbEAys433u3kl5U8L3bdXmU57Zfh3z2KvZZz9xqmJS6yiXPTg1o0M6UE/N7pZQvE6jxXeRns1rNspSVUu/gVmOmnsyVJ/X5JjeDcVWn51qAw1FmbBFyhiU/6EXNIvVx4PM4kzS90SSfCSRi5RL/np2hDzJDGIoePumoY09Pzbv1689MKeW7g3nvfVWuBBnPrTHOolbqVG+UFaZ0NG9vsLCNvC/a5rpl+aSsnt9kmxgw5fpQ35yMjh4p8pwV7d3Q3Ny9Wit2P+iwnV9s2vkd3+HKBPkTYBP/9TXshW3AYX+3as0L8avzfHH0YTse90da72JX8YBcz6YRkys3+ly3qxssMt7nz5nRSqlkWzvDrl8rmEV8hnuU8mAI0ZVQkCuyTkIbXy6i9D4zaaW4B9lMdphZiynrcIauWHnz3LhG+XHyPpPZXgbPjU0yu03E6V9YV18uE4qG/IQ7njrncnT6mu3rs6W5btgZWmM+4xlx32UiwvV6/emk1G+d5dqPCPvJS1Mutnx7rVZ7Wm7f7KyXrnxK1owjKnAzDn+YcclKlG4WZ6kH2dcBt+T87FmfAVxdIeL0W+LD28MBDDOFLUGy8d/rxSr56I7Lc47w1miSJEeTUr/k8zjo8zzTQ3WK/zcNdx7fVavVngvLd7k8q9XqCn/jSpU6tTve0I8VzO5sl5B1aeBeyZcV7N1Y1drDRCy3dtVSzhTbDc3lSOqlsIBzKsDxxieb8ZLFdj93NZGhq0U1OSCPl8ausqOL+i07krPk5Uil/p+3tBH3XWa3LvPGK/WNwBU902NNcHbr2sSp7kr9qlar5TPV3ceAOauU6wv5IS+6BRy6oSt0EdzQubpRB5n76fudVTht3c9pq8AiPOW6YLVLkKr5EpiOElGim13st9FrTk7YJMk08ND6u/57rF27Fq7nZaUzrgBb1utPIaVu5Tff9xrtIx5sbm6brQif5y3uXA1yDi32WH6y80AruADbvro/EivpMLih8+Z+Tg4Qsdwozi/FhXHafDQxYDojj+IrgsRYIlppBtz054lsG0EcVtT6trRW+wuBZhvL2v2xwm2AD7lm362+ZwhrPenmBm9ft27dw3J5+8pceumpZiRhoTOh07CusmXclxX5D26XDKEpx7JmKBMeM0IzCCUU/bLoZ3VX0tea3z9n8V/vhZyYmHggKTXu6n77TYhtegOIiCoiz8mwZXJFc1Y0KaXCTdBH39EprjM2X0PrN+XSDe0TsarqpSKme9zM0aJbFYFbT34/u4TADb2M92nYfIM+X/jmG7v3ML/VJEuK/GVAB6Njjw86Ck71efY2nPGzWSmbTIms55xsBB4tyDeofjaC+/thw+8vBBZ3flxE/jZ91vrHiphutI0qfFYpzRTatbdauRKW5KXtQx436GWJvxxF8ommHMdeFJsFvyS2s/YrclRUxw7OW7ikGsTtlVKfdoZPs58qFG/4sBdTKfUWiG9+XNHtzaD1f/e5Gfya3GJrgm+Q0pYI5Goz+EYULMRsDVqrsAyJWKEV/PVZLS2wXE7xztm/9j1rFj5Xwf5+TZeA9aVZX4+cGD3r169/uNJ6mztzJ/ttuOGs35H2MQbvVa42hKzVXsz9Qkc7m4DP9OqG5k3BLpb83ca6E7FcS8qYpksgwj6OOCni9K86LiRg+Vm/VfVY44pl65djomXYn74FZcW2vs1bsmB23kr5MnPeBl7HXq3f7GvUan8L6zd3l+n27ZGUusINgJ7uwwqe8aMKSetzAms7P67MrLUfvd0kYVlRmir8AectDJP9nX4jjxZGCdxW7Z7lFfpolqlfjgtiw7na7xGRfLHdm/mJ/3bV/p4d1P7O9Fh2xP+u6c7sq2bzbIIc4BOylFKv5Te3Vq9nwxrmGQv2G2mSa9Ek0beDbi/5ualms1Xl00Usf2tKHtrlHTMlsYKbIkpekUcro9g3Zp+lr7nxxu0lsX5nMgH2HbCqySPytjfDca1E9LXtPbYD9mcyn9F8VpvhOlKeKNDxKq+XantjWrdjB2dEb3GzI5suvtBzHJiIrk/Gxh4l8hoH/uC6A0WUjrqHvhwCbJKwUmcFy43Za4GM6OXgrgpHZl5eKuu3M/6bS++MPwNrtdrDiGhrn/FfE/t1DTx2+sxnxH7zKcBZU3Cl1LnuTe25KXjQG/quNE2fK/IcB47Sz5YsDuxibapl6qCj9BRYwcssNBLJ4zrqYUuzJzn+a1ptfjCPezKI/z5dEnX34u9tCM6WLZx89QmBut98429OWutjSan7XD1vr51ZmuwWMa4Rrd+Yy5uZP+xWpW8rVRy4ozvWJi73uAmzgpeR67k6cX8RyzFn/U6VICTim8ZMufm/d4uqPjaP+9G7h1OlXsW988NQXw8tJ437mT9yQhes34K4obXWB5FS250V3E992ozrynK6+wb5up35Ay/aeJTJNDWt79KpksSBW87an7aTkuS/Z68LXNFL8XC2u5LFtMY1oih63W/QrS21lw1Tky+3ZvW/OdqLoZdRa/1u5yFs+ZnsPZyvTWdB/2B8fPzBAslXeQ8vdRSIf6HXbOhZGnJc2C3yOXlBwnjbVc7iaJbH4nBW8Opay7j+Yvp7uKKXai/6MZn0QhHL3zs3bKNE+3DaPHdWgC9th4nyc6EPz1ep1Oqw50IPeTZh9vN/zfY9QP4s4OyGRkTvc7erXuLAWWPw7ddcw6VIl3W7uXPkl7c/b5yuNBawESLZLNHB51r/8cGX/lRU1RM6BAEsPFlnNvUgEcnxEjWGCfZgajPz7fP3xjxeBMOzj4gudlUivbafnA48jGcIxH8LQTig4SX8JnMMt9dELM7u23HNNWwBD/uNkbsU+fZghueKWN4t1tTLFgf22adTZtJOTFdmrwniwYu3/4Sp+f2sE9/pEgxc6C4/mrIXYJOP8Kg8hkLCEiSp1OV8NvYxgMGcza715N957yIEOOf4W5qU8vGk1K/HbFespuxRgN1cyv/duXPnfvkUYOcyP21kf1OOZEf2OTd02ipH/C2INdq+2Oe3N0wL8eCF3Hv+QK3Id5uM585EwJkSXQCnTQioQl8NFC1XYuPPPvYyktbfdALcawmS6dsvie6U0g6kQAJWMdzQRnC2bdt2iFTq2rAeuIcsvUlXaL5+YmLi/rkUYI4x+bhKLM8Nkl+mS2QFz3TGg814xpNc0GkFekUv1L7zSYDyxSbuy6Mio5K5njtK4motscqNysyh2AQjCPclpa7cHgjwfJsd8ZnMIUJJtIt7SgskYBVLgPk2xcJphirMU4B3s4CVSnjkochrl5YsDrzx+SKW99ray5LFgdtzgxs2G1z+zsyg9VYwXF+Dxbv3q8nRIpY/sQmAfiJXyfYdx3/PMUlnN4szrz4ij+7n8OzbtWvX/tw20p2NPQuwaWNJVEuS5AAIcMEEWNi+0F/lTL0BCLDi0iZh8klyGDf0FrCdjqQ73dCls0asCNuM8Jvb81j5cIEID1h8HyFiucnG3o3lO1PCvRa6n7+cV/dzKMAsmES0LhTgXqcfEdH/zHZ2gyIIsNaX9DmecHKb3WR6ZGTkYJHXKR1hDWZFnunc0DMlc0N3u6TtTNaYrjMTeSDCg8FnPJ959QNFTFeLC7a6mC+Vda9Nm8xnjn1HyQl2n+VzRnUowHIQApznmetgT8ZeR63aeU6Ap/u0gPMtwKHLa2VyjIjlHaZFY9nKkWbNjDYiPCGq+ohMhOGO7k98q8kDTLa5tXybpb7oGfezaYBzgzh7/YPbApw/BmkBs1FkzmatL4IAF1eAz+xzNGFxBDh86GP537Y7VFpeN3S7U5YTYTnRYQmjIcB8XCxDgdv5EBHL7zrxDcqN0rJe8uzwhUr60d1CQgUQYNW7AE87AV4z29kN8uuCZuvFz6s8rZ95lYUS4DAbuiLf5CzgVoldg10ivJVrNK8V1eSY7MKCsoi5Xex8tvNKOkzEtN65nadLbPn6C8e0K7u6V6xK/jLP1u+sAmx7JEz2M29dKXUmBLhgAuyLuZVSJ7tuWH0LsE/Cyq8AB27o6lWHGrGxsWCOz81AhL0lnP7UtEv0oFnHXsQ3cNdH8onGi3BB6d3Ofk8FIY50JLv85rgPebcA7+hPgM0UJNL6nyHABRVgqtXe3mfD8GIJcLjBI4qd67XkbugOd6HLjk7vFBU7HNy+bmhbuRtrg+cgSl4qYnmTcztPwfJN/X5qmfKjSvo2dzgN5Tm/YDYB7iMGbNpQKqVO9a8NumAVTYCJ/h4C3IV3q55NTxKxvM2MRyvPPNY5JM1kdcJ8cJ6TXVrYEkbDDisiofjG6akiSu92ZV2NTHhKv1I/+WinOJsemnkMcsxCCDBp/R6BPtDFFGCt9YmuFSUEuNsNbQ/Py8QF24LG+ITD09cJc7MS46KnK7LkLCPEa8vrkg5dztX6oSKWa83rZJpMmCYb2D9h9rP1CETt1y/fF7hBu6BNJyylToYAl8ACRgx4FivYjoZrlLMz1hwsGP5oD9Efi1XJmzqEqEzWsGnXGVhvtrXkhAlhrFZlbS+59xGY1ovyK9MJTBRjBOasAqz1vAXYG0NOgN8JAYYLulwC7A8DPljj9FvOCp4sVYP8ufbwbQ9R505GnxdV/chOIS5w4gj/buGwijP0QWaQRST/EEw1msI+2a3neMM8UxW6eFbPU8ktYAgwLOByC3BoBVfSV5lDw5ZLwAreU3IWewlsnHOXiNJ37ObWL5JFzL9Lt2BE8nhj9XIbU84bsGGL8tb47s36ta/PXaJKzy6K9SsG34jDCLCCAEOASynAmRW8cz8RyxFYwXM4WLlciePCLMZx+r2OciUvxOZik8uDZMj8/N3CuzJ5mojlf5o94T0BsHr3nj9grd8v7nbZhQUMCxgCDAHeTYQj+brMCkZG9N77+rL48Gi59nSfy0WsnjlrzDQPVvGeftaqeoKI5SdFLO80v2t7ju809sEeV8NZv3eLVfIF5nUsUB35gJOwYAFDgCHAsIJ7jA1z0hrPFrax0LtFLL8gqvJ5s77Gyy1W3HKzemdzjVbpqSKmT4hY/sb8bu2e4agXn4sA22fo8g6vSIEFGC5oMCcBRhLWHvA39Aq92hyyxr0KF+McE26sEPNrZrOlJ0WcXiEiOiFrvN8txlxDaw/lxT1s+Hvyez2bRcbDEyL1CmvNy7vM72Ituab7HSG8c3E923Ksu0RVH2tf12I1cIEFDGABD5owPsVDGi7ws1uRWDMvIeZLC1vEbAEZqzHdbhp5xBufLz647sDdRa+1wogxr7YLeDAHkHcrm689vN+sVhh7PVbSM0ScniEiWRMx2Z99Td2HISC880nUM3W/pu3kZR3vcYEFeDssYAALeBAHtrupR+pFpqtRO8sVruj5CfG0ed14/uv5Ey17maF7RJwmIk4rokIvESvHHr7n96G1wjT64PeD11pnsWZu7K51shdw9/dPzqzrPXz9+qFiVXKsiNIPiVj+rxlLyaLBFi/X89r3HK7m+fV7bgXd034jYvn0Ilq/sIABBHjBBDiIT3Kta1bjSUi46X24Q8NYxWwNs2VpX9P7jGUcp18SFTrNNLSoJkeKi3ftvyDx/VX1w43gxvJkEdOloiLHRSx/b7KZjbU7Zt/nKCwpwuohMc9niH/MnUJDRZwpjRgwgAt6ociGqdePFrG81U1KQoejvt2Txp07aePrdSvELH4mXijvERX5QxHLdSJO14ooPds07o/ky0xmdSQfbxp/cDy5OnKwidXy+og+yFizPP4vqj3OWF1sXVfUW0QsPyhieYmZyct9iDkmyR4N/p4X+NiuuSBMulg/rN1+E6/O3Wy7pZ159REdeRUFF2DUAQNYwIPkDVmLypXWpUZozjFYF/WUEz57sWExPM+5qtkNfO54y5Q4xfIPIpa/FRV5kxHRSG4RlXTUxGpNvFbWTVOMOL1OxPInIpa/NmLO7xe/b17k+aOZxkOt4HtPIbY7wMsVv1/mUqPen3keCgosYAABXkh820GTFZtudp2fYCUtZE2xEUWazHpxc70tH+jsgWC3Jr8HJk7rYrXZcp/j/89/l93JnARWIV8m1QjEHu7lhbpQ2WeETFKbKFbZEWLAAAK86PFgd4PnFpVsKfGhjuYci5TQQ9PutZ6yAkpenBuzrvD/+5izj0niNV34zmi2ZK8hKunfFN36hQADCPCiCHCYkCX/DQlZWFizJtlNG+u3Qp8NDp+hMgkwYsAAAryQVvAq+WgRpzeZ2CSac2Bhta1fk6SY3phNxwqnRsEChgBDgCHAfbyKQ0FC1t+b7N0KErKwsMwzwM+CdT+/NYj7DkGAIcAQYJQhDcgKboW1wV92HbKQkIWFxCvzLKT/MeuzAgGGAEOAYQEP3hVNN5p6x8jXBqNVJVZZVtru92xdzzeJVRse0/GMQIAhwAAW8MBd0f52X0lfa1xvnSMLYQ1jlafml9t12rGMb8ws3xKJBuqAASzgxSasa6zIjztXdBNZ0VilGrZgXM/b+M+fnvXZKKEAIwsaQIAX0xV9hj7INB3omBsMVzRWoWO+dq/bcZObTAvQkrmeIcAAArxcRNiMsJO/cb2iJ+GKxiq2+NKkm3R0lxktWVLxRQwYQICX9oVtx4NjeZKNh9UwthCr2PW+vtdzJN/bfg6qKyDAToC1hgADCPDix4Ppo64P7gzqg7EK2qt72rieo/Tzu3mCIMBwQQMI8KLDA+OFG18Yy++064ORlIVVKPdzw+1tEtWxg+3eL/ezv5sAwwUNIMBLQDY7OHmUiNJrTb9oWx8MNzRWEXo9T5pJVBX6majSkzr2PAQYLmgAAV56S9i9DvHG55jZtZyUlTXpwMLKcbMNnqEcy3tFJI8ru9v5jwowLGCwGAI8MjJyMAS445UeEsMuJlyh1xs3tE1WgQhj5dXybZjEwqqZq3yKO1BKm3Q1Fxc0YsAAFvBSYQ4m99BE6WlmaIPpFJRichJWDjOeqWXarcZ0frbHS9ZsY14C3GMSlj+LIcAQYAhwv3R2yjrPuKLt5CSIMFZ+Jhxxtys7+/oL7QsmXM9wQQO4oJe9JRwcVFH6WXH+RLt/Lg53rOVfbtS0Gc90hagO7wfxhQADWMD5FGF+7SP5FVs/iRphrGUd853OejzHcoOoJoeYPexL7QAEGECAc4M/uKrJASJOv+UOtmmIMNYyFd+G2aOVdFRUk0fYPYzne84xYCRhAQjwchPhrEb4ASKmK50INyHCWMtSfCO5RVT1EbB8exBgdMICEOBlLMJnTjxQxPQ9iDDWMhXfbaKqHhuEUCAA87SA4YIGcxJg/6ZDgBdZhC9kEZbfdUku00jMwlrihCsX86UJcdb6QHxx+PcUA0YnLLAYFjCyoPt1R6ffcjNVUaKEtTSlRj7bOeKY79VHQHzhggawgMsiwgeY7GieoGTqhNGsA2sRm2xwn3I7XGFDlnAF8e3bAoYAg0WxgCHAAxBhfl9i+RnTrINb/qFtJdbCr4a58JkmG3SFCYkIJFwNzAUNAQYQ4DyIcHDgVegc0293zZidPIMpSlgLsfiCx/vMtJeUX8iabKDUCC5oAAEuHWF3oVidasSXD0djCWOeMNYg5/nSpJlqxJ4WbpHa7Y0BsIABBLjUIlyhV4tY/tL14J1ChjRWH+VFM1mmM1/ozjPtUP8g4uQ9s+49AAEGiyfASMJaRvAAB/+wVekZokJbXIKMjdlBULB6T7ZyfZ3Tn4pIvQLiCwEGsIDBbpZwdUV2KK4ce7iI02+I8za3zEjDWE5CTLDmaQFPiopquR7kUkTyidk+w0hBCDCABQx2e7eGOjOk0zUmfsfuQ5shjbgw1h9LtJoxF7ZzxltizSjHez8nqmMHZ1avmVkNIMAAAgxmZ23wmq7a+HoRy5+5VoEzaNqBtWfxNTkDUy58caeI0lNm3VMAAgzgggZ7c0mHM4U3HmXaV7IlzC5ptoYjlCphhVnOsiFWq5a7qI2LOH1utn+Q6QwBBrCAwTzhWJ2P1/EhGslVIpb3uSxp30caQoyWklOmfG215v/+lDjruw/KwhhItlo0AcYwBgALuHjv4FBH046YXihiOWFEmJsqWJc0YsPlnGI0lSVaVeSPRZSc0OFBQbx30S1gNOIAEOCiu6TtRKWPmQPY1ne6umFYwyVxN08ZATYtTI3Ve7lYJR89614BEGAAAQaDEOHWCjEclJBU1UtFLDeZg9i0sXTuyN2bMWDlv6FGO8mK8wDsxetHIqY3d+wPlBgtqQsaAgwgwMVmSAy3AhFOHiAiuVrE8g7jll5d88070EWrSHN7OfHOuJu32LrwSH46m2LEmD2BAxsWMIAAg0WwhoPGHUwsny7i9Ips0o0ZccgNPNBTOtfuZlv/PWOasqwxTVlSUaGXtIV3eB9j+YJlIcBIwgIQ4DLBLscw2WZV+haTpMWN9/nQNgKMCUu5nFzELmcOL5j3Uf5QRPK9HSVFiPVCgAEEGK/ykr/LnZnS1eQQEadniJhuNLFCPsT5MMe84bz0b26YC9T5pofzr0QsPyyqyaOy95dFGIczXNAAAgwBXk5u6daKDgspkn9qDu+YbjGH+bnj7QMeCVrLU3i5fSQ304jTO0VMl4oqPbXD4kWSFSxgkH8BRiOOIgtx10G9MjlGVOgiEctfm8PdW8QxOmotj5KidMpksRvhlb8TEX2xo5NV2CMcQIABLGAIcA7o7v/L1pStH77F9AvOYsTGIp5GnHixRNc10eBMdR6aYIX3DlGhz4uqfF7neza8H9zNEGAACxgCnM8NMGQO8RDuLW1Ll35kWhi2s6atKFirGGI82GzmGdexzNZpn7fZlxTdIirpRWYOdPflCdnN+RNgrSHAABYw6HZLt1bsZhGv2nC4iNNTRUXWspaGa+p26lJk6oibKGPqezTgtKvJnjatQ1l07ZjAHSKWZ4lq8mcd7wm7mhHnhQUMAYYAQ4ALCB/uYca0EeeJ+4so+TsRy/8UMd1urDPf3N+LcQQxnkeP5vbrxRcbU0pkOlfdI+L0O6Z7VfWqQzvfg+RPOrqcAQgwBBgCDAEusEU8Wx1pJJ9oLDMz0k42szIm23N4JmuHiAEQnZ2q7Gti+3HzWECO7fJrx679KL1WxHS+WJU8a/f3AZnNhRFgezZCgAEEGMxViKu2v3T35JzT6/cTUfJSEaUXi1hen8UtWYyr9bA3ccPVGM+ULKbbdC0/bUyX3cve0jWXlfQmEcsviAq92tRldz6Utp0ophXBAoYAQ4AhwMCUumTN/Lse/Gr9UBHJ40WFPisq8lojPF5s2NIzguOyqaNCCvKMi+M23LKuZdNtbMK66+3vu8tMJorlW0X1+4+c1f3PrzEOVggwBLjcAowsaLCXTTO0x8k6Z6kHiQq93DT4qEgpYvlbMwCChYgTjLoF2bbB9MMhZnIits6lTJOue1izQ3DNLGbjBbjTuurTT4lV6Ws7hiNAdEspwHBBA1jAYPBibOLFXQcCZ1WvTJ4mKvQuEcl/E1G6WcTydiPARqi22o8m61e1p/rYIRGTXWVPS5WhPNX1MzVN3JZ/ZlMqtDUQXLpLRHKHiORXRJy+X8TqOSaBrRsf17XPHQ5RCDAEGAIMAQZ976ahLIt6thrVMyceKFbRs0VF/qONHdPVIpY/FrH8gylvYiHjphOmLeamtjBHriNUJoSZGDay5KbYl0WxaNIelpzOyn7ayWLeCp90Y/wa2UB7/t4srPyzhD+bna3Mf/9nIqZUVOTnzCCEqj5WVJOHzHpJ4ddkOBNdUFIBhgsaQIDB4uB7T3eXNXlOG9lfRBseJyrp34gKnWIaTsR0hYjkFtOAIpb3Wvf15pbpzHXB9rYI+uxrdvuyUHOSE1vWLJpsoc66lP07/HdZWPnf+lg1f03+2h9234M/Z63aSTPwIDJ1ud8VsbxERPIDIpLHiUgfNauF663cds0uDkoIMCxgAAEGS7bRhowocdetPQmyF+2z6aEi1k82WdaxPElE8kwRyX8VEX1VxOn3nSv7h06k7zAWdORcw0Zg61aU2VJd4wW67gSafFnQvXaggfylSY6qsOjTehHLrzuRXSUq6h0iSl4h4o1/buK3e+u37H838xHZy2BwAuzPYggwBBgCDAYryKal4vB+puxmLpw+fD9x9voHi6o+wtQkV5Nniap8gUn8ipLXiFi+UVTkiaIi/0HE9HazzJ+TvxcV+SaTDFVJXymi5EXGHc5CX02ONKK/J2u2G7Zq/c8NwQXzEGC4oAEEGCxPTM1xax9jaRpLeWJf1/1paQ4aE892P4sRXIgt6F2At8MFDeYqwChDAsvLWm5Zcfax1bVuneyF0bVq9GU9ZlWD5cqmTFMR9/f39HVQFgRgAQNYwAD0xJAtiQoXEqHA0lvAEGAAAQYAgMUWYPSCBhBgAACAAAMIMAAAlEKAUQcMFk2AR0ZGDoYAAwAgwEjCArCAAQBgyQSYz0YIMIAAAwDAYgswLGAAAQYAgKWxgBEDBnMSYDTiAAAAWMAAFjAAAMAChgBDgCHAAAAACxgskAD364JGGRIAAAIclCFxFrTWEGCw8BYwBBgAAAFGHTBYAgGGCxoAAAEerABLCDAEGAIMAACLI8D+LIYAQ4DhggYAgB4EuNcsaAhwSQRYKfWWsfFxCDAAACxDAUYMuIACXK1WVzgL+IT66Ci/4RBgAABYRgLM3kml1EkQ4IIKsFLqVbpWMwJMSkGAAQBgEAKs1FX9CvDo2FhLa/1GCHCx4DfSW8Av4Yw7FuF+BRhJWAAACLAVYKnU9/vohDXNRpExjpT6O/6abDRBgItjBa9wG+UvSal7a6OjPQvwtu3beZOMJklyCAQYAFBW1q5da86+devWHUhKJf0IcK1e549NpdSLgjMbAlwEhoeH93EW8JNIqdtHbSJWswdXyeTWbdv4z9trtdrDIMAAgLLizz42RkipMTZO5i3AROYsrluj6PdE9IzwzAYFEuB6vX44Ed3E2Xak1FQPN7XGxJYtLMQ3JklyJAQYAFB2ASaiw0ipnVu2bu2pFaUkarry0FuVUo+FABdUgDluS0pN8EZhAZbz3ShKTfFGkUS3KaX+XARxEAAAKKkFfDQpdcvmiQljpPRg2EyxYUNKXbd+/foHQ4ALKsAc1FdKfce5SnqxgJsuftyUUr7MfO1WCxsFAFA6vPGhtf4rzq3hLGa2Zudp1Jiz2IX21ntRhwAXUICdu+QSlywwNZ+JSNLGKvjvz/BNT2v9boF0eQBACQnLO6VSJ/XR4IjP1Ck+k5VSX5jtzAY5x28UYWuBP+Bc0LxRZpywzrlhOLtYXM/Tz2CzAABg1NDHAqNmzqNeZfvvNo0FrPXZgcCvwKtcpNuae0OllMf5mjMW4bkKcPD3Gs5dMpFs23aIQBwYAFAy/JnnSpCUC+s1us7KPyrAbDHzeWyyoIleL1ADXFgR3sdZwE+QSv3KZd1NzdMFndWsGVcL0UtgAQMAymoBy3r9eaTUfa6MqDkfAfYZ0M59/X9SyqfgPC34ja1er9+PlErDG9t8EgZ80oCJWWj9udlcMgAAUGBjJnMPS6JPduXUzMy3tNN5FMfHxsYOFvAoFvvG5qzgj/OmkW7TzOfG5m9tnPFHSt2V1GpPw6YBAJTQmDlaEv2WLdj5Zj+HAsw5NUR0KYyZYt/a2lORarXX+6lIJg48P7eJv+VNucSBr2HjAADKZsiQ1l9y1uu8K0pk1xSkVKm3CVSVlOPmloyOHimJbuqlcDwQa5M8YCxhonf5zRlmXAMAQJGMmCz2q/WJnAvTx2AbPkenXFfCW7XWRwl4Egu/gUI39OWmnKjdOm2mh4SsKZdAcAcnI/gNhBR6AECRYMMiaD35DFLqN2Eiq5yf8GbDbYz7WalveKsXAlwSFwoRvTl0Q893EwUbybdRuzGp1Y4R7TT6feBKAQAUwepttcs4Hy+Jrndn3lQPSVf+nM3cz0qpdwiUH5WDoH/pI4joGhfDmLcV3N3JxW3In8ha7cXdmxeuaQBAnqzd2c4tIno+KfWDia1bfdLVTI+JV+bM3WK/zo+01kcIDLYpz+YKNtQaJ8D9biYjwhxTVlrfo5SqXnXVVYfOcps0lrFzU+/jN7n7fE8Lwg5Aea3Tfs6O4PzJzqTZwmdcHkREK0mp37GhMQDxNeelKQXV+qPh+Yh3tURWsNb6ycEUj8lgPuV83SnZpuKkLPf1diql/qVWqz1uoX8f51aH6waAkrAYFRdSyj9NlXo/KbWDzzRXepm5necbsgvO1oZLvvrtRqWeCeu33FbwJwZkBbdcTXHTD2wws4OV+hUpNUxav4+nhrC7hdu3LcRtGO8sAOWwfBfAKLm/lPLR7GZOlTqVlPovzk7mc8wZFB2W73x7J+zB+v0srN+SW8HcmpKU+pmL4fYTC84W17f5zcpZ0rzZfNKC0vqnpFRNKvXfRPR5bgpCROdLpapEVJFKrSatzcfZFv8/t2IiOkcq9QF+cIIHE0IMQMHFl4gO40s9nwEpkT8T9npumI/2jKkqpc6TSn1cKrWWiL5JSmkuzeSqED6r+MxyWc7GqOhhytGehtlMOkH/pazXfevJ/fDOlo8hf+vSWn+QXSIuI7rZ5w2ve3xh07ttuG6ONx9vbu7ExSn4/JEXf26+iy33a6+7jn/uzVzbLNAMBIDC4p9trfUjWTD52eczoJezw587/gziz/HZ5Ho6z7gzq9lje8k9lR2Zs3UzGyNEFYHGG+Uma8yRJAcopTYG/aH7dUV3W8R+E0+7jd0I1hTfMJ3F3JRumT/z5/nPwf/PPm//m/99c+cNN7SklJH/vapw5wBQKDrCZlqfft3OnV4oGzI8K4IzJDtLgrOj6/zgsyc8j6b8mFayZ1ZrgMv8rHzGSqVGtdYHCdT9gqC4/Nk8kcMlBzQGvPn+qEAHFjPHjWf8Q6DavarNfwd/z69JF09BL1UACm79Muw65mfeNRHKzgLZedlvBUI6EyRAzQzawJhrz2fn0r6biF4okHgFHJkrWmr9bs70Y1fxfEYVLuGa8ZOZpFKfgQADUEzCJCWl1IVdE4iW+zk1xS0rx9m4ITpdoOkG2Mvm/rjLis6DCFsBvuYaCDAAJbGASamPZAI8eFfxQJdPRu3OesYZBToIYxFSqctdPHimjzFbi3a7NLOJIcAAlE+Al7cFbLKnt9nZ6V8Pcm4Q9wV7FuGdO3fuR0RfcyK83C1hYwFDgAEopQAva8vXhMeIvs11xhBfMGcRHhkZ2V8SfYXd0a48qbFMb5tTOyDAAECAl4/4cr+DljNgvrFjx44DIb5g3iLMsWHS+hLOjB61Ywcbvc6+hAADAAouwHw2NjiR1TQe0voy9iZCfEHPIixs3d2HeLPz9A6/yZaRNQwXNADlFeCZ5WL1cszXdfzLGm1AfMFgRJjob0mpH7JLmm94vOHcpoMAAwCWRID77dg3iPPHW72meoToJ1LK10F8wSA3vqlX27Bhw+FEdJnv6OKmgzSW0DWNMiQASsByqgN2faHNucetK7faWC933bq8Vqs9BucQGPTmHwpvckqpV5BS3+NN53uouo056QY6LOaDMYUaOwBKZAETfdS0dFy8Ekk/kGHSnXEtzovxpZqk1Hop5fGh1Ys55WDghCLMDwQRvUYq9XVS6te8IflWynFi19DcTz8yoqysMDcWYN19zbXXsuvnEggwAMW3gKVSF3LiJSl1z0KcKV1nljEm+Eyb2LrVnHGbrMHxW9L6m0R0QthSEi5nsKDwza67h6mU8ulKqX8hoitIqR9zbJit4nDaCMdHWJw5ScHP2Ox3cW9V/vqmf3Wt9nqB6SIAFFWAw+ltx7Eg8sWbz4BBnSd8NvEZxWdVeHY5Dx8L8U+4ppeTUpMkeVb48/GZCKsXLKpLqFuI+QHZUKs9LtX6lVLKDyil/lXyrE0iSUptl0S7iOhmUuqWfpdU6hc8MNsIvtYf9KKLwdYAFN8KTpV6P/F5otSt7iy4ZQDrZtKaz6gdpLV0M8svJq3/mZNQk3r9z1qt1j7dwguPG1hSIeaB0nsSPr4VJknygFqt9rANtdpjpJSPr9frR/e7knr96I1aP3lDvX54+L3wjgBQXDrGEhIdxmdAMoDzhJccG3s8J1GtHxt7OI8L3NuZxmcehBcsJ0yiFm/MtWvX7rvYbmBYvgCUzxJepO+XnW38ESEukIeHxMRseMOunZjYd2IBFyxfAMpnCU8s8LniRHcfCC4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2xP8HPjsA8hyC2tgAAAAASUVORK5CYII="},25144:(e,t,n)=&gt;{"use strict";n.r(t),n.d(t,{default:()=&gt;l});var r=n(68974),o=n.n(r),i=n(71870),a=n.n(i),s=n(36339),c=a()(o());c.i(s.Z),c.push([e.id,'/* stylelint-disable selector-max-specificity */\n\n.ring-avatar-editor {\n  position: relative;\n\n  width: calc(var(--ring-unit) * 5);\n  height: calc(var(--ring-unit) * 5);\n  padding: 1px;\n\n  text-align: center;\n\n  &amp;::after {\n    display: inline-block;\n\n    width: 0;\n    height: calc(var(--ring-unit) * 5);\n\n    content: "";\n    vertical-align: middle;\n  }\n}\n\n.ring-avatar-editor_right {\n  float: right;\n}\n\n.ring-avatar-editor:hover:not(:disabled, .ring-avatar-editor_controlled, .ring-avatar-editor_disabled) {\n  padding: 0;\n  cursor: pointer;\n\n  border: 1px solid var(--ring-link-hover-color);\n\n  &amp; .ring-avatar-editor__icon {\n    visibility: visible;\n  }\n\n  &amp; .ring-avatar-editor__img {\n    outline: 0;\n  }\n\n  &amp;::before {\n    position: absolute;\n    top: 0;\n    left: 0;\n\n    width: 100%;\n    height: 100%;\n\n    content: "";\n\n    background-color: rgba(0, 0, 0, 0.8);\n  }\n}\n\n.ring-avatar-editor__img {\n  max-width: calc(var(--ring-unit) * 5);\n  max-height: calc(var(--ring-unit) * 5);\n\n  vertical-align: middle;\n}\n\n.ring-avatar-editor__file-input {\n  position: absolute;\n  left: -10000px;\n\n  visibility: hidden;\n}\n\n.ring-avatar-editor__icon {\n  position: absolute;\n  top: 10px;\n  left: 0;\n\n  visibility: hidden;\n\n  width: 100%;\n\n  color: var(--ring-content-background-color);\n\n  line-height: 14px;\n}\n\n.ring-avatar-editor__frame {\n  display: inline-block;\n\n  padding: 0;\n\n  vertical-align: top;\n\n  border: 1px solid var(--ring-disabled-color);\n}\n\n.ring-avatar-editor__remove {\n  display: inline-block;\n\n  margin-left: calc(var(--ring-unit) * 2);\n\n  vertical-align: top;\n}\n',"",{version:3,sources:["webpack://./../ring-ui/components/avatar-editor-ng/avatar-editor-ng.css"],names:[],mappings:"AAEA,+CAA+C;;AAE/C;EACE,kBAAkB;;EAElB,iCAAiC;EACjC,kCAAkC;EAClC,YAAY;;EAEZ,kBAAkB;;EAElB;IACE,qBAAqB;;IAErB,QAAQ;IACR,kCAAkC;;IAElC,WAAW;IACX,sBAAsB;EACxB;AACF;;AAEA;EACE,YAAY;AACd;;AAEA;EACE,UAAU;EACV,eAAe;;EAEf,8CAA8C;;EAE9C;IACE,mBAAmB;EACrB;;EAEA;IACE,UAAU;EACZ;;EAEA;IACE,kBAAkB;IAClB,MAAM;IACN,OAAO;;IAEP,WAAW;IACX,YAAY;;IAEZ,WAAW;;IAEX,oCAAoC;EACtC;AACF;;AAEA;EACE,qCAAqC;EACrC,sCAAsC;;EAEtC,sBAAsB;AACxB;;AAEA;EACE,kBAAkB;EAClB,cAAc;;EAEd,kBAAkB;AACpB;;AAEA;EACE,kBAAkB;EAClB,SAAS;EACT,OAAO;;EAEP,kBAAkB;;EAElB,WAAW;;EAEX,2CAA2C;;EAE3C,iBAAiB;AACnB;;AAEA;EACE,qBAAqB;;EAErB,UAAU;;EAEV,mBAAmB;;EAEnB,4CAA4C;AAC9C;;AAEA;EACE,qBAAqB;;EAErB,uCAAuC;;EAEvC,mBAAmB;AACrB",sourcesContent:['@import "@jetbrains/ring-ui/components/global/variables.css";\n\n/* stylelint-disable selector-max-specificity */\n\n:global(.ring-avatar-editor) {\n  position: relative;\n\n  width: calc(var(--ring-unit) * 5);\n  height: calc(var(--ring-unit) * 5);\n  padding: 1px;\n\n  text-align: center;\n\n  &amp;::after {\n    display: inline-block;\n\n    width: 0;\n    height: calc(var(--ring-unit) * 5);\n\n    content: "";\n    vertical-align: middle;\n  }\n}\n\n:global(.ring-avatar-editor_right) {\n  float: right;\n}\n\n:global(.ring-avatar-editor:hover:not(:disabled, .ring-avatar-editor_controlled, .ring-avatar-editor_disabled)) {\n  padding: 0;\n  cursor: pointer;\n\n  border: 1px solid var(--ring-link-hover-color);\n\n  &amp; :global(.ring-avatar-editor__icon) {\n    visibility: visible;\n  }\n\n  &amp; :global(.ring-avatar-editor__img) {\n    outline: 0;\n  }\n\n  &amp;::before {\n    position: absolute;\n    top: 0;\n    left: 0;\n\n    width: 100%;\n    height: 100%;\n\n    content: "";\n\n    background-color: rgba(0, 0, 0, 0.8);\n  }\n}\n\n:global(.ring-avatar-editor__img) {\n  max-width: calc(var(--ring-unit) * 5);\n  max-height: calc(var(--ring-unit) * 5);\n\n  vertical-align: middle;\n}\n\n:global(.ring-avatar-editor__file-input) {\n  position: absolute;\n  left: -10000px;\n\n  visibility: hidden;\n}\n\n:global(.ring-avatar-editor__icon) {\n  position: absolute;\n  top: 10px;\n  left: 0;\n\n  visibility: hidden;\n\n  width: 100%;\n\n  color: var(--ring-content-background-color);\n\n  line-height: 14px;\n}\n\n:global(.ring-avatar-editor__frame) {\n  display: inline-block;\n\n  padding: 0;\n\n  vertical-align: top;\n\n  border: 1px solid var(--ring-disabled-color);\n}\n\n:global(.ring-avatar-editor__remove) {\n  display: inline-block;\n\n  margin-left: calc(var(--ring-unit) * 2);\n\n  vertical-align: top;\n}\n'],sourceRoot:""}]),c.locals={};const l=c},53397:(e,t,n)=&gt;{"use strict";n.r(t),n.d(t,{default:()=&gt;l});var r=n(68974),o=n.n(r),i=n(71870),a=n.n(i),s=n(36339),c=a()(o());c.i(s.Z),c.push([e.id,".breadcrumb_fcaa {\n  margin: 20px 0 calc(var(--ring-unit) * 3);\n\n  font-size: 0;\n}\n\n.header_c881 {\n  margin-bottom: 0;\n}\n\n.breadcrumbSmall_e56e .breadcrumbElement_ae54 {\n  display: inline-block;\n\n  height: calc(var(--ring-unit) * 2);\n\n  font-size: var(--ring-font-size);\n  line-height: 14px;\n}\n\n.breadcrumbElement_ae54 {\n  &amp; .breadcrumb_fcaa {\n    display: inline;\n  }\n\n  display: inline-block;\n\n  height: calc(var(--ring-unit) * 3);\n\n  text-decoration: none;\n\n  font-size: 24px;\n  line-height: 28px;\n}\n\n.breadcrumbElement_ae54 &gt; span {\n  display: inline-block;\n}\n\n.breadcrumbElement_ae54.active_e48e,\n.breadcrumb_fcaa .active_e48e {\n  cursor: default;\n}\n\n.elementDescription_ac37 {\n  position: relative;\n  top: 2px;\n\n  display: inline-block;\n  overflow: hidden;\n\n  width: calc(50 * var(--ring-unit));\n  padding-left: calc(2 * var(--ring-unit));\n\n  white-space: nowrap;\n  text-overflow: ellipsis;\n\n  font-size: var(--ring-font-size);\n  line-height: 16px;\n}\n\n.separatorIcon_f9d8 {\n  margin: 0 2px;\n  margin-top: -14px;\n\n  color: var(--ring-icon-disabled-color);\n}\n","",{version:3,sources:["webpack://./../ring-ui/components/breadcrumb-ng/breadcrumb.css"],names:[],mappings:"AAEA;EACE,yCAAyC;;EAEzC,YAAY;AACd;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,qBAAqB;;EAErB,kCAAkC;;EAElC,gCAAgC;EAChC,iBAAiB;AACnB;;AAEA;EACE;IACE,eAAe;EACjB;;EAEA,qBAAqB;;EAErB,kCAAkC;;EAElC,qBAAqB;;EAErB,eAAe;EACf,iBAAiB;AACnB;;AAEA;EACE,qBAAqB;AACvB;;AAEA;;EAEE,eAAe;AACjB;;AAEA;EACE,kBAAkB;EAClB,QAAQ;;EAER,qBAAqB;EACrB,gBAAgB;;EAEhB,kCAAkC;EAClC,wCAAwC;;EAExC,mBAAmB;EACnB,uBAAuB;;EAEvB,gCAAgC;EAChC,iBAAiB;AACnB;;AAEA;EACE,aAAa;EACb,iBAAiB;;EAEjB,sCAAsC;AACxC",sourcesContent:['@import "@jetbrains/ring-ui/components/global/variables.css";\n\n.breadcrumb {\n  margin: 20px 0 calc(var(--ring-unit) * 3);\n\n  font-size: 0;\n}\n\n.header {\n  margin-bottom: 0;\n}\n\n.breadcrumbSmall .breadcrumbElement {\n  display: inline-block;\n\n  height: calc(var(--ring-unit) * 2);\n\n  font-size: var(--ring-font-size);\n  line-height: 14px;\n}\n\n.breadcrumbElement {\n  &amp; .breadcrumb {\n    display: inline;\n  }\n\n  display: inline-block;\n\n  height: calc(var(--ring-unit) * 3);\n\n  text-decoration: none;\n\n  font-size: 24px;\n  line-height: 28px;\n}\n\n.breadcrumbElement &gt; span {\n  display: inline-block;\n}\n\n.breadcrumbElement.active,\n.breadcrumb .active {\n  cursor: default;\n}\n\n.elementDescription {\n  position: relative;\n  top: 2px;\n\n  display: inline-block;\n  overflow: hidden;\n\n  width: calc(50 * var(--ring-unit));\n  padding-left: calc(2 * var(--ring-unit));\n\n  white-space: nowrap;\n  text-overflow: ellipsis;\n\n  font-size: var(--ring-font-size);\n  line-height: 16px;\n}\n\n.separatorIcon {\n  margin: 0 2px;\n  margin-top: -14px;\n\n  color: var(--ring-icon-disabled-color);\n}\n'],sourceRoot:""}]),c.locals={breadcrumb:"breadcrumb_fcaa",header:"header_c881",breadcrumbSmall:"breadcrumbSmall_e56e",breadcrumbElement:"breadcrumbElement_ae54",active:"active_e48e",elementDescription:"elementDescription_ac37",separatorIcon:"separatorIcon_f9d8"};const l=c},86382:(e,t,n)=&gt;{"use strict";n.r(t),n.d(t,{default:()=&gt;s});var r=n(68974),o=n.n(r),i=n(71870),a=n.n(i)()(o());a.push([e.id,".buttonGroup_eb4f {\n  font-size: 0;\n  line-height: 0;\n}\n","",{version:3,sources:["webpack://./../ring-ui/components/button-group-ng/button-group-ng.css"],names:[],mappings:"AAAA;EACE,YAAY;EACZ,cAAc;AAChB",sourcesContent:[".buttonGroup {\n  font-size: 0;\n  line-height: 0;\n}\n"],sourceRoot:""}]),a.locals={buttonGroup:"buttonGroup_eb4f"};const s=a},3054:(e,t,n)=&gt;{"use strict";n.r(t),n.d(t,{default:()=&gt;l});var r=n(68974),o=n.n(r),i=n(71870),a=n.n(i),s=n(36339),c=a()(o());c.i(s.Z),c.push([e.id,"/* stylelint-disable-next-line selector-type-no-unknown */\n.ringIconDefaultColor_a879 rg-icon,\n.ringIconDefaultColor_a879 .ring-icon {\n  color: var(--ring-icon-secondary-color);\n}\n\n.iconMarginFix_f7b8.iconMarginFix_f7b8 {\n  margin-right: 0;\n}\n\n.transcludeSpacer_b5fd:not(:empty) {\n  margin-left: 4px;\n}\n\n.buttonWithoutIcon_b3e8 .iconNg_a23a {\n  display: none;\n}\n\n.narrowRight_ea1d {\n  padding-right: 12px;\n}\n","",{version:3,sources:["webpack://./../ring-ui/components/button-ng/button-ng.css"],names:[],mappings:"AAEA,yDAAyD;AACzD;;EAEE,uCAAuC;AACzC;;AAEA;EACE,eAAe;AACjB;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,mBAAmB;AACrB",sourcesContent:['@import "@jetbrains/ring-ui/components/global/variables.css";\n\n/* stylelint-disable-next-line selector-type-no-unknown */\n.ringIconDefaultColor rg-icon,\n.ringIconDefaultColor :global(.ring-icon) {\n  color: var(--ring-icon-secondary-color);\n}\n\n.iconMarginFix.iconMarginFix {\n  margin-right: 0;\n}\n\n.transcludeSpacer:not(:empty) {\n  margin-left: 4px;\n}\n\n.buttonWithoutIcon .iconNg {\n  display: none;\n}\n\n.narrowRight {\n  padding-right: 12px;\n}\n'],sourceRoot:""}]),c.locals={ringIconDefaultColor:"ringIconDefaultColor_a879",iconMarginFix:"iconMarginFix_f7b8",transcludeSpacer:"transcludeSpacer_b5fd",buttonWithoutIcon:"buttonWithoutIcon_b3e8",iconNg:"iconNg_a23a",narrowRight:"narrowRight_ea1d"};const l=c},25875:(e,t,n)=&gt;{"use strict";n.r(t),n.d(t,{default:()=&gt;l});var r=n(68974),o=n.n(r),i=n(71870),a=n.n(i),s=n(36339),c=a()(o());c.i(s.Z),c.push([e.id,".dialogContainer_cdcb {\n  position: relative;\n\n  display: flex;\n  flex-direction: column;\n\n  min-height: auto;\n\n  &amp; .ring-form__group:last-child {\n    margin-bottom: 0;\n  }\n\n  &amp; .ring-form {\n    width: 100%;\n  }\n}\n\n.wide_a4e7.wide_a4e7 {\n  width: calc(var(--ring-unit) * 75);\n  max-width: calc(var(--ring-unit) * 75);\n}\n\n.autoWidth_d87f.autoWidth_d87f {\n  width: auto;\n  max-width: 100%;\n}\n\n.header_da38.header_da38 {\n  cursor: move;\n  user-select: none;\n\n  font-size: 24px;\n}\n\n.inSidebar_b0eb .header_da38 {\n  padding-top: 0;\n\n  cursor: default;\n  user-select: text;\n}\n\n.inSidebar_b0eb .ring-form {\n  width: initial;\n}\n\n.scrollableWrapper_c90d.scrollableWrapper_c90d {\n  overflow: visible;\n\n  width: auto;\n\n  padding-top: calc(var(--ring-unit) * 3);\n}\n\n.content_e2fd.content_e2fd {\n  overflow: visible;\n}\n\n.error_c84b {\n  max-width: calc(var(--ring-unit) * 45);\n\n  word-wrap: break-word;\n\n  color: var(--ring-error-color);\n}\n\n.footer_f1b8 {\n  height: auto;\n  padding: calc(var(--ring-unit) * 2) calc(var(--ring-unit) * 4) calc(var(--ring-unit) * 4);\n\n  text-align: left;\n\n  font-size: 0;\n}\n\n.footerDescription_f292 {\n  margin-bottom: calc(var(--ring-unit) * 2);\n\n  font-size: var(--ring-font-size-smaller);\n}\n\n.footerItems_a5e1 {\n  white-space: nowrap;\n}\n\n.footerItem_e058 {\n  display: inline-block;\n\n  /**\n  * Do not make space using margin-right as it will break spaces between right-sided buttons in dialog's footer\n  */\n  &amp;:not(:first-child) {\n    margin-left: var(--ring-unit);\n  }\n}\n","",{version:3,sources:["webpack://./../ring-ui/components/dialog-ng/dialog-ng.css"],names:[],mappings:"AAEA;EACE,kBAAkB;;EAElB,aAAa;EACb,sBAAsB;;EAEtB,gBAAgB;;EAEhB;IACE,gBAAgB;EAClB;;EAEA;IACE,WAAW;EACb;AACF;;AAEA;EACE,kCAAkC;EAClC,sCAAsC;AACxC;;AAEA;EACE,WAAW;EACX,eAAe;AACjB;;AAEA;EACE,YAAY;EACZ,iBAAiB;;EAEjB,eAAe;AACjB;;AAEA;EACE,cAAc;;EAEd,eAAe;EACf,iBAAiB;AACnB;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,iBAAiB;;EAEjB,WAAW;;EAEX,uCAAuC;AACzC;;AAEA;EACE,iBAAiB;AACnB;;AAEA;EACE,sCAAsC;;EAEtC,qBAAqB;;EAErB,8BAA8B;AAChC;;AAEA;EACE,YAAY;EACZ,yFAAyF;;EAEzF,gBAAgB;;EAEhB,YAAY;AACd;;AAEA;EACE,yCAAyC;;EAEzC,wCAAwC;AAC1C;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,qBAAqB;;EAErB;;GAEC;EACD;IACE,6BAA6B;EAC/B;AACF",sourcesContent:['@import "@jetbrains/ring-ui/components/global/variables.css";\n\n.dialogContainer {\n  position: relative;\n\n  display: flex;\n  flex-direction: column;\n\n  min-height: auto;\n\n  &amp; :global(.ring-form__group:last-child) {\n    margin-bottom: 0;\n  }\n\n  &amp; :global(.ring-form) {\n    width: 100%;\n  }\n}\n\n.wide.wide {\n  width: calc(var(--ring-unit) * 75);\n  max-width: calc(var(--ring-unit) * 75);\n}\n\n.autoWidth.autoWidth {\n  width: auto;\n  max-width: 100%;\n}\n\n.header.header {\n  cursor: move;\n  user-select: none;\n\n  font-size: 24px;\n}\n\n.inSidebar .header {\n  padding-top: 0;\n\n  cursor: default;\n  user-select: text;\n}\n\n.inSidebar :global(.ring-form) {\n  width: initial;\n}\n\n.scrollableWrapper.scrollableWrapper {\n  overflow: visible;\n\n  width: auto;\n\n  padding-top: calc(var(--ring-unit) * 3);\n}\n\n.content.content {\n  overflow: visible;\n}\n\n.error {\n  max-width: calc(var(--ring-unit) * 45);\n\n  word-wrap: break-word;\n\n  color: var(--ring-error-color);\n}\n\n.footer {\n  height: auto;\n  padding: calc(var(--ring-unit) * 2) calc(var(--ring-unit) * 4) calc(var(--ring-unit) * 4);\n\n  text-align: left;\n\n  font-size: 0;\n}\n\n.footerDescription {\n  margin-bottom: calc(var(--ring-unit) * 2);\n\n  font-size: var(--ring-font-size-smaller);\n}\n\n.footerItems {\n  white-space: nowrap;\n}\n\n.footerItem {\n  display: inline-block;\n\n  /**\n  * Do not make space using margin-right as it will break spaces between right-sided buttons in dialog\'s footer\n  */\n  &amp;:not(:first-child) {\n    margin-left: var(--ring-unit);\n  }\n}\n'],sourceRoot:""}]),c.locals={dialogContainer:"dialogContainer_cdcb",wide:"wide_a4e7",autoWidth:"autoWidth_d87f",header:"header_da38",inSidebar:"inSidebar_b0eb",scrollableWrapper:"scrollableWrapper_c90d",content:"content_e2fd",error:"error_c84b",footer:"footer_f1b8",footerDescription:"footerDescription_f292",footerItems:"footerItems_a5e1",footerItem:"footerItem_e058"};const l=c},14056:(e,t,n)=&gt;{"use strict";n.r(t),n.d(t,{default:()=&gt;l});var r=n(68974),o=n.n(r),i=n(71870),a=n.n(i),s=n(36339),c=a()(o());c.i(s.Z),c.push([e.id,".dockedPanel_e855 {\n  margin-top: calc(var(--ring-unit) * 4);\n  padding-left: 0;\n\n  border-top: none;\n}\n\n.fixed_c113.fixed_c113 {\n  position: fixed;\n  z-index: 2;\n  top: auto;\n  right: 0;\n  bottom: 0;\n  left: 0;\n\n  width: 100%;\n  margin-left: 0;\n  padding-top: 12px;\n  padding-bottom: 12px;\n  padding-left: calc(var(--ring-unit) * 4);\n\n  border-top: 1px solid var(--ring-popup-border-color);\n  background-color: var(--ring-content-background-color);\n}\n","",{version:3,sources:["webpack://./../ring-ui/components/docked-panel-ng/docked-panel-ng.css"],names:[],mappings:"AAEA;EACE,sCAAsC;EACtC,eAAe;;EAEf,gBAAgB;AAClB;;AAEA;EACE,eAAe;EACf,UAAU;EACV,SAAS;EACT,QAAQ;EACR,SAAS;EACT,OAAO;;EAEP,WAAW;EACX,cAAc;EACd,iBAAiB;EACjB,oBAAoB;EACpB,wCAAwC;;EAExC,oDAAoD;EACpD,sDAAsD;AACxD",sourcesContent:['@import "@jetbrains/ring-ui/components/global/variables.css";\n\n.dockedPanel {\n  margin-top: calc(var(--ring-unit) * 4);\n  padding-left: 0;\n\n  border-top: none;\n}\n\n.fixed.fixed {\n  position: fixed;\n  z-index: 2;\n  top: auto;\n  right: 0;\n  bottom: 0;\n  left: 0;\n\n  width: 100%;\n  margin-left: 0;\n  padding-top: 12px;\n  padding-bottom: 12px;\n  padding-left: calc(var(--ring-unit) * 4);\n\n  border-top: 1px solid var(--ring-popup-border-color);\n  background-color: var(--ring-content-background-color);\n}\n'],sourceRoot:""}]),c.locals={dockedPanel:"dockedPanel_e855",fixed:"fixed_c113"};const l=c},18720:(e,t,n)=&gt;{"use strict";n.r(t),n.d(t,{default:()=&gt;s});var r=n(68974),o=n.n(r),i=n(71870),a=n.n(i)()(o());a.push([e.id,".errorPageNg_e486 {\n  position: fixed;\n\n  width: 100%;\n  height: 100%;\n}\n","",{version:3,sources:["webpack://./../ring-ui/components/error-page-ng/error-page-ng.css"],names:[],mappings:"AAAA;EACE,eAAe;;EAEf,WAAW;EACX,YAAY;AACd",sourcesContent:[".errorPageNg {\n  position: fixed;\n\n  width: 100%;\n  height: 100%;\n}\n"],sourceRoot:""}]),a.locals={errorPageNg:"errorPageNg_e486"};const s=a},61153:(e,t,n)=&gt;{"use strict";n.r(t),n.d(t,{default:()=&gt;s});var r=n(68974),o=n.n(r),i=n(71870),a=n.n(i)()(o());a.push([e.id,".errorText_a3ed {\n  height: auto;\n}\n\n.clear_c3e9.clear_c3e9 {\n  position: absolute;\n}\n","",{version:3,sources:["webpack://./../ring-ui/components/input-ng/input-ng.css"],names:[],mappings:"AAAA;EACE,YAAY;AACd;;AAEA;EACE,kBAAkB;AACpB",sourcesContent:[".errorText {\n  height: auto;\n}\n\n.clear.clear {\n  position: absolute;\n}\n"],sourceRoot:""}]),a.locals={errorText:"errorText_a3ed",clear:"clear_c3e9"};const s=a},19267:(e,t,n)=&gt;{"use strict";n.r(t),n.d(t,{default:()=&gt;s});var r=n(68974),o=n.n(r),i=n(71870),a=n.n(i)()(o());a.push([e.id,".ring-link {\n    &amp; {\n        cursor: pointer;\n        transition: color var(--ring-fast-ease);\n\n        color: var(--ring-link-color);\n\n        outline: none;\n\n        text-decoration-line: none;\n        text-decoration-thickness: 1px;\n        text-underline-offset: 3px;\n\n        @media (resolution &gt;= 2dppx) {\n            text-decoration-thickness: 0.5px;\n        }\n\n        &amp;:focus-visible {\n            box-shadow: 0 0 0 2px var(--ring-border-hover-color);\n        }\n    }\n\n    &amp;:hover{\n        text-decoration-line: underline;\n\n        transition: none;\n\n        color: var(--ring-link-hover-color);\n    }\n}\n\n.ring-link_inherit:not(:hover) {\n    color: inherit;\n}","",{version:3,sources:["webpack://./../ring-ui/components/link-legacy/link-legacy.css"],names:[],mappings:"AAAA;IACI;QACI,eAAe;QACf,uCAAuC;;QAEvC,6BAA6B;;QAE7B,aAAa;;QAEb,0BAA0B;QAC1B,8BAA8B;QAC9B,0BAA0B;;QAE1B;YACI,gCAAgC;QACpC;;QAEA;YACI,oDAAoD;QACxD;IACJ;;IAEA;QACI,+BAA+B;;QAE/B,gBAAgB;;QAEhB,mCAAmC;IACvC;AACJ;;AAEA;IACI,cAAc;AAClB",sourcesContent:[":global .ring-link {\n    &amp; {\n        cursor: pointer;\n        transition: color var(--ring-fast-ease);\n\n        color: var(--ring-link-color);\n\n        outline: none;\n\n        text-decoration-line: none;\n        text-decoration-thickness: 1px;\n        text-underline-offset: 3px;\n\n        @media (resolution &gt;= 2dppx) {\n            text-decoration-thickness: 0.5px;\n        }\n\n        &amp;:focus-visible {\n            box-shadow: 0 0 0 2px var(--ring-border-hover-color);\n        }\n    }\n\n    &amp;:hover{\n        text-decoration-line: underline;\n\n        transition: none;\n\n        color: var(--ring-link-hover-color);\n    }\n}\n\n:global .ring-link_inherit:not(:hover) {\n    color: inherit;\n}"],sourceRoot:""}]),a.locals={};const s=a},20537:(e,t,n)=&gt;{"use strict";n.r(t),n.d(t,{default:()=&gt;l});var r=n(68974),o=n.n(r),i=n(71870),a=n.n(i),s=n(36339),c=a()(o());c.i(s.Z),c.push([e.id,".ring-permission-hide {\n  display: none !important;\n}\n","",{version:3,sources:["webpack://./../ring-ui/components/permissions-ng/permissions-ng.css"],names:[],mappings:"AAEA;EACE,wBAAwB;AAC1B",sourcesContent:['@import "@jetbrains/ring-ui/components/global/variables.css";\n\n:global(.ring-permission-hide) {\n  display: none !important;\n}\n'],sourceRoot:""}]),c.locals={};const l=c},29402:(e,t,n)=&gt;{"use strict";n.r(t),n.d(t,{default:()=&gt;l});var r=n(68974),o=n.n(r),i=n(71870),a=n.n(i),s=n(36339),c=a()(o());c.i(s.Z),c.push([e.id,".ring-save-field {\n  display: inline-block;\n}\n\n.ring-save-field .ring-save-field__button {\n  margin-left: var(--ring-unit);\n\n  vertical-align: top;\n}\n","",{version:3,sources:["webpack://./../ring-ui/components/save-field-ng/save-field-ng.css"],names:[],mappings:"AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,6BAA6B;;EAE7B,mBAAmB;AACrB",sourcesContent:['@import "@jetbrains/ring-ui/components/global/variables.css";\n\n:global(.ring-save-field) {\n  display: inline-block;\n}\n\n:global(.ring-save-field .ring-save-field__button) {\n  margin-left: var(--ring-unit);\n\n  vertical-align: top;\n}\n'],sourceRoot:""}]),c.locals={};const l=c},5476:(e,t,n)=&gt;{"use strict";n.r(t),n.d(t,{default:()=&gt;l});var r=n(68974),o=n.n(r),i=n(71870),a=n.n(i),s=n(36339),c=a()(o());c.i(s.Z),c.push([e.id,'.shortcuts-hint {\n  width: 900px;\n  margin-bottom: calc(var(--ring-unit) * 2);\n}\n\n.shortcuts-hint__dialog {\n  width: auto;\n}\n\n.shortcuts-hint__popup-header {\n  padding-left: var(--ring-unit);\n}\n\n.shortcuts-hint__columns {\n  margin-top: calc(var(--ring-unit) * 3);\n  columns: 2 auto;\n\n  line-height: 20px;\n}\n\n.shortcuts-hint__table {\n  display: table;\n\n  border-spacing: 0 var(--ring-unit);\n\n  border-collapse: separate;\n}\n\n.shortcuts-hint__shortcuts-column {\n  min-width: calc(var(--ring-unit) * 4);\n}\n\n.shortcuts-hint__shortcut-block {\n  display: table-row-group;\n}\n\n.shortcuts-hint__shortcut-block:not(:first-child)::before {\n  display: block;\n\n  height: calc(var(--ring-unit) / 2);\n\n  content: "";\n}\n\n.shortcuts-hint__search-input-wrapper {\n  position: relative;\n\n  width: calc(var(--ring-unit) * 30);\n}\n\n.shortcuts-hint__search-icon {\n  position: absolute;\n  top: -1px;\n  right: 0;\n\n  width: calc(var(--ring-unit) * 2);\n  height: calc(var(--ring-unit) * 2);\n\n  padding: 3px 4px 3px 5px;\n\n  user-select: none;\n\n  color: var(--ring-disabled-color);\n}\n\n.shortcuts-hint__table-row {\n  display: table-row;\n}\n\n.shortcuts-hint__table-title {\n  display: table-row;\n}\n\n.shortcuts-hint__shortcut-cell {\n  display: table-cell;\n\n  max-width: calc(var(--ring-unit) * 22);\n  padding-right: var(--ring-unit);\n\n  text-align: right;\n}\n\n.shortcuts-hint__shortcut {\n  white-space: nowrap;\n\n  color: var(--ring-secondary-color);\n\n  font-family: monospace;\n}\n\n.shortcuts-hint__hint {\n  display: table-cell;\n\n  padding-left: var(--ring-unit);\n}\n\n.shortcuts-hint__shortcuts-title {\n  display: table-cell;\n\n  padding-left: var(--ring-unit);\n\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n\n  color: var(--ring-secondary-color);\n\n  font-size: 12px;\n}\n\n.shortcuts-hint__key-spacer {\n  padding: 0 var(--ring-unit);\n}\n',"",{version:3,sources:["webpack://./../ring-ui/components/shortcuts-hint-ng/shortcuts-hint-ng.css"],names:[],mappings:"AAEA;EACE,YAAY;EACZ,yCAAyC;AAC3C;;AAEA;EACE,WAAW;AACb;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,sCAAsC;EACtC,eAAe;;EAEf,iBAAiB;AACnB;;AAEA;EACE,cAAc;;EAEd,kCAAkC;;EAElC,yBAAyB;AAC3B;;AAEA;EACE,qCAAqC;AACvC;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,cAAc;;EAEd,kCAAkC;;EAElC,WAAW;AACb;;AAEA;EACE,kBAAkB;;EAElB,kCAAkC;AACpC;;AAEA;EACE,kBAAkB;EAClB,SAAS;EACT,QAAQ;;EAER,iCAAiC;EACjC,kCAAkC;;EAElC,wBAAwB;;EAExB,iBAAiB;;EAEjB,iCAAiC;AACnC;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,mBAAmB;;EAEnB,sCAAsC;EACtC,+BAA+B;;EAE/B,iBAAiB;AACnB;;AAEA;EACE,mBAAmB;;EAEnB,kCAAkC;;EAElC,sBAAsB;AACxB;;AAEA;EACE,mBAAmB;;EAEnB,8BAA8B;AAChC;;AAEA;EACE,mBAAmB;;EAEnB,8BAA8B;;EAE9B,qBAAqB;EACrB,yBAAyB;;EAEzB,kCAAkC;;EAElC,eAAe;AACjB;;AAEA;EACE,2BAA2B;AAC7B",sourcesContent:['@import "@jetbrains/ring-ui/components/global/variables.css";\n\n:global(.shortcuts-hint) {\n  width: 900px;\n  margin-bottom: calc(var(--ring-unit) * 2);\n}\n\n:global(.shortcuts-hint__dialog) {\n  width: auto;\n}\n\n:global(.shortcuts-hint__popup-header) {\n  padding-left: var(--ring-unit);\n}\n\n:global(.shortcuts-hint__columns) {\n  margin-top: calc(var(--ring-unit) * 3);\n  columns: 2 auto;\n\n  line-height: 20px;\n}\n\n:global(.shortcuts-hint__table) {\n  display: table;\n\n  border-spacing: 0 var(--ring-unit);\n\n  border-collapse: separate;\n}\n\n:global(.shortcuts-hint__shortcuts-column) {\n  min-width: calc(var(--ring-unit) * 4);\n}\n\n:global(.shortcuts-hint__shortcut-block) {\n  display: table-row-group;\n}\n\n:global(.shortcuts-hint__shortcut-block:not(:first-child)::before) {\n  display: block;\n\n  height: calc(var(--ring-unit) / 2);\n\n  content: "";\n}\n\n:global(.shortcuts-hint__search-input-wrapper) {\n  position: relative;\n\n  width: calc(var(--ring-unit) * 30);\n}\n\n:global(.shortcuts-hint__search-icon) {\n  position: absolute;\n  top: -1px;\n  right: 0;\n\n  width: calc(var(--ring-unit) * 2);\n  height: calc(var(--ring-unit) * 2);\n\n  padding: 3px 4px 3px 5px;\n\n  user-select: none;\n\n  color: var(--ring-disabled-color);\n}\n\n:global(.shortcuts-hint__table-row) {\n  display: table-row;\n}\n\n:global(.shortcuts-hint__table-title) {\n  display: table-row;\n}\n\n:global(.shortcuts-hint__shortcut-cell) {\n  display: table-cell;\n\n  max-width: calc(var(--ring-unit) * 22);\n  padding-right: var(--ring-unit);\n\n  text-align: right;\n}\n\n:global(.shortcuts-hint__shortcut) {\n  white-space: nowrap;\n\n  color: var(--ring-secondary-color);\n\n  font-family: monospace;\n}\n\n:global(.shortcuts-hint__hint) {\n  display: table-cell;\n\n  padding-left: var(--ring-unit);\n}\n\n:global(.shortcuts-hint__shortcuts-title) {\n  display: table-cell;\n\n  padding-left: var(--ring-unit);\n\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n\n  color: var(--ring-secondary-color);\n\n  font-size: 12px;\n}\n\n:global(.shortcuts-hint__key-spacer) {\n  padding: 0 var(--ring-unit);\n}\n'],sourceRoot:""}]),c.locals={};const l=c},40049:(e,t,n)=&gt;{"use strict";n.r(t),n.d(t,{default:()=&gt;l});var r=n(68974),o=n.n(r),i=n(71870),a=n.n(i),s=n(36339),c=a()(o());c.i(s.Z),c.push([e.id,".ring-tooltip-ng {\n  max-width: calc(var(--ring-unit) * 50);\n  padding: var(--ring-unit);\n\n  text-align: left;\n}\n\n.ring-tooltip-ng__hint-icon {\n  position: relative;\n  top: -2px;\n\n  margin-left: var(--ring-unit);\n\n  cursor: pointer;\n\n  color: var(--ring-icon-color);\n}\n\n.ring-tooltip-ng_open .ring-tooltip-ng__hint-icon {\n  color: var(--ring-link-hover-color);\n}\n","",{version:3,sources:["webpack://./../ring-ui/components/tooltip-ng/tooltip-ng.css"],names:[],mappings:"AAEA;EACE,sCAAsC;EACtC,yBAAyB;;EAEzB,gBAAgB;AAClB;;AAEA;EACE,kBAAkB;EAClB,SAAS;;EAET,6BAA6B;;EAE7B,eAAe;;EAEf,6BAA6B;AAC/B;;AAEA;EACE,mCAAmC;AACrC",sourcesContent:['@import "@jetbrains/ring-ui/components/global/variables.css";\n\n:global(.ring-tooltip-ng) {\n  max-width: calc(var(--ring-unit) * 50);\n  padding: var(--ring-unit);\n\n  text-align: left;\n}\n\n:global(.ring-tooltip-ng__hint-icon) {\n  position: relative;\n  top: -2px;\n\n  margin-left: var(--ring-unit);\n\n  cursor: pointer;\n\n  color: var(--ring-icon-color);\n}\n\n:global(.ring-tooltip-ng_open .ring-tooltip-ng__hint-icon) {\n  color: var(--ring-link-hover-color);\n}\n'],sourceRoot:""}]),c.locals={};const l=c},60207:(e,t,n)=&gt;{var r=n(35327),o=n(27010),i=n(61967),a=n(78118),s=n(73914),c=n(38766),l=n(25144);l=l.__esModule?l.default:l;var g={};g.styleTagTransform=c,g.setAttributes=a,g.insert=i.bind(null,"head"),g.domAPI=o,g.insertStyleElement=s,r(l,g),e.exports=l&amp;&amp;l.locals||{}},88576:(e,t,n)=&gt;{var r=n(35327),o=n(27010),i=n(61967),a=n(78118),s=n(73914),c=n(38766),l=n(53397);l=l.__esModule?l.default:l;var g={};g.styleTagTransform=c,g.setAttributes=a,g.insert=i.bind(null,"head"),g.domAPI=o,g.insertStyleElement=s,r(l,g),e.exports=l&amp;&amp;l.locals||{}},56039:(e,t,n)=&gt;{var r=n(35327),o=n(27010),i=n(61967),a=n(78118),s=n(73914),c=n(38766),l=n(86382);l=l.__esModule?l.default:l;var g={};g.styleTagTransform=c,g.setAttributes=a,g.insert=i.bind(null,"head"),g.domAPI=o,g.insertStyleElement=s,r(l,g),e.exports=l&amp;&amp;l.locals||{}},95006:(e,t,n)=&gt;{var r=n(35327),o=n(27010),i=n(61967),a=n(78118),s=n(73914),c=n(38766),l=n(3054);l=l.__esModule?l.default:l;var g={};g.styleTagTransform=c,g.setAttributes=a,g.insert=i.bind(null,"head"),g.domAPI=o,g.insertStyleElement=s,r(l,g),e.exports=l&amp;&amp;l.locals||{}},96786:(e,t,n)=&gt;{var r=n(35327),o=n(27010),i=n(61967),a=n(78118),s=n(73914),c=n(38766),l=n(25875);l=l.__esModule?l.default:l;var g={};g.styleTagTransform=c,g.setAttributes=a,g.insert=i.bind(null,"head"),g.domAPI=o,g.insertStyleElement=s,r(l,g),e.exports=l&amp;&amp;l.locals||{}},26880:(e,t,n)=&gt;{var r=n(35327),o=n(27010),i=n(61967),a=n(78118),s=n(73914),c=n(38766),l=n(14056);l=l.__esModule?l.default:l;var g={};g.styleTagTransform=c,g.setAttributes=a,g.insert=i.bind(null,"head"),g.domAPI=o,g.insertStyleElement=s,r(l,g),e.exports=l&amp;&amp;l.locals||{}},67802:(e,t,n)=&gt;{var r=n(35327),o=n(27010),i=n(61967),a=n(78118),s=n(73914),c=n(38766),l=n(18720);l=l.__esModule?l.default:l;var g={};g.styleTagTransform=c,g.setAttributes=a,g.insert=i.bind(null,"head"),g.domAPI=o,g.insertStyleElement=s,r(l,g),e.exports=l&amp;&amp;l.locals||{}},15717:(e,t,n)=&gt;{var r=n(35327),o=n(27010),i=n(61967),a=n(78118),s=n(73914),c=n(38766),l=n(61153);l=l.__esModule?l.default:l;var g={};g.styleTagTransform=c,g.setAttributes=a,g.insert=i.bind(null,"head"),g.domAPI=o,g.insertStyleElement=s,r(l,g),e.exports=l&amp;&amp;l.locals||{}},10344:(e,t,n)=&gt;{var r=n(35327),o=n(27010),i=n(61967),a=n(78118),s=n(73914),c=n(38766),l=n(19267);l=l.__esModule?l.default:l;var g={};g.styleTagTransform=c,g.setAttributes=a,g.insert=i.bind(null,"head"),g.domAPI=o,g.insertStyleElement=s,r(l,g),e.exports=l&amp;&amp;l.locals||{}},59019:(e,t,n)=&gt;{var r=n(35327),o=n(27010),i=n(61967),a=n(78118),s=n(73914),c=n(38766),l=n(20537);l=l.__esModule?l.default:l;var g={};g.styleTagTransform=c,g.setAttributes=a,g.insert=i.bind(null,"head"),g.domAPI=o,g.insertStyleElement=s,r(l,g),e.exports=l&amp;&amp;l.locals||{}},50225:(e,t,n)=&gt;{var r=n(35327),o=n(27010),i=n(61967),a=n(78118),s=n(73914),c=n(38766),l=n(29402);l=l.__esModule?l.default:l;var g={};g.styleTagTransform=c,g.setAttributes=a,g.insert=i.bind(null,"head"),g.domAPI=o,g.insertStyleElement=s,r(l,g),e.exports=l&amp;&amp;l.locals||{}},89397:(e,t,n)=&gt;{var r=n(35327),o=n(27010),i=n(61967),a=n(78118),s=n(73914),c=n(38766),l=n(5476);l=l.__esModule?l.default:l;var g={};g.styleTagTransform=c,g.setAttributes=a,g.insert=i.bind(null,"head"),g.domAPI=o,g.insertStyleElement=s,r(l,g),e.exports=l&amp;&amp;l.locals||{}},35683:(e,t,n)=&gt;{var r=n(35327),o=n(27010),i=n(61967),a=n(78118),s=n(73914),c=n(38766),l=n(40049);l=l.__esModule?l.default:l;var g={};g.styleTagTransform=c,g.setAttributes=a,g.insert=i.bind(null,"head"),g.domAPI=o,g.insertStyleElement=s,r(l,g),e.exports=l&amp;&amp;l.locals||{}},55959:e=&gt;{"use strict";e.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3IiBoZWlnaHQ9IjciPjxwYXRoIGZpbGw9IiM4ODgiIGQ9Ik0wIDZoMXYxSDB6TTEgNWgxdjFIMXpNMiA0aDF2MUgyek0zIDNoMXYxSDN6TTQgMmgxdjFINHpNNCA2aDF2MUg0ek01IDVoMXYxSDV6TTYgNGgxdjFINnpNNSAxaDF2MUg1ek02IDBoMXYxSDZ6Ii8+PC9zdmc+"},24654:()=&gt;{},83087:()=&gt;{}},o={};function i(e){var t=o[e];if(void 0!==t)return t.exports;var n=o[e]={id:e,loaded:!1,exports:{}};return r[e].call(n.exports,n,n.exports,i),n.loaded=!0,n.exports}i.m=r,i.amdD=function(){throw new Error("define cannot be used indirect")},i.amdO={},e=[],i.O=(t,n,r,o)=&gt;{if(!n){var a=1/0;for(g=0;g&lt;e.length;g++){for(var[n,r,o]=e[g],s=!0,c=0;c&lt;n.length;c++)(!1&amp;o||a&gt;=o)&amp;&amp;Object.keys(i.O).every((e=&gt;i.O[e](n[c])))?n.splice(c--,1):(s=!1,o&lt;a&amp;&amp;(a=o));if(s){e.splice(g--,1);var l=r();void 0!==l&amp;&amp;(t=l)}}return t}o=o||0;for(var g=e.length;g&gt;0&amp;&amp;e[g-1][2]&gt;o;g--)e[g]=e[g-1];e[g]=[n,r,o]},i.n=e=&gt;{var t=e&amp;&amp;e.__esModule?()=&gt;e.default:()=&gt;e;return i.d(t,{a:t}),t},i.d=(e,t)=&gt;{for(var n in t)i.o(t,n)&amp;&amp;!i.o(e,n)&amp;&amp;Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.f={},i.e=e=&gt;Promise.all(Object.keys(i.f).reduce(((t,n)=&gt;(i.f[n](e,t),t)),[])),i.u=e=&gt;({552:"mermaid",793:"katex"}[e]+"."+{552:"3185bd15259824e9ec91",793:"b3dc202c0dc4fbf55d6f"}[e]+".js"),i.miniCssF=e=&gt;{},i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.hmd=e=&gt;((e=Object.create(e)).children||(e.children=[]),Object.defineProperty(e,"exports",{enumerable:!0,set:()=&gt;{throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+e.id)}}),e),i.o=(e,t)=&gt;Object.prototype.hasOwnProperty.call(e,t),t={},n="@youtrack/hub:",i.l=(e,r,o,a)=&gt;{if(t[e])t[e].push(r);else{var s,c;if(void 0!==o)for(var l=document.getElementsByTagName("script"),g=0;g&lt;l.length;g++){var u=l[g];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==n+o){s=u;break}}s||(c=!0,(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&amp;&amp;s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",n+o),s.src=e),t[e]=[r];var d=(n,r)=&gt;{s.onerror=s.onload=null,clearTimeout(p);var o=t[e];if(delete t[e],s.parentNode&amp;&amp;s.parentNode.removeChild(s),o&amp;&amp;o.forEach((e=&gt;e(r))),n)return n(r)},p=setTimeout(d.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=d.bind(null,s.onerror),s.onload=d.bind(null,s.onload),c&amp;&amp;document.head.appendChild(s)}},i.r=e=&gt;{"undefined"!=typeof Symbol&amp;&amp;Symbol.toStringTag&amp;&amp;Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="",(()=&gt;{i.b=document.baseURI||self.location.href;var e={143:0};i.f.j=(t,n)=&gt;{var r=i.o(e,t)?e[t]:void 0;if(0!==r)if(r)n.push(r[2]);else{var o=new Promise(((n,o)=&gt;r=e[t]=[n,o]));n.push(r[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(n=&gt;{if(i.o(e,t)&amp;&amp;(0!==(r=e[t])&amp;&amp;(e[t]=void 0),r)){var o=n&amp;&amp;("load"===n.type?"missing":n.type),a=n&amp;&amp;n.target&amp;&amp;n.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,r[1](s)}}),"chunk-"+t,t)}},i.O.j=t=&gt;0===e[t];var t=(t,n)=&gt;{var r,o,[a,s,c]=n,l=0;if(a.some((t=&gt;0!==e[t]))){for(r in s)i.o(s,r)&amp;&amp;(i.m[r]=s[r]);if(c)var g=c(i)}for(t&amp;&amp;t(n);l&lt;a.length;l++)o=a[l],i.o(e,o)&amp;&amp;e[o]&amp;&amp;e[o][0](),e[o]=0;return i.O(g)},n=self.webpackChunk_youtrack_hub=self.webpackChunk_youtrack_hub||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})(),i.nc=void 0;var a=i.O(void 0,[736],(()=&gt;i(37495)));a=i.O(a)})();</pre></body></html>