@vef-framework-react/starter 2.1.11 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/dist/cjs/components/login/index.cjs +1 -1
  2. package/dist/es/components/access-denied/access-denied-icon.js +1 -1
  3. package/dist/es/components/access-denied/index.js +1 -1
  4. package/dist/es/components/app/index.js +1 -1
  5. package/dist/es/components/base-layout/index.js +1 -1
  6. package/dist/es/components/base-layout/styles.js +1 -1
  7. package/dist/es/components/base-layout/use-base-layout.js +1 -1
  8. package/dist/es/components/error/error-icon.js +1 -1
  9. package/dist/es/components/error/index.js +1 -1
  10. package/dist/es/components/index.js +1 -1
  11. package/dist/es/components/layout/components/footer.js +1 -1
  12. package/dist/es/components/layout/components/header/boy-icon.js +1 -1
  13. package/dist/es/components/layout/components/header/breadcrumb-navigation.js +1 -1
  14. package/dist/es/components/layout/components/header/color-scheme.js +1 -1
  15. package/dist/es/components/layout/components/header/fullscreen.js +1 -1
  16. package/dist/es/components/layout/components/header/girl-icon.js +1 -1
  17. package/dist/es/components/layout/components/header/index.js +1 -1
  18. package/dist/es/components/layout/components/header/menu-burger.js +1 -1
  19. package/dist/es/components/layout/components/header/menu-fold-left-icon.js +1 -1
  20. package/dist/es/components/layout/components/header/menu-unfold-left-icon.js +1 -1
  21. package/dist/es/components/layout/components/header/search.js +1 -1
  22. package/dist/es/components/layout/components/header/theme-config.js +1 -1
  23. package/dist/es/components/layout/components/header/user-avatar.js +1 -1
  24. package/dist/es/components/layout/components/honeycomb-pattern.js +1 -1
  25. package/dist/es/components/layout/components/index.js +1 -1
  26. package/dist/es/components/layout/components/logo.js +1 -1
  27. package/dist/es/components/layout/components/menu.js +1 -1
  28. package/dist/es/components/layout/components/search/index.js +1 -1
  29. package/dist/es/components/layout/components/search/keyboard-arrow-down-icon.js +1 -1
  30. package/dist/es/components/layout/components/search/keyboard-arrow-up-icon.js +1 -1
  31. package/dist/es/components/layout/components/search/keyboard-control-icon.js +1 -1
  32. package/dist/es/components/layout/components/search/keyboard-esc-icon.js +1 -1
  33. package/dist/es/components/layout/components/search/keyboard-help.js +1 -1
  34. package/dist/es/components/layout/components/search/keyboard-return-icon.js +1 -1
  35. package/dist/es/components/layout/components/search/keyboard-shift-icon.js +1 -1
  36. package/dist/es/components/layout/components/search/keyboard.js +1 -1
  37. package/dist/es/components/layout/components/search/letter-s-icon.js +1 -1
  38. package/dist/es/components/layout/components/search/search-result-item.js +1 -1
  39. package/dist/es/components/layout/components/search/search-result.js +1 -1
  40. package/dist/es/components/layout/components/sidebar.js +1 -1
  41. package/dist/es/components/layout/components/tabs/context-menu.js +1 -1
  42. package/dist/es/components/layout/components/tabs/index.js +1 -1
  43. package/dist/es/components/layout/components/tabs/main-content-maximum.js +1 -1
  44. package/dist/es/components/layout/components/tabs/reload.js +1 -1
  45. package/dist/es/components/layout/components/tabs/tab-item.js +1 -1
  46. package/dist/es/components/layout/components/tabs/tab-list.js +1 -1
  47. package/dist/es/components/layout/components/tabs/tabs-container.js +1 -1
  48. package/dist/es/components/layout/components/theme-config/color-scheme-switcher.js +1 -1
  49. package/dist/es/components/layout/components/theme-config/color-scheme.js +1 -1
  50. package/dist/es/components/layout/components/theme-config/config-item.js +1 -1
  51. package/dist/es/components/layout/components/theme-config/index.js +1 -1
  52. package/dist/es/components/layout/components/theme-config/menu-layout-card.js +1 -1
  53. package/dist/es/components/layout/components/theme-config/menu-layout.js +1 -1
  54. package/dist/es/components/layout/components/theme-config/operations.js +1 -1
  55. package/dist/es/components/layout/components/theme-config/theme-color-picker.js +1 -1
  56. package/dist/es/components/layout/components/theme-config/theme-colors.js +1 -1
  57. package/dist/es/components/layout/hooks/index.js +1 -1
  58. package/dist/es/components/layout/hooks/use-color-scheme-updater.js +1 -1
  59. package/dist/es/components/layout/hooks/use-menu-navigate.js +1 -1
  60. package/dist/es/components/layout/hooks/use-tab-navigate.js +1 -1
  61. package/dist/es/components/layout/index.js +1 -1
  62. package/dist/es/components/layout/store.js +1 -1
  63. package/dist/es/components/layout/styles.js +1 -1
  64. package/dist/es/components/login/icon-login.js +1 -1
  65. package/dist/es/components/login/index.js +148 -73
  66. package/dist/es/components/login/styles.js +1 -1
  67. package/dist/es/components/login/welcome-messages.js +1 -1
  68. package/dist/es/components/n-progress/components/bar.js +1 -1
  69. package/dist/es/components/n-progress/components/container.js +1 -1
  70. package/dist/es/components/n-progress/components/index.js +1 -1
  71. package/dist/es/components/n-progress/event.js +1 -1
  72. package/dist/es/components/n-progress/index.js +1 -1
  73. package/dist/es/components/not-found/index.js +1 -1
  74. package/dist/es/components/not-found/not-found-icon.js +1 -1
  75. package/dist/es/components/router-provider/context.js +1 -1
  76. package/dist/es/components/router-provider/index.js +1 -1
  77. package/dist/es/components/theme-config-provider/global-style.js +1 -1
  78. package/dist/es/components/theme-config-provider/index.js +1 -1
  79. package/dist/es/components/theme-config-provider/use-color-mode-effect.js +1 -1
  80. package/dist/es/components/theme-config-provider/use-theme-config.js +1 -1
  81. package/dist/es/constants/event.js +1 -1
  82. package/dist/es/constants/index.js +1 -1
  83. package/dist/es/constants/router.js +1 -1
  84. package/dist/es/constants/storage.js +1 -0
  85. package/dist/es/helpers/api.js +1 -1
  86. package/dist/es/helpers/app-version.js +1 -1
  87. package/dist/es/helpers/app.js +1 -1
  88. package/dist/es/helpers/auth.js +1 -1
  89. package/dist/es/helpers/event.js +1 -1
  90. package/dist/es/helpers/index.js +1 -1
  91. package/dist/es/helpers/query.js +1 -1
  92. package/dist/es/helpers/router.js +1 -1
  93. package/dist/es/hooks/index.js +1 -1
  94. package/dist/es/hooks/use-route-full-path.js +1 -1
  95. package/dist/es/index.js +1 -1
  96. package/dist/es/routes/access-denied.js +1 -1
  97. package/dist/es/routes/index.js +1 -1
  98. package/dist/es/routes/layout.js +1 -1
  99. package/dist/es/routes/login.js +1 -1
  100. package/dist/es/routes/root.js +1 -1
  101. package/dist/es/stores/app.js +1 -1
  102. package/dist/es/stores/index.js +1 -1
  103. package/dist/es/stores/tab.js +1 -1
  104. package/dist/es/stores/theme.js +1 -1
  105. package/dist/types/components/index.d.ts +1 -1
  106. package/dist/types/components/login/index.d.ts +3 -3
  107. package/dist/types/components/login/payload.d.ts +20 -0
  108. package/dist/types/components/login/props.d.ts +76 -4
  109. package/dist/types/index.d.ts +1 -1
  110. package/package.json +10 -10
