diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 7b2a55b..4b1de0b 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1,3 +1,3 @@ # These are supported funding model platforms -github: [MrXujiang, AleryXu, yehuozhili] +open_collective: h5-dooring diff --git a/.gitignore b/.gitignore index 3f1c624..a94d0dd 100644 --- a/.gitignore +++ b/.gitignore @@ -103,4 +103,8 @@ typings/ .tern-port .umi/ -.umi-production/ \ No newline at end of file +.umi-production/ + +# production +/dist +/doc-dist diff --git a/.umirc.ts b/.umirc.ts index 27c7f4c..1b520ef 100644 --- a/.umirc.ts +++ b/.umirc.ts @@ -10,7 +10,7 @@ export default defineConfig({ }, devtool: 'source-map', antd: {}, - title: '趣谈前端-h5-dooring', + title: 'h5-dooring', // exportStatic: {}, base: '/', publicPath: '/', diff --git a/doc-dist/404.html b/doc-dist/404.html deleted file mode 100644 index 76eaf0c..0000000 --- a/doc-dist/404.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -

404

How did we get here?
- Take me home. -
- - - diff --git a/doc-dist/assets/css/0.styles.05b20fd2.css b/doc-dist/assets/css/0.styles.05b20fd2.css deleted file mode 100644 index 3f4a5d3..0000000 --- a/doc-dist/assets/css/0.styles.05b20fd2.css +++ /dev/null @@ -1 +0,0 @@ -/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0;padding:0}article,aside,footer,header,nav,section{display:block}h1,h2,h3,h4,h5{margin:0;padding:0}figcaption,figure,main{display:block}figure{margin:0;padding:0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects;color:#329aff}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:inherit;font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0;padding:0}button,input{overflow:visible;outline:none}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}[hidden],template{display:none}input{outline:none}body,html{scrollbar-arrow-color:#d1d5db;scrollbar-face-color:#d1d5db;scrollbar-3dlight-color:#d1d5db;scrollbar-highlight-color:#d1d5db;scrollbar-shadow-color:#d1d5db;scrollbar-darkshadow-color:#d1d5db;scrollbar-track-color:#d1d5db;scrollbar-base-color:#f4f5f9}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar,::-webkit-scrollbar-track{background-color:transparent}::-webkit-scrollbar-thumb{border-radius:4px;background-color:#d1d5db}dd,dl,dt,ul li{padding:0;margin:0}button{cursor:pointer;border:none}button[disabled]{cursor:not-allowed}.nav-link.external .outbound{display:none}.nav-link.external:last-child{color:#fff;background-color:#083ac4;border-color:#083ac4;padding:6px 14px;border-radius:4px}.doc-main{padding-top:88px;padding-left:380px}code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.block-comment,.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#999}.token.punctuation{color:#ccc}.token.attr-name,.token.deleted,.token.namespace,.token.tag{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.function,.token.number{color:#f08d49}.token.class-name,.token.constant,.token.property,.token.symbol{color:#f8c555}.token.atrule,.token.builtin,.token.important,.token.keyword,.token.selector{color:#cc99cd}.token.attr-value,.token.char,.token.regex,.token.string,.token.variable{color:#7ec699}.token.entity,.token.operator,.token.url{color:#67cdcc}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}.theme-default-content code{color:#476582;padding:.25rem .5rem;margin:0;font-size:.85em;background-color:rgba(27,31,35,.05);border-radius:3px}.theme-default-content code .token.deleted{color:#ec5975}.theme-default-content code .token.inserted{color:#083ac4}.theme-default-content pre,.theme-default-content pre[class*=language-]{line-height:1.4;padding:1.25rem 1.5rem;margin:.85rem 0;background-color:#282c34;border-radius:6px;overflow:auto}.theme-default-content pre[class*=language-] code,.theme-default-content pre code{color:#fff;padding:0;background-color:transparent;border-radius:0}div[class*=language-]{position:relative;background-color:#282c34;border-radius:6px}div[class*=language-] .highlight-lines{-webkit-user-select:none;-ms-user-select:none;user-select:none;padding-top:1.3rem;position:absolute;top:0;left:0;width:100%;line-height:1.4}div[class*=language-] .highlight-lines .highlighted{background-color:rgba(0,0,0,.66)}div[class*=language-] pre,div[class*=language-] pre[class*=language-]{background:transparent;position:relative;z-index:1}div[class*=language-]:before{position:absolute;z-index:3;top:.8em;right:1em;font-size:.75rem;color:hsla(0,0%,100%,.4)}div[class*=language-]:not(.line-numbers-mode) .line-numbers-wrapper{display:none}div[class*=language-].line-numbers-mode .highlight-lines .highlighted{position:relative}div[class*=language-].line-numbers-mode .highlight-lines .highlighted:before{content:" ";position:absolute;z-index:3;left:0;top:0;display:block;width:3.5rem;height:100%;background-color:rgba(0,0,0,.66)}div[class*=language-].line-numbers-mode pre{padding-left:4.5rem;vertical-align:middle}div[class*=language-].line-numbers-mode .line-numbers-wrapper{position:absolute;top:0;width:3.5rem;text-align:center;color:hsla(0,0%,100%,.3);padding:1.25rem 0;line-height:1.4}div[class*=language-].line-numbers-mode .line-numbers-wrapper br{-webkit-user-select:none;-ms-user-select:none;user-select:none}div[class*=language-].line-numbers-mode .line-numbers-wrapper .line-number{position:relative;z-index:4;-webkit-user-select:none;-ms-user-select:none;user-select:none;font-size:.85em}div[class*=language-].line-numbers-mode:after{content:"";position:absolute;z-index:2;top:0;left:0;width:3.5rem;height:100%;border-radius:6px 0 0 6px;border-right:1px solid rgba(0,0,0,.66);background-color:#282c34}div[class~=language-js]:before{content:"js"}div[class~=language-ts]:before{content:"ts"}div[class~=language-html]:before{content:"html"}div[class~=language-md]:before{content:"md"}div[class~=language-vue]:before{content:"vue"}div[class~=language-css]:before{content:"css"}div[class~=language-sass]:before{content:"sass"}div[class~=language-scss]:before{content:"scss"}div[class~=language-less]:before{content:"less"}div[class~=language-stylus]:before{content:"stylus"}div[class~=language-go]:before{content:"go"}div[class~=language-java]:before{content:"java"}div[class~=language-c]:before{content:"c"}div[class~=language-sh]:before{content:"sh"}div[class~=language-yaml]:before{content:"yaml"}div[class~=language-py]:before{content:"py"}div[class~=language-docker]:before{content:"docker"}div[class~=language-dockerfile]:before{content:"dockerfile"}div[class~=language-makefile]:before{content:"makefile"}div[class~=language-javascript]:before{content:"js"}div[class~=language-typescript]:before{content:"ts"}div[class~=language-markup]:before{content:"html"}div[class~=language-markdown]:before{content:"md"}div[class~=language-json]:before{content:"json"}div[class~=language-ruby]:before{content:"rb"}div[class~=language-python]:before{content:"py"}div[class~=language-bash]:before{content:"sh"}div[class~=language-php]:before{content:"php"}.custom-block .custom-block-title{font-weight:600;margin-bottom:-.4rem}.custom-block.danger,.custom-block.tip,.custom-block.warning{padding:.1rem 1.5rem;border-left-width:.5rem;border-left-style:solid;margin:1rem 0}.custom-block.tip{background-color:#f3f5f7;border-color:#42b983}.custom-block.warning{background-color:rgba(255,229,100,.3);border-color:#e7c000;color:#6b5900}.custom-block.warning .custom-block-title{color:#b29400}.custom-block.warning a{color:#2c3e50}.custom-block.danger{background-color:#ffe6e6;border-color:#c00;color:#4d0000}.custom-block.danger .custom-block-title{color:#900}.custom-block.danger a{color:#2c3e50}.custom-block.details{display:block;position:relative;border-radius:2px;margin:1.6em 0;padding:1.6em;background-color:#eee}.custom-block.details h4{margin-top:0}.custom-block.details figure:last-child,.custom-block.details p:last-child{margin-bottom:0;padding-bottom:0}.custom-block.details summary{outline:none;cursor:pointer}.arrow{display:inline-block;width:0;height:0}.arrow.up{border-bottom:6px solid #ccc}.arrow.down,.arrow.up{border-left:4px solid transparent;border-right:4px solid transparent}.arrow.down{border-top:6px solid #ccc}.arrow.right{border-left:6px solid #ccc}.arrow.left,.arrow.right{border-top:4px solid transparent;border-bottom:4px solid transparent}.arrow.left{border-right:6px solid #ccc}.theme-default-content:not(.custom){max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.theme-default-content:not(.custom){padding:2rem}}@media (max-width:419px){.theme-default-content:not(.custom){padding:1.5rem}}.table-of-contents .badge{vertical-align:middle}body,html{padding:0;margin:0;background-color:#fff}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;color:#2c3e50}.page{padding-left:20rem}.navbar{z-index:20;right:0;height:3.6rem;background-color:#fff;box-sizing:border-box;border-bottom:1px solid #eaecef}.navbar,.sidebar-mask{position:fixed;top:0;left:0}.sidebar-mask{z-index:9;width:100vw;height:100vh;display:none}.sidebar{font-size:16px;background-color:#fff;width:20rem;position:fixed;z-index:10;margin:0;top:3.6rem;left:0;bottom:0;box-sizing:border-box;border-right:1px solid #eaecef;overflow-y:auto}.theme-default-content:not(.custom)>:first-child{margin-top:3.6rem}.theme-default-content:not(.custom) a:hover{text-decoration:underline}.theme-default-content:not(.custom) p.demo{padding:1rem 1.5rem;border:1px solid #ddd;border-radius:4px}.theme-default-content:not(.custom) img{max-width:100%}.theme-default-content.custom{padding:0;margin:0}.theme-default-content.custom img{max-width:100%}a{font-weight:500;text-decoration:none}a,p a code{color:#083ac4}p a code{font-weight:400}kbd{background:#eee;border:.15rem solid #ddd;border-bottom:.25rem solid #ddd;border-radius:.15rem;padding:0 .15em}blockquote{font-size:1rem;color:#999;border-left:.2rem solid #dfe2e5;margin:1rem 0;padding:.25rem 0 .25rem 1rem}blockquote>p{margin:0}ol,ul{padding-left:1.2em}strong{font-weight:600}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25}.theme-default-content:not(.custom)>h1,.theme-default-content:not(.custom)>h2,.theme-default-content:not(.custom)>h3,.theme-default-content:not(.custom)>h4,.theme-default-content:not(.custom)>h5,.theme-default-content:not(.custom)>h6{margin-top:-3.1rem;padding-top:4.6rem;margin-bottom:0}.theme-default-content:not(.custom)>h1:first-child,.theme-default-content:not(.custom)>h2:first-child,.theme-default-content:not(.custom)>h3:first-child,.theme-default-content:not(.custom)>h4:first-child,.theme-default-content:not(.custom)>h5:first-child,.theme-default-content:not(.custom)>h6:first-child{margin-top:-1.5rem;margin-bottom:1rem}.theme-default-content:not(.custom)>h1:first-child+.custom-block,.theme-default-content:not(.custom)>h1:first-child+p,.theme-default-content:not(.custom)>h1:first-child+pre,.theme-default-content:not(.custom)>h2:first-child+.custom-block,.theme-default-content:not(.custom)>h2:first-child+p,.theme-default-content:not(.custom)>h2:first-child+pre,.theme-default-content:not(.custom)>h3:first-child+.custom-block,.theme-default-content:not(.custom)>h3:first-child+p,.theme-default-content:not(.custom)>h3:first-child+pre,.theme-default-content:not(.custom)>h4:first-child+.custom-block,.theme-default-content:not(.custom)>h4:first-child+p,.theme-default-content:not(.custom)>h4:first-child+pre,.theme-default-content:not(.custom)>h5:first-child+.custom-block,.theme-default-content:not(.custom)>h5:first-child+p,.theme-default-content:not(.custom)>h5:first-child+pre,.theme-default-content:not(.custom)>h6:first-child+.custom-block,.theme-default-content:not(.custom)>h6:first-child+p,.theme-default-content:not(.custom)>h6:first-child+pre{margin-top:2rem}h1:focus .header-anchor,h1:hover .header-anchor,h2:focus .header-anchor,h2:hover .header-anchor,h3:focus .header-anchor,h3:hover .header-anchor,h4:focus .header-anchor,h4:hover .header-anchor,h5:focus .header-anchor,h5:hover .header-anchor,h6:focus .header-anchor,h6:hover .header-anchor{opacity:1}h1{font-size:2.2rem}h2{font-size:1.65rem;padding-bottom:.3rem;border-bottom:1px solid #eaecef}h3{font-size:1.35rem}a.header-anchor{font-size:.85em;float:left;margin-left:-.87em;padding-right:.23em;margin-top:.125em;opacity:0}a.header-anchor:focus,a.header-anchor:hover{text-decoration:none}.line-number,code,kbd{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}ol,p,ul{line-height:1.7}hr{border:0;border-top:1px solid #eaecef}table{border-collapse:collapse;margin:1rem 0;display:block;overflow-x:auto}tr{border-top:1px solid #dfe2e5}tr:nth-child(2n){background-color:#f6f8fa}td,th{border:1px solid #dfe2e5;padding:.6em 1em}.theme-container.sidebar-open .sidebar-mask{display:block}.theme-container.no-navbar .theme-default-content:not(.custom)>h1,.theme-container.no-navbar h2,.theme-container.no-navbar h3,.theme-container.no-navbar h4,.theme-container.no-navbar h5,.theme-container.no-navbar h6{margin-top:1.5rem;padding-top:0}.theme-container.no-navbar .sidebar{top:0}@media (min-width:720px){.theme-container.no-sidebar .sidebar{display:none}.theme-container.no-sidebar .page{padding-left:0}}@media (max-width:959px){.sidebar{font-size:15px;width:16.4rem}.page{padding-left:16.4rem}}@media (max-width:719px){.sidebar{top:0;padding-top:3.6rem;transform:translateX(-100%);transition:transform .2s ease}.page{padding-left:0}.theme-container.sidebar-open .sidebar{transform:translateX(0)}.theme-container.no-navbar .sidebar{padding-top:0}}@media (max-width:419px){h1{font-size:1.9rem}.theme-default-content div[class*=language-]{margin:.85rem -1.5rem;border-radius:0}}#nprogress{pointer-events:none}#nprogress .bar{background:#083ac4;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;box-shadow:0 0 10px #083ac4,0 0 5px #083ac4;opacity:1;transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;box-sizing:border-box;border-color:#083ac4 transparent transparent #083ac4;border-style:solid;border-width:2px;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes nprogress-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes nprogress-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.icon.outbound{color:#aaa;display:inline-block;vertical-align:middle;position:relative;top:-1px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.search-box{display:inline-block;position:relative;margin-right:1rem}.search-box input{cursor:text;width:10rem;height:2rem;color:#4e6e8e;display:inline-block;border:1px solid #cfd4db;border-radius:2rem;font-size:.9rem;line-height:2rem;padding:0 .5rem 0 2rem;outline:none;transition:all .2s ease;background:#fff url(/doc/assets/img/search.83621669.svg) .6rem .5rem no-repeat;background-size:1rem}.search-box input:focus{cursor:auto;border-color:#083ac4}.search-box .suggestions{background:#fff;width:20rem;position:absolute;top:2rem;border:1px solid #cfd4db;border-radius:6px;padding:.4rem;list-style-type:none}.search-box .suggestions.align-right{right:0}.search-box .suggestion{line-height:1.4;padding:.4rem .6rem;border-radius:4px;cursor:pointer}.search-box .suggestion a{white-space:normal;color:#5d82a6}.search-box .suggestion a .page-title{font-weight:600}.search-box .suggestion a .header{font-size:.9em;margin-left:.25em}.search-box .suggestion.focused{background-color:#f3f4f5}.search-box .suggestion.focused a{color:#083ac4}@media (max-width:959px){.search-box input{cursor:pointer;width:0;border-color:transparent;position:relative}.search-box input:focus{cursor:text;left:0;width:10rem}}@media (-ms-high-contrast:none){.search-box input{height:2rem}}@media (max-width:959px) and (min-width:719px){.search-box .suggestions{left:0}}@media (max-width:719px){.search-box{margin-right:0}.search-box input{left:1rem}.search-box .suggestions{right:0}}@media (max-width:419px){.search-box .suggestions{width:calc(100vw - 4rem)}.search-box input:focus{width:8rem}}.sidebar-button{cursor:pointer;display:none;width:1.25rem;height:1.25rem;position:absolute;padding:.6rem;top:.6rem;left:1rem}.sidebar-button .icon{display:block;width:1.25rem;height:1.25rem}@media (max-width:719px){.sidebar-button{display:block}}.dropdown-enter,.dropdown-leave-to{height:0!important}.dropdown-wrapper{cursor:pointer}.dropdown-wrapper .dropdown-title,.dropdown-wrapper .mobile-dropdown-title{display:block;font-size:.9rem;font-family:inherit;cursor:inherit;padding:inherit;line-height:1.4rem;background:transparent;border:none;font-weight:500;color:#2c3e50}.dropdown-wrapper .dropdown-title:hover,.dropdown-wrapper .mobile-dropdown-title:hover{border-color:transparent}.dropdown-wrapper .dropdown-title .arrow,.dropdown-wrapper .mobile-dropdown-title .arrow{vertical-align:middle;margin-top:-1px;margin-left:.4rem}.dropdown-wrapper .mobile-dropdown-title{display:none;font-weight:600}.dropdown-wrapper .mobile-dropdown-title font-size inherit:hover{color:#083ac4}.dropdown-wrapper .nav-dropdown .dropdown-item{color:inherit;line-height:1.7rem}.dropdown-wrapper .nav-dropdown .dropdown-item h4{margin:.45rem 0 0;border-top:1px solid #eee;padding:1rem 1.5rem .45rem 1.25rem}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem-wrapper{padding:0;list-style:none}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem-wrapper .dropdown-subitem{font-size:.9em}.dropdown-wrapper .nav-dropdown .dropdown-item a{display:block;line-height:1.7rem;position:relative;border-bottom:none;font-weight:400;margin-bottom:0;padding:0 1.5rem 0 1.25rem}.dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active,.dropdown-wrapper .nav-dropdown .dropdown-item a:hover{color:#083ac4}.dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active:after{content:"";width:0;height:0;border-left:5px solid #083ac4;border-top:3px solid transparent;border-bottom:3px solid transparent;position:absolute;top:calc(50% - 2px);left:9px}.dropdown-wrapper .nav-dropdown .dropdown-item:first-child h4{margin-top:0;padding-top:0;border-top:0}@media (max-width:719px){.dropdown-wrapper.open .dropdown-title{margin-bottom:.5rem}.dropdown-wrapper .dropdown-title{display:none}.dropdown-wrapper .mobile-dropdown-title{display:block}.dropdown-wrapper .nav-dropdown{transition:height .1s ease-out;overflow:hidden}.dropdown-wrapper .nav-dropdown .dropdown-item h4{border-top:0;margin-top:0;padding-top:0}.dropdown-wrapper .nav-dropdown .dropdown-item>a,.dropdown-wrapper .nav-dropdown .dropdown-item h4{font-size:15px;line-height:2rem}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem{font-size:14px;padding-left:1rem}}@media (min-width:719px){.dropdown-wrapper{height:1.8rem}.dropdown-wrapper.open .nav-dropdown,.dropdown-wrapper:hover .nav-dropdown{display:block!important}.dropdown-wrapper.open:blur{display:none}.dropdown-wrapper .nav-dropdown{display:none;height:auto!important;box-sizing:border-box;max-height:calc(100vh - 2.7rem);overflow-y:auto;position:absolute;top:100%;right:0;background-color:#fff;padding:.6rem 0;border:1px solid;border-color:#ddd #ddd #ccc;text-align:left;border-radius:.25rem;white-space:nowrap;margin:0}}.nav-links{display:inline-block}.nav-links a{line-height:1.4rem;color:inherit}.nav-links a.router-link-active,.nav-links a:hover{color:#083ac4}.nav-links .nav-item{position:relative;display:inline-block;margin-left:1.5rem;line-height:2rem}.nav-links .nav-item:first-child{margin-left:0}.nav-links .repo-link{margin-left:1.5rem}@media (max-width:719px){.nav-links .nav-item,.nav-links .repo-link{margin-left:0}}@media (min-width:719px){.nav-links a.router-link-active,.nav-links a:hover{color:#2c3e50}.nav-item>a:not(.external).router-link-active,.nav-item>a:not(.external):hover{margin-bottom:-2px;border-bottom:2px solid #0941dc}}.navbar{padding:.7rem 1.5rem;line-height:2.2rem}.navbar a,.navbar img,.navbar span{display:inline-block}.navbar .logo{height:2.2rem;min-width:2.2rem;margin-right:.8rem;vertical-align:top}.navbar .site-name{font-size:1.3rem;font-weight:600;color:#2c3e50;position:relative}.navbar .links{padding-left:1.5rem;box-sizing:border-box;background-color:#fff;white-space:nowrap;font-size:.9rem;position:absolute;right:1.5rem;top:.7rem;display:flex}.navbar .links .search-box{flex:0 0 auto;vertical-align:top}@media (max-width:719px){.navbar{padding-left:4rem}.navbar .can-hide{display:none}.navbar .links{padding-left:1.5rem}.navbar .site-name{width:calc(100vw - 9.4rem);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}}.page-edit{max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.page-edit{padding:2rem}}@media (max-width:419px){.page-edit{padding:1.5rem}}.page-edit{padding-top:1rem;padding-bottom:1rem;overflow:auto}.page-edit .edit-link{display:inline-block}.page-edit .edit-link a{color:#4e6e8e;margin-right:.25rem}.page-edit .last-updated{float:right;font-size:.9em}.page-edit .last-updated .prefix{font-weight:500;color:#4e6e8e}.page-edit .last-updated .time{font-weight:400;color:#767676}@media (max-width:719px){.page-edit .edit-link{margin-bottom:.5rem}.page-edit .last-updated{font-size:.8em;float:none;text-align:left}}.page-nav{max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.page-nav{padding:2rem}}@media (max-width:419px){.page-nav{padding:1.5rem}}.page-nav{padding-top:1rem;padding-bottom:0}.page-nav .inner{min-height:2rem;margin-top:0;border-top:1px solid #eaecef;padding-top:1rem;overflow:auto}.page-nav .next{float:right}.page{padding-bottom:2rem;display:block}.sidebar-group .sidebar-group{padding-left:.5em}.sidebar-group:not(.collapsable) .sidebar-heading:not(.clickable){cursor:auto;color:inherit}.sidebar-group.is-sub-group{padding-left:0}.sidebar-group.is-sub-group>.sidebar-heading{font-size:.95em;line-height:1.4;font-weight:400;padding-left:2rem}.sidebar-group.is-sub-group>.sidebar-heading:not(.clickable){opacity:.5}.sidebar-group.is-sub-group>.sidebar-group-items{padding-left:1rem}.sidebar-group.is-sub-group>.sidebar-group-items>li>.sidebar-link{font-size:.95em;border-left:none}.sidebar-group.depth-2>.sidebar-heading{border-left:none}.sidebar-heading{color:#2c3e50;transition:color .15s ease;cursor:pointer;font-size:1.1em;font-weight:700;padding:.35rem 1.5rem .35rem 1.25rem;width:100%;box-sizing:border-box;margin:0;border-left:.25rem solid transparent}.sidebar-heading.open,.sidebar-heading:hover{color:inherit}.sidebar-heading .arrow{position:relative;top:-.12em;left:.5em}.sidebar-heading.clickable.active{font-weight:600;color:#083ac4;border-left-color:#083ac4}.sidebar-heading.clickable:hover{color:#083ac4}.sidebar-group-items{transition:height .1s ease-out;font-size:.95em;overflow:hidden}.sidebar .sidebar-sub-headers{padding-left:1rem;font-size:.95em}a.sidebar-link{font-size:1em;font-weight:400;display:inline-block;color:#2c3e50;border-left:.25rem solid transparent;padding:.35rem 1rem .35rem 1.25rem;line-height:1.4;width:100%;box-sizing:border-box}a.sidebar-link:hover{color:#083ac4}a.sidebar-link.active{font-weight:600;color:#083ac4;border-left-color:#083ac4}.sidebar-group a.sidebar-link{padding-left:2rem}.sidebar-sub-headers a.sidebar-link{padding-top:.25rem;padding-bottom:.25rem;border-left:none}.sidebar-sub-headers a.sidebar-link.active{font-weight:500}.sidebar ul{padding:0;margin:0;list-style-type:none}.sidebar a{display:inline-block}.sidebar .nav-links{display:none;border-bottom:1px solid #eaecef;padding:.5rem 0 .75rem}.sidebar .nav-links a{font-weight:600}.sidebar .nav-links .nav-item,.sidebar .nav-links .repo-link{display:block;line-height:1.25rem;font-size:1.1em;padding:.5rem 0 .5rem 1.5rem}.sidebar>.sidebar-links{padding:1.5rem 0}.sidebar>.sidebar-links>li>a.sidebar-link{font-size:1.1em;line-height:1.7;font-weight:700}.sidebar>.sidebar-links>li:not(:first-child){margin-top:.75rem}@media (max-width:719px){.sidebar .nav-links{display:block}.sidebar .nav-links .dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active:after{top:calc(1rem - 2px)}.sidebar>.sidebar-links{padding:1rem 0}}.container{max-width:1080px;margin:0 auto;display:block}.home{padding:3.6rem 0;display:block;max-width:none;margin:initial;background-color:#f5f8fe}.home .hero{text-align:center}.home .hero img{width:190px;height:50px;display:inline-block;margin:initial;margin-bottom:0;margin-right:20px;vertical-align:sub}.home .hero h1{font-size:1.5rem;font-weight:600}.home .hero .action,.home .hero .description,.home .hero h1{margin:1.8rem auto}.home .hero .description{max-width:35rem;font-size:1.6rem;line-height:1.3;color:#6a8bad}.home .hero .action-button{display:inline-block;font-size:1rem;color:#fff;background-color:#083ac4;padding:.4rem 2rem;border-radius:4px;transition:background-color .1s ease;box-sizing:border-box;border-bottom:1px solid #0734b0}.home .hero .action-button:hover{background-color:#0943e1}.home .features{border-top:1px solid #eaecef;padding:80px 0;background-color:#fff;margin-top:2.5rem}.home .features .container{display:flex;flex-wrap:wrap;align-items:flex-start;align-content:stretch;justify-content:space-between}.home .feature{flex-grow:1;flex-basis:30%;max-width:27%;border-radius:8px;padding:20px 22px;box-shadow:0 0 8px rgba(0,0,0,.1)}.home .feature .feature-index{border-radius:4px;background-color:#083ac4;width:50px;line-height:50px;color:#fff;font-size:20px;text-align:center;margin-bottom:6px;box-shadow:1px 0 0 0 rgba(0,0,0,.1)}.home .feature h2{font-size:1.4rem;font-weight:500;border-bottom:none;padding-bottom:0;color:#3a5169}.home .feature p{color:#4e6e8e}.home .footer{padding:2.5rem;border-top:1px solid #eaecef;text-align:center;color:#4e6e8e}@media (max-width:719px){.home .features{flex-direction:column}.home .feature{max-width:100%;padding:0 2.5rem}}@media (max-width:419px){.home{padding-left:1.5rem;padding-right:1.5rem}.home .hero img{max-height:210px;margin:2rem auto 1.2rem}.home .hero h1{font-size:2rem}.home .hero .action,.home .hero .description,.home .hero h1{margin:1.2rem auto}.home .hero .description{font-size:1.2rem}.home .hero .action-button{font-size:1rem;padding:.6rem 1.2rem}.home .feature h2{font-size:1.25rem}}.theme-code-block[data-v-6d04095e]{display:none}.theme-code-block__active[data-v-6d04095e]{display:block}.theme-code-block>pre[data-v-6d04095e]{background-color:orange}.theme-code-group__nav[data-v-32c2d7ed]{margin-bottom:-35px;background-color:#282c34;padding-bottom:22px;border-top-left-radius:6px;border-top-right-radius:6px;padding-left:10px;padding-top:10px}.theme-code-group__ul[data-v-32c2d7ed]{margin:auto 0;padding-left:0;display:inline-flex;list-style:none}.theme-code-group__nav-tab[data-v-32c2d7ed]{border:0;padding:5px;cursor:pointer;background-color:transparent;font-size:.85em;line-height:1.4;color:hsla(0,0%,100%,.9);font-weight:600}.theme-code-group__nav-tab-active[data-v-32c2d7ed]{border-bottom:1px solid #42b983}.pre-blank[data-v-32c2d7ed]{color:#42b983}.badge[data-v-15b7b770]{display:inline-block;font-size:14px;height:18px;line-height:18px;border-radius:3px;padding:0 6px;color:#fff}.badge.green[data-v-15b7b770],.badge.tip[data-v-15b7b770],.badge[data-v-15b7b770]{background-color:#42b983}.badge.error[data-v-15b7b770]{background-color:#da5961}.badge.warn[data-v-15b7b770],.badge.warning[data-v-15b7b770],.badge.yellow[data-v-15b7b770]{background-color:#e7c000}.badge+.badge[data-v-15b7b770]{margin-left:5px} \ No newline at end of file diff --git a/doc-dist/assets/img/deploy.d1b1d698.png b/doc-dist/assets/img/deploy.d1b1d698.png deleted file mode 100644 index deca669..0000000 Binary files a/doc-dist/assets/img/deploy.d1b1d698.png and /dev/null differ diff --git a/doc-dist/assets/img/dynamic.15a5303a.png b/doc-dist/assets/img/dynamic.15a5303a.png deleted file mode 100644 index cdb94f1..0000000 Binary files a/doc-dist/assets/img/dynamic.15a5303a.png and /dev/null differ diff --git a/doc-dist/assets/img/framework.1c9c696b.png b/doc-dist/assets/img/framework.1c9c696b.png deleted file mode 100644 index 550ef98..0000000 Binary files a/doc-dist/assets/img/framework.1c9c696b.png and /dev/null differ diff --git a/doc-dist/assets/img/home.f76105db.png b/doc-dist/assets/img/home.f76105db.png deleted file mode 100644 index 72bb501..0000000 Binary files a/doc-dist/assets/img/home.f76105db.png and /dev/null differ diff --git a/doc-dist/assets/img/logo.001d04e6.svg b/doc-dist/assets/img/logo.001d04e6.svg deleted file mode 100644 index 825d4cf..0000000 --- a/doc-dist/assets/img/logo.001d04e6.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - 编组 - Created with Sketch. - - - - - - - \ No newline at end of file diff --git a/doc-dist/assets/img/preview-flow.b37c7798.png b/doc-dist/assets/img/preview-flow.b37c7798.png deleted file mode 100644 index 952bc36..0000000 Binary files a/doc-dist/assets/img/preview-flow.b37c7798.png and /dev/null differ diff --git a/doc-dist/assets/img/preview-machine.895a0711.png b/doc-dist/assets/img/preview-machine.895a0711.png deleted file mode 100644 index d4af158..0000000 Binary files a/doc-dist/assets/img/preview-machine.895a0711.png and /dev/null differ diff --git a/doc-dist/assets/img/preview-page.3ec86df5.png b/doc-dist/assets/img/preview-page.3ec86df5.png deleted file mode 100644 index 714b83c..0000000 Binary files a/doc-dist/assets/img/preview-page.3ec86df5.png and /dev/null differ diff --git a/doc-dist/assets/img/screenshot.daeecedd.png b/doc-dist/assets/img/screenshot.daeecedd.png deleted file mode 100644 index 91b3502..0000000 Binary files a/doc-dist/assets/img/screenshot.daeecedd.png and /dev/null differ diff --git a/doc-dist/assets/img/search.83621669.svg b/doc-dist/assets/img/search.83621669.svg deleted file mode 100644 index 03d8391..0000000 --- a/doc-dist/assets/img/search.83621669.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/doc-dist/assets/img/template-bg.244b9ac7.png b/doc-dist/assets/img/template-bg.244b9ac7.png deleted file mode 100644 index cd97386..0000000 Binary files a/doc-dist/assets/img/template-bg.244b9ac7.png and /dev/null differ diff --git a/doc-dist/assets/img/template-ft.4f6e0d14.png b/doc-dist/assets/img/template-ft.4f6e0d14.png deleted file mode 100644 index bb84679..0000000 Binary files a/doc-dist/assets/img/template-ft.4f6e0d14.png and /dev/null differ diff --git a/doc-dist/assets/js/10.b0d462d3.js b/doc-dist/assets/js/10.b0d462d3.js deleted file mode 100644 index fd24475..0000000 --- a/doc-dist/assets/js/10.b0d462d3.js +++ /dev/null @@ -1,72 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [10], - { - 359: function(t, r, a) { - t.exports = a.p + 'assets/img/dynamic.15a5303a.png'; - }, - 387: function(t, r, a) { - 'use strict'; - a.r(r); - var n = a(42), - i = Object(n.a)( - {}, - function() { - var t = this, - r = t.$createElement, - n = t._self._c || r; - return n('ContentSlotsDistributor', { attrs: { 'slot-key': t.$parent.slotKey } }, [ - n('h1', { attrs: { id: '组件动态加载' } }, [ - n('a', { staticClass: 'header-anchor', attrs: { href: '#组件动态加载' } }, [ - t._v('#'), - ]), - t._v(' 组件动态加载'), - ]), - t._v(' '), - n('p', [ - t._v( - '目前H5-Dooring的组件都是通过动态加载的方式引入,好处是我们在页面中只会加载我们需要的组件,不需要的组件不会被加载,这样可以提高页面加载的速度,这样做也会出现一些问题,比如一个长页面,配置了很多组件,那么一个页面加载过程可以会触发多次请求,目前还没有遇到性能问题,但后续会逐渐优化这个问题。', - ), - ]), - t._v(' '), - n('h2', { attrs: { id: 'umi3提供的dynamic' } }, [ - n('a', { staticClass: 'header-anchor', attrs: { href: '#umi3提供的dynamic' } }, [ - t._v('#'), - ]), - t._v(' umi3提供的dynamic'), - ]), - t._v(' '), - n('p', [ - t._v( - '目前组件的动态加载我们采用的umi的dynamic方案,基于它我们上层封装了一个组件动态加载器,原理如下:', - ), - ]), - t._v(' '), - n('img', { attrs: { src: a(359), alt: 'foo' } }), - t._v(' '), - n('p', [ - t._v('具体代码可以参考Dooring的Github地址:'), - n( - 'a', - { - attrs: { - href: 'https://github.com/MrXujiang/h5-Dooring', - target: '_blank', - rel: 'noopener noreferrer', - }, - }, - [t._v('https://github.com/MrXujiang/h5-Dooring'), n('OutboundLink')], - 1, - ), - ]), - ]); - }, - [], - !1, - null, - null, - null, - ); - r.default = i.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/11.a817ab83.js b/doc-dist/assets/js/11.a817ab83.js deleted file mode 100644 index 69369e8..0000000 --- a/doc-dist/assets/js/11.a817ab83.js +++ /dev/null @@ -1,107 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [11], - { - 360: function(e, t, v) { - e.exports = v.p + 'assets/img/deploy.d1b1d698.png'; - }, - 389: function(e, t, v) { - 'use strict'; - v.r(t); - var _ = v(42), - r = Object(_.a)( - {}, - function() { - var e = this, - t = e.$createElement, - _ = e._self._c || t; - return _('ContentSlotsDistributor', { attrs: { 'slot-key': e.$parent.slotKey } }, [ - _('p', [e._v('私有化部署需要获取4个核心项目包, 包括')]), - e._v(' '), - _('ul', [ - _('li', [e._v('H5编辑器(h5_plus)')]), - e._v(' '), - _('li', [e._v('H5基座(h5)')]), - e._v(' '), - _('li', [e._v('Dooring管理后台(Dooring-Admin)')]), - e._v(' '), - _('li', [e._v('服务端项目(Server)')]), - ]), - e._v(' '), - _('p', [ - e._v('获取以上四个核心源码工程需要满足商业授权协议, 具体可联系'), - _( - 'a', - { - attrs: { - href: 'http://h5.dooring.cn/uploads/WechatIMG3_1758e9753e2.jpeg', - target: '_blank', - rel: 'noopener noreferrer', - }, - }, - [e._v('徐小夕'), _('OutboundLink')], - 1, - ), - ]), - e._v(' '), - _('h3', { attrs: { id: '部署架构图' } }, [ - _('a', { staticClass: 'header-anchor', attrs: { href: '#部署架构图' } }, [ - e._v('#'), - ]), - e._v(' 部署架构图'), - ]), - e._v(' '), - _('img', { attrs: { src: v(360), alt: 'H5-dooring部署' } }), - e._v(' '), - _('p', [e._v('部署流程如下:')]), - e._v(' '), - _('ol', [ - _('li', [e._v('下载4个源码工程, 安装依赖(npm install 或 yarn)')]), - e._v(' '), - _('li', [ - e._v('打包3个前端工程至'), - _('code', [e._v('server')]), - e._v('的static目录下'), - ]), - e._v(' '), - _('li', [ - e._v('在'), - _('code', [e._v('server')]), - e._v('下本地运行 '), - _('code', [e._v('yarn start')]), - e._v(' 或 '), - _('code', [e._v('npm start')]), - e._v(' 启动服务端进行本地测试'), - ]), - e._v(' '), - _('li', [ - e._v('打包服务端代码, '), - _('code', [e._v('yarn build')]), - e._v(' 生成 '), - _('code', [e._v('dist')]), - e._v(' 目录, 建议使用 '), - _('code', [e._v('pm2')]), - e._v(' 做'), - _('code', [e._v('nodejs')]), - e._v('服务的负载均衡, 运行 '), - _('code', [e._v('pm2 start dist/index.js')]), - e._v('启动生产环境代码'), - ]), - ]), - e._v(' '), - _('p', [ - e._v('也可以将以上步骤集成到gitlab等CI, CD服务中, 进行自动化打包发布, 或者采用'), - _('code', [e._v('docker')]), - e._v('进行容器化部署.'), - ]), - ]); - }, - [], - !1, - null, - null, - null, - ); - t.default = r.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/12.7537ddc3.js b/doc-dist/assets/js/12.7537ddc3.js deleted file mode 100644 index 5d8cde0..0000000 --- a/doc-dist/assets/js/12.7537ddc3.js +++ /dev/null @@ -1,39 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [12], - { - 361: function(t, e, s) { - t.exports = s.p + 'assets/img/preview-machine.895a0711.png'; - }, - 392: function(t, e, s) { - 'use strict'; - s.r(e); - var a = s(42), - n = Object(a.a)( - {}, - function() { - var t = this, - e = t.$createElement, - a = t._self._c || e; - return a('ContentSlotsDistributor', { attrs: { 'slot-key': t.$parent.slotKey } }, [ - a('h1', { attrs: { id: '真机预览' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#真机预览' } }, [t._v('#')]), - t._v(' 真机预览'), - ]), - t._v(' '), - a('p', [t._v('真机预览和网页预览的流程类似,工作流程如下:')]), - t._v(' '), - a('img', { attrs: { src: s(361), alt: 'foo' } }), - t._v(' '), - a('p', [t._v('由于不同机型预览的效果有些许不同,最终效果以实际看到的为主。')]), - ]); - }, - [], - !1, - null, - null, - null, - ); - e.default = n.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/13.c7b7a778.js b/doc-dist/assets/js/13.c7b7a778.js deleted file mode 100644 index 65a3aba..0000000 --- a/doc-dist/assets/js/13.c7b7a778.js +++ /dev/null @@ -1,42 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [13], - { - 364: function(t, s, e) { - t.exports = e.p + 'assets/img/screenshot.daeecedd.png'; - }, - 395: function(t, s, e) { - 'use strict'; - e.r(s); - var a = e(42), - i = Object(a.a)( - {}, - function() { - var t = this.$createElement, - s = this._self._c || t; - return s('ContentSlotsDistributor', { attrs: { 'slot-key': this.$parent.slotKey } }, [ - s('h1', { attrs: { id: '截图功能' } }, [ - s('a', { staticClass: 'header-anchor', attrs: { href: '#截图功能' } }, [ - this._v('#'), - ]), - this._v(' 截图功能'), - ]), - this._v(' '), - s('p', [ - this._v( - '截图功能这里我们主要使用了dom-to-image这个库,来将html转化为图片,并进行分享。', - ), - ]), - this._v(' '), - s('img', { attrs: { src: e(364), alt: 'foo' } }), - ]); - }, - [], - !1, - null, - null, - null, - ); - s.default = i.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/14.eff270f4.js b/doc-dist/assets/js/14.eff270f4.js deleted file mode 100644 index 008b7c5..0000000 --- a/doc-dist/assets/js/14.eff270f4.js +++ /dev/null @@ -1,31 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [14], - { - 367: function(t, s, e) { - t.exports = e.p + 'assets/img/framework.1c9c696b.png'; - }, - 399: function(t, s, e) { - 'use strict'; - e.r(s); - var n = e(42), - o = Object(n.a)( - {}, - function() { - var t = this.$createElement, - s = this._self._c || t; - return s('ContentSlotsDistributor', { attrs: { 'slot-key': this.$parent.slotKey } }, [ - s('img', { attrs: { src: e(367), alt: 'foo' } }), - this._v(' '), - s('p', [this._v('注:灰色部分还未实现,正在更新中...')]), - ]); - }, - [], - !1, - null, - null, - null, - ); - s.default = o.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/15.2cabc303.js b/doc-dist/assets/js/15.2cabc303.js deleted file mode 100644 index 8742417..0000000 --- a/doc-dist/assets/js/15.2cabc303.js +++ /dev/null @@ -1,93 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [15], - { - 368: function(t, a, s) { - t.exports = s.p + 'assets/img/home.f76105db.png'; - }, - 400: function(t, a, s) { - 'use strict'; - s.r(a); - var e = s(42), - r = Object(e.a)( - {}, - function() { - var t = this, - a = t.$createElement, - e = t._self._c || a; - return e('ContentSlotsDistributor', { attrs: { 'slot-key': t.$parent.slotKey } }, [ - e('h1', { attrs: { id: '快速上手' } }, [ - e('a', { staticClass: 'header-anchor', attrs: { href: '#快速上手' } }, [t._v('#')]), - t._v(' 快速上手'), - ]), - t._v(' '), - e('h2', { attrs: { id: '环境准备' } }, [ - e('a', { staticClass: 'header-anchor', attrs: { href: '#环境准备' } }, [t._v('#')]), - t._v(' 环境准备'), - ]), - t._v(' '), - e('p', [ - t._v('首先得有 node,并确保 node 版本是 '), - e('code', [t._v('10.13')]), - t._v(' 或以上,(mac/win 下推荐使用 n 来管理 node 版本)'), - ]), - t._v(' '), - e('div', { staticClass: 'language- extra-class' }, [ - e('pre', { pre: !0, attrs: { class: 'language-text' } }, [ - e('code', [t._v('$ node-v\nv10.13.0\n')]), - ]), - ]), - e('p', [t._v('注:推荐使用 yarn 管理 npm 依赖')]), - t._v(' '), - e('h2', { attrs: { id: '源码工程' } }, [ - e('a', { staticClass: 'header-anchor', attrs: { href: '#源码工程' } }, [t._v('#')]), - t._v(' 源码工程'), - ]), - t._v(' '), - e('table', [ - e('thead', [ - e('tr', [ - e('th', [t._v('h5_plus(编辑器项目)')]), - t._v(' '), - e('th', [t._v('admin(管理后台)')]), - t._v(' '), - e('th', [t._v('Server(服务端项目)')]), - ]), - ]), - t._v(' '), - e('tbody'), - ]), - t._v(' '), - e('p', [ - t._v( - '本地拿到源码工程之后先安装对应依赖,在对应工程目录里执行 yarn 命令,等待依赖安装完成。', - ), - ]), - t._v(' '), - e('h2', { attrs: { id: '本地运行' } }, [ - e('a', { staticClass: 'header-anchor', attrs: { href: '#本地运行' } }, [t._v('#')]), - t._v(' 本地运行'), - ]), - t._v(' '), - e('p', [ - t._v( - '1.首先本地启动 server,在 src 目录的 index.js 中修改跨域白名单,改为本地的 ip+端口,如http://192.167.0.3:8000', - ), - ]), - t._v(' '), - e('p', [ - t._v('2.其次本地启动 h5_plus,启动完毕在浏览器打开对应的启动地址即可查看,如下:'), - ]), - t._v(' '), - e('img', { attrs: { src: s(368), alt: 'foo' } }), - ]); - }, - [], - !1, - null, - null, - null, - ); - a.default = r.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/16.ebc27227.js b/doc-dist/assets/js/16.ebc27227.js deleted file mode 100644 index 5885960..0000000 --- a/doc-dist/assets/js/16.ebc27227.js +++ /dev/null @@ -1,161 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [16], - { - 378: function(t, e, a) { - 'use strict'; - a.r(e); - var o = a(374), - n = a(375), - i = a(376), - s = a(308), - r = { - name: 'Layout', - components: { Page: n.a, Sidebar: i.a, Navbar: o.a }, - data: function() { - return { isSidebarOpen: !1 }; - }, - computed: { - shouldShowNavbar: function() { - var t = this.$site.themeConfig; - return ( - !1 !== this.$page.frontmatter.navbar && - !1 !== t.navbar && - (this.$title || t.logo || t.repo || t.nav || this.$themeLocaleConfig.nav) - ); - }, - shouldShowSidebar: function() { - var t = this.$page.frontmatter; - return !t.home && !1 !== t.sidebar && this.sidebarItems.length; - }, - sidebarItems: function() { - return Object(s.l)(this.$page, this.$page.regularPath, this.$site, this.$localePath); - }, - pageClasses: function() { - var t = this.$page.frontmatter.pageClass; - return [ - { - 'no-navbar': !this.shouldShowNavbar, - 'sidebar-open': this.isSidebarOpen, - 'no-sidebar': !this.shouldShowSidebar, - }, - t, - ]; - }, - }, - mounted: function() { - var t = this; - this.$router.afterEach(function() { - t.isSidebarOpen = !1; - }); - }, - methods: { - toggleSidebar: function(t) { - (this.isSidebarOpen = 'boolean' == typeof t ? t : !this.isSidebarOpen), - this.$emit('toggle-sidebar', this.isSidebarOpen); - }, - onTouchStart: function(t) { - this.touchStart = { x: t.changedTouches[0].clientX, y: t.changedTouches[0].clientY }; - }, - onTouchEnd: function(t) { - var e = t.changedTouches[0].clientX - this.touchStart.x, - a = t.changedTouches[0].clientY - this.touchStart.y; - Math.abs(e) > Math.abs(a) && - Math.abs(e) > 40 && - (e > 0 && this.touchStart.x <= 80 - ? this.toggleSidebar(!0) - : this.toggleSidebar(!1)); - }, - }, - }, - h = a(42), - u = Object(h.a)( - r, - function() { - var t = this, - e = t.$createElement, - a = t._self._c || e; - return a( - 'div', - { - staticClass: 'theme-container', - class: t.pageClasses, - on: { touchstart: t.onTouchStart, touchend: t.onTouchEnd }, - }, - [ - t.shouldShowNavbar - ? a('Navbar', { on: { 'toggle-sidebar': t.toggleSidebar } }) - : t._e(), - t._v(' '), - a('div', { - staticClass: 'sidebar-mask', - on: { - click: function(e) { - return t.toggleSidebar(!1); - }, - }, - }), - t._v(' '), - a('Sidebar', { - attrs: { items: t.sidebarItems }, - on: { 'toggle-sidebar': t.toggleSidebar }, - scopedSlots: t._u( - [ - { - key: 'top', - fn: function() { - return [t._t('sidebar-top')]; - }, - proxy: !0, - }, - { - key: 'bottom', - fn: function() { - return [t._t('sidebar-bottom')]; - }, - proxy: !0, - }, - ], - null, - !0, - ), - }), - t._v(' '), - t.$page.frontmatter.home - ? a('Home') - : a('Page', { - attrs: { 'sidebar-items': t.sidebarItems }, - scopedSlots: t._u( - [ - { - key: 'top', - fn: function() { - return [t._t('page-top')]; - }, - proxy: !0, - }, - { - key: 'bottom', - fn: function() { - return [t._t('page-bottom')]; - }, - proxy: !0, - }, - ], - null, - !0, - ), - }), - ], - 1, - ); - }, - [], - !1, - null, - null, - null, - ); - e.default = u.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/17.e2c644fa.js b/doc-dist/assets/js/17.e2c644fa.js deleted file mode 100644 index 86d96f1..0000000 --- a/doc-dist/assets/js/17.e2c644fa.js +++ /dev/null @@ -1,50 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [17], - { - 377: function(t, e, s) { - 'use strict'; - s.r(e); - var n = [ - "There's nothing here.", - 'How did we get here?', - "That's a Four-Oh-Four.", - "Looks like we've got some broken links.", - ], - o = { - methods: { - getMsg: function() { - return n[Math.floor(Math.random() * n.length)]; - }, - }, - }, - i = s(42), - h = Object(i.a)( - o, - function() { - var t = this.$createElement, - e = this._self._c || t; - return e('div', { staticClass: 'theme-container' }, [ - e( - 'div', - { staticClass: 'theme-default-content' }, - [ - e('h1', [this._v('404')]), - this._v(' '), - e('blockquote', [this._v(this._s(this.getMsg()))]), - this._v(' '), - e('RouterLink', { attrs: { to: '/' } }, [this._v('\n Take me home.\n ')]), - ], - 1, - ), - ]); - }, - [], - !1, - null, - null, - null, - ); - e.default = h.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/18.8be51919.js b/doc-dist/assets/js/18.8be51919.js deleted file mode 100644 index 0d7d94d..0000000 --- a/doc-dist/assets/js/18.8be51919.js +++ /dev/null @@ -1,25 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [18], - { - 384: function(t, e, n) { - 'use strict'; - n.r(e); - var s = n(42), - l = Object(s.a)( - {}, - function() { - var t = this.$createElement; - return (this._self._c || t)('ContentSlotsDistributor', { - attrs: { 'slot-key': this.$parent.slotKey }, - }); - }, - [], - !1, - null, - null, - null, - ); - e.default = l.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/19.5b05b8ec.js b/doc-dist/assets/js/19.5b05b8ec.js deleted file mode 100644 index b2cee64..0000000 --- a/doc-dist/assets/js/19.5b05b8ec.js +++ /dev/null @@ -1,26 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [19], - { - 383: function(t, e, n) { - 'use strict'; - n.r(e); - var s = n(42), - l = Object(s.a)( - {}, - function() { - var t = this.$createElement, - e = this._self._c || t; - return e('ContentSlotsDistributor', { attrs: { 'slot-key': this.$parent.slotKey } }, [ - e('p', [this._v('正在建设中...')]), - ]); - }, - [], - !1, - null, - null, - null, - ); - e.default = l.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/2.693230f5.js b/doc-dist/assets/js/2.693230f5.js deleted file mode 100644 index 46725dc..0000000 --- a/doc-dist/assets/js/2.693230f5.js +++ /dev/null @@ -1,2061 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [2], - { - 308: function(t, e, n) { - 'use strict'; - n.d(e, 'd', function() { - return i; - }), - n.d(e, 'a', function() { - return s; - }), - n.d(e, 'i', function() { - return a; - }), - n.d(e, 'f', function() { - return u; - }), - n.d(e, 'g', function() { - return l; - }), - n.d(e, 'h', function() { - return c; - }), - n.d(e, 'b', function() { - return p; - }), - n.d(e, 'e', function() { - return f; - }), - n.d(e, 'k', function() { - return h; - }), - n.d(e, 'l', function() { - return d; - }), - n.d(e, 'c', function() { - return v; - }), - n.d(e, 'j', function() { - return m; - }); - n(23), n(93), n(170), n(96), n(172), n(65), n(43), n(309), n(66), n(310), n(95); - var i = /#.*$/, - r = /\.(md|html)$/, - s = /\/$/, - a = /^[a-z]+:/i; - function o(t) { - return decodeURI(t) - .replace(i, '') - .replace(r, ''); - } - function u(t) { - return a.test(t); - } - function l(t) { - return /^mailto:/.test(t); - } - function c(t) { - return /^tel:/.test(t); - } - function p(t) { - if (u(t)) return t; - var e = t.match(i), - n = e ? e[0] : '', - r = o(t); - return s.test(r) ? t : r + '.html' + n; - } - function f(t, e) { - var n = decodeURIComponent(t.hash), - r = (function(t) { - var e = t.match(i); - if (e) return e[0]; - })(e); - return (!r || n === r) && o(t.path) === o(e); - } - function h(t, e, n) { - if (u(e)) return { type: 'external', path: e }; - n && - (e = (function(t, e, n) { - var i = t.charAt(0); - if ('/' === i) return t; - if ('?' === i || '#' === i) return e + t; - var r = e.split('/'); - (n && r[r.length - 1]) || r.pop(); - for (var s = t.replace(/^\//, '').split('/'), a = 0; a < s.length; a++) { - var o = s[a]; - '..' === o ? r.pop() : '.' !== o && r.push(o); - } - '' !== r[0] && r.unshift(''); - return r.join('/'); - })(e, n)); - for (var i = o(e), r = 0; r < t.length; r++) - if (o(t[r].regularPath) === i) - return Object.assign({}, t[r], { type: 'page', path: p(t[r].path) }); - return ( - console.error('[vuepress] No matching page found for sidebar item "'.concat(e, '"')), {} - ); - } - function d(t, e, n, i) { - var r = n.pages, - s = n.themeConfig, - a = (i && s.locales && s.locales[i]) || s; - if ('auto' === (t.frontmatter.sidebar || a.sidebar || s.sidebar)) return g(t); - var o = a.sidebar || s.sidebar; - if (o) { - var u = (function(t, e) { - if (Array.isArray(e)) return { base: '/', config: e }; - for (var n in e) - if (0 === ((i = t), /(\.html|\/)$/.test(i) ? i : i + '/').indexOf(encodeURI(n))) - return { base: n, config: e[n] }; - var i; - return {}; - })(e, o), - l = u.base, - c = u.config; - return 'auto' === c - ? g(t) - : c - ? c.map(function(t) { - return (function t(e, n, i) { - var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : 1; - if ('string' == typeof e) return h(n, e, i); - if (Array.isArray(e)) return Object.assign(h(n, e[0], i), { title: e[1] }); - var s = e.children || []; - return 0 === s.length && e.path - ? Object.assign(h(n, e.path, i), { title: e.title }) - : { - type: 'group', - path: e.path, - title: e.title, - sidebarDepth: e.sidebarDepth, - initialOpenGroupIndex: e.initialOpenGroupIndex, - children: s.map(function(e) { - return t(e, n, i, r + 1); - }), - collapsable: !1 !== e.collapsable, - }; - })(t, r, l); - }) - : []; - } - return []; - } - function g(t) { - var e = v(t.headers || []); - return [ - { - type: 'group', - collapsable: !1, - title: t.title, - path: null, - children: e.map(function(e) { - return { - type: 'auto', - title: e.title, - basePath: t.path, - path: t.path + '#' + e.slug, - children: e.children || [], - }; - }), - }, - ]; - } - function v(t) { - var e; - return ( - (t = t.map(function(t) { - return Object.assign({}, t); - })).forEach(function(t) { - 2 === t.level ? (e = t) : e && (e.children || (e.children = [])).push(t); - }), - t.filter(function(t) { - return 2 === t.level; - }) - ); - } - function m(t) { - return Object.assign(t, { type: t.items && t.items.length ? 'links' : 'link' }); - } - }, - 309: function(t, e, n) { - 'use strict'; - var i = n(167), - r = n(5), - s = n(13), - a = n(22), - o = n(168), - u = n(169); - i('match', 1, function(t, e, n) { - return [ - function(e) { - var n = a(this), - i = null == e ? void 0 : e[t]; - return void 0 !== i ? i.call(e, n) : new RegExp(e)[t](String(n)); - }, - function(t) { - var i = n(e, t, this); - if (i.done) return i.value; - var a = r(t), - l = String(this); - if (!a.global) return u(a, l); - var c = a.unicode; - a.lastIndex = 0; - for (var p, f = [], h = 0; null !== (p = u(a, l)); ) { - var d = String(p[0]); - (f[h] = d), '' === d && (a.lastIndex = o(l, s(a.lastIndex), c)), h++; - } - return 0 === h ? null : f; - }, - ]; - }); - }, - 310: function(t, e, n) { - 'use strict'; - var i = n(167), - r = n(171), - s = n(5), - a = n(22), - o = n(97), - u = n(168), - l = n(13), - c = n(169), - p = n(67), - f = n(1), - h = [].push, - d = Math.min, - g = !f(function() { - return !RegExp(4294967295, 'y'); - }); - i( - 'split', - 2, - function(t, e, n) { - var i; - return ( - (i = - 'c' == 'abbc'.split(/(b)*/)[1] || - 4 != 'test'.split(/(?:)/, -1).length || - 2 != 'ab'.split(/(?:ab)*/).length || - 4 != '.'.split(/(.?)(.?)/).length || - '.'.split(/()()/).length > 1 || - ''.split(/.?/).length - ? function(t, n) { - var i = String(a(this)), - s = void 0 === n ? 4294967295 : n >>> 0; - if (0 === s) return []; - if (void 0 === t) return [i]; - if (!r(t)) return e.call(i, t, s); - for ( - var o, - u, - l, - c = [], - f = - (t.ignoreCase ? 'i' : '') + - (t.multiline ? 'm' : '') + - (t.unicode ? 'u' : '') + - (t.sticky ? 'y' : ''), - d = 0, - g = new RegExp(t.source, f + 'g'); - (o = p.call(g, i)) && - !( - (u = g.lastIndex) > d && - (c.push(i.slice(d, o.index)), - o.length > 1 && o.index < i.length && h.apply(c, o.slice(1)), - (l = o[0].length), - (d = u), - c.length >= s) - ); - - ) - g.lastIndex === o.index && g.lastIndex++; - return ( - d === i.length ? (!l && g.test('')) || c.push('') : c.push(i.slice(d)), - c.length > s ? c.slice(0, s) : c - ); - } - : '0'.split(void 0, 0).length - ? function(t, n) { - return void 0 === t && 0 === n ? [] : e.call(this, t, n); - } - : e), - [ - function(e, n) { - var r = a(this), - s = null == e ? void 0 : e[t]; - return void 0 !== s ? s.call(e, r, n) : i.call(String(r), e, n); - }, - function(t, r) { - var a = n(i, t, this, r, i !== e); - if (a.done) return a.value; - var p = s(t), - f = String(this), - h = o(p, RegExp), - v = p.unicode, - m = - (p.ignoreCase ? 'i' : '') + - (p.multiline ? 'm' : '') + - (p.unicode ? 'u' : '') + - (g ? 'y' : 'g'), - b = new h(g ? p : '^(?:' + p.source + ')', m), - k = void 0 === r ? 4294967295 : r >>> 0; - if (0 === k) return []; - if (0 === f.length) return null === c(b, f) ? [f] : []; - for (var x = 0, _ = 0, C = []; _ < f.length; ) { - b.lastIndex = g ? _ : 0; - var L, - y = c(b, g ? f : f.slice(_)); - if (null === y || (L = d(l(b.lastIndex + (g ? 0 : _)), f.length)) === x) - _ = u(f, _, v); - else { - if ((C.push(f.slice(x, _)), C.length === k)) return C; - for (var $ = 1; $ <= y.length - 1; $++) - if ((C.push(y[$]), C.length === k)) return C; - _ = x = L; - } - } - return C.push(f.slice(x)), C; - }, - ] - ); - }, - !g, - ); - }, - 311: function(t, e, n) { - 'use strict'; - n(166), n(94), n(313); - var i = n(308), - r = { - name: 'NavLink', - props: { item: { required: !0 } }, - computed: { - link: function() { - return Object(i.b)(this.item.link); - }, - exact: function() { - var t = this; - return this.$site.locales - ? Object.keys(this.$site.locales).some(function(e) { - return e === t.link; - }) - : '/' === this.link; - }, - isNonHttpURI: function() { - return Object(i.g)(this.link) || Object(i.h)(this.link); - }, - isBlankTarget: function() { - return '_blank' === this.target; - }, - isInternal: function() { - return !Object(i.f)(this.link) && !this.isBlankTarget; - }, - target: function() { - return this.isNonHttpURI - ? null - : this.item.target - ? this.item.target - : Object(i.f)(this.link) - ? '_blank' - : ''; - }, - rel: function() { - return this.isNonHttpURI || !1 === this.item.rel - ? null - : this.item.rel - ? this.item.rel - : this.isBlankTarget - ? 'noopener noreferrer' - : null; - }, - }, - methods: { - focusoutAction: function() { - this.$emit('focusout'); - }, - }, - }, - s = n(42), - a = Object(s.a)( - r, - function() { - var t = this, - e = t.$createElement, - n = t._self._c || e; - return t.isInternal - ? n( - 'RouterLink', - { - staticClass: 'nav-link', - attrs: { to: t.link, exact: t.exact }, - nativeOn: { - focusout: function(e) { - return t.focusoutAction(e); - }, - }, - }, - [t._v('\n ' + t._s(t.item.text) + '\n')], - ) - : n( - 'a', - { - staticClass: 'nav-link external', - attrs: { href: t.link, target: t.target, rel: t.rel }, - on: { focusout: t.focusoutAction }, - }, - [ - t._v('\n ' + t._s(t.item.text) + '\n '), - t.isBlankTarget ? n('OutboundLink') : t._e(), - ], - 1, - ); - }, - [], - !1, - null, - null, - null, - ); - e.a = a.exports; - }, - 312: function(t, e) { - t.exports = '\t\n\v\f\r                 \u2028\u2029\ufeff'; - }, - 313: function(t, e, n) { - 'use strict'; - var i = n(0), - r = n(314); - i( - { target: 'String', proto: !0, forced: n(315)('link') }, - { - link: function(t) { - return r(this, 'a', 'href', t); - }, - }, - ); - }, - 314: function(t, e, n) { - var i = n(22), - r = /"/g; - t.exports = function(t, e, n, s) { - var a = String(i(t)), - o = '<' + e; - return ( - '' !== n && (o += ' ' + n + '="' + String(s).replace(r, '"') + '"'), - o + '>' + a + '' - ); - }; - }, - 315: function(t, e, n) { - var i = n(1); - t.exports = function(t) { - return i(function() { - var e = ''[t]('"'); - return e !== e.toLowerCase() || e.split('"').length > 3; - }); - }; - }, - 316: function(t, e, n) { - var i = n(22), - r = '[' + n(312) + ']', - s = RegExp('^' + r + r + '*'), - a = RegExp(r + r + '*$'), - o = function(t) { - return function(e) { - var n = String(i(e)); - return 1 & t && (n = n.replace(s, '')), 2 & t && (n = n.replace(a, '')), n; - }; - }; - t.exports = { start: o(1), end: o(2), trim: o(3) }; - }, - 317: function(t, e, n) { - 'use strict'; - var i = n(0), - r = n(316).trim; - i( - { target: 'String', proto: !0, forced: n(341)('trim') }, - { - trim: function() { - return r(this); - }, - }, - ); - }, - 318: function(t, e, n) { - var i = n(6), - r = n(3), - s = n(100), - a = n(342), - o = n(8).f, - u = n(68).f, - l = n(171), - c = n(104), - p = n(175), - f = n(10), - h = n(1), - d = n(28).set, - g = n(173), - v = n(2)('match'), - m = r.RegExp, - b = m.prototype, - k = /a/g, - x = /a/g, - _ = new m(k) !== k, - C = p.UNSUPPORTED_Y; - if ( - i && - s( - 'RegExp', - !_ || - C || - h(function() { - return (x[v] = !1), m(k) != k || m(x) == x || '/a/i' != m(k, 'i'); - }), - ) - ) { - for ( - var L = function(t, e) { - var n, - i = this instanceof L, - r = l(t), - s = void 0 === e; - if (!i && r && t.constructor === L && s) return t; - _ - ? r && !s && (t = t.source) - : t instanceof L && (s && (e = c.call(t)), (t = t.source)), - C && (n = !!e && e.indexOf('y') > -1) && (e = e.replace(/y/g, '')); - var o = a(_ ? new m(t, e) : m(t, e), i ? this : b, L); - return C && n && d(o, { sticky: n }), o; - }, - y = function(t) { - (t in L) || - o(L, t, { - configurable: !0, - get: function() { - return m[t]; - }, - set: function(e) { - m[t] = e; - }, - }); - }, - $ = u(m), - w = 0; - $.length > w; - - ) - y($[w++]); - (b.constructor = L), (L.prototype = b), f(r, 'RegExp', L); - } - g('RegExp'); - }, - 319: function(t, e, n) {}, - 320: function(t, e, n) {}, - 321: function(t, e, n) {}, - 322: function(t, e, n) {}, - 323: function(t, e, n) {}, - 324: function(t, e, n) {}, - 325: function(t, e) { - t.exports = function(t) { - return null == t; - }; - }, - 326: function(t, e, n) {}, - 327: function(t, e, n) {}, - 328: function(t, e, n) {}, - 329: function(t, e, n) {}, - 330: function(t, e, n) {}, - 331: function(t, e, n) {}, - 336: function(t, e, n) { - 'use strict'; - n.r(e); - n(166); - var i = n(308), - r = { - name: 'SidebarGroup', - components: { DropdownTransition: n(338).a }, - props: ['item', 'open', 'collapsable', 'depth'], - beforeCreate: function() { - this.$options.components.SidebarLinks = n(336).default; - }, - methods: { isActive: i.e }, - }, - s = (n(354), n(42)), - a = Object(s.a)( - r, - function() { - var t = this, - e = t.$createElement, - n = t._self._c || e; - return n( - 'section', - { - staticClass: 'sidebar-group', - class: [ - { collapsable: t.collapsable, 'is-sub-group': 0 !== t.depth }, - 'depth-' + t.depth, - ], - }, - [ - t.item.path - ? n( - 'RouterLink', - { - staticClass: 'sidebar-heading clickable', - class: { open: t.open, active: t.isActive(t.$route, t.item.path) }, - attrs: { to: t.item.path }, - nativeOn: { - click: function(e) { - return t.$emit('toggle'); - }, - }, - }, - [ - n('span', [t._v(t._s(t.item.title))]), - t._v(' '), - t.collapsable - ? n('span', { staticClass: 'arrow', class: t.open ? 'down' : 'right' }) - : t._e(), - ], - ) - : n( - 'p', - { - staticClass: 'sidebar-heading', - class: { open: t.open }, - on: { - click: function(e) { - return t.$emit('toggle'); - }, - }, - }, - [ - n('span', [t._v(t._s(t.item.title))]), - t._v(' '), - t.collapsable - ? n('span', { staticClass: 'arrow', class: t.open ? 'down' : 'right' }) - : t._e(), - ], - ), - t._v(' '), - n( - 'DropdownTransition', - [ - t.open || !t.collapsable - ? n('SidebarLinks', { - staticClass: 'sidebar-group-items', - attrs: { - items: t.item.children, - 'sidebar-depth': t.item.sidebarDepth, - 'initial-open-group-index': t.item.initialOpenGroupIndex, - depth: t.depth + 1, - }, - }) - : t._e(), - ], - 1, - ), - ], - 1, - ); - }, - [], - !1, - null, - null, - null, - ).exports; - n(355), n(65); - function o(t, e, n, i, r) { - var s = { - props: { to: e, activeClass: '', exactActiveClass: '' }, - class: { active: i, 'sidebar-link': !0 }, - }; - return r > 2 && (s.style = { 'padding-left': r + 'rem' }), t('RouterLink', s, n); - } - function u(t, e, n, r, s) { - var a = arguments.length > 5 && void 0 !== arguments[5] ? arguments[5] : 1; - return !e || a > s - ? null - : t( - 'ul', - { class: 'sidebar-sub-headers' }, - e.map(function(e) { - var l = Object(i.e)(r, n + '#' + e.slug); - return t('li', { class: 'sidebar-sub-header' }, [ - o(t, n + '#' + e.slug, e.title, l, e.level - 1), - u(t, e.children, n, r, s, a + 1), - ]); - }), - ); - } - var l = { - functional: !0, - props: ['item', 'sidebarDepth'], - render: function(t, e) { - var n = e.parent, - r = n.$page, - s = (n.$site, n.$route), - a = n.$themeConfig, - l = n.$themeLocaleConfig, - c = e.props, - p = c.item, - f = c.sidebarDepth, - h = Object(i.e)(s, p.path), - d = - 'auto' === p.type - ? h || - p.children.some(function(t) { - return Object(i.e)(s, p.basePath + '#' + t.slug); - }) - : h, - g = - 'external' === p.type - ? (function(t, e, n) { - return t( - 'a', - { - attrs: { href: e, target: '_blank', rel: 'noopener noreferrer' }, - class: { 'sidebar-link': !0 }, - }, - [n, t('OutboundLink')], - ); - })(t, p.path, p.title || p.path) - : o(t, p.path, p.title || p.path, d), - v = [r.frontmatter.sidebarDepth, f, l.sidebarDepth, a.sidebarDepth, 1].find(function( - t, - ) { - return void 0 !== t; - }), - m = l.displayAllHeaders || a.displayAllHeaders; - return 'auto' === p.type - ? [g, u(t, p.children, p.basePath, s, v)] - : (d || m) && p.headers && !i.d.test(p.path) - ? [g, u(t, Object(i.c)(p.headers), p.path, s, v)] - : g; - }, - }; - n(356); - function c(t, e) { - return ( - 'group' === e.type && - e.children.some(function(e) { - return 'group' === e.type ? c(t, e) : 'page' === e.type && Object(i.e)(t, e.path); - }) - ); - } - var p = { - name: 'SidebarLinks', - components: { - SidebarGroup: a, - SidebarLink: Object(s.a)(l, void 0, void 0, !1, null, null, null).exports, - }, - props: ['items', 'depth', 'sidebarDepth', 'initialOpenGroupIndex'], - data: function() { - return { openGroupIndex: this.initialOpenGroupIndex || 0 }; - }, - watch: { - $route: function() { - this.refreshIndex(); - }, - }, - created: function() { - this.refreshIndex(); - }, - methods: { - refreshIndex: function() { - var t = (function(t, e) { - for (var n = 0; n < e.length; n++) { - var i = e[n]; - if (c(t, i)) return n; - } - return -1; - })(this.$route, this.items); - t > -1 && (this.openGroupIndex = t); - }, - toggleGroup: function(t) { - this.openGroupIndex = t === this.openGroupIndex ? -1 : t; - }, - isActive: function(t) { - return Object(i.e)(this.$route, t.regularPath); - }, - }, - }, - f = Object(s.a)( - p, - function() { - var t = this, - e = t.$createElement, - n = t._self._c || e; - return t.items.length - ? n( - 'ul', - { staticClass: 'sidebar-links' }, - t._l(t.items, function(e, i) { - return n( - 'li', - { key: i }, - [ - 'group' === e.type - ? n('SidebarGroup', { - attrs: { - item: e, - open: i === t.openGroupIndex, - collapsable: e.collapsable || e.collapsible, - depth: t.depth, - }, - on: { - toggle: function(e) { - return t.toggleGroup(i); - }, - }, - }) - : n('SidebarLink', { - attrs: { 'sidebar-depth': t.sidebarDepth, item: e }, - }), - ], - 1, - ); - }), - 0, - ) - : t._e(); - }, - [], - !1, - null, - null, - null, - ); - e.default = f.exports; - }, - 337: function(t, e, n) { - 'use strict'; - n(177), n(65), n(166), n(94), n(318), n(43), n(98), n(309), n(66); - var i = n(40), - r = n(311), - s = n(338), - a = n(179), - o = n.n(a), - u = { - name: 'DropdownLink', - components: { NavLink: r.a, DropdownTransition: s.a }, - props: { item: { required: !0 } }, - data: function() { - return { open: !1 }; - }, - computed: { - dropdownAriaLabel: function() { - return this.item.ariaLabel || this.item.text; - }, - }, - watch: { - $route: function() { - this.open = !1; - }, - }, - methods: { - setOpen: function(t) { - this.open = t; - }, - isLastItemOfArray: function(t, e) { - return o()(e) === t; - }, - handleDropdown: function() { - 0 === event.detail && this.setOpen(!this.open); - }, - }, - }, - l = (n(347), n(42)), - c = Object(l.a)( - u, - function() { - var t = this, - e = t.$createElement, - n = t._self._c || e; - return n( - 'div', - { staticClass: 'dropdown-wrapper', class: { open: t.open } }, - [ - n( - 'button', - { - staticClass: 'dropdown-title', - attrs: { type: 'button', 'aria-label': t.dropdownAriaLabel }, - on: { click: t.handleDropdown }, - }, - [ - n('span', { staticClass: 'title' }, [t._v(t._s(t.item.text))]), - t._v(' '), - n('span', { staticClass: 'arrow down' }), - ], - ), - t._v(' '), - n( - 'button', - { - staticClass: 'mobile-dropdown-title', - attrs: { type: 'button', 'aria-label': t.dropdownAriaLabel }, - on: { - click: function(e) { - return t.setOpen(!t.open); - }, - }, - }, - [ - n('span', { staticClass: 'title' }, [t._v(t._s(t.item.text))]), - t._v(' '), - n('span', { staticClass: 'arrow', class: t.open ? 'down' : 'right' }), - ], - ), - t._v(' '), - n('DropdownTransition', [ - n( - 'ul', - { - directives: [ - { name: 'show', rawName: 'v-show', value: t.open, expression: 'open' }, - ], - staticClass: 'nav-dropdown', - }, - t._l(t.item.items, function(e, i) { - return n( - 'li', - { key: e.link || i, staticClass: 'dropdown-item' }, - [ - 'links' === e.type - ? n('h4', [t._v('\n ' + t._s(e.text) + '\n ')]) - : t._e(), - t._v(' '), - 'links' === e.type - ? n( - 'ul', - { staticClass: 'dropdown-subitem-wrapper' }, - t._l(e.items, function(i) { - return n( - 'li', - { key: i.link, staticClass: 'dropdown-subitem' }, - [ - n('NavLink', { - attrs: { item: i }, - on: { - focusout: function(n) { - t.isLastItemOfArray(i, e.items) && - t.isLastItemOfArray(e, t.item.items) && - t.setOpen(!1); - }, - }, - }), - ], - 1, - ); - }), - 0, - ) - : n('NavLink', { - attrs: { item: e }, - on: { - focusout: function(n) { - t.isLastItemOfArray(e, t.item.items) && t.setOpen(!1); - }, - }, - }), - ], - 1, - ); - }), - 0, - ), - ]), - ], - 1, - ); - }, - [], - !1, - null, - null, - null, - ).exports, - p = n(308), - f = { - name: 'NavLinks', - components: { NavLink: r.a, DropdownLink: c }, - computed: { - userNav: function() { - return this.$themeLocaleConfig.nav || this.$site.themeConfig.nav || []; - }, - nav: function() { - var t = this, - e = this.$site.locales; - if (e && Object.keys(e).length > 1) { - var n = this.$page.path, - r = this.$router.options.routes, - s = this.$site.themeConfig.locales || {}, - a = { - text: this.$themeLocaleConfig.selectText || 'Languages', - ariaLabel: this.$themeLocaleConfig.ariaLabel || 'Select language', - items: Object.keys(e).map(function(i) { - var a, - o = e[i], - u = (s[i] && s[i].label) || o.lang; - return ( - o.lang === t.$lang - ? (a = n) - : ((a = n.replace(t.$localeConfig.path, i)), - r.some(function(t) { - return t.path === a; - }) || (a = i)), - { text: u, link: a } - ); - }), - }; - return [].concat(Object(i.a)(this.userNav), [a]); - } - return this.userNav; - }, - userLinks: function() { - return (this.nav || []).map(function(t) { - return Object.assign(Object(p.j)(t), { items: (t.items || []).map(p.j) }); - }); - }, - repoLink: function() { - var t = this.$site.themeConfig.repo; - return t ? (/^https?:/.test(t) ? t : 'https://github.com/'.concat(t)) : null; - }, - repoLabel: function() { - if (this.repoLink) { - if (this.$site.themeConfig.repoLabel) return this.$site.themeConfig.repoLabel; - for ( - var t = this.repoLink.match(/^https?:\/\/[^/]+/)[0], - e = ['GitHub', 'GitLab', 'Bitbucket'], - n = 0; - n < e.length; - n++ - ) { - var i = e[n]; - if (new RegExp(i, 'i').test(t)) return i; - } - return 'Source'; - } - }, - }, - }, - h = - (n(348), - Object(l.a)( - f, - function() { - var t = this, - e = t.$createElement, - n = t._self._c || e; - return t.userLinks.length || t.repoLink - ? n( - 'nav', - { staticClass: 'nav-links' }, - [ - t._l(t.userLinks, function(t) { - return n( - 'div', - { key: t.link, staticClass: 'nav-item' }, - [ - 'links' === t.type - ? n('DropdownLink', { attrs: { item: t } }) - : n('NavLink', { attrs: { item: t } }), - ], - 1, - ); - }), - t._v(' '), - t.repoLink - ? n( - 'a', - { - staticClass: 'repo-link', - attrs: { - href: t.repoLink, - target: '_blank', - rel: 'noopener noreferrer', - }, - }, - [t._v('\n ' + t._s(t.repoLabel) + '\n '), n('OutboundLink')], - 1, - ) - : t._e(), - ], - 2, - ) - : t._e(); - }, - [], - !1, - null, - null, - null, - )); - e.a = h.exports; - }, - 338: function(t, e, n) { - 'use strict'; - var i = { - name: 'DropdownTransition', - methods: { - setHeight: function(t) { - t.style.height = t.scrollHeight + 'px'; - }, - unsetHeight: function(t) { - t.style.height = ''; - }, - }, - }, - r = (n(346), n(42)), - s = Object(r.a)( - i, - function() { - var t = this.$createElement; - return (this._self._c || t)( - 'transition', - { - attrs: { name: 'dropdown' }, - on: { - enter: this.setHeight, - 'after-enter': this.unsetHeight, - 'before-leave': this.setHeight, - }, - }, - [this._t('default')], - 2, - ); - }, - [], - !1, - null, - null, - null, - ); - e.a = s.exports; - }, - 339: function(t, e, n) { - var i = n(0), - r = n(340); - i({ global: !0, forced: parseInt != r }, { parseInt: r }); - }, - 340: function(t, e, n) { - var i = n(3), - r = n(316).trim, - s = n(312), - a = i.parseInt, - o = /^[+-]?0[Xx]/, - u = 8 !== a(s + '08') || 22 !== a(s + '0x16'); - t.exports = u - ? function(t, e) { - var n = r(String(t)); - return a(n, e >>> 0 || (o.test(n) ? 16 : 10)); - } - : a; - }, - 341: function(t, e, n) { - var i = n(1), - r = n(312); - t.exports = function(t) { - return i(function() { - return !!r[t]() || '​…᠎' != '​…᠎'[t]() || r[t].name !== t; - }); - }; - }, - 342: function(t, e, n) { - var i = n(4), - r = n(101); - t.exports = function(t, e, n) { - var s, a; - return ( - r && - 'function' == typeof (s = e.constructor) && - s !== n && - i((a = s.prototype)) && - a !== n.prototype && - r(t, a), - t - ); - }; - }, - 343: function(t, e, n) { - 'use strict'; - var i, - r = n(0), - s = n(24).f, - a = n(13), - o = n(102), - u = n(22), - l = n(103), - c = n(19), - p = ''.endsWith, - f = Math.min, - h = l('endsWith'); - r( - { - target: 'String', - proto: !0, - forced: !!(c || h || ((i = s(String.prototype, 'endsWith')), !i || i.writable)) && !h, - }, - { - endsWith: function(t) { - var e = String(u(this)); - o(t); - var n = arguments.length > 1 ? arguments[1] : void 0, - i = a(e.length), - r = void 0 === n ? i : f(a(n), i), - s = String(t); - return p ? p.call(e, s, r) : e.slice(r - s.length, r) === s; - }, - }, - ); - }, - 344: function(t, e, n) { - 'use strict'; - n(319); - }, - 345: function(t, e, n) { - 'use strict'; - n(320); - }, - 346: function(t, e, n) { - 'use strict'; - n(321); - }, - 347: function(t, e, n) { - 'use strict'; - n(322); - }, - 348: function(t, e, n) { - 'use strict'; - n(323); - }, - 349: function(t, e, n) { - 'use strict'; - n(324); - }, - 350: function(t, e, n) { - 'use strict'; - n(326); - }, - 351: function(t, e, n) { - var i = n(30), - r = n(14), - s = n(25); - t.exports = function(t) { - return 'string' == typeof t || (!r(t) && s(t) && '[object String]' == i(t)); - }; - }, - 352: function(t, e, n) { - 'use strict'; - n(327); - }, - 353: function(t, e, n) { - 'use strict'; - n(328); - }, - 354: function(t, e, n) { - 'use strict'; - n(329); - }, - 355: function(t, e, n) { - 'use strict'; - var i = n(0), - r = n(29).find, - s = n(99), - a = n(17), - o = !0, - u = a('find'); - 'find' in [] && - Array(1).find(function() { - o = !1; - }), - i( - { target: 'Array', proto: !0, forced: o || !u }, - { - find: function(t) { - return r(this, t, arguments.length > 1 ? arguments[1] : void 0); - }, - }, - ), - s('find'); - }, - 356: function(t, e, n) { - 'use strict'; - n(330); - }, - 357: function(t, e, n) { - 'use strict'; - n(331); - }, - 374: function(t, e, n) { - 'use strict'; - n(339), - n(23), - n(174), - n(170), - n(96), - n(43), - n(176), - n(309), - n(317), - n(172), - n(65), - n(166), - n(318), - n(98), - n(343), - n(66), - n(310); - var i = n(178), - r = n.n(i), - s = function(t, e) { - var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : null, - i = r()(e, 'title', ''); - return ( - r()(e, 'frontmatter.tags') && (i += ' '.concat(e.frontmatter.tags.join(' '))), - n && (i += ' '.concat(n)), - a(t, i) - ); - }, - a = function(t, e) { - var n = function(t) { - return t.replace(/[-/\\^$*+?.()|[\]{}]/g, '\\$&'); - }, - i = new RegExp('[^\0-]'), - r = t - .split(/\s+/g) - .map(function(t) { - return t.trim(); - }) - .filter(function(t) { - return !!t; - }); - if (i.test(t)) - return r.some(function(t) { - return e.toLowerCase().indexOf(t) > -1; - }); - var s = t.endsWith(' '); - return new RegExp( - r - .map(function(t, e) { - return r.length !== e + 1 || s - ? '(?=.*\\b'.concat(n(t), '\\b)') - : '(?=.*\\b'.concat(n(t), ')'); - }) - .join('') + '.+', - 'gi', - ).test(e); - }, - o = { - name: 'SearchBox', - data: function() { - return { query: '', focused: !1, focusIndex: 0, placeholder: void 0 }; - }, - computed: { - showSuggestions: function() { - return this.focused && this.suggestions && this.suggestions.length; - }, - suggestions: function() { - var t = this.query.trim().toLowerCase(); - if (t) { - for ( - var e = this.$site.pages, - n = this.$site.themeConfig.searchMaxSuggestions || 5, - i = this.$localePath, - r = [], - a = 0; - a < e.length && !(r.length >= n); - a++ - ) { - var o = e[a]; - if (this.getPageLocalePath(o) === i && this.isSearchable(o)) - if (s(t, o)) r.push(o); - else if (o.headers) - for (var u = 0; u < o.headers.length && !(r.length >= n); u++) { - var l = o.headers[u]; - l.title && - s(t, o, l.title) && - r.push(Object.assign({}, o, { path: o.path + '#' + l.slug, header: l })); - } - } - return r; - } - }, - alignRight: function() { - return (this.$site.themeConfig.nav || []).length + (this.$site.repo ? 1 : 0) <= 2; - }, - }, - mounted: function() { - (this.placeholder = this.$site.themeConfig.searchPlaceholder || ''), - document.addEventListener('keydown', this.onHotkey); - }, - beforeDestroy: function() { - document.removeEventListener('keydown', this.onHotkey); - }, - methods: { - getPageLocalePath: function(t) { - for (var e in this.$site.locales || {}) - if ('/' !== e && 0 === t.path.indexOf(e)) return e; - return '/'; - }, - isSearchable: function(t) { - var e = null; - return ( - null === e || - (e = Array.isArray(e) ? e : new Array(e)).filter(function(e) { - return t.path.match(e); - }).length > 0 - ); - }, - onHotkey: function(t) { - t.srcElement === document.body && - ['s', '/'].includes(t.key) && - (this.$refs.input.focus(), t.preventDefault()); - }, - onUp: function() { - this.showSuggestions && - (this.focusIndex > 0 - ? this.focusIndex-- - : (this.focusIndex = this.suggestions.length - 1)); - }, - onDown: function() { - this.showSuggestions && - (this.focusIndex < this.suggestions.length - 1 - ? this.focusIndex++ - : (this.focusIndex = 0)); - }, - go: function(t) { - this.showSuggestions && - (this.$router.push(this.suggestions[t].path), - (this.query = ''), - (this.focusIndex = 0)); - }, - focus: function(t) { - this.focusIndex = t; - }, - unfocus: function() { - this.focusIndex = -1; - }, - }, - }, - u = (n(344), n(42)), - l = Object(u.a)( - o, - function() { - var t = this, - e = t.$createElement, - n = t._self._c || e; - return n('div', { staticClass: 'search-box' }, [ - n('input', { - ref: 'input', - class: { focused: t.focused }, - attrs: { - 'aria-label': 'Search', - placeholder: t.placeholder, - autocomplete: 'off', - spellcheck: 'false', - }, - domProps: { value: t.query }, - on: { - input: function(e) { - t.query = e.target.value; - }, - focus: function(e) { - t.focused = !0; - }, - blur: function(e) { - t.focused = !1; - }, - keyup: [ - function(e) { - return !e.type.indexOf('key') && t._k(e.keyCode, 'enter', 13, e.key, 'Enter') - ? null - : t.go(t.focusIndex); - }, - function(e) { - return !e.type.indexOf('key') && - t._k(e.keyCode, 'up', 38, e.key, ['Up', 'ArrowUp']) - ? null - : t.onUp(e); - }, - function(e) { - return !e.type.indexOf('key') && - t._k(e.keyCode, 'down', 40, e.key, ['Down', 'ArrowDown']) - ? null - : t.onDown(e); - }, - ], - }, - }), - t._v(' '), - t.showSuggestions - ? n( - 'ul', - { - staticClass: 'suggestions', - class: { 'align-right': t.alignRight }, - on: { mouseleave: t.unfocus }, - }, - t._l(t.suggestions, function(e, i) { - return n( - 'li', - { - key: i, - staticClass: 'suggestion', - class: { focused: i === t.focusIndex }, - on: { - mousedown: function(e) { - return t.go(i); - }, - mouseenter: function(e) { - return t.focus(i); - }, - }, - }, - [ - n( - 'a', - { - attrs: { href: e.path }, - on: { - click: function(t) { - t.preventDefault(); - }, - }, - }, - [ - n('span', { staticClass: 'page-title' }, [ - t._v(t._s(e.title || e.path)), - ]), - t._v(' '), - e.header - ? n('span', { staticClass: 'header' }, [ - t._v('> ' + t._s(e.header.title)), - ]) - : t._e(), - ], - ), - ], - ); - }), - 0, - ) - : t._e(), - ]); - }, - [], - !1, - null, - null, - null, - ).exports; - n(345); - function c(t, e) { - return t.ownerDocument.defaultView.getComputedStyle(t, null)[e]; - } - var p = { - name: 'Navbar', - components: { - SidebarButton: Object(u.a)( - {}, - function() { - var t = this, - e = t.$createElement, - n = t._self._c || e; - return n( - 'div', - { - staticClass: 'sidebar-button', - on: { - click: function(e) { - return t.$emit('toggle-sidebar'); - }, - }, - }, - [ - n( - 'svg', - { - staticClass: 'icon', - attrs: { - xmlns: 'http://www.w3.org/2000/svg', - 'aria-hidden': 'true', - role: 'img', - viewBox: '0 0 448 512', - }, - }, - [ - n('path', { - attrs: { - fill: 'currentColor', - d: - 'M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z', - }, - }), - ], - ), - ], - ); - }, - [], - !1, - null, - null, - null, - ).exports, - NavLinks: n(337).a, - SearchBox: l, - AlgoliaSearchBox: {}, - }, - data: function() { - return { linksWrapMaxWidth: null }; - }, - computed: { - algolia: function() { - return this.$themeLocaleConfig.algolia || this.$site.themeConfig.algolia || {}; - }, - isAlgoliaSearch: function() { - return this.algolia && this.algolia.apiKey && this.algolia.indexName; - }, - }, - mounted: function() { - var t = this, - e = parseInt(c(this.$el, 'paddingLeft')) + parseInt(c(this.$el, 'paddingRight')), - n = function() { - document.documentElement.clientWidth < 719 - ? (t.linksWrapMaxWidth = null) - : (t.linksWrapMaxWidth = - t.$el.offsetWidth - - e - - ((t.$refs.siteName && t.$refs.siteName.offsetWidth) || 0)); - }; - n(), window.addEventListener('resize', n, !1); - }, - }, - f = - (n(349), - Object(u.a)( - p, - function() { - var t = this, - e = t.$createElement, - n = t._self._c || e; - return n( - 'header', - { staticClass: 'navbar' }, - [ - n('SidebarButton', { - on: { - 'toggle-sidebar': function(e) { - return t.$emit('toggle-sidebar'); - }, - }, - }), - t._v(' '), - n('RouterLink', { staticClass: 'home-link', attrs: { to: t.$localePath } }, [ - t.$site.themeConfig.logo - ? n('img', { - staticClass: 'logo', - attrs: { src: t.$withBase(t.$site.themeConfig.logo), alt: t.$siteTitle }, - }) - : t._e(), - t._v(' '), - t.$siteTitle - ? n( - 'span', - { - ref: 'siteName', - staticClass: 'site-name', - class: { 'can-hide': t.$site.themeConfig.logo }, - }, - [t._v(t._s(t.$siteTitle))], - ) - : t._e(), - ]), - t._v(' '), - n( - 'div', - { - staticClass: 'links', - style: t.linksWrapMaxWidth ? { 'max-width': t.linksWrapMaxWidth + 'px' } : {}, - }, - [ - t.isAlgoliaSearch - ? n('AlgoliaSearchBox', { attrs: { options: t.algolia } }) - : !1 !== t.$site.themeConfig.search && !1 !== t.$page.frontmatter.search - ? n('SearchBox') - : t._e(), - t._v(' '), - n('NavLinks', { staticClass: 'can-hide' }), - ], - 1, - ), - ], - 1, - ); - }, - [], - !1, - null, - null, - null, - )); - e.a = f.exports; - }, - 375: function(t, e, n) { - 'use strict'; - n(43), n(66); - var i = n(325), - r = n.n(i), - s = n(308), - a = { - name: 'PageEdit', - computed: { - lastUpdated: function() { - return this.$page.lastUpdated; - }, - lastUpdatedText: function() { - return 'string' == typeof this.$themeLocaleConfig.lastUpdated - ? this.$themeLocaleConfig.lastUpdated - : 'string' == typeof this.$site.themeConfig.lastUpdated - ? this.$site.themeConfig.lastUpdated - : 'Last Updated'; - }, - editLink: function() { - var t = r()(this.$page.frontmatter.editLink) - ? this.$site.themeConfig.editLinks - : this.$page.frontmatter.editLink, - e = this.$site.themeConfig, - n = e.repo, - i = e.docsDir, - s = void 0 === i ? '' : i, - a = e.docsBranch, - o = void 0 === a ? 'master' : a, - u = e.docsRepo, - l = void 0 === u ? n : u; - return t && l && this.$page.relativePath - ? this.createEditLink(n, l, s, o, this.$page.relativePath) - : null; - }, - editLinkText: function() { - return ( - this.$themeLocaleConfig.editLinkText || - this.$site.themeConfig.editLinkText || - 'Edit this page' - ); - }, - }, - methods: { - createEditLink: function(t, e, n, i, r) { - if (/bitbucket.org/.test(e)) - return ( - e.replace(s.a, '') + - '/src' + - '/'.concat(i, '/') + - (n ? n.replace(s.a, '') + '/' : '') + - r + - '?mode=edit&spa=0&at='.concat(i, '&fileviewer=file-view-default') - ); - return /gitlab.com/.test(e) - ? e.replace(s.a, '') + - '/-/edit' + - '/'.concat(i, '/') + - (n ? n.replace(s.a, '') + '/' : '') + - r - : (s.i.test(e) ? e : 'https://github.com/'.concat(e)).replace(s.a, '') + - '/edit' + - '/'.concat(i, '/') + - (n ? n.replace(s.a, '') + '/' : '') + - r; - }, - }, - }, - o = (n(350), n(42)), - u = Object(o.a)( - a, - function() { - var t = this, - e = t.$createElement, - n = t._self._c || e; - return n('footer', { staticClass: 'page-edit' }, [ - t.editLink - ? n( - 'div', - { staticClass: 'edit-link' }, - [ - n( - 'a', - { - attrs: { href: t.editLink, target: '_blank', rel: 'noopener noreferrer' }, - }, - [t._v(t._s(t.editLinkText))], - ), - t._v(' '), - n('OutboundLink'), - ], - 1, - ) - : t._e(), - t._v(' '), - t.lastUpdated - ? n('div', { staticClass: 'last-updated' }, [ - n('span', { staticClass: 'prefix' }, [t._v(t._s(t.lastUpdatedText) + ':')]), - t._v(' '), - n('span', { staticClass: 'time' }, [t._v(t._s(t.lastUpdated))]), - ]) - : t._e(), - ]); - }, - [], - !1, - null, - null, - null, - ).exports, - l = n(351), - c = n.n(l), - p = { - name: 'PageNav', - props: ['sidebarItems'], - computed: { - prev: function() { - return h(f.PREV, this); - }, - next: function() { - return h(f.NEXT, this); - }, - }, - }; - var f = { - NEXT: { - resolveLink: function(t, e) { - return d(t, e, 1); - }, - getThemeLinkConfig: function(t) { - return t.nextLinks; - }, - getPageLinkConfig: function(t) { - return t.frontmatter.next; - }, - }, - PREV: { - resolveLink: function(t, e) { - return d(t, e, -1); - }, - getThemeLinkConfig: function(t) { - return t.prevLinks; - }, - getPageLinkConfig: function(t) { - return t.frontmatter.prev; - }, - }, - }; - function h(t, e) { - var n = e.$themeConfig, - i = e.$page, - a = e.$route, - o = e.$site, - u = e.sidebarItems, - l = t.resolveLink, - p = t.getThemeLinkConfig, - f = t.getPageLinkConfig, - h = p(n), - d = f(i), - g = r()(d) ? h : d; - return !1 === g ? void 0 : c()(g) ? Object(s.k)(o.pages, g, a.path) : l(i, u); - } - function d(t, e, n) { - var i = []; - !(function t(e, n) { - for (var i = 0, r = e.length; i < r; i++) - 'group' === e[i].type ? t(e[i].children || [], n) : n.push(e[i]); - })(e, i); - for (var r = 0; r < i.length; r++) { - var s = i[r]; - if ('page' === s.type && s.path === decodeURIComponent(t.path)) return i[r + n]; - } - } - var g = p, - v = - (n(352), - { - components: { - PageEdit: u, - PageNav: Object(o.a)( - g, - function() { - var t = this, - e = t.$createElement, - n = t._self._c || e; - return t.prev || t.next - ? n('div', { staticClass: 'page-nav' }, [ - n('p', { staticClass: 'inner' }, [ - t.prev - ? n( - 'span', - { staticClass: 'prev' }, - [ - t._v('\n ←\n '), - 'external' === t.prev.type - ? n( - 'a', - { - staticClass: 'prev', - attrs: { - href: t.prev.path, - target: '_blank', - rel: 'noopener noreferrer', - }, - }, - [ - t._v( - '\n ' + - t._s(t.prev.title || t.prev.path) + - '\n\n ', - ), - n('OutboundLink'), - ], - 1, - ) - : n( - 'RouterLink', - { staticClass: 'prev', attrs: { to: t.prev.path } }, - [ - t._v( - '\n ' + - t._s(t.prev.title || t.prev.path) + - '\n ', - ), - ], - ), - ], - 1, - ) - : t._e(), - t._v(' '), - t.next - ? n( - 'span', - { staticClass: 'next' }, - [ - 'external' === t.next.type - ? n( - 'a', - { - attrs: { - href: t.next.path, - target: '_blank', - rel: 'noopener noreferrer', - }, - }, - [ - t._v( - '\n ' + - t._s(t.next.title || t.next.path) + - '\n\n ', - ), - n('OutboundLink'), - ], - 1, - ) - : n('RouterLink', { attrs: { to: t.next.path } }, [ - t._v( - '\n ' + - t._s(t.next.title || t.next.path) + - '\n ', - ), - ]), - t._v('\n →\n '), - ], - 1, - ) - : t._e(), - ]), - ]) - : t._e(); - }, - [], - !1, - null, - null, - null, - ).exports, - }, - props: ['sidebarItems'], - }), - m = - (n(353), - Object(o.a)( - v, - function() { - var t = this, - e = t.$createElement, - n = t._self._c || e; - return n( - 'main', - { staticClass: 'page' }, - [ - t._t('top'), - t._v(' '), - n('Content', { staticClass: 'theme-default-content' }), - t._v(' '), - n('PageEdit'), - t._v(' '), - n('PageNav', t._b({}, 'PageNav', { sidebarItems: t.sidebarItems }, !1)), - t._v(' '), - t._t('bottom'), - ], - 2, - ); - }, - [], - !1, - null, - null, - null, - )); - e.a = m.exports; - }, - 376: function(t, e, n) { - 'use strict'; - var i = n(336), - r = n(337), - s = { - name: 'Sidebar', - components: { SidebarLinks: i.default, NavLinks: r.a }, - props: ['items'], - }, - a = (n(357), n(42)), - o = Object(a.a)( - s, - function() { - var t = this.$createElement, - e = this._self._c || t; - return e( - 'aside', - { staticClass: 'sidebar' }, - [ - e('NavLinks'), - this._v(' '), - this._t('top'), - this._v(' '), - e('SidebarLinks', { attrs: { depth: 0, items: this.items } }), - this._v(' '), - this._t('bottom'), - ], - 2, - ); - }, - [], - !1, - null, - null, - null, - ); - e.a = o.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/20.3fd45382.js b/doc-dist/assets/js/20.3fd45382.js deleted file mode 100644 index ae4ea95..0000000 --- a/doc-dist/assets/js/20.3fd45382.js +++ /dev/null @@ -1,311 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [20], - { - 385: function(t, s, a) { - 'use strict'; - a.r(s); - var n = a(42), - r = Object(n.a)( - {}, - function() { - var t = this, - s = t.$createElement, - a = t._self._c || s; - return a('ContentSlotsDistributor', { attrs: { 'slot-key': t.$parent.slotKey } }, [ - a('h1', { attrs: { id: 'dsl设计' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#dsl设计' } }, [t._v('#')]), - t._v(' DSL设计'), - ]), - t._v(' '), - a('p', [ - t._v( - 'DSL层主要约定了Dooring组件的数据协议,包括组件的可编辑属性、编辑类型、初始值等,之所以定义一致的协议层,主要是方便后期的组件扩展,配置后移,有助于不同后端语言开发和数据存储,接下来我们看看header组件的schema。', - ), - ]), - t._v(' '), - a('p', [t._v('1.editData 可编辑的属性类型DSL')]), - t._v(' '), - a('p', [t._v('2.config 可编辑组件的默认属性')]), - t._v(' '), - a('div', { staticClass: 'language-js extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-js' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]), - t._v(' Header'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' IHeaderSchema '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n editData'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n key'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'bgColor'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n name'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'背景色'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n type'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'Color'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n key'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'height'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n name'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'高度'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n type'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'Number'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n key'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'logo'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n name'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'logo'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n type'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'Upload'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n isCrop'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token boolean' } }, [t._v('true')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n cropRate'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('1000')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('/')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('618')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n key'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'logoText'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n name'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'logo文字'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n type'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'Text'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n key'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'color'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n name'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'文字颜色'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n type'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'Color'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n key'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'fontSize'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n name'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'文字大小'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n type'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'Number'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n config'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n bgColor'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v("'rgba(245,245,245,1)'"), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n logo'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n uid'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'001'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n name'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'image.png'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n status'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'done'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n url'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token template-string' } }, [ - a( - 'span', - { pre: !0, attrs: { class: 'token template-punctuation string' } }, - [t._v('`')], - ), - a('span', { pre: !0, attrs: { class: 'token interpolation' } }, [ - a( - 'span', - { - pre: !0, - attrs: { class: 'token interpolation-punctuation punctuation' }, - }, - [t._v('${')], - ), - t._v('serverUrl'), - a( - 'span', - { - pre: !0, - attrs: { class: 'token interpolation-punctuation punctuation' }, - }, - [t._v('}')], - ), - ]), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('/uploads/3_1740be8a482.png'), - ]), - a( - 'span', - { pre: !0, attrs: { class: 'token template-punctuation string' } }, - [t._v('`')], - ), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n logoText'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v("'页头Header'"), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n fontSize'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('20')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n color'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v("'rgba(47,84,235,1)'"), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n height'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('50')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n'), - ]), - ]), - ]), - a('p', [ - t._v( - '由以上代码可知,我们可以在editData属性中给组件添加可编辑的属性,比如背景图,然后再component中接受属性从而设置样式。', - ), - ]), - t._v(' '), - a('p', [ - t._v( - '在config属性中,我们可以设置组件默认属性值,和editData中每一项的key一一对应。', - ), - ]), - ]); - }, - [], - !1, - null, - null, - null, - ); - s.default = r.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/21.390bb49b.js b/doc-dist/assets/js/21.390bb49b.js deleted file mode 100644 index 693088f..0000000 --- a/doc-dist/assets/js/21.390bb49b.js +++ /dev/null @@ -1,380 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [21], - { - 386: function(t, s, a) { - 'use strict'; - a.r(s); - var n = a(42), - p = Object(n.a)( - {}, - function() { - var t = this, - s = t.$createElement, - a = t._self._c || s; - return a('ContentSlotsDistributor', { attrs: { 'slot-key': t.$parent.slotKey } }, [ - a('h1', { attrs: { id: '组件结构' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#组件结构' } }, [t._v('#')]), - t._v(' 组件结构'), - ]), - t._v(' '), - a('p', [t._v('dooring的组件设计包含以下3个部分组件:')]), - t._v(' '), - a('p', [t._v('1、component 组件主体')]), - t._v(' '), - a('p', [t._v('2、schema 组件的DSL,结构协议层')]), - t._v(' '), - a('p', [t._v('3、template 定义了组件的类型、外观、从属关系,后期考虑纳入schema')]), - t._v(' '), - a('p', [ - t._v( - '接下来我会介绍一个基本的组件主体设计,以为template设计,在下一章会具体介绍schema部分。', - ), - ]), - t._v(' '), - a('h2', { attrs: { id: '组件设计' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#组件设计' } }, [t._v('#')]), - t._v(' 组件设计'), - ]), - t._v(' '), - a('p', [t._v('我们这里拿基本的header组件来举例,如下是header组件的代码:')]), - t._v(' '), - a('div', { staticClass: 'language-jsx extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-jsx' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('interface')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token class-name' } }, [ - t._v('HeaderPropTypes'), - ]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('extends')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token class-name' } }, [ - t._v('IHeaderConfig'), - ]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n isTpl'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' boolean'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n\n'), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]), - t._v(' Header '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('memo')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token parameter' } }, [ - t._v('props'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' HeaderPropTypes'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=>')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v(' bgColor'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' logo'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' logoText'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' fontSize'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' color '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' props'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('return')]), - t._v(' props'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('isTpl '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('?')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('<')]), - t._v('div'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('>')]), - ]), - a('span', { pre: !0, attrs: { class: 'token plain-text' } }, [ - t._v('\n < img style='), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('width'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'100%'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token plain-text' } }, [t._v(' src=')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('logos'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token plain-text' } }, [ - t._v(' alt="" />\n '), - ]), - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('')]), - ]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('<')]), - t._v('header'), - ]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token attr-name' } }, [ - t._v('className'), - ]), - a('span', { pre: !0, attrs: { class: 'token script language-javascript' } }, [ - a( - 'span', - { pre: !0, attrs: { class: 'token script-punctuation punctuation' } }, - [t._v('=')], - ), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('styles'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('header'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - ]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token attr-name' } }, [t._v('style')]), - a('span', { pre: !0, attrs: { class: 'token script language-javascript' } }, [ - a( - 'span', - { pre: !0, attrs: { class: 'token script-punctuation punctuation' } }, - [t._v('=')], - ), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v(' backgroundColor'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' bgColor '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('>')]), - ]), - a('span', { pre: !0, attrs: { class: 'token plain-text' } }, [ - t._v('\n '), - ]), - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('<')]), - t._v('div'), - ]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token attr-name' } }, [ - t._v('className'), - ]), - a('span', { pre: !0, attrs: { class: 'token script language-javascript' } }, [ - a( - 'span', - { pre: !0, attrs: { class: 'token script-punctuation punctuation' } }, - [t._v('=')], - ), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('styles'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('logo'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('>')]), - ]), - a('span', { pre: !0, attrs: { class: 'token plain-text' } }, [ - t._v('\n < img src='), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('logo '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('&&')]), - t._v(' logo'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('0')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('url'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token plain-text' } }, [t._v(' alt=')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('logoText'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token plain-text' } }, [ - t._v(' />\n '), - ]), - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('')]), - ]), - a('span', { pre: !0, attrs: { class: 'token plain-text' } }, [ - t._v('\n '), - ]), - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('<')]), - t._v('div'), - ]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token attr-name' } }, [ - t._v('className'), - ]), - a('span', { pre: !0, attrs: { class: 'token script language-javascript' } }, [ - a( - 'span', - { pre: !0, attrs: { class: 'token script-punctuation punctuation' } }, - [t._v('=')], - ), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('styles'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('title'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - ]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token attr-name' } }, [t._v('style')]), - a('span', { pre: !0, attrs: { class: 'token script language-javascript' } }, [ - a( - 'span', - { pre: !0, attrs: { class: 'token script-punctuation punctuation' } }, - [t._v('=')], - ), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v(' fontSize'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' color '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('>')]), - ]), - a('span', { pre: !0, attrs: { class: 'token plain-text' } }, [ - t._v('\n '), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('logoText'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token plain-text' } }, [ - t._v('\n '), - ]), - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('')]), - ]), - a('span', { pre: !0, attrs: { class: 'token plain-text' } }, [t._v('\n ')]), - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('')]), - ]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n'), - ]), - ]), - ]), - a('p', [ - t._v( - '我们只需要按照上面的方式编写组件即可,props是DSL定义的数据层,用来控制组件的shape,也就是组件的表现。我们看看header对应的template。', - ), - ]), - t._v(' '), - a('h2', { attrs: { id: 'template设计' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#template设计' } }, [ - t._v('#'), - ]), - t._v(' template设计'), - ]), - t._v(' '), - a('div', { staticClass: 'language-js extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-js' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]), - t._v(' template '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n type'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'Header'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n h'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('28')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n displayName'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'页头组件'")]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('export')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('default')]), - t._v(' template'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n'), - ]), - ]), - ]), - a('p', [ - t._v( - '以上就是我们template的结构,type用来定义组件的类型,方便渲染器动态查找,h代表组件的初始化高度,我们可以自由设置。displayName是组件的中文名,用来在左侧组件面板中展示,方便用户理解,我们可以在template中自定义更多辅助信息,方便使用者更高效的使用我们的编辑器。', - ), - ]), - ]); - }, - [], - !1, - null, - null, - null, - ); - s.default = p.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/22.dd7423cf.js b/doc-dist/assets/js/22.dd7423cf.js deleted file mode 100644 index 9ca6a41..0000000 --- a/doc-dist/assets/js/22.dd7423cf.js +++ /dev/null @@ -1,2161 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [22], - { - 388: function(t, s, a) { - 'use strict'; - a.r(s); - var n = a(42), - r = Object(n.a)( - {}, - function() { - var t = this, - s = t.$createElement, - a = t._self._c || s; - return a('ContentSlotsDistributor', { attrs: { 'slot-key': t.$parent.slotKey } }, [ - a('p', [ - a('strong', [t._v('H5-Dooring')]), - t._v('后端部分主要使用 '), - a('code', [t._v('Nodejs')]), - t._v( - ' 开发, 为了满足更多定制化需求和服务的可移植性, 特意编写了API接口文档,\n方便大家使用不同的后端语言实现服务接入.', - ), - ]), - t._v(' '), - a('ul', [a('li', [t._v('注意: 接口统一前缀为'), a('code', [t._v('/api/v0')])])]), - t._v(' '), - a('h2', { attrs: { id: '用户相关' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#用户相关' } }, [t._v('#')]), - t._v(' 用户相关'), - ]), - t._v(' '), - a('h3', { attrs: { id: '登录' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#登录' } }, [t._v('#')]), - t._v(' 登录'), - ]), - t._v(' '), - a('p', [t._v('用户登录接口')]), - t._v(' '), - a('ul', [a('li', [a('code', [t._v('POST')]), t._v(' /vip/check')])]), - t._v(' '), - a('table', [ - a('thead', [ - a('tr', [ - a('th', [t._v('参数名')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('是否必选')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('类型')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'right' } }, [t._v('说明')]), - ]), - ]), - t._v(' '), - a('tbody', [ - a('tr', [ - a('td', [t._v('n')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('用户名')]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('co')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('密码')]), - ]), - ]), - ]), - t._v(' '), - a('p', [t._v('返回示例')]), - t._v(' '), - a('div', { staticClass: 'language-json extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-json' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"result"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v(' \n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"n"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"test"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' \n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"od"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' \n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"h5"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"t"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"23242ED"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"n"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"测试页面"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' \n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"rp"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"AAAAA"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' \n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"maxage"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('300000')]), - t._v(' \n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - ]), - ]), - ]), - a('h3', { attrs: { id: '注销登录' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#注销登录' } }, [t._v('#')]), - t._v(' 注销登录'), - ]), - t._v(' '), - a('p', [t._v('注销接口')]), - t._v(' '), - a('ul', [a('li', [a('code', [t._v('POST')]), t._v(' /vip/checkout')])]), - t._v(' '), - a('p', [t._v('返回示例')]), - t._v(' '), - a('div', { staticClass: 'language-json extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-json' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v(' \n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"result"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token null keyword' } }, [t._v('null')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' \n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"msg"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"退出成功"')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - ]), - ]), - ]), - a('h3', { attrs: { id: '权限控制' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#权限控制' } }, [t._v('#')]), - t._v(' 权限控制'), - ]), - t._v(' '), - a('p', [ - t._v( - '不同用户级别所访问的页面权限不同, 这块可结合服务端已有代码设计属于自己的权限字段, 地址为', - ), - a('code', [t._v('server/src/router')]), - ]), - t._v(' '), - a('h3', { attrs: { id: '用户列表' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#用户列表' } }, [t._v('#')]), - t._v(' 用户列表'), - ]), - t._v(' '), - a('p', [t._v('获取用户列表接口')]), - t._v(' '), - a('ul', [a('li', [a('code', [t._v('GET')]), t._v(' /vip/all')])]), - t._v(' '), - a('p', [t._v('获取用户列表需要账号满足以下条件:')]), - t._v(' '), - a('ul', [a('li', [t._v('已登录')]), t._v(' '), a('li', [t._v('为超级管理员')])]), - t._v(' '), - a('p', [t._v('返回示例')]), - t._v(' '), - a('div', { staticClass: 'language-json extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-json' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"id"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('""')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' \n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"n"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"test"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' \n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"co"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"123456"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' \n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"od"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' \n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"h5"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"t"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"23242ED"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"n"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"测试页面"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' \n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"wx"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"Mr_xuxiaoxi"'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' \n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"rp"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"AAAAA"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - t._v('\n'), - ]), - ]), - ]), - a('h3', { attrs: { id: '添加用户' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#添加用户' } }, [t._v('#')]), - t._v(' 添加用户'), - ]), - t._v(' '), - a('p', [t._v('添加用户接口')]), - t._v(' '), - a('ul', [a('li', [a('code', [t._v('POST')]), t._v(' /vip/add')])]), - t._v(' '), - a('p', [t._v('先决条件:')]), - t._v(' '), - a('ul', [a('li', [t._v('用户已登陆')]), t._v(' '), a('li', [t._v('为超级管理员')])]), - t._v(' '), - a('table', [ - a('thead', [ - a('tr', [ - a('th', [t._v('参数名')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('是否必选')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('类型')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'right' } }, [t._v('说明')]), - ]), - ]), - t._v(' '), - a('tbody', [ - a('tr', [ - a('td', [t._v('nickname')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('用户名')]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('wx')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('微信号')]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('co')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('密码')]), - ]), - ]), - ]), - t._v(' '), - a('p', [ - t._v('注: co是由笔者写的'), - a('code', [t._v('加密算法')]), - t._v('实现, 不需要手动填写, 详情见'), - a('code', [t._v('dooirng')]), - t._v('后台管理/用户管理页面.'), - ]), - t._v(' '), - a('p', [t._v('返回示例')]), - t._v(' '), - a('div', { staticClass: 'language-json extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-json' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"id"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"3422EF"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"n"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"test"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"wx"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"Mr_xuxiaoxi"'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"co"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"123456"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"od"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"h5"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"tpl"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"rp"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"AAAAA"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"h5Num"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('10')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"tplNum"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('3')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - ]), - ]), - ]), - a('h3', { attrs: { id: '修改用户信息' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#修改用户信息' } }, [ - t._v('#'), - ]), - t._v(' 修改用户信息'), - ]), - t._v(' '), - a('p', [t._v('修改用户接口')]), - t._v(' '), - a('ul', [a('li', [a('code', [t._v('POST')]), t._v(' /vip/edit')])]), - t._v(' '), - a('p', [t._v('先决条件:')]), - t._v(' '), - a('ul', [a('li', [t._v('用户已登陆')]), t._v(' '), a('li', [t._v('为超级管理员')])]), - t._v(' '), - a('table', [ - a('thead', [ - a('tr', [ - a('th', [t._v('参数名')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('是否必选')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('类型')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'right' } }, [t._v('说明')]), - ]), - ]), - t._v(' '), - a('tbody', [ - a('tr', [ - a('td', [t._v('id')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('false')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('用户ID')]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('nickname')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('false')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('用户名')]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('co')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('false')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('登录码')]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('wx')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('false')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('微信号')]), - ]), - ]), - ]), - t._v(' '), - a('p', [t._v('返回示例')]), - t._v(' '), - a('div', { staticClass: 'language-json extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-json' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"state"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('200')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"result"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token null keyword' } }, [t._v('null')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"msg"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"修改成功"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - ]), - ]), - ]), - a('h3', { attrs: { id: '删除用户' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#删除用户' } }, [t._v('#')]), - t._v(' 删除用户'), - ]), - t._v(' '), - a('p', [t._v('删除用户接口')]), - t._v(' '), - a('ul', [a('li', [a('code', [t._v('DELETE')]), t._v(' /vip/del')])]), - t._v(' '), - a('p', [t._v('先决条件:')]), - t._v(' '), - a('ul', [a('li', [t._v('用户已登陆')]), t._v(' '), a('li', [t._v('为超级管理员')])]), - t._v(' '), - a('table', [ - a('thead', [ - a('tr', [ - a('th', [t._v('参数名')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('是否必选')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('类型')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'right' } }, [t._v('说明')]), - ]), - ]), - t._v(' '), - a('tbody', [ - a('tr', [ - a('td', [t._v('id')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('用户ID')]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('wx')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('微信号')]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('n')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('用户名')]), - ]), - ]), - ]), - t._v(' '), - a('p', [t._v('返回示例')]), - t._v(' '), - a('div', { staticClass: 'language-json extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-json' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"state"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('200')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"result"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token null keyword' } }, [t._v('null')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"msg"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"删除成功"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - ]), - ]), - ]), - a('h2', { attrs: { id: 'h5页面管理' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#h5页面管理' } }, [ - t._v('#'), - ]), - t._v(' H5页面管理'), - ]), - t._v(' '), - a('h3', { attrs: { id: '获取h5数据' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#获取h5数据' } }, [ - t._v('#'), - ]), - t._v(' 获取H5数据'), - ]), - t._v(' '), - a('ul', [a('li', [a('code', [t._v('GET')]), t._v(' /visible/h5/get')])]), - t._v(' '), - a('p', [t._v('先决条件:')]), - t._v(' '), - a('ul', [a('li', [t._v('用户已登陆')])]), - t._v(' '), - a('table', [ - a('thead', [ - a('tr', [ - a('th', [t._v('参数名')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('是否必选')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('类型')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'right' } }, [t._v('说明')]), - ]), - ]), - t._v(' '), - a('tbody', [ - a('tr', [ - a('td', [t._v('tid')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('H5唯一id')]), - ]), - ]), - ]), - t._v(' '), - a('p', [t._v('返回示例')]), - t._v(' '), - a('div', { staticClass: 'language-json extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-json' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"pageConfig"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n \n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"tpl"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"id"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"879742"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"item"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"type"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"Carousel"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"config"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"direction"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"left"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"swipeable"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token boolean' } }, [t._v('false')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"autoPlay"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token boolean' } }, [t._v('false')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"imgList"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"id"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"1"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"title"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"趣谈小课1"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"desc"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"致力于打造优质小课程"'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"link"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"xxxxx"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"imgUrl"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"uid"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"001"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"name"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"image.png"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"status"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"done"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"url"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"http://io.nainor.com/uploads/1_1740bd7c3dc.png"'), - ]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"id"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"2"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"title"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"趣谈小课1"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"desc"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"致力于打造优质小课程"'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"link"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"xxxxx"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"imgUrl"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"uid"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"001"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"name"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"image.png"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"status"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"done"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"url"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"http://io.nainor.com/uploads/2_1740bd8d525.png"'), - ]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"tplImg"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"http://io.nainor.com/uploads/carousal_17442e1420f.png"'), - ]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"h"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('82')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"editableEl"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"key"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"direction"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"name"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"方向"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"type"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"Radio"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"range"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"key"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"down"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"text"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"从上到下"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"key"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"left"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"text"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"从左到右"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"key"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"swipeable"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"name"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"是否可拖拽"'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"type"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"Switch"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"key"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"autoPlay"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"name"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"是否自动播放"'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"type"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"Switch"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"key"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"imgList"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"name"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"图片列表"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"type"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"DataList"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"category"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"base"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"point"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"i"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"x-0"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"x"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('0')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"y"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('13')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"w"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('24')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"h"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('82')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"isBounded"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token boolean' } }, [t._v('true')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"status"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"inToCanvas"'), - ]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"id"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"481194"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"item"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"type"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"Form"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"config"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"title"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"表单定制组件"'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"fontSize"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('18')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"titColor"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"rgba(60,60,60,1)"'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"titWeight"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"400"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"bgColor"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"rgba(255,255,255,1)"'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"btnColor"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"rgba(20,54,226,100)"'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"btnTextColor"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"rgba(255,255,255,1)"'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"api"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('""')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"formControls"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"id"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"1"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"type"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"Text"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"label"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"姓名"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"placeholder"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"请输入姓名"'), - ]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"id"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"2"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"type"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"Number"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"label"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"年龄"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"placeholder"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('" 请输入年龄"'), - ]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"id"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"4"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"type"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"MySelect"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"label"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"爱好"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"options"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"label"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"选项一"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"value"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"1"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"label"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"选项二"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"value"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"2"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"label"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"选项三"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"value"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"3"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"h"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('172')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"category"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"base"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"point"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"i"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"x-1"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"x"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('0')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"y"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('98')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"w"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('24')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"h"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('172')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"isBounded"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token boolean' } }, [t._v('true')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"status"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"inToCanvas"'), - ]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - ]), - ]), - ]), - a('h3', { attrs: { id: '保存h5数据' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#保存h5数据' } }, [ - t._v('#'), - ]), - t._v(' 保存H5数据'), - ]), - t._v(' '), - a('ul', [a('li', [a('code', [t._v('POST')]), t._v(' /visible/h5/save')])]), - t._v(' '), - a('p', [t._v('先决条件:')]), - t._v(' '), - a('ul', [a('li', [t._v('用户已登陆')])]), - t._v(' '), - a('table', [ - a('thead', [ - a('tr', [ - a('th', [t._v('参数名')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('是否必选')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('类型')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'right' } }, [t._v('说明')]), - ]), - ]), - t._v(' '), - a('tbody', [ - a('tr', [ - a('td', [t._v('pageConfig')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('false')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('object')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('H5页面配置数据')]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('tpl')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('object')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [ - t._v('H5页面组件配置数据'), - ]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('tid')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('H5页面唯一id')]), - ]), - ]), - ]), - t._v(' '), - a('p', [t._v('参数示例')]), - t._v(' '), - a('div', { staticClass: 'language-json extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-json' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [ - t._v('"pageConfig"'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"bgColor"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"rgba(151,25,25,1)"'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"title"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"医院宣传页"'), - ]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"tpl"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"tid"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"EF123D3"')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - ]), - ]), - ]), - a('p', [t._v('返回示例')]), - t._v(' '), - a('div', { staticClass: 'language-json extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-json' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"state"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('200')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"result"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"tid"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"EF123D3"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"msg"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"保存成功"')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - ]), - ]), - ]), - a('h3', { attrs: { id: '删除h5数据' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#删除h5数据' } }, [ - t._v('#'), - ]), - t._v(' 删除H5数据'), - ]), - t._v(' '), - a('ul', [a('li', [a('code', [t._v('DELETE')]), t._v(' /visible/h5/del')])]), - t._v(' '), - a('p', [t._v('先决条件:')]), - t._v(' '), - a('ul', [a('li', [t._v('用户已登陆')])]), - t._v(' '), - a('table', [ - a('thead', [ - a('tr', [ - a('th', [t._v('参数名')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('是否必选')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('类型')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'right' } }, [t._v('说明')]), - ]), - ]), - t._v(' '), - a('tbody', [ - a('tr', [ - a('td', [t._v('tid')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('H5页面唯一id')]), - ]), - ]), - ]), - t._v(' '), - a('p', [t._v('返回示例')]), - t._v(' '), - a('div', { staticClass: 'language-json extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-json' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"state"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('200')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"result"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"tid"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"EF123D3"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"name"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"test页面"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"tid"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"EF123D6"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"name"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"test2页面"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"msg"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"删除成功"')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - ]), - ]), - ]), - a('h2', { attrs: { id: 'h5表单数据管理' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#h5表单数据管理' } }, [ - t._v('#'), - ]), - t._v(' H5表单数据管理'), - ]), - t._v(' '), - a('h3', { attrs: { id: '保存表单数据' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#保存表单数据' } }, [ - t._v('#'), - ]), - t._v(' 保存表单数据'), - ]), - t._v(' '), - a('ul', [a('li', [a('code', [t._v('POST')]), t._v(' /vip/h5/form/post')])]), - t._v(' '), - a('table', [ - a('thead', [ - a('tr', [ - a('th', [t._v('参数名')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('是否必选')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('类型')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'right' } }, [t._v('说明')]), - ]), - ]), - t._v(' '), - a('tbody', [ - a('tr', [ - a('td', [t._v('tid(query)')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('H5页面唯一id')]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('formData(body)')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('array')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('H5页面表单数据')]), - ]), - ]), - ]), - t._v(' '), - a('p', [t._v('返回示例')]), - t._v(' '), - a('div', { staticClass: 'language-json extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-json' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"state"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('200')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"result"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token null keyword' } }, [t._v('null')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"msg"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"表单提交成功"'), - ]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - ]), - ]), - ]), - a('h3', { attrs: { id: '批量导入表单数据' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#批量导入表单数据' } }, [ - t._v('#'), - ]), - t._v(' 批量导入表单数据'), - ]), - t._v(' '), - a('ul', [a('li', [a('code', [t._v('POST')]), t._v(' /vip/h5/form/import')])]), - t._v(' '), - a('table', [ - a('thead', [ - a('tr', [ - a('th', [t._v('参数名')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('是否必选')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('类型')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'right' } }, [t._v('说明')]), - ]), - ]), - t._v(' '), - a('tbody', [ - a('tr', [ - a('td', [t._v('tid(query)')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('H5页面唯一id')]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('formData(body)')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('array')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [ - t._v('H5页面表单数据集合'), - ]), - ]), - ]), - ]), - t._v(' '), - a('p', [t._v('返回示例')]), - t._v(' '), - a('div', { staticClass: 'language-json extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-json' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"state"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('200')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"result"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token null keyword' } }, [t._v('null')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"msg"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"批量导入成功"'), - ]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - ]), - ]), - ]), - a('h3', { attrs: { id: '删除表单数据' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#删除表单数据' } }, [ - t._v('#'), - ]), - t._v(' 删除表单数据'), - ]), - t._v(' '), - a('ul', [a('li', [a('code', [t._v('DELETE')]), t._v(' /vip/h5/form/del')])]), - t._v(' '), - a('table', [ - a('thead', [ - a('tr', [ - a('th', [t._v('参数名')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('是否必选')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('类型')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'right' } }, [t._v('说明')]), - ]), - ]), - t._v(' '), - a('tbody', [ - a('tr', [ - a('td', [t._v('tid')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('H5页面唯一id')]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('ID')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('表单专属id')]), - ]), - ]), - ]), - t._v(' '), - a('p', [t._v('返回示例')]), - t._v(' '), - a('div', { staticClass: 'language-json extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-json' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"state"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('200')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"result"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token null keyword' } }, [t._v('null')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"msg"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"删除成功"')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - ]), - ]), - ]), - a('h2', { attrs: { id: '模版管理' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#模版管理' } }, [t._v('#')]), - t._v(' 模版管理'), - ]), - t._v(' '), - a('h3', { attrs: { id: '获取模版库' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#获取模版库' } }, [ - t._v('#'), - ]), - t._v(' 获取模版库'), - ]), - t._v(' '), - a('ul', [a('li', [a('code', [t._v('GET')]), t._v(' /visible/tpls/free')])]), - t._v(' '), - a('p', [t._v('返回示例')]), - t._v(' '), - a('div', { staticClass: 'language-json extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-json' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"state"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('200')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"result"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"img"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('"http://xxx/uploads/tpl_175adabd8dd.jpg"'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"name"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"合作模版"')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"tid"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"B73349B6"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - ]), - ]), - ]), - a('h3', { attrs: { id: '保存模版' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#保存模版' } }, [t._v('#')]), - t._v(' 保存模版'), - ]), - t._v(' '), - a('ul', [a('li', [a('code', [t._v('POST')]), t._v(' /visible/tpl/save')])]), - t._v(' '), - a('p', [t._v('先决条件:')]), - t._v(' '), - a('ul', [a('li', [t._v('用户已登陆')])]), - t._v(' '), - a('table', [ - a('thead', [ - a('tr', [ - a('th', [t._v('参数名')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('是否必选')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('类型')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'right' } }, [t._v('说明')]), - ]), - ]), - t._v(' '), - a('tbody', [ - a('tr', [ - a('td', [t._v('name')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('H5模版名称')]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('cate')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('H5模版分类')]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('img')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('false')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('H5模版封面图')]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('tpl')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('array')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('H5模版数据')]), - ]), - t._v(' '), - a('tr', [ - a('td', [t._v('pageConfig')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('false')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('object')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('H5模版全局配置')]), - ]), - ]), - ]), - t._v(' '), - a('p', [t._v('返回示例')]), - t._v(' '), - a('div', { staticClass: 'language-json extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-json' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"state"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('200')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"result"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"tid"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"B73349B6"')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"msg"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"保存成功"')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - ]), - ]), - ]), - a('h3', { attrs: { id: '删除模版' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#删除模版' } }, [t._v('#')]), - t._v(' 删除模版'), - ]), - t._v(' '), - a('ul', [a('li', [a('code', [t._v('DELETE')]), t._v(' /visible/tpl/del')])]), - t._v(' '), - a('p', [t._v('先决条件:')]), - t._v(' '), - a('ul', [a('li', [t._v('用户已登陆')])]), - t._v(' '), - a('table', [ - a('thead', [ - a('tr', [ - a('th', [t._v('参数名')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('是否必选')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'center' } }, [t._v('类型')]), - t._v(' '), - a('th', { staticStyle: { 'text-align': 'right' } }, [t._v('说明')]), - ]), - ]), - t._v(' '), - a('tbody', [ - a('tr', [ - a('td', [t._v('tid')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('true')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'center' } }, [t._v('string')]), - t._v(' '), - a('td', { staticStyle: { 'text-align': 'right' } }, [t._v('H5模版id')]), - ]), - ]), - ]), - t._v(' '), - a('p', [t._v('返回示例')]), - t._v(' '), - a('div', { staticClass: 'language-json extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-json' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"state"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('200')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"result"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token null keyword' } }, [t._v('null')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token property' } }, [t._v('"msg"')]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('"删除成功"')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - ]), - ]), - ]), - a('h2', { attrs: { id: '文件上传' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#文件上传' } }, [t._v('#')]), - t._v(' 文件上传'), - ]), - t._v(' '), - a('h2', { attrs: { id: '数据统计' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#数据统计' } }, [t._v('#')]), - t._v(' 数据统计'), - ]), - t._v(' '), - a('h3', { attrs: { id: '数据大盘接口' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#数据大盘接口' } }, [ - t._v('#'), - ]), - t._v(' 数据大盘接口'), - ]), - t._v(' '), - a('h3', { attrs: { id: '页面埋点' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#页面埋点' } }, [t._v('#')]), - t._v(' 页面埋点'), - ]), - ]); - }, - [], - !1, - null, - null, - null, - ); - s.default = r.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/23.3c312dd7.js b/doc-dist/assets/js/23.3c312dd7.js deleted file mode 100644 index 0bfb6a2..0000000 --- a/doc-dist/assets/js/23.3c312dd7.js +++ /dev/null @@ -1,354 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [23], - { - 390: function(t, s, a) { - 'use strict'; - a.r(s); - var n = a(42), - e = Object(n.a)( - {}, - function() { - var t = this, - s = t.$createElement, - a = t._self._c || s; - return a('ContentSlotsDistributor', { attrs: { 'slot-key': t.$parent.slotKey } }, [ - a('p', [ - t._v('目前'), - a('strong', [t._v('H5-Dooring')]), - t._v('全面支持https部署, 具体方式方案如下.'), - ]), - t._v(' '), - a('h3', { attrs: { id: '前端工程' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#前端工程' } }, [t._v('#')]), - t._v(' 前端工程'), - ]), - t._v(' '), - a('p', [ - t._v('我们需要在前端工程中的'), - a('code', [t._v('src/pages/document.ejs')]), - t._v('中的'), - a('code', [t._v('head')]), - t._v('中添加如下代码:'), - ]), - t._v(' '), - a('div', { staticClass: 'language-html extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-html' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token tag' } }, [ - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('<')]), - t._v('meta'), - ]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token attr-name' } }, [ - t._v('http-equiv'), - ]), - a('span', { pre: !0, attrs: { class: 'token attr-value' } }, [ - a('span', { pre: !0, attrs: { class: 'token punctuation attr-equals' } }, [ - t._v('='), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('"')]), - t._v('Content-Security-Policy'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('"')]), - ]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token attr-name' } }, [ - t._v('content'), - ]), - a('span', { pre: !0, attrs: { class: 'token attr-value' } }, [ - a('span', { pre: !0, attrs: { class: 'token punctuation attr-equals' } }, [ - t._v('='), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('"')]), - t._v('upgrade-insecure-requests'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('"')]), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('>')]), - ]), - t._v('\n'), - ]), - ]), - ]), - a('p', [t._v('目的是强制将页面中HTTP请求转换为HTTPS.')]), - t._v(' '), - a('h3', { attrs: { id: '服务器工程' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#服务器工程' } }, [ - t._v('#'), - ]), - t._v(' 服务器工程'), - ]), - t._v(' '), - a('h4', { attrs: { id: '_1-申请ssl证书' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#_1-申请ssl证书' } }, [ - t._v('#'), - ]), - t._v(' 1. 申请SSL证书'), - ]), - t._v(' '), - a('h4', { attrs: { id: '_2-生成-server-csr-server-key' } }, [ - a( - 'a', - { - staticClass: 'header-anchor', - attrs: { href: '#_2-生成-server-csr-server-key' }, - }, - [t._v('#')], - ), - t._v(' 2. 生成 server.csr+server.key'), - ]), - t._v(' '), - a('h4', { attrs: { id: '_3-通过证书链生成-pem文件' } }, [ - a( - 'a', - { staticClass: 'header-anchor', attrs: { href: '#_3-通过证书链生成-pem文件' } }, - [t._v('#')], - ), - t._v(' 3. 通过证书链生成.pem文件'), - ]), - t._v(' '), - a('h4', { attrs: { id: '在server中的src-index-js按如下方式修改' } }, [ - a( - 'a', - { - staticClass: 'header-anchor', - attrs: { href: '#在server中的src-index-js按如下方式修改' }, - }, - [t._v('#')], - ), - t._v(' 在'), - a('code', [t._v('server')]), - t._v('中的'), - a('code', [t._v('src/index.js')]), - t._v('按如下方式修改'), - ]), - t._v(' '), - a('div', { staticClass: 'language-js extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-js' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token comment' } }, [ - t._v('// 忽略部分无影响代码'), - ]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('import')]), - t._v(' https '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('from')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'https'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n\n'), - a('span', { pre: !0, attrs: { class: 'token comment' } }, [ - t._v('// 你的ssl存放路径, 建议直接放在server目录下'), - ]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]), - t._v(' filePath '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' path'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('join')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - t._v('__dirname'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'../ssl'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v('\n\n'), - a('span', { pre: !0, attrs: { class: 'token comment' } }, [ - t._v('// 启动逻辑'), - ]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('async')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('function')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('start')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token comment' } }, [ - t._v('// https配置'), - ]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]), - t._v(' httpsOptions '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n key'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' fs'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - a('span', { pre: !0, attrs: { class: 'token function' } }, [ - t._v('readFileSync'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - t._v('path'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('join')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - t._v('filePath'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v("'3536084__doctopia.com.cn.key'"), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token comment' } }, [ - t._v('//ssl文件路径'), - ]), - t._v('\n cert'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' fs'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - a('span', { pre: !0, attrs: { class: 'token function' } }, [ - t._v('readFileSync'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - t._v('path'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('join')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - t._v('filePath'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v("'3536084__doctopia.com.cn.pem'"), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token comment' } }, [ - t._v('//ssl文件路径'), - ]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n\t\n\t'), - a('span', { pre: !0, attrs: { class: 'token comment' } }, [ - t._v('// https服务'), - ]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]), - t._v(' server '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' https'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - a('span', { pre: !0, attrs: { class: 'token function' } }, [ - t._v('createServer'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - t._v('httpsOptions'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' app'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('callback')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n\n '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]), - t._v(' io '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('require')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'socket.io'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - t._v('server'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n\t\n\t'), - a('span', { pre: !0, attrs: { class: 'token comment' } }, [ - t._v('// 忽略其他无影响代码'), - ]), - t._v('\n\t\n\t'), - a('span', { pre: !0, attrs: { class: 'token comment' } }, [ - t._v('// https默认443, 这里我们可以走公共配置'), - ]), - t._v('\n\tserver'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('listen')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('443')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=>')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n\t console'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('log')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token template-string' } }, [ - a( - 'span', - { pre: !0, attrs: { class: 'token template-punctuation string' } }, - [t._v('`')], - ), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v('服务器地址:'), - ]), - a('span', { pre: !0, attrs: { class: 'token interpolation' } }, [ - a( - 'span', - { - pre: !0, - attrs: { class: 'token interpolation-punctuation punctuation' }, - }, - [t._v('${')], - ), - t._v('config'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('staticPath'), - a( - 'span', - { - pre: !0, - attrs: { class: 'token interpolation-punctuation punctuation' }, - }, - [t._v('}')], - ), - ]), - a( - 'span', - { pre: !0, attrs: { class: 'token template-punctuation string' } }, - [t._v('`')], - ), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v('\n\t'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n\n'), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('start')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v('\n'), - ]), - ]), - ]), - ]); - }, - [], - !1, - null, - null, - null, - ); - s.default = e.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/24.70cc97c3.js b/doc-dist/assets/js/24.70cc97c3.js deleted file mode 100644 index 4534e76..0000000 --- a/doc-dist/assets/js/24.70cc97c3.js +++ /dev/null @@ -1,330 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [24], - { - 391: function(t, s, a) { - 'use strict'; - a.r(s); - var n = a(42), - e = Object(n.a)( - {}, - function() { - var t = this, - s = t.$createElement, - a = t._self._c || s; - return a('ContentSlotsDistributor', { attrs: { 'slot-key': t.$parent.slotKey } }, [ - a('p', [ - a('strong', [t._v('H5-Dooring')]), - t._v('全面支持第三方对象存储服务, 我们以七牛云对象存储为例.'), - ]), - t._v(' '), - a('h3', { attrs: { id: '前端上传文件到oss' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#前端上传文件到oss' } }, [ - t._v('#'), - ]), - t._v(' 前端上传文件到oss'), - ]), - t._v(' '), - a('p', [ - t._v( - '首先我们需要在第三方对象储存服务中配置对应的服务和域名. 其次安装对应的sdk, 如七牛云sdk:', - ), - ]), - t._v(' '), - a('div', { staticClass: 'language-js extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-js' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('import')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('*')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('as')]), - t._v(' qiniu '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('from')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'qiniu-js'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n'), - ]), - ]), - ]), - a('p', [ - t._v('其次我们修改'), - a('code', [t._v('h5_plus')]), - t._v('工程的'), - a('code', [t._v('Upload')]), - t._v('组件, 详细地址为'), - a('code', [t._v('src/core/FormComponents/Upload')]), - t._v('.'), - ]), - t._v(' '), - a('p', [t._v('修改内容如下:')]), - t._v(' '), - a('div', { staticClass: 'language-js extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-js' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]), - t._v(' fileName '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' file'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('name\n'), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]), - t._v(' suffix '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v("'自定义文件后缀'"), - ]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]), - t._v(' putExtra '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n fname'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' fileName'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n params'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]), - t._v(' uid '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('+')]), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('new')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token class-name' } }, [t._v('Date')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('+')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('uuid')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('16')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('8')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('+')]), - t._v(' suffix\n'), - a('span', { pre: !0, attrs: { class: 'token comment' } }, [ - t._v( - '// 使用七牛云上传api, 前提是提前在前端拿到对应的ticket, 可以通过请求的方式获取', - ), - ]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]), - t._v(' observe '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' qiniu'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('upload')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - t._v('file'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' uid'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('this')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('state'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('qnToken'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('ticket'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' putExtra'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v('\nobserve'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('subscribe')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=>')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('null')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token parameter' } }, [t._v('res')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=>')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token comment' } }, [ - t._v('// 拼接路径'), - ]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]), - t._v(' url '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token template-string' } }, [ - a( - 'span', - { pre: !0, attrs: { class: 'token template-punctuation string' } }, - [t._v('`')], - ), - a('span', { pre: !0, attrs: { class: 'token interpolation' } }, [ - a( - 'span', - { - pre: !0, - attrs: { class: 'token interpolation-punctuation punctuation' }, - }, - [t._v('${')], - ), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('this')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('state'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('qnToken'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('domain'), - a( - 'span', - { - pre: !0, - attrs: { class: 'token interpolation-punctuation punctuation' }, - }, - [t._v('}')], - ), - ]), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v('/')]), - a('span', { pre: !0, attrs: { class: 'token interpolation' } }, [ - a( - 'span', - { - pre: !0, - attrs: { class: 'token interpolation-punctuation punctuation' }, - }, - [t._v('${')], - ), - t._v('res'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('key'), - a( - 'span', - { - pre: !0, - attrs: { class: 'token interpolation-punctuation punctuation' }, - }, - [t._v('}')], - ), - ]), - a( - 'span', - { pre: !0, attrs: { class: 'token template-punctuation string' } }, - [t._v('`')], - ), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token comment' } }, [t._v('// 存库')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]), - t._v(' fileList '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('[')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v(' uid'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' name'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' fileName'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' status'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'done'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' url '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(']')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('this')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('setState')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n curImgUrl'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' url'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n fileList\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('this')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('props'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('onChange '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('&&')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('this')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('props'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('onChange')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - t._v('fileList'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v('\n'), - ]), - ]), - ]), - a('p', [ - t._v('其他oss服务类似, 如果不清楚如何配置, 可以在'), - a( - 'a', - { - attrs: { - href: 'http://h5.dooring.cn/', - target: '_blank', - rel: 'noopener noreferrer', - }, - }, - [t._v('H5-Dooring官网'), a('OutboundLink')], - 1, - ), - t._v('中找到我们.'), - ]), - ]); - }, - [], - !1, - null, - null, - null, - ); - s.default = e.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/25.e47f5b3c.js b/doc-dist/assets/js/25.e47f5b3c.js deleted file mode 100644 index ef7d692..0000000 --- a/doc-dist/assets/js/25.e47f5b3c.js +++ /dev/null @@ -1,34 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [25], - { - 398: function(n, e, s) { - 'use strict'; - s.r(e); - var t = s(42), - x = Object(t.a)( - {}, - function() { - var n = this.$createElement, - e = this._self._c || n; - return e('ContentSlotsDistributor', { attrs: { 'slot-key': this.$parent.slotKey } }, [ - e('div', { staticClass: 'language- extra-class' }, [ - e('pre', { pre: !0, attrs: { class: 'language-text' } }, [ - e('code', [ - this._v( - 'src\n├─ assets\n│ ├─ header.png\n│ ├─ form.png\n│ ├─ footer.png\n│ ├─ icon.png\n│ ├─ picture.png\n├─ components\n│ ├─ BackTop\n│ │ └─ index.js\n│ ├─ BasicShop\n│ │ ├─ BasicComponents\n│ │ │ ├─ Card\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Carousel\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Footer\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Form\n│ │ │ │ ├─ BaseForm.tsx\n│ │ │ │ ├─ BasePopoverForm.tsx\n│ │ │ │ ├─ baseForm.less\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Header\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Icon\n│ │ │ │ ├─ icon.ts\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Image\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ LongText\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Nav\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Notice\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Qrcode\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ RichText\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Text\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ WhiteTpl\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ XButton\n│ │ │ │ ├─ Modal.tsx\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ schema.ts\n│ │ │ └─ template.ts\n│ │ ├─ MediaComponents\n│ │ │ ├─ Audio\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Calendar\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Map\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Video\n│ │ │ │ ├─ index.css\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ schema.ts\n│ │ │ └─ template.ts\n│ │ ├─ ShopComponents\n│ │ │ ├─ CardLabel\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Coupons\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ List\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Tab\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ ZhuanLan\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ schema.ts\n│ │ │ └─ template.ts\n│ │ ├─ VisualComponents\n│ │ │ ├─ Area\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Chart\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Funnel\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Line\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Pie\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ Radar\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ WordCloud\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ XProgress\n│ │ │ │ ├─ index.less\n│ │ │ │ ├─ index.tsx\n│ │ │ │ ├─ schema.ts\n│ │ │ │ └─ template.ts\n│ │ │ ├─ schema.ts\n│ │ │ └─ template.ts\n│ │ ├─ common.ts\n│ │ └─ schema.ts\n│ ├─ Calibration\n│ │ ├─ index.less\n│ │ └─ index.tsx\n│ ├─ ErrorBundaries\n│ │ └─ index.tsx\n│ ├─ LoadingCp\n│ │ └─ index.tsx\n│ ├─ ModalTpl\n│ │ ├─ cate.js\n│ │ ├─ index.js\n│ │ └─ index.less\n│ └─ Zan\n│ ├─ index.less\n│ └─ index.tsx\n├─ core\n│ ├─ FormComponents\n│ │ ├─ CardPicker\n│ │ │ ├─ index.less\n│ │ │ └─ index.tsx\n│ │ ├─ Color\n│ │ │ ├─ index.less\n│ │ │ └─ index.tsx\n│ │ ├─ DataList\n│ │ │ ├─ editorModal.tsx\n│ │ │ ├─ index.less\n│ │ │ └─ index.tsx\n│ │ ├─ FormItems\n│ │ │ ├─ EditorModal.tsx\n│ │ │ ├─ FormItems.tsx\n│ │ │ ├─ formItems.less\n│ │ │ └─ index.tsx\n│ │ ├─ InteractionData\n│ │ │ ├─ index.less\n│ │ │ └─ index.tsx\n│ │ ├─ MutiText\n│ │ │ ├─ index.less\n│ │ │ └─ index.tsx\n│ │ ├─ Pos\n│ │ │ ├─ index.less\n│ │ │ └─ index.tsx\n│ │ ├─ Table\n│ │ │ ├─ index.less\n│ │ │ └─ index.tsx\n│ │ ├─ Upload\n│ │ │ ├─ index.less\n│ │ │ └─ index.tsx\n│ │ ├─ XEditor\n│ │ │ ├─ index.less\n│ │ │ └─ index.tsx\n│ │ └─ types.ts\n│ ├─ DynamicEngine.tsx\n│ ├─ FormRender.tsx\n│ ├─ ViewRender.tsx\n│ └─ viewRender.less\n├─ layouts\n│ ├─ __tests__\n│ │ └─ index.test.js\n│ ├─ index.less\n│ └─ index.tsx\n├─ pages\n│ ├─ __tests__\n│ │ └─ index.test.js\n│ ├─ editor\n│ │ ├─ components\n│ │ │ ├─ AvatorGroup\n│ │ │ │ └─ index.tsx\n│ │ │ ├─ CanvasControl\n│ │ │ │ ├─ index.less\n│ │ │ │ └─ index.tsx\n│ │ │ └─ Header\n│ │ │ ├─ index.js\n│ │ │ └─ index.less\n│ │ ├─ models\n│ │ │ └─ editorModal.js\n│ │ ├─ services\n│ │ │ └─ editorService.js\n│ │ ├─ Container.js\n│ │ ├─ SourceBox.tsx\n│ │ ├─ TargetBox.js\n│ │ ├─ index.js\n│ │ ├─ index.less\n│ │ └─ preview.tsx\n│ ├─ help\n│ │ ├─ index.less\n│ │ └─ index.tsx\n│ ├─ home\n│ │ ├─ index.less\n│ │ └─ index.tsx\n│ ├─ ide\n│ │ ├─ _draft.tsx\n│ │ ├─ index.less\n│ │ └─ index.tsx\n│ ├─ login\n│ │ ├─ index.less\n│ │ └─ index.tsx\n│ ├─ document.ejs\n│ └─ mobileTip.js\n├─ utils\n│ ├─ req.ts\n│ └─ tool.ts\n├─ app.tsx\n└─ global.css\n\n', - ), - ]), - ]), - ]), - ]); - }, - [], - !1, - null, - null, - null, - ); - e.default = x.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/26.bf8cc2c2.js b/doc-dist/assets/js/26.bf8cc2c2.js deleted file mode 100644 index e9a1e0f..0000000 --- a/doc-dist/assets/js/26.bf8cc2c2.js +++ /dev/null @@ -1,262 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [26], - { - 394: function(t, s, a) { - 'use strict'; - a.r(s); - var n = a(42), - r = Object(n.a)( - {}, - function() { - var t = this, - s = t.$createElement, - a = t._self._c || s; - return a('ContentSlotsDistributor', { attrs: { 'slot-key': t.$parent.slotKey } }, [ - a('h1', { attrs: { id: '撤销-重做' } }, [ - a('a', { staticClass: 'header-anchor', attrs: { href: '#撤销-重做' } }, [ - t._v('#'), - ]), - t._v(' 撤销/重做'), - ]), - t._v(' '), - a('p', [ - t._v( - '撤销重做我们主要使用了redux-undo这个库,配合Dva使用,具体使用方法参考如下操作:', - ), - ]), - t._v(' '), - a('div', { staticClass: 'language-js extra-class' }, [ - a('pre', { pre: !0, attrs: { class: 'language-js' } }, [ - a('code', [ - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('import')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v(' createLogger '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('from')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v("'redux-logger'"), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('import')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v(' message '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('from')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'antd'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('import')]), - t._v(' undoable'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v(' StateWithHistory '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('from')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [ - t._v("'redux-undo'"), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('import')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v(' Reducer'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' AnyAction '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('from')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'redux'")]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n\n'), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('export')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]), - t._v(' dva '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n config'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n onAction'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token function' } }, [ - t._v('createLogger'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('onError')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token parameter' } }, [ - t._v('e'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' Error'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n message'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('error')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - t._v('e'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('message'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('3')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token function-variable function' } }, [ - t._v('onReducer'), - ]), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token parameter' } }, [ - t._v('reducer'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' Reducer'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('<')]), - t._v('any'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' AnyAction'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('>')]), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=>')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('let')]), - t._v(' undoReducer '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('undoable')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - t._v('reducer'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('return')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('function')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - a('span', { pre: !0, attrs: { class: 'token parameter' } }, [ - t._v('state'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' StateWithHistory'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('<')]), - t._v('any'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('>')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' action'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' AnyAction'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('let')]), - t._v(' newState '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token function' } }, [ - t._v('undoReducer'), - ]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]), - t._v('state'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' action'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('let')]), - t._v(' router '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]), - t._v(' newState'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('present'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('router '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('?')]), - t._v(' newState'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('present'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('router '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' newState'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('present'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]), - t._v('routing'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('return')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]), - t._v(' '), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('...')]), - t._v('newState'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v(' router'), - a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]), - t._v(' router '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n '), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]), - t._v('\n'), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]), - a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]), - t._v('\n'), - ]), - ]), - ]), - a('p', [ - t._v( - '以上我们就实现了全局配置redux-undo,在撤销重做按钮中我们就可以触发对应的方法来实现撤销重做的功能,其次我们还使用了redux-logger来实现redux的日志输出。', - ), - ]), - ]); - }, - [], - !1, - null, - null, - null, - ); - s.default = r.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/27.9151272d.js b/doc-dist/assets/js/27.9151272d.js deleted file mode 100644 index ed84678..0000000 --- a/doc-dist/assets/js/27.9151272d.js +++ /dev/null @@ -1,55 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [27], - { - 396: function(t, n, e) { - 'use strict'; - e.r(n); - var o = e(42), - r = Object(o.a)( - {}, - function() { - var t = this, - n = t.$createElement, - e = t._self._c || n; - return e('ContentSlotsDistributor', { attrs: { 'slot-key': t.$parent.slotKey } }, [ - e('h1', { attrs: { id: '保存json' } }, [ - e('a', { staticClass: 'header-anchor', attrs: { href: '#保存json' } }, [t._v('#')]), - t._v(' 保存json'), - ]), - t._v(' '), - e('p', [ - t._v( - '我们配置好H5页面之后,如果希望其他人观看,我们可以保存页面并发送链接。但是如果有多人协作的需求,比如一个H5页面可能由多个人完成,这个时候该怎么实现呢?基于已有的方案,我们可以采用socket实现多人协同编辑,但是成本比较大,所有这里我们提供了保存json的功能。', - ), - ]), - t._v(' '), - e('p', [ - t._v( - '我们可以将配置好的页面导出为json,发送给另一个人,这样另一个人通过导入该json文件可以实时看到当前的页面,这里还是依靠我们的页面渲染引擎viewEngine。实现思路也很简单,可以在github[', - ), - e( - 'a', - { - attrs: { - href: 'https://github.com/MrXujiang/h5-Dooring', - target: '_blank', - rel: 'noopener noreferrer', - }, - }, - [t._v('https://github.com/MrXujiang/h5-Dooring'), e('OutboundLink')], - 1, - ), - t._v(']上参考体验。'), - ]), - ]); - }, - [], - !1, - null, - null, - null, - ); - n.default = r.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/3.0105453b.js b/doc-dist/assets/js/3.0105453b.js deleted file mode 100644 index 21631f5..0000000 --- a/doc-dist/assets/js/3.0105453b.js +++ /dev/null @@ -1,557 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [3], - { - 308: function(t, n, e) { - 'use strict'; - e.d(n, 'd', function() { - return r; - }), - e.d(n, 'a', function() { - return a; - }), - e.d(n, 'i', function() { - return u; - }), - e.d(n, 'f', function() { - return l; - }), - e.d(n, 'g', function() { - return o; - }), - e.d(n, 'h', function() { - return c; - }), - e.d(n, 'b', function() { - return f; - }), - e.d(n, 'e', function() { - return h; - }), - e.d(n, 'k', function() { - return d; - }), - e.d(n, 'l', function() { - return p; - }), - e.d(n, 'c', function() { - return g; - }), - e.d(n, 'j', function() { - return m; - }); - e(23), e(93), e(170), e(96), e(172), e(65), e(43), e(309), e(66), e(310), e(95); - var r = /#.*$/, - i = /\.(md|html)$/, - a = /\/$/, - u = /^[a-z]+:/i; - function s(t) { - return decodeURI(t) - .replace(r, '') - .replace(i, ''); - } - function l(t) { - return u.test(t); - } - function o(t) { - return /^mailto:/.test(t); - } - function c(t) { - return /^tel:/.test(t); - } - function f(t) { - if (l(t)) return t; - var n = t.match(r), - e = n ? n[0] : '', - i = s(t); - return a.test(i) ? t : i + '.html' + e; - } - function h(t, n) { - var e = decodeURIComponent(t.hash), - i = (function(t) { - var n = t.match(r); - if (n) return n[0]; - })(n); - return (!i || e === i) && s(t.path) === s(n); - } - function d(t, n, e) { - if (l(n)) return { type: 'external', path: n }; - e && - (n = (function(t, n, e) { - var r = t.charAt(0); - if ('/' === r) return t; - if ('?' === r || '#' === r) return n + t; - var i = n.split('/'); - (e && i[i.length - 1]) || i.pop(); - for (var a = t.replace(/^\//, '').split('/'), u = 0; u < a.length; u++) { - var s = a[u]; - '..' === s ? i.pop() : '.' !== s && i.push(s); - } - '' !== i[0] && i.unshift(''); - return i.join('/'); - })(n, e)); - for (var r = s(n), i = 0; i < t.length; i++) - if (s(t[i].regularPath) === r) - return Object.assign({}, t[i], { type: 'page', path: f(t[i].path) }); - return ( - console.error('[vuepress] No matching page found for sidebar item "'.concat(n, '"')), {} - ); - } - function p(t, n, e, r) { - var i = e.pages, - a = e.themeConfig, - u = (r && a.locales && a.locales[r]) || a; - if ('auto' === (t.frontmatter.sidebar || u.sidebar || a.sidebar)) return v(t); - var s = u.sidebar || a.sidebar; - if (s) { - var l = (function(t, n) { - if (Array.isArray(n)) return { base: '/', config: n }; - for (var e in n) - if (0 === ((r = t), /(\.html|\/)$/.test(r) ? r : r + '/').indexOf(encodeURI(e))) - return { base: e, config: n[e] }; - var r; - return {}; - })(n, s), - o = l.base, - c = l.config; - return 'auto' === c - ? v(t) - : c - ? c.map(function(t) { - return (function t(n, e, r) { - var i = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : 1; - if ('string' == typeof n) return d(e, n, r); - if (Array.isArray(n)) return Object.assign(d(e, n[0], r), { title: n[1] }); - var a = n.children || []; - return 0 === a.length && n.path - ? Object.assign(d(e, n.path, r), { title: n.title }) - : { - type: 'group', - path: n.path, - title: n.title, - sidebarDepth: n.sidebarDepth, - initialOpenGroupIndex: n.initialOpenGroupIndex, - children: a.map(function(n) { - return t(n, e, r, i + 1); - }), - collapsable: !1 !== n.collapsable, - }; - })(t, i, o); - }) - : []; - } - return []; - } - function v(t) { - var n = g(t.headers || []); - return [ - { - type: 'group', - collapsable: !1, - title: t.title, - path: null, - children: n.map(function(n) { - return { - type: 'auto', - title: n.title, - basePath: t.path, - path: t.path + '#' + n.slug, - children: n.children || [], - }; - }), - }, - ]; - } - function g(t) { - var n; - return ( - (t = t.map(function(t) { - return Object.assign({}, t); - })).forEach(function(t) { - 2 === t.level ? (n = t) : n && (n.children || (n.children = [])).push(t); - }), - t.filter(function(t) { - return 2 === t.level; - }) - ); - } - function m(t) { - return Object.assign(t, { type: t.items && t.items.length ? 'links' : 'link' }); - } - }, - 309: function(t, n, e) { - 'use strict'; - var r = e(167), - i = e(5), - a = e(13), - u = e(22), - s = e(168), - l = e(169); - r('match', 1, function(t, n, e) { - return [ - function(n) { - var e = u(this), - r = null == n ? void 0 : n[t]; - return void 0 !== r ? r.call(n, e) : new RegExp(n)[t](String(e)); - }, - function(t) { - var r = e(n, t, this); - if (r.done) return r.value; - var u = i(t), - o = String(this); - if (!u.global) return l(u, o); - var c = u.unicode; - u.lastIndex = 0; - for (var f, h = [], d = 0; null !== (f = l(u, o)); ) { - var p = String(f[0]); - (h[d] = p), '' === p && (u.lastIndex = s(o, a(u.lastIndex), c)), d++; - } - return 0 === d ? null : h; - }, - ]; - }); - }, - 310: function(t, n, e) { - 'use strict'; - var r = e(167), - i = e(171), - a = e(5), - u = e(22), - s = e(97), - l = e(168), - o = e(13), - c = e(169), - f = e(67), - h = e(1), - d = [].push, - p = Math.min, - v = !h(function() { - return !RegExp(4294967295, 'y'); - }); - r( - 'split', - 2, - function(t, n, e) { - var r; - return ( - (r = - 'c' == 'abbc'.split(/(b)*/)[1] || - 4 != 'test'.split(/(?:)/, -1).length || - 2 != 'ab'.split(/(?:ab)*/).length || - 4 != '.'.split(/(.?)(.?)/).length || - '.'.split(/()()/).length > 1 || - ''.split(/.?/).length - ? function(t, e) { - var r = String(u(this)), - a = void 0 === e ? 4294967295 : e >>> 0; - if (0 === a) return []; - if (void 0 === t) return [r]; - if (!i(t)) return n.call(r, t, a); - for ( - var s, - l, - o, - c = [], - h = - (t.ignoreCase ? 'i' : '') + - (t.multiline ? 'm' : '') + - (t.unicode ? 'u' : '') + - (t.sticky ? 'y' : ''), - p = 0, - v = new RegExp(t.source, h + 'g'); - (s = f.call(v, r)) && - !( - (l = v.lastIndex) > p && - (c.push(r.slice(p, s.index)), - s.length > 1 && s.index < r.length && d.apply(c, s.slice(1)), - (o = s[0].length), - (p = l), - c.length >= a) - ); - - ) - v.lastIndex === s.index && v.lastIndex++; - return ( - p === r.length ? (!o && v.test('')) || c.push('') : c.push(r.slice(p)), - c.length > a ? c.slice(0, a) : c - ); - } - : '0'.split(void 0, 0).length - ? function(t, e) { - return void 0 === t && 0 === e ? [] : n.call(this, t, e); - } - : n), - [ - function(n, e) { - var i = u(this), - a = null == n ? void 0 : n[t]; - return void 0 !== a ? a.call(n, i, e) : r.call(String(i), n, e); - }, - function(t, i) { - var u = e(r, t, this, i, r !== n); - if (u.done) return u.value; - var f = a(t), - h = String(this), - d = s(f, RegExp), - g = f.unicode, - m = - (f.ignoreCase ? 'i' : '') + - (f.multiline ? 'm' : '') + - (f.unicode ? 'u' : '') + - (v ? 'y' : 'g'), - b = new d(v ? f : '^(?:' + f.source + ')', m), - k = void 0 === i ? 4294967295 : i >>> 0; - if (0 === k) return []; - if (0 === h.length) return null === c(b, h) ? [h] : []; - for (var x = 0, _ = 0, y = []; _ < h.length; ) { - b.lastIndex = v ? _ : 0; - var C, - I = c(b, v ? h : h.slice(_)); - if (null === I || (C = p(o(b.lastIndex + (v ? 0 : _)), h.length)) === x) - _ = l(h, _, g); - else { - if ((y.push(h.slice(x, _)), y.length === k)) return y; - for (var O = 1; O <= I.length - 1; O++) - if ((y.push(I[O]), y.length === k)) return y; - _ = x = C; - } - } - return y.push(h.slice(x)), y; - }, - ] - ); - }, - !v, - ); - }, - 311: function(t, n, e) { - 'use strict'; - e(166), e(94), e(313); - var r = e(308), - i = { - name: 'NavLink', - props: { item: { required: !0 } }, - computed: { - link: function() { - return Object(r.b)(this.item.link); - }, - exact: function() { - var t = this; - return this.$site.locales - ? Object.keys(this.$site.locales).some(function(n) { - return n === t.link; - }) - : '/' === this.link; - }, - isNonHttpURI: function() { - return Object(r.g)(this.link) || Object(r.h)(this.link); - }, - isBlankTarget: function() { - return '_blank' === this.target; - }, - isInternal: function() { - return !Object(r.f)(this.link) && !this.isBlankTarget; - }, - target: function() { - return this.isNonHttpURI - ? null - : this.item.target - ? this.item.target - : Object(r.f)(this.link) - ? '_blank' - : ''; - }, - rel: function() { - return this.isNonHttpURI || !1 === this.item.rel - ? null - : this.item.rel - ? this.item.rel - : this.isBlankTarget - ? 'noopener noreferrer' - : null; - }, - }, - methods: { - focusoutAction: function() { - this.$emit('focusout'); - }, - }, - }, - a = e(42), - u = Object(a.a)( - i, - function() { - var t = this, - n = t.$createElement, - e = t._self._c || n; - return t.isInternal - ? e( - 'RouterLink', - { - staticClass: 'nav-link', - attrs: { to: t.link, exact: t.exact }, - nativeOn: { - focusout: function(n) { - return t.focusoutAction(n); - }, - }, - }, - [t._v('\n ' + t._s(t.item.text) + '\n')], - ) - : e( - 'a', - { - staticClass: 'nav-link external', - attrs: { href: t.link, target: t.target, rel: t.rel }, - on: { focusout: t.focusoutAction }, - }, - [ - t._v('\n ' + t._s(t.item.text) + '\n '), - t.isBlankTarget ? e('OutboundLink') : t._e(), - ], - 1, - ); - }, - [], - !1, - null, - null, - null, - ); - n.a = u.exports; - }, - 313: function(t, n, e) { - 'use strict'; - var r = e(0), - i = e(314); - r( - { target: 'String', proto: !0, forced: e(315)('link') }, - { - link: function(t) { - return i(this, 'a', 'href', t); - }, - }, - ); - }, - 314: function(t, n, e) { - var r = e(22), - i = /"/g; - t.exports = function(t, n, e, a) { - var u = String(r(t)), - s = '<' + n; - return ( - '' !== e && (s += ' ' + e + '="' + String(a).replace(i, '"') + '"'), - s + '>' + u + '' - ); - }; - }, - 315: function(t, n, e) { - var r = e(1); - t.exports = function(t) { - return r(function() { - var n = ''[t]('"'); - return n !== n.toLowerCase() || n.split('"').length > 3; - }); - }; - }, - 332: function(t, n, e) {}, - 369: function(t, n, e) { - t.exports = e.p + 'assets/img/logo.001d04e6.svg'; - }, - 370: function(t, n, e) { - 'use strict'; - e(332); - }, - 379: function(t, n, e) { - 'use strict'; - e.r(n); - var r = { - name: 'Home', - components: { NavLink: e(311).a }, - computed: { - data: function() { - return this.$page.frontmatter; - }, - actionLink: function() { - return { link: this.data.actionLink, text: this.data.actionText }; - }, - }, - }, - i = (e(370), e(42)), - a = Object(i.a)( - r, - function() { - var t = this, - n = t.$createElement, - r = t._self._c || n; - return r( - 'main', - { - staticClass: 'home', - attrs: { 'aria-labelledby': null !== t.data.heroText ? 'main-title' : null }, - }, - [ - r('header', { staticClass: 'hero' }, [ - null !== t.data.heroText - ? r('h1', { attrs: { id: 'main-title' } }, [ - r('img', { attrs: { src: e(369), alt: t.data.heroAlt || 'hero' } }), - r('span', [t._v(t._s(t.data.heroText || t.$title || 'Hello'))]), - ]) - : t._e(), - ]), - t._v(' '), - t.data.features && t.data.features.length - ? r('div', { staticClass: 'features' }, [ - r( - 'div', - { staticClass: 'container' }, - t._l(t.data.features, function(n, e) { - return r('div', { key: e, staticClass: 'feature' }, [ - r('div', { staticClass: 'feature-index' }, [t._v(t._s(e + 1))]), - t._v(' '), - r('h2', [t._v(t._s(n.title))]), - t._v(' '), - r('p', [t._v(t._s(n.details))]), - ]); - }), - 0, - ), - ]) - : t._e(), - t._v(' '), - r('Content', { staticClass: 'theme-default-content custom' }), - t._v(' '), - r('div', { staticClass: 'hero' }, [ - t.data.actionText && t.data.actionLink - ? r( - 'p', - { staticClass: 'action' }, - [ - r('NavLink', { - staticClass: 'action-button', - attrs: { item: t.actionLink }, - }), - ], - 1, - ) - : t._e(), - ]), - t._v(' '), - t.data.footer - ? r('div', { staticClass: 'footer' }, [ - t._v('\n ' + t._s(t.data.footer) + '\n '), - ]) - : t._e(), - ], - 1, - ); - }, - [], - !1, - null, - null, - null, - ); - n.default = a.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/4.7985c0ed.js b/doc-dist/assets/js/4.7985c0ed.js deleted file mode 100644 index ea2d7cb..0000000 --- a/doc-dist/assets/js/4.7985c0ed.js +++ /dev/null @@ -1,34 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [4], - { - 335: function(t, e, n) {}, - 373: function(t, e, n) { - 'use strict'; - n(335); - }, - 401: function(t, e, n) { - 'use strict'; - n.r(e); - var i = { - functional: !0, - props: { - type: { type: String, default: 'tip' }, - text: String, - vertical: { type: String, default: 'top' }, - }, - render: function(t, e) { - var n = e.props, - i = e.slots; - return t( - 'span', - { class: ['badge', n.type], style: { verticalAlign: n.vertical } }, - n.text || i().default, - ); - }, - }, - r = (n(373), n(42)), - p = Object(r.a)(i, void 0, void 0, !1, null, '15b7b770', null); - e.default = p.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/5.82171d89.js b/doc-dist/assets/js/5.82171d89.js deleted file mode 100644 index e683e38..0000000 --- a/doc-dist/assets/js/5.82171d89.js +++ /dev/null @@ -1,40 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [5], - { - 333: function(e, t, c) {}, - 371: function(e, t, c) { - 'use strict'; - c(333); - }, - 380: function(e, t, c) { - 'use strict'; - c.r(t); - var i = { - name: 'CodeBlock', - props: { title: { type: String, required: !0 }, active: { type: Boolean, default: !1 } }, - }, - n = (c(371), c(42)), - s = Object(n.a)( - i, - function() { - var e = this.$createElement; - return (this._self._c || e)( - 'div', - { - staticClass: 'theme-code-block', - class: { 'theme-code-block__active': this.active }, - }, - [this._t('default')], - 2, - ); - }, - [], - !1, - null, - '6d04095e', - null, - ); - t.default = s.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/6.133c066e.js b/doc-dist/assets/js/6.133c066e.js deleted file mode 100644 index f332aed..0000000 --- a/doc-dist/assets/js/6.133c066e.js +++ /dev/null @@ -1,106 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [6], - { - 334: function(e, t, o) {}, - 372: function(e, t, o) { - 'use strict'; - o(334); - }, - 381: function(e, t, o) { - 'use strict'; - o.r(t); - o(23), o(93), o(65), o(95); - var a = { - name: 'CodeGroup', - data: function() { - return { codeTabs: [], activeCodeTabIndex: -1 }; - }, - watch: { - activeCodeTabIndex: function(e) { - this.codeTabs.forEach(function(e) { - e.elm.classList.remove('theme-code-block__active'); - }), - this.codeTabs[e].elm.classList.add('theme-code-block__active'); - }, - }, - mounted: function() { - var e = this; - (this.codeTabs = (this.$slots.default || []) - .filter(function(e) { - return Boolean(e.componentOptions); - }) - .map(function(t, o) { - return ( - '' === t.componentOptions.propsData.active && (e.activeCodeTabIndex = o), - { title: t.componentOptions.propsData.title, elm: t.elm } - ); - })), - -1 === this.activeCodeTabIndex && - this.codeTabs.length > 0 && - (this.activeCodeTabIndex = 0); - }, - methods: { - changeCodeTab: function(e) { - this.activeCodeTabIndex = e; - }, - }, - }, - c = (o(372), o(42)), - n = Object(c.a)( - a, - function() { - var e = this, - t = e.$createElement, - o = e._self._c || t; - return o( - 'div', - { staticClass: 'theme-code-group' }, - [ - o('div', { staticClass: 'theme-code-group__nav' }, [ - o( - 'ul', - { staticClass: 'theme-code-group__ul' }, - e._l(e.codeTabs, function(t, a) { - return o('li', { key: t.title, staticClass: 'theme-code-group__li' }, [ - o( - 'button', - { - staticClass: 'theme-code-group__nav-tab', - class: { - 'theme-code-group__nav-tab-active': a === e.activeCodeTabIndex, - }, - on: { - click: function(t) { - return e.changeCodeTab(a); - }, - }, - }, - [e._v('\n ' + e._s(t.title) + '\n ')], - ), - ]); - }), - 0, - ), - ]), - e._v(' '), - e._t('default'), - e._v(' '), - e.codeTabs.length < 1 - ? o('pre', { staticClass: 'pre-blank' }, [ - e._v('// Make sure to add code blocks to your code group'), - ]) - : e._e(), - ], - 2, - ); - }, - [], - !1, - null, - '32c2d7ed', - null, - ); - t.default = n.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/7.1ca3fdb8.js b/doc-dist/assets/js/7.1ca3fdb8.js deleted file mode 100644 index 38b5101..0000000 --- a/doc-dist/assets/js/7.1ca3fdb8.js +++ /dev/null @@ -1,44 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [7], - { - 362: function(t, s, e) { - t.exports = e.p + 'assets/img/preview-flow.b37c7798.png'; - }, - 363: function(t, s, e) { - t.exports = e.p + 'assets/img/preview-page.3ec86df5.png'; - }, - 393: function(t, s, e) { - 'use strict'; - e.r(s); - var r = e(42), - a = Object(r.a)( - {}, - function() { - var t = this, - s = t.$createElement, - r = t._self._c || s; - return r('ContentSlotsDistributor', { attrs: { 'slot-key': t.$parent.slotKey } }, [ - r('h1', { attrs: { id: '网页预览' } }, [ - r('a', { staticClass: 'header-anchor', attrs: { href: '#网页预览' } }, [t._v('#')]), - t._v(' 网页预览'), - ]), - t._v(' '), - r('p', [t._v('我们看看网页预览的工作流程:')]), - t._v(' '), - r('img', { attrs: { src: e(362), alt: 'foo' } }), - t._v(' '), - r('p', [t._v('前端预览界面:')]), - t._v(' '), - r('img', { attrs: { src: e(363), alt: 'foo' } }), - ]); - }, - [], - !1, - null, - null, - null, - ); - s.default = a.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/8.83a09fe6.js b/doc-dist/assets/js/8.83a09fe6.js deleted file mode 100644 index 4cb443f..0000000 --- a/doc-dist/assets/js/8.83a09fe6.js +++ /dev/null @@ -1,62 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [8], - { - 365: function(t, s, a) { - t.exports = a.p + 'assets/img/template-ft.4f6e0d14.png'; - }, - 366: function(t, s, a) { - t.exports = a.p + 'assets/img/template-bg.244b9ac7.png'; - }, - 397: function(t, s, a) { - 'use strict'; - a.r(s); - var e = a(42), - r = Object(e.a)( - {}, - function() { - var t = this, - s = t.$createElement, - e = t._self._c || s; - return e('ContentSlotsDistributor', { attrs: { 'slot-key': t.$parent.slotKey } }, [ - e('h2', { attrs: { id: '模板库实现思路' } }, [ - e('a', { staticClass: 'header-anchor', attrs: { href: '#模板库实现思路' } }, [ - t._v('#'), - ]), - t._v(' 模板库实现思路'), - ]), - t._v(' '), - e('p', [ - t._v( - '我们目前开放了模板库功能,一方面我们会定期配置行业模板,另一个方面Dooring还支持用户自己配置模板,可以一键保存到云端供用户使用。我们也可以将模板变成自己的页面共享给其他人。实现方式本质上是保存用户的配置信息,上传到服务器中做存储,在后台提供了管理模板的模块,可以修改,删除模板。如下图所示:', - ), - ]), - t._v(' '), - e('h3', { attrs: { id: '模板前台展示' } }, [ - e('a', { staticClass: 'header-anchor', attrs: { href: '#模板前台展示' } }, [ - t._v('#'), - ]), - t._v(' 模板前台展示:'), - ]), - t._v(' '), - e('img', { attrs: { src: a(365), alt: 'foo' } }), - t._v(' '), - e('h3', { attrs: { id: '模板后台展示' } }, [ - e('a', { staticClass: 'header-anchor', attrs: { href: '#模板后台展示' } }, [ - t._v('#'), - ]), - t._v(' 模板后台展示:'), - ]), - t._v(' '), - e('img', { attrs: { src: a(366), alt: 'foo' } }), - ]); - }, - [], - !1, - null, - null, - null, - ); - s.default = r.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/9.90abe1c9.js b/doc-dist/assets/js/9.90abe1c9.js deleted file mode 100644 index 8b3657e..0000000 --- a/doc-dist/assets/js/9.90abe1c9.js +++ /dev/null @@ -1,92 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([ - [9], - { - 358: function(t, o, r) { - t.exports = r.p + 'assets/img/logo.001d04e6.svg'; - }, - 382: function(t, o, r) { - 'use strict'; - r.r(o); - var s = r(42), - v = Object(s.a)( - {}, - function() { - var t = this, - o = t.$createElement, - s = t._self._c || o; - return s('ContentSlotsDistributor', { attrs: { 'slot-key': t.$parent.slotKey } }, [ - s('img', { attrs: { src: r(358), alt: 'foo' } }), - t._v(' '), - s('p', [ - t._v( - 'H5-Dooring 是一款功能强大,高可扩展的 H5 可视化页面配置解决方案,致力于提供一套简单方便、专业可靠、无限可能的 H5 落地页最佳实践。', - ), - ]), - t._v(' '), - s('h2', { attrs: { id: '功能特点' } }, [ - s('a', { staticClass: 'header-anchor', attrs: { href: '#功能特点' } }, [t._v('#')]), - t._v(' 功能特点'), - ]), - t._v(' '), - s('p', [ - t._v('🎉 '), - s('strong', [t._v('可扩展,')]), - t._v( - ' Dooring 实现了较为完整的业务闭环,并使其模块化,编辑器内部功能接口也全部可以对接不同服务端语言,实现了标准化接口。此外还支持自定义组件,二次开发,设计模板等能力,以满足功能和跨领域的分层需求。', - ), - ]), - t._v(' '), - s('p', [ - t._v('📦 '), - s('strong', [t._v('开箱即用,')]), - t._v(' Dooring 内置了'), - s('strong', [t._v('表单渲染器、页面渲染器、动态加载内核')]), - t._v( - '等,仅需一套源码即可上手开发。并且还提供针对 React 的定制插件,内涵丰富的功能,可满足日常 80%的页面制作需求。', - ), - ]), - t._v(' '), - s('p', [ - t._v('🚀 '), - s('strong', [t._v('大量自研,')]), - t._v( - ' 包含整个编辑器架构、组件设计、文档、请求库封装,后台管理系统等,满足日常项目的周边需求。', - ), - ]), - t._v(' '), - s('p', [ - t._v('🚄 '), - s('strong', [t._v('与时俱进,')]), - t._v(' 在满足需求的同时,我们也不会停止对新技术的探索。比如更多'), - s('strong', [ - t._v('营销组件、业务功能,后台管理可视化,PC 页面编辑器,数据大屏定制'), - ]), - t._v('等等。'), - ]), - t._v(' '), - s('h2', { attrs: { id: '为什么选择-dooring' } }, [ - s('a', { staticClass: 'header-anchor', attrs: { href: '#为什么选择-dooring' } }, [ - t._v('#'), - ]), - t._v(' 为什么选择 Dooring'), - ]), - t._v(' '), - s('p', [ - t._v('目前'), - s('strong', [t._v('github')]), - t._v( - '已超过 3000+star,上线 2 个月累计 500+用户使用,解决完善了 100+问题,后续会持续迭代,更新,自研优秀,先进的 lowcode/nocode 解决方案。', - ), - ]), - ]); - }, - [], - !1, - null, - null, - null, - ); - o.default = v.exports; - }, - }, -]); diff --git a/doc-dist/assets/js/app.1cec26f9.js b/doc-dist/assets/js/app.1cec26f9.js deleted file mode 100644 index c56c67f..0000000 --- a/doc-dist/assets/js/app.1cec26f9.js +++ /dev/null @@ -1,12506 +0,0 @@ -(window.webpackJsonp = window.webpackJsonp || []).push([[0], []]); -!(function(t) { - function e(e) { - for (var r, a, u = e[0], c = e[1], s = e[2], l = 0, p = []; l < u.length; l++) - (a = u[l]), Object.prototype.hasOwnProperty.call(o, a) && o[a] && p.push(o[a][0]), (o[a] = 0); - for (r in c) Object.prototype.hasOwnProperty.call(c, r) && (t[r] = c[r]); - for (f && f(e); p.length; ) p.shift()(); - return i.push.apply(i, s || []), n(); - } - function n() { - for (var t, e = 0; e < i.length; e++) { - for (var n = i[e], r = !0, u = 1; u < n.length; u++) { - var c = n[u]; - 0 !== o[c] && (r = !1); - } - r && (i.splice(e--, 1), (t = a((a.s = n[0])))); - } - return t; - } - var r = {}, - o = { 1: 0 }, - i = []; - function a(e) { - if (r[e]) return r[e].exports; - var n = (r[e] = { i: e, l: !1, exports: {} }); - return t[e].call(n.exports, n, n.exports, a), (n.l = !0), n.exports; - } - (a.e = function(t) { - var e = [], - n = o[t]; - if (0 !== n) - if (n) e.push(n[2]); - else { - var r = new Promise(function(e, r) { - n = o[t] = [e, r]; - }); - e.push((n[2] = r)); - var i, - u = document.createElement('script'); - (u.charset = 'utf-8'), - (u.timeout = 120), - a.nc && u.setAttribute('nonce', a.nc), - (u.src = (function(t) { - return ( - a.p + - 'assets/js/' + - ({}[t] || t) + - '.' + - { - 2: '693230f5', - 3: '0105453b', - 4: '7985c0ed', - 5: '82171d89', - 6: '133c066e', - 7: '1ca3fdb8', - 8: '83a09fe6', - 9: '90abe1c9', - 10: 'b0d462d3', - 11: 'a817ab83', - 12: '7537ddc3', - 13: 'c7b7a778', - 14: 'eff270f4', - 15: '2cabc303', - 16: 'ebc27227', - 17: 'e2c644fa', - 18: '8be51919', - 19: '5b05b8ec', - 20: '3fd45382', - 21: '390bb49b', - 22: 'dd7423cf', - 23: '3c312dd7', - 24: '70cc97c3', - 25: 'e47f5b3c', - 26: 'bf8cc2c2', - 27: '9151272d', - }[t] + - '.js' - ); - })(t)); - var c = new Error(); - i = function(e) { - (u.onerror = u.onload = null), clearTimeout(s); - var n = o[t]; - if (0 !== n) { - if (n) { - var r = e && ('load' === e.type ? 'missing' : e.type), - i = e && e.target && e.target.src; - (c.message = 'Loading chunk ' + t + ' failed.\n(' + r + ': ' + i + ')'), - (c.name = 'ChunkLoadError'), - (c.type = r), - (c.request = i), - n[1](c); - } - o[t] = void 0; - } - }; - var s = setTimeout(function() { - i({ type: 'timeout', target: u }); - }, 12e4); - (u.onerror = u.onload = i), document.head.appendChild(u); - } - return Promise.all(e); - }), - (a.m = t), - (a.c = r), - (a.d = function(t, e, n) { - a.o(t, e) || Object.defineProperty(t, e, { enumerable: !0, get: n }); - }), - (a.r = function(t) { - 'undefined' != typeof Symbol && - Symbol.toStringTag && - Object.defineProperty(t, Symbol.toStringTag, { value: 'Module' }), - Object.defineProperty(t, '__esModule', { value: !0 }); - }), - (a.t = function(t, e) { - if ((1 & e && (t = a(t)), 8 & e)) return t; - if (4 & e && 'object' == typeof t && t && t.__esModule) return t; - var n = Object.create(null); - if ( - (a.r(n), - Object.defineProperty(n, 'default', { enumerable: !0, value: t }), - 2 & e && 'string' != typeof t) - ) - for (var r in t) - a.d( - n, - r, - function(e) { - return t[e]; - }.bind(null, r), - ); - return n; - }), - (a.n = function(t) { - var e = - t && t.__esModule - ? function() { - return t.default; - } - : function() { - return t; - }; - return a.d(e, 'a', e), e; - }), - (a.o = function(t, e) { - return Object.prototype.hasOwnProperty.call(t, e); - }), - (a.p = '/doc/'), - (a.oe = function(t) { - throw (console.error(t), t); - }); - var u = (window.webpackJsonp = window.webpackJsonp || []), - c = u.push.bind(u); - (u.push = e), (u = u.slice()); - for (var s = 0; s < u.length; s++) e(u[s]); - var f = c; - i.push([180, 0]), n(); -})([ - function(t, e, n) { - var r = n(3), - o = n(24).f, - i = n(11), - a = n(10), - u = n(71), - c = n(113), - s = n(100); - t.exports = function(t, e) { - var n, - f, - l, - p, - h, - d = t.target, - v = t.global, - y = t.stat; - if ((n = v ? r : y ? r[d] || u(d, {}) : (r[d] || {}).prototype)) - for (f in e) { - if ( - ((p = e[f]), - (l = t.noTargetGet ? (h = o(n, f)) && h.value : n[f]), - !s(v ? f : d + (y ? '.' : '#') + f, t.forced) && void 0 !== l) - ) { - if (typeof p == typeof l) continue; - c(p, l); - } - (t.sham || (l && l.sham)) && i(p, 'sham', !0), a(n, f, p, t); - } - }; - }, - function(t, e) { - t.exports = function(t) { - try { - return !!t(); - } catch (t) { - return !0; - } - }; - }, - function(t, e, n) { - var r = n(3), - o = n(69), - i = n(7), - a = n(45), - u = n(73), - c = n(107), - s = o('wks'), - f = r.Symbol, - l = c ? f : (f && f.withoutSetter) || a; - t.exports = function(t) { - return i(s, t) || (u && i(f, t) ? (s[t] = f[t]) : (s[t] = l('Symbol.' + t))), s[t]; - }; - }, - function(t, e) { - var n = function(t) { - return t && t.Math == Math && t; - }; - t.exports = - n('object' == typeof globalThis && globalThis) || - n('object' == typeof window && window) || - n('object' == typeof self && self) || - n('object' == typeof global && global) || - (function() { - return this; - })() || - Function('return this')(); - }, - function(t, e) { - t.exports = function(t) { - return 'object' == typeof t ? null !== t : 'function' == typeof t; - }; - }, - function(t, e, n) { - var r = n(4); - t.exports = function(t) { - if (!r(t)) throw TypeError(String(t) + ' is not an object'); - return t; - }; - }, - function(t, e, n) { - var r = n(1); - t.exports = !r(function() { - return ( - 7 != - Object.defineProperty({}, 1, { - get: function() { - return 7; - }, - })[1] - ); - }); - }, - function(t, e) { - var n = {}.hasOwnProperty; - t.exports = function(t, e) { - return n.call(t, e); - }; - }, - function(t, e, n) { - var r = n(6), - o = n(106), - i = n(5), - a = n(44), - u = Object.defineProperty; - e.f = r - ? u - : function(t, e, n) { - if ((i(t), (e = a(e, !0)), i(n), o)) - try { - return u(t, e, n); - } catch (t) {} - if ('get' in n || 'set' in n) throw TypeError('Accessors not supported'); - return 'value' in n && (t[e] = n.value), t; - }; - }, - function(t, e, n) { - var r = n(80), - o = n(10), - i = n(196); - r || o(Object.prototype, 'toString', i, { unsafe: !0 }); - }, - function(t, e, n) { - var r = n(3), - o = n(11), - i = n(7), - a = n(71), - u = n(76), - c = n(28), - s = c.get, - f = c.enforce, - l = String(String).split('String'); - (t.exports = function(t, e, n, u) { - var c, - s = !!u && !!u.unsafe, - p = !!u && !!u.enumerable, - h = !!u && !!u.noTargetGet; - 'function' == typeof n && - ('string' != typeof e || i(n, 'name') || o(n, 'name', e), - (c = f(n)).source || (c.source = l.join('string' == typeof e ? e : ''))), - t !== r - ? (s ? !h && t[e] && (p = !0) : delete t[e], p ? (t[e] = n) : o(t, e, n)) - : p - ? (t[e] = n) - : a(e, n); - })(Function.prototype, 'toString', function() { - return ('function' == typeof this && s(this).source) || u(this); - }); - }, - function(t, e, n) { - var r = n(6), - o = n(8), - i = n(32); - t.exports = r - ? function(t, e, n) { - return o.f(t, e, i(1, n)); - } - : function(t, e, n) { - return (t[e] = n), t; - }; - }, - function(t, e, n) { - var r = n(22); - t.exports = function(t) { - return Object(r(t)); - }; - }, - function(t, e, n) { - var r = n(47), - o = Math.min; - t.exports = function(t) { - return t > 0 ? o(r(t), 9007199254740991) : 0; - }; - }, - function(t, e) { - var n = Array.isArray; - t.exports = n; - }, - function(t, e, n) { - var r = n(31), - o = n(22); - t.exports = function(t) { - return r(o(t)); - }; - }, - function(t, e, n) { - var r = n(140), - o = 'object' == typeof self && self && self.Object === Object && self, - i = r || o || Function('return this')(); - t.exports = i; - }, - function(t, e, n) { - var r = n(6), - o = n(1), - i = n(7), - a = Object.defineProperty, - u = {}, - c = function(t) { - throw t; - }; - t.exports = function(t, e) { - if (i(u, t)) return u[t]; - e || (e = {}); - var n = [][t], - s = !!i(e, 'ACCESSORS') && e.ACCESSORS, - f = i(e, 0) ? e[0] : c, - l = i(e, 1) ? e[1] : void 0; - return (u[t] = - !!n && - !o(function() { - if (s && !r) return !0; - var t = { length: -1 }; - s ? a(t, 1, { enumerable: !0, get: c }) : (t[1] = 1), n.call(t, f, l); - })); - }; - }, - function(t, e, n) { - var r = n(111), - o = n(3), - i = function(t) { - return 'function' == typeof t ? t : void 0; - }; - t.exports = function(t, e) { - return arguments.length < 2 ? i(r[t]) || i(o[t]) : (r[t] && r[t][e]) || (o[t] && o[t][e]); - }; - }, - function(t, e) { - t.exports = !1; - }, - function(t, e) { - t.exports = function(t) { - if ('function' != typeof t) throw TypeError(String(t) + ' is not a function'); - return t; - }; - }, - function(t, e, n) { - var r = n(225), - o = n(228); - t.exports = function(t, e) { - var n = o(t, e); - return r(n) ? n : void 0; - }; - }, - function(t, e) { - t.exports = function(t) { - if (null == t) throw TypeError("Can't call method on " + t); - return t; - }; - }, - function(t, e, n) { - 'use strict'; - var r = n(0), - o = n(29).filter, - i = n(53), - a = n(17), - u = i('filter'), - c = a('filter'); - r( - { target: 'Array', proto: !0, forced: !u || !c }, - { - filter: function(t) { - return o(this, t, arguments.length > 1 ? arguments[1] : void 0); - }, - }, - ); - }, - function(t, e, n) { - var r = n(6), - o = n(77), - i = n(32), - a = n(15), - u = n(44), - c = n(7), - s = n(106), - f = Object.getOwnPropertyDescriptor; - e.f = r - ? f - : function(t, e) { - if (((t = a(t)), (e = u(e, !0)), s)) - try { - return f(t, e); - } catch (t) {} - if (c(t, e)) return i(!o.f.call(t, e), t[e]); - }; - }, - function(t, e) { - t.exports = function(t) { - return null != t && 'object' == typeof t; - }; - }, - function(t, e) { - var n = {}.toString; - t.exports = function(t) { - return n.call(t).slice(8, -1); - }; - }, - function(t, e, n) { - 'use strict'; - var r = n(128).charAt, - o = n(28), - i = n(112), - a = o.set, - u = o.getterFor('String Iterator'); - i( - String, - 'String', - function(t) { - a(this, { type: 'String Iterator', string: String(t), index: 0 }); - }, - function() { - var t, - e = u(this), - n = e.string, - o = e.index; - return o >= n.length - ? { value: void 0, done: !0 } - : ((t = r(n, o)), (e.index += t.length), { value: t, done: !1 }); - }, - ); - }, - function(t, e, n) { - var r, - o, - i, - a = n(182), - u = n(3), - c = n(4), - s = n(11), - f = n(7), - l = n(70), - p = n(48), - h = n(34), - d = u.WeakMap; - if (a) { - var v = l.state || (l.state = new d()), - y = v.get, - m = v.has, - g = v.set; - (r = function(t, e) { - return (e.facade = t), g.call(v, t, e), e; - }), - (o = function(t) { - return y.call(v, t) || {}; - }), - (i = function(t) { - return m.call(v, t); - }); - } else { - var b = p('state'); - (h[b] = !0), - (r = function(t, e) { - return (e.facade = t), s(t, b, e), e; - }), - (o = function(t) { - return f(t, b) ? t[b] : {}; - }), - (i = function(t) { - return f(t, b); - }); - } - t.exports = { - set: r, - get: o, - has: i, - enforce: function(t) { - return i(t) ? o(t) : r(t, {}); - }, - getterFor: function(t) { - return function(e) { - var n; - if (!c(e) || (n = o(e)).type !== t) - throw TypeError('Incompatible receiver, ' + t + ' required'); - return n; - }; - }, - }; - }, - function(t, e, n) { - var r = n(50), - o = n(31), - i = n(12), - a = n(13), - u = n(127), - c = [].push, - s = function(t) { - var e = 1 == t, - n = 2 == t, - s = 3 == t, - f = 4 == t, - l = 6 == t, - p = 7 == t, - h = 5 == t || l; - return function(d, v, y, m) { - for ( - var g, - b, - _ = i(d), - x = o(_), - w = r(v, y, 3), - O = a(x.length), - S = 0, - j = m || u, - A = e ? j(d, O) : n || p ? j(d, 0) : void 0; - O > S; - S++ - ) - if ((h || S in x) && ((b = w((g = x[S]), S, _)), t)) - if (e) A[S] = b; - else if (b) - switch (t) { - case 3: - return !0; - case 5: - return g; - case 6: - return S; - case 2: - c.call(A, g); - } - else - switch (t) { - case 4: - return !1; - case 7: - c.call(A, g); - } - return l ? -1 : s || f ? f : A; - }; - }; - t.exports = { - forEach: s(0), - map: s(1), - filter: s(2), - some: s(3), - every: s(4), - find: s(5), - findIndex: s(6), - filterOut: s(7), - }; - }, - function(t, e, n) { - var r = n(39), - o = n(210), - i = n(211), - a = r ? r.toStringTag : void 0; - t.exports = function(t) { - return null == t - ? void 0 === t - ? '[object Undefined]' - : '[object Null]' - : a && a in Object(t) - ? o(t) - : i(t); - }; - }, - function(t, e, n) { - var r = n(1), - o = n(26), - i = ''.split; - t.exports = r(function() { - return !Object('z').propertyIsEnumerable(0); - }) - ? function(t) { - return 'String' == o(t) ? i.call(t, '') : Object(t); - } - : Object; - }, - function(t, e) { - t.exports = function(t, e) { - return { enumerable: !(1 & t), configurable: !(2 & t), writable: !(4 & t), value: e }; - }; - }, - function(t, e, n) { - var r, - o = n(5), - i = n(181), - a = n(75), - u = n(34), - c = n(110), - s = n(72), - f = n(48), - l = f('IE_PROTO'), - p = function() {}, - h = function(t) { - return ''; - }, - d = function() { - try { - r = document.domain && new ActiveXObject('htmlfile'); - } catch (t) {} - var t, e; - d = r - ? (function(t) { - t.write(h('')), t.close(); - var e = t.parentWindow.Object; - return (t = null), e; - })(r) - : (((e = s('iframe')).style.display = 'none'), - c.appendChild(e), - (e.src = String('javascript:')), - (t = e.contentWindow.document).open(), - t.write(h('document.F=Object')), - t.close(), - t.F); - for (var n = a.length; n--; ) delete d.prototype[a[n]]; - return d(); - }; - (u[l] = !0), - (t.exports = - Object.create || - function(t, e) { - var n; - return ( - null !== t - ? ((p.prototype = o(t)), (n = new p()), (p.prototype = null), (n[l] = t)) - : (n = d()), - void 0 === e ? n : i(n, e) - ); - }); - }, - function(t, e) { - t.exports = {}; - }, - function(t, e) { - t.exports = {}; - }, - function(t, e, n) { - var r = n(26); - t.exports = - Array.isArray || - function(t) { - return 'Array' == r(t); - }; - }, - function(t, e, n) { - var r = n(3), - o = n(129), - i = n(105), - a = n(11), - u = n(2), - c = u('iterator'), - s = u('toStringTag'), - f = i.values; - for (var l in o) { - var p = r[l], - h = p && p.prototype; - if (h) { - if (h[c] !== f) - try { - a(h, c, f); - } catch (t) { - h[c] = f; - } - if ((h[s] || a(h, s, l), o[l])) - for (var d in i) - if (h[d] !== i[d]) - try { - a(h, d, i[d]); - } catch (t) { - h[d] = i[d]; - } - } - } - }, - function(t, e, n) { - 'use strict'; - var r = n(1); - t.exports = function(t, e) { - var n = [][t]; - return ( - !!n && - r(function() { - n.call( - null, - e || - function() { - throw 1; - }, - 1, - ); - }) - ); - }; - }, - function(t, e, n) { - var r = n(16).Symbol; - t.exports = r; - }, - function(t, e, n) { - 'use strict'; - n.d(e, 'a', function() { - return i; - }); - n(96); - var r = n(41); - n(56), n(57), n(82), n(137), n(9), n(27), n(37); - var o = n(63); - function i(t) { - return ( - (function(t) { - if (Array.isArray(t)) return Object(r.a)(t); - })(t) || - (function(t) { - if ('undefined' != typeof Symbol && Symbol.iterator in Object(t)) return Array.from(t); - })(t) || - Object(o.a)(t) || - (function() { - throw new TypeError( - 'Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.', - ); - })() - ); - } - }, - function(t, e, n) { - 'use strict'; - function r(t, e) { - (null == e || e > t.length) && (e = t.length); - for (var n = 0, r = new Array(e); n < e; n++) r[n] = t[n]; - return r; - } - n.d(e, 'a', function() { - return r; - }); - }, - function(t, e, n) { - 'use strict'; - function r(t, e, n, r, o, i, a, u) { - var c, - s = 'function' == typeof t ? t.options : t; - if ( - (e && ((s.render = e), (s.staticRenderFns = n), (s._compiled = !0)), - r && (s.functional = !0), - i && (s._scopeId = 'data-v-' + i), - a - ? ((c = function(t) { - (t = - t || - (this.$vnode && this.$vnode.ssrContext) || - (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext)) || - 'undefined' == typeof __VUE_SSR_CONTEXT__ || - (t = __VUE_SSR_CONTEXT__), - o && o.call(this, t), - t && t._registeredComponents && t._registeredComponents.add(a); - }), - (s._ssrRegister = c)) - : o && - (c = u - ? function() { - o.call(this, (s.functional ? this.parent : this).$root.$options.shadowRoot); - } - : o), - c) - ) - if (s.functional) { - s._injectStyles = c; - var f = s.render; - s.render = function(t, e) { - return c.call(e), f(t, e); - }; - } else { - var l = s.beforeCreate; - s.beforeCreate = l ? [].concat(l, c) : [c]; - } - return { exports: t, options: s }; - } - n.d(e, 'a', function() { - return r; - }); - }, - function(t, e, n) { - 'use strict'; - var r = n(0), - o = n(67); - r({ target: 'RegExp', proto: !0, forced: /./.exec !== o }, { exec: o }); - }, - function(t, e, n) { - var r = n(4); - t.exports = function(t, e) { - if (!r(t)) return t; - var n, o; - if (e && 'function' == typeof (n = t.toString) && !r((o = n.call(t)))) return o; - if ('function' == typeof (n = t.valueOf) && !r((o = n.call(t)))) return o; - if (!e && 'function' == typeof (n = t.toString) && !r((o = n.call(t)))) return o; - throw TypeError("Can't convert object to primitive value"); - }; - }, - function(t, e) { - var n = 0, - r = Math.random(); - t.exports = function(t) { - return 'Symbol(' + String(void 0 === t ? '' : t) + ')_' + (++n + r).toString(36); - }; - }, - function(t, e, n) { - var r = n(108), - o = n(75); - t.exports = - Object.keys || - function(t) { - return r(t, o); - }; - }, - function(t, e) { - var n = Math.ceil, - r = Math.floor; - t.exports = function(t) { - return isNaN((t = +t)) ? 0 : (t > 0 ? r : n)(t); - }; - }, - function(t, e, n) { - var r = n(69), - o = n(45), - i = r('keys'); - t.exports = function(t) { - return i[t] || (i[t] = o(t)); - }; - }, - function(t, e, n) { - var r = n(8).f, - o = n(7), - i = n(2)('toStringTag'); - t.exports = function(t, e, n) { - t && !o((t = n ? t : t.prototype), i) && r(t, i, { configurable: !0, value: e }); - }; - }, - function(t, e, n) { - var r = n(20); - t.exports = function(t, e, n) { - if ((r(t), void 0 === e)) return t; - switch (n) { - case 0: - return function() { - return t.call(e); - }; - case 1: - return function(n) { - return t.call(e, n); - }; - case 2: - return function(n, r) { - return t.call(e, n, r); - }; - case 3: - return function(n, r, o) { - return t.call(e, n, r, o); - }; - } - return function() { - return t.apply(e, arguments); - }; - }; - }, - function(t, e, n) { - var r = n(26), - o = n(3); - t.exports = 'process' == r(o.process); - }, - function(t, e, n) { - var r, - o, - i = n(3), - a = n(81), - u = i.process, - c = u && u.versions, - s = c && c.v8; - s - ? (o = (r = s.split('.'))[0] + r[1]) - : a && - (!(r = a.match(/Edge\/(\d+)/)) || r[1] >= 74) && - (r = a.match(/Chrome\/(\d+)/)) && - (o = r[1]), - (t.exports = o && +o); - }, - function(t, e, n) { - var r = n(1), - o = n(2), - i = n(52), - a = o('species'); - t.exports = function(t) { - return ( - i >= 51 || - !r(function() { - var e = []; - return ( - ((e.constructor = {})[a] = function() { - return { foo: 1 }; - }), - 1 !== e[t](Boolean).foo - ); - }) - ); - }; - }, - function(t, e, n) { - 'use strict'; - var r = n(0), - o = n(4), - i = n(36), - a = n(109), - u = n(13), - c = n(15), - s = n(55), - f = n(2), - l = n(53), - p = n(17), - h = l('slice'), - d = p('slice', { ACCESSORS: !0, 0: 0, 1: 2 }), - v = f('species'), - y = [].slice, - m = Math.max; - r( - { target: 'Array', proto: !0, forced: !h || !d }, - { - slice: function(t, e) { - var n, - r, - f, - l = c(this), - p = u(l.length), - h = a(t, p), - d = a(void 0 === e ? p : e, p); - if ( - i(l) && - ('function' != typeof (n = l.constructor) || (n !== Array && !i(n.prototype)) - ? o(n) && null === (n = n[v]) && (n = void 0) - : (n = void 0), - n === Array || void 0 === n) - ) - return y.call(l, h, d); - for (r = new (void 0 === n ? Array : n)(m(d - h, 0)), f = 0; h < d; h++, f++) - h in l && s(r, f, l[h]); - return (r.length = f), r; - }, - }, - ); - }, - function(t, e, n) { - 'use strict'; - var r = n(44), - o = n(8), - i = n(32); - t.exports = function(t, e, n) { - var a = r(e); - a in t ? o.f(t, a, i(0, n)) : (t[a] = n); - }; - }, - function(t, e, n) { - 'use strict'; - var r = n(0), - o = n(3), - i = n(18), - a = n(19), - u = n(6), - c = n(73), - s = n(107), - f = n(1), - l = n(7), - p = n(36), - h = n(4), - d = n(5), - v = n(12), - y = n(15), - m = n(44), - g = n(32), - b = n(33), - _ = n(46), - x = n(68), - w = n(204), - O = n(78), - S = n(24), - j = n(8), - A = n(77), - E = n(11), - k = n(10), - C = n(69), - $ = n(48), - P = n(34), - T = n(45), - L = n(2), - R = n(135), - z = n(136), - D = n(49), - I = n(28), - M = n(29).forEach, - N = $('hidden'), - U = L('toPrimitive'), - F = I.set, - B = I.getterFor('Symbol'), - V = Object.prototype, - H = o.Symbol, - q = i('JSON', 'stringify'), - W = S.f, - G = j.f, - K = w.f, - J = A.f, - X = C('symbols'), - Q = C('op-symbols'), - Y = C('string-to-symbol-registry'), - Z = C('symbol-to-string-registry'), - tt = C('wks'), - et = o.QObject, - nt = !et || !et.prototype || !et.prototype.findChild, - rt = - u && - f(function() { - return ( - 7 != - b( - G({}, 'a', { - get: function() { - return G(this, 'a', { value: 7 }).a; - }, - }), - ).a - ); - }) - ? function(t, e, n) { - var r = W(V, e); - r && delete V[e], G(t, e, n), r && t !== V && G(V, e, r); - } - : G, - ot = function(t, e) { - var n = (X[t] = b(H.prototype)); - return F(n, { type: 'Symbol', tag: t, description: e }), u || (n.description = e), n; - }, - it = s - ? function(t) { - return 'symbol' == typeof t; - } - : function(t) { - return Object(t) instanceof H; - }, - at = function(t, e, n) { - t === V && at(Q, e, n), d(t); - var r = m(e, !0); - return ( - d(n), - l(X, r) - ? (n.enumerable - ? (l(t, N) && t[N][r] && (t[N][r] = !1), (n = b(n, { enumerable: g(0, !1) }))) - : (l(t, N) || G(t, N, g(1, {})), (t[N][r] = !0)), - rt(t, r, n)) - : G(t, r, n) - ); - }, - ut = function(t, e) { - d(t); - var n = y(e), - r = _(n).concat(lt(n)); - return ( - M(r, function(e) { - (u && !ct.call(n, e)) || at(t, e, n[e]); - }), - t - ); - }, - ct = function(t) { - var e = m(t, !0), - n = J.call(this, e); - return ( - !(this === V && l(X, e) && !l(Q, e)) && - (!(n || !l(this, e) || !l(X, e) || (l(this, N) && this[N][e])) || n) - ); - }, - st = function(t, e) { - var n = y(t), - r = m(e, !0); - if (n !== V || !l(X, r) || l(Q, r)) { - var o = W(n, r); - return !o || !l(X, r) || (l(n, N) && n[N][r]) || (o.enumerable = !0), o; - } - }, - ft = function(t) { - var e = K(y(t)), - n = []; - return ( - M(e, function(t) { - l(X, t) || l(P, t) || n.push(t); - }), - n - ); - }, - lt = function(t) { - var e = t === V, - n = K(e ? Q : y(t)), - r = []; - return ( - M(n, function(t) { - !l(X, t) || (e && !l(V, t)) || r.push(X[t]); - }), - r - ); - }; - (c || - (k( - (H = function() { - if (this instanceof H) throw TypeError('Symbol is not a constructor'); - var t = arguments.length && void 0 !== arguments[0] ? String(arguments[0]) : void 0, - e = T(t), - n = function(t) { - this === V && n.call(Q, t), - l(this, N) && l(this[N], e) && (this[N][e] = !1), - rt(this, e, g(1, t)); - }; - return u && nt && rt(V, e, { configurable: !0, set: n }), ot(e, t); - }).prototype, - 'toString', - function() { - return B(this).tag; - }, - ), - k(H, 'withoutSetter', function(t) { - return ot(T(t), t); - }), - (A.f = ct), - (j.f = at), - (S.f = st), - (x.f = w.f = ft), - (O.f = lt), - (R.f = function(t) { - return ot(L(t), t); - }), - u && - (G(H.prototype, 'description', { - configurable: !0, - get: function() { - return B(this).description; - }, - }), - a || k(V, 'propertyIsEnumerable', ct, { unsafe: !0 }))), - r({ global: !0, wrap: !0, forced: !c, sham: !c }, { Symbol: H }), - M(_(tt), function(t) { - z(t); - }), - r( - { target: 'Symbol', stat: !0, forced: !c }, - { - for: function(t) { - var e = String(t); - if (l(Y, e)) return Y[e]; - var n = H(e); - return (Y[e] = n), (Z[n] = e), n; - }, - keyFor: function(t) { - if (!it(t)) throw TypeError(t + ' is not a symbol'); - if (l(Z, t)) return Z[t]; - }, - useSetter: function() { - nt = !0; - }, - useSimple: function() { - nt = !1; - }, - }, - ), - r( - { target: 'Object', stat: !0, forced: !c, sham: !u }, - { - create: function(t, e) { - return void 0 === e ? b(t) : ut(b(t), e); - }, - defineProperty: at, - defineProperties: ut, - getOwnPropertyDescriptor: st, - }, - ), - r( - { target: 'Object', stat: !0, forced: !c }, - { getOwnPropertyNames: ft, getOwnPropertySymbols: lt }, - ), - r( - { - target: 'Object', - stat: !0, - forced: f(function() { - O.f(1); - }), - }, - { - getOwnPropertySymbols: function(t) { - return O.f(v(t)); - }, - }, - ), - q) && - r( - { - target: 'JSON', - stat: !0, - forced: - !c || - f(function() { - var t = H(); - return '[null]' != q([t]) || '{}' != q({ a: t }) || '{}' != q(Object(t)); - }), - }, - { - stringify: function(t, e, n) { - for (var r, o = [t], i = 1; arguments.length > i; ) o.push(arguments[i++]); - if (((r = e), (h(e) || void 0 !== t) && !it(t))) - return ( - p(e) || - (e = function(t, e) { - if (('function' == typeof r && (e = r.call(this, t, e)), !it(e))) return e; - }), - (o[1] = e), - q.apply(null, o) - ); - }, - }, - ); - H.prototype[U] || E(H.prototype, U, H.prototype.valueOf), D(H, 'Symbol'), (P[N] = !0); - }, - function(t, e, n) { - 'use strict'; - var r = n(0), - o = n(6), - i = n(3), - a = n(7), - u = n(4), - c = n(8).f, - s = n(113), - f = i.Symbol; - if ( - o && - 'function' == typeof f && - (!('description' in f.prototype) || void 0 !== f().description) - ) { - var l = {}, - p = function() { - var t = arguments.length < 1 || void 0 === arguments[0] ? void 0 : String(arguments[0]), - e = this instanceof p ? new f(t) : void 0 === t ? f() : f(t); - return '' === t && (l[e] = !0), e; - }; - s(p, f); - var h = (p.prototype = f.prototype); - h.constructor = p; - var d = h.toString, - v = 'Symbol(test)' == String(f('test')), - y = /^Symbol\((.*)\)[^)]+$/; - c(h, 'description', { - configurable: !0, - get: function() { - var t = u(this) ? this.valueOf() : this, - e = d.call(t); - if (a(l, t)) return ''; - var n = v ? e.slice(7, -1) : e.replace(y, '$1'); - return '' === n ? void 0 : n; - }, - }), - r({ global: !0, forced: !0 }, { Symbol: p }); - } - }, - function(t, e, n) { - var r = n(215), - o = n(216), - i = n(217), - a = n(218), - u = n(219); - function c(t) { - var e = -1, - n = null == t ? 0 : t.length; - for (this.clear(); ++e < n; ) { - var r = t[e]; - this.set(r[0], r[1]); - } - } - (c.prototype.clear = r), - (c.prototype.delete = o), - (c.prototype.get = i), - (c.prototype.has = a), - (c.prototype.set = u), - (t.exports = c); - }, - function(t, e, n) { - var r = n(142); - t.exports = function(t, e) { - for (var n = t.length; n--; ) if (r(t[n][0], e)) return n; - return -1; - }; - }, - function(t, e, n) { - var r = n(21)(Object, 'create'); - t.exports = r; - }, - function(t, e, n) { - var r = n(237); - t.exports = function(t, e) { - var n = t.__data__; - return r(e) ? n['string' == typeof e ? 'string' : 'hash'] : n.map; - }; - }, - function(t, e, n) { - var r = n(91); - t.exports = function(t) { - if ('string' == typeof t || r(t)) return t; - var e = t + ''; - return '0' == e && 1 / t == -1 / 0 ? '-0' : e; - }; - }, - function(t, e, n) { - 'use strict'; - n.d(e, 'a', function() { - return o; - }); - n(137), n(54), n(138), n(83), n(9), n(98), n(27); - var r = n(41); - function o(t, e) { - if (t) { - if ('string' == typeof t) return Object(r.a)(t, e); - var n = Object.prototype.toString.call(t).slice(8, -1); - return ( - 'Object' === n && t.constructor && (n = t.constructor.name), - 'Map' === n || 'Set' === n - ? Array.from(t) - : 'Arguments' === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) - ? Object(r.a)(t, e) - : void 0 - ); - } - } - }, - function(t, e, n) { - var r, o; - /* NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress - * @license MIT */ void 0 === - (o = - 'function' == - typeof (r = function() { - var t, - e, - n = { version: '0.2.0' }, - r = (n.settings = { - minimum: 0.08, - easing: 'ease', - positionUsing: '', - speed: 200, - trickle: !0, - trickleRate: 0.02, - trickleSpeed: 800, - showSpinner: !0, - barSelector: '[role="bar"]', - spinnerSelector: '[role="spinner"]', - parent: 'body', - template: - '
', - }); - function o(t, e, n) { - return t < e ? e : t > n ? n : t; - } - function i(t) { - return 100 * (-1 + t); - } - (n.configure = function(t) { - var e, n; - for (e in t) void 0 !== (n = t[e]) && t.hasOwnProperty(e) && (r[e] = n); - return this; - }), - (n.status = null), - (n.set = function(t) { - var e = n.isStarted(); - (t = o(t, r.minimum, 1)), (n.status = 1 === t ? null : t); - var c = n.render(!e), - s = c.querySelector(r.barSelector), - f = r.speed, - l = r.easing; - return ( - c.offsetWidth, - a(function(e) { - '' === r.positionUsing && (r.positionUsing = n.getPositioningCSS()), - u( - s, - (function(t, e, n) { - var o; - return ( - ((o = - 'translate3d' === r.positionUsing - ? { transform: 'translate3d(' + i(t) + '%,0,0)' } - : 'translate' === r.positionUsing - ? { transform: 'translate(' + i(t) + '%,0)' } - : { 'margin-left': i(t) + '%' }).transition = 'all ' + e + 'ms ' + n), - o - ); - })(t, f, l), - ), - 1 === t - ? (u(c, { transition: 'none', opacity: 1 }), - c.offsetWidth, - setTimeout(function() { - u(c, { transition: 'all ' + f + 'ms linear', opacity: 0 }), - setTimeout(function() { - n.remove(), e(); - }, f); - }, f)) - : setTimeout(e, f); - }), - this - ); - }), - (n.isStarted = function() { - return 'number' == typeof n.status; - }), - (n.start = function() { - n.status || n.set(0); - var t = function() { - setTimeout(function() { - n.status && (n.trickle(), t()); - }, r.trickleSpeed); - }; - return r.trickle && t(), this; - }), - (n.done = function(t) { - return t || n.status ? n.inc(0.3 + 0.5 * Math.random()).set(1) : this; - }), - (n.inc = function(t) { - var e = n.status; - return e - ? ('number' != typeof t && (t = (1 - e) * o(Math.random() * e, 0.1, 0.95)), - (e = o(e + t, 0, 0.994)), - n.set(e)) - : n.start(); - }), - (n.trickle = function() { - return n.inc(Math.random() * r.trickleRate); - }), - (t = 0), - (e = 0), - (n.promise = function(r) { - return r && 'resolved' !== r.state() - ? (0 === e && n.start(), - t++, - e++, - r.always(function() { - 0 == --e ? ((t = 0), n.done()) : n.set((t - e) / t); - }), - this) - : this; - }), - (n.render = function(t) { - if (n.isRendered()) return document.getElementById('nprogress'); - s(document.documentElement, 'nprogress-busy'); - var e = document.createElement('div'); - (e.id = 'nprogress'), (e.innerHTML = r.template); - var o, - a = e.querySelector(r.barSelector), - c = t ? '-100' : i(n.status || 0), - f = document.querySelector(r.parent); - return ( - u(a, { transition: 'all 0 linear', transform: 'translate3d(' + c + '%,0,0)' }), - r.showSpinner || ((o = e.querySelector(r.spinnerSelector)) && p(o)), - f != document.body && s(f, 'nprogress-custom-parent'), - f.appendChild(e), - e - ); - }), - (n.remove = function() { - f(document.documentElement, 'nprogress-busy'), - f(document.querySelector(r.parent), 'nprogress-custom-parent'); - var t = document.getElementById('nprogress'); - t && p(t); - }), - (n.isRendered = function() { - return !!document.getElementById('nprogress'); - }), - (n.getPositioningCSS = function() { - var t = document.body.style, - e = - 'WebkitTransform' in t - ? 'Webkit' - : 'MozTransform' in t - ? 'Moz' - : 'msTransform' in t - ? 'ms' - : 'OTransform' in t - ? 'O' - : ''; - return e + 'Perspective' in t - ? 'translate3d' - : e + 'Transform' in t - ? 'translate' - : 'margin'; - }); - var a = (function() { - var t = []; - function e() { - var n = t.shift(); - n && n(e); - } - return function(n) { - t.push(n), 1 == t.length && e(); - }; - })(), - u = (function() { - var t = ['Webkit', 'O', 'Moz', 'ms'], - e = {}; - function n(n) { - return ( - (n = n.replace(/^-ms-/, 'ms-').replace(/-([\da-z])/gi, function(t, e) { - return e.toUpperCase(); - })), - e[n] || - (e[n] = (function(e) { - var n = document.body.style; - if (e in n) return e; - for (var r, o = t.length, i = e.charAt(0).toUpperCase() + e.slice(1); o--; ) - if ((r = t[o] + i) in n) return r; - return e; - })(n)) - ); - } - function r(t, e, r) { - (e = n(e)), (t.style[e] = r); - } - return function(t, e) { - var n, - o, - i = arguments; - if (2 == i.length) - for (n in e) void 0 !== (o = e[n]) && e.hasOwnProperty(n) && r(t, n, o); - else r(t, i[1], i[2]); - }; - })(); - function c(t, e) { - return ('string' == typeof t ? t : l(t)).indexOf(' ' + e + ' ') >= 0; - } - function s(t, e) { - var n = l(t), - r = n + e; - c(n, e) || (t.className = r.substring(1)); - } - function f(t, e) { - var n, - r = l(t); - c(t, e) && - ((n = r.replace(' ' + e + ' ', ' ')), (t.className = n.substring(1, n.length - 1))); - } - function l(t) { - return (' ' + (t.className || '') + ' ').replace(/\s+/gi, ' '); - } - function p(t) { - t && t.parentNode && t.parentNode.removeChild(t); - } - return n; - }) - ? r.call(e, n, e, t) - : r) || (t.exports = o); - }, - function(t, e, n) { - 'use strict'; - var r = n(0), - o = n(29).map, - i = n(53), - a = n(17), - u = i('map'), - c = a('map'); - r( - { target: 'Array', proto: !0, forced: !u || !c }, - { - map: function(t) { - return o(this, t, arguments.length > 1 ? arguments[1] : void 0); - }, - }, - ); - }, - function(t, e, n) { - 'use strict'; - var r = n(167), - o = n(5), - i = n(13), - a = n(47), - u = n(22), - c = n(168), - s = n(203), - f = n(169), - l = Math.max, - p = Math.min; - r('replace', 2, function(t, e, n, r) { - var h = r.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE, - d = r.REPLACE_KEEPS_$0, - v = h ? '$' : '$0'; - return [ - function(n, r) { - var o = u(this), - i = null == n ? void 0 : n[t]; - return void 0 !== i ? i.call(n, o, r) : e.call(String(o), n, r); - }, - function(t, r) { - if ((!h && d) || ('string' == typeof r && -1 === r.indexOf(v))) { - var u = n(e, t, this, r); - if (u.done) return u.value; - } - var y = o(t), - m = String(this), - g = 'function' == typeof r; - g || (r = String(r)); - var b = y.global; - if (b) { - var _ = y.unicode; - y.lastIndex = 0; - } - for (var x = []; ; ) { - var w = f(y, m); - if (null === w) break; - if ((x.push(w), !b)) break; - '' === String(w[0]) && (y.lastIndex = c(m, i(y.lastIndex), _)); - } - for (var O, S = '', j = 0, A = 0; A < x.length; A++) { - w = x[A]; - for ( - var E = String(w[0]), k = l(p(a(w.index), m.length), 0), C = [], $ = 1; - $ < w.length; - $++ - ) - C.push(void 0 === (O = w[$]) ? O : String(O)); - var P = w.groups; - if (g) { - var T = [E].concat(C, k, m); - void 0 !== P && T.push(P); - var L = String(r.apply(void 0, T)); - } else L = s(E, m, k, C, P, r); - k >= j && ((S += m.slice(j, k) + L), (j = k + E.length)); - } - return S + m.slice(j); - }, - ]; - }); - }, - function(t, e, n) { - 'use strict'; - var r, - o, - i = n(104), - a = n(175), - u = RegExp.prototype.exec, - c = String.prototype.replace, - s = u, - f = - ((r = /a/), - (o = /b*/g), - u.call(r, 'a'), - u.call(o, 'a'), - 0 !== r.lastIndex || 0 !== o.lastIndex), - l = a.UNSUPPORTED_Y || a.BROKEN_CARET, - p = void 0 !== /()??/.exec('')[1]; - (f || p || l) && - (s = function(t) { - var e, - n, - r, - o, - a = this, - s = l && a.sticky, - h = i.call(a), - d = a.source, - v = 0, - y = t; - return ( - s && - (-1 === (h = h.replace('y', '')).indexOf('g') && (h += 'g'), - (y = String(t).slice(a.lastIndex)), - a.lastIndex > 0 && - (!a.multiline || (a.multiline && '\n' !== t[a.lastIndex - 1])) && - ((d = '(?: ' + d + ')'), (y = ' ' + y), v++), - (n = new RegExp('^(?:' + d + ')', h))), - p && (n = new RegExp('^' + d + '$(?!\\s)', h)), - f && (e = a.lastIndex), - (r = u.call(s ? n : a, y)), - s - ? r - ? ((r.input = r.input.slice(v)), - (r[0] = r[0].slice(v)), - (r.index = a.lastIndex), - (a.lastIndex += r[0].length)) - : (a.lastIndex = 0) - : f && r && (a.lastIndex = a.global ? r.index + r[0].length : e), - p && - r && - r.length > 1 && - c.call(r[0], n, function() { - for (o = 1; o < arguments.length - 2; o++) void 0 === arguments[o] && (r[o] = void 0); - }), - r - ); - }), - (t.exports = s); - }, - function(t, e, n) { - var r = n(108), - o = n(75).concat('length', 'prototype'); - e.f = - Object.getOwnPropertyNames || - function(t) { - return r(t, o); - }; - }, - function(t, e, n) { - var r = n(19), - o = n(70); - (t.exports = function(t, e) { - return o[t] || (o[t] = void 0 !== e ? e : {}); - })('versions', []).push({ - version: '3.8.2', - mode: r ? 'pure' : 'global', - copyright: '© 2021 Denis Pushkarev (zloirock.ru)', - }); - }, - function(t, e, n) { - var r = n(3), - o = n(71), - i = r['__core-js_shared__'] || o('__core-js_shared__', {}); - t.exports = i; - }, - function(t, e, n) { - var r = n(3), - o = n(11); - t.exports = function(t, e) { - try { - o(r, t, e); - } catch (n) { - r[t] = e; - } - return e; - }; - }, - function(t, e, n) { - var r = n(3), - o = n(4), - i = r.document, - a = o(i) && o(i.createElement); - t.exports = function(t) { - return a ? i.createElement(t) : {}; - }; - }, - function(t, e, n) { - var r = n(1); - t.exports = - !!Object.getOwnPropertySymbols && - !r(function() { - return !String(Symbol()); - }); - }, - function(t, e, n) { - var r = n(15), - o = n(13), - i = n(109), - a = function(t) { - return function(e, n, a) { - var u, - c = r(e), - s = o(c.length), - f = i(a, s); - if (t && n != n) { - for (; s > f; ) if ((u = c[f++]) != u) return !0; - } else for (; s > f; f++) if ((t || f in c) && c[f] === n) return t || f || 0; - return !t && -1; - }; - }; - t.exports = { includes: a(!0), indexOf: a(!1) }; - }, - function(t, e) { - t.exports = [ - 'constructor', - 'hasOwnProperty', - 'isPrototypeOf', - 'propertyIsEnumerable', - 'toLocaleString', - 'toString', - 'valueOf', - ]; - }, - function(t, e, n) { - var r = n(70), - o = Function.toString; - 'function' != typeof r.inspectSource && - (r.inspectSource = function(t) { - return o.call(t); - }), - (t.exports = r.inspectSource); - }, - function(t, e, n) { - 'use strict'; - var r = {}.propertyIsEnumerable, - o = Object.getOwnPropertyDescriptor, - i = o && !r.call({ 1: 2 }, 1); - e.f = i - ? function(t) { - var e = o(this, t); - return !!e && e.enumerable; - } - : r; - }, - function(t, e) { - e.f = Object.getOwnPropertySymbols; - }, - function(t, e, n) { - var r = n(7), - o = n(12), - i = n(48), - a = n(116), - u = i('IE_PROTO'), - c = Object.prototype; - t.exports = a - ? Object.getPrototypeOf - : function(t) { - return ( - (t = o(t)), - r(t, u) - ? t[u] - : 'function' == typeof t.constructor && t instanceof t.constructor - ? t.constructor.prototype - : t instanceof Object - ? c - : null - ); - }; - }, - function(t, e, n) { - var r = {}; - (r[n(2)('toStringTag')] = 'z'), (t.exports = '[object z]' === String(r)); - }, - function(t, e, n) { - var r = n(18); - t.exports = r('navigator', 'userAgent') || ''; - }, - function(t, e, n) { - n(136)('iterator'); - }, - function(t, e, n) { - var r = n(6), - o = n(8).f, - i = Function.prototype, - a = i.toString, - u = /^\s*function ([^ (]*)/; - r && - !('name' in i) && - o(i, 'name', { - configurable: !0, - get: function() { - try { - return a.call(this).match(u)[1]; - } catch (t) { - return ''; - } - }, - }); - }, - function(t, e, n) { - var r = n(209), - o = n(25), - i = Object.prototype, - a = i.hasOwnProperty, - u = i.propertyIsEnumerable, - c = r( - (function() { - return arguments; - })(), - ) - ? r - : function(t) { - return o(t) && a.call(t, 'callee') && !u.call(t, 'callee'); - }; - t.exports = c; - }, - function(t, e, n) { - var r = n(21)(n(16), 'Map'); - t.exports = r; - }, - function(t, e) { - t.exports = function(t) { - var e = typeof t; - return null != t && ('object' == e || 'function' == e); - }; - }, - function(t, e, n) { - var r = n(229), - o = n(236), - i = n(238), - a = n(239), - u = n(240); - function c(t) { - var e = -1, - n = null == t ? 0 : t.length; - for (this.clear(); ++e < n; ) { - var r = t[e]; - this.set(r[0], r[1]); - } - } - (c.prototype.clear = r), - (c.prototype.delete = o), - (c.prototype.get = i), - (c.prototype.has = a), - (c.prototype.set = u), - (t.exports = c); - }, - function(t, e) { - t.exports = function(t) { - var e = -1, - n = Array(t.size); - return ( - t.forEach(function(t) { - n[++e] = t; - }), - n - ); - }; - }, - function(t, e) { - t.exports = function(t) { - return 'number' == typeof t && t > -1 && t % 1 == 0 && t <= 9007199254740991; - }; - }, - function(t, e, n) { - var r = n(14), - o = n(91), - i = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, - a = /^\w*$/; - t.exports = function(t, e) { - if (r(t)) return !1; - var n = typeof t; - return ( - !('number' != n && 'symbol' != n && 'boolean' != n && null != t && !o(t)) || - a.test(t) || !i.test(t) || (null != e && t in Object(e)) - ); - }; - }, - function(t, e, n) { - var r = n(30), - o = n(25); - t.exports = function(t) { - return 'symbol' == typeof t || (o(t) && '[object Symbol]' == r(t)); - }; - }, - function(t, e) { - t.exports = function(t) { - return t; - }; - }, - function(t, e, n) { - 'use strict'; - var r = n(0), - o = n(131); - r({ target: 'Array', proto: !0, forced: [].forEach != o }, { forEach: o }); - }, - function(t, e, n) { - var r = n(0), - o = n(12), - i = n(46); - r( - { - target: 'Object', - stat: !0, - forced: n(1)(function() { - i(1); - }), - }, - { - keys: function(t) { - return i(o(t)); - }, - }, - ); - }, - function(t, e, n) { - var r = n(3), - o = n(129), - i = n(131), - a = n(11); - for (var u in o) { - var c = r[u], - s = c && c.prototype; - if (s && s.forEach !== i) - try { - a(s, 'forEach', i); - } catch (t) { - s.forEach = i; - } - } - }, - function(t, e, n) { - n(0)({ target: 'Array', stat: !0 }, { isArray: n(36) }); - }, - function(t, e, n) { - var r = n(5), - o = n(20), - i = n(2)('species'); - t.exports = function(t, e) { - var n, - a = r(t).constructor; - return void 0 === a || null == (n = r(a)[i]) ? e : o(n); - }; - }, - function(t, e, n) { - 'use strict'; - var r = n(10), - o = n(5), - i = n(1), - a = n(104), - u = RegExp.prototype, - c = u.toString, - s = i(function() { - return '/a/b' != c.call({ source: 'a', flags: 'b' }); - }), - f = 'toString' != c.name; - (s || f) && - r( - RegExp.prototype, - 'toString', - function() { - var t = o(this), - e = String(t.source), - n = t.flags; - return ( - '/' + - e + - '/' + - String(void 0 === n && t instanceof RegExp && !('flags' in u) ? a.call(t) : n) - ); - }, - { unsafe: !0 }, - ); - }, - function(t, e, n) { - var r = n(2), - o = n(33), - i = n(8), - a = r('unscopables'), - u = Array.prototype; - null == u[a] && i.f(u, a, { configurable: !0, value: o(null) }), - (t.exports = function(t) { - u[a][t] = !0; - }); - }, - function(t, e, n) { - var r = n(1), - o = /#|\.prototype\./, - i = function(t, e) { - var n = u[a(t)]; - return n == s || (n != c && ('function' == typeof e ? r(e) : !!e)); - }, - a = (i.normalize = function(t) { - return String(t) - .replace(o, '.') - .toLowerCase(); - }), - u = (i.data = {}), - c = (i.NATIVE = 'N'), - s = (i.POLYFILL = 'P'); - t.exports = i; - }, - function(t, e, n) { - var r = n(5), - o = n(184); - t.exports = - Object.setPrototypeOf || - ('__proto__' in {} - ? (function() { - var t, - e = !1, - n = {}; - try { - (t = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set).call(n, []), - (e = n instanceof Array); - } catch (t) {} - return function(n, i) { - return r(n), o(i), e ? t.call(n, i) : (n.__proto__ = i), n; - }; - })() - : void 0); - }, - function(t, e, n) { - var r = n(171); - t.exports = function(t) { - if (r(t)) throw TypeError("The method doesn't accept regular expressions"); - return t; - }; - }, - function(t, e, n) { - var r = n(2)('match'); - t.exports = function(t) { - var e = /./; - try { - '/./'[t](e); - } catch (n) { - try { - return (e[r] = !1), '/./'[t](e); - } catch (t) {} - } - return !1; - }; - }, - function(t, e, n) { - 'use strict'; - var r = n(5); - t.exports = function() { - var t = r(this), - e = ''; - return ( - t.global && (e += 'g'), - t.ignoreCase && (e += 'i'), - t.multiline && (e += 'm'), - t.dotAll && (e += 's'), - t.unicode && (e += 'u'), - t.sticky && (e += 'y'), - e - ); - }; - }, - function(t, e, n) { - 'use strict'; - var r = n(15), - o = n(99), - i = n(35), - a = n(28), - u = n(112), - c = a.set, - s = a.getterFor('Array Iterator'); - (t.exports = u( - Array, - 'Array', - function(t, e) { - c(this, { type: 'Array Iterator', target: r(t), index: 0, kind: e }); - }, - function() { - var t = s(this), - e = t.target, - n = t.kind, - r = t.index++; - return !e || r >= e.length - ? ((t.target = void 0), { value: void 0, done: !0 }) - : 'keys' == n - ? { value: r, done: !1 } - : 'values' == n - ? { value: e[r], done: !1 } - : { value: [r, e[r]], done: !1 }; - }, - 'values', - )), - (i.Arguments = i.Array), - o('keys'), - o('values'), - o('entries'); - }, - function(t, e, n) { - var r = n(6), - o = n(1), - i = n(72); - t.exports = - !r && - !o(function() { - return ( - 7 != - Object.defineProperty(i('div'), 'a', { - get: function() { - return 7; - }, - }).a - ); - }); - }, - function(t, e, n) { - var r = n(73); - t.exports = r && !Symbol.sham && 'symbol' == typeof Symbol.iterator; - }, - function(t, e, n) { - var r = n(7), - o = n(15), - i = n(74).indexOf, - a = n(34); - t.exports = function(t, e) { - var n, - u = o(t), - c = 0, - s = []; - for (n in u) !r(a, n) && r(u, n) && s.push(n); - for (; e.length > c; ) r(u, (n = e[c++])) && (~i(s, n) || s.push(n)); - return s; - }; - }, - function(t, e, n) { - var r = n(47), - o = Math.max, - i = Math.min; - t.exports = function(t, e) { - var n = r(t); - return n < 0 ? o(n + e, 0) : i(n, e); - }; - }, - function(t, e, n) { - var r = n(18); - t.exports = r('document', 'documentElement'); - }, - function(t, e, n) { - var r = n(3); - t.exports = r; - }, - function(t, e, n) { - 'use strict'; - var r = n(0), - o = n(183), - i = n(79), - a = n(101), - u = n(49), - c = n(11), - s = n(10), - f = n(2), - l = n(19), - p = n(35), - h = n(115), - d = h.IteratorPrototype, - v = h.BUGGY_SAFARI_ITERATORS, - y = f('iterator'), - m = function() { - return this; - }; - t.exports = function(t, e, n, f, h, g, b) { - o(n, e, f); - var _, - x, - w, - O = function(t) { - if (t === h && k) return k; - if (!v && t in A) return A[t]; - switch (t) { - case 'keys': - case 'values': - case 'entries': - return function() { - return new n(this, t); - }; - } - return function() { - return new n(this); - }; - }, - S = e + ' Iterator', - j = !1, - A = t.prototype, - E = A[y] || A['@@iterator'] || (h && A[h]), - k = (!v && E) || O(h), - C = ('Array' == e && A.entries) || E; - if ( - (C && - ((_ = i(C.call(new t()))), - d !== Object.prototype && - _.next && - (l || i(_) === d || (a ? a(_, d) : 'function' != typeof _[y] && c(_, y, m)), - u(_, S, !0, !0), - l && (p[S] = m))), - 'values' == h && - E && - 'values' !== E.name && - ((j = !0), - (k = function() { - return E.call(this); - })), - (l && !b) || A[y] === k || c(A, y, k), - (p[e] = k), - h) - ) - if (((x = { values: O('values'), keys: g ? k : O('keys'), entries: O('entries') }), b)) - for (w in x) (v || j || !(w in A)) && s(A, w, x[w]); - else r({ target: e, proto: !0, forced: v || j }, x); - return x; - }; - }, - function(t, e, n) { - var r = n(7), - o = n(114), - i = n(24), - a = n(8); - t.exports = function(t, e) { - for (var n = o(e), u = a.f, c = i.f, s = 0; s < n.length; s++) { - var f = n[s]; - r(t, f) || u(t, f, c(e, f)); - } - }; - }, - function(t, e, n) { - var r = n(18), - o = n(68), - i = n(78), - a = n(5); - t.exports = - r('Reflect', 'ownKeys') || - function(t) { - var e = o.f(a(t)), - n = i.f; - return n ? e.concat(n(t)) : e; - }; - }, - function(t, e, n) { - 'use strict'; - var r, - o, - i, - a = n(79), - u = n(11), - c = n(7), - s = n(2), - f = n(19), - l = s('iterator'), - p = !1; - [].keys && - ('next' in (i = [].keys()) ? (o = a(a(i))) !== Object.prototype && (r = o) : (p = !0)), - null == r && (r = {}), - f || - c(r, l) || - u(r, l, function() { - return this; - }), - (t.exports = { IteratorPrototype: r, BUGGY_SAFARI_ITERATORS: p }); - }, - function(t, e, n) { - var r = n(1); - t.exports = !r(function() { - function t() {} - return (t.prototype.constructor = null), Object.getPrototypeOf(new t()) !== t.prototype; - }); - }, - function(t, e, n) { - var r = n(3); - t.exports = r.Promise; - }, - function(t, e, n) { - var r = n(2), - o = n(35), - i = r('iterator'), - a = Array.prototype; - t.exports = function(t) { - return void 0 !== t && (o.Array === t || a[i] === t); - }; - }, - function(t, e, n) { - var r = n(120), - o = n(35), - i = n(2)('iterator'); - t.exports = function(t) { - if (null != t) return t[i] || t['@@iterator'] || o[r(t)]; - }; - }, - function(t, e, n) { - var r = n(80), - o = n(26), - i = n(2)('toStringTag'), - a = - 'Arguments' == - o( - (function() { - return arguments; - })(), - ); - t.exports = r - ? o - : function(t) { - var e, n, r; - return void 0 === t - ? 'Undefined' - : null === t - ? 'Null' - : 'string' == - typeof (n = (function(t, e) { - try { - return t[e]; - } catch (t) {} - })((e = Object(t)), i)) - ? n - : a - ? o(e) - : 'Object' == (r = o(e)) && 'function' == typeof e.callee - ? 'Arguments' - : r; - }; - }, - function(t, e, n) { - var r = n(5); - t.exports = function(t) { - var e = t.return; - if (void 0 !== e) return r(e.call(t)).value; - }; - }, - function(t, e, n) { - var r = n(2)('iterator'), - o = !1; - try { - var i = 0, - a = { - next: function() { - return { done: !!i++ }; - }, - return: function() { - o = !0; - }, - }; - (a[r] = function() { - return this; - }), - Array.from(a, function() { - throw 2; - }); - } catch (t) {} - t.exports = function(t, e) { - if (!e && !o) return !1; - var n = !1; - try { - var i = {}; - (i[r] = function() { - return { - next: function() { - return { done: (n = !0) }; - }, - }; - }), - t(i); - } catch (t) {} - return n; - }; - }, - function(t, e, n) { - var r, - o, - i, - a = n(3), - u = n(1), - c = n(50), - s = n(110), - f = n(72), - l = n(124), - p = n(51), - h = a.location, - d = a.setImmediate, - v = a.clearImmediate, - y = a.process, - m = a.MessageChannel, - g = a.Dispatch, - b = 0, - _ = {}, - x = function(t) { - if (_.hasOwnProperty(t)) { - var e = _[t]; - delete _[t], e(); - } - }, - w = function(t) { - return function() { - x(t); - }; - }, - O = function(t) { - x(t.data); - }, - S = function(t) { - a.postMessage(t + '', h.protocol + '//' + h.host); - }; - (d && v) || - ((d = function(t) { - for (var e = [], n = 1; arguments.length > n; ) e.push(arguments[n++]); - return ( - (_[++b] = function() { - ('function' == typeof t ? t : Function(t)).apply(void 0, e); - }), - r(b), - b - ); - }), - (v = function(t) { - delete _[t]; - }), - p - ? (r = function(t) { - y.nextTick(w(t)); - }) - : g && g.now - ? (r = function(t) { - g.now(w(t)); - }) - : m && !l - ? ((i = (o = new m()).port2), (o.port1.onmessage = O), (r = c(i.postMessage, i, 1))) - : a.addEventListener && - 'function' == typeof postMessage && - !a.importScripts && - h && - 'file:' !== h.protocol && - !u(S) - ? ((r = S), a.addEventListener('message', O, !1)) - : (r = - 'onreadystatechange' in f('script') - ? function(t) { - s.appendChild(f('script')).onreadystatechange = function() { - s.removeChild(this), x(t); - }; - } - : function(t) { - setTimeout(w(t), 0); - })), - (t.exports = { set: d, clear: v }); - }, - function(t, e, n) { - var r = n(81); - t.exports = /(iphone|ipod|ipad).*applewebkit/i.test(r); - }, - function(t, e, n) { - var r = n(5), - o = n(4), - i = n(126); - t.exports = function(t, e) { - if ((r(t), o(e) && e.constructor === t)) return e; - var n = i.f(t); - return (0, n.resolve)(e), n.promise; - }; - }, - function(t, e, n) { - 'use strict'; - var r = n(20), - o = function(t) { - var e, n; - (this.promise = new t(function(t, r) { - if (void 0 !== e || void 0 !== n) throw TypeError('Bad Promise constructor'); - (e = t), (n = r); - })), - (this.resolve = r(e)), - (this.reject = r(n)); - }; - t.exports.f = function(t) { - return new o(t); - }; - }, - function(t, e, n) { - var r = n(4), - o = n(36), - i = n(2)('species'); - t.exports = function(t, e) { - var n; - return ( - o(t) && - ('function' != typeof (n = t.constructor) || (n !== Array && !o(n.prototype)) - ? r(n) && null === (n = n[i]) && (n = void 0) - : (n = void 0)), - new (void 0 === n ? Array : n)(0 === e ? 0 : e) - ); - }; - }, - function(t, e, n) { - var r = n(47), - o = n(22), - i = function(t) { - return function(e, n) { - var i, - a, - u = String(o(e)), - c = r(n), - s = u.length; - return c < 0 || c >= s - ? t - ? '' - : void 0 - : (i = u.charCodeAt(c)) < 55296 || - i > 56319 || - c + 1 === s || - (a = u.charCodeAt(c + 1)) < 56320 || - a > 57343 - ? t - ? u.charAt(c) - : i - : t - ? u.slice(c, c + 2) - : a - 56320 + ((i - 55296) << 10) + 65536; - }; - }; - t.exports = { codeAt: i(!1), charAt: i(!0) }; - }, - function(t, e) { - t.exports = { - CSSRuleList: 0, - CSSStyleDeclaration: 0, - CSSValueList: 0, - ClientRectList: 0, - DOMRectList: 0, - DOMStringList: 0, - DOMTokenList: 1, - DataTransferItemList: 0, - FileList: 0, - HTMLAllCollection: 0, - HTMLCollection: 0, - HTMLFormElement: 0, - HTMLSelectElement: 0, - MediaList: 0, - MimeTypeArray: 0, - NamedNodeMap: 0, - NodeList: 1, - PaintRequestList: 0, - Plugin: 0, - PluginArray: 0, - SVGLengthList: 0, - SVGNumberList: 0, - SVGPathSegList: 0, - SVGPointList: 0, - SVGStringList: 0, - SVGTransformList: 0, - SourceBufferList: 0, - StyleSheetList: 0, - TextTrackCueList: 0, - TextTrackList: 0, - TouchList: 0, - }; - }, - function(t, e, n) { - var r = (function(t) { - 'use strict'; - var e = Object.prototype, - n = e.hasOwnProperty, - r = 'function' == typeof Symbol ? Symbol : {}, - o = r.iterator || '@@iterator', - i = r.asyncIterator || '@@asyncIterator', - a = r.toStringTag || '@@toStringTag'; - function u(t, e, n) { - return ( - Object.defineProperty(t, e, { value: n, enumerable: !0, configurable: !0, writable: !0 }), - t[e] - ); - } - try { - u({}, ''); - } catch (t) { - u = function(t, e, n) { - return (t[e] = n); - }; - } - function c(t, e, n, r) { - var o = e && e.prototype instanceof l ? e : l, - i = Object.create(o.prototype), - a = new O(r || []); - return ( - (i._invoke = (function(t, e, n) { - var r = 'suspendedStart'; - return function(o, i) { - if ('executing' === r) throw new Error('Generator is already running'); - if ('completed' === r) { - if ('throw' === o) throw i; - return j(); - } - for (n.method = o, n.arg = i; ; ) { - var a = n.delegate; - if (a) { - var u = _(a, n); - if (u) { - if (u === f) continue; - return u; - } - } - if ('next' === n.method) n.sent = n._sent = n.arg; - else if ('throw' === n.method) { - if ('suspendedStart' === r) throw ((r = 'completed'), n.arg); - n.dispatchException(n.arg); - } else 'return' === n.method && n.abrupt('return', n.arg); - r = 'executing'; - var c = s(t, e, n); - if ('normal' === c.type) { - if (((r = n.done ? 'completed' : 'suspendedYield'), c.arg === f)) continue; - return { value: c.arg, done: n.done }; - } - 'throw' === c.type && ((r = 'completed'), (n.method = 'throw'), (n.arg = c.arg)); - } - }; - })(t, n, a)), - i - ); - } - function s(t, e, n) { - try { - return { type: 'normal', arg: t.call(e, n) }; - } catch (t) { - return { type: 'throw', arg: t }; - } - } - t.wrap = c; - var f = {}; - function l() {} - function p() {} - function h() {} - var d = {}; - d[o] = function() { - return this; - }; - var v = Object.getPrototypeOf, - y = v && v(v(S([]))); - y && y !== e && n.call(y, o) && (d = y); - var m = (h.prototype = l.prototype = Object.create(d)); - function g(t) { - ['next', 'throw', 'return'].forEach(function(e) { - u(t, e, function(t) { - return this._invoke(e, t); - }); - }); - } - function b(t, e) { - var r; - this._invoke = function(o, i) { - function a() { - return new e(function(r, a) { - !(function r(o, i, a, u) { - var c = s(t[o], t, i); - if ('throw' !== c.type) { - var f = c.arg, - l = f.value; - return l && 'object' == typeof l && n.call(l, '__await') - ? e.resolve(l.__await).then( - function(t) { - r('next', t, a, u); - }, - function(t) { - r('throw', t, a, u); - }, - ) - : e.resolve(l).then( - function(t) { - (f.value = t), a(f); - }, - function(t) { - return r('throw', t, a, u); - }, - ); - } - u(c.arg); - })(o, i, r, a); - }); - } - return (r = r ? r.then(a, a) : a()); - }; - } - function _(t, e) { - var n = t.iterator[e.method]; - if (void 0 === n) { - if (((e.delegate = null), 'throw' === e.method)) { - if ( - t.iterator.return && - ((e.method = 'return'), (e.arg = void 0), _(t, e), 'throw' === e.method) - ) - return f; - (e.method = 'throw'), - (e.arg = new TypeError("The iterator does not provide a 'throw' method")); - } - return f; - } - var r = s(n, t.iterator, e.arg); - if ('throw' === r.type) - return (e.method = 'throw'), (e.arg = r.arg), (e.delegate = null), f; - var o = r.arg; - return o - ? o.done - ? ((e[t.resultName] = o.value), - (e.next = t.nextLoc), - 'return' !== e.method && ((e.method = 'next'), (e.arg = void 0)), - (e.delegate = null), - f) - : o - : ((e.method = 'throw'), - (e.arg = new TypeError('iterator result is not an object')), - (e.delegate = null), - f); - } - function x(t) { - var e = { tryLoc: t[0] }; - 1 in t && (e.catchLoc = t[1]), - 2 in t && ((e.finallyLoc = t[2]), (e.afterLoc = t[3])), - this.tryEntries.push(e); - } - function w(t) { - var e = t.completion || {}; - (e.type = 'normal'), delete e.arg, (t.completion = e); - } - function O(t) { - (this.tryEntries = [{ tryLoc: 'root' }]), t.forEach(x, this), this.reset(!0); - } - function S(t) { - if (t) { - var e = t[o]; - if (e) return e.call(t); - if ('function' == typeof t.next) return t; - if (!isNaN(t.length)) { - var r = -1, - i = function e() { - for (; ++r < t.length; ) - if (n.call(t, r)) return (e.value = t[r]), (e.done = !1), e; - return (e.value = void 0), (e.done = !0), e; - }; - return (i.next = i); - } - } - return { next: j }; - } - function j() { - return { value: void 0, done: !0 }; - } - return ( - (p.prototype = m.constructor = h), - (h.constructor = p), - (p.displayName = u(h, a, 'GeneratorFunction')), - (t.isGeneratorFunction = function(t) { - var e = 'function' == typeof t && t.constructor; - return !!e && (e === p || 'GeneratorFunction' === (e.displayName || e.name)); - }), - (t.mark = function(t) { - return ( - Object.setPrototypeOf - ? Object.setPrototypeOf(t, h) - : ((t.__proto__ = h), u(t, a, 'GeneratorFunction')), - (t.prototype = Object.create(m)), - t - ); - }), - (t.awrap = function(t) { - return { __await: t }; - }), - g(b.prototype), - (b.prototype[i] = function() { - return this; - }), - (t.AsyncIterator = b), - (t.async = function(e, n, r, o, i) { - void 0 === i && (i = Promise); - var a = new b(c(e, n, r, o), i); - return t.isGeneratorFunction(n) - ? a - : a.next().then(function(t) { - return t.done ? t.value : a.next(); - }); - }), - g(m), - u(m, a, 'Generator'), - (m[o] = function() { - return this; - }), - (m.toString = function() { - return '[object Generator]'; - }), - (t.keys = function(t) { - var e = []; - for (var n in t) e.push(n); - return ( - e.reverse(), - function n() { - for (; e.length; ) { - var r = e.pop(); - if (r in t) return (n.value = r), (n.done = !1), n; - } - return (n.done = !0), n; - } - ); - }), - (t.values = S), - (O.prototype = { - constructor: O, - reset: function(t) { - if ( - ((this.prev = 0), - (this.next = 0), - (this.sent = this._sent = void 0), - (this.done = !1), - (this.delegate = null), - (this.method = 'next'), - (this.arg = void 0), - this.tryEntries.forEach(w), - !t) - ) - for (var e in this) - 't' === e.charAt(0) && n.call(this, e) && !isNaN(+e.slice(1)) && (this[e] = void 0); - }, - stop: function() { - this.done = !0; - var t = this.tryEntries[0].completion; - if ('throw' === t.type) throw t.arg; - return this.rval; - }, - dispatchException: function(t) { - if (this.done) throw t; - var e = this; - function r(n, r) { - return ( - (a.type = 'throw'), - (a.arg = t), - (e.next = n), - r && ((e.method = 'next'), (e.arg = void 0)), - !!r - ); - } - for (var o = this.tryEntries.length - 1; o >= 0; --o) { - var i = this.tryEntries[o], - a = i.completion; - if ('root' === i.tryLoc) return r('end'); - if (i.tryLoc <= this.prev) { - var u = n.call(i, 'catchLoc'), - c = n.call(i, 'finallyLoc'); - if (u && c) { - if (this.prev < i.catchLoc) return r(i.catchLoc, !0); - if (this.prev < i.finallyLoc) return r(i.finallyLoc); - } else if (u) { - if (this.prev < i.catchLoc) return r(i.catchLoc, !0); - } else { - if (!c) throw new Error('try statement without catch or finally'); - if (this.prev < i.finallyLoc) return r(i.finallyLoc); - } - } - } - }, - abrupt: function(t, e) { - for (var r = this.tryEntries.length - 1; r >= 0; --r) { - var o = this.tryEntries[r]; - if (o.tryLoc <= this.prev && n.call(o, 'finallyLoc') && this.prev < o.finallyLoc) { - var i = o; - break; - } - } - i && - ('break' === t || 'continue' === t) && - i.tryLoc <= e && - e <= i.finallyLoc && - (i = null); - var a = i ? i.completion : {}; - return ( - (a.type = t), - (a.arg = e), - i ? ((this.method = 'next'), (this.next = i.finallyLoc), f) : this.complete(a) - ); - }, - complete: function(t, e) { - if ('throw' === t.type) throw t.arg; - return ( - 'break' === t.type || 'continue' === t.type - ? (this.next = t.arg) - : 'return' === t.type - ? ((this.rval = this.arg = t.arg), (this.method = 'return'), (this.next = 'end')) - : 'normal' === t.type && e && (this.next = e), - f - ); - }, - finish: function(t) { - for (var e = this.tryEntries.length - 1; e >= 0; --e) { - var n = this.tryEntries[e]; - if (n.finallyLoc === t) return this.complete(n.completion, n.afterLoc), w(n), f; - } - }, - catch: function(t) { - for (var e = this.tryEntries.length - 1; e >= 0; --e) { - var n = this.tryEntries[e]; - if (n.tryLoc === t) { - var r = n.completion; - if ('throw' === r.type) { - var o = r.arg; - w(n); - } - return o; - } - } - throw new Error('illegal catch attempt'); - }, - delegateYield: function(t, e, n) { - return ( - (this.delegate = { iterator: S(t), resultName: e, nextLoc: n }), - 'next' === this.method && (this.arg = void 0), - f - ); - }, - }), - t - ); - })(t.exports); - try { - regeneratorRuntime = r; - } catch (t) { - Function('r', 'regeneratorRuntime = r')(r); - } - }, - function(t, e, n) { - 'use strict'; - var r = n(29).forEach, - o = n(38), - i = n(17), - a = o('forEach'), - u = i('forEach'); - t.exports = - a && u - ? [].forEach - : function(t) { - return r(this, t, arguments.length > 1 ? arguments[1] : void 0); - }; - }, - function(t, e, n) { - var r = n(1); - t.exports = !r(function() { - return Object.isExtensible(Object.preventExtensions({})); - }); - }, - function(t, e, n) { - var r = n(0), - o = n(1), - i = n(12), - a = n(79), - u = n(116); - r( - { - target: 'Object', - stat: !0, - forced: o(function() { - a(1); - }), - sham: !u, - }, - { - getPrototypeOf: function(t) { - return a(i(t)); - }, - }, - ); - }, - function(t, e, n) { - n(0)({ target: 'Object', stat: !0, sham: !n(6) }, { create: n(33) }); - }, - function(t, e, n) { - var r = n(2); - e.f = r; - }, - function(t, e, n) { - var r = n(111), - o = n(7), - i = n(135), - a = n(8).f; - t.exports = function(t) { - var e = r.Symbol || (r.Symbol = {}); - o(e, t) || a(e, t, { value: i.f(t) }); - }; - }, - function(t, e, n) { - var r = n(0), - o = n(205); - r( - { - target: 'Array', - stat: !0, - forced: !n(122)(function(t) { - Array.from(t); - }), - }, - { from: o }, - ); - }, - function(t, e, n) { - var r = n(10), - o = Date.prototype, - i = o.toString, - a = o.getTime; - new Date(NaN) + '' != 'Invalid Date' && - r(o, 'toString', function() { - var t = a.call(this); - return t == t ? i.call(this) : 'Invalid Date'; - }); - }, - function(t, e) { - t.exports = function(t, e) { - for (var n = -1, r = e.length, o = t.length; ++n < r; ) t[o + n] = e[n]; - return t; - }; - }, - function(t, e) { - var n = 'object' == typeof global && global && global.Object === Object && global; - t.exports = n; - }, - function(t, e, n) { - var r = n(58), - o = n(220), - i = n(221), - a = n(222), - u = n(223), - c = n(224); - function s(t) { - var e = (this.__data__ = new r(t)); - this.size = e.size; - } - (s.prototype.clear = o), - (s.prototype.delete = i), - (s.prototype.get = a), - (s.prototype.has = u), - (s.prototype.set = c), - (t.exports = s); - }, - function(t, e) { - t.exports = function(t, e) { - return t === e || (t != t && e != e); - }; - }, - function(t, e, n) { - var r = n(30), - o = n(86); - t.exports = function(t) { - if (!o(t)) return !1; - var e = r(t); - return ( - '[object Function]' == e || - '[object GeneratorFunction]' == e || - '[object AsyncFunction]' == e || - '[object Proxy]' == e - ); - }; - }, - function(t, e) { - var n = Function.prototype.toString; - t.exports = function(t) { - if (null != t) { - try { - return n.call(t); - } catch (t) {} - try { - return t + ''; - } catch (t) {} - } - return ''; - }; - }, - function(t, e, n) { - var r = n(241), - o = n(25); - t.exports = function t(e, n, i, a, u) { - return ( - e === n || - (null == e || null == n || (!o(e) && !o(n)) ? e != e && n != n : r(e, n, i, a, t, u)) - ); - }; - }, - function(t, e, n) { - var r = n(147), - o = n(244), - i = n(148); - t.exports = function(t, e, n, a, u, c) { - var s = 1 & n, - f = t.length, - l = e.length; - if (f != l && !(s && l > f)) return !1; - var p = c.get(t), - h = c.get(e); - if (p && h) return p == e && h == t; - var d = -1, - v = !0, - y = 2 & n ? new r() : void 0; - for (c.set(t, e), c.set(e, t); ++d < f; ) { - var m = t[d], - g = e[d]; - if (a) var b = s ? a(g, m, d, e, t, c) : a(m, g, d, t, e, c); - if (void 0 !== b) { - if (b) continue; - v = !1; - break; - } - if (y) { - if ( - !o(e, function(t, e) { - if (!i(y, e) && (m === t || u(m, t, n, a, c))) return y.push(e); - }) - ) { - v = !1; - break; - } - } else if (m !== g && !u(m, g, n, a, c)) { - v = !1; - break; - } - } - return c.delete(t), c.delete(e), v; - }; - }, - function(t, e, n) { - var r = n(87), - o = n(242), - i = n(243); - function a(t) { - var e = -1, - n = null == t ? 0 : t.length; - for (this.__data__ = new r(); ++e < n; ) this.add(t[e]); - } - (a.prototype.add = a.prototype.push = o), (a.prototype.has = i), (t.exports = a); - }, - function(t, e) { - t.exports = function(t, e) { - return t.has(e); - }; - }, - function(t, e, n) { - var r = n(254), - o = n(260), - i = n(154); - t.exports = function(t) { - return i(t) ? r(t) : o(t); - }; - }, - function(t, e, n) { - (function(t) { - var r = n(16), - o = n(256), - i = e && !e.nodeType && e, - a = i && 'object' == typeof t && t && !t.nodeType && t, - u = a && a.exports === i ? r.Buffer : void 0, - c = (u ? u.isBuffer : void 0) || o; - t.exports = c; - }.call(this, n(151)(t))); - }, - function(t, e) { - t.exports = function(t) { - return ( - t.webpackPolyfill || - ((t.deprecate = function() {}), - (t.paths = []), - t.children || (t.children = []), - Object.defineProperty(t, 'loaded', { - enumerable: !0, - get: function() { - return t.l; - }, - }), - Object.defineProperty(t, 'id', { - enumerable: !0, - get: function() { - return t.i; - }, - }), - (t.webpackPolyfill = 1)), - t - ); - }; - }, - function(t, e) { - var n = /^(?:0|[1-9]\d*)$/; - t.exports = function(t, e) { - var r = typeof t; - return ( - !!(e = null == e ? 9007199254740991 : e) && - ('number' == r || ('symbol' != r && n.test(t))) && - t > -1 && - t % 1 == 0 && - t < e - ); - }; - }, - function(t, e, n) { - var r = n(257), - o = n(258), - i = n(259), - a = i && i.isTypedArray, - u = a ? o(a) : r; - t.exports = u; - }, - function(t, e, n) { - var r = n(143), - o = n(89); - t.exports = function(t) { - return null != t && o(t.length) && !r(t); - }; - }, - function(t, e, n) { - var r = n(21)(n(16), 'Set'); - t.exports = r; - }, - function(t, e, n) { - var r = n(86); - t.exports = function(t) { - return t == t && !r(t); - }; - }, - function(t, e) { - t.exports = function(t, e) { - return function(n) { - return null != n && n[t] === e && (void 0 !== e || t in Object(n)); - }; - }; - }, - function(t, e, n) { - var r = n(159), - o = n(62); - t.exports = function(t, e) { - for (var n = 0, i = (e = r(e, t)).length; null != t && n < i; ) t = t[o(e[n++])]; - return n && n == i ? t : void 0; - }; - }, - function(t, e, n) { - var r = n(14), - o = n(90), - i = n(270), - a = n(273); - t.exports = function(t, e) { - return r(t) ? t : o(t, e) ? [t] : i(a(t)); - }; - }, - function(t, e, n) { - n(0)({ target: 'Object', stat: !0 }, { setPrototypeOf: n(101) }); - }, - function(t, e, n) { - var r = n(0), - o = n(18), - i = n(20), - a = n(5), - u = n(4), - c = n(33), - s = n(304), - f = n(1), - l = o('Reflect', 'construct'), - p = f(function() { - function t() {} - return !(l(function() {}, [], t) instanceof t); - }), - h = !f(function() { - l(function() {}); - }), - d = p || h; - r( - { target: 'Reflect', stat: !0, forced: d, sham: d }, - { - construct: function(t, e) { - i(t), a(e); - var n = arguments.length < 3 ? t : i(arguments[2]); - if (h && !p) return l(t, e, n); - if (t == n) { - switch (e.length) { - case 0: - return new t(); - case 1: - return new t(e[0]); - case 2: - return new t(e[0], e[1]); - case 3: - return new t(e[0], e[1], e[2]); - case 4: - return new t(e[0], e[1], e[2], e[3]); - } - var r = [null]; - return r.push.apply(r, e), new (s.apply(t, r))(); - } - var o = n.prototype, - f = c(u(o) ? o : Object.prototype), - d = Function.apply.call(t, f, e); - return u(d) ? d : f; - }, - }, - ); - }, - function(t, e, n) {}, - function(t, e, n) {}, - function(t, e, n) { - var r = n(207), - o = n(212), - i = n(282), - a = n(290), - u = n(299), - c = n(179), - s = i(function(t) { - var e = c(t); - return u(e) && (e = void 0), a(r(t, 1, u, !0), o(e, 2)); - }); - t.exports = s; - }, - function(t, e) { - var n = /^\s+|\s+$/g, - r = /^[-+]0x[0-9a-f]+$/i, - o = /^0b[01]+$/i, - i = /^0o[0-7]+$/i, - a = parseInt, - u = 'object' == typeof global && global && global.Object === Object && global, - c = 'object' == typeof self && self && self.Object === Object && self, - s = u || c || Function('return this')(), - f = Object.prototype.toString, - l = Math.max, - p = Math.min, - h = function() { - return s.Date.now(); - }; - function d(t) { - var e = typeof t; - return !!t && ('object' == e || 'function' == e); - } - function v(t) { - if ('number' == typeof t) return t; - if ( - (function(t) { - return ( - 'symbol' == typeof t || - ((function(t) { - return !!t && 'object' == typeof t; - })(t) && - '[object Symbol]' == f.call(t)) - ); - })(t) - ) - return NaN; - if (d(t)) { - var e = 'function' == typeof t.valueOf ? t.valueOf() : t; - t = d(e) ? e + '' : e; - } - if ('string' != typeof t) return 0 === t ? t : +t; - t = t.replace(n, ''); - var u = o.test(t); - return u || i.test(t) ? a(t.slice(2), u ? 2 : 8) : r.test(t) ? NaN : +t; - } - t.exports = function(t, e, n) { - var r, - o, - i, - a, - u, - c, - s = 0, - f = !1, - y = !1, - m = !0; - if ('function' != typeof t) throw new TypeError('Expected a function'); - function g(e) { - var n = r, - i = o; - return (r = o = void 0), (s = e), (a = t.apply(i, n)); - } - function b(t) { - return (s = t), (u = setTimeout(x, e)), f ? g(t) : a; - } - function _(t) { - var n = t - c; - return void 0 === c || n >= e || n < 0 || (y && t - s >= i); - } - function x() { - var t = h(); - if (_(t)) return w(t); - u = setTimeout( - x, - (function(t) { - var n = e - (t - c); - return y ? p(n, i - (t - s)) : n; - })(t), - ); - } - function w(t) { - return (u = void 0), m && r ? g(t) : ((r = o = void 0), a); - } - function O() { - var t = h(), - n = _(t); - if (((r = arguments), (o = this), (c = t), n)) { - if (void 0 === u) return b(c); - if (y) return (u = setTimeout(x, e)), g(c); - } - return void 0 === u && (u = setTimeout(x, e)), a; - } - return ( - (e = v(e) || 0), - d(n) && - ((f = !!n.leading), - (i = (y = 'maxWait' in n) ? l(v(n.maxWait) || 0, e) : i), - (m = 'trailing' in n ? !!n.trailing : m)), - (O.cancel = function() { - void 0 !== u && clearTimeout(u), (s = 0), (r = c = o = u = void 0); - }), - (O.flush = function() { - return void 0 === u ? a : w(h()); - }), - O - ); - }; - }, - function(t, e, n) { - 'use strict'; - var r = n(0), - o = n(29).some, - i = n(38), - a = n(17), - u = i('some'), - c = a('some'); - r( - { target: 'Array', proto: !0, forced: !u || !c }, - { - some: function(t) { - return o(this, t, arguments.length > 1 ? arguments[1] : void 0); - }, - }, - ); - }, - function(t, e, n) { - 'use strict'; - n(43); - var r = n(10), - o = n(1), - i = n(2), - a = n(67), - u = n(11), - c = i('species'), - s = !o(function() { - var t = /./; - return ( - (t.exec = function() { - var t = []; - return (t.groups = { a: '7' }), t; - }), - '7' !== ''.replace(t, '$') - ); - }), - f = '$0' === 'a'.replace(/./, '$0'), - l = i('replace'), - p = !!/./[l] && '' === /./[l]('a', '$0'), - h = !o(function() { - var t = /(?:)/, - e = t.exec; - t.exec = function() { - return e.apply(this, arguments); - }; - var n = 'ab'.split(t); - return 2 !== n.length || 'a' !== n[0] || 'b' !== n[1]; - }); - t.exports = function(t, e, n, l) { - var d = i(t), - v = !o(function() { - var e = {}; - return ( - (e[d] = function() { - return 7; - }), - 7 != ''[t](e) - ); - }), - y = - v && - !o(function() { - var e = !1, - n = /a/; - return ( - 'split' === t && - (((n = {}).constructor = {}), - (n.constructor[c] = function() { - return n; - }), - (n.flags = ''), - (n[d] = /./[d])), - (n.exec = function() { - return (e = !0), null; - }), - n[d](''), - !e - ); - }); - if (!v || !y || ('replace' === t && (!s || !f || p)) || ('split' === t && !h)) { - var m = /./[d], - g = n( - d, - ''[t], - function(t, e, n, r, o) { - return e.exec === a - ? v && !o - ? { done: !0, value: m.call(e, n, r) } - : { done: !0, value: t.call(n, e, r) } - : { done: !1 }; - }, - { REPLACE_KEEPS_$0: f, REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: p }, - ), - b = g[0], - _ = g[1]; - r(String.prototype, t, b), - r( - RegExp.prototype, - d, - 2 == e - ? function(t, e) { - return _.call(t, this, e); - } - : function(t) { - return _.call(t, this); - }, - ); - } - l && u(RegExp.prototype[d], 'sham', !0); - }; - }, - function(t, e, n) { - 'use strict'; - var r = n(128).charAt; - t.exports = function(t, e, n) { - return e + (n ? r(t, e).length : 1); - }; - }, - function(t, e, n) { - var r = n(26), - o = n(67); - t.exports = function(t, e) { - var n = t.exec; - if ('function' == typeof n) { - var i = n.call(t, e); - if ('object' != typeof i) - throw TypeError('RegExp exec method returned something other than an Object or null'); - return i; - } - if ('RegExp' !== r(t)) throw TypeError('RegExp#exec called on incompatible receiver'); - return o.call(t, e); - }; - }, - function(t, e, n) { - 'use strict'; - var r = n(0), - o = n(74).indexOf, - i = n(38), - a = n(17), - u = [].indexOf, - c = !!u && 1 / [1].indexOf(1, -0) < 0, - s = i('indexOf'), - f = a('indexOf', { ACCESSORS: !0, 1: 0 }); - r( - { target: 'Array', proto: !0, forced: c || !s || !f }, - { - indexOf: function(t) { - return c - ? u.apply(this, arguments) || 0 - : o(this, t, arguments.length > 1 ? arguments[1] : void 0); - }, - }, - ); - }, - function(t, e, n) { - var r = n(4), - o = n(26), - i = n(2)('match'); - t.exports = function(t) { - var e; - return r(t) && (void 0 !== (e = t[i]) ? !!e : 'RegExp' == o(t)); - }; - }, - function(t, e, n) { - 'use strict'; - var r = n(0), - o = n(31), - i = n(15), - a = n(38), - u = [].join, - c = o != Object, - s = a('join', ','); - r( - { target: 'Array', proto: !0, forced: c || !s }, - { - join: function(t) { - return u.call(i(this), void 0 === t ? ',' : t); - }, - }, - ); - }, - function(t, e, n) { - 'use strict'; - var r = n(18), - o = n(8), - i = n(2), - a = n(6), - u = i('species'); - t.exports = function(t) { - var e = r(t), - n = o.f; - a && - e && - !e[u] && - n(e, u, { - configurable: !0, - get: function() { - return this; - }, - }); - }; - }, - function(t, e, n) { - 'use strict'; - var r = n(0), - o = n(74).includes, - i = n(99); - r( - { target: 'Array', proto: !0, forced: !n(17)('indexOf', { ACCESSORS: !0, 1: 0 }) }, - { - includes: function(t) { - return o(this, t, arguments.length > 1 ? arguments[1] : void 0); - }, - }, - ), - i('includes'); - }, - function(t, e, n) { - 'use strict'; - var r = n(1); - function o(t, e) { - return RegExp(t, e); - } - (e.UNSUPPORTED_Y = r(function() { - var t = o('a', 'y'); - return (t.lastIndex = 2), null != t.exec('abcd'); - })), - (e.BROKEN_CARET = r(function() { - var t = o('^r', 'gy'); - return (t.lastIndex = 2), null != t.exec('str'); - })); - }, - function(t, e, n) { - 'use strict'; - var r = n(0), - o = n(102), - i = n(22); - r( - { target: 'String', proto: !0, forced: !n(103)('includes') }, - { - includes: function(t) { - return !!~String(i(this)).indexOf(o(t), arguments.length > 1 ? arguments[1] : void 0); - }, - }, - ); - }, - function(t, e, n) { - 'use strict'; - var r = n(0), - o = n(1), - i = n(36), - a = n(4), - u = n(12), - c = n(13), - s = n(55), - f = n(127), - l = n(53), - p = n(2), - h = n(52), - d = p('isConcatSpreadable'), - v = - h >= 51 || - !o(function() { - var t = []; - return (t[d] = !1), t.concat()[0] !== t; - }), - y = l('concat'), - m = function(t) { - if (!a(t)) return !1; - var e = t[d]; - return void 0 !== e ? !!e : i(t); - }; - r( - { target: 'Array', proto: !0, forced: !v || !y }, - { - concat: function(t) { - var e, - n, - r, - o, - i, - a = u(this), - l = f(a, 0), - p = 0; - for (e = -1, r = arguments.length; e < r; e++) - if (m((i = -1 === e ? a : arguments[e]))) { - if (p + (o = c(i.length)) > 9007199254740991) - throw TypeError('Maximum allowed index exceeded'); - for (n = 0; n < o; n++, p++) n in i && s(l, p, i[n]); - } else { - if (p >= 9007199254740991) throw TypeError('Maximum allowed index exceeded'); - s(l, p++, i); - } - return (l.length = p), l; - }, - }, - ); - }, - function(t, e, n) { - var r = n(158); - t.exports = function(t, e, n) { - var o = null == t ? void 0 : r(t, e); - return void 0 === o ? n : o; - }; - }, - function(t, e) { - t.exports = function(t) { - var e = null == t ? 0 : t.length; - return e ? t[e - 1] : void 0; - }; - }, - function(t, e, n) { - t.exports = n(307); - }, - function(t, e, n) { - var r = n(6), - o = n(8), - i = n(5), - a = n(46); - t.exports = r - ? Object.defineProperties - : function(t, e) { - i(t); - for (var n, r = a(e), u = r.length, c = 0; u > c; ) o.f(t, (n = r[c++]), e[n]); - return t; - }; - }, - function(t, e, n) { - var r = n(3), - o = n(76), - i = r.WeakMap; - t.exports = 'function' == typeof i && /native code/.test(o(i)); - }, - function(t, e, n) { - 'use strict'; - var r = n(115).IteratorPrototype, - o = n(33), - i = n(32), - a = n(49), - u = n(35), - c = function() { - return this; - }; - t.exports = function(t, e, n) { - var s = e + ' Iterator'; - return (t.prototype = o(r, { next: i(1, n) })), a(t, s, !1, !0), (u[s] = c), t; - }; - }, - function(t, e, n) { - var r = n(4); - t.exports = function(t) { - if (!r(t) && null !== t) throw TypeError("Can't set " + String(t) + ' as a prototype'); - return t; - }; - }, - function(t, e, n) { - 'use strict'; - var r, - o, - i, - a, - u = n(0), - c = n(19), - s = n(3), - f = n(18), - l = n(117), - p = n(10), - h = n(186), - d = n(49), - v = n(173), - y = n(4), - m = n(20), - g = n(187), - b = n(76), - _ = n(188), - x = n(122), - w = n(97), - O = n(123).set, - S = n(189), - j = n(125), - A = n(191), - E = n(126), - k = n(192), - C = n(28), - $ = n(100), - P = n(2), - T = n(51), - L = n(52), - R = P('species'), - z = 'Promise', - D = C.get, - I = C.set, - M = C.getterFor(z), - N = l, - U = s.TypeError, - F = s.document, - B = s.process, - V = f('fetch'), - H = E.f, - q = H, - W = !!(F && F.createEvent && s.dispatchEvent), - G = 'function' == typeof PromiseRejectionEvent, - K = $(z, function() { - if (!(b(N) !== String(N))) { - if (66 === L) return !0; - if (!T && !G) return !0; - } - if (c && !N.prototype.finally) return !0; - if (L >= 51 && /native code/.test(N)) return !1; - var t = N.resolve(1), - e = function(t) { - t( - function() {}, - function() {}, - ); - }; - return ((t.constructor = {})[R] = e), !(t.then(function() {}) instanceof e); - }), - J = - K || - !x(function(t) { - N.all(t).catch(function() {}); - }), - X = function(t) { - var e; - return !(!y(t) || 'function' != typeof (e = t.then)) && e; - }, - Q = function(t, e) { - if (!t.notified) { - t.notified = !0; - var n = t.reactions; - S(function() { - for (var r = t.value, o = 1 == t.state, i = 0; n.length > i; ) { - var a, - u, - c, - s = n[i++], - f = o ? s.ok : s.fail, - l = s.resolve, - p = s.reject, - h = s.domain; - try { - f - ? (o || (2 === t.rejection && et(t), (t.rejection = 1)), - !0 === f ? (a = r) : (h && h.enter(), (a = f(r)), h && (h.exit(), (c = !0))), - a === s.promise - ? p(U('Promise-chain cycle')) - : (u = X(a)) - ? u.call(a, l, p) - : l(a)) - : p(r); - } catch (t) { - h && !c && h.exit(), p(t); - } - } - (t.reactions = []), (t.notified = !1), e && !t.rejection && Z(t); - }); - } - }, - Y = function(t, e, n) { - var r, o; - W - ? (((r = F.createEvent('Event')).promise = e), - (r.reason = n), - r.initEvent(t, !1, !0), - s.dispatchEvent(r)) - : (r = { promise: e, reason: n }), - !G && (o = s['on' + t]) - ? o(r) - : 'unhandledrejection' === t && A('Unhandled promise rejection', n); - }, - Z = function(t) { - O.call(s, function() { - var e, - n = t.facade, - r = t.value; - if ( - tt(t) && - ((e = k(function() { - T ? B.emit('unhandledRejection', r, n) : Y('unhandledrejection', n, r); - })), - (t.rejection = T || tt(t) ? 2 : 1), - e.error) - ) - throw e.value; - }); - }, - tt = function(t) { - return 1 !== t.rejection && !t.parent; - }, - et = function(t) { - O.call(s, function() { - var e = t.facade; - T ? B.emit('rejectionHandled', e) : Y('rejectionhandled', e, t.value); - }); - }, - nt = function(t, e, n) { - return function(r) { - t(e, r, n); - }; - }, - rt = function(t, e, n) { - t.done || ((t.done = !0), n && (t = n), (t.value = e), (t.state = 2), Q(t, !0)); - }, - ot = function(t, e, n) { - if (!t.done) { - (t.done = !0), n && (t = n); - try { - if (t.facade === e) throw U("Promise can't be resolved itself"); - var r = X(e); - r - ? S(function() { - var n = { done: !1 }; - try { - r.call(e, nt(ot, n, t), nt(rt, n, t)); - } catch (e) { - rt(n, e, t); - } - }) - : ((t.value = e), (t.state = 1), Q(t, !1)); - } catch (e) { - rt({ done: !1 }, e, t); - } - } - }; - K && - ((N = function(t) { - g(this, N, z), m(t), r.call(this); - var e = D(this); - try { - t(nt(ot, e), nt(rt, e)); - } catch (t) { - rt(e, t); - } - }), - ((r = function(t) { - I(this, { - type: z, - done: !1, - notified: !1, - parent: !1, - reactions: [], - rejection: !1, - state: 0, - value: void 0, - }); - }).prototype = h(N.prototype, { - then: function(t, e) { - var n = M(this), - r = H(w(this, N)); - return ( - (r.ok = 'function' != typeof t || t), - (r.fail = 'function' == typeof e && e), - (r.domain = T ? B.domain : void 0), - (n.parent = !0), - n.reactions.push(r), - 0 != n.state && Q(n, !1), - r.promise - ); - }, - catch: function(t) { - return this.then(void 0, t); - }, - })), - (o = function() { - var t = new r(), - e = D(t); - (this.promise = t), (this.resolve = nt(ot, e)), (this.reject = nt(rt, e)); - }), - (E.f = H = function(t) { - return t === N || t === i ? new o(t) : q(t); - }), - c || - 'function' != typeof l || - ((a = l.prototype.then), - p( - l.prototype, - 'then', - function(t, e) { - var n = this; - return new N(function(t, e) { - a.call(n, t, e); - }).then(t, e); - }, - { unsafe: !0 }, - ), - 'function' == typeof V && - u( - { global: !0, enumerable: !0, forced: !0 }, - { - fetch: function(t) { - return j(N, V.apply(s, arguments)); - }, - }, - ))), - u({ global: !0, wrap: !0, forced: K }, { Promise: N }), - d(N, z, !1, !0), - v(z), - (i = f(z)), - u( - { target: z, stat: !0, forced: K }, - { - reject: function(t) { - var e = H(this); - return e.reject.call(void 0, t), e.promise; - }, - }, - ), - u( - { target: z, stat: !0, forced: c || K }, - { - resolve: function(t) { - return j(c && this === i ? N : this, t); - }, - }, - ), - u( - { target: z, stat: !0, forced: J }, - { - all: function(t) { - var e = this, - n = H(e), - r = n.resolve, - o = n.reject, - i = k(function() { - var n = m(e.resolve), - i = [], - a = 0, - u = 1; - _(t, function(t) { - var c = a++, - s = !1; - i.push(void 0), - u++, - n.call(e, t).then(function(t) { - s || ((s = !0), (i[c] = t), --u || r(i)); - }, o); - }), - --u || r(i); - }); - return i.error && o(i.value), n.promise; - }, - race: function(t) { - var e = this, - n = H(e), - r = n.reject, - o = k(function() { - var o = m(e.resolve); - _(t, function(t) { - o.call(e, t).then(n.resolve, r); - }); - }); - return o.error && r(o.value), n.promise; - }, - }, - ); - }, - function(t, e, n) { - var r = n(10); - t.exports = function(t, e, n) { - for (var o in e) r(t, o, e[o], n); - return t; - }; - }, - function(t, e) { - t.exports = function(t, e, n) { - if (!(t instanceof e)) throw TypeError('Incorrect ' + (n ? n + ' ' : '') + 'invocation'); - return t; - }; - }, - function(t, e, n) { - var r = n(5), - o = n(118), - i = n(13), - a = n(50), - u = n(119), - c = n(121), - s = function(t, e) { - (this.stopped = t), (this.result = e); - }; - t.exports = function(t, e, n) { - var f, - l, - p, - h, - d, - v, - y, - m = n && n.that, - g = !(!n || !n.AS_ENTRIES), - b = !(!n || !n.IS_ITERATOR), - _ = !(!n || !n.INTERRUPTED), - x = a(e, m, 1 + g + _), - w = function(t) { - return f && c(f), new s(!0, t); - }, - O = function(t) { - return g ? (r(t), _ ? x(t[0], t[1], w) : x(t[0], t[1])) : _ ? x(t, w) : x(t); - }; - if (b) f = t; - else { - if ('function' != typeof (l = u(t))) throw TypeError('Target is not iterable'); - if (o(l)) { - for (p = 0, h = i(t.length); h > p; p++) if ((d = O(t[p])) && d instanceof s) return d; - return new s(!1); - } - f = l.call(t); - } - for (v = f.next; !(y = v.call(f)).done; ) { - try { - d = O(y.value); - } catch (t) { - throw (c(f), t); - } - if ('object' == typeof d && d && d instanceof s) return d; - } - return new s(!1); - }; - }, - function(t, e, n) { - var r, - o, - i, - a, - u, - c, - s, - f, - l = n(3), - p = n(24).f, - h = n(123).set, - d = n(124), - v = n(190), - y = n(51), - m = l.MutationObserver || l.WebKitMutationObserver, - g = l.document, - b = l.process, - _ = l.Promise, - x = p(l, 'queueMicrotask'), - w = x && x.value; - w || - ((r = function() { - var t, e; - for (y && (t = b.domain) && t.exit(); o; ) { - (e = o.fn), (o = o.next); - try { - e(); - } catch (t) { - throw (o ? a() : (i = void 0), t); - } - } - (i = void 0), t && t.enter(); - }), - d || y || v || !m || !g - ? _ && _.resolve - ? ((s = _.resolve(void 0)), - (f = s.then), - (a = function() { - f.call(s, r); - })) - : (a = y - ? function() { - b.nextTick(r); - } - : function() { - h.call(l, r); - }) - : ((u = !0), - (c = g.createTextNode('')), - new m(r).observe(c, { characterData: !0 }), - (a = function() { - c.data = u = !u; - }))), - (t.exports = - w || - function(t) { - var e = { fn: t, next: void 0 }; - i && (i.next = e), o || ((o = e), a()), (i = e); - }); - }, - function(t, e, n) { - var r = n(81); - t.exports = /web0s(?!.*chrome)/i.test(r); - }, - function(t, e, n) { - var r = n(3); - t.exports = function(t, e) { - var n = r.console; - n && n.error && (1 === arguments.length ? n.error(t) : n.error(t, e)); - }; - }, - function(t, e) { - t.exports = function(t) { - try { - return { error: !1, value: t() }; - } catch (t) { - return { error: !0, value: t }; - } - }; - }, - function(t, e, n) { - var r = n(0), - o = n(194); - r({ target: 'Object', stat: !0, forced: Object.assign !== o }, { assign: o }); - }, - function(t, e, n) { - 'use strict'; - var r = n(6), - o = n(1), - i = n(46), - a = n(78), - u = n(77), - c = n(12), - s = n(31), - f = Object.assign, - l = Object.defineProperty; - t.exports = - !f || - o(function() { - if ( - r && - 1 !== - f( - { b: 1 }, - f( - l({}, 'a', { - enumerable: !0, - get: function() { - l(this, 'b', { value: 3, enumerable: !1 }); - }, - }), - { b: 2 }, - ), - ).b - ) - return !0; - var t = {}, - e = {}, - n = Symbol(); - return ( - (t[n] = 7), - 'abcdefghijklmnopqrst'.split('').forEach(function(t) { - e[t] = t; - }), - 7 != f({}, t)[n] || 'abcdefghijklmnopqrst' != i(f({}, e)).join('') - ); - }) - ? function(t, e) { - for (var n = c(t), o = arguments.length, f = 1, l = a.f, p = u.f; o > f; ) - for ( - var h, d = s(arguments[f++]), v = l ? i(d).concat(l(d)) : i(d), y = v.length, m = 0; - y > m; - - ) - (h = v[m++]), (r && !p.call(d, h)) || (n[h] = d[h]); - return n; - } - : f; - }, - function(t, e, n) { - 'use strict'; - var r = n(0), - o = n(19), - i = n(117), - a = n(1), - u = n(18), - c = n(97), - s = n(125), - f = n(10); - r( - { - target: 'Promise', - proto: !0, - real: !0, - forced: - !!i && - a(function() { - i.prototype.finally.call({ then: function() {} }, function() {}); - }), - }, - { - finally: function(t) { - var e = c(this, u('Promise')), - n = 'function' == typeof t; - return this.then( - n - ? function(n) { - return s(e, t()).then(function() { - return n; - }); - } - : t, - n - ? function(n) { - return s(e, t()).then(function() { - throw n; - }); - } - : t, - ); - }, - }, - ), - o || - 'function' != typeof i || - i.prototype.finally || - f(i.prototype, 'finally', u('Promise').prototype.finally); - }, - function(t, e, n) { - 'use strict'; - var r = n(80), - o = n(120); - t.exports = r - ? {}.toString - : function() { - return '[object ' + o(this) + ']'; - }; - }, - function(t, e, n) { - 'use strict'; - var r = n(0), - o = n(198).left, - i = n(38), - a = n(17), - u = n(52), - c = n(51), - s = i('reduce'), - f = a('reduce', { 1: 0 }); - r( - { target: 'Array', proto: !0, forced: !s || !f || (!c && u > 79 && u < 83) }, - { - reduce: function(t) { - return o(this, t, arguments.length, arguments.length > 1 ? arguments[1] : void 0); - }, - }, - ); - }, - function(t, e, n) { - var r = n(20), - o = n(12), - i = n(31), - a = n(13), - u = function(t) { - return function(e, n, u, c) { - r(n); - var s = o(e), - f = i(s), - l = a(s.length), - p = t ? l - 1 : 0, - h = t ? -1 : 1; - if (u < 2) - for (;;) { - if (p in f) { - (c = f[p]), (p += h); - break; - } - if (((p += h), t ? p < 0 : l <= p)) - throw TypeError('Reduce of empty array with no initial value'); - } - for (; t ? p >= 0 : l > p; p += h) p in f && (c = n(c, f[p], p, s)); - return c; - }; - }; - t.exports = { left: u(!1), right: u(!0) }; - }, - function(t, e, n) { - var r = n(0), - o = n(132), - i = n(1), - a = n(4), - u = n(200).onFreeze, - c = Object.freeze; - r( - { - target: 'Object', - stat: !0, - forced: i(function() { - c(1); - }), - sham: !o, - }, - { - freeze: function(t) { - return c && a(t) ? c(u(t)) : t; - }, - }, - ); - }, - function(t, e, n) { - var r = n(34), - o = n(4), - i = n(7), - a = n(8).f, - u = n(45), - c = n(132), - s = u('meta'), - f = 0, - l = - Object.isExtensible || - function() { - return !0; - }, - p = function(t) { - a(t, s, { value: { objectID: 'O' + ++f, weakData: {} } }); - }, - h = (t.exports = { - REQUIRED: !1, - fastKey: function(t, e) { - if (!o(t)) return 'symbol' == typeof t ? t : ('string' == typeof t ? 'S' : 'P') + t; - if (!i(t, s)) { - if (!l(t)) return 'F'; - if (!e) return 'E'; - p(t); - } - return t[s].objectID; - }, - getWeakData: function(t, e) { - if (!i(t, s)) { - if (!l(t)) return !0; - if (!e) return !1; - p(t); - } - return t[s].weakData; - }, - onFreeze: function(t) { - return c && h.REQUIRED && l(t) && !i(t, s) && p(t), t; - }, - }); - r[s] = !0; - }, - function(t, e, n) { - var r = n(0), - o = n(6), - i = n(114), - a = n(15), - u = n(24), - c = n(55); - r( - { target: 'Object', stat: !0, sham: !o }, - { - getOwnPropertyDescriptors: function(t) { - for (var e, n, r = a(t), o = u.f, s = i(r), f = {}, l = 0; s.length > l; ) - void 0 !== (n = o(r, (e = s[l++]))) && c(f, e, n); - return f; - }, - }, - ); - }, - function(t, e, n) { - 'use strict'; - var r, - o = n(0), - i = n(24).f, - a = n(13), - u = n(102), - c = n(22), - s = n(103), - f = n(19), - l = ''.startsWith, - p = Math.min, - h = s('startsWith'); - o( - { - target: 'String', - proto: !0, - forced: !!(f || h || ((r = i(String.prototype, 'startsWith')), !r || r.writable)) && !h, - }, - { - startsWith: function(t) { - var e = String(c(this)); - u(t); - var n = a(p(arguments.length > 1 ? arguments[1] : void 0, e.length)), - r = String(t); - return l ? l.call(e, r, n) : e.slice(n, n + r.length) === r; - }, - }, - ); - }, - function(t, e, n) { - var r = n(12), - o = Math.floor, - i = ''.replace, - a = /\$([$&'`]|\d\d?|<[^>]*>)/g, - u = /\$([$&'`]|\d\d?)/g; - t.exports = function(t, e, n, c, s, f) { - var l = n + t.length, - p = c.length, - h = u; - return ( - void 0 !== s && ((s = r(s)), (h = a)), - i.call(f, h, function(r, i) { - var a; - switch (i.charAt(0)) { - case '$': - return '$'; - case '&': - return t; - case '`': - return e.slice(0, n); - case "'": - return e.slice(l); - case '<': - a = s[i.slice(1, -1)]; - break; - default: - var u = +i; - if (0 === u) return r; - if (u > p) { - var f = o(u / 10); - return 0 === f - ? r - : f <= p - ? void 0 === c[f - 1] - ? i.charAt(1) - : c[f - 1] + i.charAt(1) - : r; - } - a = c[u - 1]; - } - return void 0 === a ? '' : a; - }) - ); - }; - }, - function(t, e, n) { - var r = n(15), - o = n(68).f, - i = {}.toString, - a = - 'object' == typeof window && window && Object.getOwnPropertyNames - ? Object.getOwnPropertyNames(window) - : []; - t.exports.f = function(t) { - return a && '[object Window]' == i.call(t) - ? (function(t) { - try { - return o(t); - } catch (t) { - return a.slice(); - } - })(t) - : o(r(t)); - }; - }, - function(t, e, n) { - 'use strict'; - var r = n(50), - o = n(12), - i = n(206), - a = n(118), - u = n(13), - c = n(55), - s = n(119); - t.exports = function(t) { - var e, - n, - f, - l, - p, - h, - d = o(t), - v = 'function' == typeof this ? this : Array, - y = arguments.length, - m = y > 1 ? arguments[1] : void 0, - g = void 0 !== m, - b = s(d), - _ = 0; - if ((g && (m = r(m, y > 2 ? arguments[2] : void 0, 2)), null == b || (v == Array && a(b)))) - for (n = new v((e = u(d.length))); e > _; _++) (h = g ? m(d[_], _) : d[_]), c(n, _, h); - else - for (p = (l = b.call(d)).next, n = new v(); !(f = p.call(l)).done; _++) - (h = g ? i(l, m, [f.value, _], !0) : f.value), c(n, _, h); - return (n.length = _), n; - }; - }, - function(t, e, n) { - var r = n(5), - o = n(121); - t.exports = function(t, e, n, i) { - try { - return i ? e(r(n)[0], n[1]) : e(n); - } catch (e) { - throw (o(t), e); - } - }; - }, - function(t, e, n) { - var r = n(139), - o = n(208); - t.exports = function t(e, n, i, a, u) { - var c = -1, - s = e.length; - for (i || (i = o), u || (u = []); ++c < s; ) { - var f = e[c]; - n > 0 && i(f) ? (n > 1 ? t(f, n - 1, i, a, u) : r(u, f)) : a || (u[u.length] = f); - } - return u; - }; - }, - function(t, e, n) { - var r = n(39), - o = n(84), - i = n(14), - a = r ? r.isConcatSpreadable : void 0; - t.exports = function(t) { - return i(t) || o(t) || !!(a && t && t[a]); - }; - }, - function(t, e, n) { - var r = n(30), - o = n(25); - t.exports = function(t) { - return o(t) && '[object Arguments]' == r(t); - }; - }, - function(t, e, n) { - var r = n(39), - o = Object.prototype, - i = o.hasOwnProperty, - a = o.toString, - u = r ? r.toStringTag : void 0; - t.exports = function(t) { - var e = i.call(t, u), - n = t[u]; - try { - t[u] = void 0; - var r = !0; - } catch (t) {} - var o = a.call(t); - return r && (e ? (t[u] = n) : delete t[u]), o; - }; - }, - function(t, e) { - var n = Object.prototype.toString; - t.exports = function(t) { - return n.call(t); - }; - }, - function(t, e, n) { - var r = n(213), - o = n(269), - i = n(92), - a = n(14), - u = n(279); - t.exports = function(t) { - return 'function' == typeof t - ? t - : null == t - ? i - : 'object' == typeof t - ? a(t) - ? o(t[0], t[1]) - : r(t) - : u(t); - }; - }, - function(t, e, n) { - var r = n(214), - o = n(268), - i = n(157); - t.exports = function(t) { - var e = o(t); - return 1 == e.length && e[0][2] - ? i(e[0][0], e[0][1]) - : function(n) { - return n === t || r(n, t, e); - }; - }; - }, - function(t, e, n) { - var r = n(141), - o = n(145); - t.exports = function(t, e, n, i) { - var a = n.length, - u = a, - c = !i; - if (null == t) return !u; - for (t = Object(t); a--; ) { - var s = n[a]; - if (c && s[2] ? s[1] !== t[s[0]] : !(s[0] in t)) return !1; - } - for (; ++a < u; ) { - var f = (s = n[a])[0], - l = t[f], - p = s[1]; - if (c && s[2]) { - if (void 0 === l && !(f in t)) return !1; - } else { - var h = new r(); - if (i) var d = i(l, p, f, t, e, h); - if (!(void 0 === d ? o(p, l, 3, i, h) : d)) return !1; - } - } - return !0; - }; - }, - function(t, e) { - t.exports = function() { - (this.__data__ = []), (this.size = 0); - }; - }, - function(t, e, n) { - var r = n(59), - o = Array.prototype.splice; - t.exports = function(t) { - var e = this.__data__, - n = r(e, t); - return !(n < 0) && (n == e.length - 1 ? e.pop() : o.call(e, n, 1), --this.size, !0); - }; - }, - function(t, e, n) { - var r = n(59); - t.exports = function(t) { - var e = this.__data__, - n = r(e, t); - return n < 0 ? void 0 : e[n][1]; - }; - }, - function(t, e, n) { - var r = n(59); - t.exports = function(t) { - return r(this.__data__, t) > -1; - }; - }, - function(t, e, n) { - var r = n(59); - t.exports = function(t, e) { - var n = this.__data__, - o = r(n, t); - return o < 0 ? (++this.size, n.push([t, e])) : (n[o][1] = e), this; - }; - }, - function(t, e, n) { - var r = n(58); - t.exports = function() { - (this.__data__ = new r()), (this.size = 0); - }; - }, - function(t, e) { - t.exports = function(t) { - var e = this.__data__, - n = e.delete(t); - return (this.size = e.size), n; - }; - }, - function(t, e) { - t.exports = function(t) { - return this.__data__.get(t); - }; - }, - function(t, e) { - t.exports = function(t) { - return this.__data__.has(t); - }; - }, - function(t, e, n) { - var r = n(58), - o = n(85), - i = n(87); - t.exports = function(t, e) { - var n = this.__data__; - if (n instanceof r) { - var a = n.__data__; - if (!o || a.length < 199) return a.push([t, e]), (this.size = ++n.size), this; - n = this.__data__ = new i(a); - } - return n.set(t, e), (this.size = n.size), this; - }; - }, - function(t, e, n) { - var r = n(143), - o = n(226), - i = n(86), - a = n(144), - u = /^\[object .+?Constructor\]$/, - c = Function.prototype, - s = Object.prototype, - f = c.toString, - l = s.hasOwnProperty, - p = RegExp( - '^' + - f - .call(l) - .replace(/[\\^$.*+?()[\]{}|]/g, '\\$&') - .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + - '$', - ); - t.exports = function(t) { - return !(!i(t) || o(t)) && (r(t) ? p : u).test(a(t)); - }; - }, - function(t, e, n) { - var r, - o = n(227), - i = (r = /[^.]+$/.exec((o && o.keys && o.keys.IE_PROTO) || '')) ? 'Symbol(src)_1.' + r : ''; - t.exports = function(t) { - return !!i && i in t; - }; - }, - function(t, e, n) { - var r = n(16)['__core-js_shared__']; - t.exports = r; - }, - function(t, e) { - t.exports = function(t, e) { - return null == t ? void 0 : t[e]; - }; - }, - function(t, e, n) { - var r = n(230), - o = n(58), - i = n(85); - t.exports = function() { - (this.size = 0), (this.__data__ = { hash: new r(), map: new (i || o)(), string: new r() }); - }; - }, - function(t, e, n) { - var r = n(231), - o = n(232), - i = n(233), - a = n(234), - u = n(235); - function c(t) { - var e = -1, - n = null == t ? 0 : t.length; - for (this.clear(); ++e < n; ) { - var r = t[e]; - this.set(r[0], r[1]); - } - } - (c.prototype.clear = r), - (c.prototype.delete = o), - (c.prototype.get = i), - (c.prototype.has = a), - (c.prototype.set = u), - (t.exports = c); - }, - function(t, e, n) { - var r = n(60); - t.exports = function() { - (this.__data__ = r ? r(null) : {}), (this.size = 0); - }; - }, - function(t, e) { - t.exports = function(t) { - var e = this.has(t) && delete this.__data__[t]; - return (this.size -= e ? 1 : 0), e; - }; - }, - function(t, e, n) { - var r = n(60), - o = Object.prototype.hasOwnProperty; - t.exports = function(t) { - var e = this.__data__; - if (r) { - var n = e[t]; - return '__lodash_hash_undefined__' === n ? void 0 : n; - } - return o.call(e, t) ? e[t] : void 0; - }; - }, - function(t, e, n) { - var r = n(60), - o = Object.prototype.hasOwnProperty; - t.exports = function(t) { - var e = this.__data__; - return r ? void 0 !== e[t] : o.call(e, t); - }; - }, - function(t, e, n) { - var r = n(60); - t.exports = function(t, e) { - var n = this.__data__; - return ( - (this.size += this.has(t) ? 0 : 1), - (n[t] = r && void 0 === e ? '__lodash_hash_undefined__' : e), - this - ); - }; - }, - function(t, e, n) { - var r = n(61); - t.exports = function(t) { - var e = r(this, t).delete(t); - return (this.size -= e ? 1 : 0), e; - }; - }, - function(t, e) { - t.exports = function(t) { - var e = typeof t; - return 'string' == e || 'number' == e || 'symbol' == e || 'boolean' == e - ? '__proto__' !== t - : null === t; - }; - }, - function(t, e, n) { - var r = n(61); - t.exports = function(t) { - return r(this, t).get(t); - }; - }, - function(t, e, n) { - var r = n(61); - t.exports = function(t) { - return r(this, t).has(t); - }; - }, - function(t, e, n) { - var r = n(61); - t.exports = function(t, e) { - var n = r(this, t), - o = n.size; - return n.set(t, e), (this.size += n.size == o ? 0 : 1), this; - }; - }, - function(t, e, n) { - var r = n(141), - o = n(146), - i = n(245), - a = n(248), - u = n(264), - c = n(14), - s = n(150), - f = n(153), - l = '[object Object]', - p = Object.prototype.hasOwnProperty; - t.exports = function(t, e, n, h, d, v) { - var y = c(t), - m = c(e), - g = y ? '[object Array]' : u(t), - b = m ? '[object Array]' : u(e), - _ = (g = '[object Arguments]' == g ? l : g) == l, - x = (b = '[object Arguments]' == b ? l : b) == l, - w = g == b; - if (w && s(t)) { - if (!s(e)) return !1; - (y = !0), (_ = !1); - } - if (w && !_) - return v || (v = new r()), y || f(t) ? o(t, e, n, h, d, v) : i(t, e, g, n, h, d, v); - if (!(1 & n)) { - var O = _ && p.call(t, '__wrapped__'), - S = x && p.call(e, '__wrapped__'); - if (O || S) { - var j = O ? t.value() : t, - A = S ? e.value() : e; - return v || (v = new r()), d(j, A, n, h, v); - } - } - return !!w && (v || (v = new r()), a(t, e, n, h, d, v)); - }; - }, - function(t, e) { - t.exports = function(t) { - return this.__data__.set(t, '__lodash_hash_undefined__'), this; - }; - }, - function(t, e) { - t.exports = function(t) { - return this.__data__.has(t); - }; - }, - function(t, e) { - t.exports = function(t, e) { - for (var n = -1, r = null == t ? 0 : t.length; ++n < r; ) if (e(t[n], n, t)) return !0; - return !1; - }; - }, - function(t, e, n) { - var r = n(39), - o = n(246), - i = n(142), - a = n(146), - u = n(247), - c = n(88), - s = r ? r.prototype : void 0, - f = s ? s.valueOf : void 0; - t.exports = function(t, e, n, r, s, l, p) { - switch (n) { - case '[object DataView]': - if (t.byteLength != e.byteLength || t.byteOffset != e.byteOffset) return !1; - (t = t.buffer), (e = e.buffer); - case '[object ArrayBuffer]': - return !(t.byteLength != e.byteLength || !l(new o(t), new o(e))); - case '[object Boolean]': - case '[object Date]': - case '[object Number]': - return i(+t, +e); - case '[object Error]': - return t.name == e.name && t.message == e.message; - case '[object RegExp]': - case '[object String]': - return t == e + ''; - case '[object Map]': - var h = u; - case '[object Set]': - var d = 1 & r; - if ((h || (h = c), t.size != e.size && !d)) return !1; - var v = p.get(t); - if (v) return v == e; - (r |= 2), p.set(t, e); - var y = a(h(t), h(e), r, s, l, p); - return p.delete(t), y; - case '[object Symbol]': - if (f) return f.call(t) == f.call(e); - } - return !1; - }; - }, - function(t, e, n) { - var r = n(16).Uint8Array; - t.exports = r; - }, - function(t, e) { - t.exports = function(t) { - var e = -1, - n = Array(t.size); - return ( - t.forEach(function(t, r) { - n[++e] = [r, t]; - }), - n - ); - }; - }, - function(t, e, n) { - var r = n(249), - o = Object.prototype.hasOwnProperty; - t.exports = function(t, e, n, i, a, u) { - var c = 1 & n, - s = r(t), - f = s.length; - if (f != r(e).length && !c) return !1; - for (var l = f; l--; ) { - var p = s[l]; - if (!(c ? p in e : o.call(e, p))) return !1; - } - var h = u.get(t), - d = u.get(e); - if (h && d) return h == e && d == t; - var v = !0; - u.set(t, e), u.set(e, t); - for (var y = c; ++l < f; ) { - var m = t[(p = s[l])], - g = e[p]; - if (i) var b = c ? i(g, m, p, e, t, u) : i(m, g, p, t, e, u); - if (!(void 0 === b ? m === g || a(m, g, n, i, u) : b)) { - v = !1; - break; - } - y || (y = 'constructor' == p); - } - if (v && !y) { - var _ = t.constructor, - x = e.constructor; - _ == x || - !('constructor' in t) || - !('constructor' in e) || - ('function' == typeof _ && _ instanceof _ && 'function' == typeof x && x instanceof x) || - (v = !1); - } - return u.delete(t), u.delete(e), v; - }; - }, - function(t, e, n) { - var r = n(250), - o = n(251), - i = n(149); - t.exports = function(t) { - return r(t, i, o); - }; - }, - function(t, e, n) { - var r = n(139), - o = n(14); - t.exports = function(t, e, n) { - var i = e(t); - return o(t) ? i : r(i, n(t)); - }; - }, - function(t, e, n) { - var r = n(252), - o = n(253), - i = Object.prototype.propertyIsEnumerable, - a = Object.getOwnPropertySymbols, - u = a - ? function(t) { - return null == t - ? [] - : ((t = Object(t)), - r(a(t), function(e) { - return i.call(t, e); - })); - } - : o; - t.exports = u; - }, - function(t, e) { - t.exports = function(t, e) { - for (var n = -1, r = null == t ? 0 : t.length, o = 0, i = []; ++n < r; ) { - var a = t[n]; - e(a, n, t) && (i[o++] = a); - } - return i; - }; - }, - function(t, e) { - t.exports = function() { - return []; - }; - }, - function(t, e, n) { - var r = n(255), - o = n(84), - i = n(14), - a = n(150), - u = n(152), - c = n(153), - s = Object.prototype.hasOwnProperty; - t.exports = function(t, e) { - var n = i(t), - f = !n && o(t), - l = !n && !f && a(t), - p = !n && !f && !l && c(t), - h = n || f || l || p, - d = h ? r(t.length, String) : [], - v = d.length; - for (var y in t) - (!e && !s.call(t, y)) || - (h && - ('length' == y || - (l && ('offset' == y || 'parent' == y)) || - (p && ('buffer' == y || 'byteLength' == y || 'byteOffset' == y)) || - u(y, v))) || - d.push(y); - return d; - }; - }, - function(t, e) { - t.exports = function(t, e) { - for (var n = -1, r = Array(t); ++n < t; ) r[n] = e(n); - return r; - }; - }, - function(t, e) { - t.exports = function() { - return !1; - }; - }, - function(t, e, n) { - var r = n(30), - o = n(89), - i = n(25), - a = {}; - (a['[object Float32Array]'] = a['[object Float64Array]'] = a['[object Int8Array]'] = a[ - '[object Int16Array]' - ] = a['[object Int32Array]'] = a['[object Uint8Array]'] = a['[object Uint8ClampedArray]'] = a[ - '[object Uint16Array]' - ] = a['[object Uint32Array]'] = !0), - (a['[object Arguments]'] = a['[object Array]'] = a['[object ArrayBuffer]'] = a[ - '[object Boolean]' - ] = a['[object DataView]'] = a['[object Date]'] = a['[object Error]'] = a[ - '[object Function]' - ] = a['[object Map]'] = a['[object Number]'] = a['[object Object]'] = a[ - '[object RegExp]' - ] = a['[object Set]'] = a['[object String]'] = a['[object WeakMap]'] = !1), - (t.exports = function(t) { - return i(t) && o(t.length) && !!a[r(t)]; - }); - }, - function(t, e) { - t.exports = function(t) { - return function(e) { - return t(e); - }; - }; - }, - function(t, e, n) { - (function(t) { - var r = n(140), - o = e && !e.nodeType && e, - i = o && 'object' == typeof t && t && !t.nodeType && t, - a = i && i.exports === o && r.process, - u = (function() { - try { - var t = i && i.require && i.require('util').types; - return t || (a && a.binding && a.binding('util')); - } catch (t) {} - })(); - t.exports = u; - }.call(this, n(151)(t))); - }, - function(t, e, n) { - var r = n(261), - o = n(262), - i = Object.prototype.hasOwnProperty; - t.exports = function(t) { - if (!r(t)) return o(t); - var e = []; - for (var n in Object(t)) i.call(t, n) && 'constructor' != n && e.push(n); - return e; - }; - }, - function(t, e) { - var n = Object.prototype; - t.exports = function(t) { - var e = t && t.constructor; - return t === (('function' == typeof e && e.prototype) || n); - }; - }, - function(t, e, n) { - var r = n(263)(Object.keys, Object); - t.exports = r; - }, - function(t, e) { - t.exports = function(t, e) { - return function(n) { - return t(e(n)); - }; - }; - }, - function(t, e, n) { - var r = n(265), - o = n(85), - i = n(266), - a = n(155), - u = n(267), - c = n(30), - s = n(144), - f = s(r), - l = s(o), - p = s(i), - h = s(a), - d = s(u), - v = c; - ((r && '[object DataView]' != v(new r(new ArrayBuffer(1)))) || - (o && '[object Map]' != v(new o())) || - (i && '[object Promise]' != v(i.resolve())) || - (a && '[object Set]' != v(new a())) || - (u && '[object WeakMap]' != v(new u()))) && - (v = function(t) { - var e = c(t), - n = '[object Object]' == e ? t.constructor : void 0, - r = n ? s(n) : ''; - if (r) - switch (r) { - case f: - return '[object DataView]'; - case l: - return '[object Map]'; - case p: - return '[object Promise]'; - case h: - return '[object Set]'; - case d: - return '[object WeakMap]'; - } - return e; - }), - (t.exports = v); - }, - function(t, e, n) { - var r = n(21)(n(16), 'DataView'); - t.exports = r; - }, - function(t, e, n) { - var r = n(21)(n(16), 'Promise'); - t.exports = r; - }, - function(t, e, n) { - var r = n(21)(n(16), 'WeakMap'); - t.exports = r; - }, - function(t, e, n) { - var r = n(156), - o = n(149); - t.exports = function(t) { - for (var e = o(t), n = e.length; n--; ) { - var i = e[n], - a = t[i]; - e[n] = [i, a, r(a)]; - } - return e; - }; - }, - function(t, e, n) { - var r = n(145), - o = n(178), - i = n(276), - a = n(90), - u = n(156), - c = n(157), - s = n(62); - t.exports = function(t, e) { - return a(t) && u(e) - ? c(s(t), e) - : function(n) { - var a = o(n, t); - return void 0 === a && a === e ? i(n, t) : r(e, a, 3); - }; - }; - }, - function(t, e, n) { - var r = n(271), - o = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g, - i = /\\(\\)?/g, - a = r(function(t) { - var e = []; - return ( - 46 === t.charCodeAt(0) && e.push(''), - t.replace(o, function(t, n, r, o) { - e.push(r ? o.replace(i, '$1') : n || t); - }), - e - ); - }); - t.exports = a; - }, - function(t, e, n) { - var r = n(272); - t.exports = function(t) { - var e = r(t, function(t) { - return 500 === n.size && n.clear(), t; - }), - n = e.cache; - return e; - }; - }, - function(t, e, n) { - var r = n(87); - function o(t, e) { - if ('function' != typeof t || (null != e && 'function' != typeof e)) - throw new TypeError('Expected a function'); - var n = function() { - var r = arguments, - o = e ? e.apply(this, r) : r[0], - i = n.cache; - if (i.has(o)) return i.get(o); - var a = t.apply(this, r); - return (n.cache = i.set(o, a) || i), a; - }; - return (n.cache = new (o.Cache || r)()), n; - } - (o.Cache = r), (t.exports = o); - }, - function(t, e, n) { - var r = n(274); - t.exports = function(t) { - return null == t ? '' : r(t); - }; - }, - function(t, e, n) { - var r = n(39), - o = n(275), - i = n(14), - a = n(91), - u = r ? r.prototype : void 0, - c = u ? u.toString : void 0; - t.exports = function t(e) { - if ('string' == typeof e) return e; - if (i(e)) return o(e, t) + ''; - if (a(e)) return c ? c.call(e) : ''; - var n = e + ''; - return '0' == n && 1 / e == -1 / 0 ? '-0' : n; - }; - }, - function(t, e) { - t.exports = function(t, e) { - for (var n = -1, r = null == t ? 0 : t.length, o = Array(r); ++n < r; ) o[n] = e(t[n], n, t); - return o; - }; - }, - function(t, e, n) { - var r = n(277), - o = n(278); - t.exports = function(t, e) { - return null != t && o(t, e, r); - }; - }, - function(t, e) { - t.exports = function(t, e) { - return null != t && e in Object(t); - }; - }, - function(t, e, n) { - var r = n(159), - o = n(84), - i = n(14), - a = n(152), - u = n(89), - c = n(62); - t.exports = function(t, e, n) { - for (var s = -1, f = (e = r(e, t)).length, l = !1; ++s < f; ) { - var p = c(e[s]); - if (!(l = null != t && n(t, p))) break; - t = t[p]; - } - return l || ++s != f - ? l - : !!(f = null == t ? 0 : t.length) && u(f) && a(p, f) && (i(t) || o(t)); - }; - }, - function(t, e, n) { - var r = n(280), - o = n(281), - i = n(90), - a = n(62); - t.exports = function(t) { - return i(t) ? r(a(t)) : o(t); - }; - }, - function(t, e) { - t.exports = function(t) { - return function(e) { - return null == e ? void 0 : e[t]; - }; - }; - }, - function(t, e, n) { - var r = n(158); - t.exports = function(t) { - return function(e) { - return r(e, t); - }; - }; - }, - function(t, e, n) { - var r = n(92), - o = n(283), - i = n(285); - t.exports = function(t, e) { - return i(o(t, e, r), t + ''); - }; - }, - function(t, e, n) { - var r = n(284), - o = Math.max; - t.exports = function(t, e, n) { - return ( - (e = o(void 0 === e ? t.length - 1 : e, 0)), - function() { - for (var i = arguments, a = -1, u = o(i.length - e, 0), c = Array(u); ++a < u; ) - c[a] = i[e + a]; - a = -1; - for (var s = Array(e + 1); ++a < e; ) s[a] = i[a]; - return (s[e] = n(c)), r(t, this, s); - } - ); - }; - }, - function(t, e) { - t.exports = function(t, e, n) { - switch (n.length) { - case 0: - return t.call(e); - case 1: - return t.call(e, n[0]); - case 2: - return t.call(e, n[0], n[1]); - case 3: - return t.call(e, n[0], n[1], n[2]); - } - return t.apply(e, n); - }; - }, - function(t, e, n) { - var r = n(286), - o = n(289)(r); - t.exports = o; - }, - function(t, e, n) { - var r = n(287), - o = n(288), - i = n(92), - a = o - ? function(t, e) { - return o(t, 'toString', { - configurable: !0, - enumerable: !1, - value: r(e), - writable: !0, - }); - } - : i; - t.exports = a; - }, - function(t, e) { - t.exports = function(t) { - return function() { - return t; - }; - }; - }, - function(t, e, n) { - var r = n(21), - o = (function() { - try { - var t = r(Object, 'defineProperty'); - return t({}, '', {}), t; - } catch (t) {} - })(); - t.exports = o; - }, - function(t, e) { - var n = Date.now; - t.exports = function(t) { - var e = 0, - r = 0; - return function() { - var o = n(), - i = 16 - (o - r); - if (((r = o), i > 0)) { - if (++e >= 800) return arguments[0]; - } else e = 0; - return t.apply(void 0, arguments); - }; - }; - }, - function(t, e, n) { - var r = n(147), - o = n(291), - i = n(296), - a = n(148), - u = n(297), - c = n(88); - t.exports = function(t, e, n) { - var s = -1, - f = o, - l = t.length, - p = !0, - h = [], - d = h; - if (n) (p = !1), (f = i); - else if (l >= 200) { - var v = e ? null : u(t); - if (v) return c(v); - (p = !1), (f = a), (d = new r()); - } else d = e ? [] : h; - t: for (; ++s < l; ) { - var y = t[s], - m = e ? e(y) : y; - if (((y = n || 0 !== y ? y : 0), p && m == m)) { - for (var g = d.length; g--; ) if (d[g] === m) continue t; - e && d.push(m), h.push(y); - } else f(d, m, n) || (d !== h && d.push(m), h.push(y)); - } - return h; - }; - }, - function(t, e, n) { - var r = n(292); - t.exports = function(t, e) { - return !!(null == t ? 0 : t.length) && r(t, e, 0) > -1; - }; - }, - function(t, e, n) { - var r = n(293), - o = n(294), - i = n(295); - t.exports = function(t, e, n) { - return e == e ? i(t, e, n) : r(t, o, n); - }; - }, - function(t, e) { - t.exports = function(t, e, n, r) { - for (var o = t.length, i = n + (r ? 1 : -1); r ? i-- : ++i < o; ) if (e(t[i], i, t)) return i; - return -1; - }; - }, - function(t, e) { - t.exports = function(t) { - return t != t; - }; - }, - function(t, e) { - t.exports = function(t, e, n) { - for (var r = n - 1, o = t.length; ++r < o; ) if (t[r] === e) return r; - return -1; - }; - }, - function(t, e) { - t.exports = function(t, e, n) { - for (var r = -1, o = null == t ? 0 : t.length; ++r < o; ) if (n(e, t[r])) return !0; - return !1; - }; - }, - function(t, e, n) { - var r = n(155), - o = n(298), - i = n(88), - a = - r && 1 / i(new r([, -0]))[1] == 1 / 0 - ? function(t) { - return new r(t); - } - : o; - t.exports = a; - }, - function(t, e) { - t.exports = function() {}; - }, - function(t, e, n) { - var r = n(154), - o = n(25); - t.exports = function(t) { - return o(t) && r(t); - }; - }, - function(t, e, n) {}, - function(t, e, n) {}, - function(t, e, n) {}, - function(t, e, n) { - var r = n(0), - o = n(6); - r({ target: 'Object', stat: !0, forced: !o, sham: !o }, { defineProperty: n(8).f }); - }, - function(t, e, n) { - 'use strict'; - var r = n(20), - o = n(4), - i = [].slice, - a = {}, - u = function(t, e, n) { - if (!(e in a)) { - for (var r = [], o = 0; o < e; o++) r[o] = 'a[' + o + ']'; - a[e] = Function('C,a', 'return new C(' + r.join(',') + ')'); - } - return a[e](t, n); - }; - t.exports = - Function.bind || - function(t) { - var e = r(this), - n = i.call(arguments, 1), - a = function() { - var r = n.concat(i.call(arguments)); - return this instanceof a ? u(e, r.length, r) : e.apply(t, r); - }; - return o(e.prototype) && (a.prototype = e.prototype), a; - }; - }, - function(t, e, n) { - 'use strict'; - n(162); - }, - function(t, e, n) { - 'use strict'; - n(163); - }, - function(t, e, n) { - 'use strict'; - n.r(e); - n(105), n(185), n(193), n(195), n(23), n(65), n(54), n(9), n(27), n(37), n(130); - function r(t, e, n, r, o, i, a) { - try { - var u = t[i](a), - c = u.value; - } catch (t) { - return void n(t); - } - u.done ? e(c) : Promise.resolve(c).then(r, o); - } - function o(t) { - return function() { - var e = this, - n = arguments; - return new Promise(function(o, i) { - var a = t.apply(e, n); - function u(t) { - r(a, o, i, u, c, 'next', t); - } - function c(t) { - r(a, o, i, u, c, 'throw', t); - } - u(void 0); - }); - }; - } - /*! - * Vue.js v2.6.12 - * (c) 2014-2020 Evan You - * Released under the MIT License. - */ var i = Object.freeze({}); - function a(t) { - return null == t; - } - function u(t) { - return null != t; - } - function c(t) { - return !0 === t; - } - function s(t) { - return ( - 'string' == typeof t || - 'number' == typeof t || - 'symbol' == typeof t || - 'boolean' == typeof t - ); - } - function f(t) { - return null !== t && 'object' == typeof t; - } - var l = Object.prototype.toString; - function p(t) { - return '[object Object]' === l.call(t); - } - function h(t) { - return '[object RegExp]' === l.call(t); - } - function d(t) { - var e = parseFloat(String(t)); - return e >= 0 && Math.floor(e) === e && isFinite(t); - } - function v(t) { - return u(t) && 'function' == typeof t.then && 'function' == typeof t.catch; - } - function y(t) { - return null == t - ? '' - : Array.isArray(t) || (p(t) && t.toString === l) - ? JSON.stringify(t, null, 2) - : String(t); - } - function m(t) { - var e = parseFloat(t); - return isNaN(e) ? t : e; - } - function g(t, e) { - for (var n = Object.create(null), r = t.split(','), o = 0; o < r.length; o++) n[r[o]] = !0; - return e - ? function(t) { - return n[t.toLowerCase()]; - } - : function(t) { - return n[t]; - }; - } - g('slot,component', !0); - var b = g('key,ref,slot,slot-scope,is'); - function _(t, e) { - if (t.length) { - var n = t.indexOf(e); - if (n > -1) return t.splice(n, 1); - } - } - var x = Object.prototype.hasOwnProperty; - function w(t, e) { - return x.call(t, e); - } - function O(t) { - var e = Object.create(null); - return function(n) { - return e[n] || (e[n] = t(n)); - }; - } - var S = /-(\w)/g, - j = O(function(t) { - return t.replace(S, function(t, e) { - return e ? e.toUpperCase() : ''; - }); - }), - A = O(function(t) { - return t.charAt(0).toUpperCase() + t.slice(1); - }), - E = /\B([A-Z])/g, - k = O(function(t) { - return t.replace(E, '-$1').toLowerCase(); - }); - var C = Function.prototype.bind - ? function(t, e) { - return t.bind(e); - } - : function(t, e) { - function n(n) { - var r = arguments.length; - return r ? (r > 1 ? t.apply(e, arguments) : t.call(e, n)) : t.call(e); - } - return (n._length = t.length), n; - }; - function $(t, e) { - e = e || 0; - for (var n = t.length - e, r = new Array(n); n--; ) r[n] = t[n + e]; - return r; - } - function P(t, e) { - for (var n in e) t[n] = e[n]; - return t; - } - function T(t) { - for (var e = {}, n = 0; n < t.length; n++) t[n] && P(e, t[n]); - return e; - } - function L(t, e, n) {} - var R = function(t, e, n) { - return !1; - }, - z = function(t) { - return t; - }; - function D(t, e) { - if (t === e) return !0; - var n = f(t), - r = f(e); - if (!n || !r) return !n && !r && String(t) === String(e); - try { - var o = Array.isArray(t), - i = Array.isArray(e); - if (o && i) - return ( - t.length === e.length && - t.every(function(t, n) { - return D(t, e[n]); - }) - ); - if (t instanceof Date && e instanceof Date) return t.getTime() === e.getTime(); - if (o || i) return !1; - var a = Object.keys(t), - u = Object.keys(e); - return ( - a.length === u.length && - a.every(function(n) { - return D(t[n], e[n]); - }) - ); - } catch (t) { - return !1; - } - } - function I(t, e) { - for (var n = 0; n < t.length; n++) if (D(t[n], e)) return n; - return -1; - } - function M(t) { - var e = !1; - return function() { - e || ((e = !0), t.apply(this, arguments)); - }; - } - var N = ['component', 'directive', 'filter'], - U = [ - 'beforeCreate', - 'created', - 'beforeMount', - 'mounted', - 'beforeUpdate', - 'updated', - 'beforeDestroy', - 'destroyed', - 'activated', - 'deactivated', - 'errorCaptured', - 'serverPrefetch', - ], - F = { - optionMergeStrategies: Object.create(null), - silent: !1, - productionTip: !1, - devtools: !1, - performance: !1, - errorHandler: null, - warnHandler: null, - ignoredElements: [], - keyCodes: Object.create(null), - isReservedTag: R, - isReservedAttr: R, - isUnknownElement: R, - getTagNamespace: L, - parsePlatformTagName: z, - mustUseProp: R, - async: !0, - _lifecycleHooks: U, - }, - B = /a-zA-Z\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD/; - function V(t, e, n, r) { - Object.defineProperty(t, e, { value: n, enumerable: !!r, writable: !0, configurable: !0 }); - } - var H = new RegExp('[^' + B.source + '.$_\\d]'); - var q, - W = '__proto__' in {}, - G = 'undefined' != typeof window, - K = 'undefined' != typeof WXEnvironment && !!WXEnvironment.platform, - J = K && WXEnvironment.platform.toLowerCase(), - X = G && window.navigator.userAgent.toLowerCase(), - Q = X && /msie|trident/.test(X), - Y = X && X.indexOf('msie 9.0') > 0, - Z = X && X.indexOf('edge/') > 0, - tt = (X && X.indexOf('android'), (X && /iphone|ipad|ipod|ios/.test(X)) || 'ios' === J), - et = (X && /chrome\/\d+/.test(X), X && /phantomjs/.test(X), X && X.match(/firefox\/(\d+)/)), - nt = {}.watch, - rt = !1; - if (G) - try { - var ot = {}; - Object.defineProperty(ot, 'passive', { - get: function() { - rt = !0; - }, - }), - window.addEventListener('test-passive', null, ot); - } catch (t) {} - var it = function() { - return ( - void 0 === q && - (q = - !G && - !K && - 'undefined' != typeof global && - global.process && 'server' === global.process.env.VUE_ENV), - q - ); - }, - at = G && window.__VUE_DEVTOOLS_GLOBAL_HOOK__; - function ut(t) { - return 'function' == typeof t && /native code/.test(t.toString()); - } - var ct, - st = - 'undefined' != typeof Symbol && - ut(Symbol) && - 'undefined' != typeof Reflect && - ut(Reflect.ownKeys); - ct = - 'undefined' != typeof Set && ut(Set) - ? Set - : (function() { - function t() { - this.set = Object.create(null); - } - return ( - (t.prototype.has = function(t) { - return !0 === this.set[t]; - }), - (t.prototype.add = function(t) { - this.set[t] = !0; - }), - (t.prototype.clear = function() { - this.set = Object.create(null); - }), - t - ); - })(); - var ft = L, - lt = 0, - pt = function() { - (this.id = lt++), (this.subs = []); - }; - (pt.prototype.addSub = function(t) { - this.subs.push(t); - }), - (pt.prototype.removeSub = function(t) { - _(this.subs, t); - }), - (pt.prototype.depend = function() { - pt.target && pt.target.addDep(this); - }), - (pt.prototype.notify = function() { - var t = this.subs.slice(); - for (var e = 0, n = t.length; e < n; e++) t[e].update(); - }), - (pt.target = null); - var ht = []; - function dt(t) { - ht.push(t), (pt.target = t); - } - function vt() { - ht.pop(), (pt.target = ht[ht.length - 1]); - } - var yt = function(t, e, n, r, o, i, a, u) { - (this.tag = t), - (this.data = e), - (this.children = n), - (this.text = r), - (this.elm = o), - (this.ns = void 0), - (this.context = i), - (this.fnContext = void 0), - (this.fnOptions = void 0), - (this.fnScopeId = void 0), - (this.key = e && e.key), - (this.componentOptions = a), - (this.componentInstance = void 0), - (this.parent = void 0), - (this.raw = !1), - (this.isStatic = !1), - (this.isRootInsert = !0), - (this.isComment = !1), - (this.isCloned = !1), - (this.isOnce = !1), - (this.asyncFactory = u), - (this.asyncMeta = void 0), - (this.isAsyncPlaceholder = !1); - }, - mt = { child: { configurable: !0 } }; - (mt.child.get = function() { - return this.componentInstance; - }), - Object.defineProperties(yt.prototype, mt); - var gt = function(t) { - void 0 === t && (t = ''); - var e = new yt(); - return (e.text = t), (e.isComment = !0), e; - }; - function bt(t) { - return new yt(void 0, void 0, void 0, String(t)); - } - function _t(t) { - var e = new yt( - t.tag, - t.data, - t.children && t.children.slice(), - t.text, - t.elm, - t.context, - t.componentOptions, - t.asyncFactory, - ); - return ( - (e.ns = t.ns), - (e.isStatic = t.isStatic), - (e.key = t.key), - (e.isComment = t.isComment), - (e.fnContext = t.fnContext), - (e.fnOptions = t.fnOptions), - (e.fnScopeId = t.fnScopeId), - (e.asyncMeta = t.asyncMeta), - (e.isCloned = !0), - e - ); - } - var xt = Array.prototype, - wt = Object.create(xt); - ['push', 'pop', 'shift', 'unshift', 'splice', 'sort', 'reverse'].forEach(function(t) { - var e = xt[t]; - V(wt, t, function() { - for (var n = [], r = arguments.length; r--; ) n[r] = arguments[r]; - var o, - i = e.apply(this, n), - a = this.__ob__; - switch (t) { - case 'push': - case 'unshift': - o = n; - break; - case 'splice': - o = n.slice(2); - } - return o && a.observeArray(o), a.dep.notify(), i; - }); - }); - var Ot = Object.getOwnPropertyNames(wt), - St = !0; - function jt(t) { - St = t; - } - var At = function(t) { - (this.value = t), - (this.dep = new pt()), - (this.vmCount = 0), - V(t, '__ob__', this), - Array.isArray(t) - ? (W - ? (function(t, e) { - t.__proto__ = e; - })(t, wt) - : (function(t, e, n) { - for (var r = 0, o = n.length; r < o; r++) { - var i = n[r]; - V(t, i, e[i]); - } - })(t, wt, Ot), - this.observeArray(t)) - : this.walk(t); - }; - function Et(t, e) { - var n; - if (f(t) && !(t instanceof yt)) - return ( - w(t, '__ob__') && t.__ob__ instanceof At - ? (n = t.__ob__) - : St && - !it() && - (Array.isArray(t) || p(t)) && - Object.isExtensible(t) && - !t._isVue && - (n = new At(t)), - e && n && n.vmCount++, - n - ); - } - function kt(t, e, n, r, o) { - var i = new pt(), - a = Object.getOwnPropertyDescriptor(t, e); - if (!a || !1 !== a.configurable) { - var u = a && a.get, - c = a && a.set; - (u && !c) || 2 !== arguments.length || (n = t[e]); - var s = !o && Et(n); - Object.defineProperty(t, e, { - enumerable: !0, - configurable: !0, - get: function() { - var e = u ? u.call(t) : n; - return pt.target && (i.depend(), s && (s.dep.depend(), Array.isArray(e) && Pt(e))), e; - }, - set: function(e) { - var r = u ? u.call(t) : n; - e === r || - (e != e && r != r) || - (u && !c) || - (c ? c.call(t, e) : (n = e), (s = !o && Et(e)), i.notify()); - }, - }); - } - } - function Ct(t, e, n) { - if (Array.isArray(t) && d(e)) return (t.length = Math.max(t.length, e)), t.splice(e, 1, n), n; - if (e in t && !(e in Object.prototype)) return (t[e] = n), n; - var r = t.__ob__; - return t._isVue || (r && r.vmCount) - ? n - : r - ? (kt(r.value, e, n), r.dep.notify(), n) - : ((t[e] = n), n); - } - function $t(t, e) { - if (Array.isArray(t) && d(e)) t.splice(e, 1); - else { - var n = t.__ob__; - t._isVue || (n && n.vmCount) || (w(t, e) && (delete t[e], n && n.dep.notify())); - } - } - function Pt(t) { - for (var e = void 0, n = 0, r = t.length; n < r; n++) - (e = t[n]) && e.__ob__ && e.__ob__.dep.depend(), Array.isArray(e) && Pt(e); - } - (At.prototype.walk = function(t) { - for (var e = Object.keys(t), n = 0; n < e.length; n++) kt(t, e[n]); - }), - (At.prototype.observeArray = function(t) { - for (var e = 0, n = t.length; e < n; e++) Et(t[e]); - }); - var Tt = F.optionMergeStrategies; - function Lt(t, e) { - if (!e) return t; - for (var n, r, o, i = st ? Reflect.ownKeys(e) : Object.keys(e), a = 0; a < i.length; a++) - '__ob__' !== (n = i[a]) && - ((r = t[n]), (o = e[n]), w(t, n) ? r !== o && p(r) && p(o) && Lt(r, o) : Ct(t, n, o)); - return t; - } - function Rt(t, e, n) { - return n - ? function() { - var r = 'function' == typeof e ? e.call(n, n) : e, - o = 'function' == typeof t ? t.call(n, n) : t; - return r ? Lt(r, o) : o; - } - : e - ? t - ? function() { - return Lt( - 'function' == typeof e ? e.call(this, this) : e, - 'function' == typeof t ? t.call(this, this) : t, - ); - } - : e - : t; - } - function zt(t, e) { - var n = e ? (t ? t.concat(e) : Array.isArray(e) ? e : [e]) : t; - return n - ? (function(t) { - for (var e = [], n = 0; n < t.length; n++) -1 === e.indexOf(t[n]) && e.push(t[n]); - return e; - })(n) - : n; - } - function Dt(t, e, n, r) { - var o = Object.create(t || null); - return e ? P(o, e) : o; - } - (Tt.data = function(t, e, n) { - return n ? Rt(t, e, n) : e && 'function' != typeof e ? t : Rt(t, e); - }), - U.forEach(function(t) { - Tt[t] = zt; - }), - N.forEach(function(t) { - Tt[t + 's'] = Dt; - }), - (Tt.watch = function(t, e, n, r) { - if ((t === nt && (t = void 0), e === nt && (e = void 0), !e)) - return Object.create(t || null); - if (!t) return e; - var o = {}; - for (var i in (P(o, t), e)) { - var a = o[i], - u = e[i]; - a && !Array.isArray(a) && (a = [a]), - (o[i] = a ? a.concat(u) : Array.isArray(u) ? u : [u]); - } - return o; - }), - (Tt.props = Tt.methods = Tt.inject = Tt.computed = function(t, e, n, r) { - if (!t) return e; - var o = Object.create(null); - return P(o, t), e && P(o, e), o; - }), - (Tt.provide = Rt); - var It = function(t, e) { - return void 0 === e ? t : e; - }; - function Mt(t, e, n) { - if ( - ('function' == typeof e && (e = e.options), - (function(t, e) { - var n = t.props; - if (n) { - var r, - o, - i = {}; - if (Array.isArray(n)) - for (r = n.length; r--; ) 'string' == typeof (o = n[r]) && (i[j(o)] = { type: null }); - else if (p(n)) for (var a in n) (o = n[a]), (i[j(a)] = p(o) ? o : { type: o }); - else 0; - t.props = i; - } - })(e), - (function(t, e) { - var n = t.inject; - if (n) { - var r = (t.inject = {}); - if (Array.isArray(n)) for (var o = 0; o < n.length; o++) r[n[o]] = { from: n[o] }; - else if (p(n)) - for (var i in n) { - var a = n[i]; - r[i] = p(a) ? P({ from: i }, a) : { from: a }; - } - else 0; - } - })(e), - (function(t) { - var e = t.directives; - if (e) - for (var n in e) { - var r = e[n]; - 'function' == typeof r && (e[n] = { bind: r, update: r }); - } - })(e), - !e._base && (e.extends && (t = Mt(t, e.extends, n)), e.mixins)) - ) - for (var r = 0, o = e.mixins.length; r < o; r++) t = Mt(t, e.mixins[r], n); - var i, - a = {}; - for (i in t) u(i); - for (i in e) w(t, i) || u(i); - function u(r) { - var o = Tt[r] || It; - a[r] = o(t[r], e[r], n, r); - } - return a; - } - function Nt(t, e, n, r) { - if ('string' == typeof n) { - var o = t[e]; - if (w(o, n)) return o[n]; - var i = j(n); - if (w(o, i)) return o[i]; - var a = A(i); - return w(o, a) ? o[a] : o[n] || o[i] || o[a]; - } - } - function Ut(t, e, n, r) { - var o = e[t], - i = !w(n, t), - a = n[t], - u = Vt(Boolean, o.type); - if (u > -1) - if (i && !w(o, 'default')) a = !1; - else if ('' === a || a === k(t)) { - var c = Vt(String, o.type); - (c < 0 || u < c) && (a = !0); - } - if (void 0 === a) { - a = (function(t, e, n) { - if (!w(e, 'default')) return; - var r = e.default; - 0; - if ( - t && - t.$options.propsData && - void 0 === t.$options.propsData[n] && - void 0 !== t._props[n] - ) - return t._props[n]; - return 'function' == typeof r && 'Function' !== Ft(e.type) ? r.call(t) : r; - })(r, o, t); - var s = St; - jt(!0), Et(a), jt(s); - } - return a; - } - function Ft(t) { - var e = t && t.toString().match(/^\s*function (\w+)/); - return e ? e[1] : ''; - } - function Bt(t, e) { - return Ft(t) === Ft(e); - } - function Vt(t, e) { - if (!Array.isArray(e)) return Bt(e, t) ? 0 : -1; - for (var n = 0, r = e.length; n < r; n++) if (Bt(e[n], t)) return n; - return -1; - } - function Ht(t, e, n) { - dt(); - try { - if (e) - for (var r = e; (r = r.$parent); ) { - var o = r.$options.errorCaptured; - if (o) - for (var i = 0; i < o.length; i++) - try { - if (!1 === o[i].call(r, t, e, n)) return; - } catch (t) { - Wt(t, r, 'errorCaptured hook'); - } - } - Wt(t, e, n); - } finally { - vt(); - } - } - function qt(t, e, n, r, o) { - var i; - try { - (i = n ? t.apply(e, n) : t.call(e)) && - !i._isVue && - v(i) && - !i._handled && - (i.catch(function(t) { - return Ht(t, r, o + ' (Promise/async)'); - }), - (i._handled = !0)); - } catch (t) { - Ht(t, r, o); - } - return i; - } - function Wt(t, e, n) { - if (F.errorHandler) - try { - return F.errorHandler.call(null, t, e, n); - } catch (e) { - e !== t && Gt(e, null, 'config.errorHandler'); - } - Gt(t, e, n); - } - function Gt(t, e, n) { - if ((!G && !K) || 'undefined' == typeof console) throw t; - console.error(t); - } - var Kt, - Jt = !1, - Xt = [], - Qt = !1; - function Yt() { - Qt = !1; - var t = Xt.slice(0); - Xt.length = 0; - for (var e = 0; e < t.length; e++) t[e](); - } - if ('undefined' != typeof Promise && ut(Promise)) { - var Zt = Promise.resolve(); - (Kt = function() { - Zt.then(Yt), tt && setTimeout(L); - }), - (Jt = !0); - } else if ( - Q || - 'undefined' == typeof MutationObserver || - (!ut(MutationObserver) && - '[object MutationObserverConstructor]' !== MutationObserver.toString()) - ) - Kt = - 'undefined' != typeof setImmediate && ut(setImmediate) - ? function() { - setImmediate(Yt); - } - : function() { - setTimeout(Yt, 0); - }; - else { - var te = 1, - ee = new MutationObserver(Yt), - ne = document.createTextNode(String(te)); - ee.observe(ne, { characterData: !0 }), - (Kt = function() { - (te = (te + 1) % 2), (ne.data = String(te)); - }), - (Jt = !0); - } - function re(t, e) { - var n; - if ( - (Xt.push(function() { - if (t) - try { - t.call(e); - } catch (t) { - Ht(t, e, 'nextTick'); - } - else n && n(e); - }), - Qt || ((Qt = !0), Kt()), - !t && 'undefined' != typeof Promise) - ) - return new Promise(function(t) { - n = t; - }); - } - var oe = new ct(); - function ie(t) { - !(function t(e, n) { - var r, - o, - i = Array.isArray(e); - if ((!i && !f(e)) || Object.isFrozen(e) || e instanceof yt) return; - if (e.__ob__) { - var a = e.__ob__.dep.id; - if (n.has(a)) return; - n.add(a); - } - if (i) for (r = e.length; r--; ) t(e[r], n); - else for (o = Object.keys(e), r = o.length; r--; ) t(e[o[r]], n); - })(t, oe), - oe.clear(); - } - var ae = O(function(t) { - var e = '&' === t.charAt(0), - n = '~' === (t = e ? t.slice(1) : t).charAt(0), - r = '!' === (t = n ? t.slice(1) : t).charAt(0); - return { name: (t = r ? t.slice(1) : t), once: n, capture: r, passive: e }; - }); - function ue(t, e) { - function n() { - var t = arguments, - r = n.fns; - if (!Array.isArray(r)) return qt(r, null, arguments, e, 'v-on handler'); - for (var o = r.slice(), i = 0; i < o.length; i++) qt(o[i], null, t, e, 'v-on handler'); - } - return (n.fns = t), n; - } - function ce(t, e, n, r, o, i) { - var u, s, f, l; - for (u in t) - (s = t[u]), - (f = e[u]), - (l = ae(u)), - a(s) || - (a(f) - ? (a(s.fns) && (s = t[u] = ue(s, i)), - c(l.once) && (s = t[u] = o(l.name, s, l.capture)), - n(l.name, s, l.capture, l.passive, l.params)) - : s !== f && ((f.fns = s), (t[u] = f))); - for (u in e) a(t[u]) && r((l = ae(u)).name, e[u], l.capture); - } - function se(t, e, n) { - var r; - t instanceof yt && (t = t.data.hook || (t.data.hook = {})); - var o = t[e]; - function i() { - n.apply(this, arguments), _(r.fns, i); - } - a(o) ? (r = ue([i])) : u(o.fns) && c(o.merged) ? (r = o).fns.push(i) : (r = ue([o, i])), - (r.merged = !0), - (t[e] = r); - } - function fe(t, e, n, r, o) { - if (u(e)) { - if (w(e, n)) return (t[n] = e[n]), o || delete e[n], !0; - if (w(e, r)) return (t[n] = e[r]), o || delete e[r], !0; - } - return !1; - } - function le(t) { - return s(t) - ? [bt(t)] - : Array.isArray(t) - ? (function t(e, n) { - var r, - o, - i, - f, - l = []; - for (r = 0; r < e.length; r++) - a((o = e[r])) || - 'boolean' == typeof o || - ((i = l.length - 1), - (f = l[i]), - Array.isArray(o) - ? o.length > 0 && - (pe((o = t(o, (n || '') + '_' + r))[0]) && - pe(f) && - ((l[i] = bt(f.text + o[0].text)), o.shift()), - l.push.apply(l, o)) - : s(o) - ? pe(f) - ? (l[i] = bt(f.text + o)) - : '' !== o && l.push(bt(o)) - : pe(o) && pe(f) - ? (l[i] = bt(f.text + o.text)) - : (c(e._isVList) && - u(o.tag) && - a(o.key) && - u(n) && - (o.key = '__vlist' + n + '_' + r + '__'), - l.push(o))); - return l; - })(t) - : void 0; - } - function pe(t) { - return u(t) && u(t.text) && !1 === t.isComment; - } - function he(t, e) { - if (t) { - for ( - var n = Object.create(null), r = st ? Reflect.ownKeys(t) : Object.keys(t), o = 0; - o < r.length; - o++ - ) { - var i = r[o]; - if ('__ob__' !== i) { - for (var a = t[i].from, u = e; u; ) { - if (u._provided && w(u._provided, a)) { - n[i] = u._provided[a]; - break; - } - u = u.$parent; - } - if (!u) - if ('default' in t[i]) { - var c = t[i].default; - n[i] = 'function' == typeof c ? c.call(e) : c; - } else 0; - } - } - return n; - } - } - function de(t, e) { - if (!t || !t.length) return {}; - for (var n = {}, r = 0, o = t.length; r < o; r++) { - var i = t[r], - a = i.data; - if ( - (a && a.attrs && a.attrs.slot && delete a.attrs.slot, - (i.context !== e && i.fnContext !== e) || !a || null == a.slot) - ) - (n.default || (n.default = [])).push(i); - else { - var u = a.slot, - c = n[u] || (n[u] = []); - 'template' === i.tag ? c.push.apply(c, i.children || []) : c.push(i); - } - } - for (var s in n) n[s].every(ve) && delete n[s]; - return n; - } - function ve(t) { - return (t.isComment && !t.asyncFactory) || ' ' === t.text; - } - function ye(t, e, n) { - var r, - o = Object.keys(e).length > 0, - a = t ? !!t.$stable : !o, - u = t && t.$key; - if (t) { - if (t._normalized) return t._normalized; - if (a && n && n !== i && u === n.$key && !o && !n.$hasNormal) return n; - for (var c in ((r = {}), t)) t[c] && '$' !== c[0] && (r[c] = me(e, c, t[c])); - } else r = {}; - for (var s in e) s in r || (r[s] = ge(e, s)); - return ( - t && Object.isExtensible(t) && (t._normalized = r), - V(r, '$stable', a), - V(r, '$key', u), - V(r, '$hasNormal', o), - r - ); - } - function me(t, e, n) { - var r = function() { - var t = arguments.length ? n.apply(null, arguments) : n({}); - return (t = t && 'object' == typeof t && !Array.isArray(t) ? [t] : le(t)) && - (0 === t.length || (1 === t.length && t[0].isComment)) - ? void 0 - : t; - }; - return ( - n.proxy && Object.defineProperty(t, e, { get: r, enumerable: !0, configurable: !0 }), r - ); - } - function ge(t, e) { - return function() { - return t[e]; - }; - } - function be(t, e) { - var n, r, o, i, a; - if (Array.isArray(t) || 'string' == typeof t) - for (n = new Array(t.length), r = 0, o = t.length; r < o; r++) n[r] = e(t[r], r); - else if ('number' == typeof t) for (n = new Array(t), r = 0; r < t; r++) n[r] = e(r + 1, r); - else if (f(t)) - if (st && t[Symbol.iterator]) { - n = []; - for (var c = t[Symbol.iterator](), s = c.next(); !s.done; ) - n.push(e(s.value, n.length)), (s = c.next()); - } else - for (i = Object.keys(t), n = new Array(i.length), r = 0, o = i.length; r < o; r++) - (a = i[r]), (n[r] = e(t[a], a, r)); - return u(n) || (n = []), (n._isVList = !0), n; - } - function _e(t, e, n, r) { - var o, - i = this.$scopedSlots[t]; - i ? ((n = n || {}), r && (n = P(P({}, r), n)), (o = i(n) || e)) : (o = this.$slots[t] || e); - var a = n && n.slot; - return a ? this.$createElement('template', { slot: a }, o) : o; - } - function xe(t) { - return Nt(this.$options, 'filters', t) || z; - } - function we(t, e) { - return Array.isArray(t) ? -1 === t.indexOf(e) : t !== e; - } - function Oe(t, e, n, r, o) { - var i = F.keyCodes[e] || n; - return o && r && !F.keyCodes[e] ? we(o, r) : i ? we(i, t) : r ? k(r) !== e : void 0; - } - function Se(t, e, n, r, o) { - if (n) - if (f(n)) { - var i; - Array.isArray(n) && (n = T(n)); - var a = function(a) { - if ('class' === a || 'style' === a || b(a)) i = t; - else { - var u = t.attrs && t.attrs.type; - i = - r || F.mustUseProp(e, u, a) - ? t.domProps || (t.domProps = {}) - : t.attrs || (t.attrs = {}); - } - var c = j(a), - s = k(a); - c in i || - s in i || - ((i[a] = n[a]), - o && - ((t.on || (t.on = {}))['update:' + a] = function(t) { - n[a] = t; - })); - }; - for (var u in n) a(u); - } else; - return t; - } - function je(t, e) { - var n = this._staticTrees || (this._staticTrees = []), - r = n[t]; - return ( - (r && !e) || - Ee( - (r = n[t] = this.$options.staticRenderFns[t].call(this._renderProxy, null, this)), - '__static__' + t, - !1, - ), - r - ); - } - function Ae(t, e, n) { - return Ee(t, '__once__' + e + (n ? '_' + n : ''), !0), t; - } - function Ee(t, e, n) { - if (Array.isArray(t)) - for (var r = 0; r < t.length; r++) - t[r] && 'string' != typeof t[r] && ke(t[r], e + '_' + r, n); - else ke(t, e, n); - } - function ke(t, e, n) { - (t.isStatic = !0), (t.key = e), (t.isOnce = n); - } - function Ce(t, e) { - if (e) - if (p(e)) { - var n = (t.on = t.on ? P({}, t.on) : {}); - for (var r in e) { - var o = n[r], - i = e[r]; - n[r] = o ? [].concat(o, i) : i; - } - } else; - return t; - } - function $e(t, e, n, r) { - e = e || { $stable: !n }; - for (var o = 0; o < t.length; o++) { - var i = t[o]; - Array.isArray(i) ? $e(i, e, n) : i && (i.proxy && (i.fn.proxy = !0), (e[i.key] = i.fn)); - } - return r && (e.$key = r), e; - } - function Pe(t, e) { - for (var n = 0; n < e.length; n += 2) { - var r = e[n]; - 'string' == typeof r && r && (t[e[n]] = e[n + 1]); - } - return t; - } - function Te(t, e) { - return 'string' == typeof t ? e + t : t; - } - function Le(t) { - (t._o = Ae), - (t._n = m), - (t._s = y), - (t._l = be), - (t._t = _e), - (t._q = D), - (t._i = I), - (t._m = je), - (t._f = xe), - (t._k = Oe), - (t._b = Se), - (t._v = bt), - (t._e = gt), - (t._u = $e), - (t._g = Ce), - (t._d = Pe), - (t._p = Te); - } - function Re(t, e, n, r, o) { - var a, - u = this, - s = o.options; - w(r, '_uid') ? ((a = Object.create(r))._original = r) : ((a = r), (r = r._original)); - var f = c(s._compiled), - l = !f; - (this.data = t), - (this.props = e), - (this.children = n), - (this.parent = r), - (this.listeners = t.on || i), - (this.injections = he(s.inject, r)), - (this.slots = function() { - return u.$slots || ye(t.scopedSlots, (u.$slots = de(n, r))), u.$slots; - }), - Object.defineProperty(this, 'scopedSlots', { - enumerable: !0, - get: function() { - return ye(t.scopedSlots, this.slots()); - }, - }), - f && - ((this.$options = s), - (this.$slots = this.slots()), - (this.$scopedSlots = ye(t.scopedSlots, this.$slots))), - s._scopeId - ? (this._c = function(t, e, n, o) { - var i = Fe(a, t, e, n, o, l); - return i && !Array.isArray(i) && ((i.fnScopeId = s._scopeId), (i.fnContext = r)), i; - }) - : (this._c = function(t, e, n, r) { - return Fe(a, t, e, n, r, l); - }); - } - function ze(t, e, n, r, o) { - var i = _t(t); - return ( - (i.fnContext = n), (i.fnOptions = r), e.slot && ((i.data || (i.data = {})).slot = e.slot), i - ); - } - function De(t, e) { - for (var n in e) t[j(n)] = e[n]; - } - Le(Re.prototype); - var Ie = { - init: function(t, e) { - if (t.componentInstance && !t.componentInstance._isDestroyed && t.data.keepAlive) { - var n = t; - Ie.prepatch(n, n); - } else { - (t.componentInstance = (function(t, e) { - var n = { _isComponent: !0, _parentVnode: t, parent: e }, - r = t.data.inlineTemplate; - u(r) && ((n.render = r.render), (n.staticRenderFns = r.staticRenderFns)); - return new t.componentOptions.Ctor(n); - })(t, Qe)).$mount(e ? t.elm : void 0, e); - } - }, - prepatch: function(t, e) { - var n = e.componentOptions; - !(function(t, e, n, r, o) { - 0; - var a = r.data.scopedSlots, - u = t.$scopedSlots, - c = !!( - (a && !a.$stable) || - (u !== i && !u.$stable) || - (a && t.$scopedSlots.$key !== a.$key) - ), - s = !!(o || t.$options._renderChildren || c); - (t.$options._parentVnode = r), (t.$vnode = r), t._vnode && (t._vnode.parent = r); - if ( - ((t.$options._renderChildren = o), - (t.$attrs = r.data.attrs || i), - (t.$listeners = n || i), - e && t.$options.props) - ) { - jt(!1); - for (var f = t._props, l = t.$options._propKeys || [], p = 0; p < l.length; p++) { - var h = l[p], - d = t.$options.props; - f[h] = Ut(h, d, e, t); - } - jt(!0), (t.$options.propsData = e); - } - n = n || i; - var v = t.$options._parentListeners; - (t.$options._parentListeners = n), - Xe(t, n, v), - s && ((t.$slots = de(o, r.context)), t.$forceUpdate()); - 0; - })((e.componentInstance = t.componentInstance), n.propsData, n.listeners, e, n.children); - }, - insert: function(t) { - var e, - n = t.context, - r = t.componentInstance; - r._isMounted || ((r._isMounted = !0), en(r, 'mounted')), - t.data.keepAlive && (n._isMounted ? (((e = r)._inactive = !1), rn.push(e)) : tn(r, !0)); - }, - destroy: function(t) { - var e = t.componentInstance; - e._isDestroyed || - (t.data.keepAlive - ? (function t(e, n) { - if (n && ((e._directInactive = !0), Ze(e))) return; - if (!e._inactive) { - e._inactive = !0; - for (var r = 0; r < e.$children.length; r++) t(e.$children[r]); - en(e, 'deactivated'); - } - })(e, !0) - : e.$destroy()); - }, - }, - Me = Object.keys(Ie); - function Ne(t, e, n, r, o) { - if (!a(t)) { - var s = n.$options._base; - if ((f(t) && (t = s.extend(t)), 'function' == typeof t)) { - var l; - if ( - a(t.cid) && - void 0 === - (t = (function(t, e) { - if (c(t.error) && u(t.errorComp)) return t.errorComp; - if (u(t.resolved)) return t.resolved; - var n = Ve; - n && u(t.owners) && -1 === t.owners.indexOf(n) && t.owners.push(n); - if (c(t.loading) && u(t.loadingComp)) return t.loadingComp; - if (n && !u(t.owners)) { - var r = (t.owners = [n]), - o = !0, - i = null, - s = null; - n.$on('hook:destroyed', function() { - return _(r, n); - }); - var l = function(t) { - for (var e = 0, n = r.length; e < n; e++) r[e].$forceUpdate(); - t && - ((r.length = 0), - null !== i && (clearTimeout(i), (i = null)), - null !== s && (clearTimeout(s), (s = null))); - }, - p = M(function(n) { - (t.resolved = He(n, e)), o ? (r.length = 0) : l(!0); - }), - h = M(function(e) { - u(t.errorComp) && ((t.error = !0), l(!0)); - }), - d = t(p, h); - return ( - f(d) && - (v(d) - ? a(t.resolved) && d.then(p, h) - : v(d.component) && - (d.component.then(p, h), - u(d.error) && (t.errorComp = He(d.error, e)), - u(d.loading) && - ((t.loadingComp = He(d.loading, e)), - 0 === d.delay - ? (t.loading = !0) - : (i = setTimeout(function() { - (i = null), - a(t.resolved) && a(t.error) && ((t.loading = !0), l(!1)); - }, d.delay || 200))), - u(d.timeout) && - (s = setTimeout(function() { - (s = null), a(t.resolved) && h(null); - }, d.timeout)))), - (o = !1), - t.loading ? t.loadingComp : t.resolved - ); - } - })((l = t), s)) - ) - return (function(t, e, n, r, o) { - var i = gt(); - return ( - (i.asyncFactory = t), - (i.asyncMeta = { data: e, context: n, children: r, tag: o }), - i - ); - })(l, e, n, r, o); - (e = e || {}), - Sn(t), - u(e.model) && - (function(t, e) { - var n = (t.model && t.model.prop) || 'value', - r = (t.model && t.model.event) || 'input'; - (e.attrs || (e.attrs = {}))[n] = e.model.value; - var o = e.on || (e.on = {}), - i = o[r], - a = e.model.callback; - u(i) - ? (Array.isArray(i) ? -1 === i.indexOf(a) : i !== a) && (o[r] = [a].concat(i)) - : (o[r] = a); - })(t.options, e); - var p = (function(t, e, n) { - var r = e.options.props; - if (!a(r)) { - var o = {}, - i = t.attrs, - c = t.props; - if (u(i) || u(c)) - for (var s in r) { - var f = k(s); - fe(o, c, s, f, !0) || fe(o, i, s, f, !1); - } - return o; - } - })(e, t); - if (c(t.options.functional)) - return (function(t, e, n, r, o) { - var a = t.options, - c = {}, - s = a.props; - if (u(s)) for (var f in s) c[f] = Ut(f, s, e || i); - else u(n.attrs) && De(c, n.attrs), u(n.props) && De(c, n.props); - var l = new Re(n, c, o, r, t), - p = a.render.call(null, l._c, l); - if (p instanceof yt) return ze(p, n, l.parent, a, l); - if (Array.isArray(p)) { - for (var h = le(p) || [], d = new Array(h.length), v = 0; v < h.length; v++) - d[v] = ze(h[v], n, l.parent, a, l); - return d; - } - })(t, p, e, n, r); - var h = e.on; - if (((e.on = e.nativeOn), c(t.options.abstract))) { - var d = e.slot; - (e = {}), d && (e.slot = d); - } - !(function(t) { - for (var e = t.hook || (t.hook = {}), n = 0; n < Me.length; n++) { - var r = Me[n], - o = e[r], - i = Ie[r]; - o === i || (o && o._merged) || (e[r] = o ? Ue(i, o) : i); - } - })(e); - var y = t.options.name || o; - return new yt( - 'vue-component-' + t.cid + (y ? '-' + y : ''), - e, - void 0, - void 0, - void 0, - n, - { Ctor: t, propsData: p, listeners: h, tag: o, children: r }, - l, - ); - } - } - } - function Ue(t, e) { - var n = function(n, r) { - t(n, r), e(n, r); - }; - return (n._merged = !0), n; - } - function Fe(t, e, n, r, o, i) { - return ( - (Array.isArray(n) || s(n)) && ((o = r), (r = n), (n = void 0)), - c(i) && (o = 2), - (function(t, e, n, r, o) { - if (u(n) && u(n.__ob__)) return gt(); - u(n) && u(n.is) && (e = n.is); - if (!e) return gt(); - 0; - Array.isArray(r) && - 'function' == typeof r[0] && - (((n = n || {}).scopedSlots = { default: r[0] }), (r.length = 0)); - 2 === o - ? (r = le(r)) - : 1 === o && - (r = (function(t) { - for (var e = 0; e < t.length; e++) - if (Array.isArray(t[e])) return Array.prototype.concat.apply([], t); - return t; - })(r)); - var i, s; - if ('string' == typeof e) { - var l; - (s = (t.$vnode && t.$vnode.ns) || F.getTagNamespace(e)), - (i = F.isReservedTag(e) - ? new yt(F.parsePlatformTagName(e), n, r, void 0, void 0, t) - : (n && n.pre) || !u((l = Nt(t.$options, 'components', e))) - ? new yt(e, n, r, void 0, void 0, t) - : Ne(l, n, t, r, e)); - } else i = Ne(e, n, t, r); - return Array.isArray(i) - ? i - : u(i) - ? (u(s) && - (function t(e, n, r) { - (e.ns = n), 'foreignObject' === e.tag && ((n = void 0), (r = !0)); - if (u(e.children)) - for (var o = 0, i = e.children.length; o < i; o++) { - var s = e.children[o]; - u(s.tag) && (a(s.ns) || (c(r) && 'svg' !== s.tag)) && t(s, n, r); - } - })(i, s), - u(n) && - (function(t) { - f(t.style) && ie(t.style); - f(t.class) && ie(t.class); - })(n), - i) - : gt(); - })(t, e, n, r, o) - ); - } - var Be, - Ve = null; - function He(t, e) { - return ( - (t.__esModule || (st && 'Module' === t[Symbol.toStringTag])) && (t = t.default), - f(t) ? e.extend(t) : t - ); - } - function qe(t) { - return t.isComment && t.asyncFactory; - } - function We(t) { - if (Array.isArray(t)) - for (var e = 0; e < t.length; e++) { - var n = t[e]; - if (u(n) && (u(n.componentOptions) || qe(n))) return n; - } - } - function Ge(t, e) { - Be.$on(t, e); - } - function Ke(t, e) { - Be.$off(t, e); - } - function Je(t, e) { - var n = Be; - return function r() { - var o = e.apply(null, arguments); - null !== o && n.$off(t, r); - }; - } - function Xe(t, e, n) { - (Be = t), ce(e, n || {}, Ge, Ke, Je, t), (Be = void 0); - } - var Qe = null; - function Ye(t) { - var e = Qe; - return ( - (Qe = t), - function() { - Qe = e; - } - ); - } - function Ze(t) { - for (; t && (t = t.$parent); ) if (t._inactive) return !0; - return !1; - } - function tn(t, e) { - if (e) { - if (((t._directInactive = !1), Ze(t))) return; - } else if (t._directInactive) return; - if (t._inactive || null === t._inactive) { - t._inactive = !1; - for (var n = 0; n < t.$children.length; n++) tn(t.$children[n]); - en(t, 'activated'); - } - } - function en(t, e) { - dt(); - var n = t.$options[e], - r = e + ' hook'; - if (n) for (var o = 0, i = n.length; o < i; o++) qt(n[o], t, null, t, r); - t._hasHookEvent && t.$emit('hook:' + e), vt(); - } - var nn = [], - rn = [], - on = {}, - an = !1, - un = !1, - cn = 0; - var sn = 0, - fn = Date.now; - if (G && !Q) { - var ln = window.performance; - ln && - 'function' == typeof ln.now && - fn() > document.createEvent('Event').timeStamp && - (fn = function() { - return ln.now(); - }); - } - function pn() { - var t, e; - for ( - sn = fn(), - un = !0, - nn.sort(function(t, e) { - return t.id - e.id; - }), - cn = 0; - cn < nn.length; - cn++ - ) - (t = nn[cn]).before && t.before(), (e = t.id), (on[e] = null), t.run(); - var n = rn.slice(), - r = nn.slice(); - (cn = nn.length = rn.length = 0), - (on = {}), - (an = un = !1), - (function(t) { - for (var e = 0; e < t.length; e++) (t[e]._inactive = !0), tn(t[e], !0); - })(n), - (function(t) { - var e = t.length; - for (; e--; ) { - var n = t[e], - r = n.vm; - r._watcher === n && r._isMounted && !r._isDestroyed && en(r, 'updated'); - } - })(r), - at && F.devtools && at.emit('flush'); - } - var hn = 0, - dn = function(t, e, n, r, o) { - (this.vm = t), - o && (t._watcher = this), - t._watchers.push(this), - r - ? ((this.deep = !!r.deep), - (this.user = !!r.user), - (this.lazy = !!r.lazy), - (this.sync = !!r.sync), - (this.before = r.before)) - : (this.deep = this.user = this.lazy = this.sync = !1), - (this.cb = n), - (this.id = ++hn), - (this.active = !0), - (this.dirty = this.lazy), - (this.deps = []), - (this.newDeps = []), - (this.depIds = new ct()), - (this.newDepIds = new ct()), - (this.expression = ''), - 'function' == typeof e - ? (this.getter = e) - : ((this.getter = (function(t) { - if (!H.test(t)) { - var e = t.split('.'); - return function(t) { - for (var n = 0; n < e.length; n++) { - if (!t) return; - t = t[e[n]]; - } - return t; - }; - } - })(e)), - this.getter || (this.getter = L)), - (this.value = this.lazy ? void 0 : this.get()); - }; - (dn.prototype.get = function() { - var t; - dt(this); - var e = this.vm; - try { - t = this.getter.call(e, e); - } catch (t) { - if (!this.user) throw t; - Ht(t, e, 'getter for watcher "' + this.expression + '"'); - } finally { - this.deep && ie(t), vt(), this.cleanupDeps(); - } - return t; - }), - (dn.prototype.addDep = function(t) { - var e = t.id; - this.newDepIds.has(e) || - (this.newDepIds.add(e), this.newDeps.push(t), this.depIds.has(e) || t.addSub(this)); - }), - (dn.prototype.cleanupDeps = function() { - for (var t = this.deps.length; t--; ) { - var e = this.deps[t]; - this.newDepIds.has(e.id) || e.removeSub(this); - } - var n = this.depIds; - (this.depIds = this.newDepIds), - (this.newDepIds = n), - this.newDepIds.clear(), - (n = this.deps), - (this.deps = this.newDeps), - (this.newDeps = n), - (this.newDeps.length = 0); - }), - (dn.prototype.update = function() { - this.lazy - ? (this.dirty = !0) - : this.sync - ? this.run() - : (function(t) { - var e = t.id; - if (null == on[e]) { - if (((on[e] = !0), un)) { - for (var n = nn.length - 1; n > cn && nn[n].id > t.id; ) n--; - nn.splice(n + 1, 0, t); - } else nn.push(t); - an || ((an = !0), re(pn)); - } - })(this); - }), - (dn.prototype.run = function() { - if (this.active) { - var t = this.get(); - if (t !== this.value || f(t) || this.deep) { - var e = this.value; - if (((this.value = t), this.user)) - try { - this.cb.call(this.vm, t, e); - } catch (t) { - Ht(t, this.vm, 'callback for watcher "' + this.expression + '"'); - } - else this.cb.call(this.vm, t, e); - } - } - }), - (dn.prototype.evaluate = function() { - (this.value = this.get()), (this.dirty = !1); - }), - (dn.prototype.depend = function() { - for (var t = this.deps.length; t--; ) this.deps[t].depend(); - }), - (dn.prototype.teardown = function() { - if (this.active) { - this.vm._isBeingDestroyed || _(this.vm._watchers, this); - for (var t = this.deps.length; t--; ) this.deps[t].removeSub(this); - this.active = !1; - } - }); - var vn = { enumerable: !0, configurable: !0, get: L, set: L }; - function yn(t, e, n) { - (vn.get = function() { - return this[e][n]; - }), - (vn.set = function(t) { - this[e][n] = t; - }), - Object.defineProperty(t, n, vn); - } - function mn(t) { - t._watchers = []; - var e = t.$options; - e.props && - (function(t, e) { - var n = t.$options.propsData || {}, - r = (t._props = {}), - o = (t.$options._propKeys = []); - t.$parent && jt(!1); - var i = function(i) { - o.push(i); - var a = Ut(i, e, n, t); - kt(r, i, a), i in t || yn(t, '_props', i); - }; - for (var a in e) i(a); - jt(!0); - })(t, e.props), - e.methods && - (function(t, e) { - t.$options.props; - for (var n in e) t[n] = 'function' != typeof e[n] ? L : C(e[n], t); - })(t, e.methods), - e.data - ? (function(t) { - var e = t.$options.data; - p( - (e = t._data = - 'function' == typeof e - ? (function(t, e) { - dt(); - try { - return t.call(e, e); - } catch (t) { - return Ht(t, e, 'data()'), {}; - } finally { - vt(); - } - })(e, t) - : e || {}), - ) || (e = {}); - var n = Object.keys(e), - r = t.$options.props, - o = (t.$options.methods, n.length); - for (; o--; ) { - var i = n[o]; - 0, - (r && w(r, i)) || - ((a = void 0), - 36 !== (a = (i + '').charCodeAt(0)) && 95 !== a && yn(t, '_data', i)); - } - var a; - Et(e, !0); - })(t) - : Et((t._data = {}), !0), - e.computed && - (function(t, e) { - var n = (t._computedWatchers = Object.create(null)), - r = it(); - for (var o in e) { - var i = e[o], - a = 'function' == typeof i ? i : i.get; - 0, r || (n[o] = new dn(t, a || L, L, gn)), o in t || bn(t, o, i); - } - })(t, e.computed), - e.watch && - e.watch !== nt && - (function(t, e) { - for (var n in e) { - var r = e[n]; - if (Array.isArray(r)) for (var o = 0; o < r.length; o++) wn(t, n, r[o]); - else wn(t, n, r); - } - })(t, e.watch); - } - var gn = { lazy: !0 }; - function bn(t, e, n) { - var r = !it(); - 'function' == typeof n - ? ((vn.get = r ? _n(e) : xn(n)), (vn.set = L)) - : ((vn.get = n.get ? (r && !1 !== n.cache ? _n(e) : xn(n.get)) : L), (vn.set = n.set || L)), - Object.defineProperty(t, e, vn); - } - function _n(t) { - return function() { - var e = this._computedWatchers && this._computedWatchers[t]; - if (e) return e.dirty && e.evaluate(), pt.target && e.depend(), e.value; - }; - } - function xn(t) { - return function() { - return t.call(this, this); - }; - } - function wn(t, e, n, r) { - return ( - p(n) && ((r = n), (n = n.handler)), 'string' == typeof n && (n = t[n]), t.$watch(e, n, r) - ); - } - var On = 0; - function Sn(t) { - var e = t.options; - if (t.super) { - var n = Sn(t.super); - if (n !== t.superOptions) { - t.superOptions = n; - var r = (function(t) { - var e, - n = t.options, - r = t.sealedOptions; - for (var o in n) n[o] !== r[o] && (e || (e = {}), (e[o] = n[o])); - return e; - })(t); - r && P(t.extendOptions, r), - (e = t.options = Mt(n, t.extendOptions)).name && (e.components[e.name] = t); - } - } - return e; - } - function jn(t) { - this._init(t); - } - function An(t) { - t.cid = 0; - var e = 1; - t.extend = function(t) { - t = t || {}; - var n = this, - r = n.cid, - o = t._Ctor || (t._Ctor = {}); - if (o[r]) return o[r]; - var i = t.name || n.options.name; - var a = function(t) { - this._init(t); - }; - return ( - ((a.prototype = Object.create(n.prototype)).constructor = a), - (a.cid = e++), - (a.options = Mt(n.options, t)), - (a.super = n), - a.options.props && - (function(t) { - var e = t.options.props; - for (var n in e) yn(t.prototype, '_props', n); - })(a), - a.options.computed && - (function(t) { - var e = t.options.computed; - for (var n in e) bn(t.prototype, n, e[n]); - })(a), - (a.extend = n.extend), - (a.mixin = n.mixin), - (a.use = n.use), - N.forEach(function(t) { - a[t] = n[t]; - }), - i && (a.options.components[i] = a), - (a.superOptions = n.options), - (a.extendOptions = t), - (a.sealedOptions = P({}, a.options)), - (o[r] = a), - a - ); - }; - } - function En(t) { - return t && (t.Ctor.options.name || t.tag); - } - function kn(t, e) { - return Array.isArray(t) - ? t.indexOf(e) > -1 - : 'string' == typeof t - ? t.split(',').indexOf(e) > -1 - : !!h(t) && t.test(e); - } - function Cn(t, e) { - var n = t.cache, - r = t.keys, - o = t._vnode; - for (var i in n) { - var a = n[i]; - if (a) { - var u = En(a.componentOptions); - u && !e(u) && $n(n, i, r, o); - } - } - } - function $n(t, e, n, r) { - var o = t[e]; - !o || (r && o.tag === r.tag) || o.componentInstance.$destroy(), (t[e] = null), _(n, e); - } - (jn.prototype._init = function(t) { - var e = this; - (e._uid = On++), - (e._isVue = !0), - t && t._isComponent - ? (function(t, e) { - var n = (t.$options = Object.create(t.constructor.options)), - r = e._parentVnode; - (n.parent = e.parent), (n._parentVnode = r); - var o = r.componentOptions; - (n.propsData = o.propsData), - (n._parentListeners = o.listeners), - (n._renderChildren = o.children), - (n._componentTag = o.tag), - e.render && ((n.render = e.render), (n.staticRenderFns = e.staticRenderFns)); - })(e, t) - : (e.$options = Mt(Sn(e.constructor), t || {}, e)), - (e._renderProxy = e), - (e._self = e), - (function(t) { - var e = t.$options, - n = e.parent; - if (n && !e.abstract) { - for (; n.$options.abstract && n.$parent; ) n = n.$parent; - n.$children.push(t); - } - (t.$parent = n), - (t.$root = n ? n.$root : t), - (t.$children = []), - (t.$refs = {}), - (t._watcher = null), - (t._inactive = null), - (t._directInactive = !1), - (t._isMounted = !1), - (t._isDestroyed = !1), - (t._isBeingDestroyed = !1); - })(e), - (function(t) { - (t._events = Object.create(null)), (t._hasHookEvent = !1); - var e = t.$options._parentListeners; - e && Xe(t, e); - })(e), - (function(t) { - (t._vnode = null), (t._staticTrees = null); - var e = t.$options, - n = (t.$vnode = e._parentVnode), - r = n && n.context; - (t.$slots = de(e._renderChildren, r)), - (t.$scopedSlots = i), - (t._c = function(e, n, r, o) { - return Fe(t, e, n, r, o, !1); - }), - (t.$createElement = function(e, n, r, o) { - return Fe(t, e, n, r, o, !0); - }); - var o = n && n.data; - kt(t, '$attrs', (o && o.attrs) || i, null, !0), - kt(t, '$listeners', e._parentListeners || i, null, !0); - })(e), - en(e, 'beforeCreate'), - (function(t) { - var e = he(t.$options.inject, t); - e && - (jt(!1), - Object.keys(e).forEach(function(n) { - kt(t, n, e[n]); - }), - jt(!0)); - })(e), - mn(e), - (function(t) { - var e = t.$options.provide; - e && (t._provided = 'function' == typeof e ? e.call(t) : e); - })(e), - en(e, 'created'), - e.$options.el && e.$mount(e.$options.el); - }), - (function(t) { - var e = { - get: function() { - return this._data; - }, - }, - n = { - get: function() { - return this._props; - }, - }; - Object.defineProperty(t.prototype, '$data', e), - Object.defineProperty(t.prototype, '$props', n), - (t.prototype.$set = Ct), - (t.prototype.$delete = $t), - (t.prototype.$watch = function(t, e, n) { - if (p(e)) return wn(this, t, e, n); - (n = n || {}).user = !0; - var r = new dn(this, t, e, n); - if (n.immediate) - try { - e.call(this, r.value); - } catch (t) { - Ht(t, this, 'callback for immediate watcher "' + r.expression + '"'); - } - return function() { - r.teardown(); - }; - }); - })(jn), - (function(t) { - var e = /^hook:/; - (t.prototype.$on = function(t, n) { - var r = this; - if (Array.isArray(t)) for (var o = 0, i = t.length; o < i; o++) r.$on(t[o], n); - else (r._events[t] || (r._events[t] = [])).push(n), e.test(t) && (r._hasHookEvent = !0); - return r; - }), - (t.prototype.$once = function(t, e) { - var n = this; - function r() { - n.$off(t, r), e.apply(n, arguments); - } - return (r.fn = e), n.$on(t, r), n; - }), - (t.prototype.$off = function(t, e) { - var n = this; - if (!arguments.length) return (n._events = Object.create(null)), n; - if (Array.isArray(t)) { - for (var r = 0, o = t.length; r < o; r++) n.$off(t[r], e); - return n; - } - var i, - a = n._events[t]; - if (!a) return n; - if (!e) return (n._events[t] = null), n; - for (var u = a.length; u--; ) - if ((i = a[u]) === e || i.fn === e) { - a.splice(u, 1); - break; - } - return n; - }), - (t.prototype.$emit = function(t) { - var e = this, - n = e._events[t]; - if (n) { - n = n.length > 1 ? $(n) : n; - for ( - var r = $(arguments, 1), o = 'event handler for "' + t + '"', i = 0, a = n.length; - i < a; - i++ - ) - qt(n[i], e, r, e, o); - } - return e; - }); - })(jn), - (function(t) { - (t.prototype._update = function(t, e) { - var n = this, - r = n.$el, - o = n._vnode, - i = Ye(n); - (n._vnode = t), - (n.$el = o ? n.__patch__(o, t) : n.__patch__(n.$el, t, e, !1)), - i(), - r && (r.__vue__ = null), - n.$el && (n.$el.__vue__ = n), - n.$vnode && n.$parent && n.$vnode === n.$parent._vnode && (n.$parent.$el = n.$el); - }), - (t.prototype.$forceUpdate = function() { - this._watcher && this._watcher.update(); - }), - (t.prototype.$destroy = function() { - var t = this; - if (!t._isBeingDestroyed) { - en(t, 'beforeDestroy'), (t._isBeingDestroyed = !0); - var e = t.$parent; - !e || e._isBeingDestroyed || t.$options.abstract || _(e.$children, t), - t._watcher && t._watcher.teardown(); - for (var n = t._watchers.length; n--; ) t._watchers[n].teardown(); - t._data.__ob__ && t._data.__ob__.vmCount--, - (t._isDestroyed = !0), - t.__patch__(t._vnode, null), - en(t, 'destroyed'), - t.$off(), - t.$el && (t.$el.__vue__ = null), - t.$vnode && (t.$vnode.parent = null); - } - }); - })(jn), - (function(t) { - Le(t.prototype), - (t.prototype.$nextTick = function(t) { - return re(t, this); - }), - (t.prototype._render = function() { - var t, - e = this, - n = e.$options, - r = n.render, - o = n._parentVnode; - o && (e.$scopedSlots = ye(o.data.scopedSlots, e.$slots, e.$scopedSlots)), - (e.$vnode = o); - try { - (Ve = e), (t = r.call(e._renderProxy, e.$createElement)); - } catch (n) { - Ht(n, e, 'render'), (t = e._vnode); - } finally { - Ve = null; - } - return ( - Array.isArray(t) && 1 === t.length && (t = t[0]), - t instanceof yt || (t = gt()), - (t.parent = o), - t - ); - }); - })(jn); - var Pn = [String, RegExp, Array], - Tn = { - KeepAlive: { - name: 'keep-alive', - abstract: !0, - props: { include: Pn, exclude: Pn, max: [String, Number] }, - created: function() { - (this.cache = Object.create(null)), (this.keys = []); - }, - destroyed: function() { - for (var t in this.cache) $n(this.cache, t, this.keys); - }, - mounted: function() { - var t = this; - this.$watch('include', function(e) { - Cn(t, function(t) { - return kn(e, t); - }); - }), - this.$watch('exclude', function(e) { - Cn(t, function(t) { - return !kn(e, t); - }); - }); - }, - render: function() { - var t = this.$slots.default, - e = We(t), - n = e && e.componentOptions; - if (n) { - var r = En(n), - o = this.include, - i = this.exclude; - if ((o && (!r || !kn(o, r))) || (i && r && kn(i, r))) return e; - var a = this.cache, - u = this.keys, - c = null == e.key ? n.Ctor.cid + (n.tag ? '::' + n.tag : '') : e.key; - a[c] - ? ((e.componentInstance = a[c].componentInstance), _(u, c), u.push(c)) - : ((a[c] = e), - u.push(c), - this.max && u.length > parseInt(this.max) && $n(a, u[0], u, this._vnode)), - (e.data.keepAlive = !0); - } - return e || (t && t[0]); - }, - }, - }; - !(function(t) { - var e = { - get: function() { - return F; - }, - }; - Object.defineProperty(t, 'config', e), - (t.util = { warn: ft, extend: P, mergeOptions: Mt, defineReactive: kt }), - (t.set = Ct), - (t.delete = $t), - (t.nextTick = re), - (t.observable = function(t) { - return Et(t), t; - }), - (t.options = Object.create(null)), - N.forEach(function(e) { - t.options[e + 's'] = Object.create(null); - }), - (t.options._base = t), - P(t.options.components, Tn), - (function(t) { - t.use = function(t) { - var e = this._installedPlugins || (this._installedPlugins = []); - if (e.indexOf(t) > -1) return this; - var n = $(arguments, 1); - return ( - n.unshift(this), - 'function' == typeof t.install - ? t.install.apply(t, n) - : 'function' == typeof t && t.apply(null, n), - e.push(t), - this - ); - }; - })(t), - (function(t) { - t.mixin = function(t) { - return (this.options = Mt(this.options, t)), this; - }; - })(t), - An(t), - (function(t) { - N.forEach(function(e) { - t[e] = function(t, n) { - return n - ? ('component' === e && - p(n) && - ((n.name = n.name || t), (n = this.options._base.extend(n))), - 'directive' === e && 'function' == typeof n && (n = { bind: n, update: n }), - (this.options[e + 's'][t] = n), - n) - : this.options[e + 's'][t]; - }; - }); - })(t); - })(jn), - Object.defineProperty(jn.prototype, '$isServer', { get: it }), - Object.defineProperty(jn.prototype, '$ssrContext', { - get: function() { - return this.$vnode && this.$vnode.ssrContext; - }, - }), - Object.defineProperty(jn, 'FunctionalRenderContext', { value: Re }), - (jn.version = '2.6.12'); - var Ln = g('style,class'), - Rn = g('input,textarea,option,select,progress'), - zn = g('contenteditable,draggable,spellcheck'), - Dn = g('events,caret,typing,plaintext-only'), - In = g( - 'allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible', - ), - Mn = 'http://www.w3.org/1999/xlink', - Nn = function(t) { - return ':' === t.charAt(5) && 'xlink' === t.slice(0, 5); - }, - Un = function(t) { - return Nn(t) ? t.slice(6, t.length) : ''; - }, - Fn = function(t) { - return null == t || !1 === t; - }; - function Bn(t) { - for (var e = t.data, n = t, r = t; u(r.componentInstance); ) - (r = r.componentInstance._vnode) && r.data && (e = Vn(r.data, e)); - for (; u((n = n.parent)); ) n && n.data && (e = Vn(e, n.data)); - return (function(t, e) { - if (u(t) || u(e)) return Hn(t, qn(e)); - return ''; - })(e.staticClass, e.class); - } - function Vn(t, e) { - return { - staticClass: Hn(t.staticClass, e.staticClass), - class: u(t.class) ? [t.class, e.class] : e.class, - }; - } - function Hn(t, e) { - return t ? (e ? t + ' ' + e : t) : e || ''; - } - function qn(t) { - return Array.isArray(t) - ? (function(t) { - for (var e, n = '', r = 0, o = t.length; r < o; r++) - u((e = qn(t[r]))) && '' !== e && (n && (n += ' '), (n += e)); - return n; - })(t) - : f(t) - ? (function(t) { - var e = ''; - for (var n in t) t[n] && (e && (e += ' '), (e += n)); - return e; - })(t) - : 'string' == typeof t - ? t - : ''; - } - var Wn = { svg: 'http://www.w3.org/2000/svg', math: 'http://www.w3.org/1998/Math/MathML' }, - Gn = g( - 'html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot', - ), - Kn = g( - 'svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view', - !0, - ), - Jn = function(t) { - return Gn(t) || Kn(t); - }; - var Xn = Object.create(null); - var Qn = g('text,number,password,search,email,tel,url'); - var Yn = Object.freeze({ - createElement: function(t, e) { - var n = document.createElement(t); - return ( - 'select' !== t || - (e.data && - e.data.attrs && - void 0 !== e.data.attrs.multiple && - n.setAttribute('multiple', 'multiple')), - n - ); - }, - createElementNS: function(t, e) { - return document.createElementNS(Wn[t], e); - }, - createTextNode: function(t) { - return document.createTextNode(t); - }, - createComment: function(t) { - return document.createComment(t); - }, - insertBefore: function(t, e, n) { - t.insertBefore(e, n); - }, - removeChild: function(t, e) { - t.removeChild(e); - }, - appendChild: function(t, e) { - t.appendChild(e); - }, - parentNode: function(t) { - return t.parentNode; - }, - nextSibling: function(t) { - return t.nextSibling; - }, - tagName: function(t) { - return t.tagName; - }, - setTextContent: function(t, e) { - t.textContent = e; - }, - setStyleScope: function(t, e) { - t.setAttribute(e, ''); - }, - }), - Zn = { - create: function(t, e) { - tr(e); - }, - update: function(t, e) { - t.data.ref !== e.data.ref && (tr(t, !0), tr(e)); - }, - destroy: function(t) { - tr(t, !0); - }, - }; - function tr(t, e) { - var n = t.data.ref; - if (u(n)) { - var r = t.context, - o = t.componentInstance || t.elm, - i = r.$refs; - e - ? Array.isArray(i[n]) - ? _(i[n], o) - : i[n] === o && (i[n] = void 0) - : t.data.refInFor - ? Array.isArray(i[n]) - ? i[n].indexOf(o) < 0 && i[n].push(o) - : (i[n] = [o]) - : (i[n] = o); - } - } - var er = new yt('', {}, []), - nr = ['create', 'activate', 'update', 'remove', 'destroy']; - function rr(t, e) { - return ( - t.key === e.key && - ((t.tag === e.tag && - t.isComment === e.isComment && - u(t.data) === u(e.data) && - (function(t, e) { - if ('input' !== t.tag) return !0; - var n, - r = u((n = t.data)) && u((n = n.attrs)) && n.type, - o = u((n = e.data)) && u((n = n.attrs)) && n.type; - return r === o || (Qn(r) && Qn(o)); - })(t, e)) || - (c(t.isAsyncPlaceholder) && t.asyncFactory === e.asyncFactory && a(e.asyncFactory.error))) - ); - } - function or(t, e, n) { - var r, - o, - i = {}; - for (r = e; r <= n; ++r) u((o = t[r].key)) && (i[o] = r); - return i; - } - var ir = { - create: ar, - update: ar, - destroy: function(t) { - ar(t, er); - }, - }; - function ar(t, e) { - (t.data.directives || e.data.directives) && - (function(t, e) { - var n, - r, - o, - i = t === er, - a = e === er, - u = cr(t.data.directives, t.context), - c = cr(e.data.directives, e.context), - s = [], - f = []; - for (n in c) - (r = u[n]), - (o = c[n]), - r - ? ((o.oldValue = r.value), - (o.oldArg = r.arg), - fr(o, 'update', e, t), - o.def && o.def.componentUpdated && f.push(o)) - : (fr(o, 'bind', e, t), o.def && o.def.inserted && s.push(o)); - if (s.length) { - var l = function() { - for (var n = 0; n < s.length; n++) fr(s[n], 'inserted', e, t); - }; - i ? se(e, 'insert', l) : l(); - } - f.length && - se(e, 'postpatch', function() { - for (var n = 0; n < f.length; n++) fr(f[n], 'componentUpdated', e, t); - }); - if (!i) for (n in u) c[n] || fr(u[n], 'unbind', t, t, a); - })(t, e); - } - var ur = Object.create(null); - function cr(t, e) { - var n, - r, - o = Object.create(null); - if (!t) return o; - for (n = 0; n < t.length; n++) - (r = t[n]).modifiers || (r.modifiers = ur), - (o[sr(r)] = r), - (r.def = Nt(e.$options, 'directives', r.name)); - return o; - } - function sr(t) { - return t.rawName || t.name + '.' + Object.keys(t.modifiers || {}).join('.'); - } - function fr(t, e, n, r, o) { - var i = t.def && t.def[e]; - if (i) - try { - i(n.elm, t, n, r, o); - } catch (r) { - Ht(r, n.context, 'directive ' + t.name + ' ' + e + ' hook'); - } - } - var lr = [Zn, ir]; - function pr(t, e) { - var n = e.componentOptions; - if (!((u(n) && !1 === n.Ctor.options.inheritAttrs) || (a(t.data.attrs) && a(e.data.attrs)))) { - var r, - o, - i = e.elm, - c = t.data.attrs || {}, - s = e.data.attrs || {}; - for (r in (u(s.__ob__) && (s = e.data.attrs = P({}, s)), s)) - (o = s[r]), c[r] !== o && hr(i, r, o); - for (r in ((Q || Z) && s.value !== c.value && hr(i, 'value', s.value), c)) - a(s[r]) && (Nn(r) ? i.removeAttributeNS(Mn, Un(r)) : zn(r) || i.removeAttribute(r)); - } - } - function hr(t, e, n) { - t.tagName.indexOf('-') > -1 - ? dr(t, e, n) - : In(e) - ? Fn(n) - ? t.removeAttribute(e) - : ((n = 'allowfullscreen' === e && 'EMBED' === t.tagName ? 'true' : e), - t.setAttribute(e, n)) - : zn(e) - ? t.setAttribute( - e, - (function(t, e) { - return Fn(e) || 'false' === e - ? 'false' - : 'contenteditable' === t && Dn(e) - ? e - : 'true'; - })(e, n), - ) - : Nn(e) - ? Fn(n) - ? t.removeAttributeNS(Mn, Un(e)) - : t.setAttributeNS(Mn, e, n) - : dr(t, e, n); - } - function dr(t, e, n) { - if (Fn(n)) t.removeAttribute(e); - else { - if (Q && !Y && 'TEXTAREA' === t.tagName && 'placeholder' === e && '' !== n && !t.__ieph) { - var r = function(e) { - e.stopImmediatePropagation(), t.removeEventListener('input', r); - }; - t.addEventListener('input', r), (t.__ieph = !0); - } - t.setAttribute(e, n); - } - } - var vr = { create: pr, update: pr }; - function yr(t, e) { - var n = e.elm, - r = e.data, - o = t.data; - if (!(a(r.staticClass) && a(r.class) && (a(o) || (a(o.staticClass) && a(o.class))))) { - var i = Bn(e), - c = n._transitionClasses; - u(c) && (i = Hn(i, qn(c))), - i !== n._prevClass && (n.setAttribute('class', i), (n._prevClass = i)); - } - } - var mr, - gr = { create: yr, update: yr }; - function br(t, e, n) { - var r = mr; - return function o() { - var i = e.apply(null, arguments); - null !== i && wr(t, o, n, r); - }; - } - var _r = Jt && !(et && Number(et[1]) <= 53); - function xr(t, e, n, r) { - if (_r) { - var o = sn, - i = e; - e = i._wrapper = function(t) { - if ( - t.target === t.currentTarget || - t.timeStamp >= o || - t.timeStamp <= 0 || - t.target.ownerDocument !== document - ) - return i.apply(this, arguments); - }; - } - mr.addEventListener(t, e, rt ? { capture: n, passive: r } : n); - } - function wr(t, e, n, r) { - (r || mr).removeEventListener(t, e._wrapper || e, n); - } - function Or(t, e) { - if (!a(t.data.on) || !a(e.data.on)) { - var n = e.data.on || {}, - r = t.data.on || {}; - (mr = e.elm), - (function(t) { - if (u(t.__r)) { - var e = Q ? 'change' : 'input'; - (t[e] = [].concat(t.__r, t[e] || [])), delete t.__r; - } - u(t.__c) && ((t.change = [].concat(t.__c, t.change || [])), delete t.__c); - })(n), - ce(n, r, xr, wr, br, e.context), - (mr = void 0); - } - } - var Sr, - jr = { create: Or, update: Or }; - function Ar(t, e) { - if (!a(t.data.domProps) || !a(e.data.domProps)) { - var n, - r, - o = e.elm, - i = t.data.domProps || {}, - c = e.data.domProps || {}; - for (n in (u(c.__ob__) && (c = e.data.domProps = P({}, c)), i)) n in c || (o[n] = ''); - for (n in c) { - if (((r = c[n]), 'textContent' === n || 'innerHTML' === n)) { - if ((e.children && (e.children.length = 0), r === i[n])) continue; - 1 === o.childNodes.length && o.removeChild(o.childNodes[0]); - } - if ('value' === n && 'PROGRESS' !== o.tagName) { - o._value = r; - var s = a(r) ? '' : String(r); - Er(o, s) && (o.value = s); - } else if ('innerHTML' === n && Kn(o.tagName) && a(o.innerHTML)) { - (Sr = Sr || document.createElement('div')).innerHTML = '' + r + ''; - for (var f = Sr.firstChild; o.firstChild; ) o.removeChild(o.firstChild); - for (; f.firstChild; ) o.appendChild(f.firstChild); - } else if (r !== i[n]) - try { - o[n] = r; - } catch (t) {} - } - } - } - function Er(t, e) { - return ( - !t.composing && - ('OPTION' === t.tagName || - (function(t, e) { - var n = !0; - try { - n = document.activeElement !== t; - } catch (t) {} - return n && t.value !== e; - })(t, e) || - (function(t, e) { - var n = t.value, - r = t._vModifiers; - if (u(r)) { - if (r.number) return m(n) !== m(e); - if (r.trim) return n.trim() !== e.trim(); - } - return n !== e; - })(t, e)) - ); - } - var kr = { create: Ar, update: Ar }, - Cr = O(function(t) { - var e = {}, - n = /:(.+)/; - return ( - t.split(/;(?![^(]*\))/g).forEach(function(t) { - if (t) { - var r = t.split(n); - r.length > 1 && (e[r[0].trim()] = r[1].trim()); - } - }), - e - ); - }); - function $r(t) { - var e = Pr(t.style); - return t.staticStyle ? P(t.staticStyle, e) : e; - } - function Pr(t) { - return Array.isArray(t) ? T(t) : 'string' == typeof t ? Cr(t) : t; - } - var Tr, - Lr = /^--/, - Rr = /\s*!important$/, - zr = function(t, e, n) { - if (Lr.test(e)) t.style.setProperty(e, n); - else if (Rr.test(n)) t.style.setProperty(k(e), n.replace(Rr, ''), 'important'); - else { - var r = Ir(e); - if (Array.isArray(n)) for (var o = 0, i = n.length; o < i; o++) t.style[r] = n[o]; - else t.style[r] = n; - } - }, - Dr = ['Webkit', 'Moz', 'ms'], - Ir = O(function(t) { - if (((Tr = Tr || document.createElement('div').style), 'filter' !== (t = j(t)) && t in Tr)) - return t; - for (var e = t.charAt(0).toUpperCase() + t.slice(1), n = 0; n < Dr.length; n++) { - var r = Dr[n] + e; - if (r in Tr) return r; - } - }); - function Mr(t, e) { - var n = e.data, - r = t.data; - if (!(a(n.staticStyle) && a(n.style) && a(r.staticStyle) && a(r.style))) { - var o, - i, - c = e.elm, - s = r.staticStyle, - f = r.normalizedStyle || r.style || {}, - l = s || f, - p = Pr(e.data.style) || {}; - e.data.normalizedStyle = u(p.__ob__) ? P({}, p) : p; - var h = (function(t, e) { - var n, - r = {}; - if (e) - for (var o = t; o.componentInstance; ) - (o = o.componentInstance._vnode) && o.data && (n = $r(o.data)) && P(r, n); - (n = $r(t.data)) && P(r, n); - for (var i = t; (i = i.parent); ) i.data && (n = $r(i.data)) && P(r, n); - return r; - })(e, !0); - for (i in l) a(h[i]) && zr(c, i, ''); - for (i in h) (o = h[i]) !== l[i] && zr(c, i, null == o ? '' : o); - } - } - var Nr = { create: Mr, update: Mr }, - Ur = /\s+/; - function Fr(t, e) { - if (e && (e = e.trim())) - if (t.classList) - e.indexOf(' ') > -1 - ? e.split(Ur).forEach(function(e) { - return t.classList.add(e); - }) - : t.classList.add(e); - else { - var n = ' ' + (t.getAttribute('class') || '') + ' '; - n.indexOf(' ' + e + ' ') < 0 && t.setAttribute('class', (n + e).trim()); - } - } - function Br(t, e) { - if (e && (e = e.trim())) - if (t.classList) - e.indexOf(' ') > -1 - ? e.split(Ur).forEach(function(e) { - return t.classList.remove(e); - }) - : t.classList.remove(e), - t.classList.length || t.removeAttribute('class'); - else { - for ( - var n = ' ' + (t.getAttribute('class') || '') + ' ', r = ' ' + e + ' '; - n.indexOf(r) >= 0; - - ) - n = n.replace(r, ' '); - (n = n.trim()) ? t.setAttribute('class', n) : t.removeAttribute('class'); - } - } - function Vr(t) { - if (t) { - if ('object' == typeof t) { - var e = {}; - return !1 !== t.css && P(e, Hr(t.name || 'v')), P(e, t), e; - } - return 'string' == typeof t ? Hr(t) : void 0; - } - } - var Hr = O(function(t) { - return { - enterClass: t + '-enter', - enterToClass: t + '-enter-to', - enterActiveClass: t + '-enter-active', - leaveClass: t + '-leave', - leaveToClass: t + '-leave-to', - leaveActiveClass: t + '-leave-active', - }; - }), - qr = G && !Y, - Wr = 'transition', - Gr = 'transitionend', - Kr = 'animation', - Jr = 'animationend'; - qr && - (void 0 === window.ontransitionend && - void 0 !== window.onwebkittransitionend && - ((Wr = 'WebkitTransition'), (Gr = 'webkitTransitionEnd')), - void 0 === window.onanimationend && - void 0 !== window.onwebkitanimationend && - ((Kr = 'WebkitAnimation'), (Jr = 'webkitAnimationEnd'))); - var Xr = G - ? window.requestAnimationFrame - ? window.requestAnimationFrame.bind(window) - : setTimeout - : function(t) { - return t(); - }; - function Qr(t) { - Xr(function() { - Xr(t); - }); - } - function Yr(t, e) { - var n = t._transitionClasses || (t._transitionClasses = []); - n.indexOf(e) < 0 && (n.push(e), Fr(t, e)); - } - function Zr(t, e) { - t._transitionClasses && _(t._transitionClasses, e), Br(t, e); - } - function to(t, e, n) { - var r = no(t, e), - o = r.type, - i = r.timeout, - a = r.propCount; - if (!o) return n(); - var u = 'transition' === o ? Gr : Jr, - c = 0, - s = function() { - t.removeEventListener(u, f), n(); - }, - f = function(e) { - e.target === t && ++c >= a && s(); - }; - setTimeout(function() { - c < a && s(); - }, i + 1), - t.addEventListener(u, f); - } - var eo = /\b(transform|all)(,|$)/; - function no(t, e) { - var n, - r = window.getComputedStyle(t), - o = (r[Wr + 'Delay'] || '').split(', '), - i = (r[Wr + 'Duration'] || '').split(', '), - a = ro(o, i), - u = (r[Kr + 'Delay'] || '').split(', '), - c = (r[Kr + 'Duration'] || '').split(', '), - s = ro(u, c), - f = 0, - l = 0; - return ( - 'transition' === e - ? a > 0 && ((n = 'transition'), (f = a), (l = i.length)) - : 'animation' === e - ? s > 0 && ((n = 'animation'), (f = s), (l = c.length)) - : (l = (n = (f = Math.max(a, s)) > 0 ? (a > s ? 'transition' : 'animation') : null) - ? 'transition' === n - ? i.length - : c.length - : 0), - { - type: n, - timeout: f, - propCount: l, - hasTransform: 'transition' === n && eo.test(r[Wr + 'Property']), - } - ); - } - function ro(t, e) { - for (; t.length < e.length; ) t = t.concat(t); - return Math.max.apply( - null, - e.map(function(e, n) { - return oo(e) + oo(t[n]); - }), - ); - } - function oo(t) { - return 1e3 * Number(t.slice(0, -1).replace(',', '.')); - } - function io(t, e) { - var n = t.elm; - u(n._leaveCb) && ((n._leaveCb.cancelled = !0), n._leaveCb()); - var r = Vr(t.data.transition); - if (!a(r) && !u(n._enterCb) && 1 === n.nodeType) { - for ( - var o = r.css, - i = r.type, - c = r.enterClass, - s = r.enterToClass, - l = r.enterActiveClass, - p = r.appearClass, - h = r.appearToClass, - d = r.appearActiveClass, - v = r.beforeEnter, - y = r.enter, - g = r.afterEnter, - b = r.enterCancelled, - _ = r.beforeAppear, - x = r.appear, - w = r.afterAppear, - O = r.appearCancelled, - S = r.duration, - j = Qe, - A = Qe.$vnode; - A && A.parent; - - ) - (j = A.context), (A = A.parent); - var E = !j._isMounted || !t.isRootInsert; - if (!E || x || '' === x) { - var k = E && p ? p : c, - C = E && d ? d : l, - $ = E && h ? h : s, - P = (E && _) || v, - T = E && 'function' == typeof x ? x : y, - L = (E && w) || g, - R = (E && O) || b, - z = m(f(S) ? S.enter : S); - 0; - var D = !1 !== o && !Y, - I = co(T), - N = (n._enterCb = M(function() { - D && (Zr(n, $), Zr(n, C)), - N.cancelled ? (D && Zr(n, k), R && R(n)) : L && L(n), - (n._enterCb = null); - })); - t.data.show || - se(t, 'insert', function() { - var e = n.parentNode, - r = e && e._pending && e._pending[t.key]; - r && r.tag === t.tag && r.elm._leaveCb && r.elm._leaveCb(), T && T(n, N); - }), - P && P(n), - D && - (Yr(n, k), - Yr(n, C), - Qr(function() { - Zr(n, k), N.cancelled || (Yr(n, $), I || (uo(z) ? setTimeout(N, z) : to(n, i, N))); - })), - t.data.show && (e && e(), T && T(n, N)), - D || I || N(); - } - } - } - function ao(t, e) { - var n = t.elm; - u(n._enterCb) && ((n._enterCb.cancelled = !0), n._enterCb()); - var r = Vr(t.data.transition); - if (a(r) || 1 !== n.nodeType) return e(); - if (!u(n._leaveCb)) { - var o = r.css, - i = r.type, - c = r.leaveClass, - s = r.leaveToClass, - l = r.leaveActiveClass, - p = r.beforeLeave, - h = r.leave, - d = r.afterLeave, - v = r.leaveCancelled, - y = r.delayLeave, - g = r.duration, - b = !1 !== o && !Y, - _ = co(h), - x = m(f(g) ? g.leave : g); - 0; - var w = (n._leaveCb = M(function() { - n.parentNode && n.parentNode._pending && (n.parentNode._pending[t.key] = null), - b && (Zr(n, s), Zr(n, l)), - w.cancelled ? (b && Zr(n, c), v && v(n)) : (e(), d && d(n)), - (n._leaveCb = null); - })); - y ? y(O) : O(); - } - function O() { - w.cancelled || - (!t.data.show && - n.parentNode && - ((n.parentNode._pending || (n.parentNode._pending = {}))[t.key] = t), - p && p(n), - b && - (Yr(n, c), - Yr(n, l), - Qr(function() { - Zr(n, c), w.cancelled || (Yr(n, s), _ || (uo(x) ? setTimeout(w, x) : to(n, i, w))); - })), - h && h(n, w), - b || _ || w()); - } - } - function uo(t) { - return 'number' == typeof t && !isNaN(t); - } - function co(t) { - if (a(t)) return !1; - var e = t.fns; - return u(e) ? co(Array.isArray(e) ? e[0] : e) : (t._length || t.length) > 1; - } - function so(t, e) { - !0 !== e.data.show && io(e); - } - var fo = (function(t) { - var e, - n, - r = {}, - o = t.modules, - i = t.nodeOps; - for (e = 0; e < nr.length; ++e) - for (r[nr[e]] = [], n = 0; n < o.length; ++n) u(o[n][nr[e]]) && r[nr[e]].push(o[n][nr[e]]); - function f(t) { - var e = i.parentNode(t); - u(e) && i.removeChild(e, t); - } - function l(t, e, n, o, a, s, f) { - if ( - (u(t.elm) && u(s) && (t = s[f] = _t(t)), - (t.isRootInsert = !a), - !(function(t, e, n, o) { - var i = t.data; - if (u(i)) { - var a = u(t.componentInstance) && i.keepAlive; - if ((u((i = i.hook)) && u((i = i.init)) && i(t, !1), u(t.componentInstance))) - return ( - p(t, e), - h(n, t.elm, o), - c(a) && - (function(t, e, n, o) { - var i, - a = t; - for (; a.componentInstance; ) - if ( - ((a = a.componentInstance._vnode), - u((i = a.data)) && u((i = i.transition))) - ) { - for (i = 0; i < r.activate.length; ++i) r.activate[i](er, a); - e.push(a); - break; - } - h(n, t.elm, o); - })(t, e, n, o), - !0 - ); - } - })(t, e, n, o)) - ) { - var l = t.data, - v = t.children, - g = t.tag; - u(g) - ? ((t.elm = t.ns ? i.createElementNS(t.ns, g) : i.createElement(g, t)), - m(t), - d(t, v, e), - u(l) && y(t, e), - h(n, t.elm, o)) - : c(t.isComment) - ? ((t.elm = i.createComment(t.text)), h(n, t.elm, o)) - : ((t.elm = i.createTextNode(t.text)), h(n, t.elm, o)); - } - } - function p(t, e) { - u(t.data.pendingInsert) && - (e.push.apply(e, t.data.pendingInsert), (t.data.pendingInsert = null)), - (t.elm = t.componentInstance.$el), - v(t) ? (y(t, e), m(t)) : (tr(t), e.push(t)); - } - function h(t, e, n) { - u(t) && (u(n) ? i.parentNode(n) === t && i.insertBefore(t, e, n) : i.appendChild(t, e)); - } - function d(t, e, n) { - if (Array.isArray(e)) { - 0; - for (var r = 0; r < e.length; ++r) l(e[r], n, t.elm, null, !0, e, r); - } else s(t.text) && i.appendChild(t.elm, i.createTextNode(String(t.text))); - } - function v(t) { - for (; t.componentInstance; ) t = t.componentInstance._vnode; - return u(t.tag); - } - function y(t, n) { - for (var o = 0; o < r.create.length; ++o) r.create[o](er, t); - u((e = t.data.hook)) && (u(e.create) && e.create(er, t), u(e.insert) && n.push(t)); - } - function m(t) { - var e; - if (u((e = t.fnScopeId))) i.setStyleScope(t.elm, e); - else - for (var n = t; n; ) - u((e = n.context)) && u((e = e.$options._scopeId)) && i.setStyleScope(t.elm, e), - (n = n.parent); - u((e = Qe)) && - e !== t.context && - e !== t.fnContext && - u((e = e.$options._scopeId)) && - i.setStyleScope(t.elm, e); - } - function b(t, e, n, r, o, i) { - for (; r <= o; ++r) l(n[r], i, t, e, !1, n, r); - } - function _(t) { - var e, - n, - o = t.data; - if (u(o)) - for (u((e = o.hook)) && u((e = e.destroy)) && e(t), e = 0; e < r.destroy.length; ++e) - r.destroy[e](t); - if (u((e = t.children))) for (n = 0; n < t.children.length; ++n) _(t.children[n]); - } - function x(t, e, n) { - for (; e <= n; ++e) { - var r = t[e]; - u(r) && (u(r.tag) ? (w(r), _(r)) : f(r.elm)); - } - } - function w(t, e) { - if (u(e) || u(t.data)) { - var n, - o = r.remove.length + 1; - for ( - u(e) - ? (e.listeners += o) - : (e = (function(t, e) { - function n() { - 0 == --n.listeners && f(t); - } - return (n.listeners = e), n; - })(t.elm, o)), - u((n = t.componentInstance)) && u((n = n._vnode)) && u(n.data) && w(n, e), - n = 0; - n < r.remove.length; - ++n - ) - r.remove[n](t, e); - u((n = t.data.hook)) && u((n = n.remove)) ? n(t, e) : e(); - } else f(t.elm); - } - function O(t, e, n, r) { - for (var o = n; o < r; o++) { - var i = e[o]; - if (u(i) && rr(t, i)) return o; - } - } - function S(t, e, n, o, s, f) { - if (t !== e) { - u(e.elm) && u(o) && (e = o[s] = _t(e)); - var p = (e.elm = t.elm); - if (c(t.isAsyncPlaceholder)) - u(e.asyncFactory.resolved) ? E(t.elm, e, n) : (e.isAsyncPlaceholder = !0); - else if ( - c(e.isStatic) && - c(t.isStatic) && - e.key === t.key && - (c(e.isCloned) || c(e.isOnce)) - ) - e.componentInstance = t.componentInstance; - else { - var h, - d = e.data; - u(d) && u((h = d.hook)) && u((h = h.prepatch)) && h(t, e); - var y = t.children, - m = e.children; - if (u(d) && v(e)) { - for (h = 0; h < r.update.length; ++h) r.update[h](t, e); - u((h = d.hook)) && u((h = h.update)) && h(t, e); - } - a(e.text) - ? u(y) && u(m) - ? y !== m && - (function(t, e, n, r, o) { - var c, - s, - f, - p = 0, - h = 0, - d = e.length - 1, - v = e[0], - y = e[d], - m = n.length - 1, - g = n[0], - _ = n[m], - w = !o; - for (0; p <= d && h <= m; ) - a(v) - ? (v = e[++p]) - : a(y) - ? (y = e[--d]) - : rr(v, g) - ? (S(v, g, r, n, h), (v = e[++p]), (g = n[++h])) - : rr(y, _) - ? (S(y, _, r, n, m), (y = e[--d]), (_ = n[--m])) - : rr(v, _) - ? (S(v, _, r, n, m), - w && i.insertBefore(t, v.elm, i.nextSibling(y.elm)), - (v = e[++p]), - (_ = n[--m])) - : rr(y, g) - ? (S(y, g, r, n, h), - w && i.insertBefore(t, y.elm, v.elm), - (y = e[--d]), - (g = n[++h])) - : (a(c) && (c = or(e, p, d)), - a((s = u(g.key) ? c[g.key] : O(g, e, p, d))) - ? l(g, r, t, v.elm, !1, n, h) - : rr((f = e[s]), g) - ? (S(f, g, r, n, h), - (e[s] = void 0), - w && i.insertBefore(t, f.elm, v.elm)) - : l(g, r, t, v.elm, !1, n, h), - (g = n[++h])); - p > d - ? b(t, a(n[m + 1]) ? null : n[m + 1].elm, n, h, m, r) - : h > m && x(e, p, d); - })(p, y, m, n, f) - : u(m) - ? (u(t.text) && i.setTextContent(p, ''), b(p, null, m, 0, m.length - 1, n)) - : u(y) - ? x(y, 0, y.length - 1) - : u(t.text) && i.setTextContent(p, '') - : t.text !== e.text && i.setTextContent(p, e.text), - u(d) && u((h = d.hook)) && u((h = h.postpatch)) && h(t, e); - } - } - } - function j(t, e, n) { - if (c(n) && u(t.parent)) t.parent.data.pendingInsert = e; - else for (var r = 0; r < e.length; ++r) e[r].data.hook.insert(e[r]); - } - var A = g('attrs,class,staticClass,staticStyle,key'); - function E(t, e, n, r) { - var o, - i = e.tag, - a = e.data, - s = e.children; - if (((r = r || (a && a.pre)), (e.elm = t), c(e.isComment) && u(e.asyncFactory))) - return (e.isAsyncPlaceholder = !0), !0; - if (u(a) && (u((o = a.hook)) && u((o = o.init)) && o(e, !0), u((o = e.componentInstance)))) - return p(e, n), !0; - if (u(i)) { - if (u(s)) - if (t.hasChildNodes()) - if (u((o = a)) && u((o = o.domProps)) && u((o = o.innerHTML))) { - if (o !== t.innerHTML) return !1; - } else { - for (var f = !0, l = t.firstChild, h = 0; h < s.length; h++) { - if (!l || !E(l, s[h], n, r)) { - f = !1; - break; - } - l = l.nextSibling; - } - if (!f || l) return !1; - } - else d(e, s, n); - if (u(a)) { - var v = !1; - for (var m in a) - if (!A(m)) { - (v = !0), y(e, n); - break; - } - !v && a.class && ie(a.class); - } - } else t.data !== e.text && (t.data = e.text); - return !0; - } - return function(t, e, n, o) { - if (!a(e)) { - var s, - f = !1, - p = []; - if (a(t)) (f = !0), l(e, p); - else { - var h = u(t.nodeType); - if (!h && rr(t, e)) S(t, e, p, null, null, o); - else { - if (h) { - if ( - (1 === t.nodeType && - t.hasAttribute('data-server-rendered') && - (t.removeAttribute('data-server-rendered'), (n = !0)), - c(n) && E(t, e, p)) - ) - return j(e, p, !0), t; - (s = t), (t = new yt(i.tagName(s).toLowerCase(), {}, [], void 0, s)); - } - var d = t.elm, - y = i.parentNode(d); - if ((l(e, p, d._leaveCb ? null : y, i.nextSibling(d)), u(e.parent))) - for (var m = e.parent, g = v(e); m; ) { - for (var b = 0; b < r.destroy.length; ++b) r.destroy[b](m); - if (((m.elm = e.elm), g)) { - for (var w = 0; w < r.create.length; ++w) r.create[w](er, m); - var O = m.data.hook.insert; - if (O.merged) for (var A = 1; A < O.fns.length; A++) O.fns[A](); - } else tr(m); - m = m.parent; - } - u(y) ? x([t], 0, 0) : u(t.tag) && _(t); - } - } - return j(e, p, f), e.elm; - } - u(t) && _(t); - }; - })({ - nodeOps: Yn, - modules: [ - vr, - gr, - jr, - kr, - Nr, - G - ? { - create: so, - activate: so, - remove: function(t, e) { - !0 !== t.data.show ? ao(t, e) : e(); - }, - } - : {}, - ].concat(lr), - }); - Y && - document.addEventListener('selectionchange', function() { - var t = document.activeElement; - t && t.vmodel && bo(t, 'input'); - }); - var lo = { - inserted: function(t, e, n, r) { - 'select' === n.tag - ? (r.elm && !r.elm._vOptions - ? se(n, 'postpatch', function() { - lo.componentUpdated(t, e, n); - }) - : po(t, e, n.context), - (t._vOptions = [].map.call(t.options, yo))) - : ('textarea' === n.tag || Qn(t.type)) && - ((t._vModifiers = e.modifiers), - e.modifiers.lazy || - (t.addEventListener('compositionstart', mo), - t.addEventListener('compositionend', go), - t.addEventListener('change', go), - Y && (t.vmodel = !0))); - }, - componentUpdated: function(t, e, n) { - if ('select' === n.tag) { - po(t, e, n.context); - var r = t._vOptions, - o = (t._vOptions = [].map.call(t.options, yo)); - if ( - o.some(function(t, e) { - return !D(t, r[e]); - }) - ) - (t.multiple - ? e.value.some(function(t) { - return vo(t, o); - }) - : e.value !== e.oldValue && vo(e.value, o)) && bo(t, 'change'); - } - }, - }; - function po(t, e, n) { - ho(t, e, n), - (Q || Z) && - setTimeout(function() { - ho(t, e, n); - }, 0); - } - function ho(t, e, n) { - var r = e.value, - o = t.multiple; - if (!o || Array.isArray(r)) { - for (var i, a, u = 0, c = t.options.length; u < c; u++) - if (((a = t.options[u]), o)) (i = I(r, yo(a)) > -1), a.selected !== i && (a.selected = i); - else if (D(yo(a), r)) return void (t.selectedIndex !== u && (t.selectedIndex = u)); - o || (t.selectedIndex = -1); - } - } - function vo(t, e) { - return e.every(function(e) { - return !D(e, t); - }); - } - function yo(t) { - return '_value' in t ? t._value : t.value; - } - function mo(t) { - t.target.composing = !0; - } - function go(t) { - t.target.composing && ((t.target.composing = !1), bo(t.target, 'input')); - } - function bo(t, e) { - var n = document.createEvent('HTMLEvents'); - n.initEvent(e, !0, !0), t.dispatchEvent(n); - } - function _o(t) { - return !t.componentInstance || (t.data && t.data.transition) - ? t - : _o(t.componentInstance._vnode); - } - var xo = { - model: lo, - show: { - bind: function(t, e, n) { - var r = e.value, - o = (n = _o(n)).data && n.data.transition, - i = (t.__vOriginalDisplay = 'none' === t.style.display ? '' : t.style.display); - r && o - ? ((n.data.show = !0), - io(n, function() { - t.style.display = i; - })) - : (t.style.display = r ? i : 'none'); - }, - update: function(t, e, n) { - var r = e.value; - !r != !e.oldValue && - ((n = _o(n)).data && n.data.transition - ? ((n.data.show = !0), - r - ? io(n, function() { - t.style.display = t.__vOriginalDisplay; - }) - : ao(n, function() { - t.style.display = 'none'; - })) - : (t.style.display = r ? t.__vOriginalDisplay : 'none')); - }, - unbind: function(t, e, n, r, o) { - o || (t.style.display = t.__vOriginalDisplay); - }, - }, - }, - wo = { - name: String, - appear: Boolean, - css: Boolean, - mode: String, - type: String, - enterClass: String, - leaveClass: String, - enterToClass: String, - leaveToClass: String, - enterActiveClass: String, - leaveActiveClass: String, - appearClass: String, - appearActiveClass: String, - appearToClass: String, - duration: [Number, String, Object], - }; - function Oo(t) { - var e = t && t.componentOptions; - return e && e.Ctor.options.abstract ? Oo(We(e.children)) : t; - } - function So(t) { - var e = {}, - n = t.$options; - for (var r in n.propsData) e[r] = t[r]; - var o = n._parentListeners; - for (var i in o) e[j(i)] = o[i]; - return e; - } - function jo(t, e) { - if (/\d-keep-alive$/.test(e.tag)) - return t('keep-alive', { props: e.componentOptions.propsData }); - } - var Ao = function(t) { - return t.tag || qe(t); - }, - Eo = function(t) { - return 'show' === t.name; - }, - ko = { - name: 'transition', - props: wo, - abstract: !0, - render: function(t) { - var e = this, - n = this.$slots.default; - if (n && (n = n.filter(Ao)).length) { - 0; - var r = this.mode; - 0; - var o = n[0]; - if ( - (function(t) { - for (; (t = t.parent); ) if (t.data.transition) return !0; - })(this.$vnode) - ) - return o; - var i = Oo(o); - if (!i) return o; - if (this._leaving) return jo(t, o); - var a = '__transition-' + this._uid + '-'; - i.key = - null == i.key - ? i.isComment - ? a + 'comment' - : a + i.tag - : s(i.key) - ? 0 === String(i.key).indexOf(a) - ? i.key - : a + i.key - : i.key; - var u = ((i.data || (i.data = {})).transition = So(this)), - c = this._vnode, - f = Oo(c); - if ( - (i.data.directives && i.data.directives.some(Eo) && (i.data.show = !0), - f && - f.data && - !(function(t, e) { - return e.key === t.key && e.tag === t.tag; - })(i, f) && - !qe(f) && - (!f.componentInstance || !f.componentInstance._vnode.isComment)) - ) { - var l = (f.data.transition = P({}, u)); - if ('out-in' === r) - return ( - (this._leaving = !0), - se(l, 'afterLeave', function() { - (e._leaving = !1), e.$forceUpdate(); - }), - jo(t, o) - ); - if ('in-out' === r) { - if (qe(i)) return c; - var p, - h = function() { - p(); - }; - se(u, 'afterEnter', h), - se(u, 'enterCancelled', h), - se(l, 'delayLeave', function(t) { - p = t; - }); - } - } - return o; - } - }, - }, - Co = P({ tag: String, moveClass: String }, wo); - function $o(t) { - t.elm._moveCb && t.elm._moveCb(), t.elm._enterCb && t.elm._enterCb(); - } - function Po(t) { - t.data.newPos = t.elm.getBoundingClientRect(); - } - function To(t) { - var e = t.data.pos, - n = t.data.newPos, - r = e.left - n.left, - o = e.top - n.top; - if (r || o) { - t.data.moved = !0; - var i = t.elm.style; - (i.transform = i.WebkitTransform = 'translate(' + r + 'px,' + o + 'px)'), - (i.transitionDuration = '0s'); - } - } - delete Co.mode; - var Lo = { - Transition: ko, - TransitionGroup: { - props: Co, - beforeMount: function() { - var t = this, - e = this._update; - this._update = function(n, r) { - var o = Ye(t); - t.__patch__(t._vnode, t.kept, !1, !0), (t._vnode = t.kept), o(), e.call(t, n, r); - }; - }, - render: function(t) { - for ( - var e = this.tag || this.$vnode.data.tag || 'span', - n = Object.create(null), - r = (this.prevChildren = this.children), - o = this.$slots.default || [], - i = (this.children = []), - a = So(this), - u = 0; - u < o.length; - u++ - ) { - var c = o[u]; - if (c.tag) - if (null != c.key && 0 !== String(c.key).indexOf('__vlist')) - i.push(c), (n[c.key] = c), ((c.data || (c.data = {})).transition = a); - else; - } - if (r) { - for (var s = [], f = [], l = 0; l < r.length; l++) { - var p = r[l]; - (p.data.transition = a), - (p.data.pos = p.elm.getBoundingClientRect()), - n[p.key] ? s.push(p) : f.push(p); - } - (this.kept = t(e, null, s)), (this.removed = f); - } - return t(e, null, i); - }, - updated: function() { - var t = this.prevChildren, - e = this.moveClass || (this.name || 'v') + '-move'; - t.length && - this.hasMove(t[0].elm, e) && - (t.forEach($o), - t.forEach(Po), - t.forEach(To), - (this._reflow = document.body.offsetHeight), - t.forEach(function(t) { - if (t.data.moved) { - var n = t.elm, - r = n.style; - Yr(n, e), - (r.transform = r.WebkitTransform = r.transitionDuration = ''), - n.addEventListener( - Gr, - (n._moveCb = function t(r) { - (r && r.target !== n) || - (r && !/transform$/.test(r.propertyName)) || - (n.removeEventListener(Gr, t), (n._moveCb = null), Zr(n, e)); - }), - ); - } - })); - }, - methods: { - hasMove: function(t, e) { - if (!qr) return !1; - if (this._hasMove) return this._hasMove; - var n = t.cloneNode(); - t._transitionClasses && - t._transitionClasses.forEach(function(t) { - Br(n, t); - }), - Fr(n, e), - (n.style.display = 'none'), - this.$el.appendChild(n); - var r = no(n); - return this.$el.removeChild(n), (this._hasMove = r.hasTransform); - }, - }, - }, - }; - (jn.config.mustUseProp = function(t, e, n) { - return ( - ('value' === n && Rn(t) && 'button' !== e) || - ('selected' === n && 'option' === t) || - ('checked' === n && 'input' === t) || - ('muted' === n && 'video' === t) - ); - }), - (jn.config.isReservedTag = Jn), - (jn.config.isReservedAttr = Ln), - (jn.config.getTagNamespace = function(t) { - return Kn(t) ? 'svg' : 'math' === t ? 'math' : void 0; - }), - (jn.config.isUnknownElement = function(t) { - if (!G) return !0; - if (Jn(t)) return !1; - if (((t = t.toLowerCase()), null != Xn[t])) return Xn[t]; - var e = document.createElement(t); - return t.indexOf('-') > -1 - ? (Xn[t] = - e.constructor === window.HTMLUnknownElement || e.constructor === window.HTMLElement) - : (Xn[t] = /HTMLUnknownElement/.test(e.toString())); - }), - P(jn.options.directives, xo), - P(jn.options.components, Lo), - (jn.prototype.__patch__ = G ? fo : L), - (jn.prototype.$mount = function(t, e) { - return (function(t, e, n) { - var r; - return ( - (t.$el = e), - t.$options.render || (t.$options.render = gt), - en(t, 'beforeMount'), - (r = function() { - t._update(t._render(), n); - }), - new dn( - t, - r, - L, - { - before: function() { - t._isMounted && !t._isDestroyed && en(t, 'beforeUpdate'); - }, - }, - !0, - ), - (n = !1), - null == t.$vnode && ((t._isMounted = !0), en(t, 'mounted')), - t - ); - })( - this, - (t = - t && G - ? (function(t) { - if ('string' == typeof t) { - var e = document.querySelector(t); - return e || document.createElement('div'); - } - return t; - })(t) - : void 0), - e, - ); - }), - G && - setTimeout(function() { - F.devtools && at && at.emit('init', jn); - }, 0); - var Ro = jn; - /*! - * vue-router v3.4.9 - * (c) 2020 Evan You - * @license MIT - */ function zo(t, e) { - for (var n in e) t[n] = e[n]; - return t; - } - var Do = /[!'()*]/g, - Io = function(t) { - return '%' + t.charCodeAt(0).toString(16); - }, - Mo = /%2C/g, - No = function(t) { - return encodeURIComponent(t) - .replace(Do, Io) - .replace(Mo, ','); - }; - function Uo(t) { - try { - return decodeURIComponent(t); - } catch (t) { - 0; - } - return t; - } - var Fo = function(t) { - return null == t || 'object' == typeof t ? t : String(t); - }; - function Bo(t) { - var e = {}; - return (t = t.trim().replace(/^(\?|#|&)/, '')) - ? (t.split('&').forEach(function(t) { - var n = t.replace(/\+/g, ' ').split('='), - r = Uo(n.shift()), - o = n.length > 0 ? Uo(n.join('=')) : null; - void 0 === e[r] ? (e[r] = o) : Array.isArray(e[r]) ? e[r].push(o) : (e[r] = [e[r], o]); - }), - e) - : e; - } - function Vo(t) { - var e = t - ? Object.keys(t) - .map(function(e) { - var n = t[e]; - if (void 0 === n) return ''; - if (null === n) return No(e); - if (Array.isArray(n)) { - var r = []; - return ( - n.forEach(function(t) { - void 0 !== t && (null === t ? r.push(No(e)) : r.push(No(e) + '=' + No(t))); - }), - r.join('&') - ); - } - return No(e) + '=' + No(n); - }) - .filter(function(t) { - return t.length > 0; - }) - .join('&') - : null; - return e ? '?' + e : ''; - } - var Ho = /\/?$/; - function qo(t, e, n, r) { - var o = r && r.options.stringifyQuery, - i = e.query || {}; - try { - i = Wo(i); - } catch (t) {} - var a = { - name: e.name || (t && t.name), - meta: (t && t.meta) || {}, - path: e.path || '/', - hash: e.hash || '', - query: i, - params: e.params || {}, - fullPath: Jo(e, o), - matched: t ? Ko(t) : [], - }; - return n && (a.redirectedFrom = Jo(n, o)), Object.freeze(a); - } - function Wo(t) { - if (Array.isArray(t)) return t.map(Wo); - if (t && 'object' == typeof t) { - var e = {}; - for (var n in t) e[n] = Wo(t[n]); - return e; - } - return t; - } - var Go = qo(null, { path: '/' }); - function Ko(t) { - for (var e = []; t; ) e.unshift(t), (t = t.parent); - return e; - } - function Jo(t, e) { - var n = t.path, - r = t.query; - void 0 === r && (r = {}); - var o = t.hash; - return void 0 === o && (o = ''), (n || '/') + (e || Vo)(r) + o; - } - function Xo(t, e) { - return e === Go - ? t === e - : !!e && - (t.path && e.path - ? t.path.replace(Ho, '') === e.path.replace(Ho, '') && - t.hash === e.hash && - Qo(t.query, e.query) - : !(!t.name || !e.name) && - t.name === e.name && - t.hash === e.hash && - Qo(t.query, e.query) && - Qo(t.params, e.params)); - } - function Qo(t, e) { - if ((void 0 === t && (t = {}), void 0 === e && (e = {}), !t || !e)) return t === e; - var n = Object.keys(t).sort(), - r = Object.keys(e).sort(); - return ( - n.length === r.length && - n.every(function(n, o) { - var i = t[n]; - if (r[o] !== n) return !1; - var a = e[n]; - return null == i || null == a - ? i === a - : 'object' == typeof i && 'object' == typeof a - ? Qo(i, a) - : String(i) === String(a); - }) - ); - } - function Yo(t) { - for (var e = 0; e < t.matched.length; e++) { - var n = t.matched[e]; - for (var r in n.instances) { - var o = n.instances[r], - i = n.enteredCbs[r]; - if (o && i) { - delete n.enteredCbs[r]; - for (var a = 0; a < i.length; a++) o._isBeingDestroyed || i[a](o); - } - } - } - } - var Zo = { - name: 'RouterView', - functional: !0, - props: { name: { type: String, default: 'default' } }, - render: function(t, e) { - var n = e.props, - r = e.children, - o = e.parent, - i = e.data; - i.routerView = !0; - for ( - var a = o.$createElement, - u = n.name, - c = o.$route, - s = o._routerViewCache || (o._routerViewCache = {}), - f = 0, - l = !1; - o && o._routerRoot !== o; - - ) { - var p = o.$vnode ? o.$vnode.data : {}; - p.routerView && f++, - p.keepAlive && o._directInactive && o._inactive && (l = !0), - (o = o.$parent); - } - if (((i.routerViewDepth = f), l)) { - var h = s[u], - d = h && h.component; - return d ? (h.configProps && ti(d, i, h.route, h.configProps), a(d, i, r)) : a(); - } - var v = c.matched[f], - y = v && v.components[u]; - if (!v || !y) return (s[u] = null), a(); - (s[u] = { component: y }), - (i.registerRouteInstance = function(t, e) { - var n = v.instances[u]; - ((e && n !== t) || (!e && n === t)) && (v.instances[u] = e); - }), - ((i.hook || (i.hook = {})).prepatch = function(t, e) { - v.instances[u] = e.componentInstance; - }), - (i.hook.init = function(t) { - t.data.keepAlive && - t.componentInstance && - t.componentInstance !== v.instances[u] && - (v.instances[u] = t.componentInstance), - Yo(c); - }); - var m = v.props && v.props[u]; - return m && (zo(s[u], { route: c, configProps: m }), ti(y, i, c, m)), a(y, i, r); - }, - }; - function ti(t, e, n, r) { - var o = (e.props = (function(t, e) { - switch (typeof e) { - case 'undefined': - return; - case 'object': - return e; - case 'function': - return e(t); - case 'boolean': - return e ? t.params : void 0; - default: - 0; - } - })(n, r)); - if (o) { - o = e.props = zo({}, o); - var i = (e.attrs = e.attrs || {}); - for (var a in o) (t.props && a in t.props) || ((i[a] = o[a]), delete o[a]); - } - } - function ei(t, e, n) { - var r = t.charAt(0); - if ('/' === r) return t; - if ('?' === r || '#' === r) return e + t; - var o = e.split('/'); - (n && o[o.length - 1]) || o.pop(); - for (var i = t.replace(/^\//, '').split('/'), a = 0; a < i.length; a++) { - var u = i[a]; - '..' === u ? o.pop() : '.' !== u && o.push(u); - } - return '' !== o[0] && o.unshift(''), o.join('/'); - } - function ni(t) { - return t.replace(/\/\//g, '/'); - } - var ri = - Array.isArray || - function(t) { - return '[object Array]' == Object.prototype.toString.call(t); - }, - oi = gi, - ii = fi, - ai = function(t, e) { - return pi(fi(t, e), e); - }, - ui = pi, - ci = mi, - si = new RegExp( - [ - '(\\\\.)', - '([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))', - ].join('|'), - 'g', - ); - function fi(t, e) { - for ( - var n, r = [], o = 0, i = 0, a = '', u = (e && e.delimiter) || '/'; - null != (n = si.exec(t)); - - ) { - var c = n[0], - s = n[1], - f = n.index; - if (((a += t.slice(i, f)), (i = f + c.length), s)) a += s[1]; - else { - var l = t[i], - p = n[2], - h = n[3], - d = n[4], - v = n[5], - y = n[6], - m = n[7]; - a && (r.push(a), (a = '')); - var g = null != p && null != l && l !== p, - b = '+' === y || '*' === y, - _ = '?' === y || '*' === y, - x = n[2] || u, - w = d || v; - r.push({ - name: h || o++, - prefix: p || '', - delimiter: x, - optional: _, - repeat: b, - partial: g, - asterisk: !!m, - pattern: w ? di(w) : m ? '.*' : '[^' + hi(x) + ']+?', - }); - } - } - return i < t.length && (a += t.substr(i)), a && r.push(a), r; - } - function li(t) { - return encodeURI(t).replace(/[\/?#]/g, function(t) { - return ( - '%' + - t - .charCodeAt(0) - .toString(16) - .toUpperCase() - ); - }); - } - function pi(t, e) { - for (var n = new Array(t.length), r = 0; r < t.length; r++) - 'object' == typeof t[r] && (n[r] = new RegExp('^(?:' + t[r].pattern + ')$', yi(e))); - return function(e, r) { - for ( - var o = '', i = e || {}, a = (r || {}).pretty ? li : encodeURIComponent, u = 0; - u < t.length; - u++ - ) { - var c = t[u]; - if ('string' != typeof c) { - var s, - f = i[c.name]; - if (null == f) { - if (c.optional) { - c.partial && (o += c.prefix); - continue; - } - throw new TypeError('Expected "' + c.name + '" to be defined'); - } - if (ri(f)) { - if (!c.repeat) - throw new TypeError( - 'Expected "' + - c.name + - '" to not repeat, but received `' + - JSON.stringify(f) + - '`', - ); - if (0 === f.length) { - if (c.optional) continue; - throw new TypeError('Expected "' + c.name + '" to not be empty'); - } - for (var l = 0; l < f.length; l++) { - if (((s = a(f[l])), !n[u].test(s))) - throw new TypeError( - 'Expected all "' + - c.name + - '" to match "' + - c.pattern + - '", but received `' + - JSON.stringify(s) + - '`', - ); - o += (0 === l ? c.prefix : c.delimiter) + s; - } - } else { - if ( - ((s = c.asterisk - ? encodeURI(f).replace(/[?#]/g, function(t) { - return ( - '%' + - t - .charCodeAt(0) - .toString(16) - .toUpperCase() - ); - }) - : a(f)), - !n[u].test(s)) - ) - throw new TypeError( - 'Expected "' + - c.name + - '" to match "' + - c.pattern + - '", but received "' + - s + - '"', - ); - o += c.prefix + s; - } - } else o += c; - } - return o; - }; - } - function hi(t) { - return t.replace(/([.+*?=^!:${}()[\]|\/\\])/g, '\\$1'); - } - function di(t) { - return t.replace(/([=!:$\/()])/g, '\\$1'); - } - function vi(t, e) { - return (t.keys = e), t; - } - function yi(t) { - return t && t.sensitive ? '' : 'i'; - } - function mi(t, e, n) { - ri(e) || ((n = e || n), (e = [])); - for (var r = (n = n || {}).strict, o = !1 !== n.end, i = '', a = 0; a < t.length; a++) { - var u = t[a]; - if ('string' == typeof u) i += hi(u); - else { - var c = hi(u.prefix), - s = '(?:' + u.pattern + ')'; - e.push(u), - u.repeat && (s += '(?:' + c + s + ')*'), - (i += s = u.optional - ? u.partial - ? c + '(' + s + ')?' - : '(?:' + c + '(' + s + '))?' - : c + '(' + s + ')'); - } - } - var f = hi(n.delimiter || '/'), - l = i.slice(-f.length) === f; - return ( - r || (i = (l ? i.slice(0, -f.length) : i) + '(?:' + f + '(?=$))?'), - (i += o ? '$' : r && l ? '' : '(?=' + f + '|$)'), - vi(new RegExp('^' + i, yi(n)), e) - ); - } - function gi(t, e, n) { - return ( - ri(e) || ((n = e || n), (e = [])), - (n = n || {}), - t instanceof RegExp - ? (function(t, e) { - var n = t.source.match(/\((?!\?)/g); - if (n) - for (var r = 0; r < n.length; r++) - e.push({ - name: r, - prefix: null, - delimiter: null, - optional: !1, - repeat: !1, - partial: !1, - asterisk: !1, - pattern: null, - }); - return vi(t, e); - })(t, e) - : ri(t) - ? (function(t, e, n) { - for (var r = [], o = 0; o < t.length; o++) r.push(gi(t[o], e, n).source); - return vi(new RegExp('(?:' + r.join('|') + ')', yi(n)), e); - })(t, e, n) - : (function(t, e, n) { - return mi(fi(t, n), e, n); - })(t, e, n) - ); - } - (oi.parse = ii), (oi.compile = ai), (oi.tokensToFunction = ui), (oi.tokensToRegExp = ci); - var bi = Object.create(null); - function _i(t, e, n) { - e = e || {}; - try { - var r = bi[t] || (bi[t] = oi.compile(t)); - return 'string' == typeof e.pathMatch && (e[0] = e.pathMatch), r(e, { pretty: !0 }); - } catch (t) { - return ''; - } finally { - delete e[0]; - } - } - function xi(t, e, n, r) { - var o = 'string' == typeof t ? { path: t } : t; - if (o._normalized) return o; - if (o.name) { - var i = (o = zo({}, t)).params; - return i && 'object' == typeof i && (o.params = zo({}, i)), o; - } - if (!o.path && o.params && e) { - (o = zo({}, o))._normalized = !0; - var a = zo(zo({}, e.params), o.params); - if (e.name) (o.name = e.name), (o.params = a); - else if (e.matched.length) { - var u = e.matched[e.matched.length - 1].path; - o.path = _i(u, a, e.path); - } else 0; - return o; - } - var c = (function(t) { - var e = '', - n = '', - r = t.indexOf('#'); - r >= 0 && ((e = t.slice(r)), (t = t.slice(0, r))); - var o = t.indexOf('?'); - return ( - o >= 0 && ((n = t.slice(o + 1)), (t = t.slice(0, o))), { path: t, query: n, hash: e } - ); - })(o.path || ''), - s = (e && e.path) || '/', - f = c.path ? ei(c.path, s, n || o.append) : s, - l = (function(t, e, n) { - void 0 === e && (e = {}); - var r, - o = n || Bo; - try { - r = o(t || ''); - } catch (t) { - r = {}; - } - for (var i in e) { - var a = e[i]; - r[i] = Array.isArray(a) ? a.map(Fo) : Fo(a); - } - return r; - })(c.query, o.query, r && r.options.parseQuery), - p = o.hash || c.hash; - return ( - p && '#' !== p.charAt(0) && (p = '#' + p), { _normalized: !0, path: f, query: l, hash: p } - ); - } - var wi, - Oi = function() {}, - Si = { - name: 'RouterLink', - props: { - to: { type: [String, Object], required: !0 }, - tag: { type: String, default: 'a' }, - exact: Boolean, - append: Boolean, - replace: Boolean, - activeClass: String, - exactActiveClass: String, - ariaCurrentValue: { type: String, default: 'page' }, - event: { type: [String, Array], default: 'click' }, - }, - render: function(t) { - var e = this, - n = this.$router, - r = this.$route, - o = n.resolve(this.to, r, this.append), - i = o.location, - a = o.route, - u = o.href, - c = {}, - s = n.options.linkActiveClass, - f = n.options.linkExactActiveClass, - l = null == s ? 'router-link-active' : s, - p = null == f ? 'router-link-exact-active' : f, - h = null == this.activeClass ? l : this.activeClass, - d = null == this.exactActiveClass ? p : this.exactActiveClass, - v = a.redirectedFrom ? qo(null, xi(a.redirectedFrom), null, n) : a; - (c[d] = Xo(r, v)), - (c[h] = this.exact - ? c[d] - : (function(t, e) { - return ( - 0 === t.path.replace(Ho, '/').indexOf(e.path.replace(Ho, '/')) && - (!e.hash || t.hash === e.hash) && - (function(t, e) { - for (var n in e) if (!(n in t)) return !1; - return !0; - })(t.query, e.query) - ); - })(r, v)); - var y = c[d] ? this.ariaCurrentValue : null, - m = function(t) { - ji(t) && (e.replace ? n.replace(i, Oi) : n.push(i, Oi)); - }, - g = { click: ji }; - Array.isArray(this.event) - ? this.event.forEach(function(t) { - g[t] = m; - }) - : (g[this.event] = m); - var b = { class: c }, - _ = - !this.$scopedSlots.$hasNormal && - this.$scopedSlots.default && - this.$scopedSlots.default({ - href: u, - route: a, - navigate: m, - isActive: c[h], - isExactActive: c[d], - }); - if (_) { - if (1 === _.length) return _[0]; - if (_.length > 1 || !_.length) return 0 === _.length ? t() : t('span', {}, _); - } - if ('a' === this.tag) (b.on = g), (b.attrs = { href: u, 'aria-current': y }); - else { - var x = (function t(e) { - var n; - if (e) - for (var r = 0; r < e.length; r++) { - if ('a' === (n = e[r]).tag) return n; - if (n.children && (n = t(n.children))) return n; - } - })(this.$slots.default); - if (x) { - x.isStatic = !1; - var w = (x.data = zo({}, x.data)); - for (var O in ((w.on = w.on || {}), w.on)) { - var S = w.on[O]; - O in g && (w.on[O] = Array.isArray(S) ? S : [S]); - } - for (var j in g) j in w.on ? w.on[j].push(g[j]) : (w.on[j] = m); - var A = (x.data.attrs = zo({}, x.data.attrs)); - (A.href = u), (A['aria-current'] = y); - } else b.on = g; - } - return t(this.tag, b, this.$slots.default); - }, - }; - function ji(t) { - if ( - !( - t.metaKey || - t.altKey || - t.ctrlKey || - t.shiftKey || - t.defaultPrevented || - (void 0 !== t.button && 0 !== t.button) - ) - ) { - if (t.currentTarget && t.currentTarget.getAttribute) { - var e = t.currentTarget.getAttribute('target'); - if (/\b_blank\b/i.test(e)) return; - } - return t.preventDefault && t.preventDefault(), !0; - } - } - var Ai = 'undefined' != typeof window; - function Ei(t, e, n, r) { - var o = e || [], - i = n || Object.create(null), - a = r || Object.create(null); - t.forEach(function(t) { - !(function t(e, n, r, o, i, a) { - var u = o.path, - c = o.name; - 0; - var s = o.pathToRegexpOptions || {}, - f = (function(t, e, n) { - n || (t = t.replace(/\/$/, '')); - if ('/' === t[0]) return t; - if (null == e) return t; - return ni(e.path + '/' + t); - })(u, i, s.strict); - 'boolean' == typeof o.caseSensitive && (s.sensitive = o.caseSensitive); - var l = { - path: f, - regex: ki(f, s), - components: o.components || { default: o.component }, - instances: {}, - enteredCbs: {}, - name: c, - parent: i, - matchAs: a, - redirect: o.redirect, - beforeEnter: o.beforeEnter, - meta: o.meta || {}, - props: null == o.props ? {} : o.components ? o.props : { default: o.props }, - }; - o.children && - o.children.forEach(function(o) { - var i = a ? ni(a + '/' + o.path) : void 0; - t(e, n, r, o, l, i); - }); - n[l.path] || (e.push(l.path), (n[l.path] = l)); - if (void 0 !== o.alias) - for (var p = Array.isArray(o.alias) ? o.alias : [o.alias], h = 0; h < p.length; ++h) { - 0; - var d = { path: p[h], children: o.children }; - t(e, n, r, d, i, l.path || '/'); - } - c && (r[c] || (r[c] = l)); - })(o, i, a, t); - }); - for (var u = 0, c = o.length; u < c; u++) - '*' === o[u] && (o.push(o.splice(u, 1)[0]), c--, u--); - return { pathList: o, pathMap: i, nameMap: a }; - } - function ki(t, e) { - return oi(t, [], e); - } - function Ci(t, e) { - var n = Ei(t), - r = n.pathList, - o = n.pathMap, - i = n.nameMap; - function a(t, n, a) { - var u = xi(t, n, !1, e), - s = u.name; - if (s) { - var f = i[s]; - if (!f) return c(null, u); - var l = f.regex.keys - .filter(function(t) { - return !t.optional; - }) - .map(function(t) { - return t.name; - }); - if (('object' != typeof u.params && (u.params = {}), n && 'object' == typeof n.params)) - for (var p in n.params) - !(p in u.params) && l.indexOf(p) > -1 && (u.params[p] = n.params[p]); - return (u.path = _i(f.path, u.params)), c(f, u, a); - } - if (u.path) { - u.params = {}; - for (var h = 0; h < r.length; h++) { - var d = r[h], - v = o[d]; - if ($i(v.regex, u.path, u.params)) return c(v, u, a); - } - } - return c(null, u); - } - function u(t, n) { - var r = t.redirect, - o = 'function' == typeof r ? r(qo(t, n, null, e)) : r; - if (('string' == typeof o && (o = { path: o }), !o || 'object' != typeof o)) - return c(null, n); - var u = o, - s = u.name, - f = u.path, - l = n.query, - p = n.hash, - h = n.params; - if ( - ((l = u.hasOwnProperty('query') ? u.query : l), - (p = u.hasOwnProperty('hash') ? u.hash : p), - (h = u.hasOwnProperty('params') ? u.params : h), - s) - ) { - i[s]; - return a({ _normalized: !0, name: s, query: l, hash: p, params: h }, void 0, n); - } - if (f) { - var d = (function(t, e) { - return ei(t, e.parent ? e.parent.path : '/', !0); - })(f, t); - return a({ _normalized: !0, path: _i(d, h), query: l, hash: p }, void 0, n); - } - return c(null, n); - } - function c(t, n, r) { - return t && t.redirect - ? u(t, r || n) - : t && t.matchAs - ? (function(t, e, n) { - var r = a({ _normalized: !0, path: _i(n, e.params) }); - if (r) { - var o = r.matched, - i = o[o.length - 1]; - return (e.params = r.params), c(i, e); - } - return c(null, e); - })(0, n, t.matchAs) - : qo(t, n, r, e); - } - return { - match: a, - addRoutes: function(t) { - Ei(t, r, o, i); - }, - }; - } - function $i(t, e, n) { - var r = e.match(t); - if (!r) return !1; - if (!n) return !0; - for (var o = 1, i = r.length; o < i; ++o) { - var a = t.keys[o - 1]; - a && (n[a.name || 'pathMatch'] = 'string' == typeof r[o] ? Uo(r[o]) : r[o]); - } - return !0; - } - var Pi = Ai && window.performance && window.performance.now ? window.performance : Date; - function Ti() { - return Pi.now().toFixed(3); - } - var Li = Ti(); - function Ri() { - return Li; - } - function zi(t) { - return (Li = t); - } - var Di = Object.create(null); - function Ii() { - 'scrollRestoration' in window.history && (window.history.scrollRestoration = 'manual'); - var t = window.location.protocol + '//' + window.location.host, - e = window.location.href.replace(t, ''), - n = zo({}, window.history.state); - return ( - (n.key = Ri()), - window.history.replaceState(n, '', e), - window.addEventListener('popstate', Ui), - function() { - window.removeEventListener('popstate', Ui); - } - ); - } - function Mi(t, e, n, r) { - if (t.app) { - var o = t.options.scrollBehavior; - o && - t.app.$nextTick(function() { - var i = (function() { - var t = Ri(); - if (t) return Di[t]; - })(), - a = o.call(t, e, n, r ? i : null); - a && - ('function' == typeof a.then - ? a - .then(function(t) { - qi(t, i); - }) - .catch(function(t) { - 0; - }) - : qi(a, i)); - }); - } - } - function Ni() { - var t = Ri(); - t && (Di[t] = { x: window.pageXOffset, y: window.pageYOffset }); - } - function Ui(t) { - Ni(), t.state && t.state.key && zi(t.state.key); - } - function Fi(t) { - return Vi(t.x) || Vi(t.y); - } - function Bi(t) { - return { x: Vi(t.x) ? t.x : window.pageXOffset, y: Vi(t.y) ? t.y : window.pageYOffset }; - } - function Vi(t) { - return 'number' == typeof t; - } - var Hi = /^#\d/; - function qi(t, e) { - var n, - r = 'object' == typeof t; - if (r && 'string' == typeof t.selector) { - var o = Hi.test(t.selector) - ? document.getElementById(t.selector.slice(1)) - : document.querySelector(t.selector); - if (o) { - var i = t.offset && 'object' == typeof t.offset ? t.offset : {}; - e = (function(t, e) { - var n = document.documentElement.getBoundingClientRect(), - r = t.getBoundingClientRect(); - return { x: r.left - n.left - e.x, y: r.top - n.top - e.y }; - })(o, (i = { x: Vi((n = i).x) ? n.x : 0, y: Vi(n.y) ? n.y : 0 })); - } else Fi(t) && (e = Bi(t)); - } else r && Fi(t) && (e = Bi(t)); - e && - ('scrollBehavior' in document.documentElement.style - ? window.scrollTo({ left: e.x, top: e.y, behavior: t.behavior }) - : window.scrollTo(e.x, e.y)); - } - var Wi, - Gi = - Ai && - ((-1 === (Wi = window.navigator.userAgent).indexOf('Android 2.') && - -1 === Wi.indexOf('Android 4.0')) || - -1 === Wi.indexOf('Mobile Safari') || - -1 !== Wi.indexOf('Chrome') || - -1 !== Wi.indexOf('Windows Phone')) && - window.history && - 'function' == typeof window.history.pushState; - function Ki(t, e) { - Ni(); - var n = window.history; - try { - if (e) { - var r = zo({}, n.state); - (r.key = Ri()), n.replaceState(r, '', t); - } else n.pushState({ key: zi(Ti()) }, '', t); - } catch (n) { - window.location[e ? 'replace' : 'assign'](t); - } - } - function Ji(t) { - Ki(t, !0); - } - function Xi(t, e, n) { - var r = function(o) { - o >= t.length - ? n() - : t[o] - ? e(t[o], function() { - r(o + 1); - }) - : r(o + 1); - }; - r(0); - } - var Qi = { redirected: 2, aborted: 4, cancelled: 8, duplicated: 16 }; - function Yi(t, e) { - return ta( - t, - e, - Qi.redirected, - 'Redirected when going from "' + - t.fullPath + - '" to "' + - (function(t) { - if ('string' == typeof t) return t; - if ('path' in t) return t.path; - var e = {}; - return ( - ea.forEach(function(n) { - n in t && (e[n] = t[n]); - }), - JSON.stringify(e, null, 2) - ); - })(e) + - '" via a navigation guard.', - ); - } - function Zi(t, e) { - return ta( - t, - e, - Qi.cancelled, - 'Navigation cancelled from "' + - t.fullPath + - '" to "' + - e.fullPath + - '" with a new navigation.', - ); - } - function ta(t, e, n, r) { - var o = new Error(r); - return (o._isRouter = !0), (o.from = t), (o.to = e), (o.type = n), o; - } - var ea = ['params', 'query', 'hash']; - function na(t) { - return Object.prototype.toString.call(t).indexOf('Error') > -1; - } - function ra(t, e) { - return na(t) && t._isRouter && (null == e || t.type === e); - } - function oa(t) { - return function(e, n, r) { - var o = !1, - i = 0, - a = null; - ia(t, function(t, e, n, u) { - if ('function' == typeof t && void 0 === t.cid) { - (o = !0), i++; - var c, - s = ca(function(e) { - var o; - ((o = e).__esModule || (ua && 'Module' === o[Symbol.toStringTag])) && - (e = e.default), - (t.resolved = 'function' == typeof e ? e : wi.extend(e)), - (n.components[u] = e), - --i <= 0 && r(); - }), - f = ca(function(t) { - var e = 'Failed to resolve async component ' + u + ': ' + t; - a || ((a = na(t) ? t : new Error(e)), r(a)); - }); - try { - c = t(s, f); - } catch (t) { - f(t); - } - if (c) - if ('function' == typeof c.then) c.then(s, f); - else { - var l = c.component; - l && 'function' == typeof l.then && l.then(s, f); - } - } - }), - o || r(); - }; - } - function ia(t, e) { - return aa( - t.map(function(t) { - return Object.keys(t.components).map(function(n) { - return e(t.components[n], t.instances[n], t, n); - }); - }), - ); - } - function aa(t) { - return Array.prototype.concat.apply([], t); - } - var ua = 'function' == typeof Symbol && 'symbol' == typeof Symbol.toStringTag; - function ca(t) { - var e = !1; - return function() { - for (var n = [], r = arguments.length; r--; ) n[r] = arguments[r]; - if (!e) return (e = !0), t.apply(this, n); - }; - } - var sa = function(t, e) { - (this.router = t), - (this.base = (function(t) { - if (!t) - if (Ai) { - var e = document.querySelector('base'); - t = (t = (e && e.getAttribute('href')) || '/').replace(/^https?:\/\/[^\/]+/, ''); - } else t = '/'; - '/' !== t.charAt(0) && (t = '/' + t); - return t.replace(/\/$/, ''); - })(e)), - (this.current = Go), - (this.pending = null), - (this.ready = !1), - (this.readyCbs = []), - (this.readyErrorCbs = []), - (this.errorCbs = []), - (this.listeners = []); - }; - function fa(t, e, n, r) { - var o = ia(t, function(t, r, o, i) { - var a = (function(t, e) { - 'function' != typeof t && (t = wi.extend(t)); - return t.options[e]; - })(t, e); - if (a) - return Array.isArray(a) - ? a.map(function(t) { - return n(t, r, o, i); - }) - : n(a, r, o, i); - }); - return aa(r ? o.reverse() : o); - } - function la(t, e) { - if (e) - return function() { - return t.apply(e, arguments); - }; - } - (sa.prototype.listen = function(t) { - this.cb = t; - }), - (sa.prototype.onReady = function(t, e) { - this.ready ? t() : (this.readyCbs.push(t), e && this.readyErrorCbs.push(e)); - }), - (sa.prototype.onError = function(t) { - this.errorCbs.push(t); - }), - (sa.prototype.transitionTo = function(t, e, n) { - var r, - o = this; - try { - r = this.router.match(t, this.current); - } catch (t) { - throw (this.errorCbs.forEach(function(e) { - e(t); - }), - t); - } - var i = this.current; - this.confirmTransition( - r, - function() { - o.updateRoute(r), - e && e(r), - o.ensureURL(), - o.router.afterHooks.forEach(function(t) { - t && t(r, i); - }), - o.ready || - ((o.ready = !0), - o.readyCbs.forEach(function(t) { - t(r); - })); - }, - function(t) { - n && n(t), - t && - !o.ready && - ((ra(t, Qi.redirected) && i === Go) || - ((o.ready = !0), - o.readyErrorCbs.forEach(function(e) { - e(t); - }))); - }, - ); - }), - (sa.prototype.confirmTransition = function(t, e, n) { - var r = this, - o = this.current; - this.pending = t; - var i, - a, - u = function(t) { - !ra(t) && - na(t) && - (r.errorCbs.length - ? r.errorCbs.forEach(function(e) { - e(t); - }) - : console.error(t)), - n && n(t); - }, - c = t.matched.length - 1, - s = o.matched.length - 1; - if (Xo(t, o) && c === s && t.matched[c] === o.matched[s]) - return ( - this.ensureURL(), - u( - (((a = ta( - (i = o), - t, - Qi.duplicated, - 'Avoided redundant navigation to current location: "' + i.fullPath + '".', - )).name = 'NavigationDuplicated'), - a), - ) - ); - var f = (function(t, e) { - var n, - r = Math.max(t.length, e.length); - for (n = 0; n < r && t[n] === e[n]; n++); - return { updated: e.slice(0, n), activated: e.slice(n), deactivated: t.slice(n) }; - })(this.current.matched, t.matched), - l = f.updated, - p = f.deactivated, - h = f.activated, - d = [].concat( - (function(t) { - return fa(t, 'beforeRouteLeave', la, !0); - })(p), - this.router.beforeHooks, - (function(t) { - return fa(t, 'beforeRouteUpdate', la); - })(l), - h.map(function(t) { - return t.beforeEnter; - }), - oa(h), - ), - v = function(e, n) { - if (r.pending !== t) return u(Zi(o, t)); - try { - e(t, o, function(e) { - !1 === e - ? (r.ensureURL(!0), - u( - (function(t, e) { - return ta( - t, - e, - Qi.aborted, - 'Navigation aborted from "' + - t.fullPath + - '" to "' + - e.fullPath + - '" via a navigation guard.', - ); - })(o, t), - )) - : na(e) - ? (r.ensureURL(!0), u(e)) - : 'string' == typeof e || - ('object' == typeof e && - ('string' == typeof e.path || 'string' == typeof e.name)) - ? (u(Yi(o, t)), 'object' == typeof e && e.replace ? r.replace(e) : r.push(e)) - : n(e); - }); - } catch (t) { - u(t); - } - }; - Xi(d, v, function() { - Xi( - (function(t) { - return fa(t, 'beforeRouteEnter', function(t, e, n, r) { - return (function(t, e, n) { - return function(r, o, i) { - return t(r, o, function(t) { - 'function' == typeof t && - (e.enteredCbs[n] || (e.enteredCbs[n] = []), e.enteredCbs[n].push(t)), - i(t); - }); - }; - })(t, n, r); - }); - })(h).concat(r.router.resolveHooks), - v, - function() { - if (r.pending !== t) return u(Zi(o, t)); - (r.pending = null), - e(t), - r.router.app && - r.router.app.$nextTick(function() { - Yo(t); - }); - }, - ); - }); - }), - (sa.prototype.updateRoute = function(t) { - (this.current = t), this.cb && this.cb(t); - }), - (sa.prototype.setupListeners = function() {}), - (sa.prototype.teardown = function() { - this.listeners.forEach(function(t) { - t(); - }), - (this.listeners = []), - (this.current = Go), - (this.pending = null); - }); - var pa = (function(t) { - function e(e, n) { - t.call(this, e, n), (this._startLocation = ha(this.base)); - } - return ( - t && (e.__proto__ = t), - (e.prototype = Object.create(t && t.prototype)), - (e.prototype.constructor = e), - (e.prototype.setupListeners = function() { - var t = this; - if (!(this.listeners.length > 0)) { - var e = this.router, - n = e.options.scrollBehavior, - r = Gi && n; - r && this.listeners.push(Ii()); - var o = function() { - var n = t.current, - o = ha(t.base); - (t.current === Go && o === t._startLocation) || - t.transitionTo(o, function(t) { - r && Mi(e, t, n, !0); - }); - }; - window.addEventListener('popstate', o), - this.listeners.push(function() { - window.removeEventListener('popstate', o); - }); - } - }), - (e.prototype.go = function(t) { - window.history.go(t); - }), - (e.prototype.push = function(t, e, n) { - var r = this, - o = this.current; - this.transitionTo( - t, - function(t) { - Ki(ni(r.base + t.fullPath)), Mi(r.router, t, o, !1), e && e(t); - }, - n, - ); - }), - (e.prototype.replace = function(t, e, n) { - var r = this, - o = this.current; - this.transitionTo( - t, - function(t) { - Ji(ni(r.base + t.fullPath)), Mi(r.router, t, o, !1), e && e(t); - }, - n, - ); - }), - (e.prototype.ensureURL = function(t) { - if (ha(this.base) !== this.current.fullPath) { - var e = ni(this.base + this.current.fullPath); - t ? Ki(e) : Ji(e); - } - }), - (e.prototype.getCurrentLocation = function() { - return ha(this.base); - }), - e - ); - })(sa); - function ha(t) { - var e = window.location.pathname; - return ( - t && 0 === e.toLowerCase().indexOf(t.toLowerCase()) && (e = e.slice(t.length)), - (e || '/') + window.location.search + window.location.hash - ); - } - var da = (function(t) { - function e(e, n, r) { - t.call(this, e, n), - (r && - (function(t) { - var e = ha(t); - if (!/^\/#/.test(e)) return window.location.replace(ni(t + '/#' + e)), !0; - })(this.base)) || - va(); - } - return ( - t && (e.__proto__ = t), - (e.prototype = Object.create(t && t.prototype)), - (e.prototype.constructor = e), - (e.prototype.setupListeners = function() { - var t = this; - if (!(this.listeners.length > 0)) { - var e = this.router.options.scrollBehavior, - n = Gi && e; - n && this.listeners.push(Ii()); - var r = function() { - var e = t.current; - va() && - t.transitionTo(ya(), function(r) { - n && Mi(t.router, r, e, !0), Gi || ba(r.fullPath); - }); - }, - o = Gi ? 'popstate' : 'hashchange'; - window.addEventListener(o, r), - this.listeners.push(function() { - window.removeEventListener(o, r); - }); - } - }), - (e.prototype.push = function(t, e, n) { - var r = this, - o = this.current; - this.transitionTo( - t, - function(t) { - ga(t.fullPath), Mi(r.router, t, o, !1), e && e(t); - }, - n, - ); - }), - (e.prototype.replace = function(t, e, n) { - var r = this, - o = this.current; - this.transitionTo( - t, - function(t) { - ba(t.fullPath), Mi(r.router, t, o, !1), e && e(t); - }, - n, - ); - }), - (e.prototype.go = function(t) { - window.history.go(t); - }), - (e.prototype.ensureURL = function(t) { - var e = this.current.fullPath; - ya() !== e && (t ? ga(e) : ba(e)); - }), - (e.prototype.getCurrentLocation = function() { - return ya(); - }), - e - ); - })(sa); - function va() { - var t = ya(); - return '/' === t.charAt(0) || (ba('/' + t), !1); - } - function ya() { - var t = window.location.href, - e = t.indexOf('#'); - return e < 0 ? '' : (t = t.slice(e + 1)); - } - function ma(t) { - var e = window.location.href, - n = e.indexOf('#'); - return (n >= 0 ? e.slice(0, n) : e) + '#' + t; - } - function ga(t) { - Gi ? Ki(ma(t)) : (window.location.hash = t); - } - function ba(t) { - Gi ? Ji(ma(t)) : window.location.replace(ma(t)); - } - var _a = (function(t) { - function e(e, n) { - t.call(this, e, n), (this.stack = []), (this.index = -1); - } - return ( - t && (e.__proto__ = t), - (e.prototype = Object.create(t && t.prototype)), - (e.prototype.constructor = e), - (e.prototype.push = function(t, e, n) { - var r = this; - this.transitionTo( - t, - function(t) { - (r.stack = r.stack.slice(0, r.index + 1).concat(t)), r.index++, e && e(t); - }, - n, - ); - }), - (e.prototype.replace = function(t, e, n) { - var r = this; - this.transitionTo( - t, - function(t) { - (r.stack = r.stack.slice(0, r.index).concat(t)), e && e(t); - }, - n, - ); - }), - (e.prototype.go = function(t) { - var e = this, - n = this.index + t; - if (!(n < 0 || n >= this.stack.length)) { - var r = this.stack[n]; - this.confirmTransition( - r, - function() { - var t = e.current; - (e.index = n), - e.updateRoute(r), - e.router.afterHooks.forEach(function(e) { - e && e(r, t); - }); - }, - function(t) { - ra(t, Qi.duplicated) && (e.index = n); - }, - ); - } - }), - (e.prototype.getCurrentLocation = function() { - var t = this.stack[this.stack.length - 1]; - return t ? t.fullPath : '/'; - }), - (e.prototype.ensureURL = function() {}), - e - ); - })(sa), - xa = function(t) { - void 0 === t && (t = {}), - (this.app = null), - (this.apps = []), - (this.options = t), - (this.beforeHooks = []), - (this.resolveHooks = []), - (this.afterHooks = []), - (this.matcher = Ci(t.routes || [], this)); - var e = t.mode || 'hash'; - switch ( - ((this.fallback = 'history' === e && !Gi && !1 !== t.fallback), - this.fallback && (e = 'hash'), - Ai || (e = 'abstract'), - (this.mode = e), - e) - ) { - case 'history': - this.history = new pa(this, t.base); - break; - case 'hash': - this.history = new da(this, t.base, this.fallback); - break; - case 'abstract': - this.history = new _a(this, t.base); - break; - default: - 0; - } - }, - wa = { currentRoute: { configurable: !0 } }; - function Oa(t, e) { - return ( - t.push(e), - function() { - var n = t.indexOf(e); - n > -1 && t.splice(n, 1); - } - ); - } - (xa.prototype.match = function(t, e, n) { - return this.matcher.match(t, e, n); - }), - (wa.currentRoute.get = function() { - return this.history && this.history.current; - }), - (xa.prototype.init = function(t) { - var e = this; - if ( - (this.apps.push(t), - t.$once('hook:destroyed', function() { - var n = e.apps.indexOf(t); - n > -1 && e.apps.splice(n, 1), - e.app === t && (e.app = e.apps[0] || null), - e.app || e.history.teardown(); - }), - !this.app) - ) { - this.app = t; - var n = this.history; - if (n instanceof pa || n instanceof da) { - var r = function(t) { - n.setupListeners(), - (function(t) { - var r = n.current, - o = e.options.scrollBehavior; - Gi && o && 'fullPath' in t && Mi(e, t, r, !1); - })(t); - }; - n.transitionTo(n.getCurrentLocation(), r, r); - } - n.listen(function(t) { - e.apps.forEach(function(e) { - e._route = t; - }); - }); - } - }), - (xa.prototype.beforeEach = function(t) { - return Oa(this.beforeHooks, t); - }), - (xa.prototype.beforeResolve = function(t) { - return Oa(this.resolveHooks, t); - }), - (xa.prototype.afterEach = function(t) { - return Oa(this.afterHooks, t); - }), - (xa.prototype.onReady = function(t, e) { - this.history.onReady(t, e); - }), - (xa.prototype.onError = function(t) { - this.history.onError(t); - }), - (xa.prototype.push = function(t, e, n) { - var r = this; - if (!e && !n && 'undefined' != typeof Promise) - return new Promise(function(e, n) { - r.history.push(t, e, n); - }); - this.history.push(t, e, n); - }), - (xa.prototype.replace = function(t, e, n) { - var r = this; - if (!e && !n && 'undefined' != typeof Promise) - return new Promise(function(e, n) { - r.history.replace(t, e, n); - }); - this.history.replace(t, e, n); - }), - (xa.prototype.go = function(t) { - this.history.go(t); - }), - (xa.prototype.back = function() { - this.go(-1); - }), - (xa.prototype.forward = function() { - this.go(1); - }), - (xa.prototype.getMatchedComponents = function(t) { - var e = t ? (t.matched ? t : this.resolve(t).route) : this.currentRoute; - return e - ? [].concat.apply( - [], - e.matched.map(function(t) { - return Object.keys(t.components).map(function(e) { - return t.components[e]; - }); - }), - ) - : []; - }), - (xa.prototype.resolve = function(t, e, n) { - var r = xi(t, (e = e || this.history.current), n, this), - o = this.match(r, e), - i = o.redirectedFrom || o.fullPath; - return { - location: r, - route: o, - href: (function(t, e, n) { - var r = 'hash' === n ? '#' + e : e; - return t ? ni(t + '/' + r) : r; - })(this.history.base, i, this.mode), - normalizedTo: r, - resolved: o, - }; - }), - (xa.prototype.addRoutes = function(t) { - this.matcher.addRoutes(t), - this.history.current !== Go && - this.history.transitionTo(this.history.getCurrentLocation()); - }), - Object.defineProperties(xa.prototype, wa), - (xa.install = function t(e) { - if (!t.installed || wi !== e) { - (t.installed = !0), (wi = e); - var n = function(t) { - return void 0 !== t; - }, - r = function(t, e) { - var r = t.$options._parentVnode; - n(r) && n((r = r.data)) && n((r = r.registerRouteInstance)) && r(t, e); - }; - e.mixin({ - beforeCreate: function() { - n(this.$options.router) - ? ((this._routerRoot = this), - (this._router = this.$options.router), - this._router.init(this), - e.util.defineReactive(this, '_route', this._router.history.current)) - : (this._routerRoot = (this.$parent && this.$parent._routerRoot) || this), - r(this, this); - }, - destroyed: function() { - r(this); - }, - }), - Object.defineProperty(e.prototype, '$router', { - get: function() { - return this._routerRoot._router; - }, - }), - Object.defineProperty(e.prototype, '$route', { - get: function() { - return this._routerRoot._route; - }, - }), - e.component('RouterView', Zo), - e.component('RouterLink', Si); - var o = e.config.optionMergeStrategies; - o.beforeRouteEnter = o.beforeRouteLeave = o.beforeRouteUpdate = o.created; - } - }), - (xa.version = '3.4.9'), - (xa.isNavigationFailure = ra), - (xa.NavigationFailureType = Qi), - Ai && window.Vue && window.Vue.use(xa); - var Sa = xa; - n(93), n(197), n(199), n(201), n(133), n(94), n(202), n(95); - function ja(t) { - t.locales && - Object.keys(t.locales).forEach(function(e) { - t.locales[e].path = e; - }), - Object.freeze(t); - } - n(174), n(134), n(43), n(176), n(66), n(56), n(57), n(82); - function Aa(t) { - return (Aa = - 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator - ? function(t) { - return typeof t; - } - : function(t) { - return t && - 'function' == typeof Symbol && - t.constructor === Symbol && - t !== Symbol.prototype - ? 'symbol' - : typeof t; - })(t); - } - var Ea = n(40), - ka = { - NotFound: function() { - return n.e(17).then(n.bind(null, 377)); - }, - Layout: function() { - return Promise.all([n.e(0), n.e(2), n.e(16)]).then(n.bind(null, 378)); - }, - }, - Ca = { - 'v-77cb6b9f': function() { - return n.e(9).then(n.bind(null, 382)); - }, - 'v-27f2dbac': function() { - return n.e(19).then(n.bind(null, 383)); - }, - 'v-11d3734f': function() { - return n.e(18).then(n.bind(null, 384)); - }, - 'v-50357228': function() { - return n.e(20).then(n.bind(null, 385)); - }, - 'v-2c7961a6': function() { - return n.e(21).then(n.bind(null, 386)); - }, - 'v-358de850': function() { - return n.e(10).then(n.bind(null, 387)); - }, - 'v-6be2680e': function() { - return n.e(22).then(n.bind(null, 388)); - }, - 'v-1c499b2c': function() { - return n.e(11).then(n.bind(null, 389)); - }, - 'v-3e53f828': function() { - return n.e(23).then(n.bind(null, 390)); - }, - 'v-25c71eb8': function() { - return n.e(24).then(n.bind(null, 391)); - }, - 'v-1995786c': function() { - return n.e(12).then(n.bind(null, 392)); - }, - 'v-f3d01ce0': function() { - return n.e(7).then(n.bind(null, 393)); - }, - 'v-76fd0d8c': function() { - return n.e(26).then(n.bind(null, 394)); - }, - 'v-31643a8c': function() { - return n.e(13).then(n.bind(null, 395)); - }, - 'v-0be2f96c': function() { - return n.e(27).then(n.bind(null, 396)); - }, - 'v-a9b10980': function() { - return n.e(8).then(n.bind(null, 397)); - }, - 'v-4574ee28': function() { - return n.e(25).then(n.bind(null, 398)); - }, - 'v-c2ed5468': function() { - return n.e(14).then(n.bind(null, 399)); - }, - 'v-3f5a1068': function() { - return n.e(15).then(n.bind(null, 400)); - }, - }; - function $a(t) { - var e = Object.create(null); - return function(n) { - return e[n] || (e[n] = t(n)); - }; - } - var Pa = /-(\w)/g, - Ta = $a(function(t) { - return t.replace(Pa, function(t, e) { - return e ? e.toUpperCase() : ''; - }); - }), - La = /\B([A-Z])/g, - Ra = $a(function(t) { - return t.replace(La, '-$1').toLowerCase(); - }), - za = $a(function(t) { - return t.charAt(0).toUpperCase() + t.slice(1); - }); - function Da(t, e) { - if (e) return t(e) ? t(e) : e.includes('-') ? t(za(Ta(e))) : t(za(e)) || t(Ra(e)); - } - var Ia = Object.assign({}, ka, Ca), - Ma = function(t) { - return Ia[t]; - }, - Na = function(t) { - return Ca[t]; - }, - Ua = function(t) { - return ka[t]; - }, - Fa = function(t) { - return Ro.component(t); - }; - function Ba(t) { - return Da(Na, t); - } - function Va(t) { - return Da(Ua, t); - } - function Ha(t) { - return Da(Ma, t); - } - function qa(t) { - return Da(Fa, t); - } - function Wa() { - for (var t = arguments.length, e = new Array(t), n = 0; n < t; n++) e[n] = arguments[n]; - return Promise.all( - e - .filter(function(t) { - return t; - }) - .map( - (function() { - var t = o( - regeneratorRuntime.mark(function t(e) { - var n; - return regeneratorRuntime.wrap(function(t) { - for (;;) - switch ((t.prev = t.next)) { - case 0: - if (qa(e) || !Ha(e)) { - t.next = 5; - break; - } - return (t.next = 3), Ha(e)(); - case 3: - (n = t.sent), Ro.component(e, n.default); - case 5: - case 'end': - return t.stop(); - } - }, t); - }), - ); - return function(e) { - return t.apply(this, arguments); - }; - })(), - ), - ); - } - function Ga(t, e) { - 'undefined' != typeof window && window.__VUEPRESS__ && (window.__VUEPRESS__[t] = e); - } - n(177), n(172), n(96); - var Ka = n(63); - function Ja(t, e) { - return ( - (function(t) { - if (Array.isArray(t)) return t; - })(t) || - (function(t, e) { - if ('undefined' != typeof Symbol && Symbol.iterator in Object(t)) { - var n = [], - r = !0, - o = !1, - i = void 0; - try { - for ( - var a, u = t[Symbol.iterator](); - !(r = (a = u.next()).done) && (n.push(a.value), !e || n.length !== e); - r = !0 - ); - } catch (t) { - (o = !0), (i = t); - } finally { - try { - r || null == u.return || u.return(); - } finally { - if (o) throw i; - } - } - return n; - } - })(t, e) || - Object(Ka.a)(t, e) || - (function() { - throw new TypeError( - 'Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.', - ); - })() - ); - } - var Xa = n(164), - Qa = n.n(Xa), - Ya = { - created: function() { - if ( - ((this.siteMeta = this.$site.headTags - .filter(function(t) { - return 'meta' === Ja(t, 1)[0]; - }) - .map(function(t) { - var e = Ja(t, 2); - e[0]; - return e[1]; - })), - this.$ssrContext) - ) { - var t = this.getMergedMetaTags(); - (this.$ssrContext.title = this.$title), - (this.$ssrContext.lang = this.$lang), - (this.$ssrContext.pageMeta = (e = t) - ? e - .map(function(t) { - var e = '' - ); - }) - .join('\n ') - : ''), - (this.$ssrContext.canonicalLink = tu(this.$canonicalUrl)); - } - var e; - }, - mounted: function() { - (this.currentMetaTags = Object(Ea.a)(document.querySelectorAll('meta'))), - this.updateMeta(), - this.updateCanonicalLink(); - }, - methods: { - updateMeta: function() { - (document.title = this.$title), (document.documentElement.lang = this.$lang); - var t = this.getMergedMetaTags(); - this.currentMetaTags = eu(t, this.currentMetaTags); - }, - getMergedMetaTags: function() { - var t = this.$page.frontmatter.meta || []; - return Qa()( - [{ name: 'description', content: this.$description }], - t, - this.siteMeta, - nu, - ); - }, - updateCanonicalLink: function() { - Za(), - this.$canonicalUrl && - document.head.insertAdjacentHTML('beforeend', tu(this.$canonicalUrl)); - }, - }, - watch: { - $page: function() { - this.updateMeta(), this.updateCanonicalLink(); - }, - }, - beforeDestroy: function() { - eu(null, this.currentMetaTags), Za(); - }, - }; - function Za() { - var t = document.querySelector("link[rel='canonical']"); - t && t.remove(); - } - function tu() { - var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : ''; - return t ? '') : ''; - } - function eu(t, e) { - if ( - (e && - Object(Ea.a)(e) - .filter(function(t) { - return t.parentNode === document.head; - }) - .forEach(function(t) { - return document.head.removeChild(t); - }), - t) - ) - return t.map(function(t) { - var e = document.createElement('meta'); - return ( - Object.keys(t).forEach(function(n) { - e.setAttribute(n, t[n]); - }), - document.head.appendChild(e), - e - ); - }); - } - function nu(t) { - for (var e = 0, n = ['name', 'property', 'itemprop']; e < n.length; e++) { - var r = n[e]; - if (t.hasOwnProperty(r)) return t[r] + r; - } - return JSON.stringify(t); - } - n(166); - var ru = n(165), - ou = { - mounted: function() { - window.addEventListener('scroll', this.onScroll); - }, - methods: { - onScroll: n.n(ru)()(function() { - this.setActiveHash(); - }, 300), - setActiveHash: function() { - for ( - var t = this, - e = [].slice.call(document.querySelectorAll('.sidebar-link')), - n = [].slice.call(document.querySelectorAll('.header-anchor')).filter(function(t) { - return e.some(function(e) { - return e.hash === t.hash; - }); - }), - r = Math.max( - window.pageYOffset, - document.documentElement.scrollTop, - document.body.scrollTop, - ), - o = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight), - i = window.innerHeight + r, - a = 0; - a < n.length; - a++ - ) { - var u = n[a], - c = n[a + 1], - s = - (0 === a && 0 === r) || - (r >= u.parentElement.offsetTop + 10 && - (!c || r < c.parentElement.offsetTop - 10)), - f = decodeURIComponent(this.$route.hash); - if (s && f !== decodeURIComponent(u.hash)) { - var l = u; - if (i === o) - for (var p = a + 1; p < n.length; p++) - if (f === decodeURIComponent(n[p].hash)) return; - return ( - this.$vuepress.$set('disableScrollBehavior', !0), - void this.$router.replace(decodeURIComponent(l.hash), function() { - t.$nextTick(function() { - t.$vuepress.$set('disableScrollBehavior', !1); - }); - }) - ); - } - } - }, - }, - beforeDestroy: function() { - window.removeEventListener('scroll', this.onScroll); - }, - }, - iu = (n(83), n(64)), - au = n.n(iu), - uu = [ - Ya, - ou, - { - mounted: function() { - var t = this; - au.a.configure({ showSpinner: !1 }), - this.$router.beforeEach(function(t, e, n) { - t.path === e.path || Ro.component(t.name) || au.a.start(), n(); - }), - this.$router.afterEach(function() { - au.a.done(), (t.isSidebarOpen = !1); - }); - }, - }, - ], - cu = { - name: 'GlobalLayout', - computed: { - layout: function() { - var t = this.getLayout(); - return Ga('layout', t), Ro.component(t); - }, - }, - methods: { - getLayout: function() { - if (this.$page.path) { - var t = this.$page.frontmatter.layout; - return t && - (this.$vuepress.getLayoutAsyncComponent(t) || this.$vuepress.getVueComponent(t)) - ? t - : 'Layout'; - } - return 'NotFound'; - }, - }, - }, - su = n(42), - fu = Object(su.a)( - cu, - function() { - var t = this.$createElement; - return (this._self._c || t)(this.layout, { tag: 'component' }); - }, - [], - !1, - null, - null, - null, - ).exports; - !(function(t, e, n) { - var r; - switch (e) { - case 'components': - t[e] || (t[e] = {}), Object.assign(t[e], n); - break; - case 'mixins': - t[e] || (t[e] = []), (r = t[e]).push.apply(r, Object(Ea.a)(n)); - break; - default: - throw new Error('Unknown option name.'); - } - })(fu, 'mixins', uu); - var lu = [ - { - name: 'v-77cb6b9f', - path: '/zh/guide/', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-77cb6b9f').then(n); - }, - }, - { path: '/zh/guide/index.html', redirect: '/zh/guide/' }, - { - name: 'v-27f2dbac', - path: '/zh/guide/building.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-27f2dbac').then(n); - }, - }, - { - name: 'v-11d3734f', - path: '/', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-11d3734f').then(n); - }, - }, - { path: '/index.html', redirect: '/' }, - { - name: 'v-50357228', - path: '/zh/guide/componentDev/DSLAnalysis.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-50357228').then(n); - }, - }, - { - name: 'v-2c7961a6', - path: '/zh/guide/componentDev/componentStructure.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-2c7961a6').then(n); - }, - }, - { - name: 'v-358de850', - path: '/zh/guide/componentDev/dynamicLoading.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-358de850').then(n); - }, - }, - { - name: 'v-6be2680e', - path: '/zh/guide/deployDev/api.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-6be2680e').then(n); - }, - }, - { - name: 'v-1c499b2c', - path: '/zh/guide/deployDev/deploy.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-1c499b2c').then(n); - }, - }, - { - name: 'v-3e53f828', - path: '/zh/guide/deployDev/https.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-3e53f828').then(n); - }, - }, - { - name: 'v-25c71eb8', - path: '/zh/guide/deployDev/oss.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-25c71eb8').then(n); - }, - }, - { - name: 'v-1995786c', - path: '/zh/guide/functionRealization/machinePreview.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-1995786c').then(n); - }, - }, - { - name: 'v-f3d01ce0', - path: '/zh/guide/functionRealization/pagePreview.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-f3d01ce0').then(n); - }, - }, - { - name: 'v-76fd0d8c', - path: '/zh/guide/functionRealization/revocation.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-76fd0d8c').then(n); - }, - }, - { - name: 'v-31643a8c', - path: '/zh/guide/functionRealization/screenshot.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-31643a8c').then(n); - }, - }, - { - name: 'v-0be2f96c', - path: '/zh/guide/functionRealization/saveJson.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-0be2f96c').then(n); - }, - }, - { - name: 'v-a9b10980', - path: '/zh/guide/functionRealization/templateLibrary.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-a9b10980').then(n); - }, - }, - { - name: 'v-4574ee28', - path: '/zh/guide/directoryStructure.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-4574ee28').then(n); - }, - }, - { - name: 'v-c2ed5468', - path: '/zh/guide/introduced.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-c2ed5468').then(n); - }, - }, - { - name: 'v-3f5a1068', - path: '/zh/guide/startedQuickly.html', - component: fu, - beforeEnter: function(t, e, n) { - Wa('Layout', 'v-3f5a1068').then(n); - }, - }, - { path: '*', component: fu }, - ], - pu = { - title: 'h5-dooring', - description: '', - base: '/doc/', - headTags: [], - pages: [ - { - frontmatter: {}, - regularPath: '/zh/guide/', - relativePath: 'zh/guide/README.md', - key: 'v-77cb6b9f', - path: '/zh/guide/', - headers: [ - { level: 2, title: '功能特点', slug: '功能特点' }, - { level: 2, title: '为什么选择 Dooring', slug: '为什么选择-dooring' }, - ], - lastUpdated: '3/22/2021, 10:16:35 AM', - }, - { - frontmatter: {}, - regularPath: '/zh/guide/building.html', - relativePath: 'zh/guide/building.md', - key: 'v-27f2dbac', - path: '/zh/guide/building.html', - lastUpdated: '1/17/2021, 11:22:04 PM', - }, - { - title: 'Home', - frontmatter: { - content: 'Home', - home: !0, - heroText: '一款所见即所得的H5编辑器', - features: [ - { - title: '简洁方便', - details: '任何人只需傻瓜式拖拽或进行简单编辑即可生成精美的H5页面', - }, - { - title: '插拔式体验', - details: '产品以GPL协议开源, 授权后可植入任何系统,并支持二次开发', - }, - { - title: '持续迭代,无限可能', - details: '目前正在持续迭代中,后续可根据需求开发功能更强大的可视化系统', - }, - ], - actionText: '快速上手 →', - actionLink: '/zh/guide/', - footer: 'GPL Licensed | Copyright © 2020-present H5-Dooring', - }, - regularPath: '/', - relativePath: 'README.md', - key: 'v-11d3734f', - path: '/', - lastUpdated: '1/17/2021, 11:22:04 PM', - }, - { - title: 'DSL设计', - frontmatter: {}, - regularPath: '/zh/guide/componentDev/DSLAnalysis.html', - relativePath: 'zh/guide/componentDev/DSLAnalysis.md', - key: 'v-50357228', - path: '/zh/guide/componentDev/DSLAnalysis.html', - lastUpdated: '1/17/2021, 9:57:34 PM', - }, - { - frontmatter: {}, - regularPath: '/zh/guide/componentDev/componentStructure.html', - relativePath: 'zh/guide/componentDev/componentStructure.md', - key: 'v-2c7961a6', - path: '/zh/guide/componentDev/componentStructure.html', - headers: [ - { level: 2, title: '组件设计', slug: '组件设计' }, - { level: 2, title: 'template设计', slug: 'template设计' }, - ], - lastUpdated: '1/17/2021, 9:57:34 PM', - }, - { - frontmatter: {}, - regularPath: '/zh/guide/componentDev/dynamicLoading.html', - relativePath: 'zh/guide/componentDev/dynamicLoading.md', - key: 'v-358de850', - path: '/zh/guide/componentDev/dynamicLoading.html', - headers: [{ level: 2, title: 'umi3提供的dynamic', slug: 'umi3提供的dynamic' }], - lastUpdated: '1/17/2021, 9:57:34 PM', - }, - { - frontmatter: {}, - regularPath: '/zh/guide/deployDev/api.html', - relativePath: 'zh/guide/deployDev/api.md', - key: 'v-6be2680e', - path: '/zh/guide/deployDev/api.html', - headers: [ - { level: 2, title: '用户相关', slug: '用户相关' }, - { level: 3, title: '登录', slug: '登录' }, - { level: 3, title: '注销登录', slug: '注销登录' }, - { level: 3, title: '权限控制', slug: '权限控制' }, - { level: 3, title: '用户列表', slug: '用户列表' }, - { level: 3, title: '添加用户', slug: '添加用户' }, - { level: 3, title: '修改用户信息', slug: '修改用户信息' }, - { level: 3, title: '删除用户', slug: '删除用户' }, - { level: 2, title: 'H5页面管理', slug: 'h5页面管理' }, - { level: 3, title: '获取H5数据', slug: '获取h5数据' }, - { level: 3, title: '保存H5数据', slug: '保存h5数据' }, - { level: 3, title: '删除H5数据', slug: '删除h5数据' }, - { level: 2, title: 'H5表单数据管理', slug: 'h5表单数据管理' }, - { level: 3, title: '保存表单数据', slug: '保存表单数据' }, - { level: 3, title: '批量导入表单数据', slug: '批量导入表单数据' }, - { level: 3, title: '删除表单数据', slug: '删除表单数据' }, - { level: 2, title: '模版管理', slug: '模版管理' }, - { level: 3, title: '获取模版库', slug: '获取模版库' }, - { level: 3, title: '保存模版', slug: '保存模版' }, - { level: 3, title: '删除模版', slug: '删除模版' }, - { level: 2, title: '文件上传', slug: '文件上传' }, - { level: 2, title: '数据统计', slug: '数据统计' }, - { level: 3, title: '数据大盘接口', slug: '数据大盘接口' }, - { level: 3, title: '页面埋点', slug: '页面埋点' }, - ], - lastUpdated: '2/15/2021, 12:27:31 AM', - }, - { - frontmatter: {}, - regularPath: '/zh/guide/deployDev/deploy.html', - relativePath: 'zh/guide/deployDev/deploy.md', - key: 'v-1c499b2c', - path: '/zh/guide/deployDev/deploy.html', - headers: [{ level: 3, title: '部署架构图', slug: '部署架构图' }], - lastUpdated: '1/31/2021, 1:25:02 AM', - }, - { - frontmatter: {}, - regularPath: '/zh/guide/deployDev/https.html', - relativePath: 'zh/guide/deployDev/https.md', - key: 'v-3e53f828', - path: '/zh/guide/deployDev/https.html', - headers: [ - { level: 3, title: '前端工程', slug: '前端工程' }, - { level: 3, title: '服务器工程', slug: '服务器工程' }, - ], - lastUpdated: '1/31/2021, 1:25:02 AM', - }, - { - frontmatter: {}, - regularPath: '/zh/guide/deployDev/oss.html', - relativePath: 'zh/guide/deployDev/oss.md', - key: 'v-25c71eb8', - path: '/zh/guide/deployDev/oss.html', - headers: [{ level: 3, title: '前端上传文件到oss', slug: '前端上传文件到oss' }], - lastUpdated: '1/31/2021, 1:25:02 AM', - }, - { - frontmatter: {}, - regularPath: '/zh/guide/functionRealization/machinePreview.html', - relativePath: 'zh/guide/functionRealization/machinePreview.md', - key: 'v-1995786c', - path: '/zh/guide/functionRealization/machinePreview.html', - lastUpdated: '1/17/2021, 9:57:34 PM', - }, - { - frontmatter: {}, - regularPath: '/zh/guide/functionRealization/pagePreview.html', - relativePath: 'zh/guide/functionRealization/pagePreview.md', - key: 'v-f3d01ce0', - path: '/zh/guide/functionRealization/pagePreview.html', - lastUpdated: '1/17/2021, 9:57:34 PM', - }, - { - frontmatter: {}, - regularPath: '/zh/guide/functionRealization/revocation.html', - relativePath: 'zh/guide/functionRealization/revocation.md', - key: 'v-76fd0d8c', - path: '/zh/guide/functionRealization/revocation.html', - lastUpdated: '1/17/2021, 9:57:34 PM', - }, - { - frontmatter: {}, - regularPath: '/zh/guide/functionRealization/screenshot.html', - relativePath: 'zh/guide/functionRealization/screenshot.md', - key: 'v-31643a8c', - path: '/zh/guide/functionRealization/screenshot.html', - lastUpdated: '1/17/2021, 9:57:34 PM', - }, - { - frontmatter: {}, - regularPath: '/zh/guide/functionRealization/saveJson.html', - relativePath: 'zh/guide/functionRealization/saveJson.md', - key: 'v-0be2f96c', - path: '/zh/guide/functionRealization/saveJson.html', - lastUpdated: '1/17/2021, 9:57:34 PM', - }, - { - frontmatter: {}, - regularPath: '/zh/guide/functionRealization/templateLibrary.html', - relativePath: 'zh/guide/functionRealization/templateLibrary.md', - key: 'v-a9b10980', - path: '/zh/guide/functionRealization/templateLibrary.html', - headers: [ - { level: 2, title: '模板库实现思路', slug: '模板库实现思路' }, - { level: 3, title: '模板前台展示:', slug: '模板前台展示' }, - { level: 3, title: '模板后台展示:', slug: '模板后台展示' }, - ], - lastUpdated: '1/17/2021, 9:57:34 PM', - }, - { - frontmatter: {}, - regularPath: '/zh/guide/directoryStructure.html', - relativePath: 'zh/guide/directoryStructure.md', - key: 'v-4574ee28', - path: '/zh/guide/directoryStructure.html', - lastUpdated: '1/17/2021, 7:12:02 PM', - }, - { - frontmatter: {}, - regularPath: '/zh/guide/introduced.html', - relativePath: 'zh/guide/introduced.md', - key: 'v-c2ed5468', - path: '/zh/guide/introduced.html', - lastUpdated: '1/17/2021, 7:12:02 PM', - }, - { - title: '快速上手', - frontmatter: {}, - regularPath: '/zh/guide/startedQuickly.html', - relativePath: 'zh/guide/startedQuickly.md', - key: 'v-3f5a1068', - path: '/zh/guide/startedQuickly.html', - headers: [ - { level: 2, title: '环境准备', slug: '环境准备' }, - { level: 2, title: '源码工程', slug: '源码工程' }, - { level: 2, title: '本地运行', slug: '本地运行' }, - ], - lastUpdated: '1/17/2021, 7:12:02 PM', - }, - ], - themeConfig: { - search: !1, - searchMaxSuggestions: 10, - lastUpdated: 'Last Updated', - nav: [ - { text: '首页', link: '/' }, - { text: '文档', link: '/zh/guide/' }, - { text: '体验', link: 'http://h5.dooring.cn' }, - { text: 'github', link: 'https://github.com/MrXujiang/h5-Dooring' }, - ], - sidebar: [ - { title: '基本介绍', path: '/zh/guide/', collapsable: !1, sidebarDepth: 1 }, - { - title: 'doring如何工作', - path: '/zh/guide/introduced', - collapsable: !1, - sidebarDepth: 1, - }, - { - title: '快速上手', - path: '/zh/guide/startedQuickly', - collapsable: !1, - sidebarDepth: 1, - }, - { - title: '目录结构', - path: '/zh/guide/directoryStructure', - collapsable: !1, - sidebarDepth: 1, - }, - { - title: '组件开发', - collapsable: !1, - sidebarDepth: 1, - type: 'group', - children: [ - { - name: 'componentStructure', - title: '组件结构', - path: '/zh/guide/componentDev/componentStructure', - collapsable: !1, - sidebarDepth: 2, - }, - { - name: 'DSLAnalysis', - title: 'DSL设计', - path: '/zh/guide/componentDev/DSLAnalysis', - collapsable: !1, - sidebarDepth: 2, - }, - { - name: 'dynamicLoading', - title: '动态加载', - path: '/zh/guide/componentDev/dynamicLoading', - collapsable: !1, - sidebarDepth: 1, - }, - ], - }, - { - title: '功能实现', - collapsable: !1, - sidebarDepth: 1, - type: 'group', - children: [ - { - title: '模板库', - path: '/zh/guide/functionRealization/templateLibrary', - collapsable: !1, - sidebarDepth: 1, - }, - { - title: '保存json', - path: '/zh/guide/functionRealization/saveJson', - collapsable: !1, - sidebarDepth: 1, - }, - { - title: '网页预览', - path: '/zh/guide/functionRealization/pagePreview', - collapsable: !1, - sidebarDepth: 1, - }, - { - title: '真机预览', - path: '/zh/guide/functionRealization/machinePreview', - collapsable: !1, - sidebarDepth: 1, - }, - { - title: '撤销/重做', - path: '/zh/guide/functionRealization/revocation', - collapsable: !1, - sidebarDepth: 1, - }, - { - title: '截图功能', - path: '/zh/guide/functionRealization/screenshot', - collapsable: !1, - sidebarDepth: 1, - }, - ], - }, - { - title: '私有化部署和二次开发', - collapsable: !1, - sidebarDepth: 1, - type: 'group', - children: [ - { - title: '私有化部署', - path: '/zh/guide/deployDev/deploy', - collapsable: !1, - sidebarDepth: 1, - }, - { - title: '支持https', - path: '/zh/guide/deployDev/https', - collapsable: !1, - sidebarDepth: 1, - }, - { - title: '接入第三方oss', - path: '/zh/guide/deployDev/oss', - collapsable: !1, - sidebarDepth: 1, - }, - { - title: 'API接口文档', - path: '/zh/guide/deployDev/api', - collapsable: !1, - sidebarDepth: 1, - }, - ], - }, - ], - }, - }; - n(300), n(301); - Ro.component('Home', function() { - return Promise.all([n.e(0), n.e(3)]).then(n.bind(null, 379)); - }), - Ro.component('CodeBlock', function() { - return Promise.all([n.e(0), n.e(5)]).then(n.bind(null, 380)); - }), - Ro.component('CodeGroup', function() { - return Promise.all([n.e(0), n.e(6)]).then(n.bind(null, 381)); - }), - Ro.component('Badge', function() { - return Promise.all([n.e(0), n.e(4)]).then(n.bind(null, 401)); - }); - n(302); - var hu = [ - function(t) { - var e = t.Vue; - t.options, t.router, t.siteData, t.isServer; - e.config.ignoredElements = []; - }, - {}, - function(t) { - t.Vue.mixin({ - computed: { - $dataBlock: function() { - return this.$options.__data__block__; - }, - }, - }); - }, - {}, - {}, - ], - du = []; - n(170); - function vu(t, e) { - if (!(t instanceof e)) throw new TypeError('Cannot call a class as a function'); - } - n(303); - function yu(t, e) { - for (var n = 0; n < e.length; n++) { - var r = e[n]; - (r.enumerable = r.enumerable || !1), - (r.configurable = !0), - 'value' in r && (r.writable = !0), - Object.defineProperty(t, r.key, r); - } - } - function mu(t, e, n) { - return e && yu(t.prototype, e), n && yu(t, n), t; - } - n(160); - function gu(t, e) { - return (gu = - Object.setPrototypeOf || - function(t, e) { - return (t.__proto__ = e), t; - })(t, e); - } - n(161); - function bu(t) { - return (bu = Object.setPrototypeOf - ? Object.getPrototypeOf - : function(t) { - return t.__proto__ || Object.getPrototypeOf(t); - })(t); - } - n(138), n(98); - function _u(t, e) { - return !e || ('object' !== Aa(e) && 'function' != typeof e) - ? (function(t) { - if (void 0 === t) - throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); - return t; - })(t) - : e; - } - function xu(t) { - var e = (function() { - if ('undefined' == typeof Reflect || !Reflect.construct) return !1; - if (Reflect.construct.sham) return !1; - if ('function' == typeof Proxy) return !0; - try { - return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0; - } catch (t) { - return !1; - } - })(); - return function() { - var n, - r = bu(t); - if (e) { - var o = bu(this).constructor; - n = Reflect.construct(r, arguments, o); - } else n = r.apply(this, arguments); - return _u(this, n); - }; - } - var wu = (function(t) { - !(function(t, e) { - if ('function' != typeof e && null !== e) - throw new TypeError('Super expression must either be null or a function'); - (t.prototype = Object.create(e && e.prototype, { - constructor: { value: t, writable: !0, configurable: !0 }, - })), - e && gu(t, e); - })(n, t); - var e = xu(n); - function n() { - return vu(this, n), e.apply(this, arguments); - } - return n; - })( - (function() { - function t() { - vu(this, t), (this.store = new Ro({ data: { state: {} } })); - } - return ( - mu(t, [ - { - key: '$get', - value: function(t) { - return this.store.state[t]; - }, - }, - { - key: '$set', - value: function(t, e) { - Ro.set(this.store.state, t, e); - }, - }, - { - key: '$emit', - value: function() { - var t; - (t = this.store).$emit.apply(t, arguments); - }, - }, - { - key: '$on', - value: function() { - var t; - (t = this.store).$on.apply(t, arguments); - }, - }, - ]), - t - ); - })(), - ); - Object.assign(wu.prototype, { - getPageAsyncComponent: Ba, - getLayoutAsyncComponent: Va, - getAsyncComponent: Ha, - getVueComponent: qa, - }); - var Ou = { - install: function(t) { - var e = new wu(); - (t.$vuepress = e), (t.prototype.$vuepress = e); - }, - }; - function Su(t) { - t.beforeEach(function(e, n, r) { - if (ju(t, e.path)) r(); - else if (/(\/|\.html)$/.test(e.path)) - if (/\/$/.test(e.path)) { - var o = e.path.replace(/\/$/, '') + '.html'; - ju(t, o) ? r(o) : r(); - } else r(); - else { - var i = e.path + '/', - a = e.path + '.html'; - ju(t, a) ? r(a) : ju(t, i) ? r(i) : r(); - } - }); - } - function ju(t, e) { - return ( - t.options.routes.filter(function(t) { - return t.path.toLowerCase() === e.toLowerCase(); - }).length > 0 - ); - } - var Au = { - props: { pageKey: String, slotKey: { type: String, default: 'default' } }, - render: function(t) { - var e = this.pageKey || this.$parent.$page.key; - return ( - Ga('pageKey', e), - Ro.component(e) || Ro.component(e, Ba(e)), - Ro.component(e) ? t(e) : t('') - ); - }, - }, - Eu = { - functional: !0, - props: { slotKey: String, required: !0 }, - render: function(t, e) { - var n = e.props, - r = e.slots; - return t('div', { class: ['content__'.concat(n.slotKey)] }, r()[n.slotKey]); - }, - }, - ku = { - computed: { - openInNewWindowTitle: function() { - return this.$themeLocaleConfig.openNewWindowText || '(opens new window)'; - }, - }, - }, - Cu = - (n(305), - n(306), - Object(su.a)( - ku, - function() { - var t = this.$createElement, - e = this._self._c || t; - return e('span', [ - e( - 'svg', - { - staticClass: 'icon outbound', - attrs: { - xmlns: 'http://www.w3.org/2000/svg', - 'aria-hidden': 'true', - focusable: 'false', - x: '0px', - y: '0px', - viewBox: '0 0 100 100', - width: '15', - height: '15', - }, - }, - [ - e('path', { - attrs: { - fill: 'currentColor', - d: - 'M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z', - }, - }), - this._v(' '), - e('polygon', { - attrs: { - fill: 'currentColor', - points: - '45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9', - }, - }), - ], - ), - this._v(' '), - e('span', { staticClass: 'sr-only' }, [this._v(this._s(this.openInNewWindowTitle))]), - ]); - }, - [], - !1, - null, - null, - null, - ).exports); - function $u() { - return ($u = o( - regeneratorRuntime.mark(function t(e) { - var n, r, o, i; - return regeneratorRuntime.wrap( - function(t) { - for (;;) - switch ((t.prev = t.next)) { - case 0: - return ( - (n = - 'undefined' != typeof window && window.__VUEPRESS_ROUTER_BASE__ - ? window.__VUEPRESS_ROUTER_BASE__ - : pu.routerBase || pu.base), - Su( - (r = new Sa({ - base: n, - mode: 'history', - fallback: !1, - routes: lu, - scrollBehavior: function(t, e, n) { - return ( - n || - (t.hash - ? !Ro.$vuepress.$get('disableScrollBehavior') && { - selector: decodeURIComponent(t.hash), - } - : { x: 0, y: 0 }) - ); - }, - })), - ), - (o = {}), - (t.prev = 4), - (t.next = 7), - Promise.all( - hu - .filter(function(t) { - return 'function' == typeof t; - }) - .map(function(t) { - return t({ Vue: Ro, options: o, router: r, siteData: pu, isServer: e }); - }), - ) - ); - case 7: - t.next = 12; - break; - case 9: - (t.prev = 9), (t.t0 = t.catch(4)), console.error(t.t0); - case 12: - return ( - (i = new Ro( - Object.assign(o, { - router: r, - render: function(t) { - return t('div', { attrs: { id: 'app' } }, [ - t('RouterView', { ref: 'layout' }), - t( - 'div', - { class: 'global-ui' }, - du.map(function(e) { - return t(e); - }), - ), - ]); - }, - }), - )), - t.abrupt('return', { app: i, router: r }) - ); - case 14: - case 'end': - return t.stop(); - } - }, - t, - null, - [[4, 9]], - ); - }), - )).apply(this, arguments); - } - (Ro.config.productionTip = !1), - Ro.use(Sa), - Ro.use(Ou), - Ro.mixin( - (function(t, e) { - var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : Ro; - ja(e), n.$vuepress.$set('siteData', e); - var r = t(n.$vuepress.$get('siteData')), - o = new r(), - i = Object.getOwnPropertyDescriptors(Object.getPrototypeOf(o)), - a = {}; - return ( - Object.keys(i).reduce(function(t, e) { - return e.startsWith('$') && (t[e] = i[e].get), t; - }, a), - { computed: a } - ); - })(function(t) { - return (function() { - function e() { - vu(this, e); - } - return ( - mu(e, [ - { - key: 'setPage', - value: function(t) { - this.__page = t; - }, - }, - { - key: '$site', - get: function() { - return t; - }, - }, - { - key: '$themeConfig', - get: function() { - return this.$site.themeConfig; - }, - }, - { - key: '$frontmatter', - get: function() { - return this.$page.frontmatter; - }, - }, - { - key: '$localeConfig', - get: function() { - var t, - e, - n = this.$site.locales, - r = void 0 === n ? {} : n; - for (var o in r) - '/' === o ? (e = r[o]) : 0 === this.$page.path.indexOf(o) && (t = r[o]); - return t || e || {}; - }, - }, - { - key: '$siteTitle', - get: function() { - return this.$localeConfig.title || this.$site.title || ''; - }, - }, - { - key: '$canonicalUrl', - get: function() { - var t = this.$page.frontmatter.canonicalUrl; - return 'string' == typeof t && t; - }, - }, - { - key: '$title', - get: function() { - var t = this.$page, - e = this.$page.frontmatter.metaTitle; - if ('string' == typeof e) return e; - var n = this.$siteTitle, - r = t.frontmatter.home ? null : t.frontmatter.title || t.title; - return n ? (r ? r + ' | ' + n : n) : r || 'VuePress'; - }, - }, - { - key: '$description', - get: function() { - var t = (function(t) { - if (t) { - var e = t.filter(function(t) { - return 'description' === t.name; - })[0]; - if (e) return e.content; - } - })(this.$page.frontmatter.meta); - return ( - t || - this.$page.frontmatter.description || - this.$localeConfig.description || - this.$site.description || - '' - ); - }, - }, - { - key: '$lang', - get: function() { - return this.$page.frontmatter.lang || this.$localeConfig.lang || 'en-US'; - }, - }, - { - key: '$localePath', - get: function() { - return this.$localeConfig.path || '/'; - }, - }, - { - key: '$themeLocaleConfig', - get: function() { - return (this.$site.themeConfig.locales || {})[this.$localePath] || {}; - }, - }, - { - key: '$page', - get: function() { - return this.__page - ? this.__page - : (function(t, e) { - for (var n = 0; n < t.length; n++) { - var r = t[n]; - if (r.path.toLowerCase() === e.toLowerCase()) return r; - } - return { path: '', frontmatter: {} }; - })(this.$site.pages, this.$route.path); - }, - }, - ]), - e - ); - })(); - }, pu), - ), - Ro.component('Content', Au), - Ro.component('ContentSlotsDistributor', Eu), - Ro.component('OutboundLink', Cu), - Ro.component('ClientOnly', { - functional: !0, - render: function(t, e) { - var n = e.parent, - r = e.children; - if (n._isMounted) return r; - n.$once('hook:mounted', function() { - n.$forceUpdate(); - }); - }, - }), - Ro.component('Layout', Va('Layout')), - Ro.component('NotFound', Va('NotFound')), - (Ro.prototype.$withBase = function(t) { - var e = this.$site.base; - return '/' === t.charAt(0) ? e + t.slice(1) : t; - }), - (window.__VUEPRESS__ = { version: '1.8.0', hash: '98900b0' }), - (function(t) { - return $u.apply(this, arguments); - })(!1).then(function(t) { - var e = t.app; - t.router.onReady(function() { - e.$mount('#app'); - }); - }); - }, -]); diff --git a/doc-dist/favcion.png b/doc-dist/favcion.png deleted file mode 100644 index d017d9e..0000000 Binary files a/doc-dist/favcion.png and /dev/null differ diff --git a/doc-dist/index.html b/doc-dist/index.html deleted file mode 100644 index 3b19290..0000000 --- a/doc-dist/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -

hero一款所见即所得的H5编辑器

1

简洁方便

任何人只需傻瓜式拖拽或进行简单编辑即可生成精美的H5页面

2

插拔式体验

产品以GPL协议开源, 授权后可植入任何系统,并支持二次开发

3

持续迭代,无限可能

目前正在持续迭代中,后续可根据需求开发功能更强大的可视化系统

- - - diff --git a/doc-dist/zh/guide/building.html b/doc-dist/zh/guide/building.html deleted file mode 100644 index e34b00a..0000000 --- a/doc-dist/zh/guide/building.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -

正在建设中...

Last Updated: 1/17/2021, 11:22:04 PM
- - - diff --git a/doc-dist/zh/guide/componentDev/DSLAnalysis.html b/doc-dist/zh/guide/componentDev/DSLAnalysis.html deleted file mode 100644 index cb1dd1c..0000000 --- a/doc-dist/zh/guide/componentDev/DSLAnalysis.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - DSL设计 | h5-dooring - - - - - - - - -

# DSL设计

DSL层主要约定了Dooring组件的数据协议,包括组件的可编辑属性、编辑类型、初始值等,之所以定义一致的协议层,主要是方便后期的组件扩展,配置后移,有助于不同后端语言开发和数据存储,接下来我们看看header组件的schema。

1.editData 可编辑的属性类型DSL

2.config 可编辑组件的默认属性

const Header: IHeaderSchema = {
-  editData: [
-    {
-      key: 'bgColor',
-      name: '背景色',
-      type: 'Color',
-    },
-    {
-      key: 'height',
-      name: '高度',
-      type: 'Number',
-    },
-    {
-      key: 'logo',
-      name: 'logo',
-      type: 'Upload',
-      isCrop: true,
-      cropRate: 1000 / 618,
-    },
-    {
-      key: 'logoText',
-      name: 'logo文字',
-      type: 'Text',
-    },
-    {
-      key: 'color',
-      name: '文字颜色',
-      type: 'Color',
-    },
-    {
-      key: 'fontSize',
-      name: '文字大小',
-      type: 'Number',
-    }
-  ],
-  config: {
-    bgColor: 'rgba(245,245,245,1)',
-    logo: [
-      {
-        uid: '001',
-        name: 'image.png',
-        status: 'done',
-        url: `${serverUrl}/uploads/3_1740be8a482.png`,
-      },
-    ],
-    logoText: '页头Header',
-    fontSize: 20,
-    color: 'rgba(47,84,235,1)',
-    height: 50
-  },
-};
-

由以上代码可知,我们可以在editData属性中给组件添加可编辑的属性,比如背景图,然后再component中接受属性从而设置样式。

在config属性中,我们可以设置组件默认属性值,和editData中每一项的key一一对应。

Last Updated: 1/17/2021, 9:57:34 PM
- - - diff --git a/doc-dist/zh/guide/componentDev/componentStructure.html b/doc-dist/zh/guide/componentDev/componentStructure.html deleted file mode 100644 index 5aaed86..0000000 --- a/doc-dist/zh/guide/componentDev/componentStructure.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -

# 组件结构

dooring的组件设计包含以下3个部分组件:

1、component 组件主体

2、schema 组件的DSL,结构协议层

3、template 定义了组件的类型、外观、从属关系,后期考虑纳入schema

接下来我会介绍一个基本的组件主体设计,以为template设计,在下一章会具体介绍schema部分。

# 组件设计

我们这里拿基本的header组件来举例,如下是header组件的代码:

interface HeaderPropTypes extends IHeaderConfig {
-  isTpl: boolean;
-}
-
-const Header = memo((props: HeaderPropTypes) => {
-  const { bgColor, logo, logoText, fontSize, color } = props;
-  return props.isTpl ? (
-    <div>
-      < img style={{width: '100%'}} src={logos} alt="" />
-    </div>
-  ) : (
-    <header className={styles.header} style={{ backgroundColor: bgColor }}>
-      <div className={styles.logo}>
-        < img src={logo && logo[0].url} alt={logoText} />
-      </div>
-      <div className={styles.title} style={{ fontSize, color }}>
-        {logoText}
-      </div>
-    </header>
-  );
-});
-

我们只需要按照上面的方式编写组件即可,props是DSL定义的数据层,用来控制组件的shape,也就是组件的表现。我们看看header对应的template。

# template设计

const template = {
-  type: 'Header',
-  h: 28,
-  displayName: '页头组件'
-};
-export default template;
-

以上就是我们template的结构,type用来定义组件的类型,方便渲染器动态查找,h代表组件的初始化高度,我们可以自由设置。displayName是组件的中文名,用来在左侧组件面板中展示,方便用户理解,我们可以在template中自定义更多辅助信息,方便使用者更高效的使用我们的编辑器。

Last Updated: 1/17/2021, 9:57:34 PM
- - - diff --git a/doc-dist/zh/guide/componentDev/dynamicLoading.html b/doc-dist/zh/guide/componentDev/dynamicLoading.html deleted file mode 100644 index b213da5..0000000 --- a/doc-dist/zh/guide/componentDev/dynamicLoading.html +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -

# 组件动态加载

目前H5-Dooring的组件都是通过动态加载的方式引入,好处是我们在页面中只会加载我们需要的组件,不需要的组件不会被加载,这样可以提高页面加载的速度,这样做也会出现一些问题,比如一个长页面,配置了很多组件,那么一个页面加载过程可以会触发多次请求,目前还没有遇到性能问题,但后续会逐渐优化这个问题。

# umi3提供的dynamic

目前组件的动态加载我们采用的umi的dynamic方案,基于它我们上层封装了一个组件动态加载器,原理如下:

foo

具体代码可以参考Dooring的Github地址:https://github.com/MrXujiang/h5-Dooring (opens new window)

Last Updated: 1/17/2021, 9:57:34 PM
- - - diff --git a/doc-dist/zh/guide/deployDev/api.html b/doc-dist/zh/guide/deployDev/api.html deleted file mode 100644 index 4fbe7cb..0000000 --- a/doc-dist/zh/guide/deployDev/api.html +++ /dev/null @@ -1,313 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -

H5-Dooring后端部分主要使用 Nodejs 开发, 为了满足更多定制化需求和服务的可移植性, 特意编写了API接口文档, -方便大家使用不同的后端语言实现服务接入.

  • 注意: 接口统一前缀为/api/v0

# 用户相关

# 登录

用户登录接口

  • POST /vip/check
参数名 是否必选 类型 说明
n true string 用户名
co true string 密码

返回示例

{
-    "result": { 
-        "n": "test", 
-        "od": [], 
-        "h5": [
-            {
-                "t": "23242ED",
-                "n": "测试页面"
-            }
-        ], 
-        "rp": "AAAAA", 
-        "maxage": 300000 
-    }
-}
-

# 注销登录

注销接口

  • POST /vip/checkout

返回示例

{ 
-    "result": null, 
-    "msg": "退出成功"
-}
-

# 权限控制

不同用户级别所访问的页面权限不同, 这块可结合服务端已有代码设计属于自己的权限字段, 地址为server/src/router

# 用户列表

获取用户列表接口

  • GET /vip/all

获取用户列表需要账号满足以下条件:

  • 已登录
  • 为超级管理员

返回示例

[
-    {
-        "id": "", 
-        "n": "test", 
-        "co": "123456", 
-        "od": [], 
-        "h5": [
-            {
-                "t": "23242ED",
-                "n": "测试页面"
-            }
-        ], 
-        "wx": "Mr_xuxiaoxi", 
-        "rp": "AAAAA"
-    }
-]
-

# 添加用户

添加用户接口

  • POST /vip/add

先决条件:

  • 用户已登陆
  • 为超级管理员
参数名 是否必选 类型 说明
nickname true string 用户名
wx true string 微信号
co true string 密码

注: co是由笔者写的加密算法实现, 不需要手动填写, 详情见dooirng后台管理/用户管理页面.

返回示例

{
-    "id": "3422EF",
-    "n": "test",
-    "wx": "Mr_xuxiaoxi",
-    "co": "123456",
-    "od": [],
-    "h5": [],
-    "tpl": [],
-    "rp": "AAAAA",
-    "h5Num": 10,
-    "tplNum": 3
-}
-

# 修改用户信息

修改用户接口

  • POST /vip/edit

先决条件:

  • 用户已登陆
  • 为超级管理员
参数名 是否必选 类型 说明
id false string 用户ID
nickname false string 用户名
co false string 登录码
wx false string 微信号

返回示例

{
-    "state": 200,
-    "result": null,
-    "msg": "修改成功",
-}
-

# 删除用户

删除用户接口

  • DELETE /vip/del

先决条件:

  • 用户已登陆
  • 为超级管理员
参数名 是否必选 类型 说明
id true string 用户ID
wx true string 微信号
n true string 用户名

返回示例

{
-    "state": 200,
-    "result": null,
-    "msg": "删除成功",
-}
-

# H5页面管理

# 获取H5数据

  • GET /visible/h5/get

先决条件:

  • 用户已登陆
参数名 是否必选 类型 说明
tid true string H5唯一id

返回示例

{
-    "pageConfig": {
-        
-    },
-    "tpl": [
-        {
-            "id": "879742",
-            "item": {
-                "type": "Carousel",
-                "config": {
-                    "direction": "left",
-                    "swipeable": false,
-                    "autoPlay": false,
-                    "imgList": [
-                        {
-                            "id": "1",
-                            "title": "趣谈小课1",
-                            "desc": "致力于打造优质小课程",
-                            "link": "xxxxx",
-                            "imgUrl": [
-                                {
-                                    "uid": "001",
-                                    "name": "image.png",
-                                    "status": "done",
-                                    "url": "http://io.nainor.com/uploads/1_1740bd7c3dc.png"
-                                }
-                            ]
-                        },
-                        {
-                            "id": "2",
-                            "title": "趣谈小课1",
-                            "desc": "致力于打造优质小课程",
-                            "link": "xxxxx",
-                            "imgUrl": [
-                                {
-                                    "uid": "001",
-                                    "name": "image.png",
-                                    "status": "done",
-                                    "url": "http://io.nainor.com/uploads/2_1740bd8d525.png"
-                                }
-                            ]
-                        }
-                    ],
-                    "tplImg": "http://io.nainor.com/uploads/carousal_17442e1420f.png"
-                },
-                "h": 82,
-                "editableEl": [
-                    {
-                        "key": "direction",
-                        "name": "方向",
-                        "type": "Radio",
-                        "range": [
-                            {
-                                "key": "down",
-                                "text": "从上到下"
-                            },
-                            {
-                                "key": "left",
-                                "text": "从左到右"
-                            }
-                        ]
-                    },
-                    {
-                        "key": "swipeable",
-                        "name": "是否可拖拽",
-                        "type": "Switch"
-                    },
-                    {
-                        "key": "autoPlay",
-                        "name": "是否自动播放",
-                        "type": "Switch"
-                    },
-                    {
-                        "key": "imgList",
-                        "name": "图片列表",
-                        "type": "DataList"
-                    }
-                ],
-                "category": "base"
-            },
-            "point": {
-                "i": "x-0",
-                "x": 0,
-                "y": 13,
-                "w": 24,
-                "h": 82,
-                "isBounded": true
-            },
-            "status": "inToCanvas"
-        },
-        {
-            "id": "481194",
-            "item": {
-                "type": "Form",
-                "config": {
-                    "title": "表单定制组件",
-                    "fontSize": 18,
-                    "titColor": "rgba(60,60,60,1)",
-                    "titWeight": "400",
-                    "bgColor": "rgba(255,255,255,1)",
-                    "btnColor": "rgba(20,54,226,100)",
-                    "btnTextColor": "rgba(255,255,255,1)",
-                    "api": "",
-                    "formControls": [
-                        {
-                            "id": "1",
-                            "type": "Text",
-                            "label": "姓名",
-                            "placeholder": "请输入姓名"
-                        },
-                        {
-                            "id": "2",
-                            "type": "Number",
-                            "label": "年龄",
-                            "placeholder": " 请输入年龄"
-                        },
-                        {
-                            "id": "4",
-                            "type": "MySelect",
-                            "label": "爱好",
-                            "options": [
-                                {
-                                    "label": "选项一",
-                                    "value": "1"
-                                },
-                                {
-                                    "label": "选项二",
-                                    "value": "2"
-                                },
-                                {
-                                    "label": "选项三",
-                                    "value": "3"
-                                }
-                            ]
-                        }
-                    ]
-                },
-                "h": 172,
-                "category": "base"
-            },
-            "point": {
-                "i": "x-1",
-                "x": 0,
-                "y": 98,
-                "w": 24,
-                "h": 172,
-                "isBounded": true
-            },
-            "status": "inToCanvas"
-        }
-    ]
-}
-

# 保存H5数据

  • POST /visible/h5/save

先决条件:

  • 用户已登陆
参数名 是否必选 类型 说明
pageConfig false object H5页面配置数据
tpl true object H5页面组件配置数据
tid true string H5页面唯一id

参数示例

{
-    "pageConfig": {
-        "bgColor":"rgba(151,25,25,1)",
-        "title":"医院宣传页"
-    },
-    "tpl": [],
-    "tid": "EF123D3"
-}
-

返回示例

{
-    "state": 200,
-    "result": {
-        "tid": "EF123D3"
-    },
-    "msg": "保存成功"
-}
-

# 删除H5数据

  • DELETE /visible/h5/del

先决条件:

  • 用户已登陆
参数名 是否必选 类型 说明
tid true string H5页面唯一id

返回示例

{
-    "state": 200,
-    "result": [
-        {
-            "tid": "EF123D3",
-            "name": "test页面"
-        },
-        {
-            "tid": "EF123D6",
-            "name": "test2页面"
-        }
-    ],
-    "msg": "删除成功"
-}
-

# H5表单数据管理

# 保存表单数据

  • POST /vip/h5/form/post
参数名 是否必选 类型 说明
tid(query) true string H5页面唯一id
formData(body) true array H5页面表单数据

返回示例

{
-    "state": 200,
-    "result": null,
-    "msg": "表单提交成功"
-}
-

# 批量导入表单数据

  • POST /vip/h5/form/import
参数名 是否必选 类型 说明
tid(query) true string H5页面唯一id
formData(body) true array H5页面表单数据集合

返回示例

{
-    "state": 200,
-    "result": null,
-    "msg": "批量导入成功"
-}
-

# 删除表单数据

  • DELETE /vip/h5/form/del
参数名 是否必选 类型 说明
tid true string H5页面唯一id
ID true string 表单专属id

返回示例

{
-    "state": 200,
-    "result": null,
-    "msg": "删除成功"
-}
-

# 模版管理

# 获取模版库

  • GET /visible/tpls/free

返回示例

{
-    "state": 200,
-    "result": [
-        {
-            "img": "http://xxx/uploads/tpl_175adabd8dd.jpg",
-            "name": "合作模版",
-            "tid": "B73349B6"
-        }
-    ]
-}
-

# 保存模版

  • POST /visible/tpl/save

先决条件:

  • 用户已登陆
参数名 是否必选 类型 说明
name true string H5模版名称
cate true string H5模版分类
img false string H5模版封面图
tpl true array H5模版数据
pageConfig false object H5模版全局配置

返回示例

{
-    "state": 200,
-    "result": {
-        "tid": "B73349B6"
-    },
-    "msg": "保存成功"
-}
-

# 删除模版

  • DELETE /visible/tpl/del

先决条件:

  • 用户已登陆
参数名 是否必选 类型 说明
tid true string H5模版id

返回示例

{
-    "state": 200,
-    "result": null,
-    "msg": "删除成功"
-}
-

# 文件上传

# 数据统计

# 数据大盘接口

# 页面埋点

Last Updated: 2/15/2021, 12:27:31 AM
- - - diff --git a/doc-dist/zh/guide/deployDev/deploy.html b/doc-dist/zh/guide/deployDev/deploy.html deleted file mode 100644 index bf37471..0000000 --- a/doc-dist/zh/guide/deployDev/deploy.html +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -

私有化部署需要获取4个核心项目包, 包括

  • H5编辑器(h5_plus)
  • H5基座(h5)
  • Dooring管理后台(Dooring-Admin)
  • 服务端项目(Server)

获取以上四个核心源码工程需要满足商业授权协议, 具体可联系徐小夕 (opens new window)

# 部署架构图

H5-dooring部署

部署流程如下:

  1. 下载4个源码工程, 安装依赖(npm install 或 yarn)
  2. 打包3个前端工程至server的static目录下
  3. server下本地运行 yarn startnpm start 启动服务端进行本地测试
  4. 打包服务端代码, yarn build 生成 dist 目录, 建议使用 pm2nodejs服务的负载均衡, 运行 pm2 start dist/index.js启动生产环境代码

也可以将以上步骤集成到gitlab等CI, CD服务中, 进行自动化打包发布, 或者采用docker进行容器化部署.

Last Updated: 1/31/2021, 1:25:02 AM
- - - diff --git a/doc-dist/zh/guide/deployDev/https.html b/doc-dist/zh/guide/deployDev/https.html deleted file mode 100644 index da13ddd..0000000 --- a/doc-dist/zh/guide/deployDev/https.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -

目前H5-Dooring全面支持https部署, 具体方式方案如下.

# 前端工程

我们需要在前端工程中的src/pages/document.ejs中的head中添加如下代码:

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
-

目的是强制将页面中HTTP请求转换为HTTPS.

# 服务器工程

# 1. 申请SSL证书

# 2. 生成 server.csr+server.key

# 3. 通过证书链生成.pem文件

#server中的src/index.js按如下方式修改

// 忽略部分无影响代码
-import https from 'https';
-
-// 你的ssl存放路径, 建议直接放在server目录下
-const filePath = path.join(__dirname, '../ssl')
-
-// 启动逻辑
-async function start() {
-    // https配置
-    const httpsOptions = {
-        key: fs.readFileSync(path.join(filePath, '3536084__doctopia.com.cn.key')),  //ssl文件路径
-        cert: fs.readFileSync(path.join(filePath, '3536084__doctopia.com.cn.pem'))  //ssl文件路径
-    };
-	
-	// https服务
-    const server = https.createServer(httpsOptions, app.callback());
-
-    const io = require('socket.io')(server);
-	
-	// 忽略其他无影响代码
-	
-	// https默认443, 这里我们可以走公共配置
-	server.listen(443, () => {
-	    console.log(`服务器地址:${config.staticPath}`)
-	});
-}
-
-start()
-
Last Updated: 1/31/2021, 1:25:02 AM
- - - diff --git a/doc-dist/zh/guide/deployDev/oss.html b/doc-dist/zh/guide/deployDev/oss.html deleted file mode 100644 index 7a8eb5b..0000000 --- a/doc-dist/zh/guide/deployDev/oss.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -

H5-Dooring全面支持第三方对象存储服务, 我们以七牛云对象存储为例.

# 前端上传文件到oss

首先我们需要在第三方对象储存服务中配置对应的服务和域名. 其次安装对应的sdk, 如七牛云sdk:

import * as qiniu from 'qiniu-js';
-

其次我们修改h5_plus工程的Upload组件, 详细地址为src/core/FormComponents/Upload.

修改内容如下:

const fileName = file.name
-const suffix = '自定义文件后缀'
-const putExtra = {
-    fname: fileName,
-    params: {}
-}
-const uid = +new Date() + uuid(16, 8) + suffix
-// 使用七牛云上传api, 前提是提前在前端拿到对应的ticket, 可以通过请求的方式获取
-const observe = qiniu.upload(file, uid, this.state.qnToken.ticket, putExtra, {})
-observe.subscribe(() => {}, null, (res) => {
-    // 拼接路径
-    const url = `${this.state.qnToken.domain}/${res.key}`;
-    // 存库
-    const fileList = [{ uid, name: fileName, status: 'done', url }];
-    this.setState({
-        curImgUrl: url,
-        fileList
-    })
-    this.props.onChange && this.props.onChange(fileList)
-})
-

其他oss服务类似, 如果不清楚如何配置, 可以在H5-Dooring官网 (opens new window)中找到我们.

Last Updated: 1/31/2021, 1:25:02 AM
- - - diff --git a/doc-dist/zh/guide/directoryStructure.html b/doc-dist/zh/guide/directoryStructure.html deleted file mode 100644 index 70a43d8..0000000 --- a/doc-dist/zh/guide/directoryStructure.html +++ /dev/null @@ -1,327 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -
src
-├─ assets
-│  ├─ header.png
-│  ├─ form.png
-│  ├─ footer.png
-│  ├─ icon.png
-│  ├─ picture.png
-├─ components
-│  ├─ BackTop
-│  │  └─ index.js
-│  ├─ BasicShop
-│  │  ├─ BasicComponents
-│  │  │  ├─ Card
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Carousel
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Footer
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Form
-│  │  │  │  ├─ BaseForm.tsx
-│  │  │  │  ├─ BasePopoverForm.tsx
-│  │  │  │  ├─ baseForm.less
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Header
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Icon
-│  │  │  │  ├─ icon.ts
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Image
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ LongText
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Nav
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Notice
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Qrcode
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ RichText
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Text
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ WhiteTpl
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ XButton
-│  │  │  │  ├─ Modal.tsx
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ schema.ts
-│  │  │  └─ template.ts
-│  │  ├─ MediaComponents
-│  │  │  ├─ Audio
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Calendar
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Map
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Video
-│  │  │  │  ├─ index.css
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ schema.ts
-│  │  │  └─ template.ts
-│  │  ├─ ShopComponents
-│  │  │  ├─ CardLabel
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Coupons
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ List
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Tab
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ ZhuanLan
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ schema.ts
-│  │  │  └─ template.ts
-│  │  ├─ VisualComponents
-│  │  │  ├─ Area
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Chart
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Funnel
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Line
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Pie
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ Radar
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ WordCloud
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ XProgress
-│  │  │  │  ├─ index.less
-│  │  │  │  ├─ index.tsx
-│  │  │  │  ├─ schema.ts
-│  │  │  │  └─ template.ts
-│  │  │  ├─ schema.ts
-│  │  │  └─ template.ts
-│  │  ├─ common.ts
-│  │  └─ schema.ts
-│  ├─ Calibration
-│  │  ├─ index.less
-│  │  └─ index.tsx
-│  ├─ ErrorBundaries
-│  │  └─ index.tsx
-│  ├─ LoadingCp
-│  │  └─ index.tsx
-│  ├─ ModalTpl
-│  │  ├─ cate.js
-│  │  ├─ index.js
-│  │  └─ index.less
-│  └─ Zan
-│     ├─ index.less
-│     └─ index.tsx
-├─ core
-│  ├─ FormComponents
-│  │  ├─ CardPicker
-│  │  │  ├─ index.less
-│  │  │  └─ index.tsx
-│  │  ├─ Color
-│  │  │  ├─ index.less
-│  │  │  └─ index.tsx
-│  │  ├─ DataList
-│  │  │  ├─ editorModal.tsx
-│  │  │  ├─ index.less
-│  │  │  └─ index.tsx
-│  │  ├─ FormItems
-│  │  │  ├─ EditorModal.tsx
-│  │  │  ├─ FormItems.tsx
-│  │  │  ├─ formItems.less
-│  │  │  └─ index.tsx
-│  │  ├─ InteractionData
-│  │  │  ├─ index.less
-│  │  │  └─ index.tsx
-│  │  ├─ MutiText
-│  │  │  ├─ index.less
-│  │  │  └─ index.tsx
-│  │  ├─ Pos
-│  │  │  ├─ index.less
-│  │  │  └─ index.tsx
-│  │  ├─ Table
-│  │  │  ├─ index.less
-│  │  │  └─ index.tsx
-│  │  ├─ Upload
-│  │  │  ├─ index.less
-│  │  │  └─ index.tsx
-│  │  ├─ XEditor
-│  │  │  ├─ index.less
-│  │  │  └─ index.tsx
-│  │  └─ types.ts
-│  ├─ DynamicEngine.tsx
-│  ├─ FormRender.tsx
-│  ├─ ViewRender.tsx
-│  └─ viewRender.less
-├─ layouts
-│  ├─ __tests__
-│  │  └─ index.test.js
-│  ├─ index.less
-│  └─ index.tsx
-├─ pages
-│  ├─ __tests__
-│  │  └─ index.test.js
-│  ├─ editor
-│  │  ├─ components
-│  │  │  ├─ AvatorGroup
-│  │  │  │  └─ index.tsx
-│  │  │  ├─ CanvasControl
-│  │  │  │  ├─ index.less
-│  │  │  │  └─ index.tsx
-│  │  │  └─ Header
-│  │  │     ├─ index.js
-│  │  │     └─ index.less
-│  │  ├─ models
-│  │  │  └─ editorModal.js
-│  │  ├─ services
-│  │  │  └─ editorService.js
-│  │  ├─ Container.js
-│  │  ├─ SourceBox.tsx
-│  │  ├─ TargetBox.js
-│  │  ├─ index.js
-│  │  ├─ index.less
-│  │  └─ preview.tsx
-│  ├─ help
-│  │  ├─ index.less
-│  │  └─ index.tsx
-│  ├─ home
-│  │  ├─ index.less
-│  │  └─ index.tsx
-│  ├─ ide
-│  │  ├─ _draft.tsx
-│  │  ├─ index.less
-│  │  └─ index.tsx
-│  ├─ login
-│  │  ├─ index.less
-│  │  └─ index.tsx
-│  ├─ document.ejs
-│  └─ mobileTip.js
-├─ utils
-│  ├─ req.ts
-│  └─ tool.ts
-├─ app.tsx
-└─ global.css
-
-
Last Updated: 1/17/2021, 7:12:02 PM
- - - diff --git a/doc-dist/zh/guide/functionRealization/machinePreview.html b/doc-dist/zh/guide/functionRealization/machinePreview.html deleted file mode 100644 index 6b369fd..0000000 --- a/doc-dist/zh/guide/functionRealization/machinePreview.html +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -

# 真机预览

真机预览和网页预览的流程类似,工作流程如下:

foo

由于不同机型预览的效果有些许不同,最终效果以实际看到的为主。

Last Updated: 1/17/2021, 9:57:34 PM
- - - diff --git a/doc-dist/zh/guide/functionRealization/pagePreview.html b/doc-dist/zh/guide/functionRealization/pagePreview.html deleted file mode 100644 index bd21c86..0000000 --- a/doc-dist/zh/guide/functionRealization/pagePreview.html +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -

# 网页预览

我们看看网页预览的工作流程:

foo

前端预览界面:

foo
Last Updated: 1/17/2021, 9:57:34 PM
- - - diff --git a/doc-dist/zh/guide/functionRealization/revocation.html b/doc-dist/zh/guide/functionRealization/revocation.html deleted file mode 100644 index 66852a5..0000000 --- a/doc-dist/zh/guide/functionRealization/revocation.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -

# 撤销/重做

撤销重做我们主要使用了redux-undo这个库,配合Dva使用,具体使用方法参考如下操作:

import { createLogger } from 'redux-logger';
-import { message } from 'antd';
-import undoable, { StateWithHistory } from 'redux-undo';
-import { Reducer, AnyAction } from 'redux';
-
-export const dva = {
-  config: {
-    onAction: createLogger(),
-    onError(e: Error) {
-      message.error(e.message, 3);
-    },
-    onReducer: (reducer: Reducer<any, AnyAction>) => {
-      let undoReducer = undoable(reducer);
-      return function(state: StateWithHistory<any>, action: AnyAction) {
-        let newState = undoReducer(state, action);
-        let router = newState.present.router ? newState.present.router : newState.present.routing;
-        return { ...newState, router: router };
-      };
-    },
-  },
-};
-

以上我们就实现了全局配置redux-undo,在撤销重做按钮中我们就可以触发对应的方法来实现撤销重做的功能,其次我们还使用了redux-logger来实现redux的日志输出。

Last Updated: 1/17/2021, 9:57:34 PM
- - - diff --git a/doc-dist/zh/guide/functionRealization/saveJson.html b/doc-dist/zh/guide/functionRealization/saveJson.html deleted file mode 100644 index 7c532fa..0000000 --- a/doc-dist/zh/guide/functionRealization/saveJson.html +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -

# 保存json

我们配置好H5页面之后,如果希望其他人观看,我们可以保存页面并发送链接。但是如果有多人协作的需求,比如一个H5页面可能由多个人完成,这个时候该怎么实现呢?基于已有的方案,我们可以采用socket实现多人协同编辑,但是成本比较大,所有这里我们提供了保存json的功能。

我们可以将配置好的页面导出为json,发送给另一个人,这样另一个人通过导入该json文件可以实时看到当前的页面,这里还是依靠我们的页面渲染引擎viewEngine。实现思路也很简单,可以在github[https://github.com/MrXujiang/h5-Dooring (opens new window)]上参考体验。

Last Updated: 1/17/2021, 9:57:34 PM
- - - diff --git a/doc-dist/zh/guide/functionRealization/screenshot.html b/doc-dist/zh/guide/functionRealization/screenshot.html deleted file mode 100644 index 9d8bf9f..0000000 --- a/doc-dist/zh/guide/functionRealization/screenshot.html +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -

# 截图功能

截图功能这里我们主要使用了dom-to-image这个库,来将html转化为图片,并进行分享。

foo
Last Updated: 1/17/2021, 9:57:34 PM
- - - diff --git a/doc-dist/zh/guide/functionRealization/templateLibrary.html b/doc-dist/zh/guide/functionRealization/templateLibrary.html deleted file mode 100644 index 7a9f6b8..0000000 --- a/doc-dist/zh/guide/functionRealization/templateLibrary.html +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -

# 模板库实现思路

我们目前开放了模板库功能,一方面我们会定期配置行业模板,另一个方面Dooring还支持用户自己配置模板,可以一键保存到云端供用户使用。我们也可以将模板变成自己的页面共享给其他人。实现方式本质上是保存用户的配置信息,上传到服务器中做存储,在后台提供了管理模板的模块,可以修改,删除模板。如下图所示:

# 模板前台展示:

foo

# 模板后台展示:

foo
Last Updated: 1/17/2021, 9:57:34 PM
- - - diff --git a/doc-dist/zh/guide/index.html b/doc-dist/zh/guide/index.html deleted file mode 100644 index fd9322a..0000000 --- a/doc-dist/zh/guide/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -
foo

H5-Dooring 是一款功能强大,高可扩展的 H5 可视化页面配置解决方案,致力于提供一套简单方便、专业可靠、无限可能的 H5 落地页最佳实践。

# 功能特点

🎉 可扩展, Dooring 实现了较为完整的业务闭环,并使其模块化,编辑器内部功能接口也全部可以对接不同服务端语言,实现了标准化接口。此外还支持自定义组件,二次开发,设计模板等能力,以满足功能和跨领域的分层需求。

📦 开箱即用, Dooring 内置了表单渲染器、页面渲染器、动态加载内核等,仅需一套源码即可上手开发。并且还提供针对 React 的定制插件,内涵丰富的功能,可满足日常 80%的页面制作需求。

🚀 大量自研, 包含整个编辑器架构、组件设计、文档、请求库封装,后台管理系统等,满足日常项目的周边需求。

🚄 与时俱进, 在满足需求的同时,我们也不会停止对新技术的探索。比如更多营销组件、业务功能,后台管理可视化,PC 页面编辑器,数据大屏定制等等。

# 为什么选择 Dooring

目前github已超过 3000+star,上线 2 个月累计 500+用户使用,解决完善了 100+问题,后续会持续迭代,更新,自研优秀,先进的 lowcode/nocode 解决方案。

Last Updated: 3/22/2021, 10:16:35 AM
- - - diff --git a/doc-dist/zh/guide/introduced.html b/doc-dist/zh/guide/introduced.html deleted file mode 100644 index 235f235..0000000 --- a/doc-dist/zh/guide/introduced.html +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - h5-dooring - - - - - - - - -
foo

注:灰色部分还未实现,正在更新中...

Last Updated: 1/17/2021, 7:12:02 PM
- - - diff --git a/doc-dist/zh/guide/startedQuickly.html b/doc-dist/zh/guide/startedQuickly.html deleted file mode 100644 index a7ad68b..0000000 --- a/doc-dist/zh/guide/startedQuickly.html +++ /dev/null @@ -1,44 +0,0 @@ - - - - - - 快速上手 | h5-dooring - - - - - - - - -

# 快速上手

# 环境准备

首先得有 node,并确保 node 版本是 10.13 或以上,(mac/win 下推荐使用 n 来管理 node 版本)

$ node-v
-v10.13.0
-

注:推荐使用 yarn 管理 npm 依赖

# 源码工程

h5_plus(编辑器项目) admin(管理后台) Server(服务端项目)

本地拿到源码工程之后先安装对应依赖,在对应工程目录里执行 yarn 命令,等待依赖安装完成。

# 本地运行

1.首先本地启动 server,在 src 目录的 index.js 中修改跨域白名单,改为本地的 ip+端口,如http://192.167.0.3:8000

2.其次本地启动 h5_plus,启动完毕在浏览器打开对应的启动地址即可查看,如下:

foo
Last Updated: 1/17/2021, 7:12:02 PM
- - - diff --git a/doc/.vuepress/config.js b/doc/.vuepress/config.js index e9fd765..f87ac1b 100755 --- a/doc/.vuepress/config.js +++ b/doc/.vuepress/config.js @@ -12,7 +12,7 @@ module.exports = { // { text: '1.X', link: '/zh/guide/' }, // { text: '语言', link: '/zh/guide/' }, { text: '体验', link: 'http://h5.dooring.cn' }, - { text: 'github', link: 'https://github.com/MrXujiang/h5-Dooring' }, + { text: '私有化部署', link: 'http://h5.dooring.cn/h5_plus/price' }, ], sidebar: [ { @@ -27,6 +27,12 @@ module.exports = { collapsable: false, sidebarDepth: 1, }, + { + title: '产品介绍', + path: '/zh/guide/product', + collapsable: false, + sidebarDepth: 1, + }, { title: '快速上手', path: '/zh/guide/startedQuickly', @@ -86,6 +92,12 @@ module.exports = { collapsable: false, sidebarDepth: 1, }, + { + title: '下载源码', + path: '/zh/guide/functionRealization/download', + collapsable: false, + sidebarDepth: 1, + }, { title: '网页预览', path: '/zh/guide/functionRealization/pagePreview', @@ -112,6 +124,35 @@ module.exports = { }, ], }, + { + title: '组件商店', + collapsable: false, + sidebarDepth: 1, + type: 'group', + children: [ + { + name: 'intro', + title: '基本介绍', + path: '/zh/guide/componentShop/intro', + collapsable: false, + sidebarDepth: 2, + }, + { + name: 'uploadCp', + title: '上传组件', + path: '/zh/guide/componentShop/uploadCp', + collapsable: false, + sidebarDepth: 2, + }, + { + name: 'cpManage', + title: '组件审核', + path: '/zh/guide/componentShop/cpManage', + collapsable: false, + sidebarDepth: 1, + }, + ], + }, { title: '私有化部署和二次开发', collapsable: false, @@ -124,6 +165,18 @@ module.exports = { collapsable: false, sidebarDepth: 1, }, + { + title: 'v6.dooring私有化部署(临时)', + path: '/zh/guide/deployDev/deploy_v6', + collapsable: false, + sidebarDepth: 1, + }, + { + title: '服务端数据说明', + path: '/zh/guide/deployDev/dir', + collapsable: false, + sidebarDepth: 1, + }, { title: '支持https', path: '/zh/guide/deployDev/https', @@ -136,14 +189,32 @@ module.exports = { collapsable: false, sidebarDepth: 1, }, + { + title: '获取Form组件的值数据', + path: '/zh/guide/deployDev/form', + collapsable: false, + sidebarDepth: 1, + }, { title: 'API接口文档', path: '/zh/guide/deployDev/api', collapsable: false, sidebarDepth: 1, }, + { + title: '更新日志', + path: '/zh/guide/deployDev/log', + collapsable: false, + sidebarDepth: 1, + }, ], }, + { + title: 'FAQ', + path: '/zh/guide/FAQ', + collapsable: false, + sidebarDepth: 1, + }, ], }, }; diff --git a/doc/.vuepress/theme/global-components/Home.vue b/doc/.vuepress/theme/global-components/Home.vue index 94b2af1..cdece04 100755 --- a/doc/.vuepress/theme/global-components/Home.vue +++ b/doc/.vuepress/theme/global-components/Home.vue @@ -2,9 +2,10 @@

- {{ - data.heroText || $title || "Hello" - }} + {{ data.heroText || $title || "Hello" }}

@@ -71,12 +72,11 @@ $homePageWidth = 1080px text-align center img width: 190px - height 50px display inline-block margin initial margin-bottom 0 margin-right 20px - vertical-align sub + vertical-align -21px h1 font-size 1.5rem font-weight 600 diff --git a/doc/README.md b/doc/README.md index 2796aec..5e7f8b8 100644 --- a/doc/README.md +++ b/doc/README.md @@ -7,7 +7,7 @@ features: - title: 简洁方便 details: 任何人只需傻瓜式拖拽或进行简单编辑即可生成精美的H5页面 - title: 插拔式体验 - details: 产品以GPL协议开源, 授权后可植入任何系统,并支持二次开发 + details: 产品以GPL协议部分开源, 授权后可植入任何系统,并支持二次开发 - title: 持续迭代,无限可能 details: 目前正在持续迭代中,后续可根据需求开发功能更强大的可视化系统 actionText: 快速上手 → diff --git a/doc/img/common/WX20210515-215658@2x.png b/doc/img/common/WX20210515-215658@2x.png new file mode 100644 index 0000000..b531043 Binary files /dev/null and b/doc/img/common/WX20210515-215658@2x.png differ diff --git a/doc/img/common/v6.deploy.png b/doc/img/common/v6.deploy.png new file mode 100644 index 0000000..eb44518 Binary files /dev/null and b/doc/img/common/v6.deploy.png differ diff --git a/doc/img/functionRealization/down.png b/doc/img/functionRealization/down.png new file mode 100644 index 0000000..e9befda Binary files /dev/null and b/doc/img/functionRealization/down.png differ diff --git a/doc/zh/guide/FAQ.md b/doc/zh/guide/FAQ.md new file mode 100644 index 0000000..cd58cf0 --- /dev/null +++ b/doc/zh/guide/FAQ.md @@ -0,0 +1,28 @@ +dooring + +H5-Dooring 仍在持续迭代, 如果有任何问题, 可以点击 [立即反馈](http://h5.dooring.cn/h5?tid=86C45FAE)。 + +## 问题汇总 + +#### 1. 本地部署后, win系统下如何启动server? + +win下启动server, 需要将server/package.json的启动脚本修改为如下: + +``` js +"scripts": { + "start": "set NODE_ENV=development&& nodemon -w src --exec \"babel-node src\"", + // ... 其他不变 + }, +``` + +#### 2. 添加自定义组件, 需要改哪些文件? + +dooring支持根据企业自身业务添加自定义组件, 目前2.0版本添加自定义组件只需要在 `editor/src/components/BasicShop` 对应的组件分类下添加组件即可, 最后在 `editor/src/components/BasicShop/template.ts`下对应位置添加组件描述即可生效. 同时, 为了保证发布后的H5页面保持最新, 需要在部署发布代码前在H5工程中对应的位置也同步一份组件代码. 后续会对这一流程做一定的优化. + +#### 3. 本地如何调试对应的项目? + +授权后, 本地安装项目依赖, 在调试编辑器(editor)项目或后台管理项目(admin)前, 需要先启动服务器工程(server), 在 +`server/index.js` 代码中添加 editor / admin 项目的启动 `ip`, 这样就能跨域请求了, 同时需要修改 editor / admin 项目中 `utils/tools.ts` 下的api地址, 开发环境改为本地 `server` 项目的 `ip`. + + +如果在部署中遇到其他问题, 欢迎加我微信交流: `Mr_xuxiaoxi` diff --git a/doc/zh/guide/README.md b/doc/zh/guide/README.md index 52d177b..3c30c26 100644 --- a/doc/zh/guide/README.md +++ b/doc/zh/guide/README.md @@ -1,4 +1,4 @@ -foo +dooring H5-Dooring 是一款功能强大,高可扩展的 H5 可视化页面配置解决方案,致力于提供一套简单方便、专业可靠、无限可能的 H5 落地页最佳实践。 @@ -6,12 +6,12 @@ H5-Dooring 是一款功能强大,高可扩展的 H5 可视化页面配置解 🎉 **可扩展,** Dooring 实现了较为完整的业务闭环,并使其模块化,编辑器内部功能接口也全部可以对接不同服务端语言,实现了标准化接口。此外还支持自定义组件,二次开发,设计模板等能力,以满足功能和跨领域的分层需求。 -📦 **开箱即用,** Dooring 内置了**表单渲染器、页面渲染器、动态加载内核**等,仅需一套源码即可上手开发。并且还提供针对 React 的定制插件,内涵丰富的功能,可满足日常 80%的页面制作需求。 +📦 **开箱即用,** Dooring 内置了**表单渲染器、页面渲染器、动态加载内核**等,仅需一套源码即可上手开发。并且还提供针对 React 的定制插件,内涵丰富的功能,可满足日常 30%-60%的页面制作需求。 🚀 **大量自研,** 包含整个编辑器架构、组件设计、文档、请求库封装,后台管理系统等,满足日常项目的周边需求。 -🚄 **与时俱进,** 在满足需求的同时,我们也不会停止对新技术的探索。比如更多**营销组件、业务功能,后台管理可视化,PC 页面编辑器,数据大屏定制**等等。 +🚄 **与时俱进,** 在满足需求的同时,我们也不会停止对新技术的探索。比如更多**营销组件, 可视化组件, 功能组件**等等。 ## 为什么选择 Dooring -目前**github**已超过 3000+star,上线 2 个月累计 500+用户使用,解决完善了 100+问题,后续会持续迭代,更新,自研优秀,先进的 lowcode/nocode 解决方案。 +目前**github开源版**已超过 5200+star,上线 2 个月累计 1300+用户使用,解决完善了 100+问题,后续会持续迭代,更新,自研优秀,先进的 lowcode/nocode 解决方案。 diff --git a/doc/zh/guide/componentDev/componentStructure.md b/doc/zh/guide/componentDev/componentStructure.md index d273357..b9b2c73 100644 --- a/doc/zh/guide/componentDev/componentStructure.md +++ b/doc/zh/guide/componentDev/componentStructure.md @@ -59,3 +59,121 @@ export default template; ``` 以上就是我们template的结构,type用来定义组件的类型,方便渲染器动态查找,h代表组件的初始化高度,我们可以自由设置。displayName是组件的中文名,用来在左侧组件面板中展示,方便用户理解,我们可以在template中自定义更多辅助信息,方便使用者更高效的使用我们的编辑器。 + + +## schema设计 + +开发一个自定义组件需要包含3部分, `Component`, `Schema` 和 `Template`. 接下来我们看一下 `Header` 组件的 `Schema`. + +``` js +import { + IColorConfigType, + INumberConfigType, + ITextConfigType, + IUploadConfigType, + TColorDefaultType, + TNumberDefaultType, + TTextDefaultType, + TUploadDefaultType, +} from '@/components/FormComponents/types'; +import { baseConfig, baseDefault, ICommonBaseType } from '../../common'; + +export type THeaderEditData = Array< + IColorConfigType | INumberConfigType | IUploadConfigType | ITextConfigType +>; +export interface IHeaderConfig extends ICommonBaseType { + bgColor: TColorDefaultType; + logo: TUploadDefaultType; + logoText: TTextDefaultType; + fontSize: TNumberDefaultType; + color: TColorDefaultType; + height: TNumberDefaultType; +} + +export interface IHeaderSchema { + editData: THeaderEditData; + config: IHeaderConfig; +} + +const Header: IHeaderSchema = { + editData: [ + ...baseConfig, + { + key: 'bgColor', + name: '背景色', + type: 'Color', + }, + { + key: 'height', + name: '高度', + type: 'Number', + }, + { + key: 'logo', + name: 'logo', + type: 'Upload', + isCrop: true, + cropRate: 1000 / 618, + }, + { + key: 'logoText', + name: 'logo文字', + type: 'Text', + }, + { + key: 'color', + name: '文字颜色', + type: 'Color', + }, + { + key: 'fontSize', + name: '文字大小', + type: 'Number', + }, + ], + config: { + bgColor: 'rgba(0,0,0,1)', + logo: [ + { + uid: '001', + name: 'image.png', + status: 'done', + url: 'http://49.234.61.19/uploads/3_1740be8a482.png', + }, + ], + logoText: '页头Header', + fontSize: 20, + color: 'rgba(255,255,255,1)', + height: 50, + ...baseDefault, + }, +}; + +export default Header; +``` + +`editData`表示组件的可编辑属性, 我们可以自定义哪些组件可编辑. `config`为组件接收的属性, 和`editData`数组项中的`key`一一对应. + + +### 组件编辑区属性类型 + +`Dooring`组件编辑面板有如下对应编辑类型: + +- Upload 上传组件 +- Text 文本框 +- RichText 富文本 +- TextArea 多行文本 +- Number 数字输入框 +- DataList 列表编辑器 +- FileList 文件列表编辑器 +- InteractionData 交互设置 +- Color 颜色面板 +- MutiText 多文本 +- Select 选择下拉框 +- Radio 单选框 +- Switch 开关切换 +- CardPicker 卡片面板 +- Table 表格编辑器 +- Pos 坐标编辑器 +- FormItems 表单设计器 + diff --git a/doc/zh/guide/componentShop/cpManage.md b/doc/zh/guide/componentShop/cpManage.md new file mode 100644 index 0000000..0e07490 --- /dev/null +++ b/doc/zh/guide/componentShop/cpManage.md @@ -0,0 +1,16 @@ + +# 组件审核 + +组件审批主要由网站管理人员来操作,当用户组件提交成功之后,客户端会通过消息信令通知管理员,管理员收到消息后会审核组件。那么整个过程也很简单,我们可以使用 websocket 来实现消息双向通信,完整流程如下: + + + +通过以上的实现方式客户端和服务端就可以随时进行通信了。接下来我们看看审批的效果: + + + + diff --git a/doc/zh/guide/componentShop/intro.md b/doc/zh/guide/componentShop/intro.md new file mode 100644 index 0000000..7f7a93d --- /dev/null +++ b/doc/zh/guide/componentShop/intro.md @@ -0,0 +1,25 @@ + +## 组件商店基本介绍 + +对于可视化搭建平台而言,其中一个核心的环节就是组件资产。用户在设计搭建页面时会消费各种各样的组件,但是对于不同的用户而言,组件的需求往往是不一样的,大部分的 lowcode 或者 nocode 平台都不能很好的解决用户这些定制化的组件需求,所以为了解决这一问题,组件商店就孕育而生。 + + + +## 组件商店工作流设计 + +我们要想实现完整的组件商店工作流,需要满足以下几点: + +- 组件线上编辑(上传)模块 +- 组件审核模块 +- 组件更新/发布模块 +- 组件管理(上架/下架/删除/下载) + +有了以上4块的支持,基本的组件商店就可以 work 了。具体流程如下: + + + + diff --git a/doc/zh/guide/componentShop/uploadCp.md b/doc/zh/guide/componentShop/uploadCp.md new file mode 100644 index 0000000..db6dd3d --- /dev/null +++ b/doc/zh/guide/componentShop/uploadCp.md @@ -0,0 +1,19 @@ + +# 上传组件 + +当“ 生产者 ”编写好组件代码之后,需要对组件自身进行定义。因为可视化平台组件物料很依赖平台的组件开发协议,我们需要按照平台的规范去上传规范的自定义组件,这样平台才能更好的理解应用组件,保持用户认知的一致性。 +组件描述信息笔者这里设计了如下字段: + +- 组件名称 (中文) +- 组件名 (英文,方便存库) +- 组件分类 (基础,可视化,营销,媒体等) +- 组件默认大小 (宽高) +- 组件图标 (方便用户认知,查找) + + + + diff --git a/doc/zh/guide/deployDev/api.md b/doc/zh/guide/deployDev/api.md index fd66194..b03c711 100644 --- a/doc/zh/guide/deployDev/api.md +++ b/doc/zh/guide/deployDev/api.md @@ -11,7 +11,7 @@ ## 用户相关 -### 登录 +### 用户登录 用户登录接口 - `POST` /vip/check @@ -119,6 +119,47 @@ } ``` +### 生成登录码 + +生成登录码接口 +- `GET` /vip/gcode + +先决条件: +- 用户已登陆 +- 为超级管理员 + + +注: 生成登录码是由笔者写的`加密算法`实现, 不需要手动实现, 如果有自定义需求, 可以自行二次开发实现. + +返回示例 +``` json +{ + "co": "1x2fgggteee3456_zdd4", +} +``` + +`说明:` 为了保护用户信息安全, 返回的登录码是加密后的密文, 会调用笔者写的`xib.xip`方法进行加密, 如果想看到原始密码, 需要调用`xib.uxip`进行解密. + +### 获取用户真实密码 + +获取用户真实密码接口 +- `GET` /vip/gcode/get + +先决条件: +- 用户已登陆 +- 为超级管理员 + +| 参数名 | 是否必选 | 类型 | 说明 | +| ------------- |:-------------:|:-----:| -------------:| +| co | true | string | 加密后的密码 | + +返回示例 +``` json +{ + "co": "12345678", +} +``` + ### 修改用户信息 修改用户接口 @@ -521,8 +562,230 @@ ## 文件上传 +- `POST` /files/upload/free + +先决条件: +- 用户已登陆 + +| 参数名 | 是否必选 | 类型 | 说明 | +| ------------- |:-------------:|:-----:| -------------:| +| File | true | File | 文件对象 | + +返回示例 +``` json +{ + "state": 200, + "result": { + "filename": "H5-Dooring", + "url": "http://h5.dooring.cn/uploads/1_17ac208480d.png", + "size": 261972 + }, + "msg": "文件上传成功" +} +``` + ## 数据统计 ### 数据大盘接口 -### 页面埋点 \ No newline at end of file +- `GET` /vip/dashboard + +先决条件: +- 用户已登陆 + +返回示例 +``` json +{ + "state": 200, + "result": { + "userNums": 1300, + "pageNums": 808, + "tplNums": 86, + "views": 60235, + "userList": [] + } +} +``` + +## 组件商店 + +### 组件上传 + +- `POST` /visible/cp/save + +先决条件: +- 用户已登陆 + +| 参数名 | 是否必选 | 类型 | 说明 | +| ------------- |:-------------:|:-----:| -------------:| +| react | true | string | react字符串 | +| css | true | string | css字符串 | +| schema | true | string | schema字符串 | +| form | true | object | 表单对象 | + +返回示例 +``` json +{ + "state": 200, + "result": null, + "msg": "提交成功, 请等待审核..." +} +``` + +### 获取组件上传列表 + +- `GET` /visible/cp/list + +先决条件: +- 用户已登陆 + +返回示例 +``` json +{ + "state": 200, + "result": [ + { + "cpName":"test", + "cpField":"test", + "cate":"base", + "width":3, + "height":6, + "icon":"http://196.345.0.345:3000/uploads/1_17a8a4eaedf.png", + "ispass":3 + }, + { + "cpName":"test2", + "cpField":"test2", + "cate":"media", + "width":4, + "height":20, + "icon":"http://196.345.0.345:3000/uploads/1_17a8a4eaedf.png", + "ispass":1 + } + ], +} +``` + +### 获取组件详情 + +- `GET` /visible/cp/get + +先决条件: +- 用户已登陆 + +| 参数名 | 是否必选 | 类型 | 说明 | +| ------------- |:-------------:|:-----:| -------------:| +| cate | true | string | 组件分类 | +| cpField | true | string | 组件英文名字段 | + +返回示例 +``` json +{ + "state": 200, + "result": { + "react": "react代码", + "css": "css/less代码", + "schema": "schema的js/ts代码" + } +} +``` + +### 更新组件审批状态 + +- `POST` /visible/cp/update + +先决条件: +- 用户已登陆 + +| 参数名 | 是否必选 | 类型 | 说明 | +| ------------- |:-------------:|:-----:| -------------:| +| cate | true | string | 组件分类 | +| cpField | true | string | 组件英文名字段 | +| ispass | true | number | 组件审核状态, 0 待处理 1 审核中 2 审核通过 3 审核不通过 | + + +返回示例 +``` json +{ + "state": 200, + "result": null, + "msg": "审批成功" +} +``` + +### 删除组件 + +- `DELETE` /visible/cp/del + +先决条件: +- 用户已登陆 + +| 参数名 | 是否必选 | 类型 | 说明 | +| ------------- |:-------------:|:-----:| -------------:| +| cate | true | string | 组件分类 | +| cpField | true | string | 组件英文名字段 | + +返回示例 +``` json +{ + "state": 200, + "result": null, + "msg": "删除成功" +} +``` + +### 下载组件源码 + +- `POST` /visible/cp/download + +先决条件: +- 用户已登陆 + +| 参数名 | 是否必选 | 类型 | 说明 | +| ------------- |:-------------:|:-----:| -------------:| +| cate | true | string | 组件分类 | +| cpField | true | string | 组件英文名字段 | + +返回示例 +``` json +{ + "state": 200, + "result": "组件压缩包地址" +} +``` + +## 数据源管理 + +### 获取用户数据源 + +- `GET` /vip/sourcedata/get + +先决条件: +- 用户已登陆 + +返回示例 +``` json +{ + "state": 200, + "result": [], +} +``` + +### 保存用户数据源 + +- `POST` /vip/sourcedata/save + +先决条件: +- 用户已登陆 + +| 参数名 | 是否必选 | 类型 | 说明 | +| ------------- |:-------------:|:-----:| -------------:| +| sourcedata | true | array | 用户数据源集合 | + +返回示例 +``` json +{ + "state": 200, + "result": [] +} +``` diff --git a/doc/zh/guide/deployDev/deploy.md b/doc/zh/guide/deployDev/deploy.md index 5b9248b..b375f26 100644 --- a/doc/zh/guide/deployDev/deploy.md +++ b/doc/zh/guide/deployDev/deploy.md @@ -11,7 +11,7 @@ - Dooring管理后台(Dooring-Admin) - 服务端项目(Server) -获取以上四个核心源码工程需要满足商业授权协议, 具体可联系[徐小夕](http://h5.dooring.cn/uploads/WechatIMG3_1758e9753e2.jpeg) +获取以上四个核心源码工程需要满足商业授权协议, 具体可联系作者[徐小夕](http://h5.dooring.cn/uploads/WechatIMG3_1758e9753e2.jpeg) ### 部署架构图 diff --git a/doc/zh/guide/deployDev/deploy_v6.md b/doc/zh/guide/deployDev/deploy_v6.md new file mode 100644 index 0000000..a5222b6 --- /dev/null +++ b/doc/zh/guide/deployDev/deploy_v6.md @@ -0,0 +1,46 @@ + + +私有化部署需要获取3个核心项目包, 包括 +- 可视化大屏编辑器(v6.dooring/) +- v6管理后台(v6.dooring/manage) +- 服务端项目(v6.dooring/server) + +获取以上三个核心源码工程需要满足商业授权协议, 具体可参考[商业授权方案](http://h5.dooring.cn/h5_plus/price) + +### 部署架构图 + +H5-dooring部署 + +部署流程如下: + +1. 下载3个源码工程, 安装依赖(npm install 或 yarn) +2. 打包2个前端工程至`server`的static目录下 +3. 在`server`下本地运行 `yarn start` 或 `npm start` 启动服务端进行本地测试 +4. 打包服务端代码, `yarn build` 生成 `dist` 目录, 建议使用 `pm2` 做`nodejs`服务的负载均衡, 运行 `pm2 start dist/index.js`启动生产环境代码 + +也可以将以上步骤集成到gitlab等CI, CD服务中, 进行自动化打包发布, 或者采用`docker`进行容器化部署. + +### 步骤3.4详细流程 + +#### 1. 安装项目环境 + +服务器需提前安装node和pm2, 将本项目上传至服务器指定的目录(如/www/activity), 进入项目目录, 执行: +``` +npm install +``` + +#### 2. 修改项目域名 + +进入`./src/config/index.js`, 修改`staticPath`变量为当前服务器域名/ip, 如`http://xxx.com`或`http://xxx.com:8080`(如非80端口) + +#### 3. 编译项目 + +执行`npm run build`编译项目, 生成`dist`目录 + +#### 4. 运行项目 +在项目根目录执行 `pm2 start dist/index.js`启动项目 diff --git a/doc/zh/guide/deployDev/dir.md b/doc/zh/guide/deployDev/dir.md new file mode 100644 index 0000000..4413de2 --- /dev/null +++ b/doc/zh/guide/deployDev/dir.md @@ -0,0 +1,21 @@ + + +服务端主要是我们的`server`工程, 数据主要存放在`server/public`下, 具体数据指代含义我们接下来会详细介绍. +- bed 存放图片库中的分类图片, 私有化部署的用户可以直接在此处扩充图片(更好的建议是直接存到第三方图床) +- h5 用户保存的h5数据文件, 一个页面对应一个json文件 +- h5_tpl 平台保存的模版数据文件夹 + - xxx.json 模版页面文件 + - tpls.json 模版库中的模版列表数据, 可以手动清空 +- h5_vip 会员数据目录 + - form 会员制作的含表单页面的表单收集数据 + - view.json 用户浏览量数据 + - vip.json 会员列表数据 + - vipCard.json 会员订单数据(暂时无用, 可删除) +- image.json 图片库, 主要用来渲染页面的图片库数据 +- city.json 省市3级联动数据, 为表单组件提供数据支持 + diff --git a/doc/zh/guide/deployDev/form.md b/doc/zh/guide/deployDev/form.md new file mode 100644 index 0000000..fbccc59 --- /dev/null +++ b/doc/zh/guide/deployDev/form.md @@ -0,0 +1,41 @@ + + +### 获取Form组件的值数据 + +Form表单组件在`editor`目录下`src/components/BasicShop/BasicComponents`位置. + +Form组件是`Dooring`的核心组件之一, 内部的值通过Form组件内部收集, 当然我们也可以暴露出来让其他交互或者组件消费(需要一定的二次开发), 关键代码如下: + +``` js +req.post(`/vip/h5/form/post${location.search}`, {...fields, ...formData}).then(res => { + if(type === 'link') { + // 解析参数 + let isPre = content.indexOf('?') < 0; + let query = {dr: Date.now(), from: urlParmas.tid}; + try { + query = params ? {...JSON.parse(params), ...query} : query; + }catch(err) { + console.log(err) + } + + // 跳转 + if(content.indexOf('http') > -1) { + window.location.href = content + urlencode(query, isPre); + return + } + + history.push(`/m?tid=${content}&${urlencode(query)}`); + }else if(type === 'modal') { + setVisible(true); + }else if(type === 'code') { + eval(content); + } +}) +``` + +数据收集提交的核心代码在Form组件的第56-149行, 也就是`submit`方法. 表单组件收集到的数据统一存放在代码中的`formData`字段, 所以要想在其他地方获取用户表单填写的值, 我们只需要手动将`formData`传递出去, 或者挂载到全局(如window对象, localStorage, indexedDB等). \ No newline at end of file diff --git a/doc/zh/guide/deployDev/log.md b/doc/zh/guide/deployDev/log.md new file mode 100644 index 0000000..b1a7601 --- /dev/null +++ b/doc/zh/guide/deployDev/log.md @@ -0,0 +1,96 @@ + + +### 更新日志 + +#### 2.01 + +1. 优化编辑器加载性能 +2. iframe容器组件添加边框等属性 +3. 富文本组件添加背景色配置 +4. 修复真机预览时空数据还能显示二维码bug +5. 优化页面高度适配问题, 添加高度适配器 +6. 优化组件交互时空链接点击出现message bug +7. 更新dooring文档 + +#### 2.0 + +1. 完善数据源功能 +2. 轮播图/图片列表/List/文字跑马灯/横向滚动组件数据源对接完毕 +3. 组件库支持搜索功能 +4. 组件列表支持分页, 提高渲染性能 +5. 赞助墙交互优化 +6. 界面局部优化 + +#### 1.99 + +1. 添加数据源功能 +2. 视频组件支持封面图 +3. 优化页面DSL结构, 降低了jsonSchema体积30%-50% +4. 官网优化 +5. 管理后台替换logo, 部分文案信息 +6. 添加图片列表组件 +7. 轮播图支持一键绑定数据源 + + +#### 1.98 + +1. 编辑器功能区添加更多折叠下拉框, 优化头部界面 +2. 添加数据源入口和界面 +3. 模版库优化, 剔除无用模版, 累计60+模版 +4. 入口页添加赞助墙 +5. 升级视频组件, 支持弹幕, 截屏, 模式设置等功能 +6. 文件上传路径兼容window服务器本地化部署 + +#### 1.96 + +1. 修复首页推荐项目外链地址和站内文案 +2. 替换Dooring网站logo +3. 优化ios8以下访问H5时可能出现的页面卡顿问题 +4. 图片上传组件添加svg, gif图片格式支持 +5. 后台管理系统添加一键跳编辑器按钮 +6. 服务端编辑侧路由加固 +7. 文件上传组件添加自定义上传文档,支持七牛云,腾讯云,阿里oss等第三方图床方式 + +#### 1.95 + +1. dooring文档添加更新日志模块 +2. dooring增报错监控函数, 提供一键清空缓存按钮和自动重载功能 +3. 新增电商商品H5模版 +4. 页面配置增加背景模式和背景重复 +5. 表单添加字段名配置项 + +#### 1.94 + +1. 转盘组件支持转盘交互功能(跳转链接/打开弹窗/自定义代码) +2. 添加网站拦截, 防止页面误关导致页面无法保存 +3. 优化页面控制条组件样式 +4. 按钮组件添加组件动画 +5. 图片组件添加组件动画 +6. 媒体组件icon优化 +7. 全局错误监控组件添加一键清除缓存功能 + +#### 1.93 + +1. 上线源码下载功能 +2. 服务端支持下载源码服务和下载次数限制 +3. 界面部分文案优化 +4. 出码基座优化 +5. 抽奖组件支持抽奖后自定义交互(弹窗/链接/自定义代码) + +#### 1.92 + +1. 修复背景图预览适配问题 +2. 转盘组件支持中奖后自定义交互/弹窗/自定义代码 +3. 界面局部调整 +4. 后台管理表单数据支持多键查询 +5. 可视化大屏柱状图组件支持实时数据请求 + + + + + diff --git a/doc/zh/guide/deployDev/oss.md b/doc/zh/guide/deployDev/oss.md index 1e9e284..96ce6be 100644 --- a/doc/zh/guide/deployDev/oss.md +++ b/doc/zh/guide/deployDev/oss.md @@ -43,3 +43,76 @@ observe.subscribe(() => {}, null, (res) => { 其他oss服务类似, 如果不清楚如何配置, 可以在[H5-Dooring官网](http://h5.dooring.cn/)中找到我们. +### 如何接入任何第三方上传服务 + +首先我们的上传组件`Upload`使用内部的服务接口来实现上传功能, 所以需要给组件的`action`赋值, 如下: + +``` jsx + + {fileList.length >= maxLen ? null : uploadButton} + +``` +如果需要集成第三方oss, 如七牛云, 阿里oss等, 我们需要将`Upload`组件的`action`属性设置为空字符串, 其次删除`onChange`属性, 上传操作统一在`beforeUpload`中进行. 案例如下: + +``` jsx + + {fileList.length >= maxLen ? null : uploadButton} + +``` +自定义上传的核心逻辑放在了`beforeUpload`上. 我们具体看看`beforeUpload`这个方法如何实现. + +``` js +handleBeforeUpload = (file:RcFile) => { + // 1. 限制图片类型 + const isJpgOrPng = file.type === 'image/jpeg' || file.type === 'image/png' || file.type === 'image/jpg' || file.type === 'image/gif'; + if (!isJpgOrPng) { + message.error('只能上传格式为jpeg/png/gif的图片'); + } + // 限制上传文件大小 + const isLt3M = file.size / 1024 / 1024 < 3; + if (!isLt3M) { + message.error('图片必须小于3MB!'); + } + if(isJpgOrPng && isLt3M) { + // 3. 正常上传逻辑 + const fileName = file.name + // 3.1 调用oss接口, 将图片上传oss + // 3.2 将接口返回的url信息, 组装成fileList数据结构, 并更新state + const fileList = [{ uid, name: fileName, status: 'done', url }]; + this.setState({ + curImgUrl: url, + fileList, + }) + // 3.3 将数据传给上层保存 + this.props.onChange && this.props.onChange(fileList) + } + return isJpgOrPng && isLt3M; + } +``` + diff --git a/doc/zh/guide/functionRealization/download.md b/doc/zh/guide/functionRealization/download.md new file mode 100644 index 0000000..eaf35da --- /dev/null +++ b/doc/zh/guide/functionRealization/download.md @@ -0,0 +1,35 @@ + +## 下载源码 +目前Dooring已支持下载源码功能, 我们可以使用编辑器页面头部的下载按钮来实现下载用户搭建的H5源码. +foo + +源码下载之后是完整的React项目源代码, 开发人员可以直接根据自己的业务需求来二次编写代码来满足不同的业务需求. + +在拿到源码之后, 我们需要进入项目, 使用npm或者yarn安装项目依赖, 如下: + +``` bash +npm install +// 或者 +yarn +``` + +之后我们就可以本地运行项目了: + +``` bash +npm start +// 或者 +yarn start +``` + +因为源码工程采用`umi3.0`搭建, 所以代码配置可以参考`umi3.0`规范, 比如路由配置, `history`模式, 打包路径等, 二次开发完成之后, 我们可以执行: +``` bash +npm run build +// 或者 +yarn build +``` +将项目打包成html, 以便部署到任何服务器中. \ No newline at end of file diff --git a/doc/zh/guide/introduced.md b/doc/zh/guide/introduced.md index f7934c1..8539594 100644 --- a/doc/zh/guide/introduced.md +++ b/doc/zh/guide/introduced.md @@ -1,3 +1,3 @@ foo -注:灰色部分还未实现,正在更新中... +注:灰色部分不包括在实现范围内,可以参考商业授权版源码二次开发. diff --git a/doc/zh/guide/product.md b/doc/zh/guide/product.md new file mode 100644 index 0000000..0affad2 --- /dev/null +++ b/doc/zh/guide/product.md @@ -0,0 +1,177 @@ +dooring + +H5-Dooring 是一款功能强大,高可扩展的 H5 可视化页面配置解决方案,致力于提供一套简单方便、专业可靠、无限可能的 H5 落地页最佳实践。 + +## 背景介绍 + +**LowCode** 平台这两年在国内热度很高, 也有很多公司在着手设计能支撑更多业务场景的低代码平台, 但是国内发展仍然处于起步阶段, 还有非常多的问题需要处理。就我本人服务过的多家上市公司, 中后台业务非常复杂, 但是通用性非常高, 业务逻辑和展现形态有很多复用性, 为了解决复用性低和研发效能低的问题, **规则引擎** 孕育而生, 当然这只是 **Lowcode/nocode** 的一个过渡方案, 但已经能为企业提高20%以上的研发效率。 + +当然很多企业早已看到这样的机会, 也研发出了非常优秀的 **LowCode** 产品, 但是由于国内企业业务的复杂性, 很多 **LowCode** 产品都存在一定的局限, 所以各大中小企业也开始研究可视化搭建相关的产品, 可谓“百花齐放”。 + +[**H5-Dooring**](http://h5.dooring.cn/h5_plus) 正是为了解决企业内部可视化搭建需求的解决方案, 它更多的是提供一套可视化搭建解决方案, 以源码的方式交付企业, 使得企业能从此方案中受益, 二次开发适合自身业务需求的搭建平台。当然随着 [**H5-Dooring**](http://h5.dooring.cn/h5_plus) 的不断更新和完善, 部分企业甚至不需要二次开发就能直接使用 [**H5-Dooring**](http://h5.dooring.cn/h5_plus) , 我们也提供部署服务, 来快速帮企业做项目部署。目前已完成了常用的功能: + +- 微信/QQ分享(支持配置微信分享文案, 自定义分享图标) +- https服务支持解决方案 +- oss解决方案(已跑通七牛云上传服务) +- 国际化方案 + +同时由于 **H5-Dooring** 的核心在编辑器前端, 也是其最大价值所在, 我们服务层主要提供基础的数据支持服务(用户管理, H5页面管理, 模版管理, 基本页面统计等), 企业也可以轻松接入自己的服务后台,如 **java, php, go, python** 等。所以不用担心整合内部系统之后的数据问题, 同时我建议有二次开发需求的企业需要具备一定的技术能力, 比如**React, Nodejs** 等的开发经验。 + +## H5编辑器介绍 +接下来和大家详细介绍一下 [**H5-Dooring**](http://h5.dooring.cn/h5_plus) 编辑器的功能模块。 + +dooring + +### 1.入口页面 + +入口页面主要是我们在编辑器前台管理用户页面的一个入口, 我们可以创建H5页面, 在线编程等, 同时也能基于已有的精选模版来快速的创建页面: + +dooring + +### 2.编辑器页面 + +编辑器页面的内容比较多, 也是最为重要的部分。我们可以从几个部分来介绍: + +- 组件区 +- 画布区 +- 顶部功能区 +- 属性编辑面板 +- 数据源 +- 快捷键 +- 国际化 + +#### 2.1 组件区 + +dooring + +组件主要包括 基础组件, 图表组件, 媒体组件, 商品组件, 功能组件, 当然企业也可以基于自身业务划分不同的分类, 并进行组件的二次开发。我们只需要从左侧拖拽组件到画布, 即可使用该组件。 + +同时 [**H5-Dooring**](http://h5.dooring.cn/h5_plus) 还提供了组件定制的能力, 让用户选择自己常用的组件, 这样用户可以更高效的搭建页面: + +dooring + +由上图所示, 用户只需要选择或者取消选择, 可以决定组件是否在编辑器页面显示, 如果后期用户想恢复设置, 也可以在该页面恢复。 + +#### 2.2 画布区 + +画布区可以动态调整画布大小来试试预览不同尺寸的样式, 也可以移动画布, 缩放画布来快捷的操作页面: + +dooring + +#### 2.3 顶部功能区 + +顶部功能区包括的功能有: + +- 模版库 +- 保存 +- 下载源码 +- 导出json +- 导入json +- 预览 +- 真机预览 +- 撤销/重做 +- 删除 +- 截图 +- 页面设置 + +大家可以亲自体验一下。 + +#### 2.4 属性编辑面板 + +dooring + +属性编辑面板可以对组件的外观, 逻辑, 交互进行配置, 比较简单但大部分满足业务搭建需求, 企业技术人员也可以增量式地添加更多属性配置。 + +#### 2.5 数据源 + +数据源主要为瓶平台用户提供一种高效的数据接入机制, 不同页面或者统同一页面的不同组件可以共享数据: + +dooring + +更详细的数据源介绍可以参考我的文章 [Dooring可视化搭建平台数据源设计剖析](https://mp.weixin.qq.com/s?__biz=MzU2Mzk1NzkwOA==&mid=2247487877&idx=2&sn=770ff16d69d3e7ac2bbcd78e97ab8f32&chksm=fc53087ecb2481685451a50e892fa889781788ca16a4ce689ec7f7fff1ae99c91ac8b82a160d&token=1373546109&lang=zh_CN#rd) + +#### 2.6 快捷键 + +快捷键主要分为画布内组件的快捷键(复制, 删除)和全局的快捷键, 如下图所示: + +dooring + +#### 2.7 国际化 + +国际化目前已支持, 我们只需要在入口页面切换即可: + +dooring + + +### 3.预览页面 + +用户可以点击顶部功能区的预览按钮一键预览: + +dooring + +也可以在预览页面, 打开控制台调整为谷歌的仿真预览模式: + +dooring + +### 4.真机预览 + +dooring + +### 5.登录页面 + +dooring + + +## Dooring后台管理介绍 + +**Dooring后台管理** 主要是为 **H5-Dooring** 提供数据支撑, 比如增删查改等操作, 同时随着用户需求的不断增加, **Dooring后台管理** 目前已实现了非常多的功能, 比如说表单数据收集, 表单数据分析, 导出数据, 基本的页面数据监控等, 接下来我就来带大家介绍一下。 + +dooring + +我们可以从上图的编辑器界面右上角头像下拉框中进入后台管理系统。 + +### 1.后台主页 + +后台主页主要是对编辑器页面提供基本的访问量统计, 同时对用户数, 模版数, 页面数进行统计, 企业可以根据自身需求二次开发更多数据统计方案。 + +dooring + +### 2.用户管理 + +用户管理主要是对网站用户进行管理(注册, 修改, 删除, 查看等), 当然只有超级管理员能看到, 目前我们做了简单的权限管理: 超级管理员, 普通用户. 普通用户可以管理自己的页面, 查看页面数据分析等,超级管理员可以使用所有功能, 比如管理用户, 生成注册链接, 模版管理, 页面管理等, 同时可以审核页面, 一键删除其他用户产生的不符合规定的页面。 + +dooring + + +### 3.页面管理 + +页面管理主要是对用户搭建的H5页面进行管理, 我们可以查看页面的链接, 页面访问量, 编辑页面标题, 删除页面等,如果这个页面包含表单, 我们还能一键查看表单数据的收集情况,并一键进行数据分析。 + +dooring + + +#### 3.1表单页面数据分析 + +表单数据分析主要针对有表单的页面, 我们可以一键统计表单数据, 并生成分析报告, 如下图: + +dooring + +同时我们可以将数据导出为 `excel`, 或者将数据导入, 一键生成数据分析报告, 当然更多分析维度开发者也可以二次开发。 + +### 4.模版管理 + +超级管理员可以对用户产生的模版进行预览, 审核, 删除, 保证线上用户使用的模版都是精美可用的: + +dooring + +### 5.精选模版管理 + +精选模版主要是用来管理 **H5-Dooring** 入口页面中的模版, 我们可以把精美的行业模版上传到精选模版中, 让用户更高效的搭建页面: + +dooring + +## Dooring后台服务介绍 + +后台服务主要采用的 koa + nodejs, 同时还使用了微信 `sdk`, 轻松帮我们实现微信相关的功能, 接口遵循 `restful` 规范, 并且提供了接口文档, 企业可以轻松基于此使用自己的后端语言来接入, 比如 java, python, go, php等。 + + diff --git a/doc/zh/guide/startedQuickly.md b/doc/zh/guide/startedQuickly.md index e602de5..8fa31a1 100644 --- a/doc/zh/guide/startedQuickly.md +++ b/doc/zh/guide/startedQuickly.md @@ -1,5 +1,10 @@ # 快速上手 +## 从零搭建一个H5表单页面 + + + + ## 环境准备 首先得有 node,并确保 node 版本是 `10.13` 或以上,(mac/win 下推荐使用 n 来管理 node 版本) @@ -26,3 +31,9 @@ v10.13.0 2.其次本地启动 h5_plus,启动完毕在浏览器打开对应的启动地址即可查看,如下: foo + +## 项目路径说明 + +- `/h5_plus` H5编辑器项目 +- `/iH5` Dooring后台管理系统 +- `/doc` Dooring文档 diff --git a/logo.ff7fc6bb.png b/logo.ff7fc6bb.png new file mode 100644 index 0000000..bf5d90c Binary files /dev/null and b/logo.ff7fc6bb.png differ diff --git a/package.json b/package.json index 7dd3bb9..def1e23 100644 --- a/package.json +++ b/package.json @@ -44,6 +44,7 @@ "url": "https://github.com/MrXujiang/h5-Dooring/issues" }, "dependencies": { + "@alex_xu/react-slider-vertify": "^1.1.7", "@ant-design/icons": "^4.2.1", "@antv/f2": "^3.7.7", "@uiw/react-baidu-map": "^1.17.3", diff --git a/readme.md b/readme.md index 9fdc313..2571ea8 100644 --- a/readme.md +++ b/readme.md @@ -1,7 +1,7 @@ -> 让H5制作像搭积木一样简单! +> Make H5 as easy as building blocks!

- H5编辑器,H5制作神器,H5 editor,lowcode + H5编辑器,H5制作神器,H5 editor,lowcode

Welcome to H5-Dooring 👋

@@ -14,191 +14,106 @@

-> H5-Dooring是一款功能强大,专业可靠的H5可视化页面配置解决方案,致力于提供一套简单方便、专业可靠、无限可能的H5落地页最佳实践。技术栈以react为主, 后台采用nodejs开发。 - > H5-Dooring is a powerful, open source, free H5 visual page configuration solution dedicated to providing a simple, convenient, professional and reliable, unlimited set of H5 landing page best practices. The technology stack is mainly react, developed in the background using nodejs. -### 🏠 [Homepage](http://h5.dooring.cn) +H5-Dooring编辑器预览图 -### ✨ [Demo](http://h5.dooring.cn/h5_plus) +| home🏠 | demo✨ | doc📦 | tutorial | wiki | +| ----------- | ----------- | ----------- | ----------- | ----------- | +| [website](http://h5.dooring.cn) | [Demo](http://h5.dooring.cn/h5_plus) | [Document](http://h5.dooring.cn/doc) | [视频&Video](https://www.zhihu.com/zvideo/1406394315950653440) | [wiki](https://github.com/MrXujiang/h5-Dooring/wiki) -### 📦 doc(文档) [H5-Dooring Document](http://h5.dooring.cn/doc) +English | [简体中文](./zh.md) -### [视频教程 | Video tutorial](https://www.zhihu.com/zvideo/1326300284608417792) +Related products: - -![](http://h5.dooring.cn/uploads/dooring-sdk_1763cbe7028.png) - -相关产品: [V6.Dooring | 大屏可视化编辑器](https://github.com/MrXujiang/v6.dooring.public) +- [V6.Dooring | Large screen visual editor](https://github.com/MrXujiang/v6.dooring.public) +- [dooring-electron-lowcode | Dooring desktop software](https://github.com/MrXujiang/dooring-electron-lowcode) +- [Lowcode community](http://lowcode.dooring.cn) ## Author -👤 **徐小夕** +👤 **alex_xu** * Website: http://h5.dooring.cn * Github: [@MrXujiang](https://github.com/MrXujiang) -## 声明 - -专有软件及代码,未获得授权的情况下,禁止对该仓库代码进行反编译、分发等行为,否则将承担相应的法律后果。 - -## 🤝 Contributing +## 🤝 Contributing and support Contributions, issues and feature requests are welcome!
Feel free to check [issues page](https://github.com/MrXujiang/h5-Dooring/issues). -## Show your support - Give a ⭐️ if this project helped you! -## ⭐️ dooring-sdk使用 -最近笔者正在开放dooring的插拔式服务, 以js-sdk的形式支持集成到外部系统中, 并提供开放API共使用者自由配置. 规划如下: + +### Features +1. editor + - [x] Guides + - [x] The underlying component + - [x] Visual components + - [x] Media components + - [x] Product components + - [x] Dragper + - [x] Configure the panel + - [x] Form designer + - [x] (Multi) Page management (copy, edit, delete, new) + - [x] Component animation + - [x] Component interaction + - [x] Data source management + - [x] Quick preview + - [x] Real machine preview + - [x] Undo and redo + - [x] WeChat shares + - [x] shortcut key + - [x] The template library + - [x] Desktop software, Dooring-electron, supports offline use -![](http://h5.dooring.cn/uploads/sdk_1763cc11bd5.png) +2. Enhanced features + - [x] Upload json, convert to H5 with one click + - [x] Photo gallery + - [x] Code capability (download source, download dis package) + +4. backend API + - [x] Create, save, and update your work + - [x] User management, rights management + - [x] One-click intelligent analysis + - [x] Data look + - [x] Form data collection + - [x] Form data presentation + - [x] Form data analysis, one-click export excel, form multi-condition search + - [x] Preview online + - [x] QR code preview + - [x] Template management + - [x] Code interface + +## Update the log +1. Whether the video component adds a full-screen configuration item when playing +2. Fixes a click failure of the icon component +3. The editor supports multi-size switching and canvas size customization +4. Fix multilingual issues with background management analytics forms +5. The component library supports user-defined selection + +### The back-end section +The back-end part because of the knowledge points involved is more, is not the focus of this article, so here is a few points, you can use completely different technology to achieve back-office services, such as PHP, Java, Python or Egg. The author here is using the "koa" . + +Specific code can refer to the full stack development article: + +- [基于Koa + React + TS从零开发全栈文档编辑器](https://mp.weixin.qq.com/s?__biz=MzU2Mzk1NzkwOA==&mid=2247486910&idx=2&sn=7ce865dd8a8f6769439f0e8eebb72212&chksm=fc531445cb249d534a7d8a362ad40d26bc90f2d2e867385768ee19575e32826fcbe419fcbe0b&token=297396546&lang=zh_CN#rd) + +- [Dooring后台接口文档](http://h5.dooring.cn/doc/zh/guide/deployDev/api.html) +- [私有化部署](http://h5.dooring.cn/h5_plus/price) -### 1. 如何引用js-sdk | How to use js-sdk -我们可以使用两种方式来使用我们的js-sdk, 第一种是在项目脚本中引入如下script标签, 如下: -``` js - -``` -或者直接复制如下代码到你的script标签中, 代码如下: -``` js -(function(){var b=document.createElement("iframe");var d=Date.now();var a="http://49.234.61.19";b.src=a+"/h5_plus/editor?tid="+d+"&"+c(dooringOpts)+"&isOpen=1";console.log(c(dooringOpts));b.style.border="none";b.style.width="100vw";b.style.height="100vh";if(dooringOpts&&dooringOpts.iframeStyle){b.style.border=dooringOpts.iframeStyle.border||"none";b.style.width=dooringOpts.iframeStyle.width||"100vw";b.style.height=dooringOpts.iframeStyle.height||"100vh"}document.querySelector(dooringOpts.container||"body").appendChild(b);function c(g){var e=Object.assign({gallery:false,template:false,saveTemplate:true,save:true,downCode:true,isPhoneTest:false,helpPage:true,uploadApi:"",formApi:"",screenshotsApi:""},g.controls||{});var h="";for(var f in e){h+=f+"="+encodeURI(e[f])+"&"}return h.slice(0,h.length-1)}})(); -``` - -### 2. 自定义选项 | Custom options - -我们可以在全局定义如下配置项: - -``` js -var dooringOpts = { - container: '', // 挂载到哪个dom节点上 - iframeStyle: { // iframe自定义样式 - width: '', - height: '', - border: '' - }, - controls: { - gallery: false, // 是否启动图片库 - template: false, // 是否启用模版库 - saveTemplate: true, // 参数可以是true/false,表示是否启动下载代码, 也可以是函数, 用来自定义下载代码逻辑 - save: true, // 参数可以是true/false,表示是否启动下载代码, 也可以是函数, 用来自定义下载代码逻辑 - downCode: true, // 参数可以是true/false,表示是否启动下载代码, 也可以是函数, 用来自定义下载代码逻辑 - isPhoneTest: false, - helpPage: true, // false/true表示隐藏/显示帮助页面 - uploadApi: '', // 自定义上传api - formApi: '', // 自定义表单提交api - screenshotsApi: '' // 自定义截图提交api - } -}; -``` - -注: 在使用自定义配置时, 自定义配置的顺序应先于sdk引入的顺序, 所以正确的使用案例如下: - -``` js - - -``` - - -## 技术栈 | The technology stack -* **React** 前端主流框架(react,vue,angular)之一,更适合开发灵活度高且复杂的应用 -* **dva** 主流的react应用状态管理工具,基于redux -* **less** css预编译语言,轻松编写结构化分明的css -* **umi** 基于react的前端集成解决方案 -* **antd** 地球人都知道的react组件库 -* **axios** 强大的前端请求库 -* **react-dnd** 基于react的拖拽组件解决方案,具有优秀的设计哲学 -* **qrcode.react** 基于react的二维码生成插件 -* **zarm** 基于react的移动端ui库,轻松实现美观的H5应用 -* **koa** 基于nodejs的上一代开发框架,轻松实现基于nodejs的后端开发 -* **@koa/router** 基于koa2的服务端路由中间件 -* **ramda** 优秀的函数式js工具库 - -### 预览功能 | Preview features -预览功能这块比较简单, 我们只需要将用户生成的json数据丢进H5渲染器中即可, 这里我们需要做一个渲染页面单独用来预览组件. 先来看看几个预览效果: -> The preview function is relatively simple, we just need to throw the user-generated jason data into the H5 renderer, here we need to make a rendering page for the preview components separately. Let's take a look at a few previews: - -h5_preview_pic -
-h5_preview_pic - -前面的渲染器原理已经介绍了, 这里就不一一介绍了,感兴趣的可以交流讨论. - -### 实现在线下载功能 | Enable online download -在线下载这块我们需要用到一个开源库: **file-saver**, 专门解决前端下载文件困难的窘境. 具体使用举例: -``` js -var FileSaver = require('file-saver'); -var blob = new Blob(["Hello, world!"], {type: "text/plain;charset=utf-8"}); -FileSaver.saveAs(blob, "hello world.txt"); -``` -以上代码可以实现将传入的数据下载为txt文件, 如果是Blob, 是不是还能在线下载图片, html呢? 答案是肯定的, 所以我们的下载任务采用该方案来实现. - -### 后端部分 | The back-end section -后端部分由于涉及的知识点比较多, 不是本文考虑的重点, 所以这里大致提几个点, 大家可以用完全不同的技术来实现后台服务, 比如说**PHP**, **Java**, **Python**或者**Egg**. 笔者这里采用的是**koa**. 主要实现功能如下: -* 保存模板 | Save the template -* 真机预览的数据源存储 | The data source store for the real machine preview -* 用户相关功能 | User-related features -* H5图床和静态文件托管 | H5 map bed and static file hosting - -具体代码可以参考笔者的另一篇全栈开发文章 - -[基于nodeJS从0到1实现一个CMS全栈项目](https://juejin.im/post/6844903952761225230) - -模式基本一致. - -## wiki(参考文档) -* [H5可视化编辑器(H5 Dooring)介绍](https://github.com/MrXujiang/h5-Dooring/wiki/H5%E5%8F%AF%E8%A7%86%E5%8C%96%E7%BC%96%E8%BE%91%E5%99%A8(H5-Dooring)%E4%BB%8B%E7%BB%8D) -* [Form Editor(动态表单设计器)](https://github.com/MrXujiang/h5-Dooring/wiki/Form-Editor(%E5%8A%A8%E6%80%81%E8%A1%A8%E5%8D%95%E8%AE%BE%E8%AE%A1%E5%99%A8)) -* [基于f2实现移动端可视化编辑器(dooring升级版)](https://github.com/MrXujiang/h5-Dooring/wiki/%E5%9F%BA%E4%BA%8Ef2%E5%AE%9E%E7%8E%B0%E7%A7%BB%E5%8A%A8%E7%AB%AF%E5%8F%AF%E8%A7%86%E5%8C%96%E7%BC%96%E8%BE%91%E5%99%A8(dooring%E5%8D%87%E7%BA%A7%E7%89%88)) -* [实现H5可视化编辑器的实时预览和真机扫码预览功能](https://github.com/MrXujiang/h5-Dooring/wiki/%E5%AE%9E%E7%8E%B0H5%E5%8F%AF%E8%A7%86%E5%8C%96%E7%BC%96%E8%BE%91%E5%99%A8%E7%9A%84%E5%AE%9E%E6%97%B6%E9%A2%84%E8%A7%88%E5%92%8C%E7%9C%9F%E6%9C%BA%E6%89%AB%E7%A0%81%E9%A2%84%E8%A7%88%E5%8A%9F%E8%83%BD) -* [基于H5 Dooring场景下的图片 文件上传方案指南](https://github.com/MrXujiang/h5-Dooring/wiki/%E5%9F%BA%E4%BA%8EH5-Dooring%E5%9C%BA%E6%99%AF%E4%B8%8B%E7%9A%84%E5%9B%BE%E7%89%87-%E6%96%87%E4%BB%B6%E4%B8%8A%E4%BC%A0%E6%96%B9%E6%A1%88%E6%8C%87%E5%8D%97) - -## 已完成功能 | The functionality is complete -1. 组件库拖拽和显示 | Component library drag and display -2. 组件库动态编辑 | Component library dynamic editing -3. H5页面预览功能 | H5 page preview feature -4. 保存H5页面配置文件 | Save the H5 page profile -5. 保存为模版 | Save as a template -6. 移动端跨端适配 | Mobile cross-end fit -7. 媒体组件 | The media component -8. 在线下载网站代码功能 | Download the website code feature online -9. 添加typescript支持 | Add typescript support -10. 表单设计器/自定义表单组件 | Form designer/custom form components -11. 可视化组件Chart实现 | Visual component Chart implementation -12. 在线编程模块(Mini Web IDE) | Online programming module -13. 新增图表组件 面积图,折线图, 饼图 | Added chart component area chart, line chart, pie chart -14. 添加图片库,支持用户在线选择图片素材 | Add a picture library to allow users to select picture footage online -15. 升级图片组件为图文组件 | Upgrade the picture component to the picture component -16. 添加模版库 | Add a template library -17. 添加可视化组件(基于g2)如折线图, 饼图, 面积图等 | Add visualization components (based on g2) such as line charts, pie charts, area charts, etc -18. form组件文本框字段修改 | The form component text box field is modified -19. 清空按钮添加确认框 | Empty the button to add a confirmation box -20. 表单组件中添加展示型文本,用来对字段说明 | Add presentation text to the form component to describe the field -21. 支持组件复制, 右键删除 | Support for component replication, right-click deletion - -## 正在完成功能 | The functionality is being completed -* 丰富组件库组件 Enrich component library components -* 添加配置交互功能 Add configuration interaction -* 组件细分和代码优化 Component segmentation and code optimization -* 单元测试 Unit tests - -## Install(安装) -1. 下载代码 | Download the code +## Install +1. Download the code ```sh git clone https://github.com/MrXujiang/h5-Dooring.git ``` -2. 进入项目目录 | Go to the project catalog +2. Go to the project catalog ```sh cd ./h5-Dooring ``` -3. 安装依赖包 | Install the dependency package +3. Install the dependency package ```sh yarn install or @@ -207,7 +122,7 @@ cnpm install ## Usage -本地启动应用 | Launch the app locally +Launch the app locally ```sh yarn start or @@ -216,11 +131,11 @@ cnpm run start ## How to run the downloaded code ? - 1. 可以将压缩包解压直接放到服务器根目录, 访问根目录地址即可 - 2. `vscode`安装Live Server插件, 将下载的压缩包解压成文件夹, 用`vscode`打开, 点击Live Server即可, 注意要删除启动路径的`index.html`, 改成`/` + 1. The compression package can be unzipped directly to the server root, and access to the root address is sufficient + 2. 'vscode' installs the Live Server plug-in, unzips the downloaded compression package into a folder, opens with 'vscode', clicks on Live Server, and notes that to remove the 'index .html' of the startup path, change it to '/' -如发现本地启动后组件拖拽遇到奇怪的报错, 是应为第三方组件在开发环境的bug, 可以采用一下方式解决: +If you find that the local boot component drag and drop encountered strange errors, is the third-party component in the development environment bug, you can take a step to solve: > If you find that the local start-up component drag encountered strange errors, is a bug that should be a third-party component in the development environment, can be resolved in a way: ```sh @@ -228,32 +143,34 @@ yarn dev or cnpm run dev ``` -前提是先安装http-server模块. +The premise is to install the http-server module first. + +## Browsers support + + Modern browsers does not support IE browser + +| [IE / Edge](https://godban.github.io/browsers-support-badges/)
IEdge | [Firefox](https://godban.github.io/browsers-support-badges/)
Firefox | [Chrome](https://godban.github.io/browsers-support-badges/)
Chrome | [Safari](https://godban.github.io/browsers-support-badges/)
Safari | +| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | +| Edge | last 2 versions | last 2 versions | last 2 versions | ## Partner project + +* [mitu-editor - 轻量级且强大的图片编辑器](https://github.com/H5-Dooring/mitu-editor) * [powerNice - 一款轻量级文档管理编辑器](http://h5.dooring.cn/powernice/views) * [rc-drag - 基于react的轻量级拖拽缩放组件](https://github.com/MrXujiang/rc-drag) * [Luckysheet - 强大的在线excel编辑器](https://github.com/mengshukeji/Luckysheet) * [Blink - 一款自定义的生成故障艺术动画的组件库](https://github.com/MrXujiang/blink) * [frontend-developer-roadmap | 一个能提高开发者工作效率的前端js库汇总](https://github.com/MrXujiang/frontend-developer-roadmap) * [lucky-canvas 抽奖插件 | 一个支持H5, 微信小程序, React的抽奖插件](https://github.com/LuckDraw/lucky-canvas) +* [vue-admin-box | 免费并且开源的中后台管理系统模板](https://github.com/cmdparkour/vue-admin-box) +* [基于antd开箱即用的后台管理模版ant-simple-pro](https://github.com/lgf196/ant-simple-pro) -## 更新日志 | Update the log -1. 添加在线编程模块(在执行代码前先启动node服务 npm run server) -2. 添加客服机器人模块[chatbot-antd](https://www.npmjs.com/package/chatbot-antd) -3. 添加数据可视化模块 -4. 添加表单定制模块 +## Sponsored +Open source is not easy, with your sponsorship, we will do better + -## 持续升级 | Continuous upgrades -正在升级1.5版本,敬请期待... +## Technical feedback and communication +wechat:beautifulFront -## 赞助 | Sponsored -开源不易, 有了您的赞助, 我们会做的更好~ - - - -## 技术反馈和交流群 | Technical feedback and communication -微信:beautifulFront - - + diff --git a/src/assets/logo.png b/src/assets/logo.png new file mode 100644 index 0000000..bf5d90c Binary files /dev/null and b/src/assets/logo.png differ diff --git a/src/components/FormComponents/types.ts b/src/components/FormComponents/types.ts index 7dc2b40..92b3abf 100644 --- a/src/components/FormComponents/types.ts +++ b/src/components/FormComponents/types.ts @@ -43,7 +43,7 @@ export interface IDataListConfigType { key: string; name: string; type: 'DataList'; - cropRate: number; + cropRate?: number; } export type TDataListDefaultTypeItem = { @@ -51,8 +51,9 @@ export type TDataListDefaultTypeItem = { title: string; desc: string; link: string; - type?: number; imgUrl: TUploadDefaultType; + type?: number; + price?: string; }; export type TDataListDefaultType = Array; diff --git a/src/components/Zan/index.tsx b/src/components/Zan/index.tsx index 9facc20..ef7b95c 100644 --- a/src/components/Zan/index.tsx +++ b/src/components/Zan/index.tsx @@ -1,16 +1,15 @@ -import React, { memo, ReactElement, ReactNode } from 'react'; +import React, { memo } from 'react'; import { Button, Popover } from 'antd'; -import { serverUrl } from '@/utils/tool'; import styles from './index.less'; interface IProps { - text: any; + text?: any; } ///这组件写的有问题 popover会重定位 const content = (
- sponsorship + sponsorship
); diff --git a/src/core/renderer/ViewRender.tsx b/src/core/renderer/ViewRender.tsx index 3384ebc..10a112a 100644 --- a/src/core/renderer/ViewRender.tsx +++ b/src/core/renderer/ViewRender.tsx @@ -31,10 +31,11 @@ const ViewRender = memo((props: ViewProps) => { onDragStart={onDragStart} onResizeStop={onResizeStop} style={{ + minHeight: '100vh', backgroundColor: pageData && pageData.bgColor, backgroundImage: pageData && pageData.bgImage ? `url(${pageData.bgImage[0].url})` : 'initial', - backgroundSize: 'contain', + backgroundSize: '100%', backgroundRepeat: 'no-repeat', }} > diff --git a/src/layouts/index.tsx b/src/layouts/index.tsx index 23b6dab..0ce2f40 100644 --- a/src/layouts/index.tsx +++ b/src/layouts/index.tsx @@ -117,7 +117,7 @@ export default function Layout({ children }: IRouteComponentProps) {