@vef-framework-react/starter 2.1.12 → 2.2.1
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.
- package/dist/cjs/components/login/index.cjs +1 -1
- package/dist/es/components/access-denied/access-denied-icon.js +1 -1
- package/dist/es/components/access-denied/index.js +1 -1
- package/dist/es/components/app/index.js +1 -1
- package/dist/es/components/base-layout/index.js +1 -1
- package/dist/es/components/base-layout/styles.js +1 -1
- package/dist/es/components/base-layout/use-base-layout.js +1 -1
- package/dist/es/components/error/error-icon.js +1 -1
- package/dist/es/components/error/index.js +1 -1
- package/dist/es/components/index.js +1 -1
- package/dist/es/components/layout/components/footer.js +1 -1
- package/dist/es/components/layout/components/header/boy-icon.js +1 -1
- package/dist/es/components/layout/components/header/breadcrumb-navigation.js +1 -1
- package/dist/es/components/layout/components/header/color-scheme.js +1 -1
- package/dist/es/components/layout/components/header/fullscreen.js +1 -1
- package/dist/es/components/layout/components/header/girl-icon.js +1 -1
- package/dist/es/components/layout/components/header/index.js +1 -1
- package/dist/es/components/layout/components/header/menu-burger.js +1 -1
- package/dist/es/components/layout/components/header/menu-fold-left-icon.js +1 -1
- package/dist/es/components/layout/components/header/menu-unfold-left-icon.js +1 -1
- package/dist/es/components/layout/components/header/search.js +1 -1
- package/dist/es/components/layout/components/header/theme-config.js +1 -1
- package/dist/es/components/layout/components/header/user-avatar.js +1 -1
- package/dist/es/components/layout/components/honeycomb-pattern.js +1 -1
- package/dist/es/components/layout/components/index.js +1 -1
- package/dist/es/components/layout/components/logo.js +1 -1
- package/dist/es/components/layout/components/menu.js +1 -1
- package/dist/es/components/layout/components/search/index.js +1 -1
- package/dist/es/components/layout/components/search/keyboard-arrow-down-icon.js +1 -1
- package/dist/es/components/layout/components/search/keyboard-arrow-up-icon.js +1 -1
- package/dist/es/components/layout/components/search/keyboard-control-icon.js +1 -1
- package/dist/es/components/layout/components/search/keyboard-esc-icon.js +1 -1
- package/dist/es/components/layout/components/search/keyboard-help.js +1 -1
- package/dist/es/components/layout/components/search/keyboard-return-icon.js +1 -1
- package/dist/es/components/layout/components/search/keyboard-shift-icon.js +1 -1
- package/dist/es/components/layout/components/search/keyboard.js +1 -1
- package/dist/es/components/layout/components/search/letter-s-icon.js +1 -1
- package/dist/es/components/layout/components/search/search-result-item.js +1 -1
- package/dist/es/components/layout/components/search/search-result.js +1 -1
- package/dist/es/components/layout/components/sidebar.js +1 -1
- package/dist/es/components/layout/components/tabs/context-menu.js +1 -1
- package/dist/es/components/layout/components/tabs/index.js +1 -1
- package/dist/es/components/layout/components/tabs/main-content-maximum.js +1 -1
- package/dist/es/components/layout/components/tabs/reload.js +1 -1
- package/dist/es/components/layout/components/tabs/tab-item.js +1 -1
- package/dist/es/components/layout/components/tabs/tab-list.js +1 -1
- package/dist/es/components/layout/components/tabs/tabs-container.js +1 -1
- package/dist/es/components/layout/components/theme-config/color-scheme-switcher.js +1 -1
- package/dist/es/components/layout/components/theme-config/color-scheme.js +1 -1
- package/dist/es/components/layout/components/theme-config/config-item.js +1 -1
- package/dist/es/components/layout/components/theme-config/index.js +1 -1
- package/dist/es/components/layout/components/theme-config/menu-layout-card.js +1 -1
- package/dist/es/components/layout/components/theme-config/menu-layout.js +1 -1
- package/dist/es/components/layout/components/theme-config/operations.js +1 -1
- package/dist/es/components/layout/components/theme-config/theme-color-picker.js +1 -1
- package/dist/es/components/layout/components/theme-config/theme-colors.js +1 -1
- package/dist/es/components/layout/hooks/index.js +1 -1
- package/dist/es/components/layout/hooks/use-color-scheme-updater.js +1 -1
- package/dist/es/components/layout/hooks/use-menu-navigate.js +1 -1
- package/dist/es/components/layout/hooks/use-tab-navigate.js +1 -1
- package/dist/es/components/layout/index.js +1 -1
- package/dist/es/components/layout/store.js +1 -1
- package/dist/es/components/layout/styles.js +1 -1
- package/dist/es/components/login/icon-login.js +1 -1
- package/dist/es/components/login/index.js +148 -73
- package/dist/es/components/login/styles.js +1 -1
- package/dist/es/components/login/welcome-messages.js +1 -1
- package/dist/es/components/n-progress/components/bar.js +1 -1
- package/dist/es/components/n-progress/components/container.js +1 -1
- package/dist/es/components/n-progress/components/index.js +1 -1
- package/dist/es/components/n-progress/event.js +1 -1
- package/dist/es/components/n-progress/index.js +1 -1
- package/dist/es/components/not-found/index.js +1 -1
- package/dist/es/components/not-found/not-found-icon.js +1 -1
- package/dist/es/components/router-provider/context.js +1 -1
- package/dist/es/components/router-provider/index.js +1 -1
- package/dist/es/components/theme-config-provider/global-style.js +1 -1
- package/dist/es/components/theme-config-provider/index.js +1 -1
- package/dist/es/components/theme-config-provider/use-color-mode-effect.js +1 -1
- package/dist/es/components/theme-config-provider/use-theme-config.js +1 -1
- package/dist/es/constants/event.js +1 -1
- package/dist/es/constants/index.js +1 -1
- package/dist/es/constants/router.js +1 -1
- package/dist/es/constants/storage.js +1 -0
- package/dist/es/helpers/api.js +1 -1
- package/dist/es/helpers/app-version.js +1 -1
- package/dist/es/helpers/app.js +1 -1
- package/dist/es/helpers/auth.js +1 -1
- package/dist/es/helpers/event.js +1 -1
- package/dist/es/helpers/index.js +1 -1
- package/dist/es/helpers/query.js +1 -1
- package/dist/es/helpers/router.js +1 -1
- package/dist/es/hooks/index.js +1 -1
- package/dist/es/hooks/use-route-full-path.js +1 -1
- package/dist/es/index.js +1 -1
- package/dist/es/routes/access-denied.js +1 -1
- package/dist/es/routes/index.js +1 -1
- package/dist/es/routes/layout.js +1 -1
- package/dist/es/routes/login.js +1 -1
- package/dist/es/routes/root.js +1 -1
- package/dist/es/stores/app.js +1 -1
- package/dist/es/stores/index.js +1 -1
- package/dist/es/stores/tab.js +1 -1
- package/dist/es/stores/theme.js +1 -1
- package/dist/types/components/index.d.ts +1 -1
- package/dist/types/components/login/index.d.ts +3 -3
- package/dist/types/components/login/payload.d.ts +33 -14
- package/dist/types/components/login/props.d.ts +92 -4
- package/dist/types/index.d.ts +1 -1
- package/dist/types/types/common.d.ts +25 -1
- 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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnS2EiLCJmaWxlIjoiaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB0eXBlIHsgTG9naW5DaGFsbGVuZ2UsIExvZ2luUGFyYW1zLCBMb2dpblJlc3VsdCB9IGZyb20gXCIuL3BheWxvYWRcIjtcbmltcG9ydCB0eXBlIHsgTG9naW5DaGFsbGVuZ2VSZW5kZXJlciwgTG9naW5DaGFsbGVuZ2VSZW5kZXJlcnMsIExvZ2luUHJvcHMgfSBmcm9tIFwiLi9wcm9wc1wiO1xuXG5pbXBvcnQgeyB1c2VSb3V0ZXIsIHVzZVNlYXJjaCB9IGZyb20gXCJAdGFuc3RhY2svcmVhY3Qtcm91dGVyXCI7XG5pbXBvcnQgeyBBbGVydCwgQnV0dG9uLCBDZW50ZXIsIEdyb3VwLCBJY29uLCBMb2dvSWNvbiwgc2hvd1N1Y2Nlc3NOb3RpZmljYXRpb24sIFNwbGl0VGV4dCwgU3RhY2ssIFR5cGluZ0FuaW1hdGlvbiwgdXNlRm9ybSwgdXNlVGhlbWVUb2tlbnMgfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3QvY29tcG9uZW50c1wiO1xuaW1wb3J0IHsgdXNlSW50ZXJ2YWwgfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3QvaG9va3NcIjtcbmltcG9ydCB7IGVuY3J5cHRVc2luZ1JTQSwgZ2V0TG9jYWxpemVkRGF0ZVRpbWUsIG5vb3AsIHogfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3Qvc2hhcmVkXCI7XG5pbXBvcnQge1xuICBMb2NrS2V5aG9sZUljb24sXG4gIFNwYXJrbGVzSWNvbixcbiAgVXNlclJvdW5kSWNvblxufSBmcm9tIFwibHVjaWRlLXJlYWN0XCI7XG5pbXBvcnQgeyBtZW1vLCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuXG5pbXBvcnQgeyB1c2VBcHBTdG9yZSB9IGZyb20gXCIuLi8uLi9zdG9yZXNcIjtcbmltcG9ydCB7IEljb25Mb2dpbiB9IGZyb20gXCIuL2ljb24tbG9naW5cIjtcbmltcG9ydCAqIGFzIHN0eWxlcyBmcm9tIFwiLi9zdHlsZXNcIjtcbmltcG9ydCB7IGdldFJhbmRvbVdlbGNvbWVNZXNzYWdlIH0gZnJvbSBcIi4vd2VsY29tZS1tZXNzYWdlc1wiO1xuXG5jb25zdCBERUZBVUxUX1RJVExFID0gXCJWRUYg5Lit5ZCO5Y+w566h55CG57O757ufXCI7XG5jb25zdCBERUZBVUxUX0RFU0NSSVBUSU9OID0gXCLkuIDmrL7mnoHluqblv6vpgJ/nmoTlvIDlj5HmoYbmnrYsIOeUqOS6juaehOW7uuS4reWQjuWPsOeuoeeQhuezu+e7n1wiO1xuXG5jb25zdCBsZWZ0Q29udGVudFN0eWxlOiBDU1NQcm9wZXJ0aWVzID0ge1xuICBwb3NpdGlvbjogXCJyZWxhdGl2ZVwiLFxuICB6SW5kZXg6IDFcbn07XG5cbmNvbnN0IHVzZXJJY29uID0gPEljb24gY29tcG9uZW50PXtVc2VyUm91bmRJY29ufSAvPjtcbmNvbnN0IGxvY2tJY29uID0gPEljb24gY29tcG9uZW50PXtMb2NrS2V5aG9sZUljb259IC8+O1xuXG5jb25zdCBsb2dpbkZvcm1TY2hlbWEgPSB6Lm9iamVjdCh7XG4gIHR5cGU6IHoubGl0ZXJhbChcInBhc3N3b3JkXCIpLFxuICBwcmluY2lwYWw6IHouc3RyaW5nKCkubm9uZW1wdHkoXCLor7fovpPlhaXotKblj7dcIiksXG4gIGNyZWRlbnRpYWxzOiB6LnN0cmluZygpLm5vbmVtcHR5KFwi6K+36L6T5YWl5a+G56CBXCIpXG59KTtcblxuY29uc3QgZGVmYXVsdExvZ2luVmFsdWVzOiBMb2dpblBhcmFtcyA9IHtcbiAgdHlwZTogXCJwYXNzd29yZFwiLFxuICBwcmluY2lwYWw6IFwiXCIsXG4gIGNyZWRlbnRpYWxzOiBcIlwiXG59O1xuXG5pbnRlcmZhY2UgUGVuZGluZ0NoYWxsZW5nZSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIGNoYWxsZW5nZTogTG9naW5DaGFsbGVuZ2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBMb2dpbih7XG4gIGxvZ28sXG4gIHRpdGxlID0gREVGQVVMVF9USVRMRSxcbiAgZGVzY3JpcHRpb24gPSBERUZBVUxUX0RFU0NSSVBUSU9OLFxuICBwdWJsaWNLZXksXG4gIG9uTG9naW4sXG4gIG9uUmVzb2x2ZUNoYWxsZW5nZSxcbiAgY2hhbGxlbmdlUmVuZGVyZXJzXG59OiBMb2dpblByb3BzKSB7XG4gIGNvbnN0IHsgY29sb3JQcmltYXJ5IH0gPSB1c2VUaGVtZVRva2VucygpO1xuXG4gIGNvbnN0IHJvdXRlciA9IHVzZVJvdXRlcigpO1xuICBjb25zdCB7IHJlZGlyZWN0IH0gPSB1c2VTZWFyY2goeyBzdHJpY3Q6IGZhbHNlIH0pO1xuXG4gIGNvbnN0IFtwZW5kaW5nQ2hhbGxlbmdlLCBzZXRQZW5kaW5nQ2hhbGxlbmdlXSA9IHVzZVN0YXRlPFBlbmRpbmdDaGFsbGVuZ2UgfCBudWxsPihudWxsKTtcbiAgY29uc3QgW2NoYWxsZW5nZVBlbmRpbmcsIHNldENoYWxsZW5nZVBlbmRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gIGNvbnN0IGVuY3J5cHQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoIXB1YmxpY0tleSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHJldHVybiAocGxhaW50ZXh0OiBzdHJpbmcpID0+IGVuY3J5cHRVc2luZ1JTQShwbGFpbnRleHQsIHB1YmxpY0tleSk7XG4gIH0sIFtwdWJsaWNLZXldKTtcblxuICBhc3luYyBmdW5jdGlvbiBhcHBseUxvZ2luUmVzdWx0KHJlc3VsdDogTG9naW5SZXN1bHQpIHtcbiAgICBpZiAocmVzdWx0LmNoYWxsZW5nZSAmJiByZXN1bHQuY2hhbGxlbmdlVG9rZW4pIHtcbiAgICAgIHNldFBlbmRpbmdDaGFsbGVuZ2Uoe1xuICAgICAgICB0b2tlbjogcmVzdWx0LmNoYWxsZW5nZVRva2VuLFxuICAgICAgICBjaGFsbGVuZ2U6IHJlc3VsdC5jaGFsbGVuZ2VcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghcmVzdWx0LnRva2Vucykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHVzZUFwcFN0b3JlLnNldFN0YXRlKHN0YXRlID0+IHtcbiAgICAgIHN0YXRlLmlzQXV0aGVudGljYXRlZCA9IHRydWU7XG4gICAgICBzdGF0ZS5hdXRoVG9rZW5zID0gcmVzdWx0LnRva2VucztcbiAgICB9KTtcbiAgICBzZXRQZW5kaW5nQ2hhbGxlbmdlKG51bGwpO1xuXG4gICAgYXdhaXQgcm91dGVyLmludmFsaWRhdGUoKTtcbiAgICBhd2FpdCByb3V0ZXIubmF2aWdhdGUoe1xuICAgICAgdG86IHJlZGlyZWN0LFxuICAgICAgcmVwbGFjZTogdHJ1ZVxuICAgIH0pO1xuXG4gICAgc2hvd1N1Y2Nlc3NOb3RpZmljYXRpb24oZ2V0UmFuZG9tV2VsY29tZU1lc3NhZ2UoKSwge1xuICAgICAgdGl0bGU6IHJlc3VsdC5tZXNzYWdlIHx8IFwi55m75b2V5oiQ5YqfXCJcbiAgICB9KTtcbiAgfVxuXG4gIGNvbnN0IHtcbiAgICBBcHBGb3JtLFxuICAgIEZvcm0sXG4gICAgU3VibWl0QnV0dG9uLFxuICAgIEFwcEZpZWxkXG4gIH0gPSB1c2VGb3JtKHtcbiAgICBkZWZhdWx0VmFsdWVzOiBkZWZhdWx0TG9naW5WYWx1ZXMsXG4gICAgdmFsaWRhdG9yczoge1xuICAgICAgb25TdWJtaXQ6IGxvZ2luRm9ybVNjaGVtYVxuICAgIH0sXG4gICAgYXN5bmMgb25TdWJtaXQoeyB2YWx1ZSB9KSB7XG4gICAgICBjb25zdCBjcmVkZW50aWFscyA9IHB1YmxpY0tleVxuICAgICAgICA/IGVuY3J5cHRVc2luZ1JTQSh2YWx1ZS5jcmVkZW50aWFscywgcHVibGljS2V5KVxuICAgICAgICA6IHZhbHVlLmNyZWRlbnRpYWxzO1xuXG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBvbkxvZ2luKHsgLi4udmFsdWUsIGNyZWRlbnRpYWxzIH0pLmNhdGNoKG5vb3ApO1xuXG4gICAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGF3YWl0IGFwcGx5TG9naW5SZXN1bHQocmVzdWx0KTtcbiAgICB9XG4gIH0pO1xuXG4gIGFzeW5jIGZ1bmN0aW9uIHJlc29sdmVDaGFsbGVuZ2UocmVzcG9uc2U6IHVua25vd24pIHtcbiAgICBpZiAoIXBlbmRpbmdDaGFsbGVuZ2UgfHwgIW9uUmVzb2x2ZUNoYWxsZW5nZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHNldENoYWxsZW5nZVBlbmRpbmcodHJ1ZSk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgb25SZXNvbHZlQ2hhbGxlbmdlKHtcbiAgICAgICAgY2hhbGxlbmdlVG9rZW46IHBlbmRpbmdDaGFsbGVuZ2UudG9rZW4sXG4gICAgICAgIHR5cGU6IHBlbmRpbmdDaGFsbGVuZ2UuY2hhbGxlbmdlLnR5cGUsXG4gICAgICAgIHJlc3BvbnNlXG4gICAgICB9KS5jYXRjaChub29wKTtcblxuICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICBhd2FpdCBhcHBseUxvZ2luUmVzdWx0KHJlc3VsdCk7XG4gICAgICB9XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHNldENoYWxsZW5nZVBlbmRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGZ1bmN0aW9uIGNhbmNlbENoYWxsZW5nZSgpIHtcbiAgICBzZXRQZW5kaW5nQ2hhbGxlbmdlKG51bGwpO1xuICAgIHNldENoYWxsZW5nZVBlbmRpbmcoZmFsc2UpO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8R3JvdXAgY3NzPXtzdHlsZXMubG9naW59IGdhcD17MH0ganVzdGlmeT1cImNlbnRlclwiPlxuICAgICAgey8qIEJhY2tncm91bmQgb3JiIGRlY29yYXRpb25zICovfVxuICAgICAgPGRpdiBjc3M9e3N0eWxlcy5iYWNrZ3JvdW5kT3Jic30+XG4gICAgICAgIDxkaXYgY3NzPXtbc3R5bGVzLm9yYiwgc3R5bGVzLm9yYlByaW1hcnldfSAvPlxuICAgICAgICA8ZGl2IGNzcz17W3N0eWxlcy5vcmIsIHN0eWxlcy5vcmJTZWNvbmRhcnldfSAvPlxuICAgICAgICA8ZGl2IGNzcz17W3N0eWxlcy5vcmIsIHN0eWxlcy5vcmJBY2NlbnRdfSAvPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY3NzPXtzdHlsZXMubG9nb30+XG4gICAgICAgIHtsb2dvIHx8IDxMb2dvSWNvbiBwcmltYXJ5Q29sb3I9e2NvbG9yUHJpbWFyeX0gLz59XG4gICAgICA8L2Rpdj5cblxuICAgICAgPFN0YWNrIGFsaWduPVwiY2VudGVyXCIgY3NzPXtzdHlsZXMubGVmdENvbnRlbnR9PlxuICAgICAgICA8U3RhY2sgY3NzPXtzdHlsZXMudGl0bGV9IHN0eWxlPXtsZWZ0Q29udGVudFN0eWxlfT5cbiAgICAgICAgICA8U3BsaXRUZXh0XG4gICAgICAgICAgICBkZWxheT17ODB9XG4gICAgICAgICAgICBkdXJhdGlvbj17M31cbiAgICAgICAgICAgIGVhc2U9XCJlbGFzdGljLm91dCgxLCAwLjMpXCJcbiAgICAgICAgICAgIGZyb209e3sgb3BhY2l0eTogMCwgeTogMTggfX1cbiAgICAgICAgICAgIHJvb3RNYXJnaW49XCIwXCJcbiAgICAgICAgICAgIHNwbGl0VHlwZT1cImNoYXJzXCJcbiAgICAgICAgICAgIHRhZz1cImgxXCJcbiAgICAgICAgICAgIHRleHQ9e3RpdGxlfVxuICAgICAgICAgICAgdGV4dEFsaWduPVwiY2VudGVyXCJcbiAgICAgICAgICAgIHRocmVzaG9sZD17MC4xfVxuICAgICAgICAgICAgdG89e3sgb3BhY2l0eTogMSwgeTogMCB9fVxuICAgICAgICAgIC8+XG5cbiAgICAgICAgICA8ZGl2IGNzcz17c3R5bGVzLmRlc2NyaXB0aW9ufT5cbiAgICAgICAgICAgIDxUeXBpbmdBbmltYXRpb24+e2Rlc2NyaXB0aW9ufTwvVHlwaW5nQW5pbWF0aW9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1N0YWNrPlxuXG4gICAgICAgIDxDZW50ZXIgY3NzPXtzdHlsZXMuaWNvbn0gc3R5bGU9e2xlZnRDb250ZW50U3R5bGV9PlxuICAgICAgICAgIDxJY29uTG9naW4gLz5cbiAgICAgICAgPC9DZW50ZXI+XG4gICAgICA8L1N0YWNrPlxuXG4gICAgICA8ZGl2IGNzcz17c3R5bGVzLnJpZ2h0Q29udGVudH0+XG4gICAgICAgIDxUb2RheSAvPlxuXG4gICAgICAgIHtwZW5kaW5nQ2hhbGxlbmdlXG4gICAgICAgICAgPyAoXG4gICAgICAgICAgICAgIDxDaGFsbGVuZ2VWaWV3XG4gICAgICAgICAgICAgICAgY2hhbGxlbmdlPXtwZW5kaW5nQ2hhbGxlbmdlLmNoYWxsZW5nZX1cbiAgICAgICAgICAgICAgICBlbmNyeXB0PXtlbmNyeXB0fVxuICAgICAgICAgICAgICAgIHBlbmRpbmc9e2NoYWxsZW5nZVBlbmRpbmd9XG4gICAgICAgICAgICAgICAgcmVuZGVyZXJzPXtjaGFsbGVuZ2VSZW5kZXJlcnN9XG4gICAgICAgICAgICAgICAgb25DYW5jZWw9e2NhbmNlbENoYWxsZW5nZX1cbiAgICAgICAgICAgICAgICBvblJlc29sdmU9e3Jlc29sdmVDaGFsbGVuZ2V9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApXG4gICAgICAgICAgOiAoXG4gICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgPGRpdiBjc3M9e3N0eWxlcy5mb3JtSGVhZGVyfT5cbiAgICAgICAgICAgICAgICAgIDxoMj5cbiAgICAgICAgICAgICAgICAgICAgPEdyb3VwIGFsaWduPVwiY2VudGVyXCIgZ2FwPVwic21hbGxcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8SWNvbiBjb21wb25lbnQ9e1NwYXJrbGVzSWNvbn0gY3NzPXtzdHlsZXMuZm9ybUljb259IC8+XG4gICAgICAgICAgICAgICAgICAgICAg5qyi6L+O5Zue5p2lXG4gICAgICAgICAgICAgICAgICAgIDwvR3JvdXA+XG4gICAgICAgICAgICAgICAgICA8L2gyPlxuXG4gICAgICAgICAgICAgICAgICA8cCBjc3M9e3N0eWxlcy5mb3JtU3VidGl0bGV9Puivt+i+k+WFpeaCqOeahOi0puWPt+WSjOWvhueggei/m+ihjOeZu+W9lTwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgIDxBcHBGb3JtPlxuICAgICAgICAgICAgICAgICAgPEZvcm0+XG4gICAgICAgICAgICAgICAgICAgIDxTdGFjayBnYXA9XCJtaWRkbGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8QXBwRmllbGQgbmFtZT1cInByaW5jaXBhbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2ZpZWxkID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZWxkLklucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3NzPXtzdHlsZXMuZm9ybUNvbnRyb2x9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXotKblj7dcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZpeD17dXNlckljb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT1cImxhcmdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPC9BcHBGaWVsZD5cblxuICAgICAgICAgICAgICAgICAgICAgIDxBcHBGaWVsZCBuYW1lPVwiY3JlZGVudGlhbHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtmaWVsZCA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWVsZC5QYXNzd29yZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNzcz17c3R5bGVzLmZvcm1Db250cm9sfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwi6K+36L6T5YWl5a+G56CBXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVmaXg9e2xvY2tJY29ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgIDwvQXBwRmllbGQ+XG5cbiAgICAgICAgICAgICAgICAgICAgICA8U3VibWl0QnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBibG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgY3NzPXtzdHlsZXMuc3VibWl0QnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT1cImxhcmdlXCJcbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICDnmbvlvZVcbiAgICAgICAgICAgICAgICAgICAgICA8L1N1Ym1pdEJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgIDwvRm9ybT5cbiAgICAgICAgICAgICAgICA8L0FwcEZvcm0+XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKX1cblxuICAgICAgICA8Q29weXJpZ2h0IC8+XG4gICAgICA8L2Rpdj5cbiAgICA8L0dyb3VwPlxuICApO1xufVxuXG5pbnRlcmZhY2UgQ2hhbGxlbmdlVmlld1Byb3BzIHtcbiAgY2hhbGxlbmdlOiBMb2dpbkNoYWxsZW5nZTtcbiAgcGVuZGluZzogYm9vbGVhbjtcbiAgcmVuZGVyZXJzPzogTG9naW5DaGFsbGVuZ2VSZW5kZXJlcnM7XG4gIGVuY3J5cHQ/OiAocGxhaW50ZXh0OiBzdHJpbmcpID0+IHN0cmluZztcbiAgb25SZXNvbHZlOiAocmVzcG9uc2U6IHVua25vd24pID0+IFByb21pc2U8dm9pZD47XG4gIG9uQ2FuY2VsOiAoKSA9PiB2b2lkO1xufVxuXG5mdW5jdGlvbiBDaGFsbGVuZ2VWaWV3KHtcbiAgY2hhbGxlbmdlLFxuICBwZW5kaW5nLFxuICByZW5kZXJlcnMsXG4gIGVuY3J5cHQsXG4gIG9uUmVzb2x2ZSxcbiAgb25DYW5jZWxcbn06IENoYWxsZW5nZVZpZXdQcm9wcykge1xuICAvLyBJbmRleGluZyBpbnRvIHRoZSBwZXIta2V5IHJlbmRlcmVyIG1hcCBhdCBydW50aW1lIHlpZWxkcyBhIHVuaW9uIG9mXG4gIC8vIGZ1bmN0aW9uIHR5cGVzOyB3aWRlbiB0byB0aGUgZGVmYXVsdC1nZW5lcmljIGZvcm0gc28gdGhlIGNhbGwgc2l0ZVxuICAvLyBhY2NlcHRzIGBMb2dpbkNoYWxsZW5nZWAgKHRoZSBmdWxsIGRpc2NyaW1pbmF0ZWQgdW5pb24pIGRpcmVjdGx5LlxuICBjb25zdCByZW5kZXJlciA9IHJlbmRlcmVycz8uW2NoYWxsZW5nZS50eXBlXSBhcyBMb2dpbkNoYWxsZW5nZVJlbmRlcmVyIHwgdW5kZWZpbmVkO1xuXG4gIGlmICghcmVuZGVyZXIpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPFN0YWNrIGdhcD1cIm1pZGRsZVwiPlxuICAgICAgICA8ZGl2IGNzcz17c3R5bGVzLmZvcm1IZWFkZXJ9PlxuICAgICAgICAgIDxoMj5cbiAgICAgICAgICAgIDxHcm91cCBhbGlnbj1cImNlbnRlclwiIGdhcD1cInNtYWxsXCI+XG4gICAgICAgICAgICAgIDxJY29uIGNvbXBvbmVudD17U3BhcmtsZXNJY29ufSBjc3M9e3N0eWxlcy5mb3JtSWNvbn0gLz5cbiAgICAgICAgICAgICAg57un57ut55m75b2VXG4gICAgICAgICAgICA8L0dyb3VwPlxuICAgICAgICAgIDwvaDI+XG5cbiAgICAgICAgICA8cCBjc3M9e3N0eWxlcy5mb3JtU3VidGl0bGV9PlxuICAgICAgICAgICAg5pyN5Yqh5Zmo6KaB5rGC5a6M5oiQ6aKd5aSW6aqM6K+B5q2l6aqkXG4gICAgICAgICAgPC9wPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8QWxlcnRcbiAgICAgICAgICBzaG93SWNvblxuICAgICAgICAgIGRlc2NyaXB0aW9uPXtg5pyq5rOo5YaM57G75Z6L5Li644CMJHtjaGFsbGVuZ2UudHlwZX3jgI3nmoTmjJHmiJjlpITnkIblmajvvIzor7fogZTns7vns7vnu5/nrqHnkIblkZjjgIJgfVxuICAgICAgICAgIG1lc3NhZ2U9XCLkuI3mlK/mjIHnmoTnmbvlvZXmjJHmiJhcIlxuICAgICAgICAgIHR5cGU9XCJ3YXJuaW5nXCJcbiAgICAgICAgLz5cblxuICAgICAgICA8QnV0dG9uIGJsb2NrIHNpemU9XCJsYXJnZVwiIG9uQ2xpY2s9e29uQ2FuY2VsfT5cbiAgICAgICAgICDov5Tlm57nmbvlvZVcbiAgICAgICAgPC9CdXR0b24+XG4gICAgICA8L1N0YWNrPlxuICAgICk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICB7cmVuZGVyZXIoe1xuICAgICAgICBjaGFsbGVuZ2UsXG4gICAgICAgIHBlbmRpbmcsXG4gICAgICAgIGVuY3J5cHQsXG4gICAgICAgIHJlc29sdmU6IG9uUmVzb2x2ZSxcbiAgICAgICAgY2FuY2VsOiBvbkNhbmNlbFxuICAgICAgfSl9XG4gICAgPC8+XG4gICk7XG59XG5cbmNvbnN0IFRvZGF5ID0gbWVtbygoKSA9PiB7XG4gIGNvbnN0IFt0b2RheSwgc2V0VG9kYXldID0gdXNlU3RhdGUoZ2V0TG9jYWxpemVkRGF0ZVRpbWUpO1xuXG4gIHVzZUludGVydmFsKFxuICAgICgpID0+IHNldFRvZGF5KGdldExvY2FsaXplZERhdGVUaW1lKCkpLFxuICAgIDEwMDAsXG4gICAgeyBhdXRvSW52b2tlOiB0cnVlIH1cbiAgKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY3NzPXtzdHlsZXMuZGF0ZX0+XG4gICAgICA8c3Bhbj7ku4rlpKnmmK8gPC9zcGFuPlxuICAgICAgPHNwYW4gY3NzPXtzdHlsZXMuZGF0ZUhpZ2hsaWdodH0+e3RvZGF5fTwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgKTtcbn0pO1xuVG9kYXkuZGlzcGxheU5hbWUgPSBcIlRvZGF5XCI7XG5cbmNvbnN0IGN1cnJlbnRZZWFyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xuXG5mdW5jdGlvbiBDb3B5cmlnaHQoKSB7XG4gIHJldHVybiAoXG4gICAgPGRpdiBjc3M9e3N0eWxlcy5jb3B5cmlnaHR9PlxuICAgICAgQ29weXJpZ2h0ICZjb3B5O1xuICAgICAge1wiIFwifVxuICAgICAge2N1cnJlbnRZZWFyfVxuICAgICAge1wiIFwifVxuICAgICAgVkVGLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICAgIDwvZGl2PlxuICApO1xufVxuXG5leHBvcnQgeyB0eXBlIExvZ2luQ2hhbGxlbmdlLCB0eXBlIExvZ2luUGFyYW1zLCB0eXBlIExvZ2luUmVzdWx0LCB0eXBlIFBhc3N3b3JkTG9naW5QYXJhbXMsIHR5cGUgUmVzb2x2ZUNoYWxsZW5nZVBhcmFtcyB9IGZyb20gXCIuL3BheWxvYWRcIjtcbmV4cG9ydCB7IHR5cGUgTG9naW5DaGFsbGVuZ2VSZW5kZXJlciwgdHlwZSBMb2dpbkNoYWxsZW5nZVJlbmRlcmVyUHJvcHMsIHR5cGUgTG9naW5DaGFsbGVuZ2VSZW5kZXJlcnMsIHR5cGUgTG9naW5Qcm9wcyB9IGZyb20gXCIuL3Byb3BzXCI7XG4iXX0= */`]}),(0,s.jsx)(`div`,{css:[n.orb,n.orbSecondary,process.env.NODE_ENV===`production`?``:`/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpS2EiLCJmaWxlIjoiaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB0eXBlIHsgTG9naW5DaGFsbGVuZ2UsIExvZ2luUGFyYW1zLCBMb2dpblJlc3VsdCB9IGZyb20gXCIuL3BheWxvYWRcIjtcbmltcG9ydCB0eXBlIHsgTG9naW5DaGFsbGVuZ2VSZW5kZXJlciwgTG9naW5DaGFsbGVuZ2VSZW5kZXJlcnMsIExvZ2luUHJvcHMgfSBmcm9tIFwiLi9wcm9wc1wiO1xuXG5pbXBvcnQgeyB1c2VSb3V0ZXIsIHVzZVNlYXJjaCB9IGZyb20gXCJAdGFuc3RhY2svcmVhY3Qtcm91dGVyXCI7XG5pbXBvcnQgeyBBbGVydCwgQnV0dG9uLCBDZW50ZXIsIEdyb3VwLCBJY29uLCBMb2dvSWNvbiwgc2hvd1N1Y2Nlc3NOb3RpZmljYXRpb24sIFNwbGl0VGV4dCwgU3RhY2ssIFR5cGluZ0FuaW1hdGlvbiwgdXNlRm9ybSwgdXNlVGhlbWVUb2tlbnMgfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3QvY29tcG9uZW50c1wiO1xuaW1wb3J0IHsgdXNlSW50ZXJ2YWwgfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3QvaG9va3NcIjtcbmltcG9ydCB7IGVuY3J5cHRVc2luZ1JTQSwgZ2V0TG9jYWxpemVkRGF0ZVRpbWUsIG5vb3AsIHogfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3Qvc2hhcmVkXCI7XG5pbXBvcnQge1xuICBMb2NrS2V5aG9sZUljb24sXG4gIFNwYXJrbGVzSWNvbixcbiAgVXNlclJvdW5kSWNvblxufSBmcm9tIFwibHVjaWRlLXJlYWN0XCI7XG5pbXBvcnQgeyBtZW1vLCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuXG5pbXBvcnQgeyB1c2VBcHBTdG9yZSB9IGZyb20gXCIuLi8uLi9zdG9yZXNcIjtcbmltcG9ydCB7IEljb25Mb2dpbiB9IGZyb20gXCIuL2ljb24tbG9naW5cIjtcbmltcG9ydCAqIGFzIHN0eWxlcyBmcm9tIFwiLi9zdHlsZXNcIjtcbmltcG9ydCB7IGdldFJhbmRvbVdlbGNvbWVNZXNzYWdlIH0gZnJvbSBcIi4vd2VsY29tZS1tZXNzYWdlc1wiO1xuXG5jb25zdCBERUZBVUxUX1RJVExFID0gXCJWRUYg5Lit5ZCO5Y+w566h55CG57O757ufXCI7XG5jb25zdCBERUZBVUxUX0RFU0NSSVBUSU9OID0gXCLkuIDmrL7mnoHluqblv6vpgJ/nmoTlvIDlj5HmoYbmnrYsIOeUqOS6juaehOW7uuS4reWQjuWPsOeuoeeQhuezu+e7n1wiO1xuXG5jb25zdCBsZWZ0Q29udGVudFN0eWxlOiBDU1NQcm9wZXJ0aWVzID0ge1xuICBwb3NpdGlvbjogXCJyZWxhdGl2ZVwiLFxuICB6SW5kZXg6IDFcbn07XG5cbmNvbnN0IHVzZXJJY29uID0gPEljb24gY29tcG9uZW50PXtVc2VyUm91bmRJY29ufSAvPjtcbmNvbnN0IGxvY2tJY29uID0gPEljb24gY29tcG9uZW50PXtMb2NrS2V5aG9sZUljb259IC8+O1xuXG5jb25zdCBsb2dpbkZvcm1TY2hlbWEgPSB6Lm9iamVjdCh7XG4gIHR5cGU6IHoubGl0ZXJhbChcInBhc3N3b3JkXCIpLFxuICBwcmluY2lwYWw6IHouc3RyaW5nKCkubm9uZW1wdHkoXCLor7fovpPlhaXotKblj7dcIiksXG4gIGNyZWRlbnRpYWxzOiB6LnN0cmluZygpLm5vbmVtcHR5KFwi6K+36L6T5YWl5a+G56CBXCIpXG59KTtcblxuY29uc3QgZGVmYXVsdExvZ2luVmFsdWVzOiBMb2dpblBhcmFtcyA9IHtcbiAgdHlwZTogXCJwYXNzd29yZFwiLFxuICBwcmluY2lwYWw6IFwiXCIsXG4gIGNyZWRlbnRpYWxzOiBcIlwiXG59O1xuXG5pbnRlcmZhY2UgUGVuZGluZ0NoYWxsZW5nZSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIGNoYWxsZW5nZTogTG9naW5DaGFsbGVuZ2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBMb2dpbih7XG4gIGxvZ28sXG4gIHRpdGxlID0gREVGQVVMVF9USVRMRSxcbiAgZGVzY3JpcHRpb24gPSBERUZBVUxUX0RFU0NSSVBUSU9OLFxuICBwdWJsaWNLZXksXG4gIG9uTG9naW4sXG4gIG9uUmVzb2x2ZUNoYWxsZW5nZSxcbiAgY2hhbGxlbmdlUmVuZGVyZXJzXG59OiBMb2dpblByb3BzKSB7XG4gIGNvbnN0IHsgY29sb3JQcmltYXJ5IH0gPSB1c2VUaGVtZVRva2VucygpO1xuXG4gIGNvbnN0IHJvdXRlciA9IHVzZVJvdXRlcigpO1xuICBjb25zdCB7IHJlZGlyZWN0IH0gPSB1c2VTZWFyY2goeyBzdHJpY3Q6IGZhbHNlIH0pO1xuXG4gIGNvbnN0IFtwZW5kaW5nQ2hhbGxlbmdlLCBzZXRQZW5kaW5nQ2hhbGxlbmdlXSA9IHVzZVN0YXRlPFBlbmRpbmdDaGFsbGVuZ2UgfCBudWxsPihudWxsKTtcbiAgY29uc3QgW2NoYWxsZW5nZVBlbmRpbmcsIHNldENoYWxsZW5nZVBlbmRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gIGNvbnN0IGVuY3J5cHQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoIXB1YmxpY0tleSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHJldHVybiAocGxhaW50ZXh0OiBzdHJpbmcpID0+IGVuY3J5cHRVc2luZ1JTQShwbGFpbnRleHQsIHB1YmxpY0tleSk7XG4gIH0sIFtwdWJsaWNLZXldKTtcblxuICBhc3luYyBmdW5jdGlvbiBhcHBseUxvZ2luUmVzdWx0KHJlc3VsdDogTG9naW5SZXN1bHQpIHtcbiAgICBpZiAocmVzdWx0LmNoYWxsZW5nZSAmJiByZXN1bHQuY2hhbGxlbmdlVG9rZW4pIHtcbiAgICAgIHNldFBlbmRpbmdDaGFsbGVuZ2Uoe1xuICAgICAgICB0b2tlbjogcmVzdWx0LmNoYWxsZW5nZVRva2VuLFxuICAgICAgICBjaGFsbGVuZ2U6IHJlc3VsdC5jaGFsbGVuZ2VcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghcmVzdWx0LnRva2Vucykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHVzZUFwcFN0b3JlLnNldFN0YXRlKHN0YXRlID0+IHtcbiAgICAgIHN0YXRlLmlzQXV0aGVudGljYXRlZCA9IHRydWU7XG4gICAgICBzdGF0ZS5hdXRoVG9rZW5zID0gcmVzdWx0LnRva2VucztcbiAgICB9KTtcbiAgICBzZXRQZW5kaW5nQ2hhbGxlbmdlKG51bGwpO1xuXG4gICAgYXdhaXQgcm91dGVyLmludmFsaWRhdGUoKTtcbiAgICBhd2FpdCByb3V0ZXIubmF2aWdhdGUoe1xuICAgICAgdG86IHJlZGlyZWN0LFxuICAgICAgcmVwbGFjZTogdHJ1ZVxuICAgIH0pO1xuXG4gICAgc2hvd1N1Y2Nlc3NOb3RpZmljYXRpb24oZ2V0UmFuZG9tV2VsY29tZU1lc3NhZ2UoKSwge1xuICAgICAgdGl0bGU6IHJlc3VsdC5tZXNzYWdlIHx8IFwi55m75b2V5oiQ5YqfXCJcbiAgICB9KTtcbiAgfVxuXG4gIGNvbnN0IHtcbiAgICBBcHBGb3JtLFxuICAgIEZvcm0sXG4gICAgU3VibWl0QnV0dG9uLFxuICAgIEFwcEZpZWxkXG4gIH0gPSB1c2VGb3JtKHtcbiAgICBkZWZhdWx0VmFsdWVzOiBkZWZhdWx0TG9naW5WYWx1ZXMsXG4gICAgdmFsaWRhdG9yczoge1xuICAgICAgb25TdWJtaXQ6IGxvZ2luRm9ybVNjaGVtYVxuICAgIH0sXG4gICAgYXN5bmMgb25TdWJtaXQoeyB2YWx1ZSB9KSB7XG4gICAgICBjb25zdCBjcmVkZW50aWFscyA9IHB1YmxpY0tleVxuICAgICAgICA/IGVuY3J5cHRVc2luZ1JTQSh2YWx1ZS5jcmVkZW50aWFscywgcHVibGljS2V5KVxuICAgICAgICA6IHZhbHVlLmNyZWRlbnRpYWxzO1xuXG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBvbkxvZ2luKHsgLi4udmFsdWUsIGNyZWRlbnRpYWxzIH0pLmNhdGNoKG5vb3ApO1xuXG4gICAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGF3YWl0IGFwcGx5TG9naW5SZXN1bHQocmVzdWx0KTtcbiAgICB9XG4gIH0pO1xuXG4gIGFzeW5jIGZ1bmN0aW9uIHJlc29sdmVDaGFsbGVuZ2UocmVzcG9uc2U6IHVua25vd24pIHtcbiAgICBpZiAoIXBlbmRpbmdDaGFsbGVuZ2UgfHwgIW9uUmVzb2x2ZUNoYWxsZW5nZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHNldENoYWxsZW5nZVBlbmRpbmcodHJ1ZSk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgb25SZXNvbHZlQ2hhbGxlbmdlKHtcbiAgICAgICAgY2hhbGxlbmdlVG9rZW46IHBlbmRpbmdDaGFsbGVuZ2UudG9rZW4sXG4gICAgICAgIHR5cGU6IHBlbmRpbmdDaGFsbGVuZ2UuY2hhbGxlbmdlLnR5cGUsXG4gICAgICAgIHJlc3BvbnNlXG4gICAgICB9KS5jYXRjaChub29wKTtcblxuICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICBhd2FpdCBhcHBseUxvZ2luUmVzdWx0KHJlc3VsdCk7XG4gICAgICB9XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHNldENoYWxsZW5nZVBlbmRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGZ1bmN0aW9uIGNhbmNlbENoYWxsZW5nZSgpIHtcbiAgICBzZXRQZW5kaW5nQ2hhbGxlbmdlKG51bGwpO1xuICAgIHNldENoYWxsZW5nZVBlbmRpbmcoZmFsc2UpO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8R3JvdXAgY3NzPXtzdHlsZXMubG9naW59IGdhcD17MH0ganVzdGlmeT1cImNlbnRlclwiPlxuICAgICAgey8qIEJhY2tncm91bmQgb3JiIGRlY29yYXRpb25zICovfVxuICAgICAgPGRpdiBjc3M9e3N0eWxlcy5iYWNrZ3JvdW5kT3Jic30+XG4gICAgICAgIDxkaXYgY3NzPXtbc3R5bGVzLm9yYiwgc3R5bGVzLm9yYlByaW1hcnldfSAvPlxuICAgICAgICA8ZGl2IGNzcz17W3N0eWxlcy5vcmIsIHN0eWxlcy5vcmJTZWNvbmRhcnldfSAvPlxuICAgICAgICA8ZGl2IGNzcz17W3N0eWxlcy5vcmIsIHN0eWxlcy5vcmJBY2NlbnRdfSAvPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY3NzPXtzdHlsZXMubG9nb30+XG4gICAgICAgIHtsb2dvIHx8IDxMb2dvSWNvbiBwcmltYXJ5Q29sb3I9e2NvbG9yUHJpbWFyeX0gLz59XG4gICAgICA8L2Rpdj5cblxuICAgICAgPFN0YWNrIGFsaWduPVwiY2VudGVyXCIgY3NzPXtzdHlsZXMubGVmdENvbnRlbnR9PlxuICAgICAgICA8U3RhY2sgY3NzPXtzdHlsZXMudGl0bGV9IHN0eWxlPXtsZWZ0Q29udGVudFN0eWxlfT5cbiAgICAgICAgICA8U3BsaXRUZXh0XG4gICAgICAgICAgICBkZWxheT17ODB9XG4gICAgICAgICAgICBkdXJhdGlvbj17M31cbiAgICAgICAgICAgIGVhc2U9XCJlbGFzdGljLm91dCgxLCAwLjMpXCJcbiAgICAgICAgICAgIGZyb209e3sgb3BhY2l0eTogMCwgeTogMTggfX1cbiAgICAgICAgICAgIHJvb3RNYXJnaW49XCIwXCJcbiAgICAgICAgICAgIHNwbGl0VHlwZT1cImNoYXJzXCJcbiAgICAgICAgICAgIHRhZz1cImgxXCJcbiAgICAgICAgICAgIHRleHQ9e3RpdGxlfVxuICAgICAgICAgICAgdGV4dEFsaWduPVwiY2VudGVyXCJcbiAgICAgICAgICAgIHRocmVzaG9sZD17MC4xfVxuICAgICAgICAgICAgdG89e3sgb3BhY2l0eTogMSwgeTogMCB9fVxuICAgICAgICAgIC8+XG5cbiAgICAgICAgICA8ZGl2IGNzcz17c3R5bGVzLmRlc2NyaXB0aW9ufT5cbiAgICAgICAgICAgIDxUeXBpbmdBbmltYXRpb24+e2Rlc2NyaXB0aW9ufTwvVHlwaW5nQW5pbWF0aW9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1N0YWNrPlxuXG4gICAgICAgIDxDZW50ZXIgY3NzPXtzdHlsZXMuaWNvbn0gc3R5bGU9e2xlZnRDb250ZW50U3R5bGV9PlxuICAgICAgICAgIDxJY29uTG9naW4gLz5cbiAgICAgICAgPC9DZW50ZXI+XG4gICAgICA8L1N0YWNrPlxuXG4gICAgICA8ZGl2IGNzcz17c3R5bGVzLnJpZ2h0Q29udGVudH0+XG4gICAgICAgIDxUb2RheSAvPlxuXG4gICAgICAgIHtwZW5kaW5nQ2hhbGxlbmdlXG4gICAgICAgICAgPyAoXG4gICAgICAgICAgICAgIDxDaGFsbGVuZ2VWaWV3XG4gICAgICAgICAgICAgICAgY2hhbGxlbmdlPXtwZW5kaW5nQ2hhbGxlbmdlLmNoYWxsZW5nZX1cbiAgICAgICAgICAgICAgICBlbmNyeXB0PXtlbmNyeXB0fVxuICAgICAgICAgICAgICAgIHBlbmRpbmc9e2NoYWxsZW5nZVBlbmRpbmd9XG4gICAgICAgICAgICAgICAgcmVuZGVyZXJzPXtjaGFsbGVuZ2VSZW5kZXJlcnN9XG4gICAgICAgICAgICAgICAgb25DYW5jZWw9e2NhbmNlbENoYWxsZW5nZX1cbiAgICAgICAgICAgICAgICBvblJlc29sdmU9e3Jlc29sdmVDaGFsbGVuZ2V9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApXG4gICAgICAgICAgOiAoXG4gICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgPGRpdiBjc3M9e3N0eWxlcy5mb3JtSGVhZGVyfT5cbiAgICAgICAgICAgICAgICAgIDxoMj5cbiAgICAgICAgICAgICAgICAgICAgPEdyb3VwIGFsaWduPVwiY2VudGVyXCIgZ2FwPVwic21hbGxcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8SWNvbiBjb21wb25lbnQ9e1NwYXJrbGVzSWNvbn0gY3NzPXtzdHlsZXMuZm9ybUljb259IC8+XG4gICAgICAgICAgICAgICAgICAgICAg5qyi6L+O5Zue5p2lXG4gICAgICAgICAgICAgICAgICAgIDwvR3JvdXA+XG4gICAgICAgICAgICAgICAgICA8L2gyPlxuXG4gICAgICAgICAgICAgICAgICA8cCBjc3M9e3N0eWxlcy5mb3JtU3VidGl0bGV9Puivt+i+k+WFpeaCqOeahOi0puWPt+WSjOWvhueggei/m+ihjOeZu+W9lTwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgIDxBcHBGb3JtPlxuICAgICAgICAgICAgICAgICAgPEZvcm0+XG4gICAgICAgICAgICAgICAgICAgIDxTdGFjayBnYXA9XCJtaWRkbGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8QXBwRmllbGQgbmFtZT1cInByaW5jaXBhbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2ZpZWxkID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZWxkLklucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3NzPXtzdHlsZXMuZm9ybUNvbnRyb2x9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXotKblj7dcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZpeD17dXNlckljb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT1cImxhcmdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPC9BcHBGaWVsZD5cblxuICAgICAgICAgICAgICAgICAgICAgIDxBcHBGaWVsZCBuYW1lPVwiY3JlZGVudGlhbHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtmaWVsZCA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWVsZC5QYXNzd29yZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNzcz17c3R5bGVzLmZvcm1Db250cm9sfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwi6K+36L6T5YWl5a+G56CBXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVmaXg9e2xvY2tJY29ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgIDwvQXBwRmllbGQ+XG5cbiAgICAgICAgICAgICAgICAgICAgICA8U3VibWl0QnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBibG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgY3NzPXtzdHlsZXMuc3VibWl0QnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT1cImxhcmdlXCJcbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICDnmbvlvZVcbiAgICAgICAgICAgICAgICAgICAgICA8L1N1Ym1pdEJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgIDwvRm9ybT5cbiAgICAgICAgICAgICAgICA8L0FwcEZvcm0+XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKX1cblxuICAgICAgICA8Q29weXJpZ2h0IC8+XG4gICAgICA8L2Rpdj5cbiAgICA8L0dyb3VwPlxuICApO1xufVxuXG5pbnRlcmZhY2UgQ2hhbGxlbmdlVmlld1Byb3BzIHtcbiAgY2hhbGxlbmdlOiBMb2dpbkNoYWxsZW5nZTtcbiAgcGVuZGluZzogYm9vbGVhbjtcbiAgcmVuZGVyZXJzPzogTG9naW5DaGFsbGVuZ2VSZW5kZXJlcnM7XG4gIGVuY3J5cHQ/OiAocGxhaW50ZXh0OiBzdHJpbmcpID0+IHN0cmluZztcbiAgb25SZXNvbHZlOiAocmVzcG9uc2U6IHVua25vd24pID0+IFByb21pc2U8dm9pZD47XG4gIG9uQ2FuY2VsOiAoKSA9PiB2b2lkO1xufVxuXG5mdW5jdGlvbiBDaGFsbGVuZ2VWaWV3KHtcbiAgY2hhbGxlbmdlLFxuICBwZW5kaW5nLFxuICByZW5kZXJlcnMsXG4gIGVuY3J5cHQsXG4gIG9uUmVzb2x2ZSxcbiAgb25DYW5jZWxcbn06IENoYWxsZW5nZVZpZXdQcm9wcykge1xuICAvLyBJbmRleGluZyBpbnRvIHRoZSBwZXIta2V5IHJlbmRlcmVyIG1hcCBhdCBydW50aW1lIHlpZWxkcyBhIHVuaW9uIG9mXG4gIC8vIGZ1bmN0aW9uIHR5cGVzOyB3aWRlbiB0byB0aGUgZGVmYXVsdC1nZW5lcmljIGZvcm0gc28gdGhlIGNhbGwgc2l0ZVxuICAvLyBhY2NlcHRzIGBMb2dpbkNoYWxsZW5nZWAgKHRoZSBmdWxsIGRpc2NyaW1pbmF0ZWQgdW5pb24pIGRpcmVjdGx5LlxuICBjb25zdCByZW5kZXJlciA9IHJlbmRlcmVycz8uW2NoYWxsZW5nZS50eXBlXSBhcyBMb2dpbkNoYWxsZW5nZVJlbmRlcmVyIHwgdW5kZWZpbmVkO1xuXG4gIGlmICghcmVuZGVyZXIpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPFN0YWNrIGdhcD1cIm1pZGRsZVwiPlxuICAgICAgICA8ZGl2IGNzcz17c3R5bGVzLmZvcm1IZWFkZXJ9PlxuICAgICAgICAgIDxoMj5cbiAgICAgICAgICAgIDxHcm91cCBhbGlnbj1cImNlbnRlclwiIGdhcD1cInNtYWxsXCI+XG4gICAgICAgICAgICAgIDxJY29uIGNvbXBvbmVudD17U3BhcmtsZXNJY29ufSBjc3M9e3N0eWxlcy5mb3JtSWNvbn0gLz5cbiAgICAgICAgICAgICAg57un57ut55m75b2VXG4gICAgICAgICAgICA8L0dyb3VwPlxuICAgICAgICAgIDwvaDI+XG5cbiAgICAgICAgICA8cCBjc3M9e3N0eWxlcy5mb3JtU3VidGl0bGV9PlxuICAgICAgICAgICAg5pyN5Yqh5Zmo6KaB5rGC5a6M5oiQ6aKd5aSW6aqM6K+B5q2l6aqkXG4gICAgICAgICAgPC9wPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8QWxlcnRcbiAgICAgICAgICBzaG93SWNvblxuICAgICAgICAgIGRlc2NyaXB0aW9uPXtg5pyq5rOo5YaM57G75Z6L5Li644CMJHtjaGFsbGVuZ2UudHlwZX3jgI3nmoTmjJHmiJjlpITnkIblmajvvIzor7fogZTns7vns7vnu5/nrqHnkIblkZjjgIJgfVxuICAgICAgICAgIG1lc3NhZ2U9XCLkuI3mlK/mjIHnmoTnmbvlvZXmjJHmiJhcIlxuICAgICAgICAgIHR5cGU9XCJ3YXJuaW5nXCJcbiAgICAgICAgLz5cblxuICAgICAgICA8QnV0dG9uIGJsb2NrIHNpemU9XCJsYXJnZVwiIG9uQ2xpY2s9e29uQ2FuY2VsfT5cbiAgICAgICAgICDov5Tlm57nmbvlvZVcbiAgICAgICAgPC9CdXR0b24+XG4gICAgICA8L1N0YWNrPlxuICAgICk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICB7cmVuZGVyZXIoe1xuICAgICAgICBjaGFsbGVuZ2UsXG4gICAgICAgIHBlbmRpbmcsXG4gICAgICAgIGVuY3J5cHQsXG4gICAgICAgIHJlc29sdmU6IG9uUmVzb2x2ZSxcbiAgICAgICAgY2FuY2VsOiBvbkNhbmNlbFxuICAgICAgfSl9XG4gICAgPC8+XG4gICk7XG59XG5cbmNvbnN0IFRvZGF5ID0gbWVtbygoKSA9PiB7XG4gIGNvbnN0IFt0b2RheSwgc2V0VG9kYXldID0gdXNlU3RhdGUoZ2V0TG9jYWxpemVkRGF0ZVRpbWUpO1xuXG4gIHVzZUludGVydmFsKFxuICAgICgpID0+IHNldFRvZGF5KGdldExvY2FsaXplZERhdGVUaW1lKCkpLFxuICAgIDEwMDAsXG4gICAgeyBhdXRvSW52b2tlOiB0cnVlIH1cbiAgKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY3NzPXtzdHlsZXMuZGF0ZX0+XG4gICAgICA8c3Bhbj7ku4rlpKnmmK8gPC9zcGFuPlxuICAgICAgPHNwYW4gY3NzPXtzdHlsZXMuZGF0ZUhpZ2hsaWdodH0+e3RvZGF5fTwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgKTtcbn0pO1xuVG9kYXkuZGlzcGxheU5hbWUgPSBcIlRvZGF5XCI7XG5cbmNvbnN0IGN1cnJlbnRZZWFyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xuXG5mdW5jdGlvbiBDb3B5cmlnaHQoKSB7XG4gIHJldHVybiAoXG4gICAgPGRpdiBjc3M9e3N0eWxlcy5jb3B5cmlnaHR9PlxuICAgICAgQ29weXJpZ2h0ICZjb3B5O1xuICAgICAge1wiIFwifVxuICAgICAge2N1cnJlbnRZZWFyfVxuICAgICAge1wiIFwifVxuICAgICAgVkVGLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICAgIDwvZGl2PlxuICApO1xufVxuXG5leHBvcnQgeyB0eXBlIExvZ2luQ2hhbGxlbmdlLCB0eXBlIExvZ2luUGFyYW1zLCB0eXBlIExvZ2luUmVzdWx0LCB0eXBlIFBhc3N3b3JkTG9naW5QYXJhbXMsIHR5cGUgUmVzb2x2ZUNoYWxsZW5nZVBhcmFtcyB9IGZyb20gXCIuL3BheWxvYWRcIjtcbmV4cG9ydCB7IHR5cGUgTG9naW5DaGFsbGVuZ2VSZW5kZXJlciwgdHlwZSBMb2dpbkNoYWxsZW5nZVJlbmRlcmVyUHJvcHMsIHR5cGUgTG9naW5DaGFsbGVuZ2VSZW5kZXJlcnMsIHR5cGUgTG9naW5Qcm9wcyB9IGZyb20gXCIuL3Byb3BzXCI7XG4iXX0= */`]}),(0,s.jsx)(`div`,{css:[n.orb,n.orbAccent,process.env.NODE_ENV===`production`?``:`/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrS2EiLCJmaWxlIjoiaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB0eXBlIHsgTG9naW5DaGFsbGVuZ2UsIExvZ2luUGFyYW1zLCBMb2dpblJlc3VsdCB9IGZyb20gXCIuL3BheWxvYWRcIjtcbmltcG9ydCB0eXBlIHsgTG9naW5DaGFsbGVuZ2VSZW5kZXJlciwgTG9naW5DaGFsbGVuZ2VSZW5kZXJlcnMsIExvZ2luUHJvcHMgfSBmcm9tIFwiLi9wcm9wc1wiO1xuXG5pbXBvcnQgeyB1c2VSb3V0ZXIsIHVzZVNlYXJjaCB9IGZyb20gXCJAdGFuc3RhY2svcmVhY3Qtcm91dGVyXCI7XG5pbXBvcnQgeyBBbGVydCwgQnV0dG9uLCBDZW50ZXIsIEdyb3VwLCBJY29uLCBMb2dvSWNvbiwgc2hvd1N1Y2Nlc3NOb3RpZmljYXRpb24sIFNwbGl0VGV4dCwgU3RhY2ssIFR5cGluZ0FuaW1hdGlvbiwgdXNlRm9ybSwgdXNlVGhlbWVUb2tlbnMgfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3QvY29tcG9uZW50c1wiO1xuaW1wb3J0IHsgdXNlSW50ZXJ2YWwgfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3QvaG9va3NcIjtcbmltcG9ydCB7IGVuY3J5cHRVc2luZ1JTQSwgZ2V0TG9jYWxpemVkRGF0ZVRpbWUsIG5vb3AsIHogfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3Qvc2hhcmVkXCI7XG5pbXBvcnQge1xuICBMb2NrS2V5aG9sZUljb24sXG4gIFNwYXJrbGVzSWNvbixcbiAgVXNlclJvdW5kSWNvblxufSBmcm9tIFwibHVjaWRlLXJlYWN0XCI7XG5pbXBvcnQgeyBtZW1vLCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuXG5pbXBvcnQgeyB1c2VBcHBTdG9yZSB9IGZyb20gXCIuLi8uLi9zdG9yZXNcIjtcbmltcG9ydCB7IEljb25Mb2dpbiB9IGZyb20gXCIuL2ljb24tbG9naW5cIjtcbmltcG9ydCAqIGFzIHN0eWxlcyBmcm9tIFwiLi9zdHlsZXNcIjtcbmltcG9ydCB7IGdldFJhbmRvbVdlbGNvbWVNZXNzYWdlIH0gZnJvbSBcIi4vd2VsY29tZS1tZXNzYWdlc1wiO1xuXG5jb25zdCBERUZBVUxUX1RJVExFID0gXCJWRUYg5Lit5ZCO5Y+w566h55CG57O757ufXCI7XG5jb25zdCBERUZBVUxUX0RFU0NSSVBUSU9OID0gXCLkuIDmrL7mnoHluqblv6vpgJ/nmoTlvIDlj5HmoYbmnrYsIOeUqOS6juaehOW7uuS4reWQjuWPsOeuoeeQhuezu+e7n1wiO1xuXG5jb25zdCBsZWZ0Q29udGVudFN0eWxlOiBDU1NQcm9wZXJ0aWVzID0ge1xuICBwb3NpdGlvbjogXCJyZWxhdGl2ZVwiLFxuICB6SW5kZXg6IDFcbn07XG5cbmNvbnN0IHVzZXJJY29uID0gPEljb24gY29tcG9uZW50PXtVc2VyUm91bmRJY29ufSAvPjtcbmNvbnN0IGxvY2tJY29uID0gPEljb24gY29tcG9uZW50PXtMb2NrS2V5aG9sZUljb259IC8+O1xuXG5jb25zdCBsb2dpbkZvcm1TY2hlbWEgPSB6Lm9iamVjdCh7XG4gIHR5cGU6IHoubGl0ZXJhbChcInBhc3N3b3JkXCIpLFxuICBwcmluY2lwYWw6IHouc3RyaW5nKCkubm9uZW1wdHkoXCLor7fovpPlhaXotKblj7dcIiksXG4gIGNyZWRlbnRpYWxzOiB6LnN0cmluZygpLm5vbmVtcHR5KFwi6K+36L6T5YWl5a+G56CBXCIpXG59KTtcblxuY29uc3QgZGVmYXVsdExvZ2luVmFsdWVzOiBMb2dpblBhcmFtcyA9IHtcbiAgdHlwZTogXCJwYXNzd29yZFwiLFxuICBwcmluY2lwYWw6IFwiXCIsXG4gIGNyZWRlbnRpYWxzOiBcIlwiXG59O1xuXG5pbnRlcmZhY2UgUGVuZGluZ0NoYWxsZW5nZSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIGNoYWxsZW5nZTogTG9naW5DaGFsbGVuZ2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBMb2dpbih7XG4gIGxvZ28sXG4gIHRpdGxlID0gREVGQVVMVF9USVRMRSxcbiAgZGVzY3JpcHRpb24gPSBERUZBVUxUX0RFU0NSSVBUSU9OLFxuICBwdWJsaWNLZXksXG4gIG9uTG9naW4sXG4gIG9uUmVzb2x2ZUNoYWxsZW5nZSxcbiAgY2hhbGxlbmdlUmVuZGVyZXJzXG59OiBMb2dpblByb3BzKSB7XG4gIGNvbnN0IHsgY29sb3JQcmltYXJ5IH0gPSB1c2VUaGVtZVRva2VucygpO1xuXG4gIGNvbnN0IHJvdXRlciA9IHVzZVJvdXRlcigpO1xuICBjb25zdCB7IHJlZGlyZWN0IH0gPSB1c2VTZWFyY2goeyBzdHJpY3Q6IGZhbHNlIH0pO1xuXG4gIGNvbnN0IFtwZW5kaW5nQ2hhbGxlbmdlLCBzZXRQZW5kaW5nQ2hhbGxlbmdlXSA9IHVzZVN0YXRlPFBlbmRpbmdDaGFsbGVuZ2UgfCBudWxsPihudWxsKTtcbiAgY29uc3QgW2NoYWxsZW5nZVBlbmRpbmcsIHNldENoYWxsZW5nZVBlbmRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gIGNvbnN0IGVuY3J5cHQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoIXB1YmxpY0tleSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHJldHVybiAocGxhaW50ZXh0OiBzdHJpbmcpID0+IGVuY3J5cHRVc2luZ1JTQShwbGFpbnRleHQsIHB1YmxpY0tleSk7XG4gIH0sIFtwdWJsaWNLZXldKTtcblxuICBhc3luYyBmdW5jdGlvbiBhcHBseUxvZ2luUmVzdWx0KHJlc3VsdDogTG9naW5SZXN1bHQpIHtcbiAgICBpZiAocmVzdWx0LmNoYWxsZW5nZSAmJiByZXN1bHQuY2hhbGxlbmdlVG9rZW4pIHtcbiAgICAgIHNldFBlbmRpbmdDaGFsbGVuZ2Uoe1xuICAgICAgICB0b2tlbjogcmVzdWx0LmNoYWxsZW5nZVRva2VuLFxuICAgICAgICBjaGFsbGVuZ2U6IHJlc3VsdC5jaGFsbGVuZ2VcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghcmVzdWx0LnRva2Vucykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHVzZUFwcFN0b3JlLnNldFN0YXRlKHN0YXRlID0+IHtcbiAgICAgIHN0YXRlLmlzQXV0aGVudGljYXRlZCA9IHRydWU7XG4gICAgICBzdGF0ZS5hdXRoVG9rZW5zID0gcmVzdWx0LnRva2VucztcbiAgICB9KTtcbiAgICBzZXRQZW5kaW5nQ2hhbGxlbmdlKG51bGwpO1xuXG4gICAgYXdhaXQgcm91dGVyLmludmFsaWRhdGUoKTtcbiAgICBhd2FpdCByb3V0ZXIubmF2aWdhdGUoe1xuICAgICAgdG86IHJlZGlyZWN0LFxuICAgICAgcmVwbGFjZTogdHJ1ZVxuICAgIH0pO1xuXG4gICAgc2hvd1N1Y2Nlc3NOb3RpZmljYXRpb24oZ2V0UmFuZG9tV2VsY29tZU1lc3NhZ2UoKSwge1xuICAgICAgdGl0bGU6IHJlc3VsdC5tZXNzYWdlIHx8IFwi55m75b2V5oiQ5YqfXCJcbiAgICB9KTtcbiAgfVxuXG4gIGNvbnN0IHtcbiAgICBBcHBGb3JtLFxuICAgIEZvcm0sXG4gICAgU3VibWl0QnV0dG9uLFxuICAgIEFwcEZpZWxkXG4gIH0gPSB1c2VGb3JtKHtcbiAgICBkZWZhdWx0VmFsdWVzOiBkZWZhdWx0TG9naW5WYWx1ZXMsXG4gICAgdmFsaWRhdG9yczoge1xuICAgICAgb25TdWJtaXQ6IGxvZ2luRm9ybVNjaGVtYVxuICAgIH0sXG4gICAgYXN5bmMgb25TdWJtaXQoeyB2YWx1ZSB9KSB7XG4gICAgICBjb25zdCBjcmVkZW50aWFscyA9IHB1YmxpY0tleVxuICAgICAgICA/IGVuY3J5cHRVc2luZ1JTQSh2YWx1ZS5jcmVkZW50aWFscywgcHVibGljS2V5KVxuICAgICAgICA6IHZhbHVlLmNyZWRlbnRpYWxzO1xuXG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBvbkxvZ2luKHsgLi4udmFsdWUsIGNyZWRlbnRpYWxzIH0pLmNhdGNoKG5vb3ApO1xuXG4gICAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGF3YWl0IGFwcGx5TG9naW5SZXN1bHQocmVzdWx0KTtcbiAgICB9XG4gIH0pO1xuXG4gIGFzeW5jIGZ1bmN0aW9uIHJlc29sdmVDaGFsbGVuZ2UocmVzcG9uc2U6IHVua25vd24pIHtcbiAgICBpZiAoIXBlbmRpbmdDaGFsbGVuZ2UgfHwgIW9uUmVzb2x2ZUNoYWxsZW5nZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHNldENoYWxsZW5nZVBlbmRpbmcodHJ1ZSk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgb25SZXNvbHZlQ2hhbGxlbmdlKHtcbiAgICAgICAgY2hhbGxlbmdlVG9rZW46IHBlbmRpbmdDaGFsbGVuZ2UudG9rZW4sXG4gICAgICAgIHR5cGU6IHBlbmRpbmdDaGFsbGVuZ2UuY2hhbGxlbmdlLnR5cGUsXG4gICAgICAgIHJlc3BvbnNlXG4gICAgICB9KS5jYXRjaChub29wKTtcblxuICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICBhd2FpdCBhcHBseUxvZ2luUmVzdWx0KHJlc3VsdCk7XG4gICAgICB9XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHNldENoYWxsZW5nZVBlbmRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGZ1bmN0aW9uIGNhbmNlbENoYWxsZW5nZSgpIHtcbiAgICBzZXRQZW5kaW5nQ2hhbGxlbmdlKG51bGwpO1xuICAgIHNldENoYWxsZW5nZVBlbmRpbmcoZmFsc2UpO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8R3JvdXAgY3NzPXtzdHlsZXMubG9naW59IGdhcD17MH0ganVzdGlmeT1cImNlbnRlclwiPlxuICAgICAgey8qIEJhY2tncm91bmQgb3JiIGRlY29yYXRpb25zICovfVxuICAgICAgPGRpdiBjc3M9e3N0eWxlcy5iYWNrZ3JvdW5kT3Jic30+XG4gICAgICAgIDxkaXYgY3NzPXtbc3R5bGVzLm9yYiwgc3R5bGVzLm9yYlByaW1hcnldfSAvPlxuICAgICAgICA8ZGl2IGNzcz17W3N0eWxlcy5vcmIsIHN0eWxlcy5vcmJTZWNvbmRhcnldfSAvPlxuICAgICAgICA8ZGl2IGNzcz17W3N0eWxlcy5vcmIsIHN0eWxlcy5vcmJBY2NlbnRdfSAvPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY3NzPXtzdHlsZXMubG9nb30+XG4gICAgICAgIHtsb2dvIHx8IDxMb2dvSWNvbiBwcmltYXJ5Q29sb3I9e2NvbG9yUHJpbWFyeX0gLz59XG4gICAgICA8L2Rpdj5cblxuICAgICAgPFN0YWNrIGFsaWduPVwiY2VudGVyXCIgY3NzPXtzdHlsZXMubGVmdENvbnRlbnR9PlxuICAgICAgICA8U3RhY2sgY3NzPXtzdHlsZXMudGl0bGV9IHN0eWxlPXtsZWZ0Q29udGVudFN0eWxlfT5cbiAgICAgICAgICA8U3BsaXRUZXh0XG4gICAgICAgICAgICBkZWxheT17ODB9XG4gICAgICAgICAgICBkdXJhdGlvbj17M31cbiAgICAgICAgICAgIGVhc2U9XCJlbGFzdGljLm91dCgxLCAwLjMpXCJcbiAgICAgICAgICAgIGZyb209e3sgb3BhY2l0eTogMCwgeTogMTggfX1cbiAgICAgICAgICAgIHJvb3RNYXJnaW49XCIwXCJcbiAgICAgICAgICAgIHNwbGl0VHlwZT1cImNoYXJzXCJcbiAgICAgICAgICAgIHRhZz1cImgxXCJcbiAgICAgICAgICAgIHRleHQ9e3RpdGxlfVxuICAgICAgICAgICAgdGV4dEFsaWduPVwiY2VudGVyXCJcbiAgICAgICAgICAgIHRocmVzaG9sZD17MC4xfVxuICAgICAgICAgICAgdG89e3sgb3BhY2l0eTogMSwgeTogMCB9fVxuICAgICAgICAgIC8+XG5cbiAgICAgICAgICA8ZGl2IGNzcz17c3R5bGVzLmRlc2NyaXB0aW9ufT5cbiAgICAgICAgICAgIDxUeXBpbmdBbmltYXRpb24+e2Rlc2NyaXB0aW9ufTwvVHlwaW5nQW5pbWF0aW9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1N0YWNrPlxuXG4gICAgICAgIDxDZW50ZXIgY3NzPXtzdHlsZXMuaWNvbn0gc3R5bGU9e2xlZnRDb250ZW50U3R5bGV9PlxuICAgICAgICAgIDxJY29uTG9naW4gLz5cbiAgICAgICAgPC9DZW50ZXI+XG4gICAgICA8L1N0YWNrPlxuXG4gICAgICA8ZGl2IGNzcz17c3R5bGVzLnJpZ2h0Q29udGVudH0+XG4gICAgICAgIDxUb2RheSAvPlxuXG4gICAgICAgIHtwZW5kaW5nQ2hhbGxlbmdlXG4gICAgICAgICAgPyAoXG4gICAgICAgICAgICAgIDxDaGFsbGVuZ2VWaWV3XG4gICAgICAgICAgICAgICAgY2hhbGxlbmdlPXtwZW5kaW5nQ2hhbGxlbmdlLmNoYWxsZW5nZX1cbiAgICAgICAgICAgICAgICBlbmNyeXB0PXtlbmNyeXB0fVxuICAgICAgICAgICAgICAgIHBlbmRpbmc9e2NoYWxsZW5nZVBlbmRpbmd9XG4gICAgICAgICAgICAgICAgcmVuZGVyZXJzPXtjaGFsbGVuZ2VSZW5kZXJlcnN9XG4gICAgICAgICAgICAgICAgb25DYW5jZWw9e2NhbmNlbENoYWxsZW5nZX1cbiAgICAgICAgICAgICAgICBvblJlc29sdmU9e3Jlc29sdmVDaGFsbGVuZ2V9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApXG4gICAgICAgICAgOiAoXG4gICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgPGRpdiBjc3M9e3N0eWxlcy5mb3JtSGVhZGVyfT5cbiAgICAgICAgICAgICAgICAgIDxoMj5cbiAgICAgICAgICAgICAgICAgICAgPEdyb3VwIGFsaWduPVwiY2VudGVyXCIgZ2FwPVwic21hbGxcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8SWNvbiBjb21wb25lbnQ9e1NwYXJrbGVzSWNvbn0gY3NzPXtzdHlsZXMuZm9ybUljb259IC8+XG4gICAgICAgICAgICAgICAgICAgICAg5qyi6L+O5Zue5p2lXG4gICAgICAgICAgICAgICAgICAgIDwvR3JvdXA+XG4gICAgICAgICAgICAgICAgICA8L2gyPlxuXG4gICAgICAgICAgICAgICAgICA8cCBjc3M9e3N0eWxlcy5mb3JtU3VidGl0bGV9Puivt+i+k+WFpeaCqOeahOi0puWPt+WSjOWvhueggei/m+ihjOeZu+W9lTwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgIDxBcHBGb3JtPlxuICAgICAgICAgICAgICAgICAgPEZvcm0+XG4gICAgICAgICAgICAgICAgICAgIDxTdGFjayBnYXA9XCJtaWRkbGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8QXBwRmllbGQgbmFtZT1cInByaW5jaXBhbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2ZpZWxkID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZWxkLklucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3NzPXtzdHlsZXMuZm9ybUNvbnRyb2x9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXotKblj7dcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZpeD17dXNlckljb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT1cImxhcmdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPC9BcHBGaWVsZD5cblxuICAgICAgICAgICAgICAgICAgICAgIDxBcHBGaWVsZCBuYW1lPVwiY3JlZGVudGlhbHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtmaWVsZCA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWVsZC5QYXNzd29yZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNzcz17c3R5bGVzLmZvcm1Db250cm9sfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwi6K+36L6T5YWl5a+G56CBXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVmaXg9e2xvY2tJY29ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgIDwvQXBwRmllbGQ+XG5cbiAgICAgICAgICAgICAgICAgICAgICA8U3VibWl0QnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBibG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgY3NzPXtzdHlsZXMuc3VibWl0QnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT1cImxhcmdlXCJcbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICDnmbvlvZVcbiAgICAgICAgICAgICAgICAgICAgICA8L1N1Ym1pdEJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgIDwvRm9ybT5cbiAgICAgICAgICAgICAgICA8L0FwcEZvcm0+XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKX1cblxuICAgICAgICA8Q29weXJpZ2h0IC8+XG4gICAgICA8L2Rpdj5cbiAgICA8L0dyb3VwPlxuICApO1xufVxuXG5pbnRlcmZhY2UgQ2hhbGxlbmdlVmlld1Byb3BzIHtcbiAgY2hhbGxlbmdlOiBMb2dpbkNoYWxsZW5nZTtcbiAgcGVuZGluZzogYm9vbGVhbjtcbiAgcmVuZGVyZXJzPzogTG9naW5DaGFsbGVuZ2VSZW5kZXJlcnM7XG4gIGVuY3J5cHQ/OiAocGxhaW50ZXh0OiBzdHJpbmcpID0+IHN0cmluZztcbiAgb25SZXNvbHZlOiAocmVzcG9uc2U6IHVua25vd24pID0+IFByb21pc2U8dm9pZD47XG4gIG9uQ2FuY2VsOiAoKSA9PiB2b2lkO1xufVxuXG5mdW5jdGlvbiBDaGFsbGVuZ2VWaWV3KHtcbiAgY2hhbGxlbmdlLFxuICBwZW5kaW5nLFxuICByZW5kZXJlcnMsXG4gIGVuY3J5cHQsXG4gIG9uUmVzb2x2ZSxcbiAgb25DYW5jZWxcbn06IENoYWxsZW5nZVZpZXdQcm9wcykge1xuICAvLyBJbmRleGluZyBpbnRvIHRoZSBwZXIta2V5IHJlbmRlcmVyIG1hcCBhdCBydW50aW1lIHlpZWxkcyBhIHVuaW9uIG9mXG4gIC8vIGZ1bmN0aW9uIHR5cGVzOyB3aWRlbiB0byB0aGUgZGVmYXVsdC1nZW5lcmljIGZvcm0gc28gdGhlIGNhbGwgc2l0ZVxuICAvLyBhY2NlcHRzIGBMb2dpbkNoYWxsZW5nZWAgKHRoZSBmdWxsIGRpc2NyaW1pbmF0ZWQgdW5pb24pIGRpcmVjdGx5LlxuICBjb25zdCByZW5kZXJlciA9IHJlbmRlcmVycz8uW2NoYWxsZW5nZS50eXBlXSBhcyBMb2dpbkNoYWxsZW5nZVJlbmRlcmVyIHwgdW5kZWZpbmVkO1xuXG4gIGlmICghcmVuZGVyZXIpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPFN0YWNrIGdhcD1cIm1pZGRsZVwiPlxuICAgICAgICA8ZGl2IGNzcz17c3R5bGVzLmZvcm1IZWFkZXJ9PlxuICAgICAgICAgIDxoMj5cbiAgICAgICAgICAgIDxHcm91cCBhbGlnbj1cImNlbnRlclwiIGdhcD1cInNtYWxsXCI+XG4gICAgICAgICAgICAgIDxJY29uIGNvbXBvbmVudD17U3BhcmtsZXNJY29ufSBjc3M9e3N0eWxlcy5mb3JtSWNvbn0gLz5cbiAgICAgICAgICAgICAg57un57ut55m75b2VXG4gICAgICAgICAgICA8L0dyb3VwPlxuICAgICAgICAgIDwvaDI+XG5cbiAgICAgICAgICA8cCBjc3M9e3N0eWxlcy5mb3JtU3VidGl0bGV9PlxuICAgICAgICAgICAg5pyN5Yqh5Zmo6KaB5rGC5a6M5oiQ6aKd5aSW6aqM6K+B5q2l6aqkXG4gICAgICAgICAgPC9wPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8QWxlcnRcbiAgICAgICAgICBzaG93SWNvblxuICAgICAgICAgIGRlc2NyaXB0aW9uPXtg5pyq5rOo5YaM57G75Z6L5Li644CMJHtjaGFsbGVuZ2UudHlwZX3jgI3nmoTmjJHmiJjlpITnkIblmajvvIzor7fogZTns7vns7vnu5/nrqHnkIblkZjjgIJgfVxuICAgICAgICAgIG1lc3NhZ2U9XCLkuI3mlK/mjIHnmoTnmbvlvZXmjJHmiJhcIlxuICAgICAgICAgIHR5cGU9XCJ3YXJuaW5nXCJcbiAgICAgICAgLz5cblxuICAgICAgICA8QnV0dG9uIGJsb2NrIHNpemU9XCJsYXJnZVwiIG9uQ2xpY2s9e29uQ2FuY2VsfT5cbiAgICAgICAgICDov5Tlm57nmbvlvZVcbiAgICAgICAgPC9CdXR0b24+XG4gICAgICA8L1N0YWNrPlxuICAgICk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICB7cmVuZGVyZXIoe1xuICAgICAgICBjaGFsbGVuZ2UsXG4gICAgICAgIHBlbmRpbmcsXG4gICAgICAgIGVuY3J5cHQsXG4gICAgICAgIHJlc29sdmU6IG9uUmVzb2x2ZSxcbiAgICAgICAgY2FuY2VsOiBvbkNhbmNlbFxuICAgICAgfSl9XG4gICAgPC8+XG4gICk7XG59XG5cbmNvbnN0IFRvZGF5ID0gbWVtbygoKSA9PiB7XG4gIGNvbnN0IFt0b2RheSwgc2V0VG9kYXldID0gdXNlU3RhdGUoZ2V0TG9jYWxpemVkRGF0ZVRpbWUpO1xuXG4gIHVzZUludGVydmFsKFxuICAgICgpID0+IHNldFRvZGF5KGdldExvY2FsaXplZERhdGVUaW1lKCkpLFxuICAgIDEwMDAsXG4gICAgeyBhdXRvSW52b2tlOiB0cnVlIH1cbiAgKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY3NzPXtzdHlsZXMuZGF0ZX0+XG4gICAgICA8c3Bhbj7ku4rlpKnmmK8gPC9zcGFuPlxuICAgICAgPHNwYW4gY3NzPXtzdHlsZXMuZGF0ZUhpZ2hsaWdodH0+e3RvZGF5fTwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgKTtcbn0pO1xuVG9kYXkuZGlzcGxheU5hbWUgPSBcIlRvZGF5XCI7XG5cbmNvbnN0IGN1cnJlbnRZZWFyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xuXG5mdW5jdGlvbiBDb3B5cmlnaHQoKSB7XG4gIHJldHVybiAoXG4gICAgPGRpdiBjc3M9e3N0eWxlcy5jb3B5cmlnaHR9PlxuICAgICAgQ29weXJpZ2h0ICZjb3B5O1xuICAgICAge1wiIFwifVxuICAgICAge2N1cnJlbnRZZWFyfVxuICAgICAge1wiIFwifVxuICAgICAgVkVGLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICAgIDwvZGl2PlxuICApO1xufVxuXG5leHBvcnQgeyB0eXBlIExvZ2luQ2hhbGxlbmdlLCB0eXBlIExvZ2luUGFyYW1zLCB0eXBlIExvZ2luUmVzdWx0LCB0eXBlIFBhc3N3b3JkTG9naW5QYXJhbXMsIHR5cGUgUmVzb2x2ZUNoYWxsZW5nZVBhcmFtcyB9IGZyb20gXCIuL3BheWxvYWRcIjtcbmV4cG9ydCB7IHR5cGUgTG9naW5DaGFsbGVuZ2VSZW5kZXJlciwgdHlwZSBMb2dpbkNoYWxsZW5nZVJlbmRlcmVyUHJvcHMsIHR5cGUgTG9naW5DaGFsbGVuZ2VSZW5kZXJlcnMsIHR5cGUgTG9naW5Qcm9wcyB9IGZyb20gXCIuL3Byb3BzXCI7XG4iXX0= */`]})]}),(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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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
|
|
1
|
+
/*! @vef-framework-react/starter v2.2.1 made by Venus | 2026-05-18T08:56:01.320Z */
|
|
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";
|