@@ -1 +1 @@
1
- require(`../../_internal/_rolldown/runtime.cjs`);const e=require(`../../stores/app.cjs`),t=require(`./icon-login.cjs`),n=require(`./styles.cjs`),r=require(`./welcome-messages.cjs`);let i=require(`@vef-framework-react/components`),a=require(`@vef-framework-react/shared`),o=require(`react`),s=require(`@emotion/react/jsx-runtime`),c=require(`@tanstack/react-router`),l=require(`lucide-react`),u=require(`@vef-framework-react/hooks`);var d=`VEF 中后台管理系统`,f=`一款极度快速的开发框架, 用于构建中后台管理系统`,p={position:`relative`,zIndex:1},m=(0,s.jsx)(i.Icon,{component:l.UserRoundIcon}),h=(0,s.jsx)(i.Icon,{component:l.LockKeyholeIcon}),g=a.z.object({type:a.z.literal(`password`),principal:a.z.string().nonempty(`请输入账号`),credentials:a.z.string().nonempty(`请输入密码`)}),_={type:`password`,principal:``,credentials:``};function v({logo:o,title:u=d,description:v=f,publicKey:b,onLogin:S}){let{colorPrimary:C}=(0,i.useThemeTokens)(),w=(0,c.useRouter)(),{redirect:T}=(0,c.useSearch)({strict:!1}),{AppForm:E,Form:D,SubmitButton:O,AppField:k}=(0,i.useForm)({defaultValues:_,validators:{onSubmit:g},async onSubmit({value:t}){let n=b?(0,a.encryptUsingRSA)(t.credentials,b):t.credentials,o=await S({...t,credentials:n}).catch(a.noop);if(!o)return;let{message:s,tokens:c}=o;e.useAppStore.setState(e=>{e.isAuthenticated=!0,e.authTokens=c}),await w.invalidate(),await w.navigate({to:T,replace:!0}),(0,i.showSuccessNotification)(r.getRandomWelcomeMessage(),{title:s||`登录成功`})}});return(0,s.jsxs)(i.Group,{css:n.login,gap:0,justify:`center`,children:[(0,s.jsxs)(`div`,{css:n.backgroundOrbs,children:[(0,s.jsx)(`div`,{css:[n.orb,n.orbPrimary,process.env.NODE_ENV===`production`?``:`/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtR2EiLCJmaWxlIjoiaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB0eXBlIHsgTG9naW5QYXJhbXMgfSBmcm9tIFwiLi9wYXlsb2FkXCI7XG5pbXBvcnQgdHlwZSB7IExvZ2luUHJvcHMgfSBmcm9tIFwiLi9wcm9wc1wiO1xuXG5pbXBvcnQgeyB1c2VSb3V0ZXIsIHVzZVNlYXJjaCB9IGZyb20gXCJAdGFuc3RhY2svcmVhY3Qtcm91dGVyXCI7XG5pbXBvcnQgeyBDZW50ZXIsIEdyb3VwLCBJY29uLCBMb2dvSWNvbiwgc2hvd1N1Y2Nlc3NOb3RpZmljYXRpb24sIFNwbGl0VGV4dCwgU3RhY2ssIFR5cGluZ0FuaW1hdGlvbiwgdXNlRm9ybSwgdXNlVGhlbWVUb2tlbnMgfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3QvY29tcG9uZW50c1wiO1xuaW1wb3J0IHsgdXNlSW50ZXJ2YWwgfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3QvaG9va3NcIjtcbmltcG9ydCB7IGVuY3J5cHRVc2luZ1JTQSwgZ2V0TG9jYWxpemVkRGF0ZVRpbWUsIG5vb3AsIHogfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3Qvc2hhcmVkXCI7XG5pbXBvcnQge1xuICBMb2NrS2V5aG9sZUljb24sXG4gIFNwYXJrbGVzSWNvbixcbiAgVXNlclJvdW5kSWNvblxufSBmcm9tIFwibHVjaWRlLXJlYWN0XCI7XG5pbXBvcnQgeyBtZW1vLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuXG5pbXBvcnQgeyB1c2VBcHBTdG9yZSB9IGZyb20gXCIuLi8uLi9zdG9yZXNcIjtcbmltcG9ydCB7IEljb25Mb2dpbiB9IGZyb20gXCIuL2ljb24tbG9naW5cIjtcbmltcG9ydCAqIGFzIHN0eWxlcyBmcm9tIFwiLi9zdHlsZXNcIjtcbmltcG9ydCB7IGdldFJhbmRvbVdlbGNvbWVNZXNzYWdlIH0gZnJvbSBcIi4vd2VsY29tZS1tZXNzYWdlc1wiO1xuXG5jb25zdCBERUZBVUxUX1RJVExFID0gXCJWRUYg5Lit5ZCO5Y+w566h55CG57O757ufXCI7XG5jb25zdCBERUZBVUxUX0RFU0NSSVBUSU9OID0gXCLkuIDmrL7mnoHluqblv6vpgJ/nmoTlvIDlj5HmoYbmnrYsIOeUqOS6juaehOW7uuS4reWQjuWPsOeuoeeQhuezu+e7n1wiO1xuXG5jb25zdCBsZWZ0Q29udGVudFN0eWxlOiBDU1NQcm9wZXJ0aWVzID0ge1xuICBwb3NpdGlvbjogXCJyZWxhdGl2ZVwiLFxuICB6SW5kZXg6IDFcbn07XG5cbmNvbnN0IHVzZXJJY29uID0gPEljb24gY29tcG9uZW50PXtVc2VyUm91bmRJY29ufSAvPjtcbmNvbnN0IGxvY2tJY29uID0gPEljb24gY29tcG9uZW50PXtMb2NrS2V5aG9sZUljb259IC8+O1xuXG5jb25zdCBsb2dpbkZvcm1TY2hlbWEgPSB6Lm9iamVjdCh7XG4gIHR5cGU6IHoubGl0ZXJhbChcInBhc3N3b3JkXCIpLFxuICBwcmluY2lwYWw6IHouc3RyaW5nKCkubm9uZW1wdHkoXCLor7fovpPlhaXotKblj7dcIiksXG4gIGNyZWRlbnRpYWxzOiB6LnN0cmluZygpLm5vbmVtcHR5KFwi6K+36L6T5YWl5a+G56CBXCIpXG59KTtcblxuY29uc3QgZGVmYXVsdExvZ2luVmFsdWVzOiBMb2dpblBhcmFtcyA9IHtcbiAgdHlwZTogXCJwYXNzd29yZFwiLFxuICBwcmluY2lwYWw6IFwiXCIsXG4gIGNyZWRlbnRpYWxzOiBcIlwiXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gTG9naW4oe1xuICBsb2dvLFxuICB0aXRsZSA9IERFRkFVTFRfVElUTEUsXG4gIGRlc2NyaXB0aW9uID0gREVGQVVMVF9ERVNDUklQVElPTixcbiAgcHVibGljS2V5LFxuICBvbkxvZ2luXG59OiBMb2dpblByb3BzKTogUmVhY3QuUmVhY3ROb2RlIHtcbiAgY29uc3QgeyBjb2xvclByaW1hcnkgfSA9IHVzZVRoZW1lVG9rZW5zKCk7XG5cbiAgY29uc3Qgcm91dGVyID0gdXNlUm91dGVyKCk7XG4gIGNvbnN0IHsgcmVkaXJlY3QgfSA9IHVzZVNlYXJjaCh7IHN0cmljdDogZmFsc2UgfSk7XG5cbiAgY29uc3Qge1xuICAgIEFwcEZvcm0sXG4gICAgRm9ybSxcbiAgICBTdWJtaXRCdXR0b24sXG4gICAgQXBwRmllbGRcbiAgfSA9IHVzZUZvcm0oe1xuICAgIGRlZmF1bHRWYWx1ZXM6IGRlZmF1bHRMb2dpblZhbHVlcyxcbiAgICB2YWxpZGF0b3JzOiB7XG4gICAgICBvblN1Ym1pdDogbG9naW5Gb3JtU2NoZW1hXG4gICAgfSxcbiAgICBhc3luYyBvblN1Ym1pdCh7IHZhbHVlIH0pIHtcbiAgICAgIGNvbnN0IGNyZWRlbnRpYWxzID0gcHVibGljS2V5XG4gICAgICAgID8gZW5jcnlwdFVzaW5nUlNBKHZhbHVlLmNyZWRlbnRpYWxzLCBwdWJsaWNLZXkpXG4gICAgICAgIDogdmFsdWUuY3JlZGVudGlhbHM7XG5cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IG9uTG9naW4oeyAuLi52YWx1ZSwgY3JlZGVudGlhbHMgfSkuY2F0Y2gobm9vcCk7XG5cbiAgICAgIGlmICghcmVzdWx0KSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgeyBtZXNzYWdlLCB0b2tlbnMgfSA9IHJlc3VsdDtcbiAgICAgIHVzZUFwcFN0b3JlLnNldFN0YXRlKHN0YXRlID0+IHtcbiAgICAgICAgc3RhdGUuaXNBdXRoZW50aWNhdGVkID0gdHJ1ZTtcbiAgICAgICAgc3RhdGUuYXV0aFRva2VucyA9IHRva2VucztcbiAgICAgIH0pO1xuXG4gICAgICBhd2FpdCByb3V0ZXIuaW52YWxpZGF0ZSgpO1xuICAgICAgYXdhaXQgcm91dGVyLm5hdmlnYXRlKHtcbiAgICAgICAgdG86IHJlZGlyZWN0LFxuICAgICAgICByZXBsYWNlOiB0cnVlXG4gICAgICB9KTtcblxuICAgICAgc2hvd1N1Y2Nlc3NOb3RpZmljYXRpb24oZ2V0UmFuZG9tV2VsY29tZU1lc3NhZ2UoKSwge1xuICAgICAgICB0aXRsZTogbWVzc2FnZSB8fCBcIueZu+W9leaIkOWKn1wiXG4gICAgICB9KTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiAoXG4gICAgPEdyb3VwIGNzcz17c3R5bGVzLmxvZ2lufSBnYXA9ezB9IGp1c3RpZnk9XCJjZW50ZXJcIj5cbiAgICAgIHsvKiBCYWNrZ3JvdW5kIG9yYiBkZWNvcmF0aW9ucyAqL31cbiAgICAgIDxkaXYgY3NzPXtzdHlsZXMuYmFja2dyb3VuZE9yYnN9PlxuICAgICAgICA8ZGl2IGNzcz17W3N0eWxlcy5vcmIsIHN0eWxlcy5vcmJQcmltYXJ5XX0gLz5cbiAgICAgICAgPGRpdiBjc3M9e1tzdHlsZXMub3JiLCBzdHlsZXMub3JiU2Vjb25kYXJ5XX0gLz5cbiAgICAgICAgPGRpdiBjc3M9e1tzdHlsZXMub3JiLCBzdHlsZXMub3JiQWNjZW50XX0gLz5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNzcz17c3R5bGVzLmxvZ299PlxuICAgICAgICB7bG9nbyB8fCA8TG9nb0ljb24gcHJpbWFyeUNvbG9yPXtjb2xvclByaW1hcnl9IC8+fVxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxTdGFjayBhbGlnbj1cImNlbnRlclwiIGNzcz17c3R5bGVzLmxlZnRDb250ZW50fT5cbiAgICAgICAgPFN0YWNrIGNzcz17c3R5bGVzLnRpdGxlfSBzdHlsZT17bGVmdENvbnRlbnRTdHlsZX0+XG4gICAgICAgICAgPFNwbGl0VGV4dFxuICAgICAgICAgICAgZGVsYXk9ezgwfVxuICAgICAgICAgICAgZHVyYXRpb249ezN9XG4gICAgICAgICAgICBlYXNlPVwiZWxhc3RpYy5vdXQoMSwgMC4zKVwiXG4gICAgICAgICAgICBmcm9tPXt7IG9wYWNpdHk6IDAsIHk6IDE4IH19XG4gICAgICAgICAgICByb290TWFyZ2luPVwiMFwiXG4gICAgICAgICAgICBzcGxpdFR5cGU9XCJjaGFyc1wiXG4gICAgICAgICAgICB0YWc9XCJoMVwiXG4gICAgICAgICAgICB0ZXh0PXt0aXRsZX1cbiAgICAgICAgICAgIHRleHRBbGlnbj1cImNlbnRlclwiXG4gICAgICAgICAgICB0aHJlc2hvbGQ9ezAuMX1cbiAgICAgICAgICAgIHRvPXt7IG9wYWNpdHk6IDEsIHk6IDAgfX1cbiAgICAgICAgICAvPlxuXG4gICAgICAgICAgPGRpdiBjc3M9e3N0eWxlcy5kZXNjcmlwdGlvbn0+XG4gICAgICAgICAgICA8VHlwaW5nQW5pbWF0aW9uPntkZXNjcmlwdGlvbn08L1R5cGluZ0FuaW1hdGlvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9TdGFjaz5cblxuICAgICAgICA8Q2VudGVyIGNzcz17c3R5bGVzLmljb259IHN0eWxlPXtsZWZ0Q29udGVudFN0eWxlfT5cbiAgICAgICAgICA8SWNvbkxvZ2luIC8+XG4gICAgICAgIDwvQ2VudGVyPlxuICAgICAgPC9TdGFjaz5cblxuICAgICAgPGRpdiBjc3M9e3N0eWxlcy5yaWdodENvbnRlbnR9PlxuICAgICAgICA8VG9kYXkgLz5cblxuICAgICAgICA8ZGl2IGNzcz17c3R5bGVzLmZvcm1IZWFkZXJ9PlxuICAgICAgICAgIDxoMj5cbiAgICAgICAgICAgIDxHcm91cCBhbGlnbj1cImNlbnRlclwiIGdhcD1cInNtYWxsXCI+XG4gICAgICAgICAgICAgIDxJY29uIGNvbXBvbmVudD17U3BhcmtsZXNJY29ufSBjc3M9e3N0eWxlcy5mb3JtSWNvbn0gLz5cbiAgICAgICAgICAgICAg5qyi6L+O5Zue5p2lXG4gICAgICAgICAgICA8L0dyb3VwPlxuICAgICAgICAgIDwvaDI+XG5cbiAgICAgICAgICA8cCBjc3M9e3N0eWxlcy5mb3JtU3VidGl0bGV9Puivt+i+k+WFpeaCqOeahOi0puWPt+WSjOWvhueggei/m+ihjOeZu+W9lTwvcD5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPEFwcEZvcm0+XG4gICAgICAgICAgPEZvcm0+XG4gICAgICAgICAgICA8U3RhY2sgZ2FwPVwibWlkZGxlXCI+XG4gICAgICAgICAgICAgIDxBcHBGaWVsZCBuYW1lPVwicHJpbmNpcGFsXCI+XG4gICAgICAgICAgICAgICAge2ZpZWxkID0+IChcbiAgICAgICAgICAgICAgICAgIDxmaWVsZC5JbnB1dFxuICAgICAgICAgICAgICAgICAgICBjc3M9e3N0eWxlcy5mb3JtQ29udHJvbH1cbiAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXotKblj7dcIlxuICAgICAgICAgICAgICAgICAgICBwcmVmaXg9e3VzZXJJY29ufVxuICAgICAgICAgICAgICAgICAgICBzaXplPVwibGFyZ2VcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8L0FwcEZpZWxkPlxuXG4gICAgICAgICAgICAgIDxBcHBGaWVsZCBuYW1lPVwiY3JlZGVudGlhbHNcIj5cbiAgICAgICAgICAgICAgICB7ZmllbGQgPT4gKFxuICAgICAgICAgICAgICAgICAgPGZpZWxkLlBhc3N3b3JkXG4gICAgICAgICAgICAgICAgICAgIGNzcz17c3R5bGVzLmZvcm1Db250cm9sfVxuICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeWvhueggVwiXG4gICAgICAgICAgICAgICAgICAgIHByZWZpeD17bG9ja0ljb259XG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvQXBwRmllbGQ+XG5cbiAgICAgICAgICAgICAgPFN1Ym1pdEJ1dHRvblxuICAgICAgICAgICAgICAgIGJsb2NrXG4gICAgICAgICAgICAgICAgY3NzPXtzdHlsZXMuc3VibWl0QnV0dG9ufVxuICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICDnmbvlvZVcbiAgICAgICAgICAgICAgPC9TdWJtaXRCdXR0b24+XG4gICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgIDwvRm9ybT5cbiAgICAgICAgPC9BcHBGb3JtPlxuXG4gICAgICAgIDxDb3B5cmlnaHQgLz5cbiAgICAgIDwvZGl2PlxuICAgIDwvR3JvdXA+XG4gICk7XG59XG5cbmNvbnN0IFRvZGF5ID0gbWVtbygoKTogUmVhY3QuUmVhY3ROb2RlID0+IHtcbiAgY29uc3QgW3RvZGF5LCBzZXRUb2RheV0gPSB1c2VTdGF0ZShnZXRMb2NhbGl6ZWREYXRlVGltZSk7XG5cbiAgdXNlSW50ZXJ2YWwoXG4gICAgKCkgPT4gc2V0VG9kYXkoZ2V0TG9jYWxpemVkRGF0ZVRpbWUoKSksXG4gICAgMTAwMCxcbiAgICB7IGF1dG9JbnZva2U6IHRydWUgfVxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjc3M9e3N0eWxlcy5kYXRlfT5cbiAgICAgIDxzcGFuPuS7iuWkqeaYryA8L3NwYW4+XG4gICAgICA8c3BhbiBjc3M9e3N0eWxlcy5kYXRlSGlnaGxpZ2h0fT57dG9kYXl9PC9zcGFuPlxuICAgIDwvZGl2PlxuICApO1xufSk7XG5Ub2RheS5kaXNwbGF5TmFtZSA9IFwiVG9kYXlcIjtcblxuY29uc3QgY3VycmVudFllYXIgPSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCk7XG5cbmZ1bmN0aW9uIENvcHlyaWdodCgpOiBSZWFjdC5SZWFjdE5vZGUge1xuICByZXR1cm4gKFxuICAgIDxkaXYgY3NzPXtzdHlsZXMuY29weXJpZ2h0fT5cbiAgICAgIENvcHlyaWdodCAmY29weTtcbiAgICAgIHtcIiBcIn1cbiAgICAgIHtjdXJyZW50WWVhcn1cbiAgICAgIHtcIiBcIn1cbiAgICAgIFZFRi4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuZXhwb3J0IHsgdHlwZSBMb2dpbkNoYWxsZW5nZSwgdHlwZSBMb2dpblBhcmFtcywgdHlwZSBMb2dpblJlc3VsdCwgdHlwZSBQYXNzd29yZExvZ2luUGFyYW1zIH0gZnJvbSBcIi4vcGF5bG9hZFwiO1xuZXhwb3J0IHsgdHlwZSBMb2dpblByb3BzIH0gZnJvbSBcIi4vcHJvcHNcIjtcbiJdfQ== */`]}),(0,s.jsx)(`div`,{css:[n.orb,n.orbSecondary,process.env.NODE_ENV===`production`?``:`/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvR2EiLCJmaWxlIjoiaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB0eXBlIHsgTG9naW5QYXJhbXMgfSBmcm9tIFwiLi9wYXlsb2FkXCI7XG5pbXBvcnQgdHlwZSB7IExvZ2luUHJvcHMgfSBmcm9tIFwiLi9wcm9wc1wiO1xuXG5pbXBvcnQgeyB1c2VSb3V0ZXIsIHVzZVNlYXJjaCB9IGZyb20gXCJAdGFuc3RhY2svcmVhY3Qtcm91dGVyXCI7XG5pbXBvcnQgeyBDZW50ZXIsIEdyb3VwLCBJY29uLCBMb2dvSWNvbiwgc2hvd1N1Y2Nlc3NOb3RpZmljYXRpb24sIFNwbGl0VGV4dCwgU3RhY2ssIFR5cGluZ0FuaW1hdGlvbiwgdXNlRm9ybSwgdXNlVGhlbWVUb2tlbnMgfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3QvY29tcG9uZW50c1wiO1xuaW1wb3J0IHsgdXNlSW50ZXJ2YWwgfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3QvaG9va3NcIjtcbmltcG9ydCB7IGVuY3J5cHRVc2luZ1JTQSwgZ2V0TG9jYWxpemVkRGF0ZVRpbWUsIG5vb3AsIHogfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3Qvc2hhcmVkXCI7XG5pbXBvcnQge1xuICBMb2NrS2V5aG9sZUljb24sXG4gIFNwYXJrbGVzSWNvbixcbiAgVXNlclJvdW5kSWNvblxufSBmcm9tIFwibHVjaWRlLXJlYWN0XCI7XG5pbXBvcnQgeyBtZW1vLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuXG5pbXBvcnQgeyB1c2VBcHBTdG9yZSB9IGZyb20gXCIuLi8uLi9zdG9yZXNcIjtcbmltcG9ydCB7IEljb25Mb2dpbiB9IGZyb20gXCIuL2ljb24tbG9naW5cIjtcbmltcG9ydCAqIGFzIHN0eWxlcyBmcm9tIFwiLi9zdHlsZXNcIjtcbmltcG9ydCB7IGdldFJhbmRvbVdlbGNvbWVNZXNzYWdlIH0gZnJvbSBcIi4vd2VsY29tZS1tZXNzYWdlc1wiO1xuXG5jb25zdCBERUZBVUxUX1RJVExFID0gXCJWRUYg5Lit5ZCO5Y+w566h55CG57O757ufXCI7XG5jb25zdCBERUZBVUxUX0RFU0NSSVBUSU9OID0gXCLkuIDmrL7mnoHluqblv6vpgJ/nmoTlvIDlj5HmoYbmnrYsIOeUqOS6juaehOW7uuS4reWQjuWPsOeuoeeQhuezu+e7n1wiO1xuXG5jb25zdCBsZWZ0Q29udGVudFN0eWxlOiBDU1NQcm9wZXJ0aWVzID0ge1xuICBwb3NpdGlvbjogXCJyZWxhdGl2ZVwiLFxuICB6SW5kZXg6IDFcbn07XG5cbmNvbnN0IHVzZXJJY29uID0gPEljb24gY29tcG9uZW50PXtVc2VyUm91bmRJY29ufSAvPjtcbmNvbnN0IGxvY2tJY29uID0gPEljb24gY29tcG9uZW50PXtMb2NrS2V5aG9sZUljb259IC8+O1xuXG5jb25zdCBsb2dpbkZvcm1TY2hlbWEgPSB6Lm9iamVjdCh7XG4gIHR5cGU6IHoubGl0ZXJhbChcInBhc3N3b3JkXCIpLFxuICBwcmluY2lwYWw6IHouc3RyaW5nKCkubm9uZW1wdHkoXCLor7fovpPlhaXotKblj7dcIiksXG4gIGNyZWRlbnRpYWxzOiB6LnN0cmluZygpLm5vbmVtcHR5KFwi6K+36L6T5YWl5a+G56CBXCIpXG59KTtcblxuY29uc3QgZGVmYXVsdExvZ2luVmFsdWVzOiBMb2dpblBhcmFtcyA9IHtcbiAgdHlwZTogXCJwYXNzd29yZFwiLFxuICBwcmluY2lwYWw6IFwiXCIsXG4gIGNyZWRlbnRpYWxzOiBcIlwiXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gTG9naW4oe1xuICBsb2dvLFxuICB0aXRsZSA9IERFRkFVTFRfVElUTEUsXG4gIGRlc2NyaXB0aW9uID0gREVGQVVMVF9ERVNDUklQVElPTixcbiAgcHVibGljS2V5LFxuICBvbkxvZ2luXG59OiBMb2dpblByb3BzKTogUmVhY3QuUmVhY3ROb2RlIHtcbiAgY29uc3QgeyBjb2xvclByaW1hcnkgfSA9IHVzZVRoZW1lVG9rZW5zKCk7XG5cbiAgY29uc3Qgcm91dGVyID0gdXNlUm91dGVyKCk7XG4gIGNvbnN0IHsgcmVkaXJlY3QgfSA9IHVzZVNlYXJjaCh7IHN0cmljdDogZmFsc2UgfSk7XG5cbiAgY29uc3Qge1xuICAgIEFwcEZvcm0sXG4gICAgRm9ybSxcbiAgICBTdWJtaXRCdXR0b24sXG4gICAgQXBwRmllbGRcbiAgfSA9IHVzZUZvcm0oe1xuICAgIGRlZmF1bHRWYWx1ZXM6IGRlZmF1bHRMb2dpblZhbHVlcyxcbiAgICB2YWxpZGF0b3JzOiB7XG4gICAgICBvblN1Ym1pdDogbG9naW5Gb3JtU2NoZW1hXG4gICAgfSxcbiAgICBhc3luYyBvblN1Ym1pdCh7IHZhbHVlIH0pIHtcbiAgICAgIGNvbnN0IGNyZWRlbnRpYWxzID0gcHVibGljS2V5XG4gICAgICAgID8gZW5jcnlwdFVzaW5nUlNBKHZhbHVlLmNyZWRlbnRpYWxzLCBwdWJsaWNLZXkpXG4gICAgICAgIDogdmFsdWUuY3JlZGVudGlhbHM7XG5cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IG9uTG9naW4oeyAuLi52YWx1ZSwgY3JlZGVudGlhbHMgfSkuY2F0Y2gobm9vcCk7XG5cbiAgICAgIGlmICghcmVzdWx0KSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgeyBtZXNzYWdlLCB0b2tlbnMgfSA9IHJlc3VsdDtcbiAgICAgIHVzZUFwcFN0b3JlLnNldFN0YXRlKHN0YXRlID0+IHtcbiAgICAgICAgc3RhdGUuaXNBdXRoZW50aWNhdGVkID0gdHJ1ZTtcbiAgICAgICAgc3RhdGUuYXV0aFRva2VucyA9IHRva2VucztcbiAgICAgIH0pO1xuXG4gICAgICBhd2FpdCByb3V0ZXIuaW52YWxpZGF0ZSgpO1xuICAgICAgYXdhaXQgcm91dGVyLm5hdmlnYXRlKHtcbiAgICAgICAgdG86IHJlZGlyZWN0LFxuICAgICAgICByZXBsYWNlOiB0cnVlXG4gICAgICB9KTtcblxuICAgICAgc2hvd1N1Y2Nlc3NOb3RpZmljYXRpb24oZ2V0UmFuZG9tV2VsY29tZU1lc3NhZ2UoKSwge1xuICAgICAgICB0aXRsZTogbWVzc2FnZSB8fCBcIueZu+W9leaIkOWKn1wiXG4gICAgICB9KTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiAoXG4gICAgPEdyb3VwIGNzcz17c3R5bGVzLmxvZ2lufSBnYXA9ezB9IGp1c3RpZnk9XCJjZW50ZXJcIj5cbiAgICAgIHsvKiBCYWNrZ3JvdW5kIG9yYiBkZWNvcmF0aW9ucyAqL31cbiAgICAgIDxkaXYgY3NzPXtzdHlsZXMuYmFja2dyb3VuZE9yYnN9PlxuICAgICAgICA8ZGl2IGNzcz17W3N0eWxlcy5vcmIsIHN0eWxlcy5vcmJQcmltYXJ5XX0gLz5cbiAgICAgICAgPGRpdiBjc3M9e1tzdHlsZXMub3JiLCBzdHlsZXMub3JiU2Vjb25kYXJ5XX0gLz5cbiAgICAgICAgPGRpdiBjc3M9e1tzdHlsZXMub3JiLCBzdHlsZXMub3JiQWNjZW50XX0gLz5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNzcz17c3R5bGVzLmxvZ299PlxuICAgICAgICB7bG9nbyB8fCA8TG9nb0ljb24gcHJpbWFyeUNvbG9yPXtjb2xvclByaW1hcnl9IC8+fVxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxTdGFjayBhbGlnbj1cImNlbnRlclwiIGNzcz17c3R5bGVzLmxlZnRDb250ZW50fT5cbiAgICAgICAgPFN0YWNrIGNzcz17c3R5bGVzLnRpdGxlfSBzdHlsZT17bGVmdENvbnRlbnRTdHlsZX0+XG4gICAgICAgICAgPFNwbGl0VGV4dFxuICAgICAgICAgICAgZGVsYXk9ezgwfVxuICAgICAgICAgICAgZHVyYXRpb249ezN9XG4gICAgICAgICAgICBlYXNlPVwiZWxhc3RpYy5vdXQoMSwgMC4zKVwiXG4gICAgICAgICAgICBmcm9tPXt7IG9wYWNpdHk6IDAsIHk6IDE4IH19XG4gICAgICAgICAgICByb290TWFyZ2luPVwiMFwiXG4gICAgICAgICAgICBzcGxpdFR5cGU9XCJjaGFyc1wiXG4gICAgICAgICAgICB0YWc9XCJoMVwiXG4gICAgICAgICAgICB0ZXh0PXt0aXRsZX1cbiAgICAgICAgICAgIHRleHRBbGlnbj1cImNlbnRlclwiXG4gICAgICAgICAgICB0aHJlc2hvbGQ9ezAuMX1cbiAgICAgICAgICAgIHRvPXt7IG9wYWNpdHk6IDEsIHk6IDAgfX1cbiAgICAgICAgICAvPlxuXG4gICAgICAgICAgPGRpdiBjc3M9e3N0eWxlcy5kZXNjcmlwdGlvbn0+XG4gICAgICAgICAgICA8VHlwaW5nQW5pbWF0aW9uPntkZXNjcmlwdGlvbn08L1R5cGluZ0FuaW1hdGlvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9TdGFjaz5cblxuICAgICAgICA8Q2VudGVyIGNzcz17c3R5bGVzLmljb259IHN0eWxlPXtsZWZ0Q29udGVudFN0eWxlfT5cbiAgICAgICAgICA8SWNvbkxvZ2luIC8+XG4gICAgICAgIDwvQ2VudGVyPlxuICAgICAgPC9TdGFjaz5cblxuICAgICAgPGRpdiBjc3M9e3N0eWxlcy5yaWdodENvbnRlbnR9PlxuICAgICAgICA8VG9kYXkgLz5cblxuICAgICAgICA8ZGl2IGNzcz17c3R5bGVzLmZvcm1IZWFkZXJ9PlxuICAgICAgICAgIDxoMj5cbiAgICAgICAgICAgIDxHcm91cCBhbGlnbj1cImNlbnRlclwiIGdhcD1cInNtYWxsXCI+XG4gICAgICAgICAgICAgIDxJY29uIGNvbXBvbmVudD17U3BhcmtsZXNJY29ufSBjc3M9e3N0eWxlcy5mb3JtSWNvbn0gLz5cbiAgICAgICAgICAgICAg5qyi6L+O5Zue5p2lXG4gICAgICAgICAgICA8L0dyb3VwPlxuICAgICAgICAgIDwvaDI+XG5cbiAgICAgICAgICA8cCBjc3M9e3N0eWxlcy5mb3JtU3VidGl0bGV9Puivt+i+k+WFpeaCqOeahOi0puWPt+WSjOWvhueggei/m+ihjOeZu+W9lTwvcD5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPEFwcEZvcm0+XG4gICAgICAgICAgPEZvcm0+XG4gICAgICAgICAgICA8U3RhY2sgZ2FwPVwibWlkZGxlXCI+XG4gICAgICAgICAgICAgIDxBcHBGaWVsZCBuYW1lPVwicHJpbmNpcGFsXCI+XG4gICAgICAgICAgICAgICAge2ZpZWxkID0+IChcbiAgICAgICAgICAgICAgICAgIDxmaWVsZC5JbnB1dFxuICAgICAgICAgICAgICAgICAgICBjc3M9e3N0eWxlcy5mb3JtQ29udHJvbH1cbiAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXotKblj7dcIlxuICAgICAgICAgICAgICAgICAgICBwcmVmaXg9e3VzZXJJY29ufVxuICAgICAgICAgICAgICAgICAgICBzaXplPVwibGFyZ2VcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8L0FwcEZpZWxkPlxuXG4gICAgICAgICAgICAgIDxBcHBGaWVsZCBuYW1lPVwiY3JlZGVudGlhbHNcIj5cbiAgICAgICAgICAgICAgICB7ZmllbGQgPT4gKFxuICAgICAgICAgICAgICAgICAgPGZpZWxkLlBhc3N3b3JkXG4gICAgICAgICAgICAgICAgICAgIGNzcz17c3R5bGVzLmZvcm1Db250cm9sfVxuICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeWvhueggVwiXG4gICAgICAgICAgICAgICAgICAgIHByZWZpeD17bG9ja0ljb259XG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvQXBwRmllbGQ+XG5cbiAgICAgICAgICAgICAgPFN1Ym1pdEJ1dHRvblxuICAgICAgICAgICAgICAgIGJsb2NrXG4gICAgICAgICAgICAgICAgY3NzPXtzdHlsZXMuc3VibWl0QnV0dG9ufVxuICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICDnmbvlvZVcbiAgICAgICAgICAgICAgPC9TdWJtaXRCdXR0b24+XG4gICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgIDwvRm9ybT5cbiAgICAgICAgPC9BcHBGb3JtPlxuXG4gICAgICAgIDxDb3B5cmlnaHQgLz5cbiAgICAgIDwvZGl2PlxuICAgIDwvR3JvdXA+XG4gICk7XG59XG5cbmNvbnN0IFRvZGF5ID0gbWVtbygoKTogUmVhY3QuUmVhY3ROb2RlID0+IHtcbiAgY29uc3QgW3RvZGF5LCBzZXRUb2RheV0gPSB1c2VTdGF0ZShnZXRMb2NhbGl6ZWREYXRlVGltZSk7XG5cbiAgdXNlSW50ZXJ2YWwoXG4gICAgKCkgPT4gc2V0VG9kYXkoZ2V0TG9jYWxpemVkRGF0ZVRpbWUoKSksXG4gICAgMTAwMCxcbiAgICB7IGF1dG9JbnZva2U6IHRydWUgfVxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjc3M9e3N0eWxlcy5kYXRlfT5cbiAgICAgIDxzcGFuPuS7iuWkqeaYryA8L3NwYW4+XG4gICAgICA8c3BhbiBjc3M9e3N0eWxlcy5kYXRlSGlnaGxpZ2h0fT57dG9kYXl9PC9zcGFuPlxuICAgIDwvZGl2PlxuICApO1xufSk7XG5Ub2RheS5kaXNwbGF5TmFtZSA9IFwiVG9kYXlcIjtcblxuY29uc3QgY3VycmVudFllYXIgPSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCk7XG5cbmZ1bmN0aW9uIENvcHlyaWdodCgpOiBSZWFjdC5SZWFjdE5vZGUge1xuICByZXR1cm4gKFxuICAgIDxkaXYgY3NzPXtzdHlsZXMuY29weXJpZ2h0fT5cbiAgICAgIENvcHlyaWdodCAmY29weTtcbiAgICAgIHtcIiBcIn1cbiAgICAgIHtjdXJyZW50WWVhcn1cbiAgICAgIHtcIiBcIn1cbiAgICAgIFZFRi4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuZXhwb3J0IHsgdHlwZSBMb2dpbkNoYWxsZW5nZSwgdHlwZSBMb2dpblBhcmFtcywgdHlwZSBMb2dpblJlc3VsdCwgdHlwZSBQYXNzd29yZExvZ2luUGFyYW1zIH0gZnJvbSBcIi4vcGF5bG9hZFwiO1xuZXhwb3J0IHsgdHlwZSBMb2dpblByb3BzIH0gZnJvbSBcIi4vcHJvcHNcIjtcbiJdfQ== */`]}),(0,s.jsx)(`div`,{css:[n.orb,n.orbAccent,process.env.NODE_ENV===`production`?``:`/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxR2EiLCJmaWxlIjoiaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB0eXBlIHsgTG9naW5QYXJhbXMgfSBmcm9tIFwiLi9wYXlsb2FkXCI7XG5pbXBvcnQgdHlwZSB7IExvZ2luUHJvcHMgfSBmcm9tIFwiLi9wcm9wc1wiO1xuXG5pbXBvcnQgeyB1c2VSb3V0ZXIsIHVzZVNlYXJjaCB9IGZyb20gXCJAdGFuc3RhY2svcmVhY3Qtcm91dGVyXCI7XG5pbXBvcnQgeyBDZW50ZXIsIEdyb3VwLCBJY29uLCBMb2dvSWNvbiwgc2hvd1N1Y2Nlc3NOb3RpZmljYXRpb24sIFNwbGl0VGV4dCwgU3RhY2ssIFR5cGluZ0FuaW1hdGlvbiwgdXNlRm9ybSwgdXNlVGhlbWVUb2tlbnMgfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3QvY29tcG9uZW50c1wiO1xuaW1wb3J0IHsgdXNlSW50ZXJ2YWwgfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3QvaG9va3NcIjtcbmltcG9ydCB7IGVuY3J5cHRVc2luZ1JTQSwgZ2V0TG9jYWxpemVkRGF0ZVRpbWUsIG5vb3AsIHogfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3Qvc2hhcmVkXCI7XG5pbXBvcnQge1xuICBMb2NrS2V5aG9sZUljb24sXG4gIFNwYXJrbGVzSWNvbixcbiAgVXNlclJvdW5kSWNvblxufSBmcm9tIFwibHVjaWRlLXJlYWN0XCI7XG5pbXBvcnQgeyBtZW1vLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuXG5pbXBvcnQgeyB1c2VBcHBTdG9yZSB9IGZyb20gXCIuLi8uLi9zdG9yZXNcIjtcbmltcG9ydCB7IEljb25Mb2dpbiB9IGZyb20gXCIuL2ljb24tbG9naW5cIjtcbmltcG9ydCAqIGFzIHN0eWxlcyBmcm9tIFwiLi9zdHlsZXNcIjtcbmltcG9ydCB7IGdldFJhbmRvbVdlbGNvbWVNZXNzYWdlIH0gZnJvbSBcIi4vd2VsY29tZS1tZXNzYWdlc1wiO1xuXG5jb25zdCBERUZBVUxUX1RJVExFID0gXCJWRUYg5Lit5ZCO5Y+w566h55CG57O757ufXCI7XG5jb25zdCBERUZBVUxUX0RFU0NSSVBUSU9OID0gXCLkuIDmrL7mnoHluqblv6vpgJ/nmoTlvIDlj5HmoYbmnrYsIOeUqOS6juaehOW7uuS4reWQjuWPsOeuoeeQhuezu+e7n1wiO1xuXG5jb25zdCBsZWZ0Q29udGVudFN0eWxlOiBDU1NQcm9wZXJ0aWVzID0ge1xuICBwb3NpdGlvbjogXCJyZWxhdGl2ZVwiLFxuICB6SW5kZXg6IDFcbn07XG5cbmNvbnN0IHVzZXJJY29uID0gPEljb24gY29tcG9uZW50PXtVc2VyUm91bmRJY29ufSAvPjtcbmNvbnN0IGxvY2tJY29uID0gPEljb24gY29tcG9uZW50PXtMb2NrS2V5aG9sZUljb259IC8+O1xuXG5jb25zdCBsb2dpbkZvcm1TY2hlbWEgPSB6Lm9iamVjdCh7XG4gIHR5cGU6IHoubGl0ZXJhbChcInBhc3N3b3JkXCIpLFxuICBwcmluY2lwYWw6IHouc3RyaW5nKCkubm9uZW1wdHkoXCLor7fovpPlhaXotKblj7dcIiksXG4gIGNyZWRlbnRpYWxzOiB6LnN0cmluZygpLm5vbmVtcHR5KFwi6K+36L6T5YWl5a+G56CBXCIpXG59KTtcblxuY29uc3QgZGVmYXVsdExvZ2luVmFsdWVzOiBMb2dpblBhcmFtcyA9IHtcbiAgdHlwZTogXCJwYXNzd29yZFwiLFxuICBwcmluY2lwYWw6IFwiXCIsXG4gIGNyZWRlbnRpYWxzOiBcIlwiXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gTG9naW4oe1xuICBsb2dvLFxuICB0aXRsZSA9IERFRkFVTFRfVElUTEUsXG4gIGRlc2NyaXB0aW9uID0gREVGQVVMVF9ERVNDUklQVElPTixcbiAgcHVibGljS2V5LFxuICBvbkxvZ2luXG59OiBMb2dpblByb3BzKTogUmVhY3QuUmVhY3ROb2RlIHtcbiAgY29uc3QgeyBjb2xvclByaW1hcnkgfSA9IHVzZVRoZW1lVG9rZW5zKCk7XG5cbiAgY29uc3Qgcm91dGVyID0gdXNlUm91dGVyKCk7XG4gIGNvbnN0IHsgcmVkaXJlY3QgfSA9IHVzZVNlYXJjaCh7IHN0cmljdDogZmFsc2UgfSk7XG5cbiAgY29uc3Qge1xuICAgIEFwcEZvcm0sXG4gICAgRm9ybSxcbiAgICBTdWJtaXRCdXR0b24sXG4gICAgQXBwRmllbGRcbiAgfSA9IHVzZUZvcm0oe1xuICAgIGRlZmF1bHRWYWx1ZXM6IGRlZmF1bHRMb2dpblZhbHVlcyxcbiAgICB2YWxpZGF0b3JzOiB7XG4gICAgICBvblN1Ym1pdDogbG9naW5Gb3JtU2NoZW1hXG4gICAgfSxcbiAgICBhc3luYyBvblN1Ym1pdCh7IHZhbHVlIH0pIHtcbiAgICAgIGNvbnN0IGNyZWRlbnRpYWxzID0gcHVibGljS2V5XG4gICAgICAgID8gZW5jcnlwdFVzaW5nUlNBKHZhbHVlLmNyZWRlbnRpYWxzLCBwdWJsaWNLZXkpXG4gICAgICAgIDogdmFsdWUuY3JlZGVudGlhbHM7XG5cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IG9uTG9naW4oeyAuLi52YWx1ZSwgY3JlZGVudGlhbHMgfSkuY2F0Y2gobm9vcCk7XG5cbiAgICAgIGlmICghcmVzdWx0KSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgeyBtZXNzYWdlLCB0b2tlbnMgfSA9IHJlc3VsdDtcbiAgICAgIHVzZUFwcFN0b3JlLnNldFN0YXRlKHN0YXRlID0+IHtcbiAgICAgICAgc3RhdGUuaXNBdXRoZW50aWNhdGVkID0gdHJ1ZTtcbiAgICAgICAgc3RhdGUuYXV0aFRva2VucyA9IHRva2VucztcbiAgICAgIH0pO1xuXG4gICAgICBhd2FpdCByb3V0ZXIuaW52YWxpZGF0ZSgpO1xuICAgICAgYXdhaXQgcm91dGVyLm5hdmlnYXRlKHtcbiAgICAgICAgdG86IHJlZGlyZWN0LFxuICAgICAgICByZXBsYWNlOiB0cnVlXG4gICAgICB9KTtcblxuICAgICAgc2hvd1N1Y2Nlc3NOb3RpZmljYXRpb24oZ2V0UmFuZG9tV2VsY29tZU1lc3NhZ2UoKSwge1xuICAgICAgICB0aXRsZTogbWVzc2FnZSB8fCBcIueZu+W9leaIkOWKn1wiXG4gICAgICB9KTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiAoXG4gICAgPEdyb3VwIGNzcz17c3R5bGVzLmxvZ2lufSBnYXA9ezB9IGp1c3RpZnk9XCJjZW50ZXJcIj5cbiAgICAgIHsvKiBCYWNrZ3JvdW5kIG9yYiBkZWNvcmF0aW9ucyAqL31cbiAgICAgIDxkaXYgY3NzPXtzdHlsZXMuYmFja2dyb3VuZE9yYnN9PlxuICAgICAgICA8ZGl2IGNzcz17W3N0eWxlcy5vcmIsIHN0eWxlcy5vcmJQcmltYXJ5XX0gLz5cbiAgICAgICAgPGRpdiBjc3M9e1tzdHlsZXMub3JiLCBzdHlsZXMub3JiU2Vjb25kYXJ5XX0gLz5cbiAgICAgICAgPGRpdiBjc3M9e1tzdHlsZXMub3JiLCBzdHlsZXMub3JiQWNjZW50XX0gLz5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNzcz17c3R5bGVzLmxvZ299PlxuICAgICAgICB7bG9nbyB8fCA8TG9nb0ljb24gcHJpbWFyeUNvbG9yPXtjb2xvclByaW1hcnl9IC8+fVxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxTdGFjayBhbGlnbj1cImNlbnRlclwiIGNzcz17c3R5bGVzLmxlZnRDb250ZW50fT5cbiAgICAgICAgPFN0YWNrIGNzcz17c3R5bGVzLnRpdGxlfSBzdHlsZT17bGVmdENvbnRlbnRTdHlsZX0+XG4gICAgICAgICAgPFNwbGl0VGV4dFxuICAgICAgICAgICAgZGVsYXk9ezgwfVxuICAgICAgICAgICAgZHVyYXRpb249ezN9XG4gICAgICAgICAgICBlYXNlPVwiZWxhc3RpYy5vdXQoMSwgMC4zKVwiXG4gICAgICAgICAgICBmcm9tPXt7IG9wYWNpdHk6IDAsIHk6IDE4IH19XG4gICAgICAgICAgICByb290TWFyZ2luPVwiMFwiXG4gICAgICAgICAgICBzcGxpdFR5cGU9XCJjaGFyc1wiXG4gICAgICAgICAgICB0YWc9XCJoMVwiXG4gICAgICAgICAgICB0ZXh0PXt0aXRsZX1cbiAgICAgICAgICAgIHRleHRBbGlnbj1cImNlbnRlclwiXG4gICAgICAgICAgICB0aHJlc2hvbGQ9ezAuMX1cbiAgICAgICAgICAgIHRvPXt7IG9wYWNpdHk6IDEsIHk6IDAgfX1cbiAgICAgICAgICAvPlxuXG4gICAgICAgICAgPGRpdiBjc3M9e3N0eWxlcy5kZXNjcmlwdGlvbn0+XG4gICAgICAgICAgICA8VHlwaW5nQW5pbWF0aW9uPntkZXNjcmlwdGlvbn08L1R5cGluZ0FuaW1hdGlvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9TdGFjaz5cblxuICAgICAgICA8Q2VudGVyIGNzcz17c3R5bGVzLmljb259IHN0eWxlPXtsZWZ0Q29udGVudFN0eWxlfT5cbiAgICAgICAgICA8SWNvbkxvZ2luIC8+XG4gICAgICAgIDwvQ2VudGVyPlxuICAgICAgPC9TdGFjaz5cblxuICAgICAgPGRpdiBjc3M9e3N0eWxlcy5yaWdodENvbnRlbnR9PlxuICAgICAgICA8VG9kYXkgLz5cblxuICAgICAgICA8ZGl2IGNzcz17c3R5bGVzLmZvcm1IZWFkZXJ9PlxuICAgICAgICAgIDxoMj5cbiAgICAgICAgICAgIDxHcm91cCBhbGlnbj1cImNlbnRlclwiIGdhcD1cInNtYWxsXCI+XG4gICAgICAgICAgICAgIDxJY29uIGNvbXBvbmVudD17U3BhcmtsZXNJY29ufSBjc3M9e3N0eWxlcy5mb3JtSWNvbn0gLz5cbiAgICAgICAgICAgICAg5qyi6L+O5Zue5p2lXG4gICAgICAgICAgICA8L0dyb3VwPlxuICAgICAgICAgIDwvaDI+XG5cbiAgICAgICAgICA8cCBjc3M9e3N0eWxlcy5mb3JtU3VidGl0bGV9Puivt+i+k+WFpeaCqOeahOi0puWPt+WSjOWvhueggei/m+ihjOeZu+W9lTwvcD5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPEFwcEZvcm0+XG4gICAgICAgICAgPEZvcm0+XG4gICAgICAgICAgICA8U3RhY2sgZ2FwPVwibWlkZGxlXCI+XG4gICAgICAgICAgICAgIDxBcHBGaWVsZCBuYW1lPVwicHJpbmNpcGFsXCI+XG4gICAgICAgICAgICAgICAge2ZpZWxkID0+IChcbiAgICAgICAgICAgICAgICAgIDxmaWVsZC5JbnB1dFxuICAgICAgICAgICAgICAgICAgICBjc3M9e3N0eWxlcy5mb3JtQ29udHJvbH1cbiAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXotKblj7dcIlxuICAgICAgICAgICAgICAgICAgICBwcmVmaXg9e3VzZXJJY29ufVxuICAgICAgICAgICAgICAgICAgICBzaXplPVwibGFyZ2VcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8L0FwcEZpZWxkPlxuXG4gICAgICAgICAgICAgIDxBcHBGaWVsZCBuYW1lPVwiY3JlZGVudGlhbHNcIj5cbiAgICAgICAgICAgICAgICB7ZmllbGQgPT4gKFxuICAgICAgICAgICAgICAgICAgPGZpZWxkLlBhc3N3b3JkXG4gICAgICAgICAgICAgICAgICAgIGNzcz17c3R5bGVzLmZvcm1Db250cm9sfVxuICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeWvhueggVwiXG4gICAgICAgICAgICAgICAgICAgIHByZWZpeD17bG9ja0ljb259XG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvQXBwRmllbGQ+XG5cbiAgICAgICAgICAgICAgPFN1Ym1pdEJ1dHRvblxuICAgICAgICAgICAgICAgIGJsb2NrXG4gICAgICAgICAgICAgICAgY3NzPXtzdHlsZXMuc3VibWl0QnV0dG9ufVxuICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICDnmbvlvZVcbiAgICAgICAgICAgICAgPC9TdWJtaXRCdXR0b24+XG4gICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgIDwvRm9ybT5cbiAgICAgICAgPC9BcHBGb3JtPlxuXG4gICAgICAgIDxDb3B5cmlnaHQgLz5cbiAgICAgIDwvZGl2PlxuICAgIDwvR3JvdXA+XG4gICk7XG59XG5cbmNvbnN0IFRvZGF5ID0gbWVtbygoKTogUmVhY3QuUmVhY3ROb2RlID0+IHtcbiAgY29uc3QgW3RvZGF5LCBzZXRUb2RheV0gPSB1c2VTdGF0ZShnZXRMb2NhbGl6ZWREYXRlVGltZSk7XG5cbiAgdXNlSW50ZXJ2YWwoXG4gICAgKCkgPT4gc2V0VG9kYXkoZ2V0TG9jYWxpemVkRGF0ZVRpbWUoKSksXG4gICAgMTAwMCxcbiAgICB7IGF1dG9JbnZva2U6IHRydWUgfVxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjc3M9e3N0eWxlcy5kYXRlfT5cbiAgICAgIDxzcGFuPuS7iuWkqeaYryA8L3NwYW4+XG4gICAgICA8c3BhbiBjc3M9e3N0eWxlcy5kYXRlSGlnaGxpZ2h0fT57dG9kYXl9PC9zcGFuPlxuICAgIDwvZGl2PlxuICApO1xufSk7XG5Ub2RheS5kaXNwbGF5TmFtZSA9IFwiVG9kYXlcIjtcblxuY29uc3QgY3VycmVudFllYXIgPSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCk7XG5cbmZ1bmN0aW9uIENvcHlyaWdodCgpOiBSZWFjdC5SZWFjdE5vZGUge1xuICByZXR1cm4gKFxuICAgIDxkaXYgY3NzPXtzdHlsZXMuY29weXJpZ2h0fT5cbiAgICAgIENvcHlyaWdodCAmY29weTtcbiAgICAgIHtcIiBcIn1cbiAgICAgIHtjdXJyZW50WWVhcn1cbiAgICAgIHtcIiBcIn1cbiAgICAgIFZFRi4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuZXhwb3J0IHsgdHlwZSBMb2dpbkNoYWxsZW5nZSwgdHlwZSBMb2dpblBhcmFtcywgdHlwZSBMb2dpblJlc3VsdCwgdHlwZSBQYXNzd29yZExvZ2luUGFyYW1zIH0gZnJvbSBcIi4vcGF5bG9hZFwiO1xuZXhwb3J0IHsgdHlwZSBMb2dpblByb3BzIH0gZnJvbSBcIi4vcHJvcHNcIjtcbiJdfQ== */`]})]}),(0,s.jsx)(`div`,{css:n.logo,children:o||(0,s.jsx)(i.LogoIcon,{primaryColor:C})}),(0,s.jsxs)(i.Stack,{align:`center`,css:n.leftContent,children:[(0,s.jsxs)(i.Stack,{css:n.title,style:p,children:[(0,s.jsx)(i.SplitText,{delay:80,duration:3,ease:`elastic.out(1, 0.3)`,from:{opacity:0,y:18},rootMargin:`0`,splitType:`chars`,tag:`h1`,text:u,textAlign:`center`,threshold:.1,to:{opacity:1,y:0}}),(0,s.jsx)(`div`,{css:n.description,children:(0,s.jsx)(i.TypingAnimation,{children:v})})]}),(0,s.jsx)(i.Center,{css:n.icon,style:p,children:(0,s.jsx)(t.IconLogin,{})})]}),(0,s.jsxs)(`div`,{css:n.rightContent,children:[(0,s.jsx)(y,{}),(0,s.jsxs)(`div`,{css:n.formHeader,children:[(0,s.jsx)(`h2`,{children:(0,s.jsxs)(i.Group,{align:`center`,gap:`small`,children:[(0,s.jsx)(i.Icon,{component:l.SparklesIcon,css:n.formIcon}),`欢迎回来`]})}),(0,s.jsx)(`p`,{css:n.formSubtitle,children:`请输入您的账号和密码进行登录`})]}),(0,s.jsx)(E,{children:(0,s.jsx)(D,{children:(0,s.jsxs)(i.Stack,{gap:`middle`,children:[(0,s.jsx)(k,{name:`principal`,children:e=>(0,s.jsx)(e.Input,{css:n.formControl,placeholder:`请输入账号`,prefix:m,size:`large`})}),(0,s.jsx)(k,{name:`credentials`,children:e=>(0,s.jsx)(e.Password,{css:n.formControl,placeholder:`请输入密码`,prefix:h,size:`large`})}),(0,s.jsx)(O,{block:!0,css:n.submitButton,size:`large`,children:`登录`})]})})}),(0,s.jsx)(x,{})]})]})}var y=(0,o.memo)(()=>{let[e,t]=(0,o.useState)(a.getLocalizedDateTime);return(0,u.useInterval)(()=>t((0,a.getLocalizedDateTime)()),1e3,{autoInvoke:!0}),(0,s.jsxs)(`div`,{css:n.date,children:[(0,s.jsx)(`span`,{children:`今天是 `}),(0,s.jsx)(`span`,{css:n.dateHighlight,children:e})]})});y.displayName=`Today`;var b=new Date().getFullYear();function x(){return(0,s.jsxs)(`div`,{css:n.copyright,children:[`Copyright ©`,` `,b,` `,`VEF. All rights reserved.`]})}exports.Login=v;
1
+ require(`../../_internal/_rolldown/runtime.cjs`);const e=require(`../../stores/app.cjs`),t=require(`./icon-login.cjs`),n=require(`./styles.cjs`),r=require(`./welcome-messages.cjs`);let i=require(`@vef-framework-react/components`),a=require(`@vef-framework-react/shared`),o=require(`react`),s=require(`@emotion/react/jsx-runtime`),c=require(`@tanstack/react-router`),l=require(`lucide-react`),u=require(`@vef-framework-react/hooks`);var d=`VEF 中后台管理系统`,f=`一款极度快速的开发框架, 用于构建中后台管理系统`,p={position:`relative`,zIndex:1},m=(0,s.jsx)(i.Icon,{component:l.UserRoundIcon}),h=(0,s.jsx)(i.Icon,{component:l.LockKeyholeIcon}),g=a.z.object({type:a.z.literal(`password`),principal:a.z.string().nonempty(`请输入账号`),credentials:a.z.string().nonempty(`请输入密码`)}),_={type:`password`,principal:``,credentials:``};function v({logo:u,title:v=d,description:x=f,publicKey:C,onLogin:w,onResolveChallenge:T,challengeRenderers:E}){let{colorPrimary:D}=(0,i.useThemeTokens)(),O=(0,c.useRouter)(),{redirect:k}=(0,c.useSearch)({strict:!1}),[A,j]=(0,o.useState)(null),[M,N]=(0,o.useState)(!1),P=(0,o.useMemo)(()=>{if(C)return e=>(0,a.encryptUsingRSA)(e,C)},[C]);async function F(t){if(t.challenge&&t.challengeToken){j({token:t.challengeToken,challenge:t.challenge});return}t.tokens&&(e.useAppStore.setState(e=>{e.isAuthenticated=!0,e.authTokens=t.tokens}),j(null),await O.invalidate(),await O.navigate({to:k,replace:!0}),(0,i.showSuccessNotification)(r.getRandomWelcomeMessage(),{title:t.message||`登录成功`}))}let{AppForm:I,Form:L,SubmitButton:R,AppField:z}=(0,i.useForm)({defaultValues:_,validators:{onSubmit:g},async onSubmit({value:e}){let t=C?(0,a.encryptUsingRSA)(e.credentials,C):e.credentials,n=await w({...e,credentials:t}).catch(a.noop);n&&await F(n)}});async function B(e){if(!(!A||!T)){N(!0);try{let t=await T({challengeToken:A.token,type:A.challenge.type,response:e}).catch(a.noop);t&&await F(t)}finally{N(!1)}}}function V(){j(null),N(!1)}return(0,s.jsxs)(i.Group,{css:n.login,gap:0,justify:`center`,children:[(0,s.jsxs)(`div`,{css:n.backgroundOrbs,children:[(0,s.jsx)(`div`,{css:[n.orb,n.orbPrimary,process.env.NODE_ENV===`production`?``:`/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnS2EiLCJmaWxlIjoiaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB0eXBlIHsgTG9naW5DaGFsbGVuZ2UsIExvZ2luUGFyYW1zLCBMb2dpblJlc3VsdCB9IGZyb20gXCIuL3BheWxvYWRcIjtcbmltcG9ydCB0eXBlIHsgTG9naW5DaGFsbGVuZ2VSZW5kZXJlciwgTG9naW5Qcm9wcyB9IGZyb20gXCIuL3Byb3BzXCI7XG5cbmltcG9ydCB7IHVzZVJvdXRlciwgdXNlU2VhcmNoIH0gZnJvbSBcIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXJcIjtcbmltcG9ydCB7IEFsZXJ0LCBCdXR0b24sIENlbnRlciwgR3JvdXAsIEljb24sIExvZ29JY29uLCBzaG93U3VjY2Vzc05vdGlmaWNhdGlvbiwgU3BsaXRUZXh0LCBTdGFjaywgVHlwaW5nQW5pbWF0aW9uLCB1c2VGb3JtLCB1c2VUaGVtZVRva2VucyB9IGZyb20gXCJAdmVmLWZyYW1ld29yay1yZWFjdC9jb21wb25lbnRzXCI7XG5pbXBvcnQgeyB1c2VJbnRlcnZhbCB9IGZyb20gXCJAdmVmLWZyYW1ld29yay1yZWFjdC9ob29rc1wiO1xuaW1wb3J0IHsgZW5jcnlwdFVzaW5nUlNBLCBnZXRMb2NhbGl6ZWREYXRlVGltZSwgbm9vcCwgeiB9IGZyb20gXCJAdmVmLWZyYW1ld29yay1yZWFjdC9zaGFyZWRcIjtcbmltcG9ydCB7XG4gIExvY2tLZXlob2xlSWNvbixcbiAgU3BhcmtsZXNJY29uLFxuICBVc2VyUm91bmRJY29uXG59IGZyb20gXCJsdWNpZGUtcmVhY3RcIjtcbmltcG9ydCB7IG1lbW8sIHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB7IHVzZUFwcFN0b3JlIH0gZnJvbSBcIi4uLy4uL3N0b3Jlc1wiO1xuaW1wb3J0IHsgSWNvbkxvZ2luIH0gZnJvbSBcIi4vaWNvbi1sb2dpblwiO1xuaW1wb3J0ICogYXMgc3R5bGVzIGZyb20gXCIuL3N0eWxlc1wiO1xuaW1wb3J0IHsgZ2V0UmFuZG9tV2VsY29tZU1lc3NhZ2UgfSBmcm9tIFwiLi93ZWxjb21lLW1lc3NhZ2VzXCI7XG5cbmNvbnN0IERFRkFVTFRfVElUTEUgPSBcIlZFRiDkuK3lkI7lj7DnrqHnkIbns7vnu59cIjtcbmNvbnN0IERFRkFVTFRfREVTQ1JJUFRJT04gPSBcIuS4gOasvuaegeW6puW/q+mAn+eahOW8gOWPkeahhuaetiwg55So5LqO5p6E5bu65Lit5ZCO5Y+w566h55CG57O757ufXCI7XG5cbmNvbnN0IGxlZnRDb250ZW50U3R5bGU6IENTU1Byb3BlcnRpZXMgPSB7XG4gIHBvc2l0aW9uOiBcInJlbGF0aXZlXCIsXG4gIHpJbmRleDogMVxufTtcblxuY29uc3QgdXNlckljb24gPSA8SWNvbiBjb21wb25lbnQ9e1VzZXJSb3VuZEljb259IC8+O1xuY29uc3QgbG9ja0ljb24gPSA8SWNvbiBjb21wb25lbnQ9e0xvY2tLZXlob2xlSWNvbn0gLz47XG5cbmNvbnN0IGxvZ2luRm9ybVNjaGVtYSA9IHoub2JqZWN0KHtcbiAgdHlwZTogei5saXRlcmFsKFwicGFzc3dvcmRcIiksXG4gIHByaW5jaXBhbDogei5zdHJpbmcoKS5ub25lbXB0eShcIuivt+i+k+WFpei0puWPt1wiKSxcbiAgY3JlZGVudGlhbHM6IHouc3RyaW5nKCkubm9uZW1wdHkoXCLor7fovpPlhaXlr4bnoIFcIilcbn0pO1xuXG5jb25zdCBkZWZhdWx0TG9naW5WYWx1ZXM6IExvZ2luUGFyYW1zID0ge1xuICB0eXBlOiBcInBhc3N3b3JkXCIsXG4gIHByaW5jaXBhbDogXCJcIixcbiAgY3JlZGVudGlhbHM6IFwiXCJcbn07XG5cbmludGVyZmFjZSBQZW5kaW5nQ2hhbGxlbmdlIHtcbiAgdG9rZW46IHN0cmluZztcbiAgY2hhbGxlbmdlOiBMb2dpbkNoYWxsZW5nZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIExvZ2luKHtcbiAgbG9nbyxcbiAgdGl0bGUgPSBERUZBVUxUX1RJVExFLFxuICBkZXNjcmlwdGlvbiA9IERFRkFVTFRfREVTQ1JJUFRJT04sXG4gIHB1YmxpY0tleSxcbiAgb25Mb2dpbixcbiAgb25SZXNvbHZlQ2hhbGxlbmdlLFxuICBjaGFsbGVuZ2VSZW5kZXJlcnNcbn06IExvZ2luUHJvcHMpIHtcbiAgY29uc3QgeyBjb2xvclByaW1hcnkgfSA9IHVzZVRoZW1lVG9rZW5zKCk7XG5cbiAgY29uc3Qgcm91dGVyID0gdXNlUm91dGVyKCk7XG4gIGNvbnN0IHsgcmVkaXJlY3QgfSA9IHVzZVNlYXJjaCh7IHN0cmljdDogZmFsc2UgfSk7XG5cbiAgY29uc3QgW3BlbmRpbmdDaGFsbGVuZ2UsIHNldFBlbmRpbmdDaGFsbGVuZ2VdID0gdXNlU3RhdGU8UGVuZGluZ0NoYWxsZW5nZSB8IG51bGw+KG51bGwpO1xuICBjb25zdCBbY2hhbGxlbmdlUGVuZGluZywgc2V0Q2hhbGxlbmdlUGVuZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc3QgZW5jcnlwdCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghcHVibGljS2V5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgcmV0dXJuIChwbGFpbnRleHQ6IHN0cmluZykgPT4gZW5jcnlwdFVzaW5nUlNBKHBsYWludGV4dCwgcHVibGljS2V5KTtcbiAgfSwgW3B1YmxpY0tleV0pO1xuXG4gIGFzeW5jIGZ1bmN0aW9uIGFwcGx5TG9naW5SZXN1bHQocmVzdWx0OiBMb2dpblJlc3VsdCkge1xuICAgIGlmIChyZXN1bHQuY2hhbGxlbmdlICYmIHJlc3VsdC5jaGFsbGVuZ2VUb2tlbikge1xuICAgICAgc2V0UGVuZGluZ0NoYWxsZW5nZSh7XG4gICAgICAgIHRva2VuOiByZXN1bHQuY2hhbGxlbmdlVG9rZW4sXG4gICAgICAgIGNoYWxsZW5nZTogcmVzdWx0LmNoYWxsZW5nZVxuICAgICAgfSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCFyZXN1bHQudG9rZW5zKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdXNlQXBwU3RvcmUuc2V0U3RhdGUoc3RhdGUgPT4ge1xuICAgICAgc3RhdGUuaXNBdXRoZW50aWNhdGVkID0gdHJ1ZTtcbiAgICAgIHN0YXRlLmF1dGhUb2tlbnMgPSByZXN1bHQudG9rZW5zO1xuICAgIH0pO1xuICAgIHNldFBlbmRpbmdDaGFsbGVuZ2UobnVsbCk7XG5cbiAgICBhd2FpdCByb3V0ZXIuaW52YWxpZGF0ZSgpO1xuICAgIGF3YWl0IHJvdXRlci5uYXZpZ2F0ZSh7XG4gICAgICB0bzogcmVkaXJlY3QsXG4gICAgICByZXBsYWNlOiB0cnVlXG4gICAgfSk7XG5cbiAgICBzaG93U3VjY2Vzc05vdGlmaWNhdGlvbihnZXRSYW5kb21XZWxjb21lTWVzc2FnZSgpLCB7XG4gICAgICB0aXRsZTogcmVzdWx0Lm1lc3NhZ2UgfHwgXCLnmbvlvZXmiJDlip9cIlxuICAgIH0pO1xuICB9XG5cbiAgY29uc3Qge1xuICAgIEFwcEZvcm0sXG4gICAgRm9ybSxcbiAgICBTdWJtaXRCdXR0b24sXG4gICAgQXBwRmllbGRcbiAgfSA9IHVzZUZvcm0oe1xuICAgIGRlZmF1bHRWYWx1ZXM6IGRlZmF1bHRMb2dpblZhbHVlcyxcbiAgICB2YWxpZGF0b3JzOiB7XG4gICAgICBvblN1Ym1pdDogbG9naW5Gb3JtU2NoZW1hXG4gICAgfSxcbiAgICBhc3luYyBvblN1Ym1pdCh7IHZhbHVlIH0pIHtcbiAgICAgIGNvbnN0IGNyZWRlbnRpYWxzID0gcHVibGljS2V5XG4gICAgICAgID8gZW5jcnlwdFVzaW5nUlNBKHZhbHVlLmNyZWRlbnRpYWxzLCBwdWJsaWNLZXkpXG4gICAgICAgIDogdmFsdWUuY3JlZGVudGlhbHM7XG5cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IG9uTG9naW4oeyAuLi52YWx1ZSwgY3JlZGVudGlhbHMgfSkuY2F0Y2gobm9vcCk7XG5cbiAgICAgIGlmICghcmVzdWx0KSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgYXdhaXQgYXBwbHlMb2dpblJlc3VsdChyZXN1bHQpO1xuICAgIH1cbiAgfSk7XG5cbiAgYXN5bmMgZnVuY3Rpb24gcmVzb2x2ZUNoYWxsZW5nZShyZXNwb25zZTogdW5rbm93bikge1xuICAgIGlmICghcGVuZGluZ0NoYWxsZW5nZSB8fCAhb25SZXNvbHZlQ2hhbGxlbmdlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc2V0Q2hhbGxlbmdlUGVuZGluZyh0cnVlKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBvblJlc29sdmVDaGFsbGVuZ2Uoe1xuICAgICAgICBjaGFsbGVuZ2VUb2tlbjogcGVuZGluZ0NoYWxsZW5nZS50b2tlbixcbiAgICAgICAgdHlwZTogcGVuZGluZ0NoYWxsZW5nZS5jaGFsbGVuZ2UudHlwZSxcbiAgICAgICAgcmVzcG9uc2VcbiAgICAgIH0pLmNhdGNoKG5vb3ApO1xuXG4gICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgIGF3YWl0IGFwcGx5TG9naW5SZXN1bHQocmVzdWx0KTtcbiAgICAgIH1cbiAgICB9IGZpbmFsbHkge1xuICAgICAgc2V0Q2hhbGxlbmdlUGVuZGluZyhmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgZnVuY3Rpb24gY2FuY2VsQ2hhbGxlbmdlKCkge1xuICAgIHNldFBlbmRpbmdDaGFsbGVuZ2UobnVsbCk7XG4gICAgc2V0Q2hhbGxlbmdlUGVuZGluZyhmYWxzZSk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxHcm91cCBjc3M9e3N0eWxlcy5sb2dpbn0gZ2FwPXswfSBqdXN0aWZ5PVwiY2VudGVyXCI+XG4gICAgICB7LyogQmFja2dyb3VuZCBvcmIgZGVjb3JhdGlvbnMgKi99XG4gICAgICA8ZGl2IGNzcz17c3R5bGVzLmJhY2tncm91bmRPcmJzfT5cbiAgICAgICAgPGRpdiBjc3M9e1tzdHlsZXMub3JiLCBzdHlsZXMub3JiUHJpbWFyeV19IC8+XG4gICAgICAgIDxkaXYgY3NzPXtbc3R5bGVzLm9yYiwgc3R5bGVzLm9yYlNlY29uZGFyeV19IC8+XG4gICAgICAgIDxkaXYgY3NzPXtbc3R5bGVzLm9yYiwgc3R5bGVzLm9yYkFjY2VudF19IC8+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjc3M9e3N0eWxlcy5sb2dvfT5cbiAgICAgICAge2xvZ28gfHwgPExvZ29JY29uIHByaW1hcnlDb2xvcj17Y29sb3JQcmltYXJ5fSAvPn1cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8U3RhY2sgYWxpZ249XCJjZW50ZXJcIiBjc3M9e3N0eWxlcy5sZWZ0Q29udGVudH0+XG4gICAgICAgIDxTdGFjayBjc3M9e3N0eWxlcy50aXRsZX0gc3R5bGU9e2xlZnRDb250ZW50U3R5bGV9PlxuICAgICAgICAgIDxTcGxpdFRleHRcbiAgICAgICAgICAgIGRlbGF5PXs4MH1cbiAgICAgICAgICAgIGR1cmF0aW9uPXszfVxuICAgICAgICAgICAgZWFzZT1cImVsYXN0aWMub3V0KDEsIDAuMylcIlxuICAgICAgICAgICAgZnJvbT17eyBvcGFjaXR5OiAwLCB5OiAxOCB9fVxuICAgICAgICAgICAgcm9vdE1hcmdpbj1cIjBcIlxuICAgICAgICAgICAgc3BsaXRUeXBlPVwiY2hhcnNcIlxuICAgICAgICAgICAgdGFnPVwiaDFcIlxuICAgICAgICAgICAgdGV4dD17dGl0bGV9XG4gICAgICAgICAgICB0ZXh0QWxpZ249XCJjZW50ZXJcIlxuICAgICAgICAgICAgdGhyZXNob2xkPXswLjF9XG4gICAgICAgICAgICB0bz17eyBvcGFjaXR5OiAxLCB5OiAwIH19XG4gICAgICAgICAgLz5cblxuICAgICAgICAgIDxkaXYgY3NzPXtzdHlsZXMuZGVzY3JpcHRpb259PlxuICAgICAgICAgICAgPFR5cGluZ0FuaW1hdGlvbj57ZGVzY3JpcHRpb259PC9UeXBpbmdBbmltYXRpb24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvU3RhY2s+XG5cbiAgICAgICAgPENlbnRlciBjc3M9e3N0eWxlcy5pY29ufSBzdHlsZT17bGVmdENvbnRlbnRTdHlsZX0+XG4gICAgICAgICAgPEljb25Mb2dpbiAvPlxuICAgICAgICA8L0NlbnRlcj5cbiAgICAgIDwvU3RhY2s+XG5cbiAgICAgIDxkaXYgY3NzPXtzdHlsZXMucmlnaHRDb250ZW50fT5cbiAgICAgICAgPFRvZGF5IC8+XG5cbiAgICAgICAge3BlbmRpbmdDaGFsbGVuZ2VcbiAgICAgICAgICA/IChcbiAgICAgICAgICAgICAgPENoYWxsZW5nZVZpZXdcbiAgICAgICAgICAgICAgICBjaGFsbGVuZ2U9e3BlbmRpbmdDaGFsbGVuZ2UuY2hhbGxlbmdlfVxuICAgICAgICAgICAgICAgIGVuY3J5cHQ9e2VuY3J5cHR9XG4gICAgICAgICAgICAgICAgcGVuZGluZz17Y2hhbGxlbmdlUGVuZGluZ31cbiAgICAgICAgICAgICAgICByZW5kZXJlcnM9e2NoYWxsZW5nZVJlbmRlcmVyc31cbiAgICAgICAgICAgICAgICBvbkNhbmNlbD17Y2FuY2VsQ2hhbGxlbmdlfVxuICAgICAgICAgICAgICAgIG9uUmVzb2x2ZT17cmVzb2x2ZUNoYWxsZW5nZX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIClcbiAgICAgICAgICA6IChcbiAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICA8ZGl2IGNzcz17c3R5bGVzLmZvcm1IZWFkZXJ9PlxuICAgICAgICAgICAgICAgICAgPGgyPlxuICAgICAgICAgICAgICAgICAgICA8R3JvdXAgYWxpZ249XCJjZW50ZXJcIiBnYXA9XCJzbWFsbFwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxJY29uIGNvbXBvbmVudD17U3BhcmtsZXNJY29ufSBjc3M9e3N0eWxlcy5mb3JtSWNvbn0gLz5cbiAgICAgICAgICAgICAgICAgICAgICDmrKLov47lm57mnaVcbiAgICAgICAgICAgICAgICAgICAgPC9Hcm91cD5cbiAgICAgICAgICAgICAgICAgIDwvaDI+XG5cbiAgICAgICAgICAgICAgICAgIDxwIGNzcz17c3R5bGVzLmZvcm1TdWJ0aXRsZX0+6K+36L6T5YWl5oKo55qE6LSm5Y+35ZKM5a+G56CB6L+b6KGM55m75b2VPC9wPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgPEFwcEZvcm0+XG4gICAgICAgICAgICAgICAgICA8Rm9ybT5cbiAgICAgICAgICAgICAgICAgICAgPFN0YWNrIGdhcD1cIm1pZGRsZVwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxBcHBGaWVsZCBuYW1lPVwicHJpbmNpcGFsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7ZmllbGQgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmllbGQuSW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjc3M9e3N0eWxlcy5mb3JtQ29udHJvbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpei0puWPt1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlZml4PXt1c2VySWNvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwibGFyZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8L0FwcEZpZWxkPlxuXG4gICAgICAgICAgICAgICAgICAgICAgPEFwcEZpZWxkIG5hbWU9XCJjcmVkZW50aWFsc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2ZpZWxkID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZWxkLlBhc3N3b3JkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3NzPXtzdHlsZXMuZm9ybUNvbnRyb2x9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXlr4bnoIFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZpeD17bG9ja0ljb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT1cImxhcmdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPC9BcHBGaWVsZD5cblxuICAgICAgICAgICAgICAgICAgICAgIDxTdWJtaXRCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrXG4gICAgICAgICAgICAgICAgICAgICAgICBjc3M9e3N0eWxlcy5zdWJtaXRCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwibGFyZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIOeZu+W9lVxuICAgICAgICAgICAgICAgICAgICAgIDwvU3VibWl0QnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgPC9Gb3JtPlxuICAgICAgICAgICAgICAgIDwvQXBwRm9ybT5cbiAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICApfVxuXG4gICAgICAgIDxDb3B5cmlnaHQgLz5cbiAgICAgIDwvZGl2PlxuICAgIDwvR3JvdXA+XG4gICk7XG59XG5cbmludGVyZmFjZSBDaGFsbGVuZ2VWaWV3UHJvcHMge1xuICBjaGFsbGVuZ2U6IExvZ2luQ2hhbGxlbmdlO1xuICBwZW5kaW5nOiBib29sZWFuO1xuICByZW5kZXJlcnM/OiBSZWNvcmQ8c3RyaW5nLCBMb2dpbkNoYWxsZW5nZVJlbmRlcmVyPjtcbiAgZW5jcnlwdD86IChwbGFpbnRleHQ6IHN0cmluZykgPT4gc3RyaW5nO1xuICBvblJlc29sdmU6IChyZXNwb25zZTogdW5rbm93bikgPT4gUHJvbWlzZTx2b2lkPjtcbiAgb25DYW5jZWw6ICgpID0+IHZvaWQ7XG59XG5cbmZ1bmN0aW9uIENoYWxsZW5nZVZpZXcoe1xuICBjaGFsbGVuZ2UsXG4gIHBlbmRpbmcsXG4gIHJlbmRlcmVycyxcbiAgZW5jcnlwdCxcbiAgb25SZXNvbHZlLFxuICBvbkNhbmNlbFxufTogQ2hhbGxlbmdlVmlld1Byb3BzKSB7XG4gIGNvbnN0IHJlbmRlcmVyID0gcmVuZGVyZXJzPy5bY2hhbGxlbmdlLnR5cGVdO1xuXG4gIGlmICghcmVuZGVyZXIpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPFN0YWNrIGdhcD1cIm1pZGRsZVwiPlxuICAgICAgICA8ZGl2IGNzcz17c3R5bGVzLmZvcm1IZWFkZXJ9PlxuICAgICAgICAgIDxoMj5cbiAgICAgICAgICAgIDxHcm91cCBhbGlnbj1cImNlbnRlclwiIGdhcD1cInNtYWxsXCI+XG4gICAgICAgICAgICAgIDxJY29uIGNvbXBvbmVudD17U3BhcmtsZXNJY29ufSBjc3M9e3N0eWxlcy5mb3JtSWNvbn0gLz5cbiAgICAgICAgICAgICAg57un57ut55m75b2VXG4gICAgICAgICAgICA8L0dyb3VwPlxuICAgICAgICAgIDwvaDI+XG5cbiAgICAgICAgICA8cCBjc3M9e3N0eWxlcy5mb3JtU3VidGl0bGV9PlxuICAgICAgICAgICAg5pyN5Yqh5Zmo6KaB5rGC5a6M5oiQ6aKd5aSW6aqM6K+B5q2l6aqkXG4gICAgICAgICAgPC9wPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8QWxlcnRcbiAgICAgICAgICBzaG93SWNvblxuICAgICAgICAgIGRlc2NyaXB0aW9uPXtg5pyq5rOo5YaM57G75Z6L5Li644CMJHtjaGFsbGVuZ2UudHlwZX3jgI3nmoTmjJHmiJjlpITnkIblmajvvIzor7fogZTns7vns7vnu5/nrqHnkIblkZjjgIJgfVxuICAgICAgICAgIG1lc3NhZ2U9XCLkuI3mlK/mjIHnmoTnmbvlvZXmjJHmiJhcIlxuICAgICAgICAgIHR5cGU9XCJ3YXJuaW5nXCJcbiAgICAgICAgLz5cblxuICAgICAgICA8QnV0dG9uIGJsb2NrIHNpemU9XCJsYXJnZVwiIG9uQ2xpY2s9e29uQ2FuY2VsfT5cbiAgICAgICAgICDov5Tlm57nmbvlvZVcbiAgICAgICAgPC9CdXR0b24+XG4gICAgICA8L1N0YWNrPlxuICAgICk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICB7cmVuZGVyZXIoe1xuICAgICAgICBjaGFsbGVuZ2UsXG4gICAgICAgIHBlbmRpbmcsXG4gICAgICAgIGVuY3J5cHQsXG4gICAgICAgIHJlc29sdmU6IG9uUmVzb2x2ZSxcbiAgICAgICAgY2FuY2VsOiBvbkNhbmNlbFxuICAgICAgfSl9XG4gICAgPC8+XG4gICk7XG59XG5cbmNvbnN0IFRvZGF5ID0gbWVtbygoKSA9PiB7XG4gIGNvbnN0IFt0b2RheSwgc2V0VG9kYXldID0gdXNlU3RhdGUoZ2V0TG9jYWxpemVkRGF0ZVRpbWUpO1xuXG4gIHVzZUludGVydmFsKFxuICAgICgpID0+IHNldFRvZGF5KGdldExvY2FsaXplZERhdGVUaW1lKCkpLFxuICAgIDEwMDAsXG4gICAgeyBhdXRvSW52b2tlOiB0cnVlIH1cbiAgKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY3NzPXtzdHlsZXMuZGF0ZX0+XG4gICAgICA8c3Bhbj7ku4rlpKnmmK8gPC9zcGFuPlxuICAgICAgPHNwYW4gY3NzPXtzdHlsZXMuZGF0ZUhpZ2hsaWdodH0+e3RvZGF5fTwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgKTtcbn0pO1xuVG9kYXkuZGlzcGxheU5hbWUgPSBcIlRvZGF5XCI7XG5cbmNvbnN0IGN1cnJlbnRZZWFyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xuXG5mdW5jdGlvbiBDb3B5cmlnaHQoKSB7XG4gIHJldHVybiAoXG4gICAgPGRpdiBjc3M9e3N0eWxlcy5jb3B5cmlnaHR9PlxuICAgICAgQ29weXJpZ2h0ICZjb3B5O1xuICAgICAge1wiIFwifVxuICAgICAge2N1cnJlbnRZZWFyfVxuICAgICAge1wiIFwifVxuICAgICAgVkVGLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICAgIDwvZGl2PlxuICApO1xufVxuXG5leHBvcnQgeyB0eXBlIExvZ2luQ2hhbGxlbmdlLCB0eXBlIExvZ2luUGFyYW1zLCB0eXBlIExvZ2luUmVzdWx0LCB0eXBlIFBhc3N3b3JkTG9naW5QYXJhbXMsIHR5cGUgUmVzb2x2ZUNoYWxsZW5nZVBhcmFtcyB9IGZyb20gXCIuL3BheWxvYWRcIjtcbmV4cG9ydCB7IHR5cGUgTG9naW5DaGFsbGVuZ2VSZW5kZXJlciwgdHlwZSBMb2dpbkNoYWxsZW5nZVJlbmRlcmVyUHJvcHMsIHR5cGUgTG9naW5Qcm9wcyB9IGZyb20gXCIuL3Byb3BzXCI7XG4iXX0= */`]}),(0,s.jsx)(`div`,{css:[n.orb,n.orbSecondary,process.env.NODE_ENV===`production`?``:`/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpS2EiLCJmaWxlIjoiaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB0eXBlIHsgTG9naW5DaGFsbGVuZ2UsIExvZ2luUGFyYW1zLCBMb2dpblJlc3VsdCB9IGZyb20gXCIuL3BheWxvYWRcIjtcbmltcG9ydCB0eXBlIHsgTG9naW5DaGFsbGVuZ2VSZW5kZXJlciwgTG9naW5Qcm9wcyB9IGZyb20gXCIuL3Byb3BzXCI7XG5cbmltcG9ydCB7IHVzZVJvdXRlciwgdXNlU2VhcmNoIH0gZnJvbSBcIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXJcIjtcbmltcG9ydCB7IEFsZXJ0LCBCdXR0b24sIENlbnRlciwgR3JvdXAsIEljb24sIExvZ29JY29uLCBzaG93U3VjY2Vzc05vdGlmaWNhdGlvbiwgU3BsaXRUZXh0LCBTdGFjaywgVHlwaW5nQW5pbWF0aW9uLCB1c2VGb3JtLCB1c2VUaGVtZVRva2VucyB9IGZyb20gXCJAdmVmLWZyYW1ld29yay1yZWFjdC9jb21wb25lbnRzXCI7XG5pbXBvcnQgeyB1c2VJbnRlcnZhbCB9IGZyb20gXCJAdmVmLWZyYW1ld29yay1yZWFjdC9ob29rc1wiO1xuaW1wb3J0IHsgZW5jcnlwdFVzaW5nUlNBLCBnZXRMb2NhbGl6ZWREYXRlVGltZSwgbm9vcCwgeiB9IGZyb20gXCJAdmVmLWZyYW1ld29yay1yZWFjdC9zaGFyZWRcIjtcbmltcG9ydCB7XG4gIExvY2tLZXlob2xlSWNvbixcbiAgU3BhcmtsZXNJY29uLFxuICBVc2VyUm91bmRJY29uXG59IGZyb20gXCJsdWNpZGUtcmVhY3RcIjtcbmltcG9ydCB7IG1lbW8sIHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB7IHVzZUFwcFN0b3JlIH0gZnJvbSBcIi4uLy4uL3N0b3Jlc1wiO1xuaW1wb3J0IHsgSWNvbkxvZ2luIH0gZnJvbSBcIi4vaWNvbi1sb2dpblwiO1xuaW1wb3J0ICogYXMgc3R5bGVzIGZyb20gXCIuL3N0eWxlc1wiO1xuaW1wb3J0IHsgZ2V0UmFuZG9tV2VsY29tZU1lc3NhZ2UgfSBmcm9tIFwiLi93ZWxjb21lLW1lc3NhZ2VzXCI7XG5cbmNvbnN0IERFRkFVTFRfVElUTEUgPSBcIlZFRiDkuK3lkI7lj7DnrqHnkIbns7vnu59cIjtcbmNvbnN0IERFRkFVTFRfREVTQ1JJUFRJT04gPSBcIuS4gOasvuaegeW6puW/q+mAn+eahOW8gOWPkeahhuaetiwg55So5LqO5p6E5bu65Lit5ZCO5Y+w566h55CG57O757ufXCI7XG5cbmNvbnN0IGxlZnRDb250ZW50U3R5bGU6IENTU1Byb3BlcnRpZXMgPSB7XG4gIHBvc2l0aW9uOiBcInJlbGF0aXZlXCIsXG4gIHpJbmRleDogMVxufTtcblxuY29uc3QgdXNlckljb24gPSA8SWNvbiBjb21wb25lbnQ9e1VzZXJSb3VuZEljb259IC8+O1xuY29uc3QgbG9ja0ljb24gPSA8SWNvbiBjb21wb25lbnQ9e0xvY2tLZXlob2xlSWNvbn0gLz47XG5cbmNvbnN0IGxvZ2luRm9ybVNjaGVtYSA9IHoub2JqZWN0KHtcbiAgdHlwZTogei5saXRlcmFsKFwicGFzc3dvcmRcIiksXG4gIHByaW5jaXBhbDogei5zdHJpbmcoKS5ub25lbXB0eShcIuivt+i+k+WFpei0puWPt1wiKSxcbiAgY3JlZGVudGlhbHM6IHouc3RyaW5nKCkubm9uZW1wdHkoXCLor7fovpPlhaXlr4bnoIFcIilcbn0pO1xuXG5jb25zdCBkZWZhdWx0TG9naW5WYWx1ZXM6IExvZ2luUGFyYW1zID0ge1xuICB0eXBlOiBcInBhc3N3b3JkXCIsXG4gIHByaW5jaXBhbDogXCJcIixcbiAgY3JlZGVudGlhbHM6IFwiXCJcbn07XG5cbmludGVyZmFjZSBQZW5kaW5nQ2hhbGxlbmdlIHtcbiAgdG9rZW46IHN0cmluZztcbiAgY2hhbGxlbmdlOiBMb2dpbkNoYWxsZW5nZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIExvZ2luKHtcbiAgbG9nbyxcbiAgdGl0bGUgPSBERUZBVUxUX1RJVExFLFxuICBkZXNjcmlwdGlvbiA9IERFRkFVTFRfREVTQ1JJUFRJT04sXG4gIHB1YmxpY0tleSxcbiAgb25Mb2dpbixcbiAgb25SZXNvbHZlQ2hhbGxlbmdlLFxuICBjaGFsbGVuZ2VSZW5kZXJlcnNcbn06IExvZ2luUHJvcHMpIHtcbiAgY29uc3QgeyBjb2xvclByaW1hcnkgfSA9IHVzZVRoZW1lVG9rZW5zKCk7XG5cbiAgY29uc3Qgcm91dGVyID0gdXNlUm91dGVyKCk7XG4gIGNvbnN0IHsgcmVkaXJlY3QgfSA9IHVzZVNlYXJjaCh7IHN0cmljdDogZmFsc2UgfSk7XG5cbiAgY29uc3QgW3BlbmRpbmdDaGFsbGVuZ2UsIHNldFBlbmRpbmdDaGFsbGVuZ2VdID0gdXNlU3RhdGU8UGVuZGluZ0NoYWxsZW5nZSB8IG51bGw+KG51bGwpO1xuICBjb25zdCBbY2hhbGxlbmdlUGVuZGluZywgc2V0Q2hhbGxlbmdlUGVuZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc3QgZW5jcnlwdCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghcHVibGljS2V5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgcmV0dXJuIChwbGFpbnRleHQ6IHN0cmluZykgPT4gZW5jcnlwdFVzaW5nUlNBKHBsYWludGV4dCwgcHVibGljS2V5KTtcbiAgfSwgW3B1YmxpY0tleV0pO1xuXG4gIGFzeW5jIGZ1bmN0aW9uIGFwcGx5TG9naW5SZXN1bHQocmVzdWx0OiBMb2dpblJlc3VsdCkge1xuICAgIGlmIChyZXN1bHQuY2hhbGxlbmdlICYmIHJlc3VsdC5jaGFsbGVuZ2VUb2tlbikge1xuICAgICAgc2V0UGVuZGluZ0NoYWxsZW5nZSh7XG4gICAgICAgIHRva2VuOiByZXN1bHQuY2hhbGxlbmdlVG9rZW4sXG4gICAgICAgIGNoYWxsZW5nZTogcmVzdWx0LmNoYWxsZW5nZVxuICAgICAgfSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCFyZXN1bHQudG9rZW5zKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdXNlQXBwU3RvcmUuc2V0U3RhdGUoc3RhdGUgPT4ge1xuICAgICAgc3RhdGUuaXNBdXRoZW50aWNhdGVkID0gdHJ1ZTtcbiAgICAgIHN0YXRlLmF1dGhUb2tlbnMgPSByZXN1bHQudG9rZW5zO1xuICAgIH0pO1xuICAgIHNldFBlbmRpbmdDaGFsbGVuZ2UobnVsbCk7XG5cbiAgICBhd2FpdCByb3V0ZXIuaW52YWxpZGF0ZSgpO1xuICAgIGF3YWl0IHJvdXRlci5uYXZpZ2F0ZSh7XG4gICAgICB0bzogcmVkaXJlY3QsXG4gICAgICByZXBsYWNlOiB0cnVlXG4gICAgfSk7XG5cbiAgICBzaG93U3VjY2Vzc05vdGlmaWNhdGlvbihnZXRSYW5kb21XZWxjb21lTWVzc2FnZSgpLCB7XG4gICAgICB0aXRsZTogcmVzdWx0Lm1lc3NhZ2UgfHwgXCLnmbvlvZXmiJDlip9cIlxuICAgIH0pO1xuICB9XG5cbiAgY29uc3Qge1xuICAgIEFwcEZvcm0sXG4gICAgRm9ybSxcbiAgICBTdWJtaXRCdXR0b24sXG4gICAgQXBwRmllbGRcbiAgfSA9IHVzZUZvcm0oe1xuICAgIGRlZmF1bHRWYWx1ZXM6IGRlZmF1bHRMb2dpblZhbHVlcyxcbiAgICB2YWxpZGF0b3JzOiB7XG4gICAgICBvblN1Ym1pdDogbG9naW5Gb3JtU2NoZW1hXG4gICAgfSxcbiAgICBhc3luYyBvblN1Ym1pdCh7IHZhbHVlIH0pIHtcbiAgICAgIGNvbnN0IGNyZWRlbnRpYWxzID0gcHVibGljS2V5XG4gICAgICAgID8gZW5jcnlwdFVzaW5nUlNBKHZhbHVlLmNyZWRlbnRpYWxzLCBwdWJsaWNLZXkpXG4gICAgICAgIDogdmFsdWUuY3JlZGVudGlhbHM7XG5cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IG9uTG9naW4oeyAuLi52YWx1ZSwgY3JlZGVudGlhbHMgfSkuY2F0Y2gobm9vcCk7XG5cbiAgICAgIGlmICghcmVzdWx0KSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgYXdhaXQgYXBwbHlMb2dpblJlc3VsdChyZXN1bHQpO1xuICAgIH1cbiAgfSk7XG5cbiAgYXN5bmMgZnVuY3Rpb24gcmVzb2x2ZUNoYWxsZW5nZShyZXNwb25zZTogdW5rbm93bikge1xuICAgIGlmICghcGVuZGluZ0NoYWxsZW5nZSB8fCAhb25SZXNvbHZlQ2hhbGxlbmdlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc2V0Q2hhbGxlbmdlUGVuZGluZyh0cnVlKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBvblJlc29sdmVDaGFsbGVuZ2Uoe1xuICAgICAgICBjaGFsbGVuZ2VUb2tlbjogcGVuZGluZ0NoYWxsZW5nZS50b2tlbixcbiAgICAgICAgdHlwZTogcGVuZGluZ0NoYWxsZW5nZS5jaGFsbGVuZ2UudHlwZSxcbiAgICAgICAgcmVzcG9uc2VcbiAgICAgIH0pLmNhdGNoKG5vb3ApO1xuXG4gICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgIGF3YWl0IGFwcGx5TG9naW5SZXN1bHQocmVzdWx0KTtcbiAgICAgIH1cbiAgICB9IGZpbmFsbHkge1xuICAgICAgc2V0Q2hhbGxlbmdlUGVuZGluZyhmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgZnVuY3Rpb24gY2FuY2VsQ2hhbGxlbmdlKCkge1xuICAgIHNldFBlbmRpbmdDaGFsbGVuZ2UobnVsbCk7XG4gICAgc2V0Q2hhbGxlbmdlUGVuZGluZyhmYWxzZSk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxHcm91cCBjc3M9e3N0eWxlcy5sb2dpbn0gZ2FwPXswfSBqdXN0aWZ5PVwiY2VudGVyXCI+XG4gICAgICB7LyogQmFja2dyb3VuZCBvcmIgZGVjb3JhdGlvbnMgKi99XG4gICAgICA8ZGl2IGNzcz17c3R5bGVzLmJhY2tncm91bmRPcmJzfT5cbiAgICAgICAgPGRpdiBjc3M9e1tzdHlsZXMub3JiLCBzdHlsZXMub3JiUHJpbWFyeV19IC8+XG4gICAgICAgIDxkaXYgY3NzPXtbc3R5bGVzLm9yYiwgc3R5bGVzLm9yYlNlY29uZGFyeV19IC8+XG4gICAgICAgIDxkaXYgY3NzPXtbc3R5bGVzLm9yYiwgc3R5bGVzLm9yYkFjY2VudF19IC8+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjc3M9e3N0eWxlcy5sb2dvfT5cbiAgICAgICAge2xvZ28gfHwgPExvZ29JY29uIHByaW1hcnlDb2xvcj17Y29sb3JQcmltYXJ5fSAvPn1cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8U3RhY2sgYWxpZ249XCJjZW50ZXJcIiBjc3M9e3N0eWxlcy5sZWZ0Q29udGVudH0+XG4gICAgICAgIDxTdGFjayBjc3M9e3N0eWxlcy50aXRsZX0gc3R5bGU9e2xlZnRDb250ZW50U3R5bGV9PlxuICAgICAgICAgIDxTcGxpdFRleHRcbiAgICAgICAgICAgIGRlbGF5PXs4MH1cbiAgICAgICAgICAgIGR1cmF0aW9uPXszfVxuICAgICAgICAgICAgZWFzZT1cImVsYXN0aWMub3V0KDEsIDAuMylcIlxuICAgICAgICAgICAgZnJvbT17eyBvcGFjaXR5OiAwLCB5OiAxOCB9fVxuICAgICAgICAgICAgcm9vdE1hcmdpbj1cIjBcIlxuICAgICAgICAgICAgc3BsaXRUeXBlPVwiY2hhcnNcIlxuICAgICAgICAgICAgdGFnPVwiaDFcIlxuICAgICAgICAgICAgdGV4dD17dGl0bGV9XG4gICAgICAgICAgICB0ZXh0QWxpZ249XCJjZW50ZXJcIlxuICAgICAgICAgICAgdGhyZXNob2xkPXswLjF9XG4gICAgICAgICAgICB0bz17eyBvcGFjaXR5OiAxLCB5OiAwIH19XG4gICAgICAgICAgLz5cblxuICAgICAgICAgIDxkaXYgY3NzPXtzdHlsZXMuZGVzY3JpcHRpb259PlxuICAgICAgICAgICAgPFR5cGluZ0FuaW1hdGlvbj57ZGVzY3JpcHRpb259PC9UeXBpbmdBbmltYXRpb24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvU3RhY2s+XG5cbiAgICAgICAgPENlbnRlciBjc3M9e3N0eWxlcy5pY29ufSBzdHlsZT17bGVmdENvbnRlbnRTdHlsZX0+XG4gICAgICAgICAgPEljb25Mb2dpbiAvPlxuICAgICAgICA8L0NlbnRlcj5cbiAgICAgIDwvU3RhY2s+XG5cbiAgICAgIDxkaXYgY3NzPXtzdHlsZXMucmlnaHRDb250ZW50fT5cbiAgICAgICAgPFRvZGF5IC8+XG5cbiAgICAgICAge3BlbmRpbmdDaGFsbGVuZ2VcbiAgICAgICAgICA/IChcbiAgICAgICAgICAgICAgPENoYWxsZW5nZVZpZXdcbiAgICAgICAgICAgICAgICBjaGFsbGVuZ2U9e3BlbmRpbmdDaGFsbGVuZ2UuY2hhbGxlbmdlfVxuICAgICAgICAgICAgICAgIGVuY3J5cHQ9e2VuY3J5cHR9XG4gICAgICAgICAgICAgICAgcGVuZGluZz17Y2hhbGxlbmdlUGVuZGluZ31cbiAgICAgICAgICAgICAgICByZW5kZXJlcnM9e2NoYWxsZW5nZVJlbmRlcmVyc31cbiAgICAgICAgICAgICAgICBvbkNhbmNlbD17Y2FuY2VsQ2hhbGxlbmdlfVxuICAgICAgICAgICAgICAgIG9uUmVzb2x2ZT17cmVzb2x2ZUNoYWxsZW5nZX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIClcbiAgICAgICAgICA6IChcbiAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICA8ZGl2IGNzcz17c3R5bGVzLmZvcm1IZWFkZXJ9PlxuICAgICAgICAgICAgICAgICAgPGgyPlxuICAgICAgICAgICAgICAgICAgICA8R3JvdXAgYWxpZ249XCJjZW50ZXJcIiBnYXA9XCJzbWFsbFwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxJY29uIGNvbXBvbmVudD17U3BhcmtsZXNJY29ufSBjc3M9e3N0eWxlcy5mb3JtSWNvbn0gLz5cbiAgICAgICAgICAgICAgICAgICAgICDmrKLov47lm57mnaVcbiAgICAgICAgICAgICAgICAgICAgPC9Hcm91cD5cbiAgICAgICAgICAgICAgICAgIDwvaDI+XG5cbiAgICAgICAgICAgICAgICAgIDxwIGNzcz17c3R5bGVzLmZvcm1TdWJ0aXRsZX0+6K+36L6T5YWl5oKo55qE6LSm5Y+35ZKM5a+G56CB6L+b6KGM55m75b2VPC9wPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgPEFwcEZvcm0+XG4gICAgICAgICAgICAgICAgICA8Rm9ybT5cbiAgICAgICAgICAgICAgICAgICAgPFN0YWNrIGdhcD1cIm1pZGRsZVwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxBcHBGaWVsZCBuYW1lPVwicHJpbmNpcGFsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7ZmllbGQgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmllbGQuSW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjc3M9e3N0eWxlcy5mb3JtQ29udHJvbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpei0puWPt1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlZml4PXt1c2VySWNvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwibGFyZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8L0FwcEZpZWxkPlxuXG4gICAgICAgICAgICAgICAgICAgICAgPEFwcEZpZWxkIG5hbWU9XCJjcmVkZW50aWFsc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2ZpZWxkID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZWxkLlBhc3N3b3JkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3NzPXtzdHlsZXMuZm9ybUNvbnRyb2x9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXlr4bnoIFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZpeD17bG9ja0ljb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT1cImxhcmdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPC9BcHBGaWVsZD5cblxuICAgICAgICAgICAgICAgICAgICAgIDxTdWJtaXRCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrXG4gICAgICAgICAgICAgICAgICAgICAgICBjc3M9e3N0eWxlcy5zdWJtaXRCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwibGFyZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIOeZu+W9lVxuICAgICAgICAgICAgICAgICAgICAgIDwvU3VibWl0QnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgPC9Gb3JtPlxuICAgICAgICAgICAgICAgIDwvQXBwRm9ybT5cbiAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICApfVxuXG4gICAgICAgIDxDb3B5cmlnaHQgLz5cbiAgICAgIDwvZGl2PlxuICAgIDwvR3JvdXA+XG4gICk7XG59XG5cbmludGVyZmFjZSBDaGFsbGVuZ2VWaWV3UHJvcHMge1xuICBjaGFsbGVuZ2U6IExvZ2luQ2hhbGxlbmdlO1xuICBwZW5kaW5nOiBib29sZWFuO1xuICByZW5kZXJlcnM/OiBSZWNvcmQ8c3RyaW5nLCBMb2dpbkNoYWxsZW5nZVJlbmRlcmVyPjtcbiAgZW5jcnlwdD86IChwbGFpbnRleHQ6IHN0cmluZykgPT4gc3RyaW5nO1xuICBvblJlc29sdmU6IChyZXNwb25zZTogdW5rbm93bikgPT4gUHJvbWlzZTx2b2lkPjtcbiAgb25DYW5jZWw6ICgpID0+IHZvaWQ7XG59XG5cbmZ1bmN0aW9uIENoYWxsZW5nZVZpZXcoe1xuICBjaGFsbGVuZ2UsXG4gIHBlbmRpbmcsXG4gIHJlbmRlcmVycyxcbiAgZW5jcnlwdCxcbiAgb25SZXNvbHZlLFxuICBvbkNhbmNlbFxufTogQ2hhbGxlbmdlVmlld1Byb3BzKSB7XG4gIGNvbnN0IHJlbmRlcmVyID0gcmVuZGVyZXJzPy5bY2hhbGxlbmdlLnR5cGVdO1xuXG4gIGlmICghcmVuZGVyZXIpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPFN0YWNrIGdhcD1cIm1pZGRsZVwiPlxuICAgICAgICA8ZGl2IGNzcz17c3R5bGVzLmZvcm1IZWFkZXJ9PlxuICAgICAgICAgIDxoMj5cbiAgICAgICAgICAgIDxHcm91cCBhbGlnbj1cImNlbnRlclwiIGdhcD1cInNtYWxsXCI+XG4gICAgICAgICAgICAgIDxJY29uIGNvbXBvbmVudD17U3BhcmtsZXNJY29ufSBjc3M9e3N0eWxlcy5mb3JtSWNvbn0gLz5cbiAgICAgICAgICAgICAg57un57ut55m75b2VXG4gICAgICAgICAgICA8L0dyb3VwPlxuICAgICAgICAgIDwvaDI+XG5cbiAgICAgICAgICA8cCBjc3M9e3N0eWxlcy5mb3JtU3VidGl0bGV9PlxuICAgICAgICAgICAg5pyN5Yqh5Zmo6KaB5rGC5a6M5oiQ6aKd5aSW6aqM6K+B5q2l6aqkXG4gICAgICAgICAgPC9wPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8QWxlcnRcbiAgICAgICAgICBzaG93SWNvblxuICAgICAgICAgIGRlc2NyaXB0aW9uPXtg5pyq5rOo5YaM57G75Z6L5Li644CMJHtjaGFsbGVuZ2UudHlwZX3jgI3nmoTmjJHmiJjlpITnkIblmajvvIzor7fogZTns7vns7vnu5/nrqHnkIblkZjjgIJgfVxuICAgICAgICAgIG1lc3NhZ2U9XCLkuI3mlK/mjIHnmoTnmbvlvZXmjJHmiJhcIlxuICAgICAgICAgIHR5cGU9XCJ3YXJuaW5nXCJcbiAgICAgICAgLz5cblxuICAgICAgICA8QnV0dG9uIGJsb2NrIHNpemU9XCJsYXJnZVwiIG9uQ2xpY2s9e29uQ2FuY2VsfT5cbiAgICAgICAgICDov5Tlm57nmbvlvZVcbiAgICAgICAgPC9CdXR0b24+XG4gICAgICA8L1N0YWNrPlxuICAgICk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICB7cmVuZGVyZXIoe1xuICAgICAgICBjaGFsbGVuZ2UsXG4gICAgICAgIHBlbmRpbmcsXG4gICAgICAgIGVuY3J5cHQsXG4gICAgICAgIHJlc29sdmU6IG9uUmVzb2x2ZSxcbiAgICAgICAgY2FuY2VsOiBvbkNhbmNlbFxuICAgICAgfSl9XG4gICAgPC8+XG4gICk7XG59XG5cbmNvbnN0IFRvZGF5ID0gbWVtbygoKSA9PiB7XG4gIGNvbnN0IFt0b2RheSwgc2V0VG9kYXldID0gdXNlU3RhdGUoZ2V0TG9jYWxpemVkRGF0ZVRpbWUpO1xuXG4gIHVzZUludGVydmFsKFxuICAgICgpID0+IHNldFRvZGF5KGdldExvY2FsaXplZERhdGVUaW1lKCkpLFxuICAgIDEwMDAsXG4gICAgeyBhdXRvSW52b2tlOiB0cnVlIH1cbiAgKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY3NzPXtzdHlsZXMuZGF0ZX0+XG4gICAgICA8c3Bhbj7ku4rlpKnmmK8gPC9zcGFuPlxuICAgICAgPHNwYW4gY3NzPXtzdHlsZXMuZGF0ZUhpZ2hsaWdodH0+e3RvZGF5fTwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgKTtcbn0pO1xuVG9kYXkuZGlzcGxheU5hbWUgPSBcIlRvZGF5XCI7XG5cbmNvbnN0IGN1cnJlbnRZZWFyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xuXG5mdW5jdGlvbiBDb3B5cmlnaHQoKSB7XG4gIHJldHVybiAoXG4gICAgPGRpdiBjc3M9e3N0eWxlcy5jb3B5cmlnaHR9PlxuICAgICAgQ29weXJpZ2h0ICZjb3B5O1xuICAgICAge1wiIFwifVxuICAgICAge2N1cnJlbnRZZWFyfVxuICAgICAge1wiIFwifVxuICAgICAgVkVGLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICAgIDwvZGl2PlxuICApO1xufVxuXG5leHBvcnQgeyB0eXBlIExvZ2luQ2hhbGxlbmdlLCB0eXBlIExvZ2luUGFyYW1zLCB0eXBlIExvZ2luUmVzdWx0LCB0eXBlIFBhc3N3b3JkTG9naW5QYXJhbXMsIHR5cGUgUmVzb2x2ZUNoYWxsZW5nZVBhcmFtcyB9IGZyb20gXCIuL3BheWxvYWRcIjtcbmV4cG9ydCB7IHR5cGUgTG9naW5DaGFsbGVuZ2VSZW5kZXJlciwgdHlwZSBMb2dpbkNoYWxsZW5nZVJlbmRlcmVyUHJvcHMsIHR5cGUgTG9naW5Qcm9wcyB9IGZyb20gXCIuL3Byb3BzXCI7XG4iXX0= */`]}),(0,s.jsx)(`div`,{css:[n.orb,n.orbAccent,process.env.NODE_ENV===`production`?``:`/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrS2EiLCJmaWxlIjoiaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB0eXBlIHsgTG9naW5DaGFsbGVuZ2UsIExvZ2luUGFyYW1zLCBMb2dpblJlc3VsdCB9IGZyb20gXCIuL3BheWxvYWRcIjtcbmltcG9ydCB0eXBlIHsgTG9naW5DaGFsbGVuZ2VSZW5kZXJlciwgTG9naW5Qcm9wcyB9IGZyb20gXCIuL3Byb3BzXCI7XG5cbmltcG9ydCB7IHVzZVJvdXRlciwgdXNlU2VhcmNoIH0gZnJvbSBcIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXJcIjtcbmltcG9ydCB7IEFsZXJ0LCBCdXR0b24sIENlbnRlciwgR3JvdXAsIEljb24sIExvZ29JY29uLCBzaG93U3VjY2Vzc05vdGlmaWNhdGlvbiwgU3BsaXRUZXh0LCBTdGFjaywgVHlwaW5nQW5pbWF0aW9uLCB1c2VGb3JtLCB1c2VUaGVtZVRva2VucyB9IGZyb20gXCJAdmVmLWZyYW1ld29yay1yZWFjdC9jb21wb25lbnRzXCI7XG5pbXBvcnQgeyB1c2VJbnRlcnZhbCB9IGZyb20gXCJAdmVmLWZyYW1ld29yay1yZWFjdC9ob29rc1wiO1xuaW1wb3J0IHsgZW5jcnlwdFVzaW5nUlNBLCBnZXRMb2NhbGl6ZWREYXRlVGltZSwgbm9vcCwgeiB9IGZyb20gXCJAdmVmLWZyYW1ld29yay1yZWFjdC9zaGFyZWRcIjtcbmltcG9ydCB7XG4gIExvY2tLZXlob2xlSWNvbixcbiAgU3BhcmtsZXNJY29uLFxuICBVc2VyUm91bmRJY29uXG59IGZyb20gXCJsdWNpZGUtcmVhY3RcIjtcbmltcG9ydCB7IG1lbW8sIHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB7IHVzZUFwcFN0b3JlIH0gZnJvbSBcIi4uLy4uL3N0b3Jlc1wiO1xuaW1wb3J0IHsgSWNvbkxvZ2luIH0gZnJvbSBcIi4vaWNvbi1sb2dpblwiO1xuaW1wb3J0ICogYXMgc3R5bGVzIGZyb20gXCIuL3N0eWxlc1wiO1xuaW1wb3J0IHsgZ2V0UmFuZG9tV2VsY29tZU1lc3NhZ2UgfSBmcm9tIFwiLi93ZWxjb21lLW1lc3NhZ2VzXCI7XG5cbmNvbnN0IERFRkFVTFRfVElUTEUgPSBcIlZFRiDkuK3lkI7lj7DnrqHnkIbns7vnu59cIjtcbmNvbnN0IERFRkFVTFRfREVTQ1JJUFRJT04gPSBcIuS4gOasvuaegeW6puW/q+mAn+eahOW8gOWPkeahhuaetiwg55So5LqO5p6E5bu65Lit5ZCO5Y+w566h55CG57O757ufXCI7XG5cbmNvbnN0IGxlZnRDb250ZW50U3R5bGU6IENTU1Byb3BlcnRpZXMgPSB7XG4gIHBvc2l0aW9uOiBcInJlbGF0aXZlXCIsXG4gIHpJbmRleDogMVxufTtcblxuY29uc3QgdXNlckljb24gPSA8SWNvbiBjb21wb25lbnQ9e1VzZXJSb3VuZEljb259IC8+O1xuY29uc3QgbG9ja0ljb24gPSA8SWNvbiBjb21wb25lbnQ9e0xvY2tLZXlob2xlSWNvbn0gLz47XG5cbmNvbnN0IGxvZ2luRm9ybVNjaGVtYSA9IHoub2JqZWN0KHtcbiAgdHlwZTogei5saXRlcmFsKFwicGFzc3dvcmRcIiksXG4gIHByaW5jaXBhbDogei5zdHJpbmcoKS5ub25lbXB0eShcIuivt+i+k+WFpei0puWPt1wiKSxcbiAgY3JlZGVudGlhbHM6IHouc3RyaW5nKCkubm9uZW1wdHkoXCLor7fovpPlhaXlr4bnoIFcIilcbn0pO1xuXG5jb25zdCBkZWZhdWx0TG9naW5WYWx1ZXM6IExvZ2luUGFyYW1zID0ge1xuICB0eXBlOiBcInBhc3N3b3JkXCIsXG4gIHByaW5jaXBhbDogXCJcIixcbiAgY3JlZGVudGlhbHM6IFwiXCJcbn07XG5cbmludGVyZmFjZSBQZW5kaW5nQ2hhbGxlbmdlIHtcbiAgdG9rZW46IHN0cmluZztcbiAgY2hhbGxlbmdlOiBMb2dpbkNoYWxsZW5nZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIExvZ2luKHtcbiAgbG9nbyxcbiAgdGl0bGUgPSBERUZBVUxUX1RJVExFLFxuICBkZXNjcmlwdGlvbiA9IERFRkFVTFRfREVTQ1JJUFRJT04sXG4gIHB1YmxpY0tleSxcbiAgb25Mb2dpbixcbiAgb25SZXNvbHZlQ2hhbGxlbmdlLFxuICBjaGFsbGVuZ2VSZW5kZXJlcnNcbn06IExvZ2luUHJvcHMpIHtcbiAgY29uc3QgeyBjb2xvclByaW1hcnkgfSA9IHVzZVRoZW1lVG9rZW5zKCk7XG5cbiAgY29uc3Qgcm91dGVyID0gdXNlUm91dGVyKCk7XG4gIGNvbnN0IHsgcmVkaXJlY3QgfSA9IHVzZVNlYXJjaCh7IHN0cmljdDogZmFsc2UgfSk7XG5cbiAgY29uc3QgW3BlbmRpbmdDaGFsbGVuZ2UsIHNldFBlbmRpbmdDaGFsbGVuZ2VdID0gdXNlU3RhdGU8UGVuZGluZ0NoYWxsZW5nZSB8IG51bGw+KG51bGwpO1xuICBjb25zdCBbY2hhbGxlbmdlUGVuZGluZywgc2V0Q2hhbGxlbmdlUGVuZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc3QgZW5jcnlwdCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghcHVibGljS2V5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgcmV0dXJuIChwbGFpbnRleHQ6IHN0cmluZykgPT4gZW5jcnlwdFVzaW5nUlNBKHBsYWludGV4dCwgcHVibGljS2V5KTtcbiAgfSwgW3B1YmxpY0tleV0pO1xuXG4gIGFzeW5jIGZ1bmN0aW9uIGFwcGx5TG9naW5SZXN1bHQocmVzdWx0OiBMb2dpblJlc3VsdCkge1xuICAgIGlmIChyZXN1bHQuY2hhbGxlbmdlICYmIHJlc3VsdC5jaGFsbGVuZ2VUb2tlbikge1xuICAgICAgc2V0UGVuZGluZ0NoYWxsZW5nZSh7XG4gICAgICAgIHRva2VuOiByZXN1bHQuY2hhbGxlbmdlVG9rZW4sXG4gICAgICAgIGNoYWxsZW5nZTogcmVzdWx0LmNoYWxsZW5nZVxuICAgICAgfSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCFyZXN1bHQudG9rZW5zKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdXNlQXBwU3RvcmUuc2V0U3RhdGUoc3RhdGUgPT4ge1xuICAgICAgc3RhdGUuaXNBdXRoZW50aWNhdGVkID0gdHJ1ZTtcbiAgICAgIHN0YXRlLmF1dGhUb2tlbnMgPSByZXN1bHQudG9rZW5zO1xuICAgIH0pO1xuICAgIHNldFBlbmRpbmdDaGFsbGVuZ2UobnVsbCk7XG5cbiAgICBhd2FpdCByb3V0ZXIuaW52YWxpZGF0ZSgpO1xuICAgIGF3YWl0IHJvdXRlci5uYXZpZ2F0ZSh7XG4gICAgICB0bzogcmVkaXJlY3QsXG4gICAgICByZXBsYWNlOiB0cnVlXG4gICAgfSk7XG5cbiAgICBzaG93U3VjY2Vzc05vdGlmaWNhdGlvbihnZXRSYW5kb21XZWxjb21lTWVzc2FnZSgpLCB7XG4gICAgICB0aXRsZTogcmVzdWx0Lm1lc3NhZ2UgfHwgXCLnmbvlvZXmiJDlip9cIlxuICAgIH0pO1xuICB9XG5cbiAgY29uc3Qge1xuICAgIEFwcEZvcm0sXG4gICAgRm9ybSxcbiAgICBTdWJtaXRCdXR0b24sXG4gICAgQXBwRmllbGRcbiAgfSA9IHVzZUZvcm0oe1xuICAgIGRlZmF1bHRWYWx1ZXM6IGRlZmF1bHRMb2dpblZhbHVlcyxcbiAgICB2YWxpZGF0b3JzOiB7XG4gICAgICBvblN1Ym1pdDogbG9naW5Gb3JtU2NoZW1hXG4gICAgfSxcbiAgICBhc3luYyBvblN1Ym1pdCh7IHZhbHVlIH0pIHtcbiAgICAgIGNvbnN0IGNyZWRlbnRpYWxzID0gcHVibGljS2V5XG4gICAgICAgID8gZW5jcnlwdFVzaW5nUlNBKHZhbHVlLmNyZWRlbnRpYWxzLCBwdWJsaWNLZXkpXG4gICAgICAgIDogdmFsdWUuY3JlZGVudGlhbHM7XG5cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IG9uTG9naW4oeyAuLi52YWx1ZSwgY3JlZGVudGlhbHMgfSkuY2F0Y2gobm9vcCk7XG5cbiAgICAgIGlmICghcmVzdWx0KSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgYXdhaXQgYXBwbHlMb2dpblJlc3VsdChyZXN1bHQpO1xuICAgIH1cbiAgfSk7XG5cbiAgYXN5bmMgZnVuY3Rpb24gcmVzb2x2ZUNoYWxsZW5nZShyZXNwb25zZTogdW5rbm93bikge1xuICAgIGlmICghcGVuZGluZ0NoYWxsZW5nZSB8fCAhb25SZXNvbHZlQ2hhbGxlbmdlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc2V0Q2hhbGxlbmdlUGVuZGluZyh0cnVlKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBvblJlc29sdmVDaGFsbGVuZ2Uoe1xuICAgICAgICBjaGFsbGVuZ2VUb2tlbjogcGVuZGluZ0NoYWxsZW5nZS50b2tlbixcbiAgICAgICAgdHlwZTogcGVuZGluZ0NoYWxsZW5nZS5jaGFsbGVuZ2UudHlwZSxcbiAgICAgICAgcmVzcG9uc2VcbiAgICAgIH0pLmNhdGNoKG5vb3ApO1xuXG4gICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgIGF3YWl0IGFwcGx5TG9naW5SZXN1bHQocmVzdWx0KTtcbiAgICAgIH1cbiAgICB9IGZpbmFsbHkge1xuICAgICAgc2V0Q2hhbGxlbmdlUGVuZGluZyhmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgZnVuY3Rpb24gY2FuY2VsQ2hhbGxlbmdlKCkge1xuICAgIHNldFBlbmRpbmdDaGFsbGVuZ2UobnVsbCk7XG4gICAgc2V0Q2hhbGxlbmdlUGVuZGluZyhmYWxzZSk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxHcm91cCBjc3M9e3N0eWxlcy5sb2dpbn0gZ2FwPXswfSBqdXN0aWZ5PVwiY2VudGVyXCI+XG4gICAgICB7LyogQmFja2dyb3VuZCBvcmIgZGVjb3JhdGlvbnMgKi99XG4gICAgICA8ZGl2IGNzcz17c3R5bGVzLmJhY2tncm91bmRPcmJzfT5cbiAgICAgICAgPGRpdiBjc3M9e1tzdHlsZXMub3JiLCBzdHlsZXMub3JiUHJpbWFyeV19IC8+XG4gICAgICAgIDxkaXYgY3NzPXtbc3R5bGVzLm9yYiwgc3R5bGVzLm9yYlNlY29uZGFyeV19IC8+XG4gICAgICAgIDxkaXYgY3NzPXtbc3R5bGVzLm9yYiwgc3R5bGVzLm9yYkFjY2VudF19IC8+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjc3M9e3N0eWxlcy5sb2dvfT5cbiAgICAgICAge2xvZ28gfHwgPExvZ29JY29uIHByaW1hcnlDb2xvcj17Y29sb3JQcmltYXJ5fSAvPn1cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8U3RhY2sgYWxpZ249XCJjZW50ZXJcIiBjc3M9e3N0eWxlcy5sZWZ0Q29udGVudH0+XG4gICAgICAgIDxTdGFjayBjc3M9e3N0eWxlcy50aXRsZX0gc3R5bGU9e2xlZnRDb250ZW50U3R5bGV9PlxuICAgICAgICAgIDxTcGxpdFRleHRcbiAgICAgICAgICAgIGRlbGF5PXs4MH1cbiAgICAgICAgICAgIGR1cmF0aW9uPXszfVxuICAgICAgICAgICAgZWFzZT1cImVsYXN0aWMub3V0KDEsIDAuMylcIlxuICAgICAgICAgICAgZnJvbT17eyBvcGFjaXR5OiAwLCB5OiAxOCB9fVxuICAgICAgICAgICAgcm9vdE1hcmdpbj1cIjBcIlxuICAgICAgICAgICAgc3BsaXRUeXBlPVwiY2hhcnNcIlxuICAgICAgICAgICAgdGFnPVwiaDFcIlxuICAgICAgICAgICAgdGV4dD17dGl0bGV9XG4gICAgICAgICAgICB0ZXh0QWxpZ249XCJjZW50ZXJcIlxuICAgICAgICAgICAgdGhyZXNob2xkPXswLjF9XG4gICAgICAgICAgICB0bz17eyBvcGFjaXR5OiAxLCB5OiAwIH19XG4gICAgICAgICAgLz5cblxuICAgICAgICAgIDxkaXYgY3NzPXtzdHlsZXMuZGVzY3JpcHRpb259PlxuICAgICAgICAgICAgPFR5cGluZ0FuaW1hdGlvbj57ZGVzY3JpcHRpb259PC9UeXBpbmdBbmltYXRpb24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvU3RhY2s+XG5cbiAgICAgICAgPENlbnRlciBjc3M9e3N0eWxlcy5pY29ufSBzdHlsZT17bGVmdENvbnRlbnRTdHlsZX0+XG4gICAgICAgICAgPEljb25Mb2dpbiAvPlxuICAgICAgICA8L0NlbnRlcj5cbiAgICAgIDwvU3RhY2s+XG5cbiAgICAgIDxkaXYgY3NzPXtzdHlsZXMucmlnaHRDb250ZW50fT5cbiAgICAgICAgPFRvZGF5IC8+XG5cbiAgICAgICAge3BlbmRpbmdDaGFsbGVuZ2VcbiAgICAgICAgICA/IChcbiAgICAgICAgICAgICAgPENoYWxsZW5nZVZpZXdcbiAgICAgICAgICAgICAgICBjaGFsbGVuZ2U9e3BlbmRpbmdDaGFsbGVuZ2UuY2hhbGxlbmdlfVxuICAgICAgICAgICAgICAgIGVuY3J5cHQ9e2VuY3J5cHR9XG4gICAgICAgICAgICAgICAgcGVuZGluZz17Y2hhbGxlbmdlUGVuZGluZ31cbiAgICAgICAgICAgICAgICByZW5kZXJlcnM9e2NoYWxsZW5nZVJlbmRlcmVyc31cbiAgICAgICAgICAgICAgICBvbkNhbmNlbD17Y2FuY2VsQ2hhbGxlbmdlfVxuICAgICAgICAgICAgICAgIG9uUmVzb2x2ZT17cmVzb2x2ZUNoYWxsZW5nZX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIClcbiAgICAgICAgICA6IChcbiAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICA8ZGl2IGNzcz17c3R5bGVzLmZvcm1IZWFkZXJ9PlxuICAgICAgICAgICAgICAgICAgPGgyPlxuICAgICAgICAgICAgICAgICAgICA8R3JvdXAgYWxpZ249XCJjZW50ZXJcIiBnYXA9XCJzbWFsbFwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxJY29uIGNvbXBvbmVudD17U3BhcmtsZXNJY29ufSBjc3M9e3N0eWxlcy5mb3JtSWNvbn0gLz5cbiAgICAgICAgICAgICAgICAgICAgICDmrKLov47lm57mnaVcbiAgICAgICAgICAgICAgICAgICAgPC9Hcm91cD5cbiAgICAgICAgICAgICAgICAgIDwvaDI+XG5cbiAgICAgICAgICAgICAgICAgIDxwIGNzcz17c3R5bGVzLmZvcm1TdWJ0aXRsZX0+6K+36L6T5YWl5oKo55qE6LSm5Y+35ZKM5a+G56CB6L+b6KGM55m75b2VPC9wPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgPEFwcEZvcm0+XG4gICAgICAgICAgICAgICAgICA8Rm9ybT5cbiAgICAgICAgICAgICAgICAgICAgPFN0YWNrIGdhcD1cIm1pZGRsZVwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxBcHBGaWVsZCBuYW1lPVwicHJpbmNpcGFsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7ZmllbGQgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmllbGQuSW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjc3M9e3N0eWxlcy5mb3JtQ29udHJvbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpei0puWPt1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlZml4PXt1c2VySWNvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwibGFyZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8L0FwcEZpZWxkPlxuXG4gICAgICAgICAgICAgICAgICAgICAgPEFwcEZpZWxkIG5hbWU9XCJjcmVkZW50aWFsc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2ZpZWxkID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZWxkLlBhc3N3b3JkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3NzPXtzdHlsZXMuZm9ybUNvbnRyb2x9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXlr4bnoIFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZpeD17bG9ja0ljb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT1cImxhcmdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPC9BcHBGaWVsZD5cblxuICAgICAgICAgICAgICAgICAgICAgIDxTdWJtaXRCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrXG4gICAgICAgICAgICAgICAgICAgICAgICBjc3M9e3N0eWxlcy5zdWJtaXRCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwibGFyZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIOeZu+W9lVxuICAgICAgICAgICAgICAgICAgICAgIDwvU3VibWl0QnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgPC9Gb3JtPlxuICAgICAgICAgICAgICAgIDwvQXBwRm9ybT5cbiAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICApfVxuXG4gICAgICAgIDxDb3B5cmlnaHQgLz5cbiAgICAgIDwvZGl2PlxuICAgIDwvR3JvdXA+XG4gICk7XG59XG5cbmludGVyZmFjZSBDaGFsbGVuZ2VWaWV3UHJvcHMge1xuICBjaGFsbGVuZ2U6IExvZ2luQ2hhbGxlbmdlO1xuICBwZW5kaW5nOiBib29sZWFuO1xuICByZW5kZXJlcnM/OiBSZWNvcmQ8c3RyaW5nLCBMb2dpbkNoYWxsZW5nZVJlbmRlcmVyPjtcbiAgZW5jcnlwdD86IChwbGFpbnRleHQ6IHN0cmluZykgPT4gc3RyaW5nO1xuICBvblJlc29sdmU6IChyZXNwb25zZTogdW5rbm93bikgPT4gUHJvbWlzZTx2b2lkPjtcbiAgb25DYW5jZWw6ICgpID0+IHZvaWQ7XG59XG5cbmZ1bmN0aW9uIENoYWxsZW5nZVZpZXcoe1xuICBjaGFsbGVuZ2UsXG4gIHBlbmRpbmcsXG4gIHJlbmRlcmVycyxcbiAgZW5jcnlwdCxcbiAgb25SZXNvbHZlLFxuICBvbkNhbmNlbFxufTogQ2hhbGxlbmdlVmlld1Byb3BzKSB7XG4gIGNvbnN0IHJlbmRlcmVyID0gcmVuZGVyZXJzPy5bY2hhbGxlbmdlLnR5cGVdO1xuXG4gIGlmICghcmVuZGVyZXIpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPFN0YWNrIGdhcD1cIm1pZGRsZVwiPlxuICAgICAgICA8ZGl2IGNzcz17c3R5bGVzLmZvcm1IZWFkZXJ9PlxuICAgICAgICAgIDxoMj5cbiAgICAgICAgICAgIDxHcm91cCBhbGlnbj1cImNlbnRlclwiIGdhcD1cInNtYWxsXCI+XG4gICAgICAgICAgICAgIDxJY29uIGNvbXBvbmVudD17U3BhcmtsZXNJY29ufSBjc3M9e3N0eWxlcy5mb3JtSWNvbn0gLz5cbiAgICAgICAgICAgICAg57un57ut55m75b2VXG4gICAgICAgICAgICA8L0dyb3VwPlxuICAgICAgICAgIDwvaDI+XG5cbiAgICAgICAgICA8cCBjc3M9e3N0eWxlcy5mb3JtU3VidGl0bGV9PlxuICAgICAgICAgICAg5pyN5Yqh5Zmo6KaB5rGC5a6M5oiQ6aKd5aSW6aqM6K+B5q2l6aqkXG4gICAgICAgICAgPC9wPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8QWxlcnRcbiAgICAgICAgICBzaG93SWNvblxuICAgICAgICAgIGRlc2NyaXB0aW9uPXtg5pyq5rOo5YaM57G75Z6L5Li644CMJHtjaGFsbGVuZ2UudHlwZX3jgI3nmoTmjJHmiJjlpITnkIblmajvvIzor7fogZTns7vns7vnu5/nrqHnkIblkZjjgIJgfVxuICAgICAgICAgIG1lc3NhZ2U9XCLkuI3mlK/mjIHnmoTnmbvlvZXmjJHmiJhcIlxuICAgICAgICAgIHR5cGU9XCJ3YXJuaW5nXCJcbiAgICAgICAgLz5cblxuICAgICAgICA8QnV0dG9uIGJsb2NrIHNpemU9XCJsYXJnZVwiIG9uQ2xpY2s9e29uQ2FuY2VsfT5cbiAgICAgICAgICDov5Tlm57nmbvlvZVcbiAgICAgICAgPC9CdXR0b24+XG4gICAgICA8L1N0YWNrPlxuICAgICk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICB7cmVuZGVyZXIoe1xuICAgICAgICBjaGFsbGVuZ2UsXG4gICAgICAgIHBlbmRpbmcsXG4gICAgICAgIGVuY3J5cHQsXG4gICAgICAgIHJlc29sdmU6IG9uUmVzb2x2ZSxcbiAgICAgICAgY2FuY2VsOiBvbkNhbmNlbFxuICAgICAgfSl9XG4gICAgPC8+XG4gICk7XG59XG5cbmNvbnN0IFRvZGF5ID0gbWVtbygoKSA9PiB7XG4gIGNvbnN0IFt0b2RheSwgc2V0VG9kYXldID0gdXNlU3RhdGUoZ2V0TG9jYWxpemVkRGF0ZVRpbWUpO1xuXG4gIHVzZUludGVydmFsKFxuICAgICgpID0+IHNldFRvZGF5KGdldExvY2FsaXplZERhdGVUaW1lKCkpLFxuICAgIDEwMDAsXG4gICAgeyBhdXRvSW52b2tlOiB0cnVlIH1cbiAgKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY3NzPXtzdHlsZXMuZGF0ZX0+XG4gICAgICA8c3Bhbj7ku4rlpKnmmK8gPC9zcGFuPlxuICAgICAgPHNwYW4gY3NzPXtzdHlsZXMuZGF0ZUhpZ2hsaWdodH0+e3RvZGF5fTwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgKTtcbn0pO1xuVG9kYXkuZGlzcGxheU5hbWUgPSBcIlRvZGF5XCI7XG5cbmNvbnN0IGN1cnJlbnRZZWFyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xuXG5mdW5jdGlvbiBDb3B5cmlnaHQoKSB7XG4gIHJldHVybiAoXG4gICAgPGRpdiBjc3M9e3N0eWxlcy5jb3B5cmlnaHR9PlxuICAgICAgQ29weXJpZ2h0ICZjb3B5O1xuICAgICAge1wiIFwifVxuICAgICAge2N1cnJlbnRZZWFyfVxuICAgICAge1wiIFwifVxuICAgICAgVkVGLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICAgIDwvZGl2PlxuICApO1xufVxuXG5leHBvcnQgeyB0eXBlIExvZ2luQ2hhbGxlbmdlLCB0eXBlIExvZ2luUGFyYW1zLCB0eXBlIExvZ2luUmVzdWx0LCB0eXBlIFBhc3N3b3JkTG9naW5QYXJhbXMsIHR5cGUgUmVzb2x2ZUNoYWxsZW5nZVBhcmFtcyB9IGZyb20gXCIuL3BheWxvYWRcIjtcbmV4cG9ydCB7IHR5cGUgTG9naW5DaGFsbGVuZ2VSZW5kZXJlciwgdHlwZSBMb2dpbkNoYWxsZW5nZVJlbmRlcmVyUHJvcHMsIHR5cGUgTG9naW5Qcm9wcyB9IGZyb20gXCIuL3Byb3BzXCI7XG4iXX0= */`]})]}),(0,s.jsx)(`div`,{css:n.logo,children:u||(0,s.jsx)(i.LogoIcon,{primaryColor:D})}),(0,s.jsxs)(i.Stack,{align:`center`,css:n.leftContent,children:[(0,s.jsxs)(i.Stack,{css:n.title,style:p,children:[(0,s.jsx)(i.SplitText,{delay:80,duration:3,ease:`elastic.out(1, 0.3)`,from:{opacity:0,y:18},rootMargin:`0`,splitType:`chars`,tag:`h1`,text:v,textAlign:`center`,threshold:.1,to:{opacity:1,y:0}}),(0,s.jsx)(`div`,{css:n.description,children:(0,s.jsx)(i.TypingAnimation,{children:x})})]}),(0,s.jsx)(i.Center,{css:n.icon,style:p,children:(0,s.jsx)(t.IconLogin,{})})]}),(0,s.jsxs)(`div`,{css:n.rightContent,children:[(0,s.jsx)(b,{}),A?(0,s.jsx)(y,{challenge:A.challenge,encrypt:P,pending:M,renderers:E,onCancel:V,onResolve:B}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(`div`,{css:n.formHeader,children:[(0,s.jsx)(`h2`,{children:(0,s.jsxs)(i.Group,{align:`center`,gap:`small`,children:[(0,s.jsx)(i.Icon,{component:l.SparklesIcon,css:n.formIcon}),`欢迎回来`]})}),(0,s.jsx)(`p`,{css:n.formSubtitle,children:`请输入您的账号和密码进行登录`})]}),(0,s.jsx)(I,{children:(0,s.jsx)(L,{children:(0,s.jsxs)(i.Stack,{gap:`middle`,children:[(0,s.jsx)(z,{name:`principal`,children:e=>(0,s.jsx)(e.Input,{css:n.formControl,placeholder:`请输入账号`,prefix:m,size:`large`})}),(0,s.jsx)(z,{name:`credentials`,children:e=>(0,s.jsx)(e.Password,{css:n.formControl,placeholder:`请输入密码`,prefix:h,size:`large`})}),(0,s.jsx)(R,{block:!0,css:n.submitButton,size:`large`,children:`登录`})]})})})]}),(0,s.jsx)(S,{})]})]})}function y({challenge:e,pending:t,renderers:r,encrypt:a,onResolve:o,onCancel:c}){let u=r?.[e.type];return u?(0,s.jsx)(s.Fragment,{children:u({challenge:e,pending:t,encrypt:a,resolve:o,cancel:c})}):(0,s.jsxs)(i.Stack,{gap:`middle`,children:[(0,s.jsxs)(`div`,{css:n.formHeader,children:[(0,s.jsx)(`h2`,{children:(0,s.jsxs)(i.Group,{align:`center`,gap:`small`,children:[(0,s.jsx)(i.Icon,{component:l.SparklesIcon,css:n.formIcon}),`继续登录`]})}),(0,s.jsx)(`p`,{css:n.formSubtitle,children:`服务器要求完成额外验证步骤`})]}),(0,s.jsx)(i.Alert,{showIcon:!0,description:`未注册类型为「${e.type}」的挑战处理器,请联系系统管理员。`,message:`不支持的登录挑战`,type:`warning`}),(0,s.jsx)(i.Button,{block:!0,size:`large`,onClick:c,children:`返回登录`})]})}var b=(0,o.memo)(()=>{let[e,t]=(0,o.useState)(a.getLocalizedDateTime);return(0,u.useInterval)(()=>t((0,a.getLocalizedDateTime)()),1e3,{autoInvoke:!0}),(0,s.jsxs)(`div`,{css:n.date,children:[(0,s.jsx)(`span`,{children:`今天是 `}),(0,s.jsx)(`span`,{css:n.dateHighlight,children:e})]})});b.displayName=`Today`;var x=new Date().getFullYear();function S(){return(0,s.jsxs)(`div`,{css:n.copyright,children:[`Copyright ©`,` `,x,` `,`VEF. All rights reserved.`]})}exports.Login=v;
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { jsx as e, jsxs as t } from "@emotion/react/jsx-runtime";
3
3
  //#region src/components/access-denied/access-denied-icon.tsx
