diff --git a/README.md b/README.md index 79b9ffe3ba..46bc91da3f 100644 --- a/README.md +++ b/README.md @@ -56,10 +56,19 @@ These dashboards are part of [Percona Monitoring and Management](https://www.per See a live demonstration at . +## Reusing dashboards outside of PMM + Dashboards can be converted to be used on a dedicated prometheus instance. Example: - misc/convert-dash-from-PMM.py dashboards/Disk_Details.json + +- misc/convert-dash-from-PMM.py dashboards/Disk_Details.json + +## AWS Setup page + +Plase see the relevant [README.md](./setup-page/README.md). + +## Contributing We welcome contributions to this repository! Detailed information in [CONTRIBUTING.md](CONTRIBUTING.md) diff --git a/setup-page/.eslintrc b/setup-page/.eslintrc new file mode 100644 index 0000000000..b514d14e40 --- /dev/null +++ b/setup-page/.eslintrc @@ -0,0 +1,21 @@ +{ + "parserOptions": { + "sourceType": "module", + "ecmaVersion": 2018, + "ecmaFeatures": { + "jsx": true + } + }, + "plugins": [ + "jsx-a11y" + ], + "overrides": [ + { + "files": ["*.jsx", "*.js"], + "rules": { + "import/prefer-default-export": "off", + "react/prop-types": "off" + } + } + ] +} diff --git a/setup-page/.gitignore b/setup-page/.gitignore new file mode 100644 index 0000000000..d7f209d324 --- /dev/null +++ b/setup-page/.gitignore @@ -0,0 +1,23 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.js + +# testing +/coverage + +# production + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* +yarn.lock diff --git a/setup-page/.prettierrc b/setup-page/.prettierrc new file mode 100644 index 0000000000..c9bb61d560 --- /dev/null +++ b/setup-page/.prettierrc @@ -0,0 +1,7 @@ +{ + "trailingComma": "es5", + "tabWidth": 2, + "semi": true, + "singleQuote": true, + "printWidth": 100 +} diff --git a/setup-page/Makefile b/setup-page/Makefile new file mode 100644 index 0000000000..9c44d7d3d1 --- /dev/null +++ b/setup-page/Makefile @@ -0,0 +1,2 @@ +setup-build: + docker run --rm --name aws-setup-build --entrypoint /app/entrypoint.sh -w /app -v $(PWD):/app centos:7 diff --git a/setup-page/README.md b/setup-page/README.md new file mode 100644 index 0000000000..a7f5df89b7 --- /dev/null +++ b/setup-page/README.md @@ -0,0 +1,22 @@ +# AWS Setup Page + +This app is a setup page which runs when you launch a PMM Server instance on AWS. Please open a https://pmm-server/setup +in the browser to test the page. We whip build artifacts in the `./build` folder, to rebuild please run `make build-setup` +in this directory. + +## Available Scripts + +In the project directory, you can run: + +### `npm start` + +Runs the app in the development mode.
+Open [http://localhost:3000](http://localhost:3000) to view it in the browser. + +### `npm test` + +Launches the test runner in the interactive watch mode. + +### `npm run build` + +Builds the app for production to the `build` folder. diff --git a/setup-page/build/asset-manifest.json b/setup-page/build/asset-manifest.json new file mode 100644 index 0000000000..3cfcf5ffc9 --- /dev/null +++ b/setup-page/build/asset-manifest.json @@ -0,0 +1,14 @@ +{ + "files": { + "main.css": "/setup/static/css/main.fc23d837.css", + "main.js": "/setup/static/js/main.bd875d74.js", + "static/media/pmm-logo.png": "/setup/static/media/pmm-logo.74da77ed1cf4dde3cf0e.png", + "index.html": "/setup/index.html", + "main.fc23d837.css.map": "/setup/static/css/main.fc23d837.css.map", + "main.bd875d74.js.map": "/setup/static/js/main.bd875d74.js.map" + }, + "entrypoints": [ + "static/css/main.fc23d837.css", + "static/js/main.bd875d74.js" + ] +} \ No newline at end of file diff --git a/setup-page/build/favicon.ico b/setup-page/build/favicon.ico new file mode 100644 index 0000000000..cabf9685ca Binary files /dev/null and b/setup-page/build/favicon.ico differ diff --git a/setup-page/build/index.html b/setup-page/build/index.html new file mode 100644 index 0000000000..ce49995242 --- /dev/null +++ b/setup-page/build/index.html @@ -0,0 +1 @@ +PMM Server Installation
\ No newline at end of file diff --git a/setup-page/build/manifest.json b/setup-page/build/manifest.json new file mode 100644 index 0000000000..1f2f141faf --- /dev/null +++ b/setup-page/build/manifest.json @@ -0,0 +1,15 @@ +{ + "short_name": "React App", + "name": "Create React App Sample", + "icons": [ + { + "src": "favicon.ico", + "sizes": "64x64 32x32 24x24 16x16", + "type": "image/x-icon" + } + ], + "start_url": ".", + "display": "standalone", + "theme_color": "#000000", + "background_color": "#ffffff" +} diff --git a/setup-page/build/robots.txt b/setup-page/build/robots.txt new file mode 100644 index 0000000000..01b0f9a107 --- /dev/null +++ b/setup-page/build/robots.txt @@ -0,0 +1,2 @@ +# https://www.robotstxt.org/robotstxt.html +User-agent: * diff --git a/setup-page/build/static/css/main.fc23d837.css b/setup-page/build/static/css/main.fc23d837.css new file mode 100644 index 0000000000..b7199a7263 --- /dev/null +++ b/setup-page/build/static/css/main.fc23d837.css @@ -0,0 +1,2 @@ +*,:after,:before{box-sizing:border-box}button,select{text-transform:none}button,input{overflow:visible}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-size:inherit;line-height:inherit;margin:0}[role=button],a,area,button,input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}input[type=number],input[type=password],input[type=text],textarea{-webkit-appearance:none}input[type=text]{padding:1px 8px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum","tnum","tnum";background-color:#141414;color:rgba(0,0,0,.85);font-family:Roboto,Segoe UI,Droid Sans,Helvetica Neue,sans-serif;font-size:16px;font-variant:tabular-nums;line-height:1.5715;margin:0}body,html{height:100%;width:100%}p{margin:0 0 1em}a{background-color:transparent;color:#1890ff;cursor:pointer;outline:none;text-decoration:none;transition:color .3s}::selection{background:#1890ff;color:#fff}@-webkit-keyframes loadingCircle{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes loadingCircle{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.instance-id-form{align-items:center;background-color:#141414;color:#fff;display:flex;flex-direction:column;height:100vh;justify-content:center;margin:0 auto;width:45%}.instance-id-input-field{background-color:#000;border:1px solid gray;color:#fff;height:36px;margin-right:10px;width:100%}.form-wrapper{display:flex;flex-direction:column}.input-field-wrapper{display:flex}.instance-id-pane{background-color:#1f1d1e;border:1px solid #4f4f4f;padding:120px 130px;position:relative;width:100%}.instance-id-pane .ami-id{color:#727ee1}.instance-id-header{align-self:flex-start;color:#bcbcbc;font-size:1.4em;font-weight:400;margin:0;text-align:left}.header{background-color:#292929;color:#ccc;height:50px;left:0;margin-bottom:90px;position:absolute;top:0;width:100vw}.nav{align-items:center;display:flex;padding-left:20px}.header div{height:inherit}.header .row>div{align-items:center;display:flex}.header p{margin-bottom:0}.header .border-right{border-right:1px solid #141414!important}.header .header-logo{height:35px;width:35px}.header .app-title{font-size:20px;margin-left:10px;margin-right:10px}.notification-wrapper{-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum","tnum","tnum";bottom:auto;color:rgba(0,0,0,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;margin:0 24px 0 0;padding:0;position:fixed;right:0;top:50px;z-index:1010}.notification-wrapper,.slide-down{-webkit-transform:translateY(0);transform:translateY(0)}.slide-down{opacity:1;overflow:hidden}.slide-up{opacity:0;-webkit-transform:translateY(-100%);transform:translateY(-100%);transition:all .4s ease-in-out}.notification-notice-message{color:#fff!important;font-size:16px;line-height:24px;margin-bottom:0!important;padding-right:20px}.notification-notice{word-wrap:break-word;background:#e20e0e;background-image:linear-gradient(90deg,#e02f44,#c4162a);border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgb(0 0 0/8%),0 9px 28px 8px rgb(0 0 0/5%);color:#fff;line-height:1.5715;margin-bottom:16px;margin-left:auto;max-width:calc(100vw - 48px);overflow:hidden;padding:16px 24px;position:relative;width:384px}.notification-notice-close{background-color:transparent;border-radius:50%;color:#fff;line-height:1;outline:none;padding:4px;position:absolute;right:16px;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);transition:all 1s cubic-bezier(.075,.82,.165,1)}.notification-notice-close:focus,.notification-notice-close:hover{background-color:#ec465a}.notification-close-icon{cursor:pointer;font-size:14px}.btn.button-submit{background-image:none;background:#fff;border:1px solid #d9d9d9;border-radius:2px;box-shadow:0 2px 0 rgb(0 0 0/2%);color:rgba(0,0,0,.85);cursor:pointer;display:inline-block;font-size:16px;font-weight:400;height:36px;line-height:1.5715;outline:0;padding:4px 15px;position:relative;text-align:center;touch-action:manipulation;transition:all .3s cubic-bezier(.645,.045,.355,1);-webkit-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}.btn.button-primary{background:#1890ff;border:1px solid gray;border-radius:0;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.12);width:150px}.btn.btn-loading:before{display:block}.btn:before{background:#fff;border-radius:inherit;bottom:-1px;content:"";display:none;left:-1px;opacity:.35;pointer-events:none;position:absolute;right:-1px;top:-1px;transition:opacity .2s;z-index:1}.btn>.btn-loading-icon{transition:all .3s cubic-bezier(.645,.045,.355,1)}.btn .anticon,.btn>span{display:inline-block}.btn .anticon{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-animation:none;animation:none;color:inherit;font-style:normal;line-height:0;padding-right:8px;text-align:center;text-transform:none;transition:margin-left .3s cubic-bezier(.645,.045,.355,1);vertical-align:-.125em}.btn[disabled],.btn[disabled]:active,.btn[disabled]:focus,.btn[disabled]:hover{background-color:#62636a;box-shadow:none;color:hsla(0,0%,100%,.65);cursor:default;text-shadow:none}.anticon{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:inherit;display:inline-block;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-.125em}.anticon-loading svg{-webkit-animation:loadingCircle 1s linear infinite;animation:loadingCircle 1s linear infinite;display:inline-block}.anticon>*{line-height:1} +/*# sourceMappingURL=main.fc23d837.css.map*/ \ No newline at end of file diff --git a/setup-page/build/static/css/main.fc23d837.css.map b/setup-page/build/static/css/main.fc23d837.css.map new file mode 100644 index 0000000000..9ee86ca766 --- /dev/null +++ b/setup-page/build/static/css/main.fc23d837.css.map @@ -0,0 +1 @@ +{"version":3,"file":"static/css/main.fc23d837.css","mappings":"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","sources":["index.css"],"sourcesContent":["*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\nbutton,\nselect {\n text-transform: none;\n}\n\nbutton,\ninput {\n overflow: visible;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0;\n color: inherit;\n font-size: inherit;\n font-family: inherit;\n line-height: inherit;\n}\n\na,\narea,\nbutton,\n[role='button'],\ninput:not([type='range']),\nlabel,\nselect,\nsummary,\ntextarea {\n touch-action: manipulation;\n}\n\ninput[type='text'],\ninput[type='password'],\ninput[type='number'],\ntextarea {\n -webkit-appearance: none;\n}\n\ninput[type='text'] {\n padding: 1px 8px;\n}\n\nbody {\n margin: 0;\n color: rgba(0, 0, 0, 0.85);\n font-size: 16px;\n font-family: 'Roboto', 'Segoe UI', 'Droid Sans', 'Helvetica Neue', sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-variant: tabular-nums;\n line-height: 1.5715;\n background-color: #141414;\n -webkit-font-feature-settings: 'tnum';\n font-feature-settings: 'tnum', 'tnum';\n}\n\nbody {\n margin: 0;\n}\n\nhtml,\nbody {\n width: 100%;\n height: 100%;\n}\n\np {\n margin: 0 0 1em 0;\n}\n\na {\n color: #1890ff;\n text-decoration: none;\n background-color: transparent;\n outline: none;\n cursor: pointer;\n transition: color 0.3s;\n}\n\n::selection {\n color: #fff;\n background: #1890ff;\n}\n\n@keyframes loadingCircle {\n 100% {\n transform: rotate(360deg);\n }\n}\n\n.instance-id-form {\n width: 45%;\n height: 100vh;\n margin: 0 auto;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n background-color: #141414;\n color: white;\n}\n\n.instance-id-input-field {\n background-color: black;\n color: white;\n border: 1px solid gray;\n height: 36px;\n width: 100%;\n margin-right: 10px;\n}\n\n.form-wrapper {\n display: flex;\n flex-direction: column;\n}\n\n.input-field-wrapper {\n display: flex;\n}\n\n.instance-id-pane {\n position: relative;\n width: 100%;\n background-color: #1f1d1e;\n padding: 120px 130px;\n border: 1px solid #4f4f4f;\n}\n\n.instance-id-pane .ami-id {\n color: #727ee1;\n}\n\n.instance-id-header {\n margin: 0;\n text-align: left;\n align-self: flex-start;\n color: #bcbcbc;\n font-size: 1.4em;\n font-weight: 400;\n}\n\n.header {\n position: absolute;\n top: 0;\n left: 0;\n width: 100vw;\n height: 50px;\n margin-bottom: 90px;\n color: #cccccc;\n background-color: #292929;\n}\n\n.nav {\n display: flex;\n align-items: center;\n padding-left: 20px;\n}\n\n.header div {\n height: inherit;\n}\n\n.header .row > div {\n display: flex;\n align-items: center;\n}\n\n.header p {\n margin-bottom: 0;\n}\n\n.header .border-right {\n border-right: 1px solid #141414 !important;\n}\n\n.header .header-logo {\n width: 35px;\n height: 35px;\n}\n\n.header .app-title {\n margin-left: 10px;\n margin-right: 10px;\n font-size: 20px;\n}\n\n.notification-wrapper {\n right: 0px;\n top: 50px;\n bottom: auto;\n margin: 0 24px 0 0;\n padding: 0;\n color: rgba(0, 0, 0, 0.85);\n font-size: 14px;\n font-variant: tabular-nums;\n line-height: 1.5715;\n list-style: none;\n -webkit-font-feature-settings: 'tnum';\n font-feature-settings: 'tnum', 'tnum';\n position: fixed;\n z-index: 1010;\n transform: translateY(0);\n}\n\n.slide-down {\n overflow: hidden;\n transform: translateY(0);\n opacity: 1;\n}\n\n.slide-up {\n transform: translateY(-100%);\n opacity: 0;\n transition: all 0.4s ease-in-out;\n}\n\n.notification-notice-message {\n color: white !important;\n margin-bottom: 0 !important;\n padding-right: 20px;\n font-size: 16px;\n line-height: 24px;\n}\n\n.notification-notice {\n padding: 16px 24px;\n line-height: 1.5715;\n background: #e20e0e;\n background-image: linear-gradient(90deg, rgb(224, 47, 68), rgb(196, 22, 42));\n color: white;\n position: relative;\n width: 384px;\n max-width: calc(100vw - 24px * 2);\n margin-bottom: 16px;\n margin-left: auto;\n overflow: hidden;\n word-wrap: break-word;\n border-radius: 2px;\n box-shadow: 0 3px 6px -4px rgb(0 0 0 / 12%), 0 6px 16px 0 rgb(0 0 0 / 8%),\n 0 9px 28px 8px rgb(0 0 0 / 5%);\n}\n\n.notification-notice-close {\n position: absolute;\n top: 50%;\n right: 16px;\n outline: none;\n color: white;\n transform: translateY(-50%);\n line-height: 1;\n padding: 4px;\n border-radius: 50%;\n background-color: transparent;\n transition: all 1s cubic-bezier(0.075, 0.82, 0.165, 1);\n}\n\n.notification-notice-close:hover,\n.notification-notice-close:focus {\n background-color: #ec465a;\n}\n\n.notification-close-icon {\n font-size: 14px;\n cursor: pointer;\n}\n\n.btn.button-submit {\n outline: 0;\n line-height: 1.5715;\n position: relative;\n display: inline-block;\n font-weight: 400;\n white-space: nowrap;\n text-align: center;\n background-image: none;\n border: 1px solid transparent;\n box-shadow: 0 2px 0 rgb(0 0 0 / 2%);\n cursor: pointer;\n transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);\n user-select: none;\n touch-action: manipulation;\n height: 36px;\n padding: 4px 15px;\n font-size: 16px;\n color: rgba(0, 0, 0, 0.85);\n background: #fff;\n border-radius: 2px;\n border-color: #d9d9d9;\n}\n\n.btn.button-primary {\n color: #fff;\n background: #1890ff;\n border-color: #1890ff;\n border-radius: 0px;\n border: 1px solid gray;\n width: 150px;\n text-shadow: 0 -1px 0 rgb(0 0 0 / 12%);\n}\n\n.btn.btn-loading::before {\n display: block;\n}\n\n.btn::before {\n position: absolute;\n top: -1px;\n right: -1px;\n bottom: -1px;\n left: -1px;\n z-index: 1;\n display: none;\n background: #fff;\n border-radius: inherit;\n opacity: 0.35;\n transition: opacity 0.2s;\n content: '';\n pointer-events: none;\n}\n\n.btn > .btn-loading-icon {\n -webkit-transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);\n transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);\n}\n.btn > span {\n display: inline-block;\n}\n\n.btn .anticon {\n display: inline-block;\n color: inherit;\n font-style: normal;\n line-height: 0;\n text-align: center;\n text-transform: none;\n vertical-align: -0.125em;\n text-rendering: optimizeLegibility;\n padding-right: 8px;\n animation: none;\n transition: margin-left 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n.btn[disabled],\n.btn[disabled]:hover,\n.btn[disabled]:focus,\n.btn[disabled]:active {\n cursor: default;\n color: rgba(255, 255, 255, 0.65);\n background-color: #62636a;\n text-shadow: none;\n box-shadow: none;\n}\n\n.anticon {\n display: inline-block;\n color: inherit;\n font-style: normal;\n line-height: 0;\n text-align: center;\n text-transform: none;\n vertical-align: -0.125em;\n text-rendering: optimizeLegibility;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n.anticon-loading svg {\n animation: loadingCircle 1s infinite linear;\n display: inline-block;\n}\n\n.anticon > * {\n line-height: 1;\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/setup-page/build/static/js/main.bd875d74.js b/setup-page/build/static/js/main.bd875d74.js new file mode 100644 index 0000000000..da51d3b391 --- /dev/null +++ b/setup-page/build/static/js/main.bd875d74.js @@ -0,0 +1,3 @@ +/*! For license information please see main.bd875d74.js.LICENSE.txt */ +!function(){var e={569:function(e,t,n){e.exports=n(36)},381:function(e,t,n){"use strict";var r=n(589),o=n(297),a=n(301),l=n(774),i=n(804),u=n(145),s=n(411),c=n(789),f=n(531),d=n(795),p=n(261);e.exports=function(e){return new Promise((function(t,n){var h,m=e.data,v=e.headers,y=e.responseType;function g(){e.cancelToken&&e.cancelToken.unsubscribe(h),e.signal&&e.signal.removeEventListener("abort",h)}r.isFormData(m)&&r.isStandardBrowserEnv()&&delete v["Content-Type"];var b=new XMLHttpRequest;if(e.auth){var w=e.auth.username||"",k=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";v.Authorization="Basic "+btoa(w+":"+k)}var E=i(e.baseURL,e.url);function x(){if(b){var r="getAllResponseHeaders"in b?u(b.getAllResponseHeaders()):null,a={data:y&&"text"!==y&&"json"!==y?b.response:b.responseText,status:b.status,statusText:b.statusText,headers:r,config:e,request:b};o((function(e){t(e),g()}),(function(e){n(e),g()}),a),b=null}}if(b.open(e.method.toUpperCase(),l(E,e.params,e.paramsSerializer),!0),b.timeout=e.timeout,"onloadend"in b?b.onloadend=x:b.onreadystatechange=function(){b&&4===b.readyState&&(0!==b.status||b.responseURL&&0===b.responseURL.indexOf("file:"))&&setTimeout(x)},b.onabort=function(){b&&(n(new f("Request aborted",f.ECONNABORTED,e,b)),b=null)},b.onerror=function(){n(new f("Network Error",f.ERR_NETWORK,e,b,b)),b=null},b.ontimeout=function(){var t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",r=e.transitional||c;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(new f(t,r.clarifyTimeoutError?f.ETIMEDOUT:f.ECONNABORTED,e,b)),b=null},r.isStandardBrowserEnv()){var S=(e.withCredentials||s(E))&&e.xsrfCookieName?a.read(e.xsrfCookieName):void 0;S&&(v[e.xsrfHeaderName]=S)}"setRequestHeader"in b&&r.forEach(v,(function(e,t){"undefined"===typeof m&&"content-type"===t.toLowerCase()?delete v[t]:b.setRequestHeader(t,e)})),r.isUndefined(e.withCredentials)||(b.withCredentials=!!e.withCredentials),y&&"json"!==y&&(b.responseType=e.responseType),"function"===typeof e.onDownloadProgress&&b.addEventListener("progress",e.onDownloadProgress),"function"===typeof e.onUploadProgress&&b.upload&&b.upload.addEventListener("progress",e.onUploadProgress),(e.cancelToken||e.signal)&&(h=function(e){b&&(n(!e||e&&e.type?new d:e),b.abort(),b=null)},e.cancelToken&&e.cancelToken.subscribe(h),e.signal&&(e.signal.aborted?h():e.signal.addEventListener("abort",h))),m||(m=null);var _=p(E);_&&-1===["http","https","file"].indexOf(_)?n(new f("Unsupported protocol "+_+":",f.ERR_BAD_REQUEST,e)):b.send(m)}))}},36:function(e,t,n){"use strict";var r=n(589),o=n(49),a=n(773),l=n(777);var i=function e(t){var n=new a(t),i=o(a.prototype.request,n);return r.extend(i,a.prototype,n),r.extend(i,n),i.create=function(n){return e(l(t,n))},i}(n(709));i.Axios=a,i.CanceledError=n(795),i.CancelToken=n(857),i.isCancel=n(517),i.VERSION=n(600).version,i.toFormData=n(397),i.AxiosError=n(531),i.Cancel=i.CanceledError,i.all=function(e){return Promise.all(e)},i.spread=n(89),i.isAxiosError=n(580),e.exports=i,e.exports.default=i},857:function(e,t,n){"use strict";var r=n(795);function o(e){if("function"!==typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise((function(e){t=e}));var n=this;this.promise.then((function(e){if(n._listeners){var t,r=n._listeners.length;for(t=0;t=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};r.forEach(["delete","get","head"],(function(e){c.headers[e]={}})),r.forEach(["post","put","patch"],(function(e){c.headers[e]=r.merge(u)})),e.exports=c},789:function(e){"use strict";e.exports={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1}},600:function(e){e.exports={version:"0.27.2"}},49:function(e){"use strict";e.exports=function(e,t){return function(){for(var n=new Array(arguments.length),r=0;r=0)return;l[t]="set-cookie"===t?(l[t]?l[t]:[]).concat([n]):l[t]?l[t]+", "+n:n}})),l):l}},261:function(e){"use strict";e.exports=function(e){var t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}},89:function(e){"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},397:function(e,t,n){"use strict";var r=n(589);e.exports=function(e,t){t=t||new FormData;var n=[];function o(e){return null===e?"":r.isDate(e)?e.toISOString():r.isArrayBuffer(e)||r.isTypedArray(e)?"function"===typeof Blob?new Blob([e]):Buffer.from(e):e}return function e(a,l){if(r.isPlainObject(a)||r.isArray(a)){if(-1!==n.indexOf(a))throw Error("Circular reference detected in "+l);n.push(a),r.forEach(a,(function(n,a){if(!r.isUndefined(n)){var i,u=l?l+"."+a:a;if(n&&!l&&"object"===typeof n)if(r.endsWith(a,"{}"))n=JSON.stringify(n);else if(r.endsWith(a,"[]")&&(i=r.toArray(n)))return void i.forEach((function(e){!r.isUndefined(e)&&t.append(u,o(e))}));e(n,u)}})),n.pop()}else t.append(l,o(a))}(e),t}},835:function(e,t,n){"use strict";var r=n(600).version,o=n(531),a={};["object","boolean","number","function","string","symbol"].forEach((function(e,t){a[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));var l={};a.transitional=function(e,t,n){function a(e,t){return"[Axios v"+r+"] Transitional option '"+e+"'"+t+(n?". "+n:"")}return function(n,r,i){if(!1===e)throw new o(a(r," has been removed"+(t?" in "+t:"")),o.ERR_DEPRECATED);return t&&!l[r]&&(l[r]=!0,console.warn(a(r," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,r,i)}},e.exports={assertOptions:function(e,t,n){if("object"!==typeof e)throw new o("options must be an object",o.ERR_BAD_OPTION_VALUE);for(var r=Object.keys(e),a=r.length;a-- >0;){var l=r[a],i=t[l];if(i){var u=e[l],s=void 0===u||i(u,l,e);if(!0!==s)throw new o("option "+l+" must be "+s,o.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new o("Unknown option "+l,o.ERR_BAD_OPTION)}},validators:a}},589:function(e,t,n){"use strict";var r,o=n(49),a=Object.prototype.toString,l=(r=Object.create(null),function(e){var t=a.call(e);return r[t]||(r[t]=t.slice(8,-1).toLowerCase())});function i(e){return e=e.toLowerCase(),function(t){return l(t)===e}}function u(e){return Array.isArray(e)}function s(e){return"undefined"===typeof e}var c=i("ArrayBuffer");function f(e){return null!==e&&"object"===typeof e}function d(e){if("object"!==l(e))return!1;var t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}var p=i("Date"),h=i("File"),m=i("Blob"),v=i("FileList");function y(e){return"[object Function]"===a.call(e)}var g=i("URLSearchParams");function b(e,t){if(null!==e&&"undefined"!==typeof e)if("object"!==typeof e&&(e=[e]),u(e))for(var n=0,r=e.length;n0;)l[a=r[o]]||(t[a]=e[a],l[a]=!0);e=Object.getPrototypeOf(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:l,kindOfTest:i,endsWith:function(e,t,n){e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;var r=e.indexOf(t,n);return-1!==r&&r===n},toArray:function(e){if(!e)return null;var t=e.length;if(s(t))return null;for(var n=new Array(t);t-- >0;)n[t]=e[t];return n},isTypedArray:k,isFileList:v}},725:function(e){"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;function o(e){if(null===e||void 0===e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(o){return!1}}()?Object.assign:function(e,a){for(var l,i,u=o(e),s=1;s