4
4
  function n(n) {
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import "../../constants/router.js";
3
3
  import { AccessDeniedIcon as e } from "./access-denied-icon.js";
4
4
  import { Button as t, Center as n, Icon as r, Result as i } from "@vef-framework-react/components";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { setupAppVersionNotification as e } from "../../helpers/app-version.js";
3
3
  import { NProgress as t } from "../n-progress/index.js";
4
4
  import { RouterProvider as n } from "../router-provider/index.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { footer as e, header as t, layout as n, main as r, sidebar as i, sidebarGap as a, tabs as o } from "./styles.js";
3
3
  import { useBaseLayout as s } from "./use-base-layout.js";
4
4
  import { jsx as c, jsxs as l } from "@emotion/react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { globalCssVars as e } from "@vef-framework-react/components";
3
3
  import { css as t } from "@emotion/react";
4
4
  //#region src/components/base-layout/styles.ts
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { isNullish as e } from "@vef-framework-react/shared";
3
3
  import { useMemo as t } from "react";
4
4
  //#region src/components/base-layout/use-base-layout.ts
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { jsx as e, jsxs as t } from "@emotion/react/jsx-runtime";
3
3
  //#region src/components/error/error-icon.tsx
4
4
  function n(n) {
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { ErrorIcon as e } from "./error-icon.js";
3
3
  import { Button as t, Center as n, Icon as r, Result as i, Spin as a, Text as o } from "@vef-framework-react/components";
4
4
  import { motion as s, useQueryErrorResetBoundary as c } from "@vef-framework-react/core";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import "./access-denied/index.js";
3
3
  import "./n-progress/event.js";
4
4
  import "./n-progress/index.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { globalCssVars as e } from "@vef-framework-react/components";
3
3
  import "react";
4
4
  import "@emotion/react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { jsx as e, jsxs as t } from "@emotion/react/jsx-runtime";
3
3
  //#region src/components/layout/components/header/boy-icon.tsx
4
4
  function n(n) {
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import "../../../../constants/router.js";
3
3
  import { useAppStore as e } from "../../../../stores/app.js";
4
4
  import { useRouteFullPath as t } from "../../../../hooks/use-route-full-path.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useThemeStore as e } from "../../../../stores/theme.js";
3
3
  import { useColorSchemeUpdater as t } from "../../hooks/use-color-scheme-updater.js";
4
4
  import { IconButton as n } from "@vef-framework-react/components";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { IconButton as e } from "@vef-framework-react/components";
3
3
  import { isNullish as t } from "@vef-framework-react/shared";
4
4
  import { jsx as n } from "@emotion/react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { jsx as e, jsxs as t } from "@emotion/react/jsx-runtime";
3
3
  //#region src/components/layout/components/header/girl-icon.tsx
4
4
  function n(n) {
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useThemeStore as e } from "../../../../stores/theme.js";
3
3
  import { Logo as t } from "../logo.js";
4
4
  import { Menu as n } from "../menu.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useThemeStore as e } from "../../../../stores/theme.js";
3
3
  import { MenuFoldLeftIcon as t } from "./menu-fold-left-icon.js";
4
4
  import { MenuUnfoldLeftIcon as n } from "./menu-unfold-left-icon.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { jsx as e, jsxs as t } from "@emotion/react/jsx-runtime";
3
3
  //#region src/components/layout/components/header/menu-fold-left-icon.tsx
4
4
  function n({ size: n = "1.2em", ...r }) {
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { jsx as e, jsxs as t } from "@emotion/react/jsx-runtime";
3
3
  //#region src/components/layout/components/header/menu-unfold-left-icon.tsx
4
4
  function n({ size: n = "1.2em", ...r }) {
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useLayoutStore as e } from "../../store.js";
3
3
  import { IconButton as t } from "@vef-framework-react/components";
4
4
  import { jsx as n } from "@emotion/react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useThemeStore as e } from "../../../../stores/theme.js";
3
3
  import { IconButton as t } from "@vef-framework-react/components";
4
4
  import { jsx as n } from "@emotion/react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useAppStore as e } from "../../../../stores/app.js";
3
3
  import { BoyIcon as t } from "./boy-icon.js";
4
4
  import { GirlIcon as n } from "./girl-icon.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { globalCssVars as e } from "@vef-framework-react/components";
3
3
  import { jsx as t, jsxs as n } from "@emotion/react/jsx-runtime";
4
4
  import "@emotion/react";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import "./header/index.js";
3
3
  import "./search/index.js";
4
4
  import "./sidebar.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import "../../../constants/router.js";
3
3
  import { LogoIcon as e, globalCssVars as t, useThemeTokens as n } from "@vef-framework-react/components";
4
4
  import { jsx as r, jsxs as i } from "@emotion/react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useAppStore as e } from "../../../stores/app.js";
3
3
  import { useThemeStore as t } from "../../../stores/theme.js";
4
4
  import { useRouteFullPath as n } from "../../../hooks/use-route-full-path.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useLayoutStore as e } from "../../store.js";
3
3
  import { KeyboardHelp as t } from "./keyboard-help.js";
4
4
  import { SearchResult as n } from "./search-result.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { jsx as e } from "@emotion/react/jsx-runtime";
3
3
  //#region src/components/layout/components/search/keyboard-arrow-down-icon.tsx
4
4
  function t({ size: t = "1.2em", ...n }) {
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { jsx as e } from "@emotion/react/jsx-runtime";
3
3
  //#region src/components/layout/components/search/keyboard-arrow-up-icon.tsx
4
4
  function t({ size: t = "1.2em", ...n }) {
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { jsx as e } from "@emotion/react/jsx-runtime";
3
3
  //#region src/components/layout/components/search/keyboard-control-icon.tsx
4
4
  function t({ size: t = "1.2em", ...n }) {
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { jsx as e } from "@emotion/react/jsx-runtime";
3
3
  //#region src/components/layout/components/search/keyboard-esc-icon.tsx
4
4
  function t({ size: t = "1.2em", ...n }) {
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { Keyboard as e } from "./keyboard.js";
3
3
  import { KeyboardArrowDownIcon as t } from "./keyboard-arrow-down-icon.js";
4
4
  import { KeyboardArrowUpIcon as n } from "./keyboard-arrow-up-icon.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { jsx as e } from "@emotion/react/jsx-runtime";
3
3
  //#region src/components/layout/components/search/keyboard-return-icon.tsx
4
4
  function t({ size: t = "1.2em", ...n }) {
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { jsx as e } from "@emotion/react/jsx-runtime";
3
3
  //#region src/components/layout/components/search/keyboard-shift-icon.tsx
4
4
  function t({ size: t = "1.2em", ...n }) {
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { Keyboard as e, globalCssVars as t, isFragment as n } from "@vef-framework-react/components";
3
3
  import { Children as r } from "react";
4
4
  import { Fragment as i, jsx as a, jsxs as o } from "@emotion/react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { jsx as e } from "@emotion/react/jsx-runtime";
3
3
  //#region src/components/layout/components/search/letter-s-icon.tsx
4
4
  function t({ size: t = "1.2em", ...n }) {
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { KeyboardReturnIcon as e } from "./keyboard-return-icon.js";
3
3
  import { DynamicIcon as t, Icon as n, Text as r, globalCssVars as i } from "@vef-framework-react/components";
4
4
  import { useEffect as a, useRef as o } from "react";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useAppStore as e } from "../../../../stores/app.js";
3
3
  import { useMenuNavigate as t } from "../../hooks/use-menu-navigate.js";
4
4
  import { useLayoutStore as n } from "../../store.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { Logo as e } from "./logo.js";
3
3
  import { Menu as t } from "./menu.js";
4
4
  import { HoneycombPattern as n } from "./honeycomb-pattern.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useTabStore as e } from "../../../../stores/tab.js";
3
3
  import { useTabNavigate as t } from "../../hooks/use-tab-navigate.js";
4
4
  import { Dropdown as n, Icon as r } from "@vef-framework-react/components";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { MainContentMaximum as e } from "./main-content-maximum.js";
3
3
  import { Reload as t } from "./reload.js";
4
4
  import { TabsContainer as n } from "./tabs-container.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useThemeStore as e } from "../../../../stores/theme.js";
3
3
  import { IconButton as t } from "@vef-framework-react/components";
4
4
  import { jsx as n } from "@emotion/react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useRouteFullPath as e } from "../../../../hooks/use-route-full-path.js";
3
3
  import { IconButton as t, emitReloadPage as n } from "@vef-framework-react/components";
4
4
  import { jsx as r } from "@emotion/react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { IconButton as e, globalCssVars as t } from "@vef-framework-react/components";
3
3
  import { motion as n, useSortable as r } from "@vef-framework-react/core";
4
4
  import { jsx as i, jsxs as a } from "@emotion/react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import "../../../../constants/router.js";
3
3
  import { useTabStore as e } from "../../../../stores/tab.js";
4
4
  import { useTabNavigate as t } from "../../hooks/use-tab-navigate.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { TabList as e } from "./tab-list.js";
3
3
  import { ScrollArea as t, globalCssVars as n } from "@vef-framework-react/components";
4
4
  import { clsx as r } from "@vef-framework-react/core";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useThemeStore as e } from "../../../../stores/theme.js";
3
3
  import { useColorSchemeUpdater as t } from "../../hooks/use-color-scheme-updater.js";
4
4
  import { Center as n, Icon as r, Segmented as i, globalCssVars as a } from "@vef-framework-react/components";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useThemeStore as e } from "../../../../stores/theme.js";
3
3
  import { ColorSchemeSwitcher as t } from "./color-scheme-switcher.js";
4
4
  import { ConfigItem as n } from "./config-item.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { globalCssVars as e } from "@vef-framework-react/components";
3
3
  import { jsx as t, jsxs as n } from "@emotion/react/jsx-runtime";
4
4
  import { css as r } from "@emotion/react";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useThemeStore as e } from "../../../../stores/theme.js";
3
3
  import { ColorScheme as t } from "./color-scheme.js";
4
4
  import { MenuLayout as n } from "./menu-layout.js";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { globalCssVars as e } from "@vef-framework-react/components";
3
3
  import { jsx as t, jsxs as n } from "@emotion/react/jsx-runtime";
4
4
  import { css as r } from "@emotion/react";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useThemeStore as e } from "../../../../stores/theme.js";
3
3
  import { MenuLayoutCard as t } from "./menu-layout-card.js";
4
4
  import { Center as n, Tooltip as r } from "@vef-framework-react/components";
@@ -1,4 +1,4 @@
1
- /*! @vef-framework-react/starter v2.1.11 made by Venus | 2026-04-29T08:23:57.110Z */
1
+ /*! @vef-framework-react/starter v2.2.0 made by Venus | 2026-05-18T05:49:20.358Z */
2
2
  import { useThemeStore as e } from "../../../../stores/theme.js";
3
3
  import { Button as t, Icon as n, showSuccessMessage as r } from "@vef-framework-react/components";
4
4
  import { jsx as i } from "@emotion/react/jsx-runtime";