From 4c1a5488bb8f3b9a829840b535527d42568cea2c Mon Sep 17 00:00:00 2001 From: Kyle Shockey Date: Thu, 13 Apr 2017 17:26:47 -0700 Subject: [PATCH] Parse spec url when deciding scheme for operation --- dist/swagger-ui.css | 1580 ++- dist/swagger-ui.css.map | 2 +- dist/swagger-ui.js | 16446 +++++++++++++++++++++++++- dist/swagger-ui.js.map | 2 +- src/core/plugins/spec/selectors.js | 6 +- test/core/plugins/spec-selectors.js | 41 +- 6 files changed, 18063 insertions(+), 14 deletions(-) diff --git a/dist/swagger-ui.css b/dist/swagger-ui.css index 80ff0cd4..a4892e6a 100644 --- a/dist/swagger-ui.css +++ b/dist/swagger-ui.css @@ -1,2 +1,1580 @@ -@charset "UTF-8";.swagger-ui html{box-sizing:border-box}.swagger-ui *,.swagger-ui :after,.swagger-ui :before{box-sizing:inherit}.swagger-ui body{margin:0;background:#fafafa}.swagger-ui .wrapper{width:100%;max-width:1460px;margin:0 auto;padding:0 20px}.swagger-ui .opblock-tag-section{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swagger-ui .opblock-tag{display:-webkit-box;display:-ms-flexbox;display:flex;padding:10px 20px 10px 10px;cursor:pointer;-webkit-transition:all .2s;transition:all .2s;border-bottom:1px solid rgba(59,65,81,.3);-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui .opblock-tag:hover{background:rgba(0,0,0,.02)}.swagger-ui .opblock-tag{font-size:24px;margin:0 0 5px;font-family:Titillium Web,sans-serif;color:#3b4151}.swagger-ui .opblock-tag.no-desc span{-webkit-box-flex:1;-ms-flex:1;flex:1}.swagger-ui .opblock-tag svg{-webkit-transition:all .4s;transition:all .4s}.swagger-ui .opblock-tag small{font-size:14px;font-weight:400;padding:0 10px;-webkit-box-flex:1;-ms-flex:1;flex:1;font-family:Open Sans,sans-serif;color:#3b4151}.swagger-ui .parŠ°meter__type{font-size:12px;padding:5px 0;font-family:Source Code Pro,monospace;font-weight:600;color:#3b4151}.swagger-ui .view-line-link{position:relative;top:3px;width:20px;margin:0 5px;cursor:pointer;-webkit-transition:all .5s;transition:all .5s}.swagger-ui .opblock{margin:0 0 15px;border:1px solid #000;border-radius:4px;box-shadow:0 0 3px rgba(0,0,0,.19)}.swagger-ui .opblock.is-open .opblock-summary{border-bottom:1px solid #000}.swagger-ui .opblock .opblock-section-header{padding:8px 20px;background:hsla(0,0%,100%,.8);box-shadow:0 1px 2px rgba(0,0,0,.1)}.swagger-ui .opblock .opblock-section-header,.swagger-ui .opblock .opblock-section-header label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui .opblock .opblock-section-header label{font-size:12px;font-weight:700;margin:0;font-family:Titillium Web,sans-serif;color:#3b4151}.swagger-ui .opblock .opblock-section-header label span{padding:0 10px 0 0}.swagger-ui .opblock .opblock-section-header h4{font-size:14px;margin:0;-webkit-box-flex:1;-ms-flex:1;flex:1;font-family:Titillium Web,sans-serif;color:#3b4151}.swagger-ui .opblock .opblock-summary-method{font-size:14px;font-weight:700;min-width:80px;padding:6px 15px;text-align:center;border-radius:3px;background:#000;text-shadow:0 1px 0 rgba(0,0,0,.1);font-family:Titillium Web,sans-serif;color:#fff}.swagger-ui .opblock .opblock-summary-path,.swagger-ui .opblock .opblock-summary-path__deprecated{font-size:16px;display:-webkit-box;display:-ms-flexbox;display:flex;padding:0 10px;font-family:Source Code Pro,monospace;font-weight:600;color:#3b4151;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui .opblock .opblock-summary-path .view-line-link,.swagger-ui .opblock .opblock-summary-path__deprecated .view-line-link{position:relative;top:2px;width:0;margin:0;cursor:pointer;-webkit-transition:all .5s;transition:all .5s}.swagger-ui .opblock .opblock-summary-path:hover .view-line-link,.swagger-ui .opblock .opblock-summary-path__deprecated:hover .view-line-link{width:18px;margin:0 5px}.swagger-ui .opblock .opblock-summary-path__deprecated{text-decoration:line-through}.swagger-ui .opblock .opblock-summary-description{font-size:13px;-webkit-box-flex:1;-ms-flex:1;flex:1;font-family:Open Sans,sans-serif;color:#3b4151}.swagger-ui .opblock .opblock-summary{display:-webkit-box;display:-ms-flexbox;display:flex;padding:5px;cursor:pointer;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui .opblock.opblock-post{border-color:#49cc90;background:rgba(73,204,144,.1)}.swagger-ui .opblock.opblock-post .opblock-summary-method{background:#49cc90}.swagger-ui .opblock.opblock-post .opblock-summary{border-color:#49cc90}.swagger-ui .opblock.opblock-put{border-color:#fca130;background:rgba(252,161,48,.1)}.swagger-ui .opblock.opblock-put .opblock-summary-method{background:#fca130}.swagger-ui .opblock.opblock-put .opblock-summary{border-color:#fca130}.swagger-ui .opblock.opblock-delete{border-color:#f93e3e;background:rgba(249,62,62,.1)}.swagger-ui .opblock.opblock-delete .opblock-summary-method{background:#f93e3e}.swagger-ui .opblock.opblock-delete .opblock-summary{border-color:#f93e3e}.swagger-ui .opblock.opblock-get{border-color:#61affe;background:rgba(97,175,254,.1)}.swagger-ui .opblock.opblock-get .opblock-summary-method{background:#61affe}.swagger-ui .opblock.opblock-get .opblock-summary{border-color:#61affe}.swagger-ui .opblock.opblock-patch{border-color:#50e3c2;background:rgba(80,227,194,.1)}.swagger-ui .opblock.opblock-patch .opblock-summary-method{background:#50e3c2}.swagger-ui .opblock.opblock-patch .opblock-summary{border-color:#50e3c2}.swagger-ui .opblock.opblock-head{border-color:#9012fe;background:rgba(144,18,254,.1)}.swagger-ui .opblock.opblock-head .opblock-summary-method{background:#9012fe}.swagger-ui .opblock.opblock-head .opblock-summary{border-color:#9012fe}.swagger-ui .opblock.opblock-options{border-color:#0d5aa7;background:rgba(13,90,167,.1)}.swagger-ui .opblock.opblock-options .opblock-summary-method{background:#0d5aa7}.swagger-ui .opblock.opblock-options .opblock-summary{border-color:#0d5aa7}.swagger-ui .opblock.opblock-deprecated{opacity:.6;border-color:#ebebeb;background:hsla(0,0%,92%,.1)}.swagger-ui .opblock.opblock-deprecated .opblock-summary-method{background:#ebebeb}.swagger-ui .opblock.opblock-deprecated .opblock-summary{border-color:#ebebeb}.swagger-ui .opblock .opblock-schemes{padding:8px 20px}.swagger-ui .opblock .opblock-schemes .schemes-title{padding:0 10px 0 0}.swagger-ui .tab{display:-webkit-box;display:-ms-flexbox;display:flex;margin:20px 0 10px;padding:0;list-style:none}.swagger-ui .tab li{font-size:12px;min-width:100px;min-width:90px;padding:0;cursor:pointer;font-family:Titillium Web,sans-serif;color:#3b4151}.swagger-ui .tab li:first-of-type{position:relative;padding-left:0}.swagger-ui .tab li:first-of-type:after{position:absolute;top:0;right:6px;width:1px;height:100%;content:"";background:rgba(0,0,0,.2)}.swagger-ui .tab li.active{font-weight:700}.swagger-ui .opblock-description-wrapper,.swagger-ui .opblock-title_normal{padding:15px 20px}.swagger-ui .opblock-description-wrapper,.swagger-ui .opblock-description-wrapper h4,.swagger-ui .opblock-title_normal,.swagger-ui .opblock-title_normal h4{font-size:12px;margin:0 0 5px;font-family:Open Sans,sans-serif;color:#3b4151}.swagger-ui .opblock-description-wrapper p,.swagger-ui .opblock-title_normal p{font-size:14px;margin:0;font-family:Open Sans,sans-serif;color:#3b4151}.swagger-ui .execute-wrapper{padding:20px;text-align:right}.swagger-ui .execute-wrapper .btn{width:100%;padding:8px 40px}.swagger-ui .body-param-options{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swagger-ui .body-param-options .body-param-edit{padding:10px 0}.swagger-ui .body-param-options label{padding:8px 0}.swagger-ui .body-param-options label select{margin:3px 0 0}.swagger-ui .responses-inner{padding:20px}.swagger-ui .responses-inner h4,.swagger-ui .responses-inner h5{font-size:12px;margin:10px 0 5px;font-family:Open Sans,sans-serif;color:#3b4151}.swagger-ui .response-col_status{font-size:14px;font-family:Open Sans,sans-serif;color:#3b4151}.swagger-ui .response-col_status .response-undocumented{font-size:11px;font-family:Source Code Pro,monospace;font-weight:600;color:#999}.swagger-ui .response-col_description__inner span{font-size:12px;font-style:italic;display:block;margin:10px 0;padding:10px;border-radius:4px;background:#41444e;font-family:Source Code Pro,monospace;font-weight:600;color:#fff}.swagger-ui .response-col_description__inner span p{margin:0}.swagger-ui .opblock-body pre{font-size:12px;margin:0;padding:10px;white-space:pre-wrap;border-radius:4px;background:#41444e;font-family:Source Code Pro,monospace;font-weight:600;color:#fff}.swagger-ui .opblock-body pre span{color:#fff!important}.swagger-ui .scheme-container{margin:0 0 20px;padding:30px 0;background:#fff;box-shadow:0 1px 2px 0 rgba(0,0,0,.15)}.swagger-ui .scheme-container .schemes{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui .scheme-container .schemes>label{font-size:12px;font-weight:700;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:-20px 15px 0 0;font-family:Titillium Web,sans-serif;color:#3b4151}.swagger-ui .scheme-container .schemes>label select{min-width:130px;text-transform:uppercase}.swagger-ui .loading-container{padding:40px 0 60px}.swagger-ui .loading-container .loading{position:relative}.swagger-ui .loading-container .loading:after{font-size:10px;font-weight:700;position:absolute;top:50%;left:50%;content:"loading";-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);text-transform:uppercase;font-family:Titillium Web,sans-serif;color:#3b4151}.swagger-ui .loading-container .loading:before{position:absolute;top:50%;left:50%;display:block;width:60px;height:60px;margin:-30px;content:"";-webkit-animation:rotation 1s infinite linear,opacity .5s;animation:rotation 1s infinite linear,opacity .5s;opacity:1;border:2px solid rgba(85,85,85,.1);border-top-color:rgba(0,0,0,.6);border-radius:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden}@-webkit-keyframes rotation{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes rotation{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes blinker{50%{opacity:0}}@keyframes blinker{50%{opacity:0}}.swagger-ui .btn{font-size:14px;font-weight:700;padding:5px 23px;-webkit-transition:all .3s;transition:all .3s;border:2px solid #888;border-radius:4px;background:transparent;box-shadow:0 1px 2px rgba(0,0,0,.1);font-family:Titillium Web,sans-serif;color:#3b4151}.swagger-ui .btn[disabled]{cursor:not-allowed;opacity:.3}.swagger-ui .btn:hover{box-shadow:0 0 5px rgba(0,0,0,.3)}.swagger-ui .btn.cancel{border-color:#ff6060;font-family:Titillium Web,sans-serif;color:#ff6060}.swagger-ui .btn.authorize{line-height:1;display:inline;color:#49cc90;border-color:#49cc90}.swagger-ui .btn.authorize span{float:left;padding:4px 20px 0 0}.swagger-ui .btn.authorize svg{fill:#49cc90}.swagger-ui .btn.execute{-webkit-animation:pulse 2s infinite;animation:pulse 2s infinite;color:#fff;border-color:#4990e2}@-webkit-keyframes pulse{0%{color:#fff;background:#4990e2;box-shadow:0 0 0 0 rgba(73,144,226,.8)}70%{box-shadow:0 0 0 5px rgba(73,144,226,0)}to{color:#fff;background:#4990e2;box-shadow:0 0 0 0 rgba(73,144,226,0)}}@keyframes pulse{0%{color:#fff;background:#4990e2;box-shadow:0 0 0 0 rgba(73,144,226,.8)}70%{box-shadow:0 0 0 5px rgba(73,144,226,0)}to{color:#fff;background:#4990e2;box-shadow:0 0 0 0 rgba(73,144,226,0)}}.swagger-ui .btn-group{display:-webkit-box;display:-ms-flexbox;display:flex;padding:30px}.swagger-ui .btn-group .btn{-webkit-box-flex:1;-ms-flex:1;flex:1}.swagger-ui .btn-group .btn:first-child{border-radius:4px 0 0 4px}.swagger-ui .btn-group .btn:last-child{border-radius:0 4px 4px 0}.swagger-ui .authorization__btn{padding:0 10px;border:none;background:none}.swagger-ui .authorization__btn.locked{opacity:1}.swagger-ui .authorization__btn.unlocked{opacity:.4}.swagger-ui .expand-methods,.swagger-ui .expand-operation{border:none;background:none}.swagger-ui .expand-methods svg,.swagger-ui .expand-operation svg{width:20px;height:20px}.swagger-ui .expand-methods{padding:0 10px}.swagger-ui .expand-methods:hover svg{fill:#444}.swagger-ui .expand-methods svg{-webkit-transition:all .3s;transition:all .3s;fill:#777}.swagger-ui button{cursor:pointer;outline:none}.swagger-ui select{font-size:14px;font-weight:700;padding:5px 40px 5px 10px;border:2px solid #41444e;border-radius:4px;background:#f7f7f7 url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCI+ICAgIDxwYXRoIGQ9Ik0xMy40MTggNy44NTljLjI3MS0uMjY4LjcwOS0uMjY4Ljk3OCAwIC4yNy4yNjguMjcyLjcwMSAwIC45NjlsLTMuOTA4IDMuODNjLS4yNy4yNjgtLjcwNy4yNjgtLjk3OSAwbC0zLjkwOC0zLjgzYy0uMjctLjI2Ny0uMjctLjcwMSAwLS45NjkuMjcxLS4yNjguNzA5LS4yNjguOTc4IDBMMTAgMTFsMy40MTgtMy4xNDF6Ii8+PC9zdmc+) right 10px center no-repeat;background-size:20px;box-shadow:0 1px 2px 0 rgba(0,0,0,.25);font-family:Titillium Web,sans-serif;color:#3b4151;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swagger-ui select[multiple]{margin:5px 0;padding:5px;background:#f7f7f7}.swagger-ui .opblock-body select{min-width:230px}.swagger-ui label{font-size:12px;font-weight:700;margin:0 0 5px;font-family:Titillium Web,sans-serif;color:#3b4151}.swagger-ui input[type=email],.swagger-ui input[type=password],.swagger-ui input[type=search],.swagger-ui input[type=text]{min-width:100px;margin:5px 0;padding:8px 10px;border:1px solid #d9d9d9;border-radius:4px;background:#fff}.swagger-ui input[type=email].invalid,.swagger-ui input[type=password].invalid,.swagger-ui input[type=search].invalid,.swagger-ui input[type=text].invalid{-webkit-animation:shake .4s 1;animation:shake .4s 1;border-color:#f93e3e;background:#feebeb}@-webkit-keyframes shake{10%,90%{-webkit-transform:translate3d(-1px,0,0);transform:translate3d(-1px,0,0)}20%,80%{-webkit-transform:translate3d(2px,0,0);transform:translate3d(2px,0,0)}30%,50%,70%{-webkit-transform:translate3d(-4px,0,0);transform:translate3d(-4px,0,0)}40%,60%{-webkit-transform:translate3d(4px,0,0);transform:translate3d(4px,0,0)}}@keyframes shake{10%,90%{-webkit-transform:translate3d(-1px,0,0);transform:translate3d(-1px,0,0)}20%,80%{-webkit-transform:translate3d(2px,0,0);transform:translate3d(2px,0,0)}30%,50%,70%{-webkit-transform:translate3d(-4px,0,0);transform:translate3d(-4px,0,0)}40%,60%{-webkit-transform:translate3d(4px,0,0);transform:translate3d(4px,0,0)}}.swagger-ui textarea{font-size:12px;width:100%;min-height:280px;padding:10px;border:none;border-radius:4px;outline:none;background:hsla(0,0%,100%,.8);font-family:Source Code Pro,monospace;font-weight:600;color:#3b4151}.swagger-ui textarea:focus{border:2px solid #61affe}.swagger-ui textarea.curl{font-size:12px;min-height:100px;margin:0;padding:10px;resize:none;border-radius:4px;background:#41444e;font-family:Source Code Pro,monospace;font-weight:600;color:#fff}.swagger-ui .checkbox{padding:5px 0 10px;-webkit-transition:opacity .5s;transition:opacity .5s;color:#333}.swagger-ui .checkbox label{display:-webkit-box;display:-ms-flexbox;display:flex}.swagger-ui .checkbox p{font-weight:400!important;font-style:italic;margin:0!important;font-family:Source Code Pro,monospace;font-weight:600;color:#3b4151}.swagger-ui .checkbox input[type=checkbox]{display:none}.swagger-ui .checkbox input[type=checkbox]+label>.item{position:relative;top:3px;display:inline-block;width:16px;height:16px;margin:0 8px 0 0;padding:5px;cursor:pointer;border-radius:1px;background:#e8e8e8;box-shadow:0 0 0 2px #e8e8e8;-webkit-box-flex:0;-ms-flex:none;flex:none}.swagger-ui .checkbox input[type=checkbox]+label>.item:active{-webkit-transform:scale(.9);transform:scale(.9)}.swagger-ui .checkbox input[type=checkbox]:checked+label>.item{background:#e8e8e8 url("data:image/svg+xml;charset=utf-8,%3Csvg width='10' height='8' viewBox='3 7 10 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%2341474E' fill-rule='evenodd' d='M6.333 15L3 11.667l1.333-1.334 2 2L11.667 7 13 8.333z'/%3E%3C/svg%3E") 50% no-repeat}.swagger-ui .dialog-ux{position:fixed;z-index:9999;top:0;right:0;bottom:0;left:0}.swagger-ui .dialog-ux .backdrop-ux{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.8)}.swagger-ui .dialog-ux .modal-ux{position:absolute;z-index:9999;top:50%;left:50%;width:100%;min-width:300px;max-width:650px;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);border:1px solid #ebebeb;border-radius:4px;background:#fff;box-shadow:0 10px 30px 0 rgba(0,0,0,.2)}.swagger-ui .dialog-ux .modal-ux-content{overflow-y:auto;max-height:540px;padding:20px}.swagger-ui .dialog-ux .modal-ux-content p{font-size:12px;margin:0 0 5px;color:#41444e;font-family:Open Sans,sans-serif;color:#3b4151}.swagger-ui .dialog-ux .modal-ux-content h4{font-size:18px;font-weight:600;margin:15px 0 0;font-family:Titillium Web,sans-serif;color:#3b4151}.swagger-ui .dialog-ux .modal-ux-header{display:-webkit-box;display:-ms-flexbox;display:flex;padding:12px 0;border-bottom:1px solid #ebebeb;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui .dialog-ux .modal-ux-header .close-modal{padding:0 10px;border:none;background:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swagger-ui .dialog-ux .modal-ux-header h3{font-size:20px;font-weight:600;margin:0;padding:0 20px;-webkit-box-flex:1;-ms-flex:1;flex:1;font-family:Titillium Web,sans-serif;color:#3b4151}.swagger-ui .model{font-size:12px;font-weight:300;font-family:Source Code Pro,monospace;font-weight:600;color:#3b4151}.swagger-ui .model-toggle{font-size:10px;position:relative;top:6px;display:inline-block;margin:auto .3em;cursor:pointer;-webkit-transition:-webkit-transform .15s ease-in;transition:-webkit-transform .15s ease-in;transition:transform .15s ease-in;transition:transform .15s ease-in,-webkit-transform .15s ease-in;-webkit-transform:rotate(90deg);transform:rotate(90deg);-webkit-transform-origin:50% 50%;transform-origin:50% 50%}.swagger-ui .model-toggle.collapsed{-webkit-transform:rotate(0deg);transform:rotate(0deg)}.swagger-ui .model-toggle:after{display:block;width:20px;height:20px;content:"";background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z'/%3E%3C/svg%3E") 50% no-repeat;background-size:100%}.swagger-ui .model-jump-to-path{position:relative;cursor:pointer}.swagger-ui .model-jump-to-path .view-line-link{position:absolute;top:-.4em;cursor:pointer}.swagger-ui .model-title{position:relative}.swagger-ui .model-title:hover .model-hint{visibility:visible}.swagger-ui .model-hint{position:absolute;top:-1.8em;visibility:hidden;padding:.1em .5em;white-space:nowrap;color:#ebebeb;border-radius:4px;background:rgba(0,0,0,.7)}.swagger-ui section.models{margin:30px 0;border:1px solid rgba(59,65,81,.3);border-radius:4px}.swagger-ui section.models.is-open{padding:0 0 20px}.swagger-ui section.models.is-open h4{margin:0 0 5px;border-bottom:1px solid rgba(59,65,81,.3)}.swagger-ui section.models.is-open h4 svg{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.swagger-ui section.models h4{font-size:16px;display:-webkit-box;display:-ms-flexbox;display:flex;margin:0;padding:10px 20px 10px 10px;cursor:pointer;-webkit-transition:all .2s;transition:all .2s;font-family:Titillium Web,sans-serif;color:#777;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui section.models h4 svg{-webkit-transition:all .4s;transition:all .4s}.swagger-ui section.models h4 span{-webkit-box-flex:1;-ms-flex:1;flex:1}.swagger-ui section.models h4:hover{background:rgba(0,0,0,.02)}.swagger-ui section.models h5{font-size:16px;margin:0 0 10px;font-family:Titillium Web,sans-serif;color:#777}.swagger-ui section.models .model-jump-to-path{position:relative;top:5px}.swagger-ui section.models .model-container{margin:0 20px 15px;-webkit-transition:all .5s;transition:all .5s;border-radius:4px;background:rgba(0,0,0,.05)}.swagger-ui section.models .model-container:hover{background:rgba(0,0,0,.07)}.swagger-ui section.models .model-container:first-of-type{margin:20px}.swagger-ui section.models .model-container:last-of-type{margin:0 20px}.swagger-ui section.models .model-box{background:none}.swagger-ui .model-box{padding:10px;border-radius:4px;background:rgba(0,0,0,.1)}.swagger-ui .model-box .model-jump-to-path{position:relative;top:4px}.swagger-ui .model-title{font-size:16px;font-family:Titillium Web,sans-serif;color:#555}.swagger-ui span>span.model,.swagger-ui span>span.model .brace-close{padding:0 0 0 10px}.swagger-ui .prop-type{color:#55a}.swagger-ui .prop-enum{display:block}.swagger-ui .prop-format{color:#999}.swagger-ui table{width:100%;padding:0 10px;border-collapse:collapse}.swagger-ui table.model tbody tr td{padding:0;vertical-align:top}.swagger-ui table.model tbody tr td:first-of-type{width:100px;padding:0}.swagger-ui table.headers td{font-size:12px;font-weight:300;vertical-align:middle;font-family:Source Code Pro,monospace;font-weight:600;color:#3b4151}.swagger-ui table tbody tr td{padding:10px 0 0;vertical-align:top}.swagger-ui table tbody tr td:first-of-type{width:20%;padding:10px 0}.swagger-ui table thead tr td,.swagger-ui table thead tr th{font-size:12px;font-weight:700;padding:12px 0;text-align:left;border-bottom:1px solid rgba(59,65,81,.2);font-family:Open Sans,sans-serif;color:#3b4151}.swagger-ui .parameters-col_description p{font-size:14px;margin:0;font-family:Open Sans,sans-serif;color:#3b4151}.swagger-ui .parameters-col_description input[type=text]{width:100%;max-width:340px}.swagger-ui .parameter__name{font-size:16px;font-weight:400;font-family:Titillium Web,sans-serif;color:#3b4151}.swagger-ui .parameter__name.required{font-weight:700}.swagger-ui .parameter__name.required:after{font-size:10px;position:relative;top:-6px;padding:5px;content:"required";color:rgba(255,0,0,.6)}.swagger-ui .parameter__in{font-size:12px;font-style:italic;font-family:Source Code Pro,monospace;font-weight:600;color:#888}.swagger-ui .table-container{padding:20px}.swagger-ui .topbar{padding:8px 30px;background-color:#89bf04}.swagger-ui .topbar .topbar-wrapper{-ms-flex-align:center}.swagger-ui .topbar .topbar-wrapper,.swagger-ui .topbar a{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center}.swagger-ui .topbar a{font-size:1.5em;font-weight:700;text-decoration:none;-webkit-box-flex:1;-ms-flex:1;flex:1;-ms-flex-align:center;font-family:Titillium Web,sans-serif;color:#fff}.swagger-ui .topbar a span{margin:0;padding:0 10px}.swagger-ui .topbar .download-url-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.swagger-ui .topbar .download-url-wrapper input[type=text]{min-width:350px;margin:0;border:2px solid #547f00;border-radius:4px 0 0 4px;outline:none}.swagger-ui .topbar .download-url-wrapper .download-url-button{font-size:16px;font-weight:700;padding:4px 40px;border:none;border-radius:0 4px 4px 0;background:#547f00;font-family:Titillium Web,sans-serif;color:#fff}.swagger-ui .info{margin:50px 0}.swagger-ui .info hgroup.main{margin:0 0 20px}.swagger-ui .info hgroup.main a{font-size:12px}.swagger-ui .info p{font-size:14px;font-family:Open Sans,sans-serif;color:#3b4151}.swagger-ui .info code{padding:3px 5px;border-radius:4px;background:rgba(0,0,0,.05);font-family:Source Code Pro,monospace;font-weight:600;color:#9012fe}.swagger-ui .info a{font-size:14px;-webkit-transition:all .4s;transition:all .4s;font-family:Open Sans,sans-serif;color:#4990e2}.swagger-ui .info a:hover{color:#1f69c0}.swagger-ui .info>div{margin:0 0 5px}.swagger-ui .info .base-url{font-size:12px;font-weight:300!important;margin:0;font-family:Source Code Pro,monospace;font-weight:600;color:#3b4151}.swagger-ui .info .title{font-size:36px;margin:0;font-family:Open Sans,sans-serif;color:#3b4151}.swagger-ui .info .title small{font-size:10px;position:relative;top:-5px;display:inline-block;margin:0 0 0 5px;padding:2px 4px;vertical-align:super;border-radius:57px;background:#7d8492}.swagger-ui .info .title small pre{margin:0;font-family:Titillium Web,sans-serif;color:#fff}.swagger-ui .auth-btn-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;padding:10px 0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.swagger-ui .auth-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1;flex:1;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.swagger-ui .auth-wrapper .authorize{padding-right:20px}.swagger-ui .auth-container{margin:0 0 10px;padding:10px 20px;border-bottom:1px solid #ebebeb}.swagger-ui .auth-container:last-of-type{margin:0;padding:10px 20px;border:0}.swagger-ui .auth-container h4{margin:5px 0 15px!important}.swagger-ui .auth-container .wrapper{margin:0;padding:0}.swagger-ui .auth-container input[type=password],.swagger-ui .auth-container input[type=text]{min-width:230px}.swagger-ui .auth-container .errors{font-size:12px;padding:10px;border-radius:4px;font-family:Source Code Pro,monospace;font-weight:600;color:#3b4151}.swagger-ui .scopes h2{font-size:14px;font-family:Titillium Web,sans-serif;color:#3b4151}.swagger-ui .scope-def{padding:0 0 20px}.swagger-ui .errors-wrapper{margin:20px;padding:10px 20px;-webkit-animation:scaleUp .5s;animation:scaleUp .5s;border:2px solid #f93e3e;border-radius:4px;background:rgba(249,62,62,.1)}.swagger-ui .errors-wrapper .error-wrapper{margin:0 0 10px}.swagger-ui .errors-wrapper .errors h4{font-size:14px;margin:0;font-family:Source Code Pro,monospace;font-weight:600;color:#3b4151}.swagger-ui .errors-wrapper .errors small{color:#666}.swagger-ui .errors-wrapper hgroup{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui .errors-wrapper hgroup h4{font-size:20px;margin:0;-webkit-box-flex:1;-ms-flex:1;flex:1;font-family:Titillium Web,sans-serif;color:#3b4151}@-webkit-keyframes scaleUp{0%{-webkit-transform:scale(.8);transform:scale(.8);opacity:0}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes scaleUp{0%{-webkit-transform:scale(.8);transform:scale(.8);opacity:0}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.swagger-ui .Resizer.vertical.disabled{display:none} +@charset "UTF-8"; +.swagger-ui html { + box-sizing: border-box; +} + +.swagger-ui *, +.swagger-ui *:before, +.swagger-ui *:after { + box-sizing: inherit; +} + +.swagger-ui body { + margin: 0; + background: #fafafa; +} + +.swagger-ui .wrapper { + width: 100%; + max-width: 1460px; + margin: 0 auto; + padding: 0 20px; +} + +.swagger-ui .opblock-tag-section { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; +} + +.swagger-ui .opblock-tag { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + padding: 10px 20px 10px 10px; + cursor: pointer; + -webkit-transition: all .2s; + transition: all .2s; + border-bottom: 1px solid rgba(59, 65, 81, 0.3); + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.swagger-ui .opblock-tag:hover { + background: rgba(0, 0, 0, 0.02); +} + +.swagger-ui .opblock-tag { + font-size: 24px; + margin: 0 0 5px 0; + font-family: 'Titillium Web', sans-serif; + color: #3b4151; +} + +.swagger-ui .opblock-tag.no-desc span { + -webkit-box-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.swagger-ui .opblock-tag svg { + -webkit-transition: all .4s; + transition: all .4s; +} + +.swagger-ui .opblock-tag small { + font-size: 14px; + font-weight: normal; + padding: 0 10px; + -webkit-box-flex: 1; + -ms-flex: 1; + flex: 1; + font-family: 'Open Sans', sans-serif; + color: #3b4151; +} + +.swagger-ui .parŠ°meter__type { + font-size: 12px; + padding: 5px 0; + font-family: 'Source Code Pro', monospace; + font-weight: 600; + color: #3b4151; +} + +.swagger-ui .view-line-link { + position: relative; + top: 3px; + width: 20px; + margin: 0 5px; + cursor: pointer; + -webkit-transition: all .5s; + transition: all .5s; +} + +.swagger-ui .opblock { + margin: 0 0 15px 0; + border: 1px solid #000; + border-radius: 4px; + box-shadow: 0 0 3px rgba(0, 0, 0, 0.19); +} + +.swagger-ui .opblock.is-open .opblock-summary { + border-bottom: 1px solid #000; +} + +.swagger-ui .opblock .opblock-section-header { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + padding: 8px 20px; + background: rgba(255, 255, 255, 0.8); + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1); + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.swagger-ui .opblock .opblock-section-header label { + font-size: 12px; + font-weight: bold; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + margin: 0; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + font-family: 'Titillium Web', sans-serif; + color: #3b4151; +} + +.swagger-ui .opblock .opblock-section-header label span { + padding: 0 10px 0 0; +} + +.swagger-ui .opblock .opblock-section-header h4 { + font-size: 14px; + margin: 0; + -webkit-box-flex: 1; + -ms-flex: 1; + flex: 1; + font-family: 'Titillium Web', sans-serif; + color: #3b4151; +} + +.swagger-ui .opblock .opblock-summary-method { + font-size: 14px; + font-weight: bold; + min-width: 80px; + padding: 6px 15px; + text-align: center; + border-radius: 3px; + background: #000; + text-shadow: 0 1px 0 rgba(0, 0, 0, 0.1); + font-family: 'Titillium Web', sans-serif; + color: #fff; +} + +.swagger-ui .opblock .opblock-summary-path, +.swagger-ui .opblock .opblock-summary-path__deprecated { + font-size: 16px; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + padding: 0 10px; + font-family: 'Source Code Pro', monospace; + font-weight: 600; + color: #3b4151; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.swagger-ui .opblock .opblock-summary-path .view-line-link, +.swagger-ui .opblock .opblock-summary-path__deprecated .view-line-link { + position: relative; + top: 2px; + width: 0; + margin: 0; + cursor: pointer; + -webkit-transition: all .5s; + transition: all .5s; +} + +.swagger-ui .opblock .opblock-summary-path:hover .view-line-link, +.swagger-ui .opblock .opblock-summary-path__deprecated:hover .view-line-link { + width: 18px; + margin: 0 5px; +} + +.swagger-ui .opblock .opblock-summary-path__deprecated { + text-decoration: line-through; +} + +.swagger-ui .opblock .opblock-summary-description { + font-size: 13px; + -webkit-box-flex: 1; + -ms-flex: 1; + flex: 1; + font-family: 'Open Sans', sans-serif; + color: #3b4151; +} + +.swagger-ui .opblock .opblock-summary { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + padding: 5px; + cursor: pointer; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.swagger-ui .opblock.opblock-post { + border-color: #49cc90; + background: rgba(73, 204, 144, 0.1); +} + +.swagger-ui .opblock.opblock-post .opblock-summary-method { + background: #49cc90; +} + +.swagger-ui .opblock.opblock-post .opblock-summary { + border-color: #49cc90; +} + +.swagger-ui .opblock.opblock-put { + border-color: #fca130; + background: rgba(252, 161, 48, 0.1); +} + +.swagger-ui .opblock.opblock-put .opblock-summary-method { + background: #fca130; +} + +.swagger-ui .opblock.opblock-put .opblock-summary { + border-color: #fca130; +} + +.swagger-ui .opblock.opblock-delete { + border-color: #f93e3e; + background: rgba(249, 62, 62, 0.1); +} + +.swagger-ui .opblock.opblock-delete .opblock-summary-method { + background: #f93e3e; +} + +.swagger-ui .opblock.opblock-delete .opblock-summary { + border-color: #f93e3e; +} + +.swagger-ui .opblock.opblock-get { + border-color: #61affe; + background: rgba(97, 175, 254, 0.1); +} + +.swagger-ui .opblock.opblock-get .opblock-summary-method { + background: #61affe; +} + +.swagger-ui .opblock.opblock-get .opblock-summary { + border-color: #61affe; +} + +.swagger-ui .opblock.opblock-patch { + border-color: #50e3c2; + background: rgba(80, 227, 194, 0.1); +} + +.swagger-ui .opblock.opblock-patch .opblock-summary-method { + background: #50e3c2; +} + +.swagger-ui .opblock.opblock-patch .opblock-summary { + border-color: #50e3c2; +} + +.swagger-ui .opblock.opblock-head { + border-color: #9012fe; + background: rgba(144, 18, 254, 0.1); +} + +.swagger-ui .opblock.opblock-head .opblock-summary-method { + background: #9012fe; +} + +.swagger-ui .opblock.opblock-head .opblock-summary { + border-color: #9012fe; +} + +.swagger-ui .opblock.opblock-options { + border-color: #0d5aa7; + background: rgba(13, 90, 167, 0.1); +} + +.swagger-ui .opblock.opblock-options .opblock-summary-method { + background: #0d5aa7; +} + +.swagger-ui .opblock.opblock-options .opblock-summary { + border-color: #0d5aa7; +} + +.swagger-ui .opblock.opblock-deprecated { + opacity: .6; + border-color: #ebebeb; + background: rgba(235, 235, 235, 0.1); +} + +.swagger-ui .opblock.opblock-deprecated .opblock-summary-method { + background: #ebebeb; +} + +.swagger-ui .opblock.opblock-deprecated .opblock-summary { + border-color: #ebebeb; +} + +.swagger-ui .opblock .opblock-schemes { + padding: 8px 20px; +} + +.swagger-ui .opblock .opblock-schemes .schemes-title { + padding: 0 10px 0 0; +} + +.swagger-ui .tab { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + margin: 20px 0 10px 0; + padding: 0; + list-style: none; +} + +.swagger-ui .tab li { + font-size: 12px; + min-width: 100px; + min-width: 90px; + padding: 0; + cursor: pointer; + font-family: 'Titillium Web', sans-serif; + color: #3b4151; +} + +.swagger-ui .tab li:first-of-type { + position: relative; + padding-left: 0; +} + +.swagger-ui .tab li:first-of-type:after { + position: absolute; + top: 0; + right: 6px; + width: 1px; + height: 100%; + content: ''; + background: rgba(0, 0, 0, 0.2); +} + +.swagger-ui .tab li.active { + font-weight: bold; +} + +.swagger-ui .opblock-description-wrapper, +.swagger-ui .opblock-title_normal { + font-size: 12px; + margin: 0 0 5px 0; + padding: 15px 20px; + font-family: 'Open Sans', sans-serif; + color: #3b4151; +} + +.swagger-ui .opblock-description-wrapper h4, +.swagger-ui .opblock-title_normal h4 { + font-size: 12px; + margin: 0 0 5px 0; + font-family: 'Open Sans', sans-serif; + color: #3b4151; +} + +.swagger-ui .opblock-description-wrapper p, +.swagger-ui .opblock-title_normal p { + font-size: 14px; + margin: 0; + font-family: 'Open Sans', sans-serif; + color: #3b4151; +} + +.swagger-ui .execute-wrapper { + padding: 20px; + text-align: right; +} + +.swagger-ui .execute-wrapper .btn { + width: 100%; + padding: 8px 40px; +} + +.swagger-ui .body-param-options { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; +} + +.swagger-ui .body-param-options .body-param-edit { + padding: 10px 0; +} + +.swagger-ui .body-param-options label { + padding: 8px 0; +} + +.swagger-ui .body-param-options label select { + margin: 3px 0 0 0; +} + +.swagger-ui .responses-inner { + padding: 20px; +} + +.swagger-ui .responses-inner h5, +.swagger-ui .responses-inner h4 { + font-size: 12px; + margin: 10px 0 5px 0; + font-family: 'Open Sans', sans-serif; + color: #3b4151; +} + +.swagger-ui .response-col_status { + font-size: 14px; + font-family: 'Open Sans', sans-serif; + color: #3b4151; +} + +.swagger-ui .response-col_status .response-undocumented { + font-size: 11px; + font-family: 'Source Code Pro', monospace; + font-weight: 600; + color: #999; +} + +.swagger-ui .response-col_description__inner span { + font-size: 12px; + font-style: italic; + display: block; + margin: 10px 0; + padding: 10px; + border-radius: 4px; + background: #41444e; + font-family: 'Source Code Pro', monospace; + font-weight: 600; + color: #fff; +} + +.swagger-ui .response-col_description__inner span p { + margin: 0; +} + +.swagger-ui .opblock-body pre { + font-size: 12px; + margin: 0; + padding: 10px; + white-space: pre-wrap; + border-radius: 4px; + background: #41444e; + font-family: 'Source Code Pro', monospace; + font-weight: 600; + color: #fff; +} + +.swagger-ui .opblock-body pre span { + color: #fff !important; +} + +.swagger-ui .scheme-container { + margin: 0 0 20px 0; + padding: 30px 0; + background: #fff; + box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15); +} + +.swagger-ui .scheme-container .schemes { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.swagger-ui .scheme-container .schemes > label { + font-size: 12px; + font-weight: bold; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + margin: -20px 15px 0 0; + font-family: 'Titillium Web', sans-serif; + color: #3b4151; +} + +.swagger-ui .scheme-container .schemes > label select { + min-width: 130px; + text-transform: uppercase; +} + +.swagger-ui .loading-container { + padding: 40px 0 60px; +} + +.swagger-ui .loading-container .loading { + position: relative; +} + +.swagger-ui .loading-container .loading:after { + font-size: 10px; + font-weight: bold; + position: absolute; + top: 50%; + left: 50%; + content: 'loading'; + -webkit-transform: translate(-50%, -50%); + transform: translate(-50%, -50%); + text-transform: uppercase; + font-family: 'Titillium Web', sans-serif; + color: #3b4151; +} + +.swagger-ui .loading-container .loading:before { + position: absolute; + top: 50%; + left: 50%; + display: block; + width: 60px; + height: 60px; + margin: -30px -30px; + content: ''; + -webkit-animation: rotation 1s infinite linear, opacity .5s; + animation: rotation 1s infinite linear, opacity .5s; + opacity: 1; + border: 2px solid rgba(85, 85, 85, 0.1); + border-top-color: rgba(0, 0, 0, 0.6); + border-radius: 100%; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; +} + +@-webkit-keyframes rotation { + to { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +@keyframes rotation { + to { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +@-webkit-keyframes blinker { + 50% { + opacity: 0; + } +} + +@keyframes blinker { + 50% { + opacity: 0; + } +} + +.swagger-ui .btn { + font-size: 14px; + font-weight: bold; + padding: 5px 23px; + -webkit-transition: all .3s; + transition: all .3s; + border: 2px solid #888; + border-radius: 4px; + background: transparent; + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1); + font-family: 'Titillium Web', sans-serif; + color: #3b4151; +} + +.swagger-ui .btn[disabled] { + cursor: not-allowed; + opacity: .3; +} + +.swagger-ui .btn:hover { + box-shadow: 0 0 5px rgba(0, 0, 0, 0.3); +} + +.swagger-ui .btn.cancel { + border-color: #ff6060; + font-family: 'Titillium Web', sans-serif; + color: #ff6060; +} + +.swagger-ui .btn.authorize { + line-height: 1; + display: inline; + color: #49cc90; + border-color: #49cc90; +} + +.swagger-ui .btn.authorize span { + float: left; + padding: 4px 20px 0 0; +} + +.swagger-ui .btn.authorize svg { + fill: #49cc90; +} + +.swagger-ui .btn.execute { + -webkit-animation: pulse 2s infinite; + animation: pulse 2s infinite; + color: #fff; + border-color: #4990e2; +} + +@-webkit-keyframes pulse { + 0% { + color: #fff; + background: #4990e2; + box-shadow: 0 0 0 0 rgba(73, 144, 226, 0.8); + } + 70% { + box-shadow: 0 0 0 5px rgba(73, 144, 226, 0); + } + 100% { + color: #fff; + background: #4990e2; + box-shadow: 0 0 0 0 rgba(73, 144, 226, 0); + } +} + +@keyframes pulse { + 0% { + color: #fff; + background: #4990e2; + box-shadow: 0 0 0 0 rgba(73, 144, 226, 0.8); + } + 70% { + box-shadow: 0 0 0 5px rgba(73, 144, 226, 0); + } + 100% { + color: #fff; + background: #4990e2; + box-shadow: 0 0 0 0 rgba(73, 144, 226, 0); + } +} + +.swagger-ui .btn-group { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + padding: 30px; +} + +.swagger-ui .btn-group .btn { + -webkit-box-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.swagger-ui .btn-group .btn:first-child { + border-radius: 4px 0 0 4px; +} + +.swagger-ui .btn-group .btn:last-child { + border-radius: 0 4px 4px 0; +} + +.swagger-ui .authorization__btn { + padding: 0 10px; + border: none; + background: none; +} + +.swagger-ui .authorization__btn.locked { + opacity: 1; +} + +.swagger-ui .authorization__btn.unlocked { + opacity: .4; +} + +.swagger-ui .expand-methods, +.swagger-ui .expand-operation { + border: none; + background: none; +} + +.swagger-ui .expand-methods svg, +.swagger-ui .expand-operation svg { + width: 20px; + height: 20px; +} + +.swagger-ui .expand-methods { + padding: 0 10px; +} + +.swagger-ui .expand-methods:hover svg { + fill: #444; +} + +.swagger-ui .expand-methods svg { + -webkit-transition: all .3s; + transition: all .3s; + fill: #777; +} + +.swagger-ui button { + cursor: pointer; + outline: none; +} + +.swagger-ui select { + font-size: 14px; + font-weight: bold; + padding: 5px 40px 5px 10px; + border: 2px solid #41444e; + border-radius: 4px; + background: #f7f7f7 url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCI+ICAgIDxwYXRoIGQ9Ik0xMy40MTggNy44NTljLjI3MS0uMjY4LjcwOS0uMjY4Ljk3OCAwIC4yNy4yNjguMjcyLjcwMSAwIC45NjlsLTMuOTA4IDMuODNjLS4yNy4yNjgtLjcwNy4yNjgtLjk3OSAwbC0zLjkwOC0zLjgzYy0uMjctLjI2Ny0uMjctLjcwMSAwLS45NjkuMjcxLS4yNjguNzA5LS4yNjguOTc4IDBMMTAgMTFsMy40MTgtMy4xNDF6Ii8+PC9zdmc+) right 10px center no-repeat; + background-size: 20px; + box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.25); + font-family: 'Titillium Web', sans-serif; + color: #3b4151; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} + +.swagger-ui select[multiple] { + margin: 5px 0; + padding: 5px; + background: #f7f7f7; +} + +.swagger-ui .opblock-body select { + min-width: 230px; +} + +.swagger-ui label { + font-size: 12px; + font-weight: bold; + margin: 0 0 5px 0; + font-family: 'Titillium Web', sans-serif; + color: #3b4151; +} + +.swagger-ui input[type=text], +.swagger-ui input[type=password], +.swagger-ui input[type=search], +.swagger-ui input[type=email] { + min-width: 100px; + margin: 5px 0; + padding: 8px 10px; + border: 1px solid #d9d9d9; + border-radius: 4px; + background: #fff; +} + +.swagger-ui input[type=text].invalid, +.swagger-ui input[type=password].invalid, +.swagger-ui input[type=search].invalid, +.swagger-ui input[type=email].invalid { + -webkit-animation: shake .4s 1; + animation: shake .4s 1; + border-color: #f93e3e; + background: #feebeb; +} + +@-webkit-keyframes shake { + 10%, + 90% { + -webkit-transform: translate3d(-1px, 0, 0); + transform: translate3d(-1px, 0, 0); + } + 20%, + 80% { + -webkit-transform: translate3d(2px, 0, 0); + transform: translate3d(2px, 0, 0); + } + 30%, + 50%, + 70% { + -webkit-transform: translate3d(-4px, 0, 0); + transform: translate3d(-4px, 0, 0); + } + 40%, + 60% { + -webkit-transform: translate3d(4px, 0, 0); + transform: translate3d(4px, 0, 0); + } +} + +@keyframes shake { + 10%, + 90% { + -webkit-transform: translate3d(-1px, 0, 0); + transform: translate3d(-1px, 0, 0); + } + 20%, + 80% { + -webkit-transform: translate3d(2px, 0, 0); + transform: translate3d(2px, 0, 0); + } + 30%, + 50%, + 70% { + -webkit-transform: translate3d(-4px, 0, 0); + transform: translate3d(-4px, 0, 0); + } + 40%, + 60% { + -webkit-transform: translate3d(4px, 0, 0); + transform: translate3d(4px, 0, 0); + } +} + +.swagger-ui textarea { + font-size: 12px; + width: 100%; + min-height: 280px; + padding: 10px; + border: none; + border-radius: 4px; + outline: none; + background: rgba(255, 255, 255, 0.8); + font-family: 'Source Code Pro', monospace; + font-weight: 600; + color: #3b4151; +} + +.swagger-ui textarea:focus { + border: 2px solid #61affe; +} + +.swagger-ui textarea.curl { + font-size: 12px; + min-height: 100px; + margin: 0; + padding: 10px; + resize: none; + border-radius: 4px; + background: #41444e; + font-family: 'Source Code Pro', monospace; + font-weight: 600; + color: #fff; +} + +.swagger-ui .checkbox { + padding: 5px 0 10px; + -webkit-transition: opacity .5s; + transition: opacity .5s; + color: #333; +} + +.swagger-ui .checkbox label { + display: -webkit-box; + display: -ms-flexbox; + display: flex; +} + +.swagger-ui .checkbox p { + font-weight: normal !important; + font-style: italic; + margin: 0 !important; + font-family: 'Source Code Pro', monospace; + font-weight: 600; + color: #3b4151; +} + +.swagger-ui .checkbox input[type=checkbox] { + display: none; +} + +.swagger-ui .checkbox input[type=checkbox] + label > .item { + position: relative; + top: 3px; + display: inline-block; + width: 16px; + height: 16px; + margin: 0 8px 0 0; + padding: 5px; + cursor: pointer; + border-radius: 1px; + background: #e8e8e8; + box-shadow: 0 0 0 2px #e8e8e8; + -webkit-box-flex: 0; + -ms-flex: none; + flex: none; +} + +.swagger-ui .checkbox input[type=checkbox] + label > .item:active { + -webkit-transform: scale(0.9); + transform: scale(0.9); +} + +.swagger-ui .checkbox input[type=checkbox]:checked + label > .item { + background: #e8e8e8 url(data:image/svg+xml,%0A%3Csvg%20width%3D%2210px%22%20height%3D%228px%22%20viewBox%3D%223%207%2010%208%22%20version%3D%221.1%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns%3Axlink%3D%22http%3A//www.w3.org/1999/xlink%22%3E%0A%20%20%20%20%3C%21--%20Generator%3A%20Sketch%2042%20%2836781%29%20-%20http%3A//www.bohemiancoding.com/sketch%20--%3E%0A%20%20%20%20%3Cdesc%3ECreated%20with%20Sketch.%3C/desc%3E%0A%20%20%20%20%3Cdefs%3E%3C/defs%3E%0A%20%20%20%20%3Cpolygon%20id%3D%22Rectangle-34%22%20stroke%3D%22none%22%20fill%3D%22%2341474E%22%20fill-rule%3D%22evenodd%22%20points%3D%226.33333333%2015%203%2011.6666667%204.33333333%2010.3333333%206.33333333%2012.3333333%2011.6666667%207%2013%208.33333333%22%3E%3C/polygon%3E%0A%3C/svg%3E) center center no-repeat; +} + +.swagger-ui .dialog-ux { + position: fixed; + z-index: 9999; + top: 0; + right: 0; + bottom: 0; + left: 0; +} + +.swagger-ui .dialog-ux .backdrop-ux { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + background: rgba(0, 0, 0, 0.8); +} + +.swagger-ui .dialog-ux .modal-ux { + position: absolute; + z-index: 9999; + top: 50%; + left: 50%; + width: 100%; + min-width: 300px; + max-width: 650px; + -webkit-transform: translate(-50%, -50%); + transform: translate(-50%, -50%); + border: 1px solid #ebebeb; + border-radius: 4px; + background: #fff; + box-shadow: 0 10px 30px 0 rgba(0, 0, 0, 0.2); +} + +.swagger-ui .dialog-ux .modal-ux-content { + overflow-y: auto; + max-height: 540px; + padding: 20px; +} + +.swagger-ui .dialog-ux .modal-ux-content p { + font-size: 12px; + margin: 0 0 5px 0; + color: #41444e; + font-family: 'Open Sans', sans-serif; + color: #3b4151; +} + +.swagger-ui .dialog-ux .modal-ux-content h4 { + font-size: 18px; + font-weight: 600; + margin: 15px 0 0 0; + font-family: 'Titillium Web', sans-serif; + color: #3b4151; +} + +.swagger-ui .dialog-ux .modal-ux-header { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + padding: 12px 0; + border-bottom: 1px solid #ebebeb; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.swagger-ui .dialog-ux .modal-ux-header .close-modal { + padding: 0 10px; + border: none; + background: none; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} + +.swagger-ui .dialog-ux .modal-ux-header h3 { + font-size: 20px; + font-weight: 600; + margin: 0; + padding: 0 20px; + -webkit-box-flex: 1; + -ms-flex: 1; + flex: 1; + font-family: 'Titillium Web', sans-serif; + color: #3b4151; +} + +.swagger-ui .model { + font-size: 12px; + font-weight: 300; + font-family: 'Source Code Pro', monospace; + font-weight: 600; + color: #3b4151; +} + +.swagger-ui .model-toggle { + font-size: 10px; + position: relative; + top: 6px; + display: inline-block; + margin: auto .3em; + cursor: pointer; + -webkit-transition: -webkit-transform .15s ease-in; + transition: -webkit-transform .15s ease-in; + transition: transform .15s ease-in; + transition: transform .15s ease-in, -webkit-transform .15s ease-in; + -webkit-transform: rotate(90deg); + transform: rotate(90deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; +} + +.swagger-ui .model-toggle.collapsed { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} + +.swagger-ui .model-toggle:after { + display: block; + width: 20px; + height: 20px; + content: ''; + background: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%0A%20%20%20%20%3Cpath%20d%3D%22M10%206L8.59%207.41%2013.17%2012l-4.58%204.59L10%2018l6-6z%22/%3E%0A%3C/svg%3E%0A) center center no-repeat; + background-size: 100%; +} + +.swagger-ui .model-jump-to-path { + position: relative; + cursor: pointer; +} + +.swagger-ui .model-jump-to-path .view-line-link { + position: absolute; + top: -.4em; + cursor: pointer; +} + +.swagger-ui .model-title { + position: relative; +} + +.swagger-ui .model-title:hover .model-hint { + visibility: visible; +} + +.swagger-ui .model-hint { + position: absolute; + top: -1.8em; + visibility: hidden; + padding: .1em .5em; + white-space: nowrap; + color: #ebebeb; + border-radius: 4px; + background: rgba(0, 0, 0, 0.7); +} + +.swagger-ui section.models { + margin: 30px 0; + border: 1px solid rgba(59, 65, 81, 0.3); + border-radius: 4px; +} + +.swagger-ui section.models.is-open { + padding: 0 0 20px; +} + +.swagger-ui section.models.is-open h4 { + margin: 0 0 5px 0; + border-bottom: 1px solid rgba(59, 65, 81, 0.3); +} + +.swagger-ui section.models.is-open h4 svg { + -webkit-transform: rotate(90deg); + transform: rotate(90deg); +} + +.swagger-ui section.models h4 { + font-size: 16px; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + margin: 0; + padding: 10px 20px 10px 10px; + cursor: pointer; + -webkit-transition: all .2s; + transition: all .2s; + font-family: 'Titillium Web', sans-serif; + color: #777; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.swagger-ui section.models h4 svg { + -webkit-transition: all .4s; + transition: all .4s; +} + +.swagger-ui section.models h4 span { + -webkit-box-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.swagger-ui section.models h4:hover { + background: rgba(0, 0, 0, 0.02); +} + +.swagger-ui section.models h5 { + font-size: 16px; + margin: 0 0 10px 0; + font-family: 'Titillium Web', sans-serif; + color: #777; +} + +.swagger-ui section.models .model-jump-to-path { + position: relative; + top: 5px; +} + +.swagger-ui section.models .model-container { + margin: 0 20px 15px; + -webkit-transition: all .5s; + transition: all .5s; + border-radius: 4px; + background: rgba(0, 0, 0, 0.05); +} + +.swagger-ui section.models .model-container:hover { + background: rgba(0, 0, 0, 0.07); +} + +.swagger-ui section.models .model-container:first-of-type { + margin: 20px; +} + +.swagger-ui section.models .model-container:last-of-type { + margin: 0 20px; +} + +.swagger-ui section.models .model-box { + background: none; +} + +.swagger-ui .model-box { + padding: 10px; + border-radius: 4px; + background: rgba(0, 0, 0, 0.1); +} + +.swagger-ui .model-box .model-jump-to-path { + position: relative; + top: 4px; +} + +.swagger-ui .model-title { + font-size: 16px; + font-family: 'Titillium Web', sans-serif; + color: #555; +} + +.swagger-ui span > span.model { + padding: 0 0 0 10px; +} + +.swagger-ui span > span.model .brace-close { + padding: 0 0 0 10px; +} + +.swagger-ui .prop-type { + color: #55a; +} + +.swagger-ui .prop-enum { + display: block; +} + +.swagger-ui .prop-format { + color: #999; +} + +.swagger-ui table { + width: 100%; + padding: 0 10px; + border-collapse: collapse; +} + +.swagger-ui table.model tbody tr td { + padding: 0; + vertical-align: top; +} + +.swagger-ui table.model tbody tr td:first-of-type { + width: 100px; + padding: 0; +} + +.swagger-ui table.headers td { + font-size: 12px; + font-weight: 300; + vertical-align: middle; + font-family: 'Source Code Pro', monospace; + font-weight: 600; + color: #3b4151; +} + +.swagger-ui table tbody tr td { + padding: 10px 0 0 0; + vertical-align: top; +} + +.swagger-ui table tbody tr td:first-of-type { + width: 20%; + padding: 10px 0; +} + +.swagger-ui table thead tr th, +.swagger-ui table thead tr td { + font-size: 12px; + font-weight: bold; + padding: 12px 0; + text-align: left; + border-bottom: 1px solid rgba(59, 65, 81, 0.2); + font-family: 'Open Sans', sans-serif; + color: #3b4151; +} + +.swagger-ui .parameters-col_description p { + font-size: 14px; + margin: 0; + font-family: 'Open Sans', sans-serif; + color: #3b4151; +} + +.swagger-ui .parameters-col_description input[type=text] { + width: 100%; + max-width: 340px; +} + +.swagger-ui .parameter__name { + font-size: 16px; + font-weight: normal; + font-family: 'Titillium Web', sans-serif; + color: #3b4151; +} + +.swagger-ui .parameter__name.required { + font-weight: bold; +} + +.swagger-ui .parameter__name.required:after { + font-size: 10px; + position: relative; + top: -6px; + padding: 5px; + content: 'required'; + color: rgba(255, 0, 0, 0.6); +} + +.swagger-ui .parameter__in { + font-size: 12px; + font-style: italic; + font-family: 'Source Code Pro', monospace; + font-weight: 600; + color: #888; +} + +.swagger-ui .table-container { + padding: 20px; +} + +.swagger-ui .topbar { + padding: 8px 30px; + background-color: #89bf04; +} + +.swagger-ui .topbar .topbar-wrapper { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.swagger-ui .topbar a { + font-size: 1.5em; + font-weight: bold; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + text-decoration: none; + -webkit-box-flex: 1; + -ms-flex: 1; + flex: 1; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + font-family: 'Titillium Web', sans-serif; + color: #fff; +} + +.swagger-ui .topbar a span { + margin: 0; + padding: 0 10px; +} + +.swagger-ui .topbar .download-url-wrapper { + display: -webkit-box; + display: -ms-flexbox; + display: flex; +} + +.swagger-ui .topbar .download-url-wrapper input[type=text] { + min-width: 350px; + margin: 0; + border: 2px solid #547f00; + border-radius: 4px 0 0 4px; + outline: none; +} + +.swagger-ui .topbar .download-url-wrapper .download-url-button { + font-size: 16px; + font-weight: bold; + padding: 4px 40px; + border: none; + border-radius: 0 4px 4px 0; + background: #547f00; + font-family: 'Titillium Web', sans-serif; + color: #fff; +} + +.swagger-ui .info { + margin: 50px 0; +} + +.swagger-ui .info hgroup.main { + margin: 0 0 20px 0; +} + +.swagger-ui .info hgroup.main a { + font-size: 12px; +} + +.swagger-ui .info p { + font-size: 14px; + font-family: 'Open Sans', sans-serif; + color: #3b4151; +} + +.swagger-ui .info code { + padding: 3px 5px; + border-radius: 4px; + background: rgba(0, 0, 0, 0.05); + font-family: 'Source Code Pro', monospace; + font-weight: 600; + color: #9012fe; +} + +.swagger-ui .info a { + font-size: 14px; + -webkit-transition: all .4s; + transition: all .4s; + font-family: 'Open Sans', sans-serif; + color: #4990e2; +} + +.swagger-ui .info a:hover { + color: #1f69c0; +} + +.swagger-ui .info > div { + margin: 0 0 5px 0; +} + +.swagger-ui .info .base-url { + font-size: 12px; + font-weight: 300 !important; + margin: 0; + font-family: 'Source Code Pro', monospace; + font-weight: 600; + color: #3b4151; +} + +.swagger-ui .info .title { + font-size: 36px; + margin: 0; + font-family: 'Open Sans', sans-serif; + color: #3b4151; +} + +.swagger-ui .info .title small { + font-size: 10px; + position: relative; + top: -5px; + display: inline-block; + margin: 0 0 0 5px; + padding: 2px 4px; + vertical-align: super; + border-radius: 57px; + background: #7d8492; +} + +.swagger-ui .info .title small pre { + margin: 0; + font-family: 'Titillium Web', sans-serif; + color: #fff; +} + +.swagger-ui .auth-btn-wrapper { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + padding: 10px 0; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; +} + +.swagger-ui .auth-wrapper { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-flex: 1; + -ms-flex: 1; + flex: 1; + -webkit-box-pack: end; + -ms-flex-pack: end; + justify-content: flex-end; +} + +.swagger-ui .auth-wrapper .authorize { + padding-right: 20px; +} + +.swagger-ui .auth-container { + margin: 0 0 10px 0; + padding: 10px 20px; + border-bottom: 1px solid #ebebeb; +} + +.swagger-ui .auth-container:last-of-type { + margin: 0; + padding: 10px 20px; + border: 0; +} + +.swagger-ui .auth-container h4 { + margin: 5px 0 15px 0 !important; +} + +.swagger-ui .auth-container .wrapper { + margin: 0; + padding: 0; +} + +.swagger-ui .auth-container input[type=text], +.swagger-ui .auth-container input[type=password] { + min-width: 230px; +} + +.swagger-ui .auth-container .errors { + font-size: 12px; + padding: 10px; + border-radius: 4px; + font-family: 'Source Code Pro', monospace; + font-weight: 600; + color: #3b4151; +} + +.swagger-ui .scopes h2 { + font-size: 14px; + font-family: 'Titillium Web', sans-serif; + color: #3b4151; +} + +.swagger-ui .scope-def { + padding: 0 0 20px 0; +} + +.swagger-ui .errors-wrapper { + margin: 20px; + padding: 10px 20px; + -webkit-animation: scaleUp .5s; + animation: scaleUp .5s; + border: 2px solid #f93e3e; + border-radius: 4px; + background: rgba(249, 62, 62, 0.1); +} + +.swagger-ui .errors-wrapper .error-wrapper { + margin: 0 0 10px 0; +} + +.swagger-ui .errors-wrapper .errors h4 { + font-size: 14px; + margin: 0; + font-family: 'Source Code Pro', monospace; + font-weight: 600; + color: #3b4151; +} + +.swagger-ui .errors-wrapper .errors small { + color: #666; +} + +.swagger-ui .errors-wrapper hgroup { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.swagger-ui .errors-wrapper hgroup h4 { + font-size: 20px; + margin: 0; + -webkit-box-flex: 1; + -ms-flex: 1; + flex: 1; + font-family: 'Titillium Web', sans-serif; + color: #3b4151; +} + +@-webkit-keyframes scaleUp { + 0% { + -webkit-transform: scale(0.8); + transform: scale(0.8); + opacity: 0; + } + 100% { + -webkit-transform: scale(1); + transform: scale(1); + opacity: 1; + } +} + +@keyframes scaleUp { + 0% { + -webkit-transform: scale(0.8); + transform: scale(0.8); + opacity: 0; + } + 100% { + -webkit-transform: scale(1); + transform: scale(1); + opacity: 1; + } +} +.swagger-ui .Resizer.vertical.disabled { + display: none; +} + /*# sourceMappingURL=swagger-ui.css.map*/ \ No newline at end of file diff --git a/dist/swagger-ui.css.map b/dist/swagger-ui.css.map index dbf47ea6..911c8bcf 100644 --- a/dist/swagger-ui.css.map +++ b/dist/swagger-ui.css.map @@ -1 +1 @@ -{"version":3,"file":"swagger-ui.css","sources":[],"mappings":"","sourceRoot":""} \ No newline at end of file +{"version":3,"file":"swagger-ui.css","sources":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","sourceRoot":""} \ No newline at end of file diff --git a/dist/swagger-ui.js b/dist/swagger-ui.js index 8408e0c6..baccc46f 100644 --- a/dist/swagger-ui.js +++ b/dist/swagger-ui.js @@ -1,15 +1,16443 @@ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("babel-polyfill"),require("deep-extend"),require("redux"),require("immutable"),require("redux-immutable"),require("object-assign"),require("serialize-error"),require("base64-js"),require("ieee754"),require("isarray"),require("shallowequal"),require("xml"),require("memoizee"),require("reselect"),require("js-yaml"),require("react"),require("react-dom"),require("react-redux"),require("yaml-js"),require("swagger-client"),require("react-split-pane"),require("react-immutable-proptypes"),require("react-addons-shallow-compare"),require("react-collapse"),require("react-remarkable")):"function"==typeof define&&define.amd?define(["babel-polyfill","deep-extend","redux","immutable","redux-immutable","object-assign","serialize-error","base64-js","ieee754","isarray","shallowequal","xml","memoizee","reselect","js-yaml","react","react-dom","react-redux","yaml-js","swagger-client","react-split-pane","react-immutable-proptypes","react-addons-shallow-compare","react-collapse","react-remarkable"],t):"object"==typeof exports?exports.SwaggerUICore=t(require("babel-polyfill"),require("deep-extend"),require("redux"),require("immutable"),require("redux-immutable"),require("object-assign"),require("serialize-error"),require("base64-js"),require("ieee754"),require("isarray"),require("shallowequal"),require("xml"),require("memoizee"),require("reselect"),require("js-yaml"),require("react"),require("react-dom"),require("react-redux"),require("yaml-js"),require("swagger-client"),require("react-split-pane"),require("react-immutable-proptypes"),require("react-addons-shallow-compare"),require("react-collapse"),require("react-remarkable")):e.SwaggerUICore=t(e["babel-polyfill"],e["deep-extend"],e.redux,e.immutable,e["redux-immutable"],e["object-assign"],e["serialize-error"],e["base64-js"],e.ieee754,e.isarray,e.shallowequal,e.xml,e.memoizee,e.reselect,e["js-yaml"],e.react,e["react-dom"],e["react-redux"],e["yaml-js"],e["swagger-client"],e["react-split-pane"],e["react-immutable-proptypes"],e["react-addons-shallow-compare"],e["react-collapse"],e["react-remarkable"])}(this,function(e,t,r,n,o,a,u,i,s,l,c,f,p,d,h,y,m,v,b,g,_,E,w,j,P){return function(e){function t(n){if(r[n])return r[n].exports;var o=r[n]={exports:{},id:n,loaded:!1};return e[n].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}var r={};return t.m=e,t.c=r,t.p="/dist",t(0)}(function(e){for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t))switch(typeof e[t]){case"function":break;case"object":e[t]=function(t){var r=t.slice(1),n=e[t[0]];return function(e,t,o){n.apply(this,[e,t,o].concat(r))}}(e[t]);break;default:e[t]=e[e[t]]}return e}([function(e,t,r){r(1),r(2),e.exports=r(3)},function(e,t){e.exports=require("babel-polyfill")},function(e,t){},function(e,t,r){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function o(e){return e&&e.__esModule?e:{default:e}}var a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u=r(4),i=o(u),s=r(5),l=o(s),c=r(158),f=o(c),p=r(313),d=n(p),h=r(315),y=r(13);e.exports=function(e){var t={dom_id:null,spec:{},url:"",layout:"Layout",validatorUrl:"https://online.swagger.io/validator",configs:{},presets:[],plugins:[],fn:{},components:{},state:{},store:{}},r=(0,i.default)({},t,e),n=(0,i.default)({},r.store,{system:{configs:r.configs},plugins:r.presets,state:{layout:{layout:r.layout},spec:{spec:"",url:r.url}}}),o=function(){return{fn:r.fn,components:r.components,state:r.state}},u=new l.default(n);u.register([r.plugins,o]);var s=u.getSystem(),c=(0,y.parseSeach)(),f=function(e){if("object"!==("undefined"==typeof r?"undefined":a(r)))return s;var t=s.specSelectors.getLocalConfig?s.specSelectors.getLocalConfig():{},n=(0,i.default)({},r,t,e||{},c);return u.setConfigs((0,h.filterConfigs)(n)),null!==e&&(!c.url&&"object"===a(n.spec)&&Object.keys(n.spec).length?(s.specActions.updateUrl(""),s.specActions.updateLoadingStatus("success"),s.specActions.updateSpec(JSON.stringify(n.spec))):s.specActions.download&&n.url&&(s.specActions.updateUrl(n.url),s.specActions.download(n.url))),n.dom_id?s.render(n.dom_id,"App"):console.error("Skipped rendering: no `dom_id` was specified"),s},p=c.config||r.configUrl;if(!p||!s.specActions.getConfigByUrl||s.specActions.getConfigByUrl&&!s.specActions.getConfigByUrl(p,f))return f()},e.exports.presets={apis:f.default},e.exports.plugins=d},function(e,t){e.exports=require("deep-extend")},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t,r){var n=[(0,S.systemThunkMiddleware)(r)],o=T.default.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__||h.compose;return(0,h.createStore)(e,t,o(h.applyMiddleware.apply(void 0,n)))}function i(e,t){return(0,S.isObject)(e)&&!(0,S.isArray)(e)?e:(0,S.isFunc)(e)?i(e(t),t):(0,S.isArray)(e)?e.map(function(e){return i(e,t)}).reduce(s,{}):{}}function s(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!(0,S.isObject)(e))return{};if(!(0,S.isObject)(t))return e;var r=e.statePlugins;if((0,S.isObject)(r))for(var n in r){var o=r[n];if((0,S.isObject)(o)&&(0,S.isObject)(o.wrapActions)){var a=o.wrapActions;for(var u in a){var i=a[u];Array.isArray(i)||(i=[i],a[u]=i),t&&t.statePlugins&&t.statePlugins[n]&&t.statePlugins[n].wrapActions&&t.statePlugins[n].wrapActions[u]&&(t.statePlugins[n].wrapActions[u]=a[u].concat(t.statePlugins[n].wrapActions[u]))}}}return(0,b.default)(e,t)}function l(e){var t=(0,S.objMap)(e,function(e){return e.reducers});return c(t)}function c(e){var t=Object.keys(e).reduce(function(t,r){return t[r]=f(e[r]),t},{});return Object.keys(t).length?(0,g.combineReducers)(t):x}function f(e){return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new y.Map,r=arguments[1];if(!e)return t;var n=e[r.type];return n?n(t,r):t}}function p(e,t,r){var n=u(e,t,r);return n}Object.defineProperty(t,"__esModule",{value:!0});var d=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{};a(this,e),(0,b.default)(this,{state:{},plugins:[],system:{configs:{},fn:{},components:{},rootInjects:{},statePlugins:{}},boundSystem:{},toolbox:{}},t),this.getSystem=this._getSystem.bind(this),this.store=p(x,(0,y.fromJS)(this.state),this.getSystem),this.buildSystem(!1),this.register(this.plugins)}return d(e,[{key:"getStore",value:function(){return this.store}},{key:"register",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=i(e,this.getSystem());s(this.system,r),t&&this.buildSystem()}},{key:"buildSystem",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=this.getStore().dispatch,r=this.getStore().getState;this.boundSystem=(0,E.default)({},this.getRootInjects(),this.getWrappedAndBoundActions(t),this.getBoundSelectors(r,this.getSystem),this.getStateThunks(r),this.getFn(),this.getConfigs()),e&&this.rebuildReducer()}},{key:"_getSystem",value:function(){return this.boundSystem}},{key:"getRootInjects",value:function(){return(0,E.default)({getSystem:this.getSystem,getStore:this.getStore.bind(this),getComponents:this.getComponents.bind(this),getState:this.getStore().getState,getConfigs:this._getConfigs.bind(this),Im:m.default},this.system.rootInjects||{})}},{key:"_getConfigs",value:function(){return this.system.configs}},{key:"getConfigs",value:function(){return{configs:this.system.configs}}},{key:"setConfigs",value:function(e){this.system.configs=e}},{key:"rebuildReducer",value:function(){this.store.replaceReducer(l(this.system.statePlugins))}},{key:"getType",value:function(e){var t=e[0].toUpperCase()+e.slice(1);return(0,S.objReduce)(this.system.statePlugins,function(r,n){var a=r[e];if(a)return o({},n+t,a)})}},{key:"getSelectors",value:function(){return this.getType("selectors")}},{key:"getActions",value:function(){var e=this.getType("actions");return(0,S.objMap)(e,function(e){return(0,S.objReduce)(e,function(e,t){if((0,S.isFn)(e))return o({},t,e)})})}},{key:"getWrappedAndBoundActions",value:function(e){var t=this,r=this.getBoundActions(e);return(0,S.objMap)(r,function(e,r){var n=t.system.statePlugins[r.slice(0,-7)].wrapActions;return n?(0,S.objMap)(e,function(e,r){var o=n[r];return o?(Array.isArray(o)||(o=[o]),o.reduce(function(e,r){var n=function(){return r(e,t.getSystem()).apply(void 0,arguments)};if(!(0,S.isFn)(n))throw new TypeError("wrapActions needs to return a function that returns a new function (ie the wrapped action)");return n},e||Function.prototype)):e}):e})}},{key:"getStates",value:function(e){return Object.keys(this.system.statePlugins).reduce(function(t,r){return t[r]=e.get(r),t},{})}},{key:"getStateThunks",value:function(e){return Object.keys(this.system.statePlugins).reduce(function(t,r){return t[r]=function(){return e().get(r)},t},{})}},{key:"getFn",value:function(){return{fn:this.system.fn}}},{key:"getComponents",value:function(e){return"undefined"!=typeof e?this.system.components[e]:this.system.components}},{key:"getBoundSelectors",value:function(e,t){return(0,S.objMap)(this.getSelectors(),function(r,n){var o=[n.slice(0,-9)],a=function(){return e().getIn(o)};return(0,S.objMap)(r,function(e){return function(){for(var r=arguments.length,n=Array(r),o=0;o0&&void 0!==arguments[0]?arguments[0]:{};return{type:y,payload:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.CLEAR=t.NEW_AUTH_ERR=t.NEW_SPEC_ERR=t.NEW_THROWN_ERR_BATCH=t.NEW_THROWN_ERR=void 0,t.newThrownErr=o,t.newThrownErrBatch=a,t.newSpecErr=u,t.newAuthErr=i,t.clear=s;var l=r(10),c=n(l),f=t.NEW_THROWN_ERR="err_new_thrown_err",p=t.NEW_THROWN_ERR_BATCH="err_new_thrown_err_batch",d=t.NEW_SPEC_ERR="err_new_spec_err",h=t.NEW_AUTH_ERR="err_new_auth_err",y=t.CLEAR="err_clear"},function(e,t){"use strict";function r(){var e={location:{},history:{},open:function(){},close:function(){}};if("undefined"==typeof window)return e;try{e=window;var t=["File","Blob","FormData"],r=!0,n=!1,o=void 0;try{for(var a,u=t[Symbol.iterator]();!(r=(a=u.next()).done);r=!0){var i=a.value;i in window&&(e[i]=window[i])}}catch(e){n=!0,o=e}finally{try{!r&&u.return&&u.return()}finally{if(n)throw o}}}catch(e){console.error(e)}return e}e.exports=r()},function(e,t,r){(function(e){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e){return c(e)?V(e)?e.toObject():e:{}}function a(e){return e?e.toArray?e.toArray():s(e):[]}function u(e){return V(e)?e:c(e)?Array.isArray(e)?S.default.Seq(e).map(u).toList():S.default.Seq(e).map(u).toOrderedMap():e}function i(e,t){var r={};return Object.keys(e).filter(function(t){return"function"==typeof e[t]}).forEach(function(n){return r[n]=e[n].bind(null,t)}),r}function s(e){return Array.isArray(e)?e:[e]}function l(e){return"function"==typeof e}function c(e){return!!e&&"object"===("undefined"==typeof e?"undefined":O(e))}function f(e){return"function"==typeof e}function p(e){return Array.isArray(e)}function d(e,t){return Object.keys(e).reduce(function(r,n){return r[n]=t(e[n],n),r},{})}function h(e,t){return Object.keys(e).reduce(function(r,n){var o=t(e[n],n);return o&&"object"===("undefined"==typeof o?"undefined":O(o))&&(0,C.default)(r,o),r},{})}function y(e){return function(t){t.dispatch,t.getState;return function(t){return function(r){return"function"==typeof r?r(e()):t(r)}}}}function m(e){var t=e.keySeq();return t.contains(F)?F:t.filter(function(e){return"2"===(e+"")[0]}).sort().first()}function v(e,t){if(!S.default.Iterable.isIterable(e))return S.default.List();var r=e.getIn(Array.isArray(t)?t:[t]);return S.default.List.isList(r)?r:S.default.List()}function b(e){var t,r,n,o,a,u,i,s,l,c,f,p;for(c=/(>)(<)(\/*)/g,p=/[ ]*(.*)[ ]+\n/g,t=/(<.+>)(.+\n)/g,e=e.replace(/\r\n/g,"\n").replace(c,"$1\n$2$3").replace(p,"$1\n").replace(t,"$1\n$2"),n="",s=e.split("\n"),o=0,u="other",f={"single->single":0,"single->closing":-1,"single->opening":0,"single->other":0,"closing->single":0,"closing->closing":-1,"closing->opening":0,"closing->other":0,"opening->single":1,"opening->closing":0,"opening->opening":1,"opening->other":1,"other->single":0,"other->closing":-1,"other->opening":0,"other->other":0},r=function(e){var t,r,a,i,s,l;s={single:Boolean(e.match(/<.+\/>/)),closing:Boolean(e.match(/<\/.+>/)),opening:Boolean(e.match(/<[^!?].*>/))},i=function(){var e;e=[];for(r in s)l=s[r],l&&e.push(r);return e}()[0],i=void 0===i?"other":i,t=u+"->"+i,u=i,a="",o+=f[t],a=function(){var e,t,r,n;for(r=[],n=e=0,t=o;0<=t?et;n=0<=t?++e:--e)r.push(" ");return r}().join(""),"opening->closing"===t?n=n.substr(0,n.length-1)+e+"\n":n+=a+e+"\n"},a=0,i=s.length;at)return e.textContent;var a=function(e){for(var t,a,u,i,s,l=e.textContent,c=0,f=l[0],p=1,d=e.innerHTML="",h=0;a=t,t=h<7&&"\\"==t?1:p;){if(p=f,f=l[++c],i=d.length>1,!p||h>8&&"\n"==p||[/\S/[o](p),1,1,!/[$\w]/[o](p),("/"==t||"\n"==t)&&i,'"'==t&&i,"'"==t&&i,l[c-4]+a+t=="-->",a+t=="*/"][h])for(d&&(e[n](s=r.createElement("span")).setAttribute("style",["color: #555; font-weight: bold;","","","color: #555;",""][h?h<3?2:h>6?4:h>3?3:+/^(a(bstract|lias|nd|rguments|rray|s(m|sert)?|uto)|b(ase|egin|ool(ean)?|reak|yte)|c(ase|atch|har|hecked|lass|lone|ompl|onst|ontinue)|de(bugger|cimal|clare|f(ault|er)?|init|l(egate|ete)?)|do|double|e(cho|ls?if|lse(if)?|nd|nsure|num|vent|x(cept|ec|p(licit|ort)|te(nds|nsion|rn)))|f(allthrough|alse|inal(ly)?|ixed|loat|or(each)?|riend|rom|unc(tion)?)|global|goto|guard|i(f|mp(lements|licit|ort)|n(it|clude(_once)?|line|out|stanceof|t(erface|ernal)?)?|s)|l(ambda|et|ock|ong)|m(icrolight|odule|utable)|NaN|n(amespace|ative|ext|ew|il|ot|ull)|o(bject|perator|r|ut|verride)|p(ackage|arams|rivate|rotected|rotocol|ublic)|r(aise|e(adonly|do|f|gister|peat|quire(_once)?|scue|strict|try|turn))|s(byte|ealed|elf|hort|igned|izeof|tatic|tring|truct|ubscript|uper|ynchronized|witch)|t(emplate|hen|his|hrows?|ransient|rue|ry|ype(alias|def|id|name|of))|u(n(checked|def(ined)?|ion|less|signed|til)|se|sing)|v(ar|irtual|oid|olatile)|w(char_t|hen|here|hile|ith)|xor|yield)$/[o](d):0]),s[n](r.createTextNode(d))),u=h&&h<7?h:u,d="",h=11;![1,/[\/{}[(\-+*=<>:;|\\.,?!&@~]/[o](p),/[\])]/[o](p),/[$\w]/[o](p),"/"==p&&u<2&&"<"!=t,'"'==p,"'"==p,p+f+l[c+1]+l[c+2]=="':null;var n=e.$$ref.match(/\S*\/(\S+)$/);e.xml.name=n[1]}return(0,J.memoizedCreateXMLExample)(e,r)}return JSON.stringify((0,J.memoizedSampleFromSchema)(e,r),null,2)},t.parseSeach=function(){var e={},t=window.location.search;if(""!=t){var r=t.substr(1).split("&");for(var n in r)n=r[n].split("="),e[decodeURIComponent(n[0])]=decodeURIComponent(n[1])}return e},t.btoa=function(t){var r=void 0;return r=t instanceof e?t:new e(t.toString(),"utf-8"),r.toString("base64")}}).call(t,r(14).Buffer)},function(e,t,r){(function(e){/*! +(function webpackUniversalModuleDefinition(root, factory) { + if(typeof exports === 'object' && typeof module === 'object') + module.exports = factory(require("babel-polyfill"), require("deep-extend"), require("redux"), require("immutable"), require("redux-immutable"), require("object-assign"), require("serialize-error"), require("base64-js"), require("ieee754"), require("isarray"), require("shallowequal"), require("xml"), require("memoizee"), require("reselect"), require("js-yaml"), require("react"), require("react-dom"), require("react-redux"), require("yaml-js"), require("swagger-client"), require("react-split-pane"), require("react-immutable-proptypes"), require("react-addons-shallow-compare"), require("react-collapse"), require("react-remarkable")); + else if(typeof define === 'function' && define.amd) + define(["babel-polyfill", "deep-extend", "redux", "immutable", "redux-immutable", "object-assign", "serialize-error", "base64-js", "ieee754", "isarray", "shallowequal", "xml", "memoizee", "reselect", "js-yaml", "react", "react-dom", "react-redux", "yaml-js", "swagger-client", "react-split-pane", "react-immutable-proptypes", "react-addons-shallow-compare", "react-collapse", "react-remarkable"], factory); + else if(typeof exports === 'object') + exports["SwaggerUICore"] = factory(require("babel-polyfill"), require("deep-extend"), require("redux"), require("immutable"), require("redux-immutable"), require("object-assign"), require("serialize-error"), require("base64-js"), require("ieee754"), require("isarray"), require("shallowequal"), require("xml"), require("memoizee"), require("reselect"), require("js-yaml"), require("react"), require("react-dom"), require("react-redux"), require("yaml-js"), require("swagger-client"), require("react-split-pane"), require("react-immutable-proptypes"), require("react-addons-shallow-compare"), require("react-collapse"), require("react-remarkable")); + else + root["SwaggerUICore"] = factory(root["babel-polyfill"], root["deep-extend"], root["redux"], root["immutable"], root["redux-immutable"], root["object-assign"], root["serialize-error"], root["base64-js"], root["ieee754"], root["isarray"], root["shallowequal"], root["xml"], root["memoizee"], root["reselect"], root["js-yaml"], root["react"], root["react-dom"], root["react-redux"], root["yaml-js"], root["swagger-client"], root["react-split-pane"], root["react-immutable-proptypes"], root["react-addons-shallow-compare"], root["react-collapse"], root["react-remarkable"]); +})(this, function(__WEBPACK_EXTERNAL_MODULE_1__, __WEBPACK_EXTERNAL_MODULE_4__, __WEBPACK_EXTERNAL_MODULE_6__, __WEBPACK_EXTERNAL_MODULE_7__, __WEBPACK_EXTERNAL_MODULE_8__, __WEBPACK_EXTERNAL_MODULE_9__, __WEBPACK_EXTERNAL_MODULE_10__, __WEBPACK_EXTERNAL_MODULE_15__, __WEBPACK_EXTERNAL_MODULE_16__, __WEBPACK_EXTERNAL_MODULE_17__, __WEBPACK_EXTERNAL_MODULE_18__, __WEBPACK_EXTERNAL_MODULE_156__, __WEBPACK_EXTERNAL_MODULE_157__, __WEBPACK_EXTERNAL_MODULE_174__, __WEBPACK_EXTERNAL_MODULE_182__, __WEBPACK_EXTERNAL_MODULE_187__, __WEBPACK_EXTERNAL_MODULE_188__, __WEBPACK_EXTERNAL_MODULE_189__, __WEBPACK_EXTERNAL_MODULE_244__, __WEBPACK_EXTERNAL_MODULE_254__, __WEBPACK_EXTERNAL_MODULE_266__, __WEBPACK_EXTERNAL_MODULE_273__, __WEBPACK_EXTERNAL_MODULE_285__, __WEBPACK_EXTERNAL_MODULE_297__, __WEBPACK_EXTERNAL_MODULE_301__) { +return /******/ (function(modules) { // webpackBootstrap +/******/ // The module cache +/******/ var installedModules = {}; + +/******/ // The require function +/******/ function __webpack_require__(moduleId) { + +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) +/******/ return installedModules[moduleId].exports; + +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ exports: {}, +/******/ id: moduleId, +/******/ loaded: false +/******/ }; + +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); + +/******/ // Flag the module as loaded +/******/ module.loaded = true; + +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } + + +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; + +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; + +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = "/dist"; + +/******/ // Load entry module and return exports +/******/ return __webpack_require__(0); +/******/ }) +/************************************************************************/ +/******/ ([ +/* 0 */ +/***/ function(module, exports, __webpack_require__) { + + __webpack_require__(1); + __webpack_require__(2); + module.exports = __webpack_require__(3); + + +/***/ }, +/* 1 */ +/***/ function(module, exports) { + + module.exports = require("babel-polyfill"); + +/***/ }, +/* 2 */ +/***/ function(module, exports) { + + // removed by extract-text-webpack-plugin + +/***/ }, +/* 3 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) {return typeof obj;} : function (obj) {return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;};var _deepExtend = __webpack_require__(4);var _deepExtend2 = _interopRequireDefault(_deepExtend);var _system = __webpack_require__(5);var _system2 = _interopRequireDefault(_system);var _apis = __webpack_require__(158);var _apis2 = _interopRequireDefault(_apis);var _all = __webpack_require__(313);var + + + + AllPlugins = _interopRequireWildcard(_all); + var _configs = __webpack_require__(315);var _utils = __webpack_require__(13);function _interopRequireWildcard(obj) {if (obj && obj.__esModule) {return obj;} else {var newObj = {};if (obj != null) {for (var key in obj) {if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];}}newObj.default = obj;return newObj;}}function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} + + + module.exports = function SwaggerUI(opts) { + + var defaults = { + // Some general settings, that we floated to the top + dom_id: null, + spec: {}, + url: "", + layout: "Layout", + validatorUrl: "https://online.swagger.io/validator", + configs: {}, + + + // Initial set of plugins ( TODO rename this, or refactor - we don't need presets _and_ plugins. Its just there for performance. + // Instead, we can compile the first plugin ( it can be a collection of plugins ), then batch the rest. + presets: [], + + + // Plugins; ( loaded after presets ) + plugins: [], + + + // Inline Plugin + fn: {}, + components: {}, + state: {}, + + // Override some core configs... at your own risk + store: {} }; + + + var constructorConfig = (0, _deepExtend2.default)({}, defaults, opts); + + var storeConfigs = (0, _deepExtend2.default)({}, constructorConfig.store, { + system: { + configs: constructorConfig.configs }, + + plugins: constructorConfig.presets, + state: { + layout: { + layout: constructorConfig.layout }, + + spec: { + spec: "", + url: constructorConfig.url } } }); + + + + + var inlinePlugin = function inlinePlugin() { + return { + fn: constructorConfig.fn, + components: constructorConfig.components, + state: constructorConfig.state }; + + }; + + var store = new _system2.default(storeConfigs); + store.register([constructorConfig.plugins, inlinePlugin]); + + var system = store.getSystem(); + var queryConfig = (0, _utils.parseSeach)(); + + var downloadSpec = function downloadSpec(fetchedConfig) { + if ((typeof constructorConfig === "undefined" ? "undefined" : _typeof(constructorConfig)) !== "object") { + return system; + } + + var localConfig = system.specSelectors.getLocalConfig ? system.specSelectors.getLocalConfig() : {}; + var mergedConfig = (0, _deepExtend2.default)({}, constructorConfig, localConfig, fetchedConfig || {}, queryConfig); + store.setConfigs((0, _configs.filterConfigs)(mergedConfig)); + + if (fetchedConfig !== null) { + if (!queryConfig.url && _typeof(mergedConfig.spec) === "object" && Object.keys(mergedConfig.spec).length) { + system.specActions.updateUrl(""); + system.specActions.updateLoadingStatus("success"); + system.specActions.updateSpec(JSON.stringify(mergedConfig.spec)); + } else if (system.specActions.download && mergedConfig.url) { + system.specActions.updateUrl(mergedConfig.url); + system.specActions.download(mergedConfig.url); + } + } + + if (mergedConfig.dom_id) { + system.render(mergedConfig.dom_id, "App"); + } else { + console.error("Skipped rendering: no `dom_id` was specified"); + } + + return system; + }; + + var configUrl = queryConfig.config || constructorConfig.configUrl; + + if (!configUrl || !system.specActions.getConfigByUrl || system.specActions.getConfigByUrl && !system.specActions.getConfigByUrl(configUrl, downloadSpec)) { + return downloadSpec(); + } + + }; + + // Add presets + module.exports.presets = { + apis: _apis2.default }; + + + // All Plugins + module.exports.plugins = AllPlugins; + +/***/ }, +/* 4 */ +/***/ function(module, exports) { + + module.exports = require("deep-extend"); + +/***/ }, +/* 5 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _redux = __webpack_require__(6); + var _immutable = __webpack_require__(7);var _immutable2 = _interopRequireDefault(_immutable); + var _deepExtend = __webpack_require__(4);var _deepExtend2 = _interopRequireDefault(_deepExtend); + var _reduxImmutable = __webpack_require__(8); + var _objectAssign = __webpack_require__(9);var _objectAssign2 = _interopRequireDefault(_objectAssign); + var _serializeError = __webpack_require__(10);var _serializeError2 = _interopRequireDefault(_serializeError);var _actions = __webpack_require__(11);var _window = __webpack_require__(12);var _window2 = _interopRequireDefault(_window);var _utils = __webpack_require__(13);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _defineProperty(obj, key, value) {if (key in obj) {Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });} else {obj[key] = value;}return obj;}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}} + + + + + + var idFn = function idFn(a) {return a;}; + + // Apply middleware that gets sandwitched between `dispatch` and the reducer function(s) + function createStoreWithMiddleware(rootReducer, initialState, getSystem) { + + var middlwares = [ + // createLogger( { + // stateTransformer: state => state && state.toJS() + // } ), + // errorLog(getSystem), Need to properly handle errors that occur during a render. Ie: let them be... + (0, _utils.systemThunkMiddleware)(getSystem)]; + + + var composeEnhancers = _window2.default.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || _redux.compose; + + return (0, _redux.createStore)(rootReducer, initialState, composeEnhancers( + _redux.applyMiddleware.apply(undefined, middlwares))); + + }var + + Store = function () { + + function Store() {var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};_classCallCheck(this, Store); + (0, _deepExtend2.default)(this, { + state: {}, + plugins: [], + system: { + configs: {}, + fn: {}, + components: {}, + rootInjects: {}, + statePlugins: {} }, + + boundSystem: {}, + toolbox: {} }, + opts); + + this.getSystem = this._getSystem.bind(this); + + // Bare system (nothing in it, besides the state) + this.store = configureStore(idFn, (0, _immutable.fromJS)(this.state), this.getSystem); + + // will be the system + Im, we can add more tools when we need to + this.buildSystem(false); + + // Bootstrap plugins + this.register(this.plugins); + }_createClass(Store, [{ key: "getStore", value: function getStore() + + { + return this.store; + } }, { key: "register", value: function register( + + plugins) {var rebuild = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; + var pluginSystem = combinePlugins(plugins, this.getSystem()); + systemExtend(this.system, pluginSystem); + if (rebuild) { + this.buildSystem(); + } + } }, { key: "buildSystem", value: function buildSystem() + + {var buildReducer = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true; + var dispatch = this.getStore().dispatch; + var getState = this.getStore().getState; + + this.boundSystem = (0, _objectAssign2.default)({}, + this.getRootInjects(), + this.getWrappedAndBoundActions(dispatch), + this.getBoundSelectors(getState, this.getSystem), + this.getStateThunks(getState), + this.getFn(), + this.getConfigs()); + + + if (buildReducer) + this.rebuildReducer(); + } }, { key: "_getSystem", value: function _getSystem() + + { + return this.boundSystem; + } }, { key: "getRootInjects", value: function getRootInjects() + + { + return (0, _objectAssign2.default)({ + getSystem: this.getSystem, + getStore: this.getStore.bind(this), + getComponents: this.getComponents.bind(this), + getState: this.getStore().getState, + getConfigs: this._getConfigs.bind(this), + Im: _immutable2.default }, + this.system.rootInjects || {}); + } }, { key: "_getConfigs", value: function _getConfigs() + + { + return this.system.configs; + } }, { key: "getConfigs", value: function getConfigs() + + { + return { + configs: this.system.configs }; + + } }, { key: "setConfigs", value: function setConfigs( + + configs) { + this.system.configs = configs; + } }, { key: "rebuildReducer", value: function rebuildReducer() + + { + this.store.replaceReducer(buildReducer(this.system.statePlugins)); + } + + /** + * Generic getter from system.statePlugins + * + */ }, { key: "getType", value: function getType( + name) { + var upName = name[0].toUpperCase() + name.slice(1); + return (0, _utils.objReduce)(this.system.statePlugins, function (val, namespace) { + var thing = val[name]; + if (thing) + return _defineProperty({}, namespace + upName, thing); + }); + } }, { key: "getSelectors", value: function getSelectors() + + { + return this.getType("selectors"); + } }, { key: "getActions", value: function getActions() + + { + var actionHolders = this.getType("actions"); + + return (0, _utils.objMap)(actionHolders, function (actions) { + return (0, _utils.objReduce)(actions, function (action, actionName) { + if ((0, _utils.isFn)(action)) + return _defineProperty({}, actionName, action); + }); + }); + } }, { key: "getWrappedAndBoundActions", value: function getWrappedAndBoundActions( + + dispatch) {var _this = this; + var actionGroups = this.getBoundActions(dispatch); + return (0, _utils.objMap)(actionGroups, function (actions, actionGroupName) { + var wrappers = _this.system.statePlugins[actionGroupName.slice(0, -7)].wrapActions; + if (wrappers) { + return (0, _utils.objMap)(actions, function (action, actionName) { + var wrap = wrappers[actionName]; + if (!wrap) { + return action; + } + + if (!Array.isArray(wrap)) { + wrap = [wrap]; + } + return wrap.reduce(function (acc, fn) { + var newAction = function newAction() { + return fn(acc, _this.getSystem()).apply(undefined, arguments); + }; + if (!(0, _utils.isFn)(newAction)) { + throw new TypeError("wrapActions needs to return a function that returns a new function (ie the wrapped action)"); + } + return newAction; + }, action || Function.prototype); + }); + } + return actions; + }); + } }, { key: "getStates", value: function getStates( + + state) { + return Object.keys(this.system.statePlugins).reduce(function (obj, key) { + obj[key] = state.get(key); + return obj; + }, {}); + } }, { key: "getStateThunks", value: function getStateThunks( + + getState) { + return Object.keys(this.system.statePlugins).reduce(function (obj, key) { + obj[key] = function () {return getState().get(key);}; + return obj; + }, {}); + } }, { key: "getFn", value: function getFn() + + { + return { + fn: this.system.fn }; + + } }, { key: "getComponents", value: function getComponents( + + component) { + if (typeof component !== "undefined") + return this.system.components[component]; + return this.system.components; + } }, { key: "getBoundSelectors", value: function getBoundSelectors( + + getState, getSystem) { + return (0, _utils.objMap)(this.getSelectors(), function (obj, key) { + var stateName = [key.slice(0, -9)]; // selectors = 9 chars + var getNestedState = function getNestedState() {return getState().getIn(stateName);}; + + return (0, _utils.objMap)(obj, function (fn) { + return function () {for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];} + var res = fn.apply(null, [getNestedState()].concat(args)); + + // If a selector returns a function, give it the system - for advanced usage + if (typeof res === "function") + res = res(getSystem()); + + return res; + }; + }); + }); + } }, { key: "getBoundActions", value: function getBoundActions( + + dispatch) { + + dispatch = dispatch || this.getStore().dispatch; + + var process = function process(creator) { + + if (typeof creator !== "function") { + return (0, _utils.objMap)(creator, function (prop) {return process(prop);}); + } + + return function () { + var action = null; + try { + action = creator.apply(undefined, arguments); + } + catch (e) { + action = { type: _actions.NEW_THROWN_ERR, error: true, payload: (0, _serializeError2.default)(e) }; + } finally + { + return action; + } + }; + + }; + return (0, _utils.objMap)(this.getActions(), function (actionCreator) {return (0, _redux.bindActionCreators)(process(actionCreator), dispatch);}); + } }, { key: "getMapStateToProps", value: function getMapStateToProps() + + {var _this2 = this; + return function () { + var obj = (0, _objectAssign2.default)({}, _this2.getSystem()); + return obj; + }; + } }, { key: "getMapDispatchToProps", value: function getMapDispatchToProps( + + extras) {var _this3 = this; + return function (dispatch) { + return (0, _deepExtend2.default)({}, _this3.getWrappedAndBoundActions(dispatch), _this3.getFn(), extras); + }; + } }]);return Store;}();exports.default = Store; + + + + function combinePlugins(plugins, toolbox) { + if ((0, _utils.isObject)(plugins) && !(0, _utils.isArray)(plugins)) + return plugins; + + if ((0, _utils.isFunc)(plugins)) + return combinePlugins(plugins(toolbox), toolbox); + + if ((0, _utils.isArray)(plugins)) { + return plugins. + map(function (plugin) {return combinePlugins(plugin, toolbox);}). + reduce(systemExtend, {}); + } + + return {}; + } + + // Wraps deepExtend, to account for certain fields, being wrappers. + // Ie: we need to convert some fields into arrays, and append to them. + // Rather than overwrite + function systemExtend() {var dest = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};var src = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + + if (!(0, _utils.isObject)(dest)) { + return {}; + } + if (!(0, _utils.isObject)(src)) { + return dest; + } + + // Account for wrapActions, make it an array and append to it + // Modifies `src` + // 80% of this code is just safe traversal. We need to address that ( ie: use a lib ) + var statePlugins = dest.statePlugins; + if ((0, _utils.isObject)(statePlugins)) { + for (var namespace in statePlugins) { + var namespaceObj = statePlugins[namespace]; + if (!(0, _utils.isObject)(namespaceObj) || !(0, _utils.isObject)(namespaceObj.wrapActions)) { + continue; + }var + wrapActions = namespaceObj.wrapActions; + for (var actionName in wrapActions) { + var action = wrapActions[actionName]; + + // This should only happen if dest is the first plugin, since invocations after that will ensure its an array + if (!Array.isArray(action)) { + action = [action]; + wrapActions[actionName] = action; // Put the value inside an array + } + + if (src && src.statePlugins && src.statePlugins[namespace] && src.statePlugins[namespace].wrapActions && src.statePlugins[namespace].wrapActions[actionName]) { + src.statePlugins[namespace].wrapActions[actionName] = wrapActions[actionName].concat(src.statePlugins[namespace].wrapActions[actionName]); + } + + } + } + } + + return (0, _deepExtend2.default)(dest, src); + } + + function buildReducer(states) { + var reducerObj = (0, _utils.objMap)(states, function (val) { + return val.reducers; + }); + return allReducers(reducerObj); + } + + function allReducers(reducerSystem) { + var reducers = Object.keys(reducerSystem).reduce(function (obj, key) { + obj[key] = makeReducer(reducerSystem[key]); + return obj; + }, {}); + + if (!Object.keys(reducers).length) { + return idFn; + } + + return (0, _reduxImmutable.combineReducers)(reducers); + } + + function makeReducer(reducerObj) { + return function () {var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : new _immutable.Map();var action = arguments[1]; + if (!reducerObj) + return state; + + var redFn = reducerObj[action.type]; + if (redFn) { + return redFn(state, action); + } + return state; + }; + } + + function configureStore(rootReducer, initialState, getSystem) { + var store = createStoreWithMiddleware(rootReducer, initialState, getSystem); + + // if (module.hot) { + // // Enable Webpack hot module replacement for reducers + // module.hot.accept("reducers/index", () => { + // const nextRootReducer = require("reducers/index") + // store.replaceReducer(nextRootReducer) + // }) + // } + + return store; + } + +/***/ }, +/* 6 */ +/***/ function(module, exports) { + + module.exports = require("redux"); + +/***/ }, +/* 7 */ +/***/ function(module, exports) { + + module.exports = require("immutable"); + +/***/ }, +/* 8 */ +/***/ function(module, exports) { + + module.exports = require("redux-immutable"); + +/***/ }, +/* 9 */ +/***/ function(module, exports) { + + module.exports = require("object-assign"); + +/***/ }, +/* 10 */ +/***/ function(module, exports) { + + module.exports = require("serialize-error"); + +/***/ }, +/* 11 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.CLEAR = exports.NEW_AUTH_ERR = exports.NEW_SPEC_ERR = exports.NEW_THROWN_ERR_BATCH = exports.NEW_THROWN_ERR = undefined;exports. + + + + + + + + newThrownErr = newThrownErr;exports. + + + + + + + newThrownErrBatch = newThrownErrBatch;exports. + + + + + + + newSpecErr = newSpecErr;exports. + + + + + + + newAuthErr = newAuthErr;exports. + + + + + + + clear = clear;var _serializeError = __webpack_require__(10);var _serializeError2 = _interopRequireDefault(_serializeError);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}var NEW_THROWN_ERR = exports.NEW_THROWN_ERR = "err_new_thrown_err";var NEW_THROWN_ERR_BATCH = exports.NEW_THROWN_ERR_BATCH = "err_new_thrown_err_batch";var NEW_SPEC_ERR = exports.NEW_SPEC_ERR = "err_new_spec_err";var NEW_AUTH_ERR = exports.NEW_AUTH_ERR = "err_new_auth_err";var CLEAR = exports.CLEAR = "err_clear";function newThrownErr(err, action) {return { type: NEW_THROWN_ERR, payload: { action: action, error: (0, _serializeError2.default)(err) } };}function newThrownErrBatch(errors) {return { type: NEW_THROWN_ERR_BATCH, payload: errors };}function newSpecErr(err) {return { type: NEW_SPEC_ERR, payload: err };}function newAuthErr(err) {return { type: NEW_AUTH_ERR, payload: err };}function clear() {var filter = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + // filter looks like: {type: 'spec'}, {source: 'parser'} + return { + type: CLEAR, + payload: filter }; + + } + +/***/ }, +/* 12 */ +/***/ function(module, exports) { + + "use strict";function makeWindow() { + var win = { + location: {}, + history: {}, + open: function open() {}, + close: function close() {} }; + + + if (typeof window === "undefined") { + return win; + } + + try { + win = window; + var props = ["File", "Blob", "FormData"];var _iteratorNormalCompletion = true;var _didIteratorError = false;var _iteratorError = undefined;try { + for (var _iterator = props[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {var prop = _step.value; + if (prop in window) { + win[prop] = window[prop]; + } + }} catch (err) {_didIteratorError = true;_iteratorError = err;} finally {try {if (!_iteratorNormalCompletion && _iterator.return) {_iterator.return();}} finally {if (_didIteratorError) {throw _iteratorError;}}} + } catch (e) { + console.error(e); + } + + return win; + } + + module.exports = makeWindow(); + +/***/ }, +/* 13 */ +/***/ function(module, exports, __webpack_require__) { + + /* WEBPACK VAR INJECTION */(function(Buffer) {"use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.btoa = exports.parseSeach = exports.getSampleSchema = exports.validateParam = exports.propChecker = exports.errorLog = exports.memoize = exports.isImmutable = undefined;var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}();var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) {return typeof obj;} : function (obj) {return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;};exports. + + + + + + + + + + + + + + + objectify = objectify;exports. + + + + + + + + arrayify = arrayify;exports. + + + + + + + + + + fromJSOrdered = fromJSOrdered;exports. + + + + + + + + + + bindToState = bindToState;exports. + + + + + + + + normalizeArray = normalizeArray;exports. + + + + + + isFn = isFn;exports. + + + + isObject = isObject;exports. + + + + isFunc = isFunc;exports. + + + + isArray = isArray;exports. + + + + + + + objMap = objMap;exports. + + + + + + + objReduce = objReduce;exports. + + + + + + + + + + systemThunkMiddleware = systemThunkMiddleware;exports. + + + + + + + + + + + + + + + + + + + + + defaultStatusCode = defaultStatusCode;exports. + + + + + + + + + + + + getList = getList;exports. + + + + + + + + + + formatXml = formatXml;exports. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + highlight = highlight;exports. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + mapToList = mapToList;exports. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pascalCase = pascalCase;exports. + + + + + pascalCaseFilename = pascalCaseFilename;exports. + + + + + shallowEqualKeys = shallowEqualKeys;var _immutable = __webpack_require__(7);var _immutable2 = _interopRequireDefault(_immutable);var _objectAssign = __webpack_require__(9);var _objectAssign2 = _interopRequireDefault(_objectAssign);var _shallowequal = __webpack_require__(18);var _shallowequal2 = _interopRequireDefault(_shallowequal);var _camelCase = __webpack_require__(19);var _camelCase2 = _interopRequireDefault(_camelCase);var _upperFirst = __webpack_require__(33);var _upperFirst2 = _interopRequireDefault(_upperFirst);var _memoize2 = __webpack_require__(50);var _memoize3 = _interopRequireDefault(_memoize2);var _some = __webpack_require__(83);var _some2 = _interopRequireDefault(_some);var _eq = __webpack_require__(72);var _eq2 = _interopRequireDefault(_eq);var _fn = __webpack_require__(155);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}var DEFAULT_REPONSE_KEY = "default";var isImmutable = exports.isImmutable = function isImmutable(maybe) {return _immutable2.default.Iterable.isIterable(maybe);};function objectify(thing) {if (!isObject(thing)) return {};if (isImmutable(thing)) return thing.toObject();return thing;}function arrayify(thing) {if (!thing) return [];if (thing.toArray) return thing.toArray();return normalizeArray(thing);}function fromJSOrdered(js) {if (isImmutable(js)) return js; // Can't do much here + return !isObject(js) ? js : Array.isArray(js) ? _immutable2.default.Seq(js).map(fromJSOrdered).toList() : _immutable2.default.Seq(js).map(fromJSOrdered).toOrderedMap();}function bindToState(obj, state) {var newObj = {};Object.keys(obj).filter(function (key) {return typeof obj[key] === "function";}).forEach(function (key) {return newObj[key] = obj[key].bind(null, state);});return newObj;}function normalizeArray(arr) {if (Array.isArray(arr)) return arr;return [arr];}function isFn(fn) {return typeof fn === "function";}function isObject(obj) {return !!obj && (typeof obj === "undefined" ? "undefined" : _typeof(obj)) === "object";}function isFunc(thing) {return typeof thing === "function";}function isArray(thing) {return Array.isArray(thing);} // I've changed memoize libs more than once, so I'm using this a way to make that simpler + var memoize = exports.memoize = _memoize3.default;function objMap(obj, fn) {return Object.keys(obj).reduce(function (newObj, key) {newObj[key] = fn(obj[key], key);return newObj;}, {});}function objReduce(obj, fn) {return Object.keys(obj).reduce(function (newObj, key) {var res = fn(obj[key], key);if (res && (typeof res === "undefined" ? "undefined" : _typeof(res)) === "object") (0, _objectAssign2.default)(newObj, res);return newObj;}, {});} // Redux middleware that exposes the system to async actions (like redux-thunk, but with out system instead of (dispatch, getState) + function systemThunkMiddleware(getSystem) {return function (_ref) {var dispatch = _ref.dispatch,getState = _ref.getState; // eslint-disable-line no-unused-vars + return function (next) {return function (action) {if (typeof action === "function") {return action(getSystem());}return next(action);};};};}var errorLog = exports.errorLog = function errorLog(getSystem) {return function () {return function (next) {return function (action) {try {next(action);} catch (e) {getSystem().errActions.newThrownErr(e, action);}};};};};function defaultStatusCode(responses) {var codes = responses.keySeq();return codes.contains(DEFAULT_REPONSE_KEY) ? DEFAULT_REPONSE_KEY : codes.filter(function (key) {return (key + "")[0] === "2";}).sort().first();} /** + * Returns an Immutable List, safely + * @param {Immutable.Iterable} iterable the iterable to get the key from + * @param {String|[String]} key either an array of keys, or a single key + * @returns {Immutable.List} either iterable.get(keys) or an empty Immutable.List + */function getList(iterable, keys) {if (!_immutable2.default.Iterable.isIterable(iterable)) {return _immutable2.default.List();}var val = iterable.getIn(Array.isArray(keys) ? keys : [keys]);return _immutable2.default.List.isList(val) ? val : _immutable2.default.List();} // Adapted from http://stackoverflow.com/a/2893259/454004 + // Note: directly ported from CoffeeScript + function formatXml(xml) {var contexp, fn, formatted, indent, l, lastType, len, lines, ln, reg, transitions, wsexp;reg = /(>)(<)(\/*)/g;wsexp = /[ ]*(.*)[ ]+\n/g;contexp = /(<.+>)(.+\n)/g;xml = xml.replace(/\r\n/g, "\n").replace(reg, "$1\n$2$3").replace(wsexp, "$1\n").replace(contexp, "$1\n$2");formatted = "";lines = xml.split("\n");indent = 0;lastType = "other";transitions = { "single->single": 0, "single->closing": -1, "single->opening": 0, "single->other": 0, "closing->single": 0, "closing->closing": -1, "closing->opening": 0, "closing->other": 0, "opening->single": 1, "opening->closing": 0, "opening->opening": 1, "opening->other": 1, "other->single": 0, "other->closing": -1, "other->opening": 0, "other->other": 0 };fn = function fn(ln) {var fromTo, key, padding, type, types, value;types = { single: Boolean(ln.match(/<.+\/>/)), closing: Boolean(ln.match(/<\/.+>/)), opening: Boolean(ln.match(/<[^!?].*>/)) };type = function () {var results;results = [];for (key in types) {value = types[key];if (value) {results.push(key);}}return results;}()[0];type = type === void 0 ? "other" : type;fromTo = lastType + "->" + type;lastType = type;padding = "";indent += transitions[fromTo];padding = function () {/* eslint-disable no-unused-vars */var m, ref1, results, j;results = [];for (j = m = 0, ref1 = indent; 0 <= ref1 ? m < ref1 : m > ref1; j = 0 <= ref1 ? ++m : --m) {results.push(" ");} /* eslint-enable no-unused-vars */return results;}().join("");if (fromTo === "opening->closing") {formatted = formatted.substr(0, formatted.length - 1) + ln + "\n";} else {formatted += padding + ln + "\n";}};for (l = 0, len = lines.length; l < len; l++) {ln = lines[l];fn(ln);}return formatted;} /** + * Adapted from http://github.com/asvd/microlight + * @copyright 2016 asvd + */function highlight(el) {var MAX_LENGTH = 5000;var _document = document,appendChild = "appendChild",test = "test";if (!el) return "";if (el.textContent.length > MAX_LENGTH) {return el.textContent;}var reset = function reset(el) {var text = el.textContent,pos = 0, // current position + next1 = text[0], // next character + chr = 1, // current character + prev1, // previous character + prev2, // the one before the previous + token = // current token content + el.innerHTML = "", // (and cleaning the node) + // current token type: + // 0: anything else (whitespaces / newlines) + // 1: operator or brace + // 2: closing braces (after which '/' is division not regex) + // 3: (key)word + // 4: regex + // 5: string starting with " + // 6: string starting with ' + // 7: xml comment + // 8: multiline comment /* */ + // 9: single-line comment starting with two slashes // + // 10: single-line comment starting with hash # + tokenType = 0, // kept to determine between regex and division + lastTokenType, // flag determining if token is multi-character + multichar,node; // running through characters and highlighting + while (prev2 = prev1, // escaping if needed (with except for comments) + // pervious character will not be therefore + // recognized as a token finalize condition + prev1 = tokenType < 7 && prev1 == "\\" ? 1 : chr) {chr = next1;next1 = text[++pos];multichar = token.length > 1; // checking if current token should be finalized + if (!chr || // end of content + // types 9-10 (single-line comments) end with a + // newline + tokenType > 8 && chr == "\n" || [// finalize conditions for other token types + // 0: whitespaces + /\S/[test](chr), // merged together + // 1: operators + 1, // consist of a single character + // 2: braces + 1, // consist of a single character + // 3: (key)word + !/[$\w]/[test](chr), // 4: regex + (prev1 == "/" || prev1 == "\n") && multichar, // 5: string with " + prev1 == "\"" && multichar, // 6: string with ' + prev1 == "'" && multichar, // 7: xml comment + text[pos - 4] + prev2 + prev1 == "-->", // 8: multiline comment + prev2 + prev1 == "*/"][tokenType]) {// appending the token to the result + if (token) {// remapping token type into style + // (some types are highlighted similarly) + el[appendChild](node = _document.createElement("span")).setAttribute("style", [// 0: not formatted + "color: #555; font-weight: bold;", // 1: keywords + "", // 2: punctuation + "", // 3: strings and regexps + "color: #555;", // 4: comments + ""][// not formatted + !tokenType ? 0 : // punctuation + tokenType < 3 ? 2 : // comments + tokenType > 6 ? 4 : // regex and strings + tokenType > 3 ? 3 : // otherwise tokenType == 3, (key)word + // (1 if regexp matches, 0 otherwise) + +/^(a(bstract|lias|nd|rguments|rray|s(m|sert)?|uto)|b(ase|egin|ool(ean)?|reak|yte)|c(ase|atch|har|hecked|lass|lone|ompl|onst|ontinue)|de(bugger|cimal|clare|f(ault|er)?|init|l(egate|ete)?)|do|double|e(cho|ls?if|lse(if)?|nd|nsure|num|vent|x(cept|ec|p(licit|ort)|te(nds|nsion|rn)))|f(allthrough|alse|inal(ly)?|ixed|loat|or(each)?|riend|rom|unc(tion)?)|global|goto|guard|i(f|mp(lements|licit|ort)|n(it|clude(_once)?|line|out|stanceof|t(erface|ernal)?)?|s)|l(ambda|et|ock|ong)|m(icrolight|odule|utable)|NaN|n(amespace|ative|ext|ew|il|ot|ull)|o(bject|perator|r|ut|verride)|p(ackage|arams|rivate|rotected|rotocol|ublic)|r(aise|e(adonly|do|f|gister|peat|quire(_once)?|scue|strict|try|turn))|s(byte|ealed|elf|hort|igned|izeof|tatic|tring|truct|ubscript|uper|ynchronized|witch)|t(emplate|hen|his|hrows?|ransient|rue|ry|ype(alias|def|id|name|of))|u(n(checked|def(ined)?|ion|less|signed|til)|se|sing)|v(ar|irtual|oid|olatile)|w(char_t|hen|here|hile|ith)|xor|yield)$/[test](token)]);node[appendChild](_document.createTextNode(token));} // saving the previous token type + // (skipping whitespaces and comments) + lastTokenType = tokenType && tokenType < 7 ? tokenType : lastTokenType; // initializing a new token + token = ""; // determining the new token type (going up the + // list until matching a token type start + // condition) + tokenType = 11;while (![1, // 0: whitespace + // 1: operator or braces + /[\/{}[(\-+*=<>:;|\\.,?!&@~]/[test](chr), /[\])]/[test](chr), // 2: closing brace + /[$\w]/[test](chr), // 3: (key)word + chr == "/" && // 4: regex + // previous token was an + // opening brace or an + // operator (otherwise + // division, not a regex) + lastTokenType < 2 && // workaround for xml + // closing tags + prev1 != "<", chr == "\"", // 5: string with " + chr == "'", // 6: string with ' + // 7: xml comment + chr + next1 + text[pos + 1] + text[pos + 2] == "";} else {return null;}}return (0, _fn.memoizedCreateXMLExample)(schema, config); + } + + return JSON.stringify((0, _fn.memoizedSampleFromSchema)(schema, config), null, 2); + }; + + var parseSeach = exports.parseSeach = function parseSeach() { + var map = {}; + var search = window.location.search; + + if (search != "") { + var params = search.substr(1).split("&"); + + for (var i in params) { + i = params[i].split("="); + map[decodeURIComponent(i[0])] = decodeURIComponent(i[1]); + } + } + + return map; + }; + + var btoa = exports.btoa = function btoa(str) { + var buffer = void 0; + + if (str instanceof Buffer) { + buffer = str; + } else { + buffer = new Buffer(str.toString(), "utf-8"); + } + + return buffer.toString("base64"); + }; + /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(14).Buffer)) + +/***/ }, +/* 14 */ +/***/ function(module, exports, __webpack_require__) { + + /* WEBPACK VAR INJECTION */(function(global) {/*! * The buffer module from node.js, for the browser. * * @author Feross Aboukhadijeh * @license MIT */ -"use strict";function n(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()&&"function"==typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(e){return!1}}function o(){return u.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function a(e,t){if(o()=o())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o().toString(16)+" bytes");return 0|e}function m(e){return+e!=e&&(e=0),u.alloc(+e)}function v(e,t){if(u.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var r=e.length;if(0===r)return 0;for(var n=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return W(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return $(e).length;default:if(n)return W(e).length;t=(""+t).toLowerCase(),n=!0}}function b(e,t,r){var n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if(r>>>=0,t>>>=0,r<=t)return"";for(e||(e="utf8");;)switch(e){case"hex":return q(this,t,r);case"utf8":case"utf-8":return C(this,t,r);case"ascii":return k(this,t,r);case"latin1":case"binary":return R(this,t,r);case"base64":return x(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return M(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function g(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function _(e,t,r,n,o){if(0===e.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=o?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(o)return-1;r=e.length-1}else if(r<0){if(!o)return-1;r=0}if("string"==typeof t&&(t=u.from(t,n)),u.isBuffer(t))return 0===t.length?-1:E(e,t,r,n,o);if("number"==typeof t)return t&=255,u.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):E(e,[t],r,n,o);throw new TypeError("val must be string, number or Buffer")}function E(e,t,r,n,o){function a(e,t){return 1===u?e[t]:e.readUInt16BE(t*u)}var u=1,i=e.length,s=t.length;if(void 0!==n&&(n=String(n).toLowerCase(),"ucs2"===n||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;u=2,i/=2,s/=2,r/=2}var l;if(o){var c=-1;for(l=r;li&&(r=i-s),l=r;l>=0;l--){for(var f=!0,p=0;po&&(n=o)):n=o;var a=t.length;if(a%2!==0)throw new TypeError("Invalid hex string");n>a/2&&(n=a/2);for(var u=0;u239?4:a>223?3:a>191?2:1;if(o+i<=r){var s,l,c,f;switch(i){case 1:a<128&&(u=a);break;case 2:s=e[o+1],128===(192&s)&&(f=(31&a)<<6|63&s,f>127&&(u=f));break;case 3:s=e[o+1],l=e[o+2],128===(192&s)&&128===(192&l)&&(f=(15&a)<<12|(63&s)<<6|63&l,f>2047&&(f<55296||f>57343)&&(u=f));break;case 4:s=e[o+1],l=e[o+2],c=e[o+3],128===(192&s)&&128===(192&l)&&128===(192&c)&&(f=(15&a)<<18|(63&s)<<12|(63&l)<<6|63&c,f>65535&&f<1114112&&(u=f))}}null===u?(u=65533,i=1):u>65535&&(u-=65536,n.push(u>>>10&1023|55296),u=56320|1023&u),n.push(u),o+=i}return A(n)}function A(e){var t=e.length;if(t<=ee)return String.fromCharCode.apply(String,e);for(var r="",n=0;nn)&&(r=n);for(var o="",a=t;ar)throw new RangeError("Trying to access beyond buffer length")}function I(e,t,r,n,o,a){if(!u.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>o||te.length)throw new RangeError("Index out of range")}function U(e,t,r,n){t<0&&(t=65535+t+1);for(var o=0,a=Math.min(e.length-r,2);o>>8*(n?o:1-o)}function z(e,t,r,n){t<0&&(t=4294967295+t+1);for(var o=0,a=Math.min(e.length-r,4);o>>8*(n?o:3-o)&255}function L(e,t,r,n,o,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function D(e,t,r,n,o){return o||L(e,t,r,4,3.4028234663852886e38,-3.4028234663852886e38),G.write(e,t,r,n,23,4),r+4}function B(e,t,r,n,o){return o||L(e,t,r,8,1.7976931348623157e308,-1.7976931348623157e308),G.write(e,t,r,n,52,8),r+8}function J(e){if(e=F(e).replace(te,""),e.length<2)return"";for(;e.length%4!==0;)e+="=";return e}function F(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function V(e){return e<16?"0"+e.toString(16):e.toString(16)}function W(e,t){t=t||1/0;for(var r,n=e.length,o=null,a=[],u=0;u55295&&r<57344){if(!o){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(u+1===n){(t-=3)>-1&&a.push(239,191,189);continue}o=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),o=r;continue}r=(o-55296<<10|r-56320)+65536}else o&&(t-=3)>-1&&a.push(239,191,189);if(o=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function H(e){for(var t=[],r=0;r>8,o=r%256,a.push(o),a.push(n);return a}function $(e){return Z.toByteArray(J(e))}function K(e,t,r,n){for(var o=0;o=t.length||o>=e.length);++o)t[o+r]=e[o];return o}function X(e){return e!==e}var Z=r(15),G=r(16),Q=r(17);t.Buffer=u,t.SlowBuffer=m,t.INSPECT_MAX_BYTES=50,u.TYPED_ARRAY_SUPPORT=void 0!==e.TYPED_ARRAY_SUPPORT?e.TYPED_ARRAY_SUPPORT:n(),t.kMaxLength=o(),u.poolSize=8192,u._augment=function(e){return e.__proto__=u.prototype,e},u.from=function(e,t,r){return i(null,e,t,r)},u.TYPED_ARRAY_SUPPORT&&(u.prototype.__proto__=Uint8Array.prototype,u.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&u[Symbol.species]===u&&Object.defineProperty(u,Symbol.species,{value:null,configurable:!0})),u.alloc=function(e,t,r){return l(null,e,t,r)},u.allocUnsafe=function(e){return c(null,e)},u.allocUnsafeSlow=function(e){return c(null,e)},u.isBuffer=function(e){return!(null==e||!e._isBuffer)},u.compare=function(e,t){if(!u.isBuffer(e)||!u.isBuffer(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var r=e.length,n=t.length,o=0,a=Math.min(r,n);o0&&(e=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(e+=" ... ")),""},u.prototype.compare=function(e,t,r,n,o){if(!u.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===o&&(o=this.length),t<0||r>e.length||n<0||o>this.length)throw new RangeError("out of range index");if(n>=o&&t>=r)return 0;if(n>=o)return-1;if(t>=r)return 1;if(t>>>=0,r>>>=0,n>>>=0,o>>>=0,this===e)return 0;for(var a=o-n,i=r-t,s=Math.min(a,i),l=this.slice(n,o),c=e.slice(t,r),f=0;fo)&&(r=o),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return w(this,e,t,r);case"utf8":case"utf-8":return j(this,e,t,r);case"ascii":return P(this,e,t,r);case"latin1":case"binary":return O(this,e,t,r);case"base64":return T(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var ee=4096;u.prototype.slice=function(e,t){var r=this.length;e=~~e,t=void 0===t?r:~~t,e<0?(e+=r,e<0&&(e=0)):e>r&&(e=r),t<0?(t+=r,t<0&&(t=0)):t>r&&(t=r),t0&&(o*=256);)n+=this[e+--t]*o;return n},u.prototype.readUInt8=function(e,t){return t||N(e,1,this.length),this[e]},u.prototype.readUInt16LE=function(e,t){return t||N(e,2,this.length),this[e]|this[e+1]<<8},u.prototype.readUInt16BE=function(e,t){return t||N(e,2,this.length),this[e]<<8|this[e+1]},u.prototype.readUInt32LE=function(e,t){return t||N(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},u.prototype.readUInt32BE=function(e,t){return t||N(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},u.prototype.readIntLE=function(e,t,r){e|=0,t|=0,r||N(e,t,this.length);for(var n=this[e],o=1,a=0;++a=o&&(n-=Math.pow(2,8*t)),n},u.prototype.readIntBE=function(e,t,r){e|=0,t|=0,r||N(e,t,this.length);for(var n=t,o=1,a=this[e+--n];n>0&&(o*=256);)a+=this[e+--n]*o;return o*=128,a>=o&&(a-=Math.pow(2,8*t)),a},u.prototype.readInt8=function(e,t){return t||N(e,1,this.length),128&this[e]?(255-this[e]+1)*-1:this[e]},u.prototype.readInt16LE=function(e,t){t||N(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt16BE=function(e,t){t||N(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt32LE=function(e,t){return t||N(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},u.prototype.readInt32BE=function(e,t){return t||N(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},u.prototype.readFloatLE=function(e,t){return t||N(e,4,this.length),G.read(this,e,!0,23,4)},u.prototype.readFloatBE=function(e,t){return t||N(e,4,this.length),G.read(this,e,!1,23,4)},u.prototype.readDoubleLE=function(e,t){return t||N(e,8,this.length),G.read(this,e,!0,52,8)},u.prototype.readDoubleBE=function(e,t){return t||N(e,8,this.length),G.read(this,e,!1,52,8)},u.prototype.writeUIntLE=function(e,t,r,n){if(e=+e,t|=0,r|=0,!n){var o=Math.pow(2,8*r)-1;I(this,e,t,r,o,0)}var a=1,u=0;for(this[t]=255&e;++u=0&&(u*=256);)this[t+a]=e/u&255;return t+r},u.prototype.writeUInt8=function(e,t,r){return e=+e,t|=0,r||I(this,e,t,1,255,0),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},u.prototype.writeUInt16LE=function(e,t,r){return e=+e,t|=0,r||I(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):U(this,e,t,!0),t+2},u.prototype.writeUInt16BE=function(e,t,r){return e=+e,t|=0,r||I(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):U(this,e,t,!1),t+2},u.prototype.writeUInt32LE=function(e,t,r){return e=+e,t|=0,r||I(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):z(this,e,t,!0),t+4},u.prototype.writeUInt32BE=function(e,t,r){return e=+e,t|=0,r||I(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):z(this,e,t,!1),t+4},u.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t|=0,!n){var o=Math.pow(2,8*r-1);I(this,e,t,r,o-1,-o)}var a=0,u=1,i=0;for(this[t]=255&e;++a>0)-i&255;return t+r},u.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t|=0,!n){var o=Math.pow(2,8*r-1);I(this,e,t,r,o-1,-o)}var a=r-1,u=1,i=0;for(this[t+a]=255&e;--a>=0&&(u*=256);)e<0&&0===i&&0!==this[t+a+1]&&(i=1),this[t+a]=(e/u>>0)-i&255;return t+r},u.prototype.writeInt8=function(e,t,r){return e=+e,t|=0,r||I(this,e,t,1,127,-128),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},u.prototype.writeInt16LE=function(e,t,r){return e=+e,t|=0,r||I(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):U(this,e,t,!0),t+2},u.prototype.writeInt16BE=function(e,t,r){return e=+e,t|=0,r||I(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):U(this,e,t,!1),t+2},u.prototype.writeInt32LE=function(e,t,r){return e=+e,t|=0,r||I(this,e,t,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):z(this,e,t,!0),t+4},u.prototype.writeInt32BE=function(e,t,r){return e=+e,t|=0,r||I(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):z(this,e,t,!1),t+4},u.prototype.writeFloatLE=function(e,t,r){return D(this,e,t,!0,r)},u.prototype.writeFloatBE=function(e,t,r){return D(this,e,t,!1,r)},u.prototype.writeDoubleLE=function(e,t,r){return B(this,e,t,!0,r)},u.prototype.writeDoubleBE=function(e,t,r){return B(this,e,t,!1,r)},u.prototype.copy=function(e,t,r,n){if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t=0;--o)e[o+t]=this[o+r];else if(a<1e3||!u.TYPED_ARRAY_SUPPORT)for(o=0;o>>=0,r=void 0===r?this.length:r>>>0,e||(e=0);var a;if("number"==typeof e)for(a=t;a=n?e:o(e,t,r)}var o=r(36);e.exports=n},function(e,t){function r(e,t,r){var n=-1,o=e.length;t<0&&(t=-t>o?0:o+t),r=r>o?o:r,r<0&&(r+=o),o=t>r?0:r-t>>>0,t>>>=0;for(var a=Array(o);++n-1}var o=r(71);e.exports=n},function(e,t,r){function n(e,t){var r=this.__data__,n=o(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}var o=r(71);e.exports=n},function(e,t,r){var n=r(56),o=r(24),a=n(o,"Map");e.exports=a},function(e,t,r){function n(e){var t=o(this,e).delete(e);return this.size-=t?1:0,t}var o=r(78);e.exports=n},function(e,t,r){function n(e,t){var r=e.__data__;return o(t)?r["string"==typeof t?"string":"hash"]:r.map}var o=r(79);e.exports=n},function(e,t){function r(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}e.exports=r},function(e,t,r){function n(e){return o(this,e).get(e)}var o=r(78);e.exports=n},function(e,t,r){function n(e){return o(this,e).has(e)}var o=r(78);e.exports=n},function(e,t,r){function n(e,t){var r=o(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this}var o=r(78);e.exports=n},function(e,t,r){function n(e,t,r){var n=i(e)?o:u;return r&&s(e,t,r)&&(t=void 0), -n(e,a(t,3))}var o=r(84),a=r(85),u=r(148),i=r(27),s=r(154);e.exports=n},function(e,t){function r(e,t){for(var r=-1,n=null==e?0:e.length;++rp))return!1;var h=c.get(e);if(h&&c.get(t))return h==t;var y=-1,m=!0,v=r&s?new o:void 0;for(c.set(e,t),c.set(t,e);++y-1&&e%1==0&&e-1&&e%1==0&&e<=n}var n=9007199254740991;e.exports=r},function(e,t){function r(e){return function(t){return e(t)}}e.exports=r},function(e,t,r){(function(e){var n=r(25),o="object"==typeof t&&t&&!t.nodeType&&t,a=o&&"object"==typeof e&&e&&!e.nodeType&&e,u=a&&a.exports===o,i=u&&n.process,s=function(){try{return i&&i.binding&&i.binding("util")}catch(e){}}();e.exports=s}).call(t,r(112)(e))},function(e,t,r){function n(e){if(!o(e))return a(e);var t=[];for(var r in Object(e))i.call(e,r)&&"constructor"!=r&&t.push(r);return t}var o=r(121),a=r(122),u=Object.prototype,i=u.hasOwnProperty;e.exports=n},function(e,t){function r(e){var t=e&&e.constructor,r="function"==typeof t&&t.prototype||n;return e===r}var n=Object.prototype;e.exports=r},function(e,t,r){var n=r(123),o=n(Object.keys,Object);e.exports=o},function(e,t){function r(e,t){return function(r){return e(t(r))}}e.exports=r},function(e,t,r){function n(e){return null!=e&&a(e.length)&&!o(e)}var o=r(58),a=r(117);e.exports=n},function(e,t,r){var n=r(126),o=r(76),a=r(127),u=r(128),i=r(129),s=r(29),l=r(62),c="[object Map]",f="[object Object]",p="[object Promise]",d="[object Set]",h="[object WeakMap]",y="[object DataView]",m=l(n),v=l(o),b=l(a),g=l(u),_=l(i),E=s;(n&&E(new n(new ArrayBuffer(1)))!=y||o&&E(new o)!=c||a&&E(a.resolve())!=p||u&&E(new u)!=d||i&&E(new i)!=h)&&(E=function(e){var t=s(e),r=t==f?e.constructor:void 0,n=r?l(r):"";if(n)switch(n){case m:return y;case v:return c;case b:return p;case g:return d;case _:return h}return t}),e.exports=E},function(e,t,r){var n=r(56),o=r(24),a=n(o,"DataView");e.exports=a},function(e,t,r){var n=r(56),o=r(24),a=n(o,"Promise");e.exports=a},function(e,t,r){var n=r(56),o=r(24),a=n(o,"Set");e.exports=a},function(e,t,r){var n=r(56),o=r(24),a=n(o,"WeakMap");e.exports=a},function(e,t,r){function n(e){for(var t=a(e),r=t.length;r--;){var n=t[r],u=e[n];t[r]=[n,u,o(u)]}return t}var o=r(131),a=r(106);e.exports=n},function(e,t,r){function n(e){return e===e&&!o(e)}var o=r(59);e.exports=n},function(e,t){function r(e,t){return function(r){return null!=r&&(r[e]===t&&(void 0!==t||e in Object(r)))}}e.exports=r},function(e,t,r){function n(e,t){return i(e)&&s(t)?l(c(e),t):function(r){var n=a(r,e);return void 0===n&&n===t?u(r,e):o(t,n,f|p)}}var o=r(94),a=r(134),u=r(141),i=r(137),s=r(131),l=r(132),c=r(140),f=1,p=2;e.exports=n},function(e,t,r){function n(e,t,r){var n=null==e?void 0:o(e,t);return void 0===n?r:n}var o=r(135);e.exports=n},function(e,t,r){function n(e,t){t=o(t,e);for(var r=0,n=t.length;null!=e&&r1&&void 0!==arguments[1]?arguments[1]:{},n=(0,a.objectify)(t),o=n.type,u=n.example,i=n.properties,s=n.additionalProperties,l=n.items,c=r.includeReadOnly;if(void 0!==u)return u;if(!o)if(i)o="object";else{if(!l)return;o="array"}if("object"===o){var p=(0,a.objectify)(i),d={};for(var h in p)p[h].readOnly&&!c||(d[h]=e(p[h]));if(s===!0)d.additionalProp1={};else if(s)for(var y=(0,a.objectify)(s),m=e(y),v=1;v<4;v++)d["additionalProp"+v]=m;return d}return"array"===o?[e(l)]:t.enum?t.default?t.default:(0,a.normalizeArray)(t.enum)[0]:f(t)},d=(t.inferSchema=function(e){return e.schema&&(e=e.schema),e.properties&&(e.type="object"),e},t.sampleXmlFromSchema=function e(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=(0,a.objectify)(t),o=n.type,u=n.properties,i=n.additionalProperties,s=n.items,l=n.example,c=r.includeReadOnly,p=n.default,d={},h={},y=t.xml,m=y.name,v=y.prefix,b=y.namespace,g=n.enum,_=void 0,E=void 0;if(!o)if(u||i)o="object";else{if(!s)return;o="array"}if(m=m||"notagname",_=(v?v+":":"")+m,b){var w=v?"xmlns:"+v:"xmlns";h[w]=b}if("array"===o&&s){if(s.xml=s.xml||y||{},s.xml.name=s.xml.name||y.name,y.wrapped)return d[_]=[],Array.isArray(l)?l.forEach(function(t){s.example=t,d[_].push(e(s,r))}):Array.isArray(p)?p.forEach(function(t){s.default=t,d[_].push(e(s,r))}):d[_]=[e(s,r)],h&&d[_].push({_attr:h}),d;var j=[];return Array.isArray(l)?(l.forEach(function(t){s.example=t,j.push(e(s,r))}),j):Array.isArray(p)?(p.forEach(function(t){s.default=t,j.push(e(s,r))}),j):e(s,r)}if("object"===o){var P=(0,a.objectify)(u);d[_]=[],l=l||{};for(var O in P)if(!P[O].readOnly||c)if(P[O].xml=P[O].xml||{},P[O].xml.attribute){var T=Array.isArray(P[O].enum)&&P[O].enum[0],S=P[O].example,x=P[O].default;h[P[O].xml.name||O]=void 0!==S&&S||void 0!==l[O]&&l[O]||void 0!==x&&x||T||f(P[O])}else{P[O].xml.name=P[O].xml.name||O,P[O].example=void 0!==P[O].example?P[O].example:l[O];var C=e(P[O]);Array.isArray(C)?d[_]=d[_].concat(C):d[_].push(C)}return i===!0?d[_].push({additionalProp:"Anything can be here"}):i&&d[_].push({additionalProp:f(i)}),h&&d[_].push({_attr:h}),d}return E=void 0!==l?l:void 0!==p?p:Array.isArray(g)?g[0]:f(t),d[_]=h?[{_attr:h},E]:E,d});t.memoizedCreateXMLExample=(0,l.default)(o),t.memoizedSampleFromSchema=(0,l.default)(p)},function(e,t){e.exports=require("xml")},function(e,t){e.exports=require("memoizee")},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(){return[u.default]}Object.defineProperty(t,"__esModule",{value:!0}),t.default=o;var a=r(159),u=n(a)},function(e,t,r){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){var e={components:{App:A.default,authorizationPopup:R.default,authorizeBtn:M.default,authorizeOperationBtn:I.default,auths:z.default,authError:D.default,oauth2:H.default,apiKeyAuth:J.default,basicAuth:V.default,clear:$.default,liveResponse:X.default,info:Te.default,onlineValidatorBadge:G.default,operations:ee.default,operation:re.default,highlightCode:oe.default,responses:ue.default,response:se.default,responseBody:ce.default,parameters:pe.default,parameterRow:he.default,execute:me.default,headers:be.default,errors:_e.default,contentType:we.default,overview:Pe.default,footer:xe.default,ParamBody:Ae.default,curl:Re.default,schemes:Me.default,modelExample:Ie.default,model:ze.default,models:De.default,TryItOutButton:Je.default}},t={components:Ve},r={components:He};return[P.default,m.default,p.default,c.default,u.default,s.default,h.default,e,t,_.default,r,w.default,b.default,T.default,x.default]};var a=r(160),u=o(a),i=r(175),s=o(i),l=r(179),c=o(l),f=r(185),p=o(f),d=r(240),h=o(d),y=r(241),m=o(y),v=r(242),b=o(v),g=r(253),_=o(g),E=r(255),w=o(E),j=r(260),P=o(j),O=r(262),T=o(O),S=r(268),x=o(S),C=r(269),A=o(C),k=r(270),R=o(k),q=r(271),M=o(q),N=r(272),I=o(N),U=r(274),z=o(U),L=r(275),D=o(L),B=r(276),J=o(B),F=r(277),V=o(F),W=r(278),H=o(W),Y=r(280),$=o(Y),K=r(281),X=o(K),Z=r(282),G=o(Z),Q=r(283),ee=o(Q),te=r(284),re=o(te),ne=r(287),oe=o(ne),ae=r(288),ue=o(ae),ie=r(289),se=o(ie),le=r(290),ce=o(le),fe=r(292),pe=o(fe),de=r(293),he=o(de),ye=r(294),me=o(ye),ve=r(295),be=o(ve),ge=r(296),_e=o(ge),Ee=r(298),we=o(Ee),je=r(299),Pe=o(je),Oe=r(302),Te=o(Oe),Se=r(303),xe=o(Se),Ce=r(304),Ae=o(Ce),ke=r(305),Re=o(ke),qe=r(307),Me=o(qe),Ne=r(308),Ie=o(Ne),Ue=r(309),ze=o(Ue),Le=r(310),De=o(Le),Be=r(311),Je=o(Be),Fe=r(300),Ve=n(Fe),We=r(312),He=n(We)},function(e,t,r){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return{statePlugins:{err:{reducers:(0,u.default)(e),actions:s,selectors:c}}}};var a=r(161),u=o(a),i=r(11),s=n(i),l=r(173),c=n(l)},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t;return t={},o(t,a.NEW_THROWN_ERR,function(t,r){var n=r.payload,o=Object.assign(p,n,{type:"thrown"});return t.update("errors",function(e){return(e||(0,s.List)()).push((0,s.fromJS)(o))}).update("errors",function(t){return(0,f.default)(t,e.getSystem())})}),o(t,a.NEW_THROWN_ERR_BATCH,function(t,r){var n=r.payload;return n=n.map(function(e){return(0,s.fromJS)(Object.assign(p,e,{type:"thrown"}))}),t.update("errors",function(e){return(e||(0,s.List)()).concat((0,s.fromJS)(n))}).update("errors",function(t){return(0,f.default)(t,e.getSystem())})}),o(t,a.NEW_SPEC_ERR,function(t,r){var n=r.payload,o=(0,s.fromJS)(n);return o=o.set("type","spec"),t.update("errors",function(e){return(e||(0,s.List)()).push((0,s.fromJS)(o)).sortBy(function(e){return e.get("line")})}).update("errors",function(t){return(0,f.default)(t,e.getSystem())})}),o(t,a.NEW_AUTH_ERR,function(t,r){var n=r.payload,o=(0,s.fromJS)(Object.assign({},n));return o=o.set("type","auth"),t.update("errors",function(e){return(e||(0,s.List)()).push((0,s.fromJS)(o))}).update("errors",function(t){return(0,f.default)(t,e.getSystem())})}),o(t,a.CLEAR,function(e,t){var r=t.payload;if(r){var n=l.default.fromJS((0,i.default)((e.get("errors")||(0,s.List)()).toJS(),r));return e.merge({errors:n})}}),t};var a=r(11),u=r(162),i=n(u),s=r(7),l=n(s),c=r(166),f=n(c),p={line:0,level:"error",message:"Unknown error"}},function(e,t,r){function n(e,t){var r=i(e)?o:a;return r(e,s(u(t,3)))}var o=r(163),a=r(164),u=r(85),i=r(27),s=r(165);e.exports=n},function(e,t){function r(e,t){for(var r=-1,n=null==e?0:e.length,o=0,a=[];++r-1||l.push({name:a(e).replace(".js","").replace("./",""),transform:s(e).transform}))})},function(e,t,r){function n(e,t,r){var n=s(e)?o:i,l=arguments.length<3;return n(e,u(t,4),r,l,a)}var o=r(42),a=r(149),u=r(85),i=r(168),s=r(27);e.exports=n},function(e,t){function r(e,t,r,n,o){return o(e,function(e,o,a){r=n?(n=!1,e):t(r,e,o,a)}),r}e.exports=r},function(e,t,r){function n(e){return r(o(e))}function o(e){return a[e]||function(){throw new Error("Cannot find module '"+e+"'.")}()}var a={"./not-of-type.js":170,"./parameter-oneof.js":171,"./strip-instance.js":172};n.keys=function(){return Object.keys(a)},n.resolve=o,e.exports=n,n.id=169},function(e,t){"use strict";function r(e){return e.map(function(e){var t="is not of a type(s)",r=e.get("message").indexOf(t);if(r>-1){var o=e.get("message").slice(r+t.length).split(",");return e.set("message",e.get("message").slice(0,r)+n(o))}return e})}function n(e){return e.reduce(function(e,t,r,n){return r===n.length-1&&n.length>1?e+"or "+t:n[r+1]&&n.length>2?e+t+", ":n[r+1]?e+t+" ":e+t},"should be a")}Object.defineProperty(t,"__esModule",{value:!0}),t.transform=r},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e,t){t.jsSpec;return e}Object.defineProperty(t,"__esModule",{value:!0}),t.transform=o;var a=r(134);n(a),r(7)},function(e,t){"use strict";function r(e){return e.map(function(e){return e.set("message",n(e.get("message"),"instance."))})}function n(e,t){return e.replace(new RegExp(t,"g"),"")}Object.defineProperty(t,"__esModule",{value:!0}),t.transform=r},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.lastError=t.allErrors=void 0;var n=r(7),o=r(174),a=function(e){return e},u=t.allErrors=(0,o.createSelector)(a,function(e){return e.get("errors",(0,n.List)())});t.lastError=(0,o.createSelector)(u,function(e){return e.last()})},function(e,t){e.exports=require("reselect")},function(e,t,r){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return{statePlugins:{layout:{reducers:u.default,actions:s,selectors:c}}}};var a=r(176),u=o(a),i=r(177),s=n(i),l=r(178),c=n(l)},function(e,t,r){"use strict";function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(t,"__esModule",{value:!0});var o,a=r(177);t.default=(o={},n(o,a.UPDATE_LAYOUT,function(e,t){return e.set("layout",t.payload)}),n(o,a.SHOW,function(e,t){var r=t.payload.thing,n=t.payload.shown;return e.setIn(["shown"].concat(r),n)}),n(o,a.UPDATE_MODE,function(e,t){var r=t.payload.thing,n=t.payload.mode;return e.setIn(["modes"].concat(r),(n||"")+"")}),o)},function(e,t,r){"use strict";function n(e){return{type:i,payload:e}}function o(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return e=(0,u.normalizeArray)(e),{type:l,payload:{thing:e,shown:t}}}function a(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return e=(0,u.normalizeArray)(e),{type:s,payload:{thing:e,mode:t}}}Object.defineProperty(t,"__esModule",{value:!0}),t.SHOW=t.UPDATE_MODE=t.UPDATE_LAYOUT=void 0,t.updateLayout=n,t.show=o,t.changeMode=a;var u=r(13),i=t.UPDATE_LAYOUT="layout_update_layout",s=t.UPDATE_MODE="layout_update_mode",l=t.SHOW="layout_show"},function(e,t,r){"use strict";function n(e){if(Array.isArray(e)){for(var t=0,r=Array(e.length);t2&&void 0!==arguments[2]?arguments[2]:"";return t=(0,a.normalizeArray)(t),e.getIn(["modes"].concat(n(t)),r)},t.showSummary=(0,o.createSelector)(u,function(e){return!i(e,"editor")})},function(e,t,r){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return{statePlugins:{spec:{wrapActions:p,reducers:u.default,actions:s,selectors:c}}}};var a=r(180),u=o(a),i=r(181),s=n(i),l=r(183),c=n(l),f=r(184),p=n(f)},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e){if(Array.isArray(e)){for(var t=0,r=Array(e.length);t=0||Object.prototype.hasOwnProperty.call(e,n)&&(r[n]=e[n]);return r}function a(e){return e instanceof Error?{type:j,error:!0,payload:e}:"string"==typeof e?{type:j,payload:e.replace(/\t/g," ")||""}:{type:j,payload:""}}function u(e){return{type:N,payload:e}}function i(e){return{type:P,payload:e}}function s(e){if(!e||"object"!==("undefined"==typeof e?"undefined":b(e)))throw new Error("updateJson must only accept a simple JSON object");return{type:O,payload:e}}function l(e,t,r,n){return{type:T,payload:{path:e,value:r,paramName:t,isXml:n}}}function c(e){return{type:S,payload:{pathMethod:e}}}function f(e){return{type:q,payload:{pathMethod:e}}}function p(e,t){return{type:M,payload:{path:e,value:t,key:"consumes_value"}}}function d(e,t){return{type:M,payload:{path:e,value:t,key:"produces_value"}}}function h(e,t){return{type:k,payload:{path:e,method:t}}}function y(e,t){return{type:R,payload:{path:e,method:t}}}function m(e,t,r){return{type:I,payload:{scheme:e,path:t,method:r}}}Object.defineProperty(t,"__esModule",{value:!0}),t.execute=t.executeRequest=t.logRequest=t.setRequest=t.setResponse=t.formatIntoYaml=t.resolveSpec=t.parseToJson=t.SET_SCHEME=t.UPDATE_RESOLVED=t.UPDATE_OPERATION_VALUE=t.ClEAR_VALIDATE_PARAMS=t.CLEAR_REQUEST=t.CLEAR_RESPONSE=t.LOG_REQUEST=t.SET_REQUEST=t.SET_RESPONSE=t.VALIDATE_PARAMS=t.UPDATE_PARAM=t.UPDATE_JSON=t.UPDATE_URL=t.UPDATE_SPEC=void 0;var v=Object.assign||function(e){for(var t=1;t0){var o=r.map(function(e){return console.error(e),e.line=e.fullPath?c(f,e.fullPath):null,e.path=e.fullPath?e.fullPath.join("."):null,e.level="error",e.type="thrown",e.source="resolver",Object.defineProperty(e,"message",{enumerable:!0,value:e.message}),e});a.newThrownErrBatch(o)}return n.updateResolved(t)})}},t.formatIntoYaml=function(){return function(e){var t=e.specActions,r=e.specSelectors,n=r.specStr,o=t.updateSpec;try{var a=_.default.safeDump(_.default.safeLoad(n()),{indent:2});o(a)}catch(e){o(e)}}},t.setResponse=function(e,t,r){return{payload:{path:e,method:t,res:r},type:x}},t.setRequest=function(e,t,r){return{payload:{path:e,method:t,req:r},type:C}},t.logRequest=function(e){return{payload:e,type:A}},t.executeRequest=function(e){return function(t){var r=t.fn,n=t.specActions,o=t.specSelectors,a=e.pathName,u=e.method,i=Object.assign({contextUrl:o.url()},e);return a&&u&&(i.operationId=u.toLowerCase()+"-"+a),i=r.buildRequest(i),n.setRequest(e.pathName,e.method,i),r.execute(e).then(function(t){return n.setResponse(e.pathName,e.method,t)}).catch(function(t){return n.setResponse(e.pathName,e.method,{error:!0,err:(0,w.default)(t)})})}},function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.path,r=e.method,n=o(e,["path","method"]);return function(e){var o=e.fn.fetch,a=e.specSelectors,u=e.specActions,i=a.spec().toJS(),s=a.operationScheme(t,r),l=a.contentTypeValues([t,r]).toJS(),c=l.requestContentType,f=l.responseContentType,p=/xml/i.test(c),d=a.parameterValues([t,r],p).toJS();return u.executeRequest(v({fetch:o,spec:i,pathName:t,method:r,parameters:d,requestContentType:c,scheme:s,responseContentType:f},n))}});t.execute=U},function(e,t){e.exports=require("js-yaml")},function(e,t,r){"use strict";function n(e){if(Array.isArray(e)){for(var t=0,r=Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:"";if(p.List.isList(e))return e.some(function(e){return p.Map.isMap(e)&&e.get("in")===t})}function i(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(p.List.isList(e))return e.some(function(e){return p.Map.isMap(e)&&e.get("type")===t})}function s(e,t){var r=b(e).getIn(["paths"].concat(n(t)),(0,p.fromJS)({})),o=r.get("parameters")||new p.List,a=i(o,"file")?"multipart/form-data":u(o,"formData")?"application/x-www-form-urlencoded":r.get("consumes_value");return(0,p.fromJS)({requestContentType:a,responseContentType:r.get("produces_value")})}function l(e,t){return b(e).getIn(["paths"].concat(n(t),["consumes"]),(0,p.fromJS)({}))}function c(e){return p.Map.isMap(e)?e:new p.Map}Object.defineProperty(t,"__esModule",{value:!0}),t.validateBeforeExecute=t.canExecuteScheme=t.operationScheme=t.hasHost=t.allowTryItOutFor=t.requestFor=t.responseFor=t.requests=t.responses=t.taggedOperations=t.operationsWithTags=t.tagDetails=t.tags=t.operationsWithRootInherited=t.schemes=t.host=t.basePath=t.definitions=t.findDefinition=t.securityDefinitions=t.security=t.produces=t.consumes=t.operations=t.paths=t.semver=t.version=t.externalDocs=t.info=t.spec=t.specResolved=t.specJson=t.specSource=t.specStr=t.url=t.lastError=void 0,t.getParameter=o,t.parameterValues=a,t.parametersIncludeIn=u,t.parametersIncludeType=i,t.contentTypeValues=s,t.operationConsumes=l;var f=r(174),p=r(7),d="default",h=["get","put","post","delete","options","head","patch"],y=function(e){return e||(0,p.Map)()},m=(t.lastError=(0,f.createSelector)(y,function(e){return e.get("lastError")}),t.url=(0,f.createSelector)(y,function(e){return e.get("url")}),t.specStr=(0,f.createSelector)(y,function(e){return e.get("spec")||""}),t.specSource=(0,f.createSelector)(y,function(e){return e.get("specSource")||"not-editor"}),t.specJson=(0,f.createSelector)(y,function(e){return e.get("json",(0,p.Map)())})),v=t.specResolved=(0,f.createSelector)(y,function(e){return e.get("resolved",(0,p.Map)())}),b=t.spec=function(e){var t=v(e);return t.count()<1&&(t=m(e)),t},g=t.info=(0,f.createSelector)(b,function(e){return c(e&&e.get("info"))}),_=(t.externalDocs=(0,f.createSelector)(b,function(e){return c(e&&e.get("externalDocs"))}),t.version=(0,f.createSelector)(g,function(e){return e&&e.get("version")})),E=(t.semver=(0,f.createSelector)(_,function(e){return/v?([0-9]*)\.([0-9]*)\.([0-9]*)/i.exec(e).slice(1)}),t.paths=(0,f.createSelector)(b,function(e){return e.get("paths")})),w=t.operations=(0,f.createSelector)(E,function(e){if(!e||e.size<1)return(0,p.List)();var t=(0,p.List)();return e&&e.forEach?(e.forEach(function(e,r){return e&&e.forEach?void e.forEach(function(e,n){h.indexOf(n)!==-1&&(t=t.push((0,p.fromJS)({path:r,method:n,operation:e,id:n+"-"+r})))}):{}}),t):(0,p.List)()}),j=t.consumes=(0,f.createSelector)(b,function(e){return(0,p.Set)(e.get("consumes"))}),P=t.produces=(0,f.createSelector)(b,function(e){return(0,p.Set)(e.get("produces"))}),O=(t.security=(0,f.createSelector)(b,function(e){return e.get("security",(0,p.List)())}),t.securityDefinitions=(0,f.createSelector)(b,function(e){return e.get("securityDefinitions")}),t.findDefinition=function(e,t){return v(e).getIn(["definitions",t],null)},t.definitions=(0,f.createSelector)(b,function(e){return e.get("definitions")||(0,p.Map)()}),t.basePath=(0,f.createSelector)(b,function(e){return e.get("basePath")}),t.host=(0,f.createSelector)(b,function(e){return e.get("host")}),t.schemes=(0,f.createSelector)(b,function(e){return e.get("schemes",(0,p.Map)())}),t.operationsWithRootInherited=(0,f.createSelector)(w,j,P,function(e,t,r){return e.map(function(e){return e.update("operation",function(e){if(e){if(!p.Map.isMap(e))return;return e.withMutations(function(e){return e.get("consumes")||e.update("consumes",function(e){return(0,p.Set)(e).merge(t)}),e.get("produces")||e.update("produces",function(e){return(0,p.Set)(e).merge(r)}),e})}return(0,p.Map)()})})})),T=t.tags=(0,f.createSelector)(b,function(e){return e.get("tags",(0,p.List)())}),S=t.tagDetails=function(e,t){var r=T(e)||(0,p.List)();return r.filter(p.Map.isMap).find(function(e){return e.get("name")===t},(0,p.Map)())},x=t.operationsWithTags=(0,f.createSelector)(O,function(e){return e.reduce(function(e,t){var r=(0,p.Set)(t.getIn(["operation","tags"]));return r.count()<1?e.update(d,(0,p.List)(),function(e){return e.push(t)}):r.reduce(function(e,r){return e.update(r,(0,p.List)(),function(e){return e.push(t)})},e)},(0,p.Map)())}),C=(t.taggedOperations=(0,f.createSelector)(y,x,function(e,t){return t.map(function(t,r){return(0,p.Map)({tagDetails:S(e,r),operations:t})})}),t.responses=(0,f.createSelector)(y,function(e){return e.get("responses",(0,p.Map)())})),A=t.requests=(0,f.createSelector)(y,function(e){return e.get("requests",(0,p.Map)())}),k=(t.responseFor=function(e,t,r){return C(e).getIn([t,r],null)},t.requestFor=function(e,t,r){return A(e).getIn([t,r],null)},t.allowTryItOutFor=function(){return!0},t.hasHost=(0,f.createSelector)(b,function(e){var t=e.get("host");return"string"==typeof t&&t.length>0&&"/"!==t[0]}),t.operationScheme=function(e,t,r){return e.getIn(["scheme",t,r])||e.getIn(["scheme","_defaultScheme"])||"http"});t.canExecuteScheme=function(e,t,r){return["http","https"].indexOf(k(e,t,r))>-1},t.validateBeforeExecute=function(e,t){var r=b(e).getIn(["paths"].concat(n(t),["parameters"]),(0,p.fromJS)([])),o=!0;return r.forEach(function(e){var t=e.get("errors");t&&t.count()&&(o=!1)}),o}},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.updateSpec=function(e,t){var r=t.specActions;return function(){e.apply(void 0,arguments),r.parseToJson.apply(r,arguments)}},t.updateJsonSpec=function(e,t){var r=t.specActions;return function(){e.apply(void 0,arguments),r.resolveSpec.apply(r,arguments)}},t.executeRequest=function(e,t){var r=t.specActions;return function(t){return r.logRequest(t),e(t)}}},function(e,t,r){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t=e.getComponents,r=e.getStore,n=e.getSystem,o=a.getComponent,i=a.render,s=a.makeMappedContainer,l=(0,u.memoize)(o.bind(null,n,r,t)),c=(0,u.memoize)(s.bind(null,n,r,l,t));return{rootInjects:{getComponent:l,makeMappedContainer:c,render:i.bind(null,n,r,o,t)}}};var o=r(186),a=n(o),u=r(13)},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function u(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.getComponent=t.render=t.makeMappedContainer=void 0;var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s=Object.assign||function(e){for(var t=1;t1),t}),i(e,l(e),r),s&&(r=o(r,c|f|p));for(var d=t.length;d--;)a(r,t[d]);return r});e.exports=d},function(e,t,r){function n(e,t,r,S,x,C){var A,q=t&j,M=t&P,I=t&O;if(r&&(A=x?r(e,S,x,C):r(e)),void 0!==A)return A;if(!E(e))return e;var U=g(e);if(U){if(A=m(e),!q)return c(e,A)}else{var z=y(e),L=z==k||z==R;if(_(e))return l(e,q);if(z==N||z==T||L&&!x){if(A=M||L?{}:b(e),!q)return M?p(e,s(A,e)):f(e,i(A,e))}else{if(!G[z])return x?e:{};A=v(e,z,n,q)}}C||(C=new o);var D=C.get(e);if(D)return D;C.set(e,A);var B=I?M?h:d:M?keysIn:w,J=U?void 0:B(e);return a(J||e,function(o,a){J&&(a=o,o=e[a]),u(A,a,n(o,t,r,a,e,C))}),A}var o=r(88),a=r(192),u=r(193),i=r(196),s=r(198),l=r(202),c=r(203),f=r(204),p=r(207),d=r(211),h=r(213),y=r(125),m=r(214),v=r(215),b=r(225),g=r(27),_=r(111),E=r(59),w=r(106),j=1,P=2,O=4,T="[object Arguments]",S="[object Array]",x="[object Boolean]",C="[object Date]",A="[object Error]",k="[object Function]",R="[object GeneratorFunction]",q="[object Map]",M="[object Number]",N="[object Object]",I="[object RegExp]",U="[object Set]",z="[object String]",L="[object Symbol]",D="[object WeakMap]",B="[object ArrayBuffer]",J="[object DataView]",F="[object Float32Array]",V="[object Float64Array]",W="[object Int8Array]",H="[object Int16Array]",Y="[object Int32Array]",$="[object Uint8Array]",K="[object Uint8ClampedArray]",X="[object Uint16Array]",Z="[object Uint32Array]",G={};G[T]=G[S]=G[B]=G[J]=G[x]=G[C]=G[F]=G[V]=G[W]=G[H]=G[Y]=G[q]=G[M]=G[N]=G[I]=G[U]=G[z]=G[L]=G[$]=G[K]=G[X]=G[Z]=!0,G[A]=G[k]=G[D]=!1,e.exports=n},function(e,t){function r(e,t){for(var r=-1,n=null==e?0:e.length;++r0&&r(c)?t>1?n(c,t-1,r,u,i):o(i,c):u||(i[i.length]=c)}return i}var o=r(209),a=r(233);e.exports=n},function(e,t,r){function n(e){return u(e)||a(e)||!!(i&&e&&e[i])}var o=r(23),a=r(109),u=r(27),i=o?o.isConcatSpreadable:void 0;e.exports=n},function(e,t,r){function n(e,t,r){return t=a(void 0===t?e.length-1:t,0),function(){for(var n=arguments,u=-1,i=a(n.length-t,0),s=Array(i);++u0){if(++t>=n)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}var n=800,o=16,a=Date.now;e.exports=r},function(e,t,r){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return{fn:a}};var o=r(155),a=n(o)},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){function t(e){for(var t,r=arguments.length,n=Array(r>1?r-1:0),a=1;a=u&&(t=console)[e].apply(t,n)}var r=e.configs,n={debug:0,info:1,log:2,warn:3,error:4},o=function(e){return n[e]||-1},a=r.logLevel,u=o(a);return t.warn=t.bind(null,"warn"),t.error=t.bind(null,"error"),t.info=t.bind(null,"info"),t.debug=t.bind(null,"debug"),{rootInjects:{log:t}}}},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return{fn:{AST:u},components:{JumpToPath:s.default}}};var a=r(243),u=o(a),i=r(252),s=n(i)},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e,t){function r(e,t,o){if(!e)return o&&o.start_mark?o.start_mark.line:0;if(t.length&&e.tag===v)for(n=0;n=t.column:t.line===e.start_mark.line?t.column>=e.start_mark.column:t.line===e.end_mark.line?t.column<=e.end_mark.column:e.start_mark.linet.line}var a=0;if(!e||[v,b].indexOf(e.tag)===-1)return o;if(e.tag===v)for(a=0;a-1?i[s?t[l]:l]:void 0}}var o=r(85),a=r(124),u=r(106);e.exports=n},function(e,t,r){function n(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var s=null==r?0:u(r);return s<0&&(s=i(n+s,0)),o(e,a(t,3),s)}var o=r(248),a=r(85),u=r(249),i=Math.max;e.exports=n},function(e,t){function r(e,t,r,n){for(var o=e.length,a=r+(n?1:-1);n?a--:++a=400?(u.updateLoadingStatus("failed"),o.newThrownErr(new Error(t.statusText+" "+e))):(u.updateLoadingStatus("success"),u.updateSpec(t.text),void u.updateUrl(e))}var o=r.errActions,a=r.specSelectors,u=r.specActions,i=t.fetch;e=e||a.url(),u.updateLoadingStatus("loading"),i({url:e,loadSpec:!0,credentials:"same-origin",headers:{Accept:"application/json,*/*"}}).then(n,n)}},updateLoadingStatus:function(e){var t=[null,"loading","failed","success","failedConfig"];return t.indexOf(e)===-1&&console.error("Error: "+e+" is not one of "+JSON.stringify(t)),{type:"spec_update_loading_status",payload:e}}},n={spec_update_loading_status:function(e,t){return"string"==typeof t.payload?e.set("loadingStatus",t.payload):e}},u={loadingStatus:(0,o.createSelector)(function(e){return e||(0,a.Map)()},function(e){return e.get("loadingStatus")||null})};return{statePlugins:{spec:{actions:r,reducers:n,selectors:u}}}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n;var o=r(174),a=r(7)},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function u(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var r=0;r-1&&e.setState({scopes:e.state.scopes.filter(function(e){return e!==o})})},this.onInputChange=function(t){var r=t.target,n=r.dataset.name,a=r.value,u=o({},n,a);e.setState(u)},this.logout=function(t){t.preventDefault();var r=e.props,n=r.authActions,o=r.errActions,a=r.name;o.clear({authId:a,type:"auth",source:"auth"}),n.logout([a])}};t.default=v},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e,t,r,n){var o=e.schema,a=e.scopes,i=e.name,s=e.clientId,l=n.oauth2RedirectUrl,c=" ",f=i,p=o.get("flow"),d=void 0;return"password"===p?void t.authorizePassword(e):"application"===p?void t.authorizeOauth2Application(e):l?("implicit"!==p&&"accessCode"!==p||(d=o.get("authorizationUrl")+"?response_type="+("implicit"===p?"token":"code")),d+="&redirect_uri="+encodeURIComponent(l)+"&scope="+encodeURIComponent(a.join(c))+"&state="+encodeURIComponent(f)+"&client_id="+encodeURIComponent(s),u.default.swaggerUIRedirectOauth2={auth:e,state:f,callback:t.preAuthorizeOauth2,errCb:r.newAuthErr},void u.default.open(d)):void r.newAuthErr({authId:i,source:"validation",level:"error",message:"oauth2RedirectUri configuration is not passed. Oauth2 authorization cannot be performed."})}Object.defineProperty(t,"__esModule",{value:!0}),t.default=o;var a=r(12),u=n(a)},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function u(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var r=0;r=0||this.state.url.indexOf("127.0.0.1")>=0?null:c.default.createElement("span",{style:{float:"right"}},c.default.createElement("a",{target:"_blank",href:this.state.validatorUrl+"/debug?url="+this.state.url},c.default.createElement(p,{src:this.state.validatorUrl+"?url="+this.state.url,alt:"Online validator badge"})))}}]),t}(c.default.Component);f.propTypes={getComponent:l.PropTypes.func.isRequired,getConfigs:l.PropTypes.func.isRequired,specSelectors:l.PropTypes.object.isRequired},t.default=f;var p=function(e){function t(e){o(this,t);var r=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return r.state={loaded:!1,error:!1},r}return u(t,e),s(t,[{key:"componentDidMount",value:function(){var e=this,t=new Image;t.onload=function(){e.setState({loaded:!0})},t.onerror=function(){e.setState({error:!0})},t.src=this.props.src}},{key:"componentWillReceiveProps",value:function(e){var t=this;if(e.src!==this.props.src){var r=new Image;r.onload=function(){t.setState({loaded:!0})},r.onerror=function(){t.setState({error:!0})},r.src=e.src}}},{key:"render",value:function(){return this.state.error?c.default.createElement("img",{alt:"Error"}):this.state.loaded?c.default.createElement("img",{src:this.props.src,alt:this.props.alt}):c.default.createElement("img",{alt:"Loading..."})}}]),t}(c.default.Component);p.propTypes={src:l.PropTypes.string,alt:l.PropTypes.string}},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function u(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var i=Object.assign||function(e){for(var t=1;t0){var I=!w.get(String(i.get("status")));i=i.set("notDocumented",I)}var U=this.state.tryItOutEnabled,z=this.isShown(),L=[n,o];return c.default.createElement("div",{className:_?"opblock opblock-deprecated":z?"opblock opblock-"+o+" is-open":"opblock opblock-"+o,id:t},c.default.createElement("div",{className:"opblock-summary opblock-summary-"+o,onClick:this.toggleShown},c.default.createElement("span",{className:"opblock-summary-method"},o.toUpperCase()),c.default.createElement("span",{className:_?"opblock-summary-path__deprecated":"opblock-summary-path"},c.default.createElement("span",null,n),c.default.createElement(R,{path:r})),u?c.default.createElement("div",{className:"opblock-summary-description"},b):null,j&&j.count()?c.default.createElement(k,{authActions:m,security:j,authSelectors:v}):null),c.default.createElement(q,{isOpened:z,animated:!0},c.default.createElement("div",{className:"opblock-body"},_&&c.default.createElement("h4",{className:"opblock-title_normal"}," Warning: Deprecated"),g&&c.default.createElement("div",{className:"opblock-description-wrapper"},c.default.createElement("div",{className:"opblock-description"},c.default.createElement(M,{options:{html:!0,typographer:!0,linkify:!0,linkTarget:"_blank"},source:g}))),E&&E.get("url")?c.default.createElement("div",{className:"opblock-external-docs-wrapper"},c.default.createElement("h4",{className:"opblock-title_normal"},"Find more details"),c.default.createElement("div",{className:"opblock-external-docs"},c.default.createElement("span",{className:"opblock-external-docs__description"},E.get("description")),c.default.createElement("a",{className:"opblock-external-docs__link",href:E.get("url")},E.get("url")))):null,c.default.createElement(x,{parameters:T,onChangeKey:L,onTryoutClick:this.onTryoutClick,onCancelClick:this.onCancelClick,tryItOutEnabled:U,allowTryItOut:l,fn:f,getComponent:p,specActions:h,specSelectors:y,pathMethod:[n,o]}),U&&l&&O&&O.size?c.default.createElement("div",{className:"opblock-schemes"},c.default.createElement(N,{schemes:O,path:n,method:o,specActions:h})):null,c.default.createElement("div",{className:U&&i&&l?"btn-group":"execute-wrapper"},U&&l?c.default.createElement(C,{getComponent:p,operation:a,specActions:h,specSelectors:y,path:n,method:o,onExecute:this.onExecute}):null,U&&i&&l?c.default.createElement(A,{onClick:this.onClearClick,specActions:h,path:n,method:o}):null),this.state.executeInProgress?c.default.createElement("div",{className:"loading-container"},c.default.createElement("div",{className:"loading"})):null,w?c.default.createElement(S,{responses:w,request:s,tryItOutResponse:i,getComponent:p,specSelectors:y,specActions:h,produces:P,producesValue:a.get("produces_value"),pathMethod:[n,o],fn:f}):null)))}}]),t}(c.default.Component);m.propTypes={path:l.PropTypes.string.isRequired,method:l.PropTypes.string.isRequired,operation:l.PropTypes.object.isRequired,showSummary:l.PropTypes.bool,isShownKey:y.arrayOrString.isRequired,jumpToKey:y.arrayOrString.isRequired,allowTryItOut:l.PropTypes.bool,response:l.PropTypes.object,request:l.PropTypes.object,getComponent:l.PropTypes.func.isRequired,authActions:l.PropTypes.object,authSelectors:l.PropTypes.object,specActions:l.PropTypes.object.isRequired,specSelectors:l.PropTypes.object.isRequired,layoutActions:l.PropTypes.object.isRequired,layoutSelectors:l.PropTypes.object.isRequired,fn:l.PropTypes.object.isRequired},m.defaultProps={showSummary:!0,response:null,allowTryItOut:!0},t.default=m},function(e,t){e.exports=require("react-addons-shallow-compare")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.objectWithFuncs=t.arrayOrString=void 0;var n=r(187),o=function(e,t){return n.PropTypes.shape(e.reduce(function(e,r){return e[r]=t,e},{}))};t.arrayOrString=n.PropTypes.oneOfType([n.PropTypes.arrayOf(n.PropTypes.string),n.PropTypes.string]),t.objectWithFuncs=function(e){return o(e,n.PropTypes.func.isRequired)}},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function u(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var r=0;r1&&(g=E[1])}f=l.default.createElement("div",null,l.default.createElement("a",{href:v,download:g},"Download file"))}else f=l.default.createElement("pre",null,"Download headers detected but your browser does not support downloading binary via XHR (Blob).")}else f="string"==typeof t?l.default.createElement(i,{value:t}):l.default.createElement("div",null,"Unknown response type");return f?l.default.createElement("div",null,l.default.createElement("h5",null,"Response body"),f):null}}]),t}(l.default.Component);d.propTypes={content:s.PropTypes.any.isRequired,contentType:s.PropTypes.string.isRequired,getComponent:s.PropTypes.func.isRequired,headers:s.PropTypes.object,url:s.PropTypes.string},t.default=d},function(e,t,r){var n=r(41),o=n(function(e,t,r){return e+(r?" ":"")+t.toLowerCase()});e.exports=o},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function u(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var r=0;r=0||Object.prototype.hasOwnProperty.call(e,n)&&(r[n]=e[n]);return r}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function s(){for(var e=arguments.length,t=Array(e),r=0;r=0||Object.prototype.hasOwnProperty.call(e,n)&&(r[n]=e[n]);return r}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;tc,collapsedContent:w},p.default.createElement("span",{className:"brace-open object"},m),n?p.default.createElement(E,{name:r}):null,p.default.createElement("span",{className:"inner-object"},p.default.createElement("table",{className:"model",style:{marginLeft:"2em"}},p.default.createElement("tbody",null,d?p.default.createElement("tr",{style:{color:"#999",fontStyle:"italic"}},p.default.createElement("td",null,"description:"),p.default.createElement("td",null,d)):null,h&&h.size?h.entrySeq().map(function(e){var t=l(e,2),n=t[0],o=t[1],c=y.List.isList(_)&&_.contains(n),f={verticalAlign:"top",paddingRight:"0.2em"};return c&&(f.fontWeight="bold"),p.default.createElement("tr",{key:n},p.default.createElement("td",{style:f},n,":"),p.default.createElement("td",{style:{verticalAlign:"top"}},p.default.createElement(j,s({key:"object-"+r+"-"+n+"_"+o},i,{required:c,getComponent:a,schema:o,depth:u+1}))))}).toArray():null,b&&b.size?p.default.createElement("tr",null,p.default.createElement("td",null,"< * >:"),p.default.createElement("td",null,p.default.createElement(j,s({},i,{required:!1,getComponent:a,schema:b,depth:u+1})))):null))),p.default.createElement("span",{className:"brace-close"},v)))}}]),t}(f.Component);_.propTypes={schema:f.PropTypes.object.isRequired,getComponent:f.PropTypes.func.isRequired,specSelectors:f.PropTypes.object.isRequired,name:f.PropTypes.string,isRef:f.PropTypes.bool,expandDepth:f.PropTypes.number,depth:f.PropTypes.number};var E=function(e){function t(){return a(this,t),u(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}return i(t,e),c(t,[{key:"render",value:function(){var e=this.props,t=e.schema,r=e.required;if(!t||!t.get)return p.default.createElement("div",null);var n=t.get("type"),o=t.get("format"),a=t.get("xml"),u=t.get("enum"),i=t.filter(function(e,t){return["enum","type","format","$$ref"].indexOf(t)===-1}),s=r?{fontWeight:"bold"}:{};return p.default.createElement("span",{className:"prop"},p.default.createElement("span",{className:"prop-type",style:s},n)," ",r&&p.default.createElement("span",{style:{color:"red"}},"*"),o&&p.default.createElement("span",{className:"prop-format"},"($",o,")"),i.size?i.entrySeq().map(function(e){var t=l(e,2),r=t[0],n=t[1];return p.default.createElement("span",{key:r+"-"+n,style:b},p.default.createElement("br",null),"description"!==r&&r+": ",String(n))}):null,a&&a.size?p.default.createElement("span",null,p.default.createElement("br",null),p.default.createElement("span",{style:b},"xml:"),a.entrySeq().map(function(e){var t=l(e,2),r=t[0],n=t[1];return p.default.createElement("span",{key:r+"-"+n,style:b},p.default.createElement("br",null),"Ā Ā Ā ",r,": ",String(n))}).toArray()):null,u&&p.default.createElement(g,{value:u}))}}]),t}(f.Component);E.propTypes={schema:f.PropTypes.object.isRequired,required:f.PropTypes.bool};var w=function(e){function t(){return a(this,t),u(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}return i(t,e),c(t,[{key:"render",value:function(){var e=this.props,t=e.required,r=e.schema,n=e.depth,o=e.expandDepth,a=r.get("items"),u=r.filter(function(e,t){return["type","items","$$ref"].indexOf(t)===-1});return p.default.createElement("span",{className:"model"},p.default.createElement("span",{className:"model-title"},p.default.createElement("span",{className:"model-title__text"},r.get("title"))),p.default.createElement(O,{collapsed:n>o,collapsedContent:"[...]"},"[",p.default.createElement("span",null,p.default.createElement(j,s({},this.props,{schema:a,required:!1}))),"]",u.size?p.default.createElement("span",null,u.entrySeq().map(function(e){var t=l(e,2),r=t[0],n=t[1];return p.default.createElement("span",{key:r+"-"+n,style:b},p.default.createElement("br",null),r+":",String(n))}),p.default.createElement("br",null)):null),t&&p.default.createElement("span",{style:{color:"red"}},"*"))}}]),t}(f.Component);w.propTypes={schema:f.PropTypes.object.isRequired,getComponent:f.PropTypes.func.isRequired,specSelectors:f.PropTypes.object.isRequired,name:f.PropTypes.string,required:f.PropTypes.bool,expandDepth:f.PropTypes.number,depth:f.PropTypes.number};var j=function(e){function t(){var e,r,n,o;a(this,t);for(var i=arguments.length,s=Array(i),l=0;l=400?(o.updateLoadingStatus("failedConfig"),o.updateLoadingStatus("failedConfig"),o.updateUrl(""),console.error(r.statusText+" "+e),t(null)):t(f(r.text))}var o=r.specActions;if(e)return o.downloadConfig(e).then(n,n)}}},n={getLocalConfig:function(){return f(l.default)}};return{statePlugins:{spec:{actions:r,selectors:n}}}}function a(e){var t=void 0,r={};for(t in e)c.indexOf(t)!==-1&&(r[t]=e[t]);return r}Object.defineProperty(t,"__esModule",{value:!0}),t.default=o,t.filterConfigs=a;var u=r(182),i=n(u),s=r(316),l=n(s),c=["url","spec","validatorUrl","onComplete","onFailure","authorizations","docExpansion","apisSorter","operationsSorter","supportedSubmitMethods","highlightSizeThreshold","dom_id","defaultModelRendering","oauth2RedirectUrl","showRequestHeaders"],f=function(e,t){try{return i.default.safeLoad(e)}catch(e){return t&&t.errActions.newThrownErr(new Error(e)),{}}}},function(e,t){e.exports='---\nurl: "http://petstore.swagger.io/v2/swagger.json"\ndom_id: "#swagger-ui"\nvalidatorUrl: "https://online.swagger.io/validator"\noauth2RedirectUrl: "http://localhost:3200/oauth2-redirect.html"\n'}]))}); + /* eslint-disable no-proto */ + + 'use strict' + + var base64 = __webpack_require__(15) + var ieee754 = __webpack_require__(16) + var isArray = __webpack_require__(17) + + exports.Buffer = Buffer + exports.SlowBuffer = SlowBuffer + exports.INSPECT_MAX_BYTES = 50 + + /** + * If `Buffer.TYPED_ARRAY_SUPPORT`: + * === true Use Uint8Array implementation (fastest) + * === false Use Object implementation (most compatible, even IE6) + * + * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+, + * Opera 11.6+, iOS 4.2+. + * + * Due to various browser bugs, sometimes the Object implementation will be used even + * when the browser supports typed arrays. + * + * Note: + * + * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances, + * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438. + * + * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function. + * + * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of + * incorrect length in some situations. + + * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they + * get the Object implementation, which is slower but behaves correctly. + */ + Buffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined + ? global.TYPED_ARRAY_SUPPORT + : typedArraySupport() + + /* + * Export kMaxLength after typed array support is determined. + */ + exports.kMaxLength = kMaxLength() + + function typedArraySupport () { + try { + var arr = new Uint8Array(1) + arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }} + return arr.foo() === 42 && // typed array instances can be augmented + typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray` + arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray` + } catch (e) { + return false + } + } + + function kMaxLength () { + return Buffer.TYPED_ARRAY_SUPPORT + ? 0x7fffffff + : 0x3fffffff + } + + function createBuffer (that, length) { + if (kMaxLength() < length) { + throw new RangeError('Invalid typed array length') + } + if (Buffer.TYPED_ARRAY_SUPPORT) { + // Return an augmented `Uint8Array` instance, for best performance + that = new Uint8Array(length) + that.__proto__ = Buffer.prototype + } else { + // Fallback: Return an object instance of the Buffer class + if (that === null) { + that = new Buffer(length) + } + that.length = length + } + + return that + } + + /** + * The Buffer constructor returns instances of `Uint8Array` that have their + * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of + * `Uint8Array`, so the returned instances will have all the node `Buffer` methods + * and the `Uint8Array` methods. Square bracket notation works as expected -- it + * returns a single octet. + * + * The `Uint8Array` prototype remains unmodified. + */ + + function Buffer (arg, encodingOrOffset, length) { + if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) { + return new Buffer(arg, encodingOrOffset, length) + } + + // Common case. + if (typeof arg === 'number') { + if (typeof encodingOrOffset === 'string') { + throw new Error( + 'If encoding is specified then the first argument must be a string' + ) + } + return allocUnsafe(this, arg) + } + return from(this, arg, encodingOrOffset, length) + } + + Buffer.poolSize = 8192 // not used by this implementation + + // TODO: Legacy, not needed anymore. Remove in next major version. + Buffer._augment = function (arr) { + arr.__proto__ = Buffer.prototype + return arr + } + + function from (that, value, encodingOrOffset, length) { + if (typeof value === 'number') { + throw new TypeError('"value" argument must not be a number') + } + + if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) { + return fromArrayBuffer(that, value, encodingOrOffset, length) + } + + if (typeof value === 'string') { + return fromString(that, value, encodingOrOffset) + } + + return fromObject(that, value) + } + + /** + * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError + * if value is a number. + * Buffer.from(str[, encoding]) + * Buffer.from(array) + * Buffer.from(buffer) + * Buffer.from(arrayBuffer[, byteOffset[, length]]) + **/ + Buffer.from = function (value, encodingOrOffset, length) { + return from(null, value, encodingOrOffset, length) + } + + if (Buffer.TYPED_ARRAY_SUPPORT) { + Buffer.prototype.__proto__ = Uint8Array.prototype + Buffer.__proto__ = Uint8Array + if (typeof Symbol !== 'undefined' && Symbol.species && + Buffer[Symbol.species] === Buffer) { + // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97 + Object.defineProperty(Buffer, Symbol.species, { + value: null, + configurable: true + }) + } + } + + function assertSize (size) { + if (typeof size !== 'number') { + throw new TypeError('"size" argument must be a number') + } else if (size < 0) { + throw new RangeError('"size" argument must not be negative') + } + } + + function alloc (that, size, fill, encoding) { + assertSize(size) + if (size <= 0) { + return createBuffer(that, size) + } + if (fill !== undefined) { + // Only pay attention to encoding if it's a string. This + // prevents accidentally sending in a number that would + // be interpretted as a start offset. + return typeof encoding === 'string' + ? createBuffer(that, size).fill(fill, encoding) + : createBuffer(that, size).fill(fill) + } + return createBuffer(that, size) + } + + /** + * Creates a new filled Buffer instance. + * alloc(size[, fill[, encoding]]) + **/ + Buffer.alloc = function (size, fill, encoding) { + return alloc(null, size, fill, encoding) + } + + function allocUnsafe (that, size) { + assertSize(size) + that = createBuffer(that, size < 0 ? 0 : checked(size) | 0) + if (!Buffer.TYPED_ARRAY_SUPPORT) { + for (var i = 0; i < size; ++i) { + that[i] = 0 + } + } + return that + } + + /** + * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance. + * */ + Buffer.allocUnsafe = function (size) { + return allocUnsafe(null, size) + } + /** + * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance. + */ + Buffer.allocUnsafeSlow = function (size) { + return allocUnsafe(null, size) + } + + function fromString (that, string, encoding) { + if (typeof encoding !== 'string' || encoding === '') { + encoding = 'utf8' + } + + if (!Buffer.isEncoding(encoding)) { + throw new TypeError('"encoding" must be a valid string encoding') + } + + var length = byteLength(string, encoding) | 0 + that = createBuffer(that, length) + + var actual = that.write(string, encoding) + + if (actual !== length) { + // Writing a hex string, for example, that contains invalid characters will + // cause everything after the first invalid character to be ignored. (e.g. + // 'abxxcd' will be treated as 'ab') + that = that.slice(0, actual) + } + + return that + } + + function fromArrayLike (that, array) { + var length = array.length < 0 ? 0 : checked(array.length) | 0 + that = createBuffer(that, length) + for (var i = 0; i < length; i += 1) { + that[i] = array[i] & 255 + } + return that + } + + function fromArrayBuffer (that, array, byteOffset, length) { + array.byteLength // this throws if `array` is not a valid ArrayBuffer + + if (byteOffset < 0 || array.byteLength < byteOffset) { + throw new RangeError('\'offset\' is out of bounds') + } + + if (array.byteLength < byteOffset + (length || 0)) { + throw new RangeError('\'length\' is out of bounds') + } + + if (byteOffset === undefined && length === undefined) { + array = new Uint8Array(array) + } else if (length === undefined) { + array = new Uint8Array(array, byteOffset) + } else { + array = new Uint8Array(array, byteOffset, length) + } + + if (Buffer.TYPED_ARRAY_SUPPORT) { + // Return an augmented `Uint8Array` instance, for best performance + that = array + that.__proto__ = Buffer.prototype + } else { + // Fallback: Return an object instance of the Buffer class + that = fromArrayLike(that, array) + } + return that + } + + function fromObject (that, obj) { + if (Buffer.isBuffer(obj)) { + var len = checked(obj.length) | 0 + that = createBuffer(that, len) + + if (that.length === 0) { + return that + } + + obj.copy(that, 0, 0, len) + return that + } + + if (obj) { + if ((typeof ArrayBuffer !== 'undefined' && + obj.buffer instanceof ArrayBuffer) || 'length' in obj) { + if (typeof obj.length !== 'number' || isnan(obj.length)) { + return createBuffer(that, 0) + } + return fromArrayLike(that, obj) + } + + if (obj.type === 'Buffer' && isArray(obj.data)) { + return fromArrayLike(that, obj.data) + } + } + + throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.') + } + + function checked (length) { + // Note: cannot use `length < kMaxLength()` here because that fails when + // length is NaN (which is otherwise coerced to zero.) + if (length >= kMaxLength()) { + throw new RangeError('Attempt to allocate Buffer larger than maximum ' + + 'size: 0x' + kMaxLength().toString(16) + ' bytes') + } + return length | 0 + } + + function SlowBuffer (length) { + if (+length != length) { // eslint-disable-line eqeqeq + length = 0 + } + return Buffer.alloc(+length) + } + + Buffer.isBuffer = function isBuffer (b) { + return !!(b != null && b._isBuffer) + } + + Buffer.compare = function compare (a, b) { + if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) { + throw new TypeError('Arguments must be Buffers') + } + + if (a === b) return 0 + + var x = a.length + var y = b.length + + for (var i = 0, len = Math.min(x, y); i < len; ++i) { + if (a[i] !== b[i]) { + x = a[i] + y = b[i] + break + } + } + + if (x < y) return -1 + if (y < x) return 1 + return 0 + } + + Buffer.isEncoding = function isEncoding (encoding) { + switch (String(encoding).toLowerCase()) { + case 'hex': + case 'utf8': + case 'utf-8': + case 'ascii': + case 'latin1': + case 'binary': + case 'base64': + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return true + default: + return false + } + } + + Buffer.concat = function concat (list, length) { + if (!isArray(list)) { + throw new TypeError('"list" argument must be an Array of Buffers') + } + + if (list.length === 0) { + return Buffer.alloc(0) + } + + var i + if (length === undefined) { + length = 0 + for (i = 0; i < list.length; ++i) { + length += list[i].length + } + } + + var buffer = Buffer.allocUnsafe(length) + var pos = 0 + for (i = 0; i < list.length; ++i) { + var buf = list[i] + if (!Buffer.isBuffer(buf)) { + throw new TypeError('"list" argument must be an Array of Buffers') + } + buf.copy(buffer, pos) + pos += buf.length + } + return buffer + } + + function byteLength (string, encoding) { + if (Buffer.isBuffer(string)) { + return string.length + } + if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' && + (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) { + return string.byteLength + } + if (typeof string !== 'string') { + string = '' + string + } + + var len = string.length + if (len === 0) return 0 + + // Use a for loop to avoid recursion + var loweredCase = false + for (;;) { + switch (encoding) { + case 'ascii': + case 'latin1': + case 'binary': + return len + case 'utf8': + case 'utf-8': + case undefined: + return utf8ToBytes(string).length + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return len * 2 + case 'hex': + return len >>> 1 + case 'base64': + return base64ToBytes(string).length + default: + if (loweredCase) return utf8ToBytes(string).length // assume utf8 + encoding = ('' + encoding).toLowerCase() + loweredCase = true + } + } + } + Buffer.byteLength = byteLength + + function slowToString (encoding, start, end) { + var loweredCase = false + + // No need to verify that "this.length <= MAX_UINT32" since it's a read-only + // property of a typed array. + + // This behaves neither like String nor Uint8Array in that we set start/end + // to their upper/lower bounds if the value passed is out of range. + // undefined is handled specially as per ECMA-262 6th Edition, + // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization. + if (start === undefined || start < 0) { + start = 0 + } + // Return early if start > this.length. Done here to prevent potential uint32 + // coercion fail below. + if (start > this.length) { + return '' + } + + if (end === undefined || end > this.length) { + end = this.length + } + + if (end <= 0) { + return '' + } + + // Force coersion to uint32. This will also coerce falsey/NaN values to 0. + end >>>= 0 + start >>>= 0 + + if (end <= start) { + return '' + } + + if (!encoding) encoding = 'utf8' + + while (true) { + switch (encoding) { + case 'hex': + return hexSlice(this, start, end) + + case 'utf8': + case 'utf-8': + return utf8Slice(this, start, end) + + case 'ascii': + return asciiSlice(this, start, end) + + case 'latin1': + case 'binary': + return latin1Slice(this, start, end) + + case 'base64': + return base64Slice(this, start, end) + + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return utf16leSlice(this, start, end) + + default: + if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) + encoding = (encoding + '').toLowerCase() + loweredCase = true + } + } + } + + // The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect + // Buffer instances. + Buffer.prototype._isBuffer = true + + function swap (b, n, m) { + var i = b[n] + b[n] = b[m] + b[m] = i + } + + Buffer.prototype.swap16 = function swap16 () { + var len = this.length + if (len % 2 !== 0) { + throw new RangeError('Buffer size must be a multiple of 16-bits') + } + for (var i = 0; i < len; i += 2) { + swap(this, i, i + 1) + } + return this + } + + Buffer.prototype.swap32 = function swap32 () { + var len = this.length + if (len % 4 !== 0) { + throw new RangeError('Buffer size must be a multiple of 32-bits') + } + for (var i = 0; i < len; i += 4) { + swap(this, i, i + 3) + swap(this, i + 1, i + 2) + } + return this + } + + Buffer.prototype.swap64 = function swap64 () { + var len = this.length + if (len % 8 !== 0) { + throw new RangeError('Buffer size must be a multiple of 64-bits') + } + for (var i = 0; i < len; i += 8) { + swap(this, i, i + 7) + swap(this, i + 1, i + 6) + swap(this, i + 2, i + 5) + swap(this, i + 3, i + 4) + } + return this + } + + Buffer.prototype.toString = function toString () { + var length = this.length | 0 + if (length === 0) return '' + if (arguments.length === 0) return utf8Slice(this, 0, length) + return slowToString.apply(this, arguments) + } + + Buffer.prototype.equals = function equals (b) { + if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer') + if (this === b) return true + return Buffer.compare(this, b) === 0 + } + + Buffer.prototype.inspect = function inspect () { + var str = '' + var max = exports.INSPECT_MAX_BYTES + if (this.length > 0) { + str = this.toString('hex', 0, max).match(/.{2}/g).join(' ') + if (this.length > max) str += ' ... ' + } + return '' + } + + Buffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) { + if (!Buffer.isBuffer(target)) { + throw new TypeError('Argument must be a Buffer') + } + + if (start === undefined) { + start = 0 + } + if (end === undefined) { + end = target ? target.length : 0 + } + if (thisStart === undefined) { + thisStart = 0 + } + if (thisEnd === undefined) { + thisEnd = this.length + } + + if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) { + throw new RangeError('out of range index') + } + + if (thisStart >= thisEnd && start >= end) { + return 0 + } + if (thisStart >= thisEnd) { + return -1 + } + if (start >= end) { + return 1 + } + + start >>>= 0 + end >>>= 0 + thisStart >>>= 0 + thisEnd >>>= 0 + + if (this === target) return 0 + + var x = thisEnd - thisStart + var y = end - start + var len = Math.min(x, y) + + var thisCopy = this.slice(thisStart, thisEnd) + var targetCopy = target.slice(start, end) + + for (var i = 0; i < len; ++i) { + if (thisCopy[i] !== targetCopy[i]) { + x = thisCopy[i] + y = targetCopy[i] + break + } + } + + if (x < y) return -1 + if (y < x) return 1 + return 0 + } + + // Finds either the first index of `val` in `buffer` at offset >= `byteOffset`, + // OR the last index of `val` in `buffer` at offset <= `byteOffset`. + // + // Arguments: + // - buffer - a Buffer to search + // - val - a string, Buffer, or number + // - byteOffset - an index into `buffer`; will be clamped to an int32 + // - encoding - an optional encoding, relevant is val is a string + // - dir - true for indexOf, false for lastIndexOf + function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) { + // Empty buffer means no match + if (buffer.length === 0) return -1 + + // Normalize byteOffset + if (typeof byteOffset === 'string') { + encoding = byteOffset + byteOffset = 0 + } else if (byteOffset > 0x7fffffff) { + byteOffset = 0x7fffffff + } else if (byteOffset < -0x80000000) { + byteOffset = -0x80000000 + } + byteOffset = +byteOffset // Coerce to Number. + if (isNaN(byteOffset)) { + // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer + byteOffset = dir ? 0 : (buffer.length - 1) + } + + // Normalize byteOffset: negative offsets start from the end of the buffer + if (byteOffset < 0) byteOffset = buffer.length + byteOffset + if (byteOffset >= buffer.length) { + if (dir) return -1 + else byteOffset = buffer.length - 1 + } else if (byteOffset < 0) { + if (dir) byteOffset = 0 + else return -1 + } + + // Normalize val + if (typeof val === 'string') { + val = Buffer.from(val, encoding) + } + + // Finally, search either indexOf (if dir is true) or lastIndexOf + if (Buffer.isBuffer(val)) { + // Special case: looking for empty string/buffer always fails + if (val.length === 0) { + return -1 + } + return arrayIndexOf(buffer, val, byteOffset, encoding, dir) + } else if (typeof val === 'number') { + val = val & 0xFF // Search for a byte value [0-255] + if (Buffer.TYPED_ARRAY_SUPPORT && + typeof Uint8Array.prototype.indexOf === 'function') { + if (dir) { + return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset) + } else { + return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset) + } + } + return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir) + } + + throw new TypeError('val must be string, number or Buffer') + } + + function arrayIndexOf (arr, val, byteOffset, encoding, dir) { + var indexSize = 1 + var arrLength = arr.length + var valLength = val.length + + if (encoding !== undefined) { + encoding = String(encoding).toLowerCase() + if (encoding === 'ucs2' || encoding === 'ucs-2' || + encoding === 'utf16le' || encoding === 'utf-16le') { + if (arr.length < 2 || val.length < 2) { + return -1 + } + indexSize = 2 + arrLength /= 2 + valLength /= 2 + byteOffset /= 2 + } + } + + function read (buf, i) { + if (indexSize === 1) { + return buf[i] + } else { + return buf.readUInt16BE(i * indexSize) + } + } + + var i + if (dir) { + var foundIndex = -1 + for (i = byteOffset; i < arrLength; i++) { + if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) { + if (foundIndex === -1) foundIndex = i + if (i - foundIndex + 1 === valLength) return foundIndex * indexSize + } else { + if (foundIndex !== -1) i -= i - foundIndex + foundIndex = -1 + } + } + } else { + if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength + for (i = byteOffset; i >= 0; i--) { + var found = true + for (var j = 0; j < valLength; j++) { + if (read(arr, i + j) !== read(val, j)) { + found = false + break + } + } + if (found) return i + } + } + + return -1 + } + + Buffer.prototype.includes = function includes (val, byteOffset, encoding) { + return this.indexOf(val, byteOffset, encoding) !== -1 + } + + Buffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) { + return bidirectionalIndexOf(this, val, byteOffset, encoding, true) + } + + Buffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) { + return bidirectionalIndexOf(this, val, byteOffset, encoding, false) + } + + function hexWrite (buf, string, offset, length) { + offset = Number(offset) || 0 + var remaining = buf.length - offset + if (!length) { + length = remaining + } else { + length = Number(length) + if (length > remaining) { + length = remaining + } + } + + // must be an even number of digits + var strLen = string.length + if (strLen % 2 !== 0) throw new TypeError('Invalid hex string') + + if (length > strLen / 2) { + length = strLen / 2 + } + for (var i = 0; i < length; ++i) { + var parsed = parseInt(string.substr(i * 2, 2), 16) + if (isNaN(parsed)) return i + buf[offset + i] = parsed + } + return i + } + + function utf8Write (buf, string, offset, length) { + return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length) + } + + function asciiWrite (buf, string, offset, length) { + return blitBuffer(asciiToBytes(string), buf, offset, length) + } + + function latin1Write (buf, string, offset, length) { + return asciiWrite(buf, string, offset, length) + } + + function base64Write (buf, string, offset, length) { + return blitBuffer(base64ToBytes(string), buf, offset, length) + } + + function ucs2Write (buf, string, offset, length) { + return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length) + } + + Buffer.prototype.write = function write (string, offset, length, encoding) { + // Buffer#write(string) + if (offset === undefined) { + encoding = 'utf8' + length = this.length + offset = 0 + // Buffer#write(string, encoding) + } else if (length === undefined && typeof offset === 'string') { + encoding = offset + length = this.length + offset = 0 + // Buffer#write(string, offset[, length][, encoding]) + } else if (isFinite(offset)) { + offset = offset | 0 + if (isFinite(length)) { + length = length | 0 + if (encoding === undefined) encoding = 'utf8' + } else { + encoding = length + length = undefined + } + // legacy write(string, encoding, offset, length) - remove in v0.13 + } else { + throw new Error( + 'Buffer.write(string, encoding, offset[, length]) is no longer supported' + ) + } + + var remaining = this.length - offset + if (length === undefined || length > remaining) length = remaining + + if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) { + throw new RangeError('Attempt to write outside buffer bounds') + } + + if (!encoding) encoding = 'utf8' + + var loweredCase = false + for (;;) { + switch (encoding) { + case 'hex': + return hexWrite(this, string, offset, length) + + case 'utf8': + case 'utf-8': + return utf8Write(this, string, offset, length) + + case 'ascii': + return asciiWrite(this, string, offset, length) + + case 'latin1': + case 'binary': + return latin1Write(this, string, offset, length) + + case 'base64': + // Warning: maxLength not taken into account in base64Write + return base64Write(this, string, offset, length) + + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return ucs2Write(this, string, offset, length) + + default: + if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) + encoding = ('' + encoding).toLowerCase() + loweredCase = true + } + } + } + + Buffer.prototype.toJSON = function toJSON () { + return { + type: 'Buffer', + data: Array.prototype.slice.call(this._arr || this, 0) + } + } + + function base64Slice (buf, start, end) { + if (start === 0 && end === buf.length) { + return base64.fromByteArray(buf) + } else { + return base64.fromByteArray(buf.slice(start, end)) + } + } + + function utf8Slice (buf, start, end) { + end = Math.min(buf.length, end) + var res = [] + + var i = start + while (i < end) { + var firstByte = buf[i] + var codePoint = null + var bytesPerSequence = (firstByte > 0xEF) ? 4 + : (firstByte > 0xDF) ? 3 + : (firstByte > 0xBF) ? 2 + : 1 + + if (i + bytesPerSequence <= end) { + var secondByte, thirdByte, fourthByte, tempCodePoint + + switch (bytesPerSequence) { + case 1: + if (firstByte < 0x80) { + codePoint = firstByte + } + break + case 2: + secondByte = buf[i + 1] + if ((secondByte & 0xC0) === 0x80) { + tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F) + if (tempCodePoint > 0x7F) { + codePoint = tempCodePoint + } + } + break + case 3: + secondByte = buf[i + 1] + thirdByte = buf[i + 2] + if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) { + tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F) + if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) { + codePoint = tempCodePoint + } + } + break + case 4: + secondByte = buf[i + 1] + thirdByte = buf[i + 2] + fourthByte = buf[i + 3] + if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) { + tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F) + if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) { + codePoint = tempCodePoint + } + } + } + } + + if (codePoint === null) { + // we did not generate a valid codePoint so insert a + // replacement char (U+FFFD) and advance only 1 byte + codePoint = 0xFFFD + bytesPerSequence = 1 + } else if (codePoint > 0xFFFF) { + // encode to utf16 (surrogate pair dance) + codePoint -= 0x10000 + res.push(codePoint >>> 10 & 0x3FF | 0xD800) + codePoint = 0xDC00 | codePoint & 0x3FF + } + + res.push(codePoint) + i += bytesPerSequence + } + + return decodeCodePointsArray(res) + } + + // Based on http://stackoverflow.com/a/22747272/680742, the browser with + // the lowest limit is Chrome, with 0x10000 args. + // We go 1 magnitude less, for safety + var MAX_ARGUMENTS_LENGTH = 0x1000 + + function decodeCodePointsArray (codePoints) { + var len = codePoints.length + if (len <= MAX_ARGUMENTS_LENGTH) { + return String.fromCharCode.apply(String, codePoints) // avoid extra slice() + } + + // Decode in chunks to avoid "call stack size exceeded". + var res = '' + var i = 0 + while (i < len) { + res += String.fromCharCode.apply( + String, + codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH) + ) + } + return res + } + + function asciiSlice (buf, start, end) { + var ret = '' + end = Math.min(buf.length, end) + + for (var i = start; i < end; ++i) { + ret += String.fromCharCode(buf[i] & 0x7F) + } + return ret + } + + function latin1Slice (buf, start, end) { + var ret = '' + end = Math.min(buf.length, end) + + for (var i = start; i < end; ++i) { + ret += String.fromCharCode(buf[i]) + } + return ret + } + + function hexSlice (buf, start, end) { + var len = buf.length + + if (!start || start < 0) start = 0 + if (!end || end < 0 || end > len) end = len + + var out = '' + for (var i = start; i < end; ++i) { + out += toHex(buf[i]) + } + return out + } + + function utf16leSlice (buf, start, end) { + var bytes = buf.slice(start, end) + var res = '' + for (var i = 0; i < bytes.length; i += 2) { + res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256) + } + return res + } + + Buffer.prototype.slice = function slice (start, end) { + var len = this.length + start = ~~start + end = end === undefined ? len : ~~end + + if (start < 0) { + start += len + if (start < 0) start = 0 + } else if (start > len) { + start = len + } + + if (end < 0) { + end += len + if (end < 0) end = 0 + } else if (end > len) { + end = len + } + + if (end < start) end = start + + var newBuf + if (Buffer.TYPED_ARRAY_SUPPORT) { + newBuf = this.subarray(start, end) + newBuf.__proto__ = Buffer.prototype + } else { + var sliceLen = end - start + newBuf = new Buffer(sliceLen, undefined) + for (var i = 0; i < sliceLen; ++i) { + newBuf[i] = this[i + start] + } + } + + return newBuf + } + + /* + * Need to make sure that buffer isn't trying to write out of bounds. + */ + function checkOffset (offset, ext, length) { + if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint') + if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length') + } + + Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) { + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) checkOffset(offset, byteLength, this.length) + + var val = this[offset] + var mul = 1 + var i = 0 + while (++i < byteLength && (mul *= 0x100)) { + val += this[offset + i] * mul + } + + return val + } + + Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) { + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) { + checkOffset(offset, byteLength, this.length) + } + + var val = this[offset + --byteLength] + var mul = 1 + while (byteLength > 0 && (mul *= 0x100)) { + val += this[offset + --byteLength] * mul + } + + return val + } + + Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) { + if (!noAssert) checkOffset(offset, 1, this.length) + return this[offset] + } + + Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 2, this.length) + return this[offset] | (this[offset + 1] << 8) + } + + Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 2, this.length) + return (this[offset] << 8) | this[offset + 1] + } + + Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + + return ((this[offset]) | + (this[offset + 1] << 8) | + (this[offset + 2] << 16)) + + (this[offset + 3] * 0x1000000) + } + + Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + + return (this[offset] * 0x1000000) + + ((this[offset + 1] << 16) | + (this[offset + 2] << 8) | + this[offset + 3]) + } + + Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) { + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) checkOffset(offset, byteLength, this.length) + + var val = this[offset] + var mul = 1 + var i = 0 + while (++i < byteLength && (mul *= 0x100)) { + val += this[offset + i] * mul + } + mul *= 0x80 + + if (val >= mul) val -= Math.pow(2, 8 * byteLength) + + return val + } + + Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) { + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) checkOffset(offset, byteLength, this.length) + + var i = byteLength + var mul = 1 + var val = this[offset + --i] + while (i > 0 && (mul *= 0x100)) { + val += this[offset + --i] * mul + } + mul *= 0x80 + + if (val >= mul) val -= Math.pow(2, 8 * byteLength) + + return val + } + + Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) { + if (!noAssert) checkOffset(offset, 1, this.length) + if (!(this[offset] & 0x80)) return (this[offset]) + return ((0xff - this[offset] + 1) * -1) + } + + Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 2, this.length) + var val = this[offset] | (this[offset + 1] << 8) + return (val & 0x8000) ? val | 0xFFFF0000 : val + } + + Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 2, this.length) + var val = this[offset + 1] | (this[offset] << 8) + return (val & 0x8000) ? val | 0xFFFF0000 : val + } + + Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + + return (this[offset]) | + (this[offset + 1] << 8) | + (this[offset + 2] << 16) | + (this[offset + 3] << 24) + } + + Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + + return (this[offset] << 24) | + (this[offset + 1] << 16) | + (this[offset + 2] << 8) | + (this[offset + 3]) + } + + Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + return ieee754.read(this, offset, true, 23, 4) + } + + Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + return ieee754.read(this, offset, false, 23, 4) + } + + Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 8, this.length) + return ieee754.read(this, offset, true, 52, 8) + } + + Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 8, this.length) + return ieee754.read(this, offset, false, 52, 8) + } + + function checkInt (buf, value, offset, ext, max, min) { + if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance') + if (value > max || value < min) throw new RangeError('"value" argument is out of bounds') + if (offset + ext > buf.length) throw new RangeError('Index out of range') + } + + Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) { + value = +value + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) { + var maxBytes = Math.pow(2, 8 * byteLength) - 1 + checkInt(this, value, offset, byteLength, maxBytes, 0) + } + + var mul = 1 + var i = 0 + this[offset] = value & 0xFF + while (++i < byteLength && (mul *= 0x100)) { + this[offset + i] = (value / mul) & 0xFF + } + + return offset + byteLength + } + + Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) { + value = +value + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) { + var maxBytes = Math.pow(2, 8 * byteLength) - 1 + checkInt(this, value, offset, byteLength, maxBytes, 0) + } + + var i = byteLength - 1 + var mul = 1 + this[offset + i] = value & 0xFF + while (--i >= 0 && (mul *= 0x100)) { + this[offset + i] = (value / mul) & 0xFF + } + + return offset + byteLength + } + + Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0) + if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value) + this[offset] = (value & 0xff) + return offset + 1 + } + + function objectWriteUInt16 (buf, value, offset, littleEndian) { + if (value < 0) value = 0xffff + value + 1 + for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) { + buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>> + (littleEndian ? i : 1 - i) * 8 + } + } + + Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value & 0xff) + this[offset + 1] = (value >>> 8) + } else { + objectWriteUInt16(this, value, offset, true) + } + return offset + 2 + } + + Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value >>> 8) + this[offset + 1] = (value & 0xff) + } else { + objectWriteUInt16(this, value, offset, false) + } + return offset + 2 + } + + function objectWriteUInt32 (buf, value, offset, littleEndian) { + if (value < 0) value = 0xffffffff + value + 1 + for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) { + buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff + } + } + + Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset + 3] = (value >>> 24) + this[offset + 2] = (value >>> 16) + this[offset + 1] = (value >>> 8) + this[offset] = (value & 0xff) + } else { + objectWriteUInt32(this, value, offset, true) + } + return offset + 4 + } + + Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value >>> 24) + this[offset + 1] = (value >>> 16) + this[offset + 2] = (value >>> 8) + this[offset + 3] = (value & 0xff) + } else { + objectWriteUInt32(this, value, offset, false) + } + return offset + 4 + } + + Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) { + var limit = Math.pow(2, 8 * byteLength - 1) + + checkInt(this, value, offset, byteLength, limit - 1, -limit) + } + + var i = 0 + var mul = 1 + var sub = 0 + this[offset] = value & 0xFF + while (++i < byteLength && (mul *= 0x100)) { + if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) { + sub = 1 + } + this[offset + i] = ((value / mul) >> 0) - sub & 0xFF + } + + return offset + byteLength + } + + Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) { + var limit = Math.pow(2, 8 * byteLength - 1) + + checkInt(this, value, offset, byteLength, limit - 1, -limit) + } + + var i = byteLength - 1 + var mul = 1 + var sub = 0 + this[offset + i] = value & 0xFF + while (--i >= 0 && (mul *= 0x100)) { + if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) { + sub = 1 + } + this[offset + i] = ((value / mul) >> 0) - sub & 0xFF + } + + return offset + byteLength + } + + Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80) + if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value) + if (value < 0) value = 0xff + value + 1 + this[offset] = (value & 0xff) + return offset + 1 + } + + Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value & 0xff) + this[offset + 1] = (value >>> 8) + } else { + objectWriteUInt16(this, value, offset, true) + } + return offset + 2 + } + + Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value >>> 8) + this[offset + 1] = (value & 0xff) + } else { + objectWriteUInt16(this, value, offset, false) + } + return offset + 2 + } + + Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value & 0xff) + this[offset + 1] = (value >>> 8) + this[offset + 2] = (value >>> 16) + this[offset + 3] = (value >>> 24) + } else { + objectWriteUInt32(this, value, offset, true) + } + return offset + 4 + } + + Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) + if (value < 0) value = 0xffffffff + value + 1 + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value >>> 24) + this[offset + 1] = (value >>> 16) + this[offset + 2] = (value >>> 8) + this[offset + 3] = (value & 0xff) + } else { + objectWriteUInt32(this, value, offset, false) + } + return offset + 4 + } + + function checkIEEE754 (buf, value, offset, ext, max, min) { + if (offset + ext > buf.length) throw new RangeError('Index out of range') + if (offset < 0) throw new RangeError('Index out of range') + } + + function writeFloat (buf, value, offset, littleEndian, noAssert) { + if (!noAssert) { + checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38) + } + ieee754.write(buf, value, offset, littleEndian, 23, 4) + return offset + 4 + } + + Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) { + return writeFloat(this, value, offset, true, noAssert) + } + + Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) { + return writeFloat(this, value, offset, false, noAssert) + } + + function writeDouble (buf, value, offset, littleEndian, noAssert) { + if (!noAssert) { + checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308) + } + ieee754.write(buf, value, offset, littleEndian, 52, 8) + return offset + 8 + } + + Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) { + return writeDouble(this, value, offset, true, noAssert) + } + + Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) { + return writeDouble(this, value, offset, false, noAssert) + } + + // copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length) + Buffer.prototype.copy = function copy (target, targetStart, start, end) { + if (!start) start = 0 + if (!end && end !== 0) end = this.length + if (targetStart >= target.length) targetStart = target.length + if (!targetStart) targetStart = 0 + if (end > 0 && end < start) end = start + + // Copy 0 bytes; we're done + if (end === start) return 0 + if (target.length === 0 || this.length === 0) return 0 + + // Fatal error conditions + if (targetStart < 0) { + throw new RangeError('targetStart out of bounds') + } + if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds') + if (end < 0) throw new RangeError('sourceEnd out of bounds') + + // Are we oob? + if (end > this.length) end = this.length + if (target.length - targetStart < end - start) { + end = target.length - targetStart + start + } + + var len = end - start + var i + + if (this === target && start < targetStart && targetStart < end) { + // descending copy from end + for (i = len - 1; i >= 0; --i) { + target[i + targetStart] = this[i + start] + } + } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) { + // ascending copy from start + for (i = 0; i < len; ++i) { + target[i + targetStart] = this[i + start] + } + } else { + Uint8Array.prototype.set.call( + target, + this.subarray(start, start + len), + targetStart + ) + } + + return len + } + + // Usage: + // buffer.fill(number[, offset[, end]]) + // buffer.fill(buffer[, offset[, end]]) + // buffer.fill(string[, offset[, end]][, encoding]) + Buffer.prototype.fill = function fill (val, start, end, encoding) { + // Handle string cases: + if (typeof val === 'string') { + if (typeof start === 'string') { + encoding = start + start = 0 + end = this.length + } else if (typeof end === 'string') { + encoding = end + end = this.length + } + if (val.length === 1) { + var code = val.charCodeAt(0) + if (code < 256) { + val = code + } + } + if (encoding !== undefined && typeof encoding !== 'string') { + throw new TypeError('encoding must be a string') + } + if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) { + throw new TypeError('Unknown encoding: ' + encoding) + } + } else if (typeof val === 'number') { + val = val & 255 + } + + // Invalid ranges are not set to a default, so can range check early. + if (start < 0 || this.length < start || this.length < end) { + throw new RangeError('Out of range index') + } + + if (end <= start) { + return this + } + + start = start >>> 0 + end = end === undefined ? this.length : end >>> 0 + + if (!val) val = 0 + + var i + if (typeof val === 'number') { + for (i = start; i < end; ++i) { + this[i] = val + } + } else { + var bytes = Buffer.isBuffer(val) + ? val + : utf8ToBytes(new Buffer(val, encoding).toString()) + var len = bytes.length + for (i = 0; i < end - start; ++i) { + this[i + start] = bytes[i % len] + } + } + + return this + } + + // HELPER FUNCTIONS + // ================ + + var INVALID_BASE64_RE = /[^+\/0-9A-Za-z-_]/g + + function base64clean (str) { + // Node strips out invalid characters like \n and \t from the string, base64-js does not + str = stringtrim(str).replace(INVALID_BASE64_RE, '') + // Node converts strings with length < 2 to '' + if (str.length < 2) return '' + // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not + while (str.length % 4 !== 0) { + str = str + '=' + } + return str + } + + function stringtrim (str) { + if (str.trim) return str.trim() + return str.replace(/^\s+|\s+$/g, '') + } + + function toHex (n) { + if (n < 16) return '0' + n.toString(16) + return n.toString(16) + } + + function utf8ToBytes (string, units) { + units = units || Infinity + var codePoint + var length = string.length + var leadSurrogate = null + var bytes = [] + + for (var i = 0; i < length; ++i) { + codePoint = string.charCodeAt(i) + + // is surrogate component + if (codePoint > 0xD7FF && codePoint < 0xE000) { + // last char was a lead + if (!leadSurrogate) { + // no lead yet + if (codePoint > 0xDBFF) { + // unexpected trail + if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) + continue + } else if (i + 1 === length) { + // unpaired lead + if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) + continue + } + + // valid lead + leadSurrogate = codePoint + + continue + } + + // 2 leads in a row + if (codePoint < 0xDC00) { + if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) + leadSurrogate = codePoint + continue + } + + // valid surrogate pair + codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000 + } else if (leadSurrogate) { + // valid bmp char, but last char was a lead + if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) + } + + leadSurrogate = null + + // encode utf8 + if (codePoint < 0x80) { + if ((units -= 1) < 0) break + bytes.push(codePoint) + } else if (codePoint < 0x800) { + if ((units -= 2) < 0) break + bytes.push( + codePoint >> 0x6 | 0xC0, + codePoint & 0x3F | 0x80 + ) + } else if (codePoint < 0x10000) { + if ((units -= 3) < 0) break + bytes.push( + codePoint >> 0xC | 0xE0, + codePoint >> 0x6 & 0x3F | 0x80, + codePoint & 0x3F | 0x80 + ) + } else if (codePoint < 0x110000) { + if ((units -= 4) < 0) break + bytes.push( + codePoint >> 0x12 | 0xF0, + codePoint >> 0xC & 0x3F | 0x80, + codePoint >> 0x6 & 0x3F | 0x80, + codePoint & 0x3F | 0x80 + ) + } else { + throw new Error('Invalid code point') + } + } + + return bytes + } + + function asciiToBytes (str) { + var byteArray = [] + for (var i = 0; i < str.length; ++i) { + // Node's code seems to be doing this and not & 0x7F.. + byteArray.push(str.charCodeAt(i) & 0xFF) + } + return byteArray + } + + function utf16leToBytes (str, units) { + var c, hi, lo + var byteArray = [] + for (var i = 0; i < str.length; ++i) { + if ((units -= 2) < 0) break + + c = str.charCodeAt(i) + hi = c >> 8 + lo = c % 256 + byteArray.push(lo) + byteArray.push(hi) + } + + return byteArray + } + + function base64ToBytes (str) { + return base64.toByteArray(base64clean(str)) + } + + function blitBuffer (src, dst, offset, length) { + for (var i = 0; i < length; ++i) { + if ((i + offset >= dst.length) || (i >= src.length)) break + dst[i + offset] = src[i] + } + return i + } + + function isnan (val) { + return val !== val // eslint-disable-line no-self-compare + } + + /* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()))) + +/***/ }, +/* 15 */ +/***/ function(module, exports) { + + module.exports = require("base64-js"); + +/***/ }, +/* 16 */ +/***/ function(module, exports) { + + module.exports = require("ieee754"); + +/***/ }, +/* 17 */ +/***/ function(module, exports) { + + module.exports = require("isarray"); + +/***/ }, +/* 18 */ +/***/ function(module, exports) { + + module.exports = require("shallowequal"); + +/***/ }, +/* 19 */ +/***/ function(module, exports, __webpack_require__) { + + var capitalize = __webpack_require__(20), + createCompounder = __webpack_require__(41); + + /** + * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the camel cased string. + * @example + * + * _.camelCase('Foo Bar'); + * // => 'fooBar' + * + * _.camelCase('--foo-bar--'); + * // => 'fooBar' + * + * _.camelCase('__FOO_BAR__'); + * // => 'fooBar' + */ + var camelCase = createCompounder(function(result, word, index) { + word = word.toLowerCase(); + return result + (index ? capitalize(word) : word); + }); + + module.exports = camelCase; + + +/***/ }, +/* 20 */ +/***/ function(module, exports, __webpack_require__) { + + var toString = __webpack_require__(21), + upperFirst = __webpack_require__(33); + + /** + * Converts the first character of `string` to upper case and the remaining + * to lower case. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to capitalize. + * @returns {string} Returns the capitalized string. + * @example + * + * _.capitalize('FRED'); + * // => 'Fred' + */ + function capitalize(string) { + return upperFirst(toString(string).toLowerCase()); + } + + module.exports = capitalize; + + +/***/ }, +/* 21 */ +/***/ function(module, exports, __webpack_require__) { + + var baseToString = __webpack_require__(22); + + /** + * Converts `value` to a string. An empty string is returned for `null` + * and `undefined` values. The sign of `-0` is preserved. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {string} Returns the converted string. + * @example + * + * _.toString(null); + * // => '' + * + * _.toString(-0); + * // => '-0' + * + * _.toString([1, 2, 3]); + * // => '1,2,3' + */ + function toString(value) { + return value == null ? '' : baseToString(value); + } + + module.exports = toString; + + +/***/ }, +/* 22 */ +/***/ function(module, exports, __webpack_require__) { + + var Symbol = __webpack_require__(23), + arrayMap = __webpack_require__(26), + isArray = __webpack_require__(27), + isSymbol = __webpack_require__(28); + + /** Used as references for various `Number` constants. */ + var INFINITY = 1 / 0; + + /** Used to convert symbols to primitives and strings. */ + var symbolProto = Symbol ? Symbol.prototype : undefined, + symbolToString = symbolProto ? symbolProto.toString : undefined; + + /** + * The base implementation of `_.toString` which doesn't convert nullish + * values to empty strings. + * + * @private + * @param {*} value The value to process. + * @returns {string} Returns the string. + */ + function baseToString(value) { + // Exit early for strings to avoid a performance hit in some environments. + if (typeof value == 'string') { + return value; + } + if (isArray(value)) { + // Recursively convert values (susceptible to call stack limits). + return arrayMap(value, baseToString) + ''; + } + if (isSymbol(value)) { + return symbolToString ? symbolToString.call(value) : ''; + } + var result = (value + ''); + return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; + } + + module.exports = baseToString; + + +/***/ }, +/* 23 */ +/***/ function(module, exports, __webpack_require__) { + + var root = __webpack_require__(24); + + /** Built-in value references. */ + var Symbol = root.Symbol; + + module.exports = Symbol; + + +/***/ }, +/* 24 */ +/***/ function(module, exports, __webpack_require__) { + + var freeGlobal = __webpack_require__(25); + + /** Detect free variable `self`. */ + var freeSelf = typeof self == 'object' && self && self.Object === Object && self; + + /** Used as a reference to the global object. */ + var root = freeGlobal || freeSelf || Function('return this')(); + + module.exports = root; + + +/***/ }, +/* 25 */ +/***/ function(module, exports) { + + /* WEBPACK VAR INJECTION */(function(global) {/** Detect free variable `global` from Node.js. */ + var freeGlobal = typeof global == 'object' && global && global.Object === Object && global; + + module.exports = freeGlobal; + + /* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()))) + +/***/ }, +/* 26 */ +/***/ function(module, exports) { + + /** + * A specialized version of `_.map` for arrays without support for iteratee + * shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + */ + function arrayMap(array, iteratee) { + var index = -1, + length = array == null ? 0 : array.length, + result = Array(length); + + while (++index < length) { + result[index] = iteratee(array[index], index, array); + } + return result; + } + + module.exports = arrayMap; + + +/***/ }, +/* 27 */ +/***/ function(module, exports) { + + /** + * Checks if `value` is classified as an `Array` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array, else `false`. + * @example + * + * _.isArray([1, 2, 3]); + * // => true + * + * _.isArray(document.body.children); + * // => false + * + * _.isArray('abc'); + * // => false + * + * _.isArray(_.noop); + * // => false + */ + var isArray = Array.isArray; + + module.exports = isArray; + + +/***/ }, +/* 28 */ +/***/ function(module, exports, __webpack_require__) { + + var baseGetTag = __webpack_require__(29), + isObjectLike = __webpack_require__(32); + + /** `Object#toString` result references. */ + var symbolTag = '[object Symbol]'; + + /** + * Checks if `value` is classified as a `Symbol` primitive or object. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. + * @example + * + * _.isSymbol(Symbol.iterator); + * // => true + * + * _.isSymbol('abc'); + * // => false + */ + function isSymbol(value) { + return typeof value == 'symbol' || + (isObjectLike(value) && baseGetTag(value) == symbolTag); + } + + module.exports = isSymbol; + + +/***/ }, +/* 29 */ +/***/ function(module, exports, __webpack_require__) { + + var Symbol = __webpack_require__(23), + getRawTag = __webpack_require__(30), + objectToString = __webpack_require__(31); + + /** `Object#toString` result references. */ + var nullTag = '[object Null]', + undefinedTag = '[object Undefined]'; + + /** Built-in value references. */ + var symToStringTag = Symbol ? Symbol.toStringTag : undefined; + + /** + * The base implementation of `getTag` without fallbacks for buggy environments. + * + * @private + * @param {*} value The value to query. + * @returns {string} Returns the `toStringTag`. + */ + function baseGetTag(value) { + if (value == null) { + return value === undefined ? undefinedTag : nullTag; + } + value = Object(value); + return (symToStringTag && symToStringTag in value) + ? getRawTag(value) + : objectToString(value); + } + + module.exports = baseGetTag; + + +/***/ }, +/* 30 */ +/***/ function(module, exports, __webpack_require__) { + + var Symbol = __webpack_require__(23); + + /** Used for built-in method references. */ + var objectProto = Object.prototype; + + /** Used to check objects for own properties. */ + var hasOwnProperty = objectProto.hasOwnProperty; + + /** + * Used to resolve the + * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) + * of values. + */ + var nativeObjectToString = objectProto.toString; + + /** Built-in value references. */ + var symToStringTag = Symbol ? Symbol.toStringTag : undefined; + + /** + * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values. + * + * @private + * @param {*} value The value to query. + * @returns {string} Returns the raw `toStringTag`. + */ + function getRawTag(value) { + var isOwn = hasOwnProperty.call(value, symToStringTag), + tag = value[symToStringTag]; + + try { + value[symToStringTag] = undefined; + var unmasked = true; + } catch (e) {} + + var result = nativeObjectToString.call(value); + if (unmasked) { + if (isOwn) { + value[symToStringTag] = tag; + } else { + delete value[symToStringTag]; + } + } + return result; + } + + module.exports = getRawTag; + + +/***/ }, +/* 31 */ +/***/ function(module, exports) { + + /** Used for built-in method references. */ + var objectProto = Object.prototype; + + /** + * Used to resolve the + * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) + * of values. + */ + var nativeObjectToString = objectProto.toString; + + /** + * Converts `value` to a string using `Object.prototype.toString`. + * + * @private + * @param {*} value The value to convert. + * @returns {string} Returns the converted string. + */ + function objectToString(value) { + return nativeObjectToString.call(value); + } + + module.exports = objectToString; + + +/***/ }, +/* 32 */ +/***/ function(module, exports) { + + /** + * Checks if `value` is object-like. A value is object-like if it's not `null` + * and has a `typeof` result of "object". + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is object-like, else `false`. + * @example + * + * _.isObjectLike({}); + * // => true + * + * _.isObjectLike([1, 2, 3]); + * // => true + * + * _.isObjectLike(_.noop); + * // => false + * + * _.isObjectLike(null); + * // => false + */ + function isObjectLike(value) { + return value != null && typeof value == 'object'; + } + + module.exports = isObjectLike; + + +/***/ }, +/* 33 */ +/***/ function(module, exports, __webpack_require__) { + + var createCaseFirst = __webpack_require__(34); + + /** + * Converts the first character of `string` to upper case. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the converted string. + * @example + * + * _.upperFirst('fred'); + * // => 'Fred' + * + * _.upperFirst('FRED'); + * // => 'FRED' + */ + var upperFirst = createCaseFirst('toUpperCase'); + + module.exports = upperFirst; + + +/***/ }, +/* 34 */ +/***/ function(module, exports, __webpack_require__) { + + var castSlice = __webpack_require__(35), + hasUnicode = __webpack_require__(37), + stringToArray = __webpack_require__(38), + toString = __webpack_require__(21); + + /** + * Creates a function like `_.lowerFirst`. + * + * @private + * @param {string} methodName The name of the `String` case method to use. + * @returns {Function} Returns the new case function. + */ + function createCaseFirst(methodName) { + return function(string) { + string = toString(string); + + var strSymbols = hasUnicode(string) + ? stringToArray(string) + : undefined; + + var chr = strSymbols + ? strSymbols[0] + : string.charAt(0); + + var trailing = strSymbols + ? castSlice(strSymbols, 1).join('') + : string.slice(1); + + return chr[methodName]() + trailing; + }; + } + + module.exports = createCaseFirst; + + +/***/ }, +/* 35 */ +/***/ function(module, exports, __webpack_require__) { + + var baseSlice = __webpack_require__(36); + + /** + * Casts `array` to a slice if it's needed. + * + * @private + * @param {Array} array The array to inspect. + * @param {number} start The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns the cast slice. + */ + function castSlice(array, start, end) { + var length = array.length; + end = end === undefined ? length : end; + return (!start && end >= length) ? array : baseSlice(array, start, end); + } + + module.exports = castSlice; + + +/***/ }, +/* 36 */ +/***/ function(module, exports) { + + /** + * The base implementation of `_.slice` without an iteratee call guard. + * + * @private + * @param {Array} array The array to slice. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns the slice of `array`. + */ + function baseSlice(array, start, end) { + var index = -1, + length = array.length; + + if (start < 0) { + start = -start > length ? 0 : (length + start); + } + end = end > length ? length : end; + if (end < 0) { + end += length; + } + length = start > end ? 0 : ((end - start) >>> 0); + start >>>= 0; + + var result = Array(length); + while (++index < length) { + result[index] = array[index + start]; + } + return result; + } + + module.exports = baseSlice; + + +/***/ }, +/* 37 */ +/***/ function(module, exports) { + + /** Used to compose unicode character classes. */ + var rsAstralRange = '\\ud800-\\udfff', + rsComboMarksRange = '\\u0300-\\u036f', + reComboHalfMarksRange = '\\ufe20-\\ufe2f', + rsComboSymbolsRange = '\\u20d0-\\u20ff', + rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, + rsVarRange = '\\ufe0e\\ufe0f'; + + /** Used to compose unicode capture groups. */ + var rsZWJ = '\\u200d'; + + /** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */ + var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']'); + + /** + * Checks if `string` contains Unicode symbols. + * + * @private + * @param {string} string The string to inspect. + * @returns {boolean} Returns `true` if a symbol is found, else `false`. + */ + function hasUnicode(string) { + return reHasUnicode.test(string); + } + + module.exports = hasUnicode; + + +/***/ }, +/* 38 */ +/***/ function(module, exports, __webpack_require__) { + + var asciiToArray = __webpack_require__(39), + hasUnicode = __webpack_require__(37), + unicodeToArray = __webpack_require__(40); + + /** + * Converts `string` to an array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the converted array. + */ + function stringToArray(string) { + return hasUnicode(string) + ? unicodeToArray(string) + : asciiToArray(string); + } + + module.exports = stringToArray; + + +/***/ }, +/* 39 */ +/***/ function(module, exports) { + + /** + * Converts an ASCII `string` to an array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the converted array. + */ + function asciiToArray(string) { + return string.split(''); + } + + module.exports = asciiToArray; + + +/***/ }, +/* 40 */ +/***/ function(module, exports) { + + /** Used to compose unicode character classes. */ + var rsAstralRange = '\\ud800-\\udfff', + rsComboMarksRange = '\\u0300-\\u036f', + reComboHalfMarksRange = '\\ufe20-\\ufe2f', + rsComboSymbolsRange = '\\u20d0-\\u20ff', + rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, + rsVarRange = '\\ufe0e\\ufe0f'; + + /** Used to compose unicode capture groups. */ + var rsAstral = '[' + rsAstralRange + ']', + rsCombo = '[' + rsComboRange + ']', + rsFitz = '\\ud83c[\\udffb-\\udfff]', + rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')', + rsNonAstral = '[^' + rsAstralRange + ']', + rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}', + rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]', + rsZWJ = '\\u200d'; + + /** Used to compose unicode regexes. */ + var reOptMod = rsModifier + '?', + rsOptVar = '[' + rsVarRange + ']?', + rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*', + rsSeq = rsOptVar + reOptMod + rsOptJoin, + rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')'; + + /** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */ + var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g'); + + /** + * Converts a Unicode `string` to an array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the converted array. + */ + function unicodeToArray(string) { + return string.match(reUnicode) || []; + } + + module.exports = unicodeToArray; + + +/***/ }, +/* 41 */ +/***/ function(module, exports, __webpack_require__) { + + var arrayReduce = __webpack_require__(42), + deburr = __webpack_require__(43), + words = __webpack_require__(46); + + /** Used to compose unicode capture groups. */ + var rsApos = "['\u2019]"; + + /** Used to match apostrophes. */ + var reApos = RegExp(rsApos, 'g'); + + /** + * Creates a function like `_.camelCase`. + * + * @private + * @param {Function} callback The function to combine each word. + * @returns {Function} Returns the new compounder function. + */ + function createCompounder(callback) { + return function(string) { + return arrayReduce(words(deburr(string).replace(reApos, '')), callback, ''); + }; + } + + module.exports = createCompounder; + + +/***/ }, +/* 42 */ +/***/ function(module, exports) { + + /** + * A specialized version of `_.reduce` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @param {boolean} [initAccum] Specify using the first element of `array` as + * the initial value. + * @returns {*} Returns the accumulated value. + */ + function arrayReduce(array, iteratee, accumulator, initAccum) { + var index = -1, + length = array == null ? 0 : array.length; + + if (initAccum && length) { + accumulator = array[++index]; + } + while (++index < length) { + accumulator = iteratee(accumulator, array[index], index, array); + } + return accumulator; + } + + module.exports = arrayReduce; + + +/***/ }, +/* 43 */ +/***/ function(module, exports, __webpack_require__) { + + var deburrLetter = __webpack_require__(44), + toString = __webpack_require__(21); + + /** Used to match Latin Unicode letters (excluding mathematical operators). */ + var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g; + + /** Used to compose unicode character classes. */ + var rsComboMarksRange = '\\u0300-\\u036f', + reComboHalfMarksRange = '\\ufe20-\\ufe2f', + rsComboSymbolsRange = '\\u20d0-\\u20ff', + rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange; + + /** Used to compose unicode capture groups. */ + var rsCombo = '[' + rsComboRange + ']'; + + /** + * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and + * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols). + */ + var reComboMark = RegExp(rsCombo, 'g'); + + /** + * Deburrs `string` by converting + * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table) + * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A) + * letters to basic Latin letters and removing + * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to deburr. + * @returns {string} Returns the deburred string. + * @example + * + * _.deburr('dĆ©jĆ  vu'); + * // => 'deja vu' + */ + function deburr(string) { + string = toString(string); + return string && string.replace(reLatin, deburrLetter).replace(reComboMark, ''); + } + + module.exports = deburr; + + +/***/ }, +/* 44 */ +/***/ function(module, exports, __webpack_require__) { + + var basePropertyOf = __webpack_require__(45); + + /** Used to map Latin Unicode letters to basic Latin letters. */ + var deburredLetters = { + // Latin-1 Supplement block. + '\xc0': 'A', '\xc1': 'A', '\xc2': 'A', '\xc3': 'A', '\xc4': 'A', '\xc5': 'A', + '\xe0': 'a', '\xe1': 'a', '\xe2': 'a', '\xe3': 'a', '\xe4': 'a', '\xe5': 'a', + '\xc7': 'C', '\xe7': 'c', + '\xd0': 'D', '\xf0': 'd', + '\xc8': 'E', '\xc9': 'E', '\xca': 'E', '\xcb': 'E', + '\xe8': 'e', '\xe9': 'e', '\xea': 'e', '\xeb': 'e', + '\xcc': 'I', '\xcd': 'I', '\xce': 'I', '\xcf': 'I', + '\xec': 'i', '\xed': 'i', '\xee': 'i', '\xef': 'i', + '\xd1': 'N', '\xf1': 'n', + '\xd2': 'O', '\xd3': 'O', '\xd4': 'O', '\xd5': 'O', '\xd6': 'O', '\xd8': 'O', + '\xf2': 'o', '\xf3': 'o', '\xf4': 'o', '\xf5': 'o', '\xf6': 'o', '\xf8': 'o', + '\xd9': 'U', '\xda': 'U', '\xdb': 'U', '\xdc': 'U', + '\xf9': 'u', '\xfa': 'u', '\xfb': 'u', '\xfc': 'u', + '\xdd': 'Y', '\xfd': 'y', '\xff': 'y', + '\xc6': 'Ae', '\xe6': 'ae', + '\xde': 'Th', '\xfe': 'th', + '\xdf': 'ss', + // Latin Extended-A block. + '\u0100': 'A', '\u0102': 'A', '\u0104': 'A', + '\u0101': 'a', '\u0103': 'a', '\u0105': 'a', + '\u0106': 'C', '\u0108': 'C', '\u010a': 'C', '\u010c': 'C', + '\u0107': 'c', '\u0109': 'c', '\u010b': 'c', '\u010d': 'c', + '\u010e': 'D', '\u0110': 'D', '\u010f': 'd', '\u0111': 'd', + '\u0112': 'E', '\u0114': 'E', '\u0116': 'E', '\u0118': 'E', '\u011a': 'E', + '\u0113': 'e', '\u0115': 'e', '\u0117': 'e', '\u0119': 'e', '\u011b': 'e', + '\u011c': 'G', '\u011e': 'G', '\u0120': 'G', '\u0122': 'G', + '\u011d': 'g', '\u011f': 'g', '\u0121': 'g', '\u0123': 'g', + '\u0124': 'H', '\u0126': 'H', '\u0125': 'h', '\u0127': 'h', + '\u0128': 'I', '\u012a': 'I', '\u012c': 'I', '\u012e': 'I', '\u0130': 'I', + '\u0129': 'i', '\u012b': 'i', '\u012d': 'i', '\u012f': 'i', '\u0131': 'i', + '\u0134': 'J', '\u0135': 'j', + '\u0136': 'K', '\u0137': 'k', '\u0138': 'k', + '\u0139': 'L', '\u013b': 'L', '\u013d': 'L', '\u013f': 'L', '\u0141': 'L', + '\u013a': 'l', '\u013c': 'l', '\u013e': 'l', '\u0140': 'l', '\u0142': 'l', + '\u0143': 'N', '\u0145': 'N', '\u0147': 'N', '\u014a': 'N', + '\u0144': 'n', '\u0146': 'n', '\u0148': 'n', '\u014b': 'n', + '\u014c': 'O', '\u014e': 'O', '\u0150': 'O', + '\u014d': 'o', '\u014f': 'o', '\u0151': 'o', + '\u0154': 'R', '\u0156': 'R', '\u0158': 'R', + '\u0155': 'r', '\u0157': 'r', '\u0159': 'r', + '\u015a': 'S', '\u015c': 'S', '\u015e': 'S', '\u0160': 'S', + '\u015b': 's', '\u015d': 's', '\u015f': 's', '\u0161': 's', + '\u0162': 'T', '\u0164': 'T', '\u0166': 'T', + '\u0163': 't', '\u0165': 't', '\u0167': 't', + '\u0168': 'U', '\u016a': 'U', '\u016c': 'U', '\u016e': 'U', '\u0170': 'U', '\u0172': 'U', + '\u0169': 'u', '\u016b': 'u', '\u016d': 'u', '\u016f': 'u', '\u0171': 'u', '\u0173': 'u', + '\u0174': 'W', '\u0175': 'w', + '\u0176': 'Y', '\u0177': 'y', '\u0178': 'Y', + '\u0179': 'Z', '\u017b': 'Z', '\u017d': 'Z', + '\u017a': 'z', '\u017c': 'z', '\u017e': 'z', + '\u0132': 'IJ', '\u0133': 'ij', + '\u0152': 'Oe', '\u0153': 'oe', + '\u0149': "'n", '\u017f': 's' + }; + + /** + * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A + * letters to basic Latin letters. + * + * @private + * @param {string} letter The matched letter to deburr. + * @returns {string} Returns the deburred letter. + */ + var deburrLetter = basePropertyOf(deburredLetters); + + module.exports = deburrLetter; + + +/***/ }, +/* 45 */ +/***/ function(module, exports) { + + /** + * The base implementation of `_.propertyOf` without support for deep paths. + * + * @private + * @param {Object} object The object to query. + * @returns {Function} Returns the new accessor function. + */ + function basePropertyOf(object) { + return function(key) { + return object == null ? undefined : object[key]; + }; + } + + module.exports = basePropertyOf; + + +/***/ }, +/* 46 */ +/***/ function(module, exports, __webpack_require__) { + + var asciiWords = __webpack_require__(47), + hasUnicodeWord = __webpack_require__(48), + toString = __webpack_require__(21), + unicodeWords = __webpack_require__(49); + + /** + * Splits `string` into an array of its words. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to inspect. + * @param {RegExp|string} [pattern] The pattern to match words. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the words of `string`. + * @example + * + * _.words('fred, barney, & pebbles'); + * // => ['fred', 'barney', 'pebbles'] + * + * _.words('fred, barney, & pebbles', /[^, ]+/g); + * // => ['fred', 'barney', '&', 'pebbles'] + */ + function words(string, pattern, guard) { + string = toString(string); + pattern = guard ? undefined : pattern; + + if (pattern === undefined) { + return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string); + } + return string.match(pattern) || []; + } + + module.exports = words; + + +/***/ }, +/* 47 */ +/***/ function(module, exports) { + + /** Used to match words composed of alphanumeric characters. */ + var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g; + + /** + * Splits an ASCII `string` into an array of its words. + * + * @private + * @param {string} The string to inspect. + * @returns {Array} Returns the words of `string`. + */ + function asciiWords(string) { + return string.match(reAsciiWord) || []; + } + + module.exports = asciiWords; + + +/***/ }, +/* 48 */ +/***/ function(module, exports) { + + /** Used to detect strings that need a more robust regexp to match words. */ + var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/; + + /** + * Checks if `string` contains a word composed of Unicode symbols. + * + * @private + * @param {string} string The string to inspect. + * @returns {boolean} Returns `true` if a word is found, else `false`. + */ + function hasUnicodeWord(string) { + return reHasUnicodeWord.test(string); + } + + module.exports = hasUnicodeWord; + + +/***/ }, +/* 49 */ +/***/ function(module, exports) { + + /** Used to compose unicode character classes. */ + var rsAstralRange = '\\ud800-\\udfff', + rsComboMarksRange = '\\u0300-\\u036f', + reComboHalfMarksRange = '\\ufe20-\\ufe2f', + rsComboSymbolsRange = '\\u20d0-\\u20ff', + rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, + rsDingbatRange = '\\u2700-\\u27bf', + rsLowerRange = 'a-z\\xdf-\\xf6\\xf8-\\xff', + rsMathOpRange = '\\xac\\xb1\\xd7\\xf7', + rsNonCharRange = '\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf', + rsPunctuationRange = '\\u2000-\\u206f', + rsSpaceRange = ' \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000', + rsUpperRange = 'A-Z\\xc0-\\xd6\\xd8-\\xde', + rsVarRange = '\\ufe0e\\ufe0f', + rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange; + + /** Used to compose unicode capture groups. */ + var rsApos = "['\u2019]", + rsBreak = '[' + rsBreakRange + ']', + rsCombo = '[' + rsComboRange + ']', + rsDigits = '\\d+', + rsDingbat = '[' + rsDingbatRange + ']', + rsLower = '[' + rsLowerRange + ']', + rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']', + rsFitz = '\\ud83c[\\udffb-\\udfff]', + rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')', + rsNonAstral = '[^' + rsAstralRange + ']', + rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}', + rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]', + rsUpper = '[' + rsUpperRange + ']', + rsZWJ = '\\u200d'; + + /** Used to compose unicode regexes. */ + var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')', + rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')', + rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?', + rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?', + reOptMod = rsModifier + '?', + rsOptVar = '[' + rsVarRange + ']?', + rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*', + rsOrdLower = '\\d*(?:(?:1st|2nd|3rd|(?![123])\\dth)\\b)', + rsOrdUpper = '\\d*(?:(?:1ST|2ND|3RD|(?![123])\\dTH)\\b)', + rsSeq = rsOptVar + reOptMod + rsOptJoin, + rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq; + + /** Used to match complex or compound words. */ + var reUnicodeWord = RegExp([ + rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')', + rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')', + rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower, + rsUpper + '+' + rsOptContrUpper, + rsOrdUpper, + rsOrdLower, + rsDigits, + rsEmoji + ].join('|'), 'g'); + + /** + * Splits a Unicode `string` into an array of its words. + * + * @private + * @param {string} The string to inspect. + * @returns {Array} Returns the words of `string`. + */ + function unicodeWords(string) { + return string.match(reUnicodeWord) || []; + } + + module.exports = unicodeWords; + + +/***/ }, +/* 50 */ +/***/ function(module, exports, __webpack_require__) { + + var MapCache = __webpack_require__(51); + + /** Error message constants. */ + var FUNC_ERROR_TEXT = 'Expected a function'; + + /** + * Creates a function that memoizes the result of `func`. If `resolver` is + * provided, it determines the cache key for storing the result based on the + * arguments provided to the memoized function. By default, the first argument + * provided to the memoized function is used as the map cache key. The `func` + * is invoked with the `this` binding of the memoized function. + * + * **Note:** The cache is exposed as the `cache` property on the memoized + * function. Its creation may be customized by replacing the `_.memoize.Cache` + * constructor with one whose instances implement the + * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object) + * method interface of `clear`, `delete`, `get`, `has`, and `set`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to have its output memoized. + * @param {Function} [resolver] The function to resolve the cache key. + * @returns {Function} Returns the new memoized function. + * @example + * + * var object = { 'a': 1, 'b': 2 }; + * var other = { 'c': 3, 'd': 4 }; + * + * var values = _.memoize(_.values); + * values(object); + * // => [1, 2] + * + * values(other); + * // => [3, 4] + * + * object.a = 2; + * values(object); + * // => [1, 2] + * + * // Modify the result cache. + * values.cache.set(object, ['a', 'b']); + * values(object); + * // => ['a', 'b'] + * + * // Replace `_.memoize.Cache`. + * _.memoize.Cache = WeakMap; + */ + function memoize(func, resolver) { + if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) { + throw new TypeError(FUNC_ERROR_TEXT); + } + var memoized = function() { + var args = arguments, + key = resolver ? resolver.apply(this, args) : args[0], + cache = memoized.cache; + + if (cache.has(key)) { + return cache.get(key); + } + var result = func.apply(this, args); + memoized.cache = cache.set(key, result) || cache; + return result; + }; + memoized.cache = new (memoize.Cache || MapCache); + return memoized; + } + + // Expose `MapCache`. + memoize.Cache = MapCache; + + module.exports = memoize; + + +/***/ }, +/* 51 */ +/***/ function(module, exports, __webpack_require__) { + + var mapCacheClear = __webpack_require__(52), + mapCacheDelete = __webpack_require__(77), + mapCacheGet = __webpack_require__(80), + mapCacheHas = __webpack_require__(81), + mapCacheSet = __webpack_require__(82); + + /** + * Creates a map cache object to store key-value pairs. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ + function MapCache(entries) { + var index = -1, + length = entries == null ? 0 : entries.length; + + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + + // Add methods to `MapCache`. + MapCache.prototype.clear = mapCacheClear; + MapCache.prototype['delete'] = mapCacheDelete; + MapCache.prototype.get = mapCacheGet; + MapCache.prototype.has = mapCacheHas; + MapCache.prototype.set = mapCacheSet; + + module.exports = MapCache; + + +/***/ }, +/* 52 */ +/***/ function(module, exports, __webpack_require__) { + + var Hash = __webpack_require__(53), + ListCache = __webpack_require__(68), + Map = __webpack_require__(76); + + /** + * Removes all key-value entries from the map. + * + * @private + * @name clear + * @memberOf MapCache + */ + function mapCacheClear() { + this.size = 0; + this.__data__ = { + 'hash': new Hash, + 'map': new (Map || ListCache), + 'string': new Hash + }; + } + + module.exports = mapCacheClear; + + +/***/ }, +/* 53 */ +/***/ function(module, exports, __webpack_require__) { + + var hashClear = __webpack_require__(54), + hashDelete = __webpack_require__(64), + hashGet = __webpack_require__(65), + hashHas = __webpack_require__(66), + hashSet = __webpack_require__(67); + + /** + * Creates a hash object. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ + function Hash(entries) { + var index = -1, + length = entries == null ? 0 : entries.length; + + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + + // Add methods to `Hash`. + Hash.prototype.clear = hashClear; + Hash.prototype['delete'] = hashDelete; + Hash.prototype.get = hashGet; + Hash.prototype.has = hashHas; + Hash.prototype.set = hashSet; + + module.exports = Hash; + + +/***/ }, +/* 54 */ +/***/ function(module, exports, __webpack_require__) { + + var nativeCreate = __webpack_require__(55); + + /** + * Removes all key-value entries from the hash. + * + * @private + * @name clear + * @memberOf Hash + */ + function hashClear() { + this.__data__ = nativeCreate ? nativeCreate(null) : {}; + this.size = 0; + } + + module.exports = hashClear; + + +/***/ }, +/* 55 */ +/***/ function(module, exports, __webpack_require__) { + + var getNative = __webpack_require__(56); + + /* Built-in method references that are verified to be native. */ + var nativeCreate = getNative(Object, 'create'); + + module.exports = nativeCreate; + + +/***/ }, +/* 56 */ +/***/ function(module, exports, __webpack_require__) { + + var baseIsNative = __webpack_require__(57), + getValue = __webpack_require__(63); + + /** + * Gets the native function at `key` of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {string} key The key of the method to get. + * @returns {*} Returns the function if it's native, else `undefined`. + */ + function getNative(object, key) { + var value = getValue(object, key); + return baseIsNative(value) ? value : undefined; + } + + module.exports = getNative; + + +/***/ }, +/* 57 */ +/***/ function(module, exports, __webpack_require__) { + + var isFunction = __webpack_require__(58), + isMasked = __webpack_require__(60), + isObject = __webpack_require__(59), + toSource = __webpack_require__(62); + + /** + * Used to match `RegExp` + * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns). + */ + var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; + + /** Used to detect host constructors (Safari). */ + var reIsHostCtor = /^\[object .+?Constructor\]$/; + + /** Used for built-in method references. */ + var funcProto = Function.prototype, + objectProto = Object.prototype; + + /** Used to resolve the decompiled source of functions. */ + var funcToString = funcProto.toString; + + /** Used to check objects for own properties. */ + var hasOwnProperty = objectProto.hasOwnProperty; + + /** Used to detect if a method is native. */ + var reIsNative = RegExp('^' + + funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&') + .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$' + ); + + /** + * The base implementation of `_.isNative` without bad shim checks. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a native function, + * else `false`. + */ + function baseIsNative(value) { + if (!isObject(value) || isMasked(value)) { + return false; + } + var pattern = isFunction(value) ? reIsNative : reIsHostCtor; + return pattern.test(toSource(value)); + } + + module.exports = baseIsNative; + + +/***/ }, +/* 58 */ +/***/ function(module, exports, __webpack_require__) { + + var baseGetTag = __webpack_require__(29), + isObject = __webpack_require__(59); + + /** `Object#toString` result references. */ + var asyncTag = '[object AsyncFunction]', + funcTag = '[object Function]', + genTag = '[object GeneratorFunction]', + proxyTag = '[object Proxy]'; + + /** + * Checks if `value` is classified as a `Function` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a function, else `false`. + * @example + * + * _.isFunction(_); + * // => true + * + * _.isFunction(/abc/); + * // => false + */ + function isFunction(value) { + if (!isObject(value)) { + return false; + } + // The use of `Object#toString` avoids issues with the `typeof` operator + // in Safari 9 which returns 'object' for typed arrays and other constructors. + var tag = baseGetTag(value); + return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; + } + + module.exports = isFunction; + + +/***/ }, +/* 59 */ +/***/ function(module, exports) { + + /** + * Checks if `value` is the + * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) + * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an object, else `false`. + * @example + * + * _.isObject({}); + * // => true + * + * _.isObject([1, 2, 3]); + * // => true + * + * _.isObject(_.noop); + * // => true + * + * _.isObject(null); + * // => false + */ + function isObject(value) { + var type = typeof value; + return value != null && (type == 'object' || type == 'function'); + } + + module.exports = isObject; + + +/***/ }, +/* 60 */ +/***/ function(module, exports, __webpack_require__) { + + var coreJsData = __webpack_require__(61); + + /** Used to detect methods masquerading as native. */ + var maskSrcKey = (function() { + var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ''); + return uid ? ('Symbol(src)_1.' + uid) : ''; + }()); + + /** + * Checks if `func` has its source masked. + * + * @private + * @param {Function} func The function to check. + * @returns {boolean} Returns `true` if `func` is masked, else `false`. + */ + function isMasked(func) { + return !!maskSrcKey && (maskSrcKey in func); + } + + module.exports = isMasked; + + +/***/ }, +/* 61 */ +/***/ function(module, exports, __webpack_require__) { + + var root = __webpack_require__(24); + + /** Used to detect overreaching core-js shims. */ + var coreJsData = root['__core-js_shared__']; + + module.exports = coreJsData; + + +/***/ }, +/* 62 */ +/***/ function(module, exports) { + + /** Used for built-in method references. */ + var funcProto = Function.prototype; + + /** Used to resolve the decompiled source of functions. */ + var funcToString = funcProto.toString; + + /** + * Converts `func` to its source code. + * + * @private + * @param {Function} func The function to convert. + * @returns {string} Returns the source code. + */ + function toSource(func) { + if (func != null) { + try { + return funcToString.call(func); + } catch (e) {} + try { + return (func + ''); + } catch (e) {} + } + return ''; + } + + module.exports = toSource; + + +/***/ }, +/* 63 */ +/***/ function(module, exports) { + + /** + * Gets the value at `key` of `object`. + * + * @private + * @param {Object} [object] The object to query. + * @param {string} key The key of the property to get. + * @returns {*} Returns the property value. + */ + function getValue(object, key) { + return object == null ? undefined : object[key]; + } + + module.exports = getValue; + + +/***/ }, +/* 64 */ +/***/ function(module, exports) { + + /** + * Removes `key` and its value from the hash. + * + * @private + * @name delete + * @memberOf Hash + * @param {Object} hash The hash to modify. + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ + function hashDelete(key) { + var result = this.has(key) && delete this.__data__[key]; + this.size -= result ? 1 : 0; + return result; + } + + module.exports = hashDelete; + + +/***/ }, +/* 65 */ +/***/ function(module, exports, __webpack_require__) { + + var nativeCreate = __webpack_require__(55); + + /** Used to stand-in for `undefined` hash values. */ + var HASH_UNDEFINED = '__lodash_hash_undefined__'; + + /** Used for built-in method references. */ + var objectProto = Object.prototype; + + /** Used to check objects for own properties. */ + var hasOwnProperty = objectProto.hasOwnProperty; + + /** + * Gets the hash value for `key`. + * + * @private + * @name get + * @memberOf Hash + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ + function hashGet(key) { + var data = this.__data__; + if (nativeCreate) { + var result = data[key]; + return result === HASH_UNDEFINED ? undefined : result; + } + return hasOwnProperty.call(data, key) ? data[key] : undefined; + } + + module.exports = hashGet; + + +/***/ }, +/* 66 */ +/***/ function(module, exports, __webpack_require__) { + + var nativeCreate = __webpack_require__(55); + + /** Used for built-in method references. */ + var objectProto = Object.prototype; + + /** Used to check objects for own properties. */ + var hasOwnProperty = objectProto.hasOwnProperty; + + /** + * Checks if a hash value for `key` exists. + * + * @private + * @name has + * @memberOf Hash + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function hashHas(key) { + var data = this.__data__; + return nativeCreate ? data[key] !== undefined : hasOwnProperty.call(data, key); + } + + module.exports = hashHas; + + +/***/ }, +/* 67 */ +/***/ function(module, exports, __webpack_require__) { + + var nativeCreate = __webpack_require__(55); + + /** Used to stand-in for `undefined` hash values. */ + var HASH_UNDEFINED = '__lodash_hash_undefined__'; + + /** + * Sets the hash `key` to `value`. + * + * @private + * @name set + * @memberOf Hash + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the hash instance. + */ + function hashSet(key, value) { + var data = this.__data__; + this.size += this.has(key) ? 0 : 1; + data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value; + return this; + } + + module.exports = hashSet; + + +/***/ }, +/* 68 */ +/***/ function(module, exports, __webpack_require__) { + + var listCacheClear = __webpack_require__(69), + listCacheDelete = __webpack_require__(70), + listCacheGet = __webpack_require__(73), + listCacheHas = __webpack_require__(74), + listCacheSet = __webpack_require__(75); + + /** + * Creates an list cache object. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ + function ListCache(entries) { + var index = -1, + length = entries == null ? 0 : entries.length; + + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + + // Add methods to `ListCache`. + ListCache.prototype.clear = listCacheClear; + ListCache.prototype['delete'] = listCacheDelete; + ListCache.prototype.get = listCacheGet; + ListCache.prototype.has = listCacheHas; + ListCache.prototype.set = listCacheSet; + + module.exports = ListCache; + + +/***/ }, +/* 69 */ +/***/ function(module, exports) { + + /** + * Removes all key-value entries from the list cache. + * + * @private + * @name clear + * @memberOf ListCache + */ + function listCacheClear() { + this.__data__ = []; + this.size = 0; + } + + module.exports = listCacheClear; + + +/***/ }, +/* 70 */ +/***/ function(module, exports, __webpack_require__) { + + var assocIndexOf = __webpack_require__(71); + + /** Used for built-in method references. */ + var arrayProto = Array.prototype; + + /** Built-in value references. */ + var splice = arrayProto.splice; + + /** + * Removes `key` and its value from the list cache. + * + * @private + * @name delete + * @memberOf ListCache + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ + function listCacheDelete(key) { + var data = this.__data__, + index = assocIndexOf(data, key); + + if (index < 0) { + return false; + } + var lastIndex = data.length - 1; + if (index == lastIndex) { + data.pop(); + } else { + splice.call(data, index, 1); + } + --this.size; + return true; + } + + module.exports = listCacheDelete; + + +/***/ }, +/* 71 */ +/***/ function(module, exports, __webpack_require__) { + + var eq = __webpack_require__(72); + + /** + * Gets the index at which the `key` is found in `array` of key-value pairs. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} key The key to search for. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function assocIndexOf(array, key) { + var length = array.length; + while (length--) { + if (eq(array[length][0], key)) { + return length; + } + } + return -1; + } + + module.exports = assocIndexOf; + + +/***/ }, +/* 72 */ +/***/ function(module, exports) { + + /** + * Performs a + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * comparison between two values to determine if they are equivalent. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + * @example + * + * var object = { 'a': 1 }; + * var other = { 'a': 1 }; + * + * _.eq(object, object); + * // => true + * + * _.eq(object, other); + * // => false + * + * _.eq('a', 'a'); + * // => true + * + * _.eq('a', Object('a')); + * // => false + * + * _.eq(NaN, NaN); + * // => true + */ + function eq(value, other) { + return value === other || (value !== value && other !== other); + } + + module.exports = eq; + + +/***/ }, +/* 73 */ +/***/ function(module, exports, __webpack_require__) { + + var assocIndexOf = __webpack_require__(71); + + /** + * Gets the list cache value for `key`. + * + * @private + * @name get + * @memberOf ListCache + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ + function listCacheGet(key) { + var data = this.__data__, + index = assocIndexOf(data, key); + + return index < 0 ? undefined : data[index][1]; + } + + module.exports = listCacheGet; + + +/***/ }, +/* 74 */ +/***/ function(module, exports, __webpack_require__) { + + var assocIndexOf = __webpack_require__(71); + + /** + * Checks if a list cache value for `key` exists. + * + * @private + * @name has + * @memberOf ListCache + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function listCacheHas(key) { + return assocIndexOf(this.__data__, key) > -1; + } + + module.exports = listCacheHas; + + +/***/ }, +/* 75 */ +/***/ function(module, exports, __webpack_require__) { + + var assocIndexOf = __webpack_require__(71); + + /** + * Sets the list cache `key` to `value`. + * + * @private + * @name set + * @memberOf ListCache + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the list cache instance. + */ + function listCacheSet(key, value) { + var data = this.__data__, + index = assocIndexOf(data, key); + + if (index < 0) { + ++this.size; + data.push([key, value]); + } else { + data[index][1] = value; + } + return this; + } + + module.exports = listCacheSet; + + +/***/ }, +/* 76 */ +/***/ function(module, exports, __webpack_require__) { + + var getNative = __webpack_require__(56), + root = __webpack_require__(24); + + /* Built-in method references that are verified to be native. */ + var Map = getNative(root, 'Map'); + + module.exports = Map; + + +/***/ }, +/* 77 */ +/***/ function(module, exports, __webpack_require__) { + + var getMapData = __webpack_require__(78); + + /** + * Removes `key` and its value from the map. + * + * @private + * @name delete + * @memberOf MapCache + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ + function mapCacheDelete(key) { + var result = getMapData(this, key)['delete'](key); + this.size -= result ? 1 : 0; + return result; + } + + module.exports = mapCacheDelete; + + +/***/ }, +/* 78 */ +/***/ function(module, exports, __webpack_require__) { + + var isKeyable = __webpack_require__(79); + + /** + * Gets the data for `map`. + * + * @private + * @param {Object} map The map to query. + * @param {string} key The reference key. + * @returns {*} Returns the map data. + */ + function getMapData(map, key) { + var data = map.__data__; + return isKeyable(key) + ? data[typeof key == 'string' ? 'string' : 'hash'] + : data.map; + } + + module.exports = getMapData; + + +/***/ }, +/* 79 */ +/***/ function(module, exports) { + + /** + * Checks if `value` is suitable for use as unique object key. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is suitable, else `false`. + */ + function isKeyable(value) { + var type = typeof value; + return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean') + ? (value !== '__proto__') + : (value === null); + } + + module.exports = isKeyable; + + +/***/ }, +/* 80 */ +/***/ function(module, exports, __webpack_require__) { + + var getMapData = __webpack_require__(78); + + /** + * Gets the map value for `key`. + * + * @private + * @name get + * @memberOf MapCache + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ + function mapCacheGet(key) { + return getMapData(this, key).get(key); + } + + module.exports = mapCacheGet; + + +/***/ }, +/* 81 */ +/***/ function(module, exports, __webpack_require__) { + + var getMapData = __webpack_require__(78); + + /** + * Checks if a map value for `key` exists. + * + * @private + * @name has + * @memberOf MapCache + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function mapCacheHas(key) { + return getMapData(this, key).has(key); + } + + module.exports = mapCacheHas; + + +/***/ }, +/* 82 */ +/***/ function(module, exports, __webpack_require__) { + + var getMapData = __webpack_require__(78); + + /** + * Sets the map `key` to `value`. + * + * @private + * @name set + * @memberOf MapCache + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the map cache instance. + */ + function mapCacheSet(key, value) { + var data = getMapData(this, key), + size = data.size; + + data.set(key, value); + this.size += data.size == size ? 0 : 1; + return this; + } + + module.exports = mapCacheSet; + + +/***/ }, +/* 83 */ +/***/ function(module, exports, __webpack_require__) { + + var arraySome = __webpack_require__(84), + baseIteratee = __webpack_require__(85), + baseSome = __webpack_require__(148), + isArray = __webpack_require__(27), + isIterateeCall = __webpack_require__(154); + + /** + * Checks if `predicate` returns truthy for **any** element of `collection`. + * Iteration is stopped once `predicate` returns truthy. The predicate is + * invoked with three arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + * @example + * + * _.some([null, 0, 'yes', false], Boolean); + * // => true + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false } + * ]; + * + * // The `_.matches` iteratee shorthand. + * _.some(users, { 'user': 'barney', 'active': false }); + * // => false + * + * // The `_.matchesProperty` iteratee shorthand. + * _.some(users, ['active', false]); + * // => true + * + * // The `_.property` iteratee shorthand. + * _.some(users, 'active'); + * // => true + */ + function some(collection, predicate, guard) { + var func = isArray(collection) ? arraySome : baseSome; + if (guard && isIterateeCall(collection, predicate, guard)) { + predicate = undefined; + } + return func(collection, baseIteratee(predicate, 3)); + } + + module.exports = some; + + +/***/ }, +/* 84 */ +/***/ function(module, exports) { + + /** + * A specialized version of `_.some` for arrays without support for iteratee + * shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + */ + function arraySome(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (predicate(array[index], index, array)) { + return true; + } + } + return false; + } + + module.exports = arraySome; + + +/***/ }, +/* 85 */ +/***/ function(module, exports, __webpack_require__) { + + var baseMatches = __webpack_require__(86), + baseMatchesProperty = __webpack_require__(133), + identity = __webpack_require__(144), + isArray = __webpack_require__(27), + property = __webpack_require__(145); + + /** + * The base implementation of `_.iteratee`. + * + * @private + * @param {*} [value=_.identity] The value to convert to an iteratee. + * @returns {Function} Returns the iteratee. + */ + function baseIteratee(value) { + // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9. + // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details. + if (typeof value == 'function') { + return value; + } + if (value == null) { + return identity; + } + if (typeof value == 'object') { + return isArray(value) + ? baseMatchesProperty(value[0], value[1]) + : baseMatches(value); + } + return property(value); + } + + module.exports = baseIteratee; + + +/***/ }, +/* 86 */ +/***/ function(module, exports, __webpack_require__) { + + var baseIsMatch = __webpack_require__(87), + getMatchData = __webpack_require__(130), + matchesStrictComparable = __webpack_require__(132); + + /** + * The base implementation of `_.matches` which doesn't clone `source`. + * + * @private + * @param {Object} source The object of property values to match. + * @returns {Function} Returns the new spec function. + */ + function baseMatches(source) { + var matchData = getMatchData(source); + if (matchData.length == 1 && matchData[0][2]) { + return matchesStrictComparable(matchData[0][0], matchData[0][1]); + } + return function(object) { + return object === source || baseIsMatch(object, source, matchData); + }; + } + + module.exports = baseMatches; + + +/***/ }, +/* 87 */ +/***/ function(module, exports, __webpack_require__) { + + var Stack = __webpack_require__(88), + baseIsEqual = __webpack_require__(94); + + /** Used to compose bitmasks for value comparisons. */ + var COMPARE_PARTIAL_FLAG = 1, + COMPARE_UNORDERED_FLAG = 2; + + /** + * The base implementation of `_.isMatch` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to inspect. + * @param {Object} source The object of property values to match. + * @param {Array} matchData The property names, values, and compare flags to match. + * @param {Function} [customizer] The function to customize comparisons. + * @returns {boolean} Returns `true` if `object` is a match, else `false`. + */ + function baseIsMatch(object, source, matchData, customizer) { + var index = matchData.length, + length = index, + noCustomizer = !customizer; + + if (object == null) { + return !length; + } + object = Object(object); + while (index--) { + var data = matchData[index]; + if ((noCustomizer && data[2]) + ? data[1] !== object[data[0]] + : !(data[0] in object) + ) { + return false; + } + } + while (++index < length) { + data = matchData[index]; + var key = data[0], + objValue = object[key], + srcValue = data[1]; + + if (noCustomizer && data[2]) { + if (objValue === undefined && !(key in object)) { + return false; + } + } else { + var stack = new Stack; + if (customizer) { + var result = customizer(objValue, srcValue, key, object, source, stack); + } + if (!(result === undefined + ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack) + : result + )) { + return false; + } + } + } + return true; + } + + module.exports = baseIsMatch; + + +/***/ }, +/* 88 */ +/***/ function(module, exports, __webpack_require__) { + + var ListCache = __webpack_require__(68), + stackClear = __webpack_require__(89), + stackDelete = __webpack_require__(90), + stackGet = __webpack_require__(91), + stackHas = __webpack_require__(92), + stackSet = __webpack_require__(93); + + /** + * Creates a stack cache object to store key-value pairs. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ + function Stack(entries) { + var data = this.__data__ = new ListCache(entries); + this.size = data.size; + } + + // Add methods to `Stack`. + Stack.prototype.clear = stackClear; + Stack.prototype['delete'] = stackDelete; + Stack.prototype.get = stackGet; + Stack.prototype.has = stackHas; + Stack.prototype.set = stackSet; + + module.exports = Stack; + + +/***/ }, +/* 89 */ +/***/ function(module, exports, __webpack_require__) { + + var ListCache = __webpack_require__(68); + + /** + * Removes all key-value entries from the stack. + * + * @private + * @name clear + * @memberOf Stack + */ + function stackClear() { + this.__data__ = new ListCache; + this.size = 0; + } + + module.exports = stackClear; + + +/***/ }, +/* 90 */ +/***/ function(module, exports) { + + /** + * Removes `key` and its value from the stack. + * + * @private + * @name delete + * @memberOf Stack + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ + function stackDelete(key) { + var data = this.__data__, + result = data['delete'](key); + + this.size = data.size; + return result; + } + + module.exports = stackDelete; + + +/***/ }, +/* 91 */ +/***/ function(module, exports) { + + /** + * Gets the stack value for `key`. + * + * @private + * @name get + * @memberOf Stack + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ + function stackGet(key) { + return this.__data__.get(key); + } + + module.exports = stackGet; + + +/***/ }, +/* 92 */ +/***/ function(module, exports) { + + /** + * Checks if a stack value for `key` exists. + * + * @private + * @name has + * @memberOf Stack + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function stackHas(key) { + return this.__data__.has(key); + } + + module.exports = stackHas; + + +/***/ }, +/* 93 */ +/***/ function(module, exports, __webpack_require__) { + + var ListCache = __webpack_require__(68), + Map = __webpack_require__(76), + MapCache = __webpack_require__(51); + + /** Used as the size to enable large array optimizations. */ + var LARGE_ARRAY_SIZE = 200; + + /** + * Sets the stack `key` to `value`. + * + * @private + * @name set + * @memberOf Stack + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the stack cache instance. + */ + function stackSet(key, value) { + var data = this.__data__; + if (data instanceof ListCache) { + var pairs = data.__data__; + if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) { + pairs.push([key, value]); + this.size = ++data.size; + return this; + } + data = this.__data__ = new MapCache(pairs); + } + data.set(key, value); + this.size = data.size; + return this; + } + + module.exports = stackSet; + + +/***/ }, +/* 94 */ +/***/ function(module, exports, __webpack_require__) { + + var baseIsEqualDeep = __webpack_require__(95), + isObject = __webpack_require__(59), + isObjectLike = __webpack_require__(32); + + /** + * The base implementation of `_.isEqual` which supports partial comparisons + * and tracks traversed objects. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @param {boolean} bitmask The bitmask flags. + * 1 - Unordered comparison + * 2 - Partial comparison + * @param {Function} [customizer] The function to customize comparisons. + * @param {Object} [stack] Tracks traversed `value` and `other` objects. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + */ + function baseIsEqual(value, other, bitmask, customizer, stack) { + if (value === other) { + return true; + } + if (value == null || other == null || (!isObject(value) && !isObjectLike(other))) { + return value !== value && other !== other; + } + return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); + } + + module.exports = baseIsEqual; + + +/***/ }, +/* 95 */ +/***/ function(module, exports, __webpack_require__) { + + var Stack = __webpack_require__(88), + equalArrays = __webpack_require__(96), + equalByTag = __webpack_require__(101), + equalObjects = __webpack_require__(105), + getTag = __webpack_require__(125), + isArray = __webpack_require__(27), + isBuffer = __webpack_require__(111), + isTypedArray = __webpack_require__(115); + + /** Used to compose bitmasks for value comparisons. */ + var COMPARE_PARTIAL_FLAG = 1; + + /** `Object#toString` result references. */ + var argsTag = '[object Arguments]', + arrayTag = '[object Array]', + objectTag = '[object Object]'; + + /** Used for built-in method references. */ + var objectProto = Object.prototype; + + /** Used to check objects for own properties. */ + var hasOwnProperty = objectProto.hasOwnProperty; + + /** + * A specialized version of `baseIsEqual` for arrays and objects which performs + * deep comparisons and tracks traversed objects enabling objects with circular + * references to be compared. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} [stack] Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ + function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { + var objIsArr = isArray(object), + othIsArr = isArray(other), + objTag = arrayTag, + othTag = arrayTag; + + if (!objIsArr) { + objTag = getTag(object); + objTag = objTag == argsTag ? objectTag : objTag; + } + if (!othIsArr) { + othTag = getTag(other); + othTag = othTag == argsTag ? objectTag : othTag; + } + var objIsObj = objTag == objectTag, + othIsObj = othTag == objectTag, + isSameTag = objTag == othTag; + + if (isSameTag && isBuffer(object)) { + if (!isBuffer(other)) { + return false; + } + objIsArr = true; + objIsObj = false; + } + if (isSameTag && !objIsObj) { + stack || (stack = new Stack); + return (objIsArr || isTypedArray(object)) + ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) + : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); + } + if (!(bitmask & COMPARE_PARTIAL_FLAG)) { + var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'), + othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__'); + + if (objIsWrapped || othIsWrapped) { + var objUnwrapped = objIsWrapped ? object.value() : object, + othUnwrapped = othIsWrapped ? other.value() : other; + + stack || (stack = new Stack); + return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); + } + } + if (!isSameTag) { + return false; + } + stack || (stack = new Stack); + return equalObjects(object, other, bitmask, customizer, equalFunc, stack); + } + + module.exports = baseIsEqualDeep; + + +/***/ }, +/* 96 */ +/***/ function(module, exports, __webpack_require__) { + + var SetCache = __webpack_require__(97), + arraySome = __webpack_require__(84), + cacheHas = __webpack_require__(100); + + /** Used to compose bitmasks for value comparisons. */ + var COMPARE_PARTIAL_FLAG = 1, + COMPARE_UNORDERED_FLAG = 2; + + /** + * A specialized version of `baseIsEqualDeep` for arrays with support for + * partial deep comparisons. + * + * @private + * @param {Array} array The array to compare. + * @param {Array} other The other array to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `array` and `other` objects. + * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`. + */ + function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, + arrLength = array.length, + othLength = other.length; + + if (arrLength != othLength && !(isPartial && othLength > arrLength)) { + return false; + } + // Assume cyclic values are equal. + var stacked = stack.get(array); + if (stacked && stack.get(other)) { + return stacked == other; + } + var index = -1, + result = true, + seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined; + + stack.set(array, other); + stack.set(other, array); + + // Ignore non-index properties. + while (++index < arrLength) { + var arrValue = array[index], + othValue = other[index]; + + if (customizer) { + var compared = isPartial + ? customizer(othValue, arrValue, index, other, array, stack) + : customizer(arrValue, othValue, index, array, other, stack); + } + if (compared !== undefined) { + if (compared) { + continue; + } + result = false; + break; + } + // Recursively compare arrays (susceptible to call stack limits). + if (seen) { + if (!arraySome(other, function(othValue, othIndex) { + if (!cacheHas(seen, othIndex) && + (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { + return seen.push(othIndex); + } + })) { + result = false; + break; + } + } else if (!( + arrValue === othValue || + equalFunc(arrValue, othValue, bitmask, customizer, stack) + )) { + result = false; + break; + } + } + stack['delete'](array); + stack['delete'](other); + return result; + } + + module.exports = equalArrays; + + +/***/ }, +/* 97 */ +/***/ function(module, exports, __webpack_require__) { + + var MapCache = __webpack_require__(51), + setCacheAdd = __webpack_require__(98), + setCacheHas = __webpack_require__(99); + + /** + * + * Creates an array cache object to store unique values. + * + * @private + * @constructor + * @param {Array} [values] The values to cache. + */ + function SetCache(values) { + var index = -1, + length = values == null ? 0 : values.length; + + this.__data__ = new MapCache; + while (++index < length) { + this.add(values[index]); + } + } + + // Add methods to `SetCache`. + SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; + SetCache.prototype.has = setCacheHas; + + module.exports = SetCache; + + +/***/ }, +/* 98 */ +/***/ function(module, exports) { + + /** Used to stand-in for `undefined` hash values. */ + var HASH_UNDEFINED = '__lodash_hash_undefined__'; + + /** + * Adds `value` to the array cache. + * + * @private + * @name add + * @memberOf SetCache + * @alias push + * @param {*} value The value to cache. + * @returns {Object} Returns the cache instance. + */ + function setCacheAdd(value) { + this.__data__.set(value, HASH_UNDEFINED); + return this; + } + + module.exports = setCacheAdd; + + +/***/ }, +/* 99 */ +/***/ function(module, exports) { + + /** + * Checks if `value` is in the array cache. + * + * @private + * @name has + * @memberOf SetCache + * @param {*} value The value to search for. + * @returns {number} Returns `true` if `value` is found, else `false`. + */ + function setCacheHas(value) { + return this.__data__.has(value); + } + + module.exports = setCacheHas; + + +/***/ }, +/* 100 */ +/***/ function(module, exports) { + + /** + * Checks if a `cache` value for `key` exists. + * + * @private + * @param {Object} cache The cache to query. + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function cacheHas(cache, key) { + return cache.has(key); + } + + module.exports = cacheHas; + + +/***/ }, +/* 101 */ +/***/ function(module, exports, __webpack_require__) { + + var Symbol = __webpack_require__(23), + Uint8Array = __webpack_require__(102), + eq = __webpack_require__(72), + equalArrays = __webpack_require__(96), + mapToArray = __webpack_require__(103), + setToArray = __webpack_require__(104); + + /** Used to compose bitmasks for value comparisons. */ + var COMPARE_PARTIAL_FLAG = 1, + COMPARE_UNORDERED_FLAG = 2; + + /** `Object#toString` result references. */ + var boolTag = '[object Boolean]', + dateTag = '[object Date]', + errorTag = '[object Error]', + mapTag = '[object Map]', + numberTag = '[object Number]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + symbolTag = '[object Symbol]'; + + var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]'; + + /** Used to convert symbols to primitives and strings. */ + var symbolProto = Symbol ? Symbol.prototype : undefined, + symbolValueOf = symbolProto ? symbolProto.valueOf : undefined; + + /** + * A specialized version of `baseIsEqualDeep` for comparing objects of + * the same `toStringTag`. + * + * **Note:** This function only supports comparing values with tags of + * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {string} tag The `toStringTag` of the objects to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ + function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { + switch (tag) { + case dataViewTag: + if ((object.byteLength != other.byteLength) || + (object.byteOffset != other.byteOffset)) { + return false; + } + object = object.buffer; + other = other.buffer; + + case arrayBufferTag: + if ((object.byteLength != other.byteLength) || + !equalFunc(new Uint8Array(object), new Uint8Array(other))) { + return false; + } + return true; + + case boolTag: + case dateTag: + case numberTag: + // Coerce booleans to `1` or `0` and dates to milliseconds. + // Invalid dates are coerced to `NaN`. + return eq(+object, +other); + + case errorTag: + return object.name == other.name && object.message == other.message; + + case regexpTag: + case stringTag: + // Coerce regexes to strings and treat strings, primitives and objects, + // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring + // for more details. + return object == (other + ''); + + case mapTag: + var convert = mapToArray; + + case setTag: + var isPartial = bitmask & COMPARE_PARTIAL_FLAG; + convert || (convert = setToArray); + + if (object.size != other.size && !isPartial) { + return false; + } + // Assume cyclic values are equal. + var stacked = stack.get(object); + if (stacked) { + return stacked == other; + } + bitmask |= COMPARE_UNORDERED_FLAG; + + // Recursively compare objects (susceptible to call stack limits). + stack.set(object, other); + var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); + stack['delete'](object); + return result; + + case symbolTag: + if (symbolValueOf) { + return symbolValueOf.call(object) == symbolValueOf.call(other); + } + } + return false; + } + + module.exports = equalByTag; + + +/***/ }, +/* 102 */ +/***/ function(module, exports, __webpack_require__) { + + var root = __webpack_require__(24); + + /** Built-in value references. */ + var Uint8Array = root.Uint8Array; + + module.exports = Uint8Array; + + +/***/ }, +/* 103 */ +/***/ function(module, exports) { + + /** + * Converts `map` to its key-value pairs. + * + * @private + * @param {Object} map The map to convert. + * @returns {Array} Returns the key-value pairs. + */ + function mapToArray(map) { + var index = -1, + result = Array(map.size); + + map.forEach(function(value, key) { + result[++index] = [key, value]; + }); + return result; + } + + module.exports = mapToArray; + + +/***/ }, +/* 104 */ +/***/ function(module, exports) { + + /** + * Converts `set` to an array of its values. + * + * @private + * @param {Object} set The set to convert. + * @returns {Array} Returns the values. + */ + function setToArray(set) { + var index = -1, + result = Array(set.size); + + set.forEach(function(value) { + result[++index] = value; + }); + return result; + } + + module.exports = setToArray; + + +/***/ }, +/* 105 */ +/***/ function(module, exports, __webpack_require__) { + + var keys = __webpack_require__(106); + + /** Used to compose bitmasks for value comparisons. */ + var COMPARE_PARTIAL_FLAG = 1; + + /** Used for built-in method references. */ + var objectProto = Object.prototype; + + /** Used to check objects for own properties. */ + var hasOwnProperty = objectProto.hasOwnProperty; + + /** + * A specialized version of `baseIsEqualDeep` for objects with support for + * partial deep comparisons. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ + function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, + objProps = keys(object), + objLength = objProps.length, + othProps = keys(other), + othLength = othProps.length; + + if (objLength != othLength && !isPartial) { + return false; + } + var index = objLength; + while (index--) { + var key = objProps[index]; + if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { + return false; + } + } + // Assume cyclic values are equal. + var stacked = stack.get(object); + if (stacked && stack.get(other)) { + return stacked == other; + } + var result = true; + stack.set(object, other); + stack.set(other, object); + + var skipCtor = isPartial; + while (++index < objLength) { + key = objProps[index]; + var objValue = object[key], + othValue = other[key]; + + if (customizer) { + var compared = isPartial + ? customizer(othValue, objValue, key, other, object, stack) + : customizer(objValue, othValue, key, object, other, stack); + } + // Recursively compare objects (susceptible to call stack limits). + if (!(compared === undefined + ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack)) + : compared + )) { + result = false; + break; + } + skipCtor || (skipCtor = key == 'constructor'); + } + if (result && !skipCtor) { + var objCtor = object.constructor, + othCtor = other.constructor; + + // Non `Object` object instances with different constructors are not equal. + if (objCtor != othCtor && + ('constructor' in object && 'constructor' in other) && + !(typeof objCtor == 'function' && objCtor instanceof objCtor && + typeof othCtor == 'function' && othCtor instanceof othCtor)) { + result = false; + } + } + stack['delete'](object); + stack['delete'](other); + return result; + } + + module.exports = equalObjects; + + +/***/ }, +/* 106 */ +/***/ function(module, exports, __webpack_require__) { + + var arrayLikeKeys = __webpack_require__(107), + baseKeys = __webpack_require__(120), + isArrayLike = __webpack_require__(124); + + /** + * Creates an array of the own enumerable property names of `object`. + * + * **Note:** Non-object values are coerced to objects. See the + * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) + * for more details. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.keys(new Foo); + * // => ['a', 'b'] (iteration order is not guaranteed) + * + * _.keys('hi'); + * // => ['0', '1'] + */ + function keys(object) { + return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); + } + + module.exports = keys; + + +/***/ }, +/* 107 */ +/***/ function(module, exports, __webpack_require__) { + + var baseTimes = __webpack_require__(108), + isArguments = __webpack_require__(109), + isArray = __webpack_require__(27), + isBuffer = __webpack_require__(111), + isIndex = __webpack_require__(114), + isTypedArray = __webpack_require__(115); + + /** Used for built-in method references. */ + var objectProto = Object.prototype; + + /** Used to check objects for own properties. */ + var hasOwnProperty = objectProto.hasOwnProperty; + + /** + * Creates an array of the enumerable property names of the array-like `value`. + * + * @private + * @param {*} value The value to query. + * @param {boolean} inherited Specify returning inherited property names. + * @returns {Array} Returns the array of property names. + */ + function arrayLikeKeys(value, inherited) { + var isArr = isArray(value), + isArg = !isArr && isArguments(value), + isBuff = !isArr && !isArg && isBuffer(value), + isType = !isArr && !isArg && !isBuff && isTypedArray(value), + skipIndexes = isArr || isArg || isBuff || isType, + result = skipIndexes ? baseTimes(value.length, String) : [], + length = result.length; + + for (var key in value) { + if ((inherited || hasOwnProperty.call(value, key)) && + !(skipIndexes && ( + // Safari 9 has enumerable `arguments.length` in strict mode. + key == 'length' || + // Node.js 0.10 has enumerable non-index properties on buffers. + (isBuff && (key == 'offset' || key == 'parent')) || + // PhantomJS 2 has enumerable non-index properties on typed arrays. + (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) || + // Skip index properties. + isIndex(key, length) + ))) { + result.push(key); + } + } + return result; + } + + module.exports = arrayLikeKeys; + + +/***/ }, +/* 108 */ +/***/ function(module, exports) { + + /** + * The base implementation of `_.times` without support for iteratee shorthands + * or max array length checks. + * + * @private + * @param {number} n The number of times to invoke `iteratee`. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the array of results. + */ + function baseTimes(n, iteratee) { + var index = -1, + result = Array(n); + + while (++index < n) { + result[index] = iteratee(index); + } + return result; + } + + module.exports = baseTimes; + + +/***/ }, +/* 109 */ +/***/ function(module, exports, __webpack_require__) { + + var baseIsArguments = __webpack_require__(110), + isObjectLike = __webpack_require__(32); + + /** Used for built-in method references. */ + var objectProto = Object.prototype; + + /** Used to check objects for own properties. */ + var hasOwnProperty = objectProto.hasOwnProperty; + + /** Built-in value references. */ + var propertyIsEnumerable = objectProto.propertyIsEnumerable; + + /** + * Checks if `value` is likely an `arguments` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an `arguments` object, + * else `false`. + * @example + * + * _.isArguments(function() { return arguments; }()); + * // => true + * + * _.isArguments([1, 2, 3]); + * // => false + */ + var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) { + return isObjectLike(value) && hasOwnProperty.call(value, 'callee') && + !propertyIsEnumerable.call(value, 'callee'); + }; + + module.exports = isArguments; + + +/***/ }, +/* 110 */ +/***/ function(module, exports, __webpack_require__) { + + var baseGetTag = __webpack_require__(29), + isObjectLike = __webpack_require__(32); + + /** `Object#toString` result references. */ + var argsTag = '[object Arguments]'; + + /** + * The base implementation of `_.isArguments`. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an `arguments` object, + */ + function baseIsArguments(value) { + return isObjectLike(value) && baseGetTag(value) == argsTag; + } + + module.exports = baseIsArguments; + + +/***/ }, +/* 111 */ +/***/ function(module, exports, __webpack_require__) { + + /* WEBPACK VAR INJECTION */(function(module) {var root = __webpack_require__(24), + stubFalse = __webpack_require__(113); + + /** Detect free variable `exports`. */ + var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; + + /** Detect free variable `module`. */ + var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; + + /** Detect the popular CommonJS extension `module.exports`. */ + var moduleExports = freeModule && freeModule.exports === freeExports; + + /** Built-in value references. */ + var Buffer = moduleExports ? root.Buffer : undefined; + + /* Built-in method references for those with the same name as other `lodash` methods. */ + var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined; + + /** + * Checks if `value` is a buffer. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a buffer, else `false`. + * @example + * + * _.isBuffer(new Buffer(2)); + * // => true + * + * _.isBuffer(new Uint8Array(2)); + * // => false + */ + var isBuffer = nativeIsBuffer || stubFalse; + + module.exports = isBuffer; + + /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(112)(module))) + +/***/ }, +/* 112 */ +/***/ function(module, exports) { + + module.exports = function(module) { + if(!module.webpackPolyfill) { + module.deprecate = function() {}; + module.paths = []; + // module.parent = undefined by default + module.children = []; + module.webpackPolyfill = 1; + } + return module; + } + + +/***/ }, +/* 113 */ +/***/ function(module, exports) { + + /** + * This method returns `false`. + * + * @static + * @memberOf _ + * @since 4.13.0 + * @category Util + * @returns {boolean} Returns `false`. + * @example + * + * _.times(2, _.stubFalse); + * // => [false, false] + */ + function stubFalse() { + return false; + } + + module.exports = stubFalse; + + +/***/ }, +/* 114 */ +/***/ function(module, exports) { + + /** Used as references for various `Number` constants. */ + var MAX_SAFE_INTEGER = 9007199254740991; + + /** Used to detect unsigned integer values. */ + var reIsUint = /^(?:0|[1-9]\d*)$/; + + /** + * Checks if `value` is a valid array-like index. + * + * @private + * @param {*} value The value to check. + * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index. + * @returns {boolean} Returns `true` if `value` is a valid index, else `false`. + */ + function isIndex(value, length) { + length = length == null ? MAX_SAFE_INTEGER : length; + return !!length && + (typeof value == 'number' || reIsUint.test(value)) && + (value > -1 && value % 1 == 0 && value < length); + } + + module.exports = isIndex; + + +/***/ }, +/* 115 */ +/***/ function(module, exports, __webpack_require__) { + + var baseIsTypedArray = __webpack_require__(116), + baseUnary = __webpack_require__(118), + nodeUtil = __webpack_require__(119); + + /* Node.js helper references. */ + var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; + + /** + * Checks if `value` is classified as a typed array. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. + * @example + * + * _.isTypedArray(new Uint8Array); + * // => true + * + * _.isTypedArray([]); + * // => false + */ + var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; + + module.exports = isTypedArray; + + +/***/ }, +/* 116 */ +/***/ function(module, exports, __webpack_require__) { + + var baseGetTag = __webpack_require__(29), + isLength = __webpack_require__(117), + isObjectLike = __webpack_require__(32); + + /** `Object#toString` result references. */ + var argsTag = '[object Arguments]', + arrayTag = '[object Array]', + boolTag = '[object Boolean]', + dateTag = '[object Date]', + errorTag = '[object Error]', + funcTag = '[object Function]', + mapTag = '[object Map]', + numberTag = '[object Number]', + objectTag = '[object Object]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + weakMapTag = '[object WeakMap]'; + + var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]', + float32Tag = '[object Float32Array]', + float64Tag = '[object Float64Array]', + int8Tag = '[object Int8Array]', + int16Tag = '[object Int16Array]', + int32Tag = '[object Int32Array]', + uint8Tag = '[object Uint8Array]', + uint8ClampedTag = '[object Uint8ClampedArray]', + uint16Tag = '[object Uint16Array]', + uint32Tag = '[object Uint32Array]'; + + /** Used to identify `toStringTag` values of typed arrays. */ + var typedArrayTags = {}; + typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = + typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = + typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = + typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = + typedArrayTags[uint32Tag] = true; + typedArrayTags[argsTag] = typedArrayTags[arrayTag] = + typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = + typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = + typedArrayTags[errorTag] = typedArrayTags[funcTag] = + typedArrayTags[mapTag] = typedArrayTags[numberTag] = + typedArrayTags[objectTag] = typedArrayTags[regexpTag] = + typedArrayTags[setTag] = typedArrayTags[stringTag] = + typedArrayTags[weakMapTag] = false; + + /** + * The base implementation of `_.isTypedArray` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. + */ + function baseIsTypedArray(value) { + return isObjectLike(value) && + isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; + } + + module.exports = baseIsTypedArray; + + +/***/ }, +/* 117 */ +/***/ function(module, exports) { + + /** Used as references for various `Number` constants. */ + var MAX_SAFE_INTEGER = 9007199254740991; + + /** + * Checks if `value` is a valid array-like length. + * + * **Note:** This method is loosely based on + * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a valid length, else `false`. + * @example + * + * _.isLength(3); + * // => true + * + * _.isLength(Number.MIN_VALUE); + * // => false + * + * _.isLength(Infinity); + * // => false + * + * _.isLength('3'); + * // => false + */ + function isLength(value) { + return typeof value == 'number' && + value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; + } + + module.exports = isLength; + + +/***/ }, +/* 118 */ +/***/ function(module, exports) { + + /** + * The base implementation of `_.unary` without support for storing metadata. + * + * @private + * @param {Function} func The function to cap arguments for. + * @returns {Function} Returns the new capped function. + */ + function baseUnary(func) { + return function(value) { + return func(value); + }; + } + + module.exports = baseUnary; + + +/***/ }, +/* 119 */ +/***/ function(module, exports, __webpack_require__) { + + /* WEBPACK VAR INJECTION */(function(module) {var freeGlobal = __webpack_require__(25); + + /** Detect free variable `exports`. */ + var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; + + /** Detect free variable `module`. */ + var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; + + /** Detect the popular CommonJS extension `module.exports`. */ + var moduleExports = freeModule && freeModule.exports === freeExports; + + /** Detect free variable `process` from Node.js. */ + var freeProcess = moduleExports && freeGlobal.process; + + /** Used to access faster Node.js helpers. */ + var nodeUtil = (function() { + try { + return freeProcess && freeProcess.binding && freeProcess.binding('util'); + } catch (e) {} + }()); + + module.exports = nodeUtil; + + /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(112)(module))) + +/***/ }, +/* 120 */ +/***/ function(module, exports, __webpack_require__) { + + var isPrototype = __webpack_require__(121), + nativeKeys = __webpack_require__(122); + + /** Used for built-in method references. */ + var objectProto = Object.prototype; + + /** Used to check objects for own properties. */ + var hasOwnProperty = objectProto.hasOwnProperty; + + /** + * The base implementation of `_.keys` which doesn't treat sparse arrays as dense. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + */ + function baseKeys(object) { + if (!isPrototype(object)) { + return nativeKeys(object); + } + var result = []; + for (var key in Object(object)) { + if (hasOwnProperty.call(object, key) && key != 'constructor') { + result.push(key); + } + } + return result; + } + + module.exports = baseKeys; + + +/***/ }, +/* 121 */ +/***/ function(module, exports) { + + /** Used for built-in method references. */ + var objectProto = Object.prototype; + + /** + * Checks if `value` is likely a prototype object. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a prototype, else `false`. + */ + function isPrototype(value) { + var Ctor = value && value.constructor, + proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto; + + return value === proto; + } + + module.exports = isPrototype; + + +/***/ }, +/* 122 */ +/***/ function(module, exports, __webpack_require__) { + + var overArg = __webpack_require__(123); + + /* Built-in method references for those with the same name as other `lodash` methods. */ + var nativeKeys = overArg(Object.keys, Object); + + module.exports = nativeKeys; + + +/***/ }, +/* 123 */ +/***/ function(module, exports) { + + /** + * Creates a unary function that invokes `func` with its argument transformed. + * + * @private + * @param {Function} func The function to wrap. + * @param {Function} transform The argument transform. + * @returns {Function} Returns the new function. + */ + function overArg(func, transform) { + return function(arg) { + return func(transform(arg)); + }; + } + + module.exports = overArg; + + +/***/ }, +/* 124 */ +/***/ function(module, exports, __webpack_require__) { + + var isFunction = __webpack_require__(58), + isLength = __webpack_require__(117); + + /** + * Checks if `value` is array-like. A value is considered array-like if it's + * not a function and has a `value.length` that's an integer greater than or + * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is array-like, else `false`. + * @example + * + * _.isArrayLike([1, 2, 3]); + * // => true + * + * _.isArrayLike(document.body.children); + * // => true + * + * _.isArrayLike('abc'); + * // => true + * + * _.isArrayLike(_.noop); + * // => false + */ + function isArrayLike(value) { + return value != null && isLength(value.length) && !isFunction(value); + } + + module.exports = isArrayLike; + + +/***/ }, +/* 125 */ +/***/ function(module, exports, __webpack_require__) { + + var DataView = __webpack_require__(126), + Map = __webpack_require__(76), + Promise = __webpack_require__(127), + Set = __webpack_require__(128), + WeakMap = __webpack_require__(129), + baseGetTag = __webpack_require__(29), + toSource = __webpack_require__(62); + + /** `Object#toString` result references. */ + var mapTag = '[object Map]', + objectTag = '[object Object]', + promiseTag = '[object Promise]', + setTag = '[object Set]', + weakMapTag = '[object WeakMap]'; + + var dataViewTag = '[object DataView]'; + + /** Used to detect maps, sets, and weakmaps. */ + var dataViewCtorString = toSource(DataView), + mapCtorString = toSource(Map), + promiseCtorString = toSource(Promise), + setCtorString = toSource(Set), + weakMapCtorString = toSource(WeakMap); + + /** + * Gets the `toStringTag` of `value`. + * + * @private + * @param {*} value The value to query. + * @returns {string} Returns the `toStringTag`. + */ + var getTag = baseGetTag; + + // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6. + if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) || + (Map && getTag(new Map) != mapTag) || + (Promise && getTag(Promise.resolve()) != promiseTag) || + (Set && getTag(new Set) != setTag) || + (WeakMap && getTag(new WeakMap) != weakMapTag)) { + getTag = function(value) { + var result = baseGetTag(value), + Ctor = result == objectTag ? value.constructor : undefined, + ctorString = Ctor ? toSource(Ctor) : ''; + + if (ctorString) { + switch (ctorString) { + case dataViewCtorString: return dataViewTag; + case mapCtorString: return mapTag; + case promiseCtorString: return promiseTag; + case setCtorString: return setTag; + case weakMapCtorString: return weakMapTag; + } + } + return result; + }; + } + + module.exports = getTag; + + +/***/ }, +/* 126 */ +/***/ function(module, exports, __webpack_require__) { + + var getNative = __webpack_require__(56), + root = __webpack_require__(24); + + /* Built-in method references that are verified to be native. */ + var DataView = getNative(root, 'DataView'); + + module.exports = DataView; + + +/***/ }, +/* 127 */ +/***/ function(module, exports, __webpack_require__) { + + var getNative = __webpack_require__(56), + root = __webpack_require__(24); + + /* Built-in method references that are verified to be native. */ + var Promise = getNative(root, 'Promise'); + + module.exports = Promise; + + +/***/ }, +/* 128 */ +/***/ function(module, exports, __webpack_require__) { + + var getNative = __webpack_require__(56), + root = __webpack_require__(24); + + /* Built-in method references that are verified to be native. */ + var Set = getNative(root, 'Set'); + + module.exports = Set; + + +/***/ }, +/* 129 */ +/***/ function(module, exports, __webpack_require__) { + + var getNative = __webpack_require__(56), + root = __webpack_require__(24); + + /* Built-in method references that are verified to be native. */ + var WeakMap = getNative(root, 'WeakMap'); + + module.exports = WeakMap; + + +/***/ }, +/* 130 */ +/***/ function(module, exports, __webpack_require__) { + + var isStrictComparable = __webpack_require__(131), + keys = __webpack_require__(106); + + /** + * Gets the property names, values, and compare flags of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the match data of `object`. + */ + function getMatchData(object) { + var result = keys(object), + length = result.length; + + while (length--) { + var key = result[length], + value = object[key]; + + result[length] = [key, value, isStrictComparable(value)]; + } + return result; + } + + module.exports = getMatchData; + + +/***/ }, +/* 131 */ +/***/ function(module, exports, __webpack_require__) { + + var isObject = __webpack_require__(59); + + /** + * Checks if `value` is suitable for strict equality comparisons, i.e. `===`. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` if suitable for strict + * equality comparisons, else `false`. + */ + function isStrictComparable(value) { + return value === value && !isObject(value); + } + + module.exports = isStrictComparable; + + +/***/ }, +/* 132 */ +/***/ function(module, exports) { + + /** + * A specialized version of `matchesProperty` for source values suitable + * for strict equality comparisons, i.e. `===`. + * + * @private + * @param {string} key The key of the property to get. + * @param {*} srcValue The value to match. + * @returns {Function} Returns the new spec function. + */ + function matchesStrictComparable(key, srcValue) { + return function(object) { + if (object == null) { + return false; + } + return object[key] === srcValue && + (srcValue !== undefined || (key in Object(object))); + }; + } + + module.exports = matchesStrictComparable; + + +/***/ }, +/* 133 */ +/***/ function(module, exports, __webpack_require__) { + + var baseIsEqual = __webpack_require__(94), + get = __webpack_require__(134), + hasIn = __webpack_require__(141), + isKey = __webpack_require__(137), + isStrictComparable = __webpack_require__(131), + matchesStrictComparable = __webpack_require__(132), + toKey = __webpack_require__(140); + + /** Used to compose bitmasks for value comparisons. */ + var COMPARE_PARTIAL_FLAG = 1, + COMPARE_UNORDERED_FLAG = 2; + + /** + * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`. + * + * @private + * @param {string} path The path of the property to get. + * @param {*} srcValue The value to match. + * @returns {Function} Returns the new spec function. + */ + function baseMatchesProperty(path, srcValue) { + if (isKey(path) && isStrictComparable(srcValue)) { + return matchesStrictComparable(toKey(path), srcValue); + } + return function(object) { + var objValue = get(object, path); + return (objValue === undefined && objValue === srcValue) + ? hasIn(object, path) + : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG); + }; + } + + module.exports = baseMatchesProperty; + + +/***/ }, +/* 134 */ +/***/ function(module, exports, __webpack_require__) { + + var baseGet = __webpack_require__(135); + + /** + * Gets the value at `path` of `object`. If the resolved value is + * `undefined`, the `defaultValue` is returned in its place. + * + * @static + * @memberOf _ + * @since 3.7.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to get. + * @param {*} [defaultValue] The value returned for `undefined` resolved values. + * @returns {*} Returns the resolved value. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }] }; + * + * _.get(object, 'a[0].b.c'); + * // => 3 + * + * _.get(object, ['a', '0', 'b', 'c']); + * // => 3 + * + * _.get(object, 'a.b.c', 'default'); + * // => 'default' + */ + function get(object, path, defaultValue) { + var result = object == null ? undefined : baseGet(object, path); + return result === undefined ? defaultValue : result; + } + + module.exports = get; + + +/***/ }, +/* 135 */ +/***/ function(module, exports, __webpack_require__) { + + var castPath = __webpack_require__(136), + toKey = __webpack_require__(140); + + /** + * The base implementation of `_.get` without support for default values. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to get. + * @returns {*} Returns the resolved value. + */ + function baseGet(object, path) { + path = castPath(path, object); + + var index = 0, + length = path.length; + + while (object != null && index < length) { + object = object[toKey(path[index++])]; + } + return (index && index == length) ? object : undefined; + } + + module.exports = baseGet; + + +/***/ }, +/* 136 */ +/***/ function(module, exports, __webpack_require__) { + + var isArray = __webpack_require__(27), + isKey = __webpack_require__(137), + stringToPath = __webpack_require__(138), + toString = __webpack_require__(21); + + /** + * Casts `value` to a path array if it's not one. + * + * @private + * @param {*} value The value to inspect. + * @param {Object} [object] The object to query keys on. + * @returns {Array} Returns the cast property path array. + */ + function castPath(value, object) { + if (isArray(value)) { + return value; + } + return isKey(value, object) ? [value] : stringToPath(toString(value)); + } + + module.exports = castPath; + + +/***/ }, +/* 137 */ +/***/ function(module, exports, __webpack_require__) { + + var isArray = __webpack_require__(27), + isSymbol = __webpack_require__(28); + + /** Used to match property names within property paths. */ + var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, + reIsPlainProp = /^\w*$/; + + /** + * Checks if `value` is a property name and not a property path. + * + * @private + * @param {*} value The value to check. + * @param {Object} [object] The object to query keys on. + * @returns {boolean} Returns `true` if `value` is a property name, else `false`. + */ + function isKey(value, object) { + if (isArray(value)) { + return false; + } + var type = typeof value; + if (type == 'number' || type == 'symbol' || type == 'boolean' || + value == null || isSymbol(value)) { + return true; + } + return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || + (object != null && value in Object(object)); + } + + module.exports = isKey; + + +/***/ }, +/* 138 */ +/***/ function(module, exports, __webpack_require__) { + + var memoizeCapped = __webpack_require__(139); + + /** Used to match property names within property paths. */ + var reLeadingDot = /^\./, + rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; + + /** Used to match backslashes in property paths. */ + var reEscapeChar = /\\(\\)?/g; + + /** + * Converts `string` to a property path array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the property path array. + */ + var stringToPath = memoizeCapped(function(string) { + var result = []; + if (reLeadingDot.test(string)) { + result.push(''); + } + string.replace(rePropName, function(match, number, quote, string) { + result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match)); + }); + return result; + }); + + module.exports = stringToPath; + + +/***/ }, +/* 139 */ +/***/ function(module, exports, __webpack_require__) { + + var memoize = __webpack_require__(50); + + /** Used as the maximum memoize cache size. */ + var MAX_MEMOIZE_SIZE = 500; + + /** + * A specialized version of `_.memoize` which clears the memoized function's + * cache when it exceeds `MAX_MEMOIZE_SIZE`. + * + * @private + * @param {Function} func The function to have its output memoized. + * @returns {Function} Returns the new memoized function. + */ + function memoizeCapped(func) { + var result = memoize(func, function(key) { + if (cache.size === MAX_MEMOIZE_SIZE) { + cache.clear(); + } + return key; + }); + + var cache = result.cache; + return result; + } + + module.exports = memoizeCapped; + + +/***/ }, +/* 140 */ +/***/ function(module, exports, __webpack_require__) { + + var isSymbol = __webpack_require__(28); + + /** Used as references for various `Number` constants. */ + var INFINITY = 1 / 0; + + /** + * Converts `value` to a string key if it's not a string or symbol. + * + * @private + * @param {*} value The value to inspect. + * @returns {string|symbol} Returns the key. + */ + function toKey(value) { + if (typeof value == 'string' || isSymbol(value)) { + return value; + } + var result = (value + ''); + return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; + } + + module.exports = toKey; + + +/***/ }, +/* 141 */ +/***/ function(module, exports, __webpack_require__) { + + var baseHasIn = __webpack_require__(142), + hasPath = __webpack_require__(143); + + /** + * Checks if `path` is a direct or inherited property of `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + * @example + * + * var object = _.create({ 'a': _.create({ 'b': 2 }) }); + * + * _.hasIn(object, 'a'); + * // => true + * + * _.hasIn(object, 'a.b'); + * // => true + * + * _.hasIn(object, ['a', 'b']); + * // => true + * + * _.hasIn(object, 'b'); + * // => false + */ + function hasIn(object, path) { + return object != null && hasPath(object, path, baseHasIn); + } + + module.exports = hasIn; + + +/***/ }, +/* 142 */ +/***/ function(module, exports) { + + /** + * The base implementation of `_.hasIn` without support for deep paths. + * + * @private + * @param {Object} [object] The object to query. + * @param {Array|string} key The key to check. + * @returns {boolean} Returns `true` if `key` exists, else `false`. + */ + function baseHasIn(object, key) { + return object != null && key in Object(object); + } + + module.exports = baseHasIn; + + +/***/ }, +/* 143 */ +/***/ function(module, exports, __webpack_require__) { + + var castPath = __webpack_require__(136), + isArguments = __webpack_require__(109), + isArray = __webpack_require__(27), + isIndex = __webpack_require__(114), + isLength = __webpack_require__(117), + toKey = __webpack_require__(140); + + /** + * Checks if `path` exists on `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @param {Function} hasFunc The function to check properties. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + */ + function hasPath(object, path, hasFunc) { + path = castPath(path, object); + + var index = -1, + length = path.length, + result = false; + + while (++index < length) { + var key = toKey(path[index]); + if (!(result = object != null && hasFunc(object, key))) { + break; + } + object = object[key]; + } + if (result || ++index != length) { + return result; + } + length = object == null ? 0 : object.length; + return !!length && isLength(length) && isIndex(key, length) && + (isArray(object) || isArguments(object)); + } + + module.exports = hasPath; + + +/***/ }, +/* 144 */ +/***/ function(module, exports) { + + /** + * This method returns the first argument it receives. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Util + * @param {*} value Any value. + * @returns {*} Returns `value`. + * @example + * + * var object = { 'a': 1 }; + * + * console.log(_.identity(object) === object); + * // => true + */ + function identity(value) { + return value; + } + + module.exports = identity; + + +/***/ }, +/* 145 */ +/***/ function(module, exports, __webpack_require__) { + + var baseProperty = __webpack_require__(146), + basePropertyDeep = __webpack_require__(147), + isKey = __webpack_require__(137), + toKey = __webpack_require__(140); + + /** + * Creates a function that returns the value at `path` of a given object. + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Util + * @param {Array|string} path The path of the property to get. + * @returns {Function} Returns the new accessor function. + * @example + * + * var objects = [ + * { 'a': { 'b': 2 } }, + * { 'a': { 'b': 1 } } + * ]; + * + * _.map(objects, _.property('a.b')); + * // => [2, 1] + * + * _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b'); + * // => [1, 2] + */ + function property(path) { + return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path); + } + + module.exports = property; + + +/***/ }, +/* 146 */ +/***/ function(module, exports) { + + /** + * The base implementation of `_.property` without support for deep paths. + * + * @private + * @param {string} key The key of the property to get. + * @returns {Function} Returns the new accessor function. + */ + function baseProperty(key) { + return function(object) { + return object == null ? undefined : object[key]; + }; + } + + module.exports = baseProperty; + + +/***/ }, +/* 147 */ +/***/ function(module, exports, __webpack_require__) { + + var baseGet = __webpack_require__(135); + + /** + * A specialized version of `baseProperty` which supports deep paths. + * + * @private + * @param {Array|string} path The path of the property to get. + * @returns {Function} Returns the new accessor function. + */ + function basePropertyDeep(path) { + return function(object) { + return baseGet(object, path); + }; + } + + module.exports = basePropertyDeep; + + +/***/ }, +/* 148 */ +/***/ function(module, exports, __webpack_require__) { + + var baseEach = __webpack_require__(149); + + /** + * The base implementation of `_.some` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + */ + function baseSome(collection, predicate) { + var result; + + baseEach(collection, function(value, index, collection) { + result = predicate(value, index, collection); + return !result; + }); + return !!result; + } + + module.exports = baseSome; + + +/***/ }, +/* 149 */ +/***/ function(module, exports, __webpack_require__) { + + var baseForOwn = __webpack_require__(150), + createBaseEach = __webpack_require__(153); + + /** + * The base implementation of `_.forEach` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + */ + var baseEach = createBaseEach(baseForOwn); + + module.exports = baseEach; + + +/***/ }, +/* 150 */ +/***/ function(module, exports, __webpack_require__) { + + var baseFor = __webpack_require__(151), + keys = __webpack_require__(106); + + /** + * The base implementation of `_.forOwn` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Object} Returns `object`. + */ + function baseForOwn(object, iteratee) { + return object && baseFor(object, iteratee, keys); + } + + module.exports = baseForOwn; + + +/***/ }, +/* 151 */ +/***/ function(module, exports, __webpack_require__) { + + var createBaseFor = __webpack_require__(152); + + /** + * The base implementation of `baseForOwn` which iterates over `object` + * properties returned by `keysFunc` and invokes `iteratee` for each property. + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {Function} keysFunc The function to get the keys of `object`. + * @returns {Object} Returns `object`. + */ + var baseFor = createBaseFor(); + + module.exports = baseFor; + + +/***/ }, +/* 152 */ +/***/ function(module, exports) { + + /** + * Creates a base function for methods like `_.forIn` and `_.forOwn`. + * + * @private + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new base function. + */ + function createBaseFor(fromRight) { + return function(object, iteratee, keysFunc) { + var index = -1, + iterable = Object(object), + props = keysFunc(object), + length = props.length; + + while (length--) { + var key = props[fromRight ? length : ++index]; + if (iteratee(iterable[key], key, iterable) === false) { + break; + } + } + return object; + }; + } + + module.exports = createBaseFor; + + +/***/ }, +/* 153 */ +/***/ function(module, exports, __webpack_require__) { + + var isArrayLike = __webpack_require__(124); + + /** + * Creates a `baseEach` or `baseEachRight` function. + * + * @private + * @param {Function} eachFunc The function to iterate over a collection. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new base function. + */ + function createBaseEach(eachFunc, fromRight) { + return function(collection, iteratee) { + if (collection == null) { + return collection; + } + if (!isArrayLike(collection)) { + return eachFunc(collection, iteratee); + } + var length = collection.length, + index = fromRight ? length : -1, + iterable = Object(collection); + + while ((fromRight ? index-- : ++index < length)) { + if (iteratee(iterable[index], index, iterable) === false) { + break; + } + } + return collection; + }; + } + + module.exports = createBaseEach; + + +/***/ }, +/* 154 */ +/***/ function(module, exports, __webpack_require__) { + + var eq = __webpack_require__(72), + isArrayLike = __webpack_require__(124), + isIndex = __webpack_require__(114), + isObject = __webpack_require__(59); + + /** + * Checks if the given arguments are from an iteratee call. + * + * @private + * @param {*} value The potential iteratee value argument. + * @param {*} index The potential iteratee index or key argument. + * @param {*} object The potential iteratee object argument. + * @returns {boolean} Returns `true` if the arguments are from an iteratee call, + * else `false`. + */ + function isIterateeCall(value, index, object) { + if (!isObject(object)) { + return false; + } + var type = typeof index; + if (type == 'number' + ? (isArrayLike(object) && isIndex(index, object.length)) + : (type == 'string' && index in object) + ) { + return eq(object[index], value); + } + return false; + } + + module.exports = isIterateeCall; + + +/***/ }, +/* 155 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.memoizedSampleFromSchema = exports.memoizedCreateXMLExample = exports.sampleXmlFromSchema = exports.inferSchema = exports.sampleFromSchema = undefined;exports. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + createXMLExample = createXMLExample;var _utils = __webpack_require__(13);var _xml = __webpack_require__(156);var _xml2 = _interopRequireDefault(_xml);var _memoizee = __webpack_require__(157);var _memoizee2 = _interopRequireDefault(_memoizee);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}var primitives = { "string": function string() {return "string";}, "string_email": function string_email() {return "user@example.com";}, "string_date-time": function string_dateTime() {return new Date().toISOString();}, "number": function number() {return 0;}, "number_float": function number_float() {return 0.0;}, "integer": function integer() {return 0;}, "boolean": function boolean() {return true;} };var primitive = function primitive(schema) {schema = (0, _utils.objectify)(schema);var _schema = schema,type = _schema.type,format = _schema.format;var fn = primitives[type + "_" + format] || primitives[type];if ((0, _utils.isFunc)(fn)) return fn(schema);return "Unknown Type: " + schema.type;};var sampleFromSchema = exports.sampleFromSchema = function sampleFromSchema(schema) {var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};var _objectify = (0, _utils.objectify)(schema),type = _objectify.type,example = _objectify.example,properties = _objectify.properties,additionalProperties = _objectify.additionalProperties,items = _objectify.items;var includeReadOnly = config.includeReadOnly;if (example !== undefined) return example;if (!type) {if (properties) {type = "object";} else if (items) {type = "array";} else {return;}}if (type === "object") {var props = (0, _utils.objectify)(properties);var obj = {};for (var name in props) {if (!props[name].readOnly || includeReadOnly) {obj[name] = sampleFromSchema(props[name]);}}if (additionalProperties === true) {obj.additionalProp1 = {};} else if (additionalProperties) {var additionalProps = (0, _utils.objectify)(additionalProperties);var additionalPropVal = sampleFromSchema(additionalProps);for (var i = 1; i < 4; i++) {obj["additionalProp" + i] = additionalPropVal;}}return obj;}if (type === "array") {return [sampleFromSchema(items)];}if (schema["enum"]) {if (schema["default"]) return schema["default"];return (0, _utils.normalizeArray)(schema["enum"])[0];}return primitive(schema);};var inferSchema = exports.inferSchema = function inferSchema(thing) {if (thing.schema) thing = thing.schema;if (thing.properties) {thing.type = "object";}return thing; // Hopefully this will have something schema like in it... `type` for example + };var sampleXmlFromSchema = exports.sampleXmlFromSchema = function sampleXmlFromSchema(schema) {var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};var objectifySchema = (0, _utils.objectify)(schema);var type = objectifySchema.type,properties = objectifySchema.properties,additionalProperties = objectifySchema.additionalProperties,items = objectifySchema.items,example = objectifySchema.example;var includeReadOnly = config.includeReadOnly;var defaultValue = objectifySchema.default;var res = {};var _attr = {};var xml = schema.xml;var name = xml.name,prefix = xml.prefix,namespace = xml.namespace;var enumValue = objectifySchema.enum;var displayName = void 0,value = void 0;if (!type) {if (properties || additionalProperties) {type = "object";} else if (items) {type = "array";} else {return;}}name = name || "notagname"; // add prefix to name if exists + displayName = (prefix ? prefix + ":" : "") + name;if (namespace) {//add prefix to namespace if exists + var namespacePrefix = prefix ? "xmlns:" + prefix : "xmlns";_attr[namespacePrefix] = namespace;}if (type === "array") {if (items) {items.xml = items.xml || xml || {};items.xml.name = items.xml.name || xml.name;if (xml.wrapped) {res[displayName] = [];if (Array.isArray(example)) {example.forEach(function (v) {items.example = v;res[displayName].push(sampleXmlFromSchema(items, config));});} else if (Array.isArray(defaultValue)) {defaultValue.forEach(function (v) {items.default = v;res[displayName].push(sampleXmlFromSchema(items, config));});} else {res[displayName] = [sampleXmlFromSchema(items, config)];}if (_attr) {res[displayName].push({ _attr: _attr });}return res;}var _res = [];if (Array.isArray(example)) {example.forEach(function (v) {items.example = v;_res.push(sampleXmlFromSchema(items, config));});return _res;} else if (Array.isArray(defaultValue)) {defaultValue.forEach(function (v) {items.default = v;_res.push(sampleXmlFromSchema(items, config));});return _res;}return sampleXmlFromSchema(items, config);}}if (type === "object") {var props = (0, _utils.objectify)(properties);res[displayName] = [];example = example || {};for (var propName in props) {if (!props[propName].readOnly || includeReadOnly) {props[propName].xml = props[propName].xml || {};if (props[propName].xml.attribute) {var enumAttrVal = Array.isArray(props[propName].enum) && props[propName].enum[0];var attrExample = props[propName].example;var attrDefault = props[propName].default;_attr[props[propName].xml.name || propName] = attrExample !== undefined && attrExample || example[propName] !== undefined && example[propName] || attrDefault !== undefined && attrDefault || enumAttrVal || primitive(props[propName]);} else {props[propName].xml.name = props[propName].xml.name || propName;props[propName].example = props[propName].example !== undefined ? props[propName].example : example[propName];var t = sampleXmlFromSchema(props[propName]);if (Array.isArray(t)) {res[displayName] = res[displayName].concat(t);} else {res[displayName].push(t);}}}}if (additionalProperties === true) {res[displayName].push({ additionalProp: "Anything can be here" });} else if (additionalProperties) {res[displayName].push({ additionalProp: primitive(additionalProperties) });}if (_attr) {res[displayName].push({ _attr: _attr });}return res;}if (example !== undefined) {value = example;} else if (defaultValue !== undefined) {//display example if exists + value = defaultValue;} else if (Array.isArray(enumValue)) {//display enum first value + value = enumValue[0];} else {//set default value + value = primitive(schema);}res[displayName] = _attr ? [{ _attr: _attr }, value] : value;return res;};function createXMLExample(schema, config) {var json = sampleXmlFromSchema(schema, config);if (!json) {return;}return (0, _xml2.default)(json, { declaration: true, indent: "\t" });} + var memoizedCreateXMLExample = exports.memoizedCreateXMLExample = (0, _memoizee2.default)(createXMLExample); + + var memoizedSampleFromSchema = exports.memoizedSampleFromSchema = (0, _memoizee2.default)(sampleFromSchema); + +/***/ }, +/* 156 */ +/***/ function(module, exports) { + + module.exports = require("xml"); + +/***/ }, +/* 157 */ +/***/ function(module, exports) { + + module.exports = require("memoizee"); + +/***/ }, +/* 158 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = + + + + PresetApis;var _base = __webpack_require__(159);var _base2 = _interopRequireDefault(_base);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} // Just the base, for now. + function PresetApis() { + return [_base2.default]; + + + } + +/***/ }, +/* 159 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + function () { + + var coreComponents = { + components: { + App: _app2.default, + authorizationPopup: _authorizationPopup2.default, + authorizeBtn: _authorizeBtn2.default, + authorizeOperationBtn: _authorizeOperationBtn2.default, + auths: _auths2.default, + authError: _error2.default, + oauth2: _oauth2.default, + apiKeyAuth: _apiKeyAuth2.default, + basicAuth: _basicAuth2.default, + clear: _clear2.default, + liveResponse: _liveResponse2.default, + info: _info2.default, + onlineValidatorBadge: _onlineValidatorBadge2.default, + operations: _operations2.default, + operation: _operation2.default, + highlightCode: _highlightCode2.default, + responses: _responses2.default, + response: _response2.default, + responseBody: _responseBody2.default, + parameters: _parameters2.default, + parameterRow: _parameterRow2.default, + execute: _execute2.default, + headers: _headers2.default, + errors: _errors2.default, + contentType: _contentType2.default, + overview: _overview2.default, + footer: _footer2.default, + ParamBody: _paramBody2.default, + curl: _curl2.default, + schemes: _schemes2.default, + modelExample: _modelExample2.default, + model: _model2.default, + models: _models2.default, + TryItOutButton: _tryItOutButton2.default } }; + + + + var formComponents = { + components: LayoutUtils }; + + + var jsonSchemaComponents = { + components: JsonSchemaComponents }; + + + return [_util2.default, _logs2.default, _view2.default, _spec2.default, _err2.default, _layout2.default, _samples2.default, + + + + + + + + coreComponents, + formComponents, _swaggerJs2.default, + + jsonSchemaComponents, _auth2.default, _ast2.default, _splitPaneMode2.default, _downloadUrl2.default]; + + + + + + };var _err = __webpack_require__(160);var _err2 = _interopRequireDefault(_err);var _layout = __webpack_require__(175);var _layout2 = _interopRequireDefault(_layout);var _spec = __webpack_require__(179);var _spec2 = _interopRequireDefault(_spec);var _view = __webpack_require__(185);var _view2 = _interopRequireDefault(_view);var _samples = __webpack_require__(240);var _samples2 = _interopRequireDefault(_samples);var _logs = __webpack_require__(241);var _logs2 = _interopRequireDefault(_logs);var _ast = __webpack_require__(242);var _ast2 = _interopRequireDefault(_ast);var _swaggerJs = __webpack_require__(253);var _swaggerJs2 = _interopRequireDefault(_swaggerJs);var _auth = __webpack_require__(255);var _auth2 = _interopRequireDefault(_auth);var _util = __webpack_require__(260);var _util2 = _interopRequireDefault(_util);var _splitPaneMode = __webpack_require__(262);var _splitPaneMode2 = _interopRequireDefault(_splitPaneMode);var _downloadUrl = __webpack_require__(268);var _downloadUrl2 = _interopRequireDefault(_downloadUrl);var _app = __webpack_require__(269);var _app2 = _interopRequireDefault(_app);var _authorizationPopup = __webpack_require__(270);var _authorizationPopup2 = _interopRequireDefault(_authorizationPopup);var _authorizeBtn = __webpack_require__(271);var _authorizeBtn2 = _interopRequireDefault(_authorizeBtn);var _authorizeOperationBtn = __webpack_require__(272);var _authorizeOperationBtn2 = _interopRequireDefault(_authorizeOperationBtn);var _auths = __webpack_require__(274);var _auths2 = _interopRequireDefault(_auths);var _error = __webpack_require__(275);var _error2 = _interopRequireDefault(_error);var _apiKeyAuth = __webpack_require__(276);var _apiKeyAuth2 = _interopRequireDefault(_apiKeyAuth);var _basicAuth = __webpack_require__(277);var _basicAuth2 = _interopRequireDefault(_basicAuth);var _oauth = __webpack_require__(278);var _oauth2 = _interopRequireDefault(_oauth);var _clear = __webpack_require__(280);var _clear2 = _interopRequireDefault(_clear);var _liveResponse = __webpack_require__(281);var _liveResponse2 = _interopRequireDefault(_liveResponse);var _onlineValidatorBadge = __webpack_require__(282);var _onlineValidatorBadge2 = _interopRequireDefault(_onlineValidatorBadge);var _operations = __webpack_require__(283);var _operations2 = _interopRequireDefault(_operations);var _operation = __webpack_require__(284);var _operation2 = _interopRequireDefault(_operation);var _highlightCode = __webpack_require__(287);var _highlightCode2 = _interopRequireDefault(_highlightCode);var _responses = __webpack_require__(288);var _responses2 = _interopRequireDefault(_responses);var _response = __webpack_require__(289);var _response2 = _interopRequireDefault(_response);var _responseBody = __webpack_require__(290);var _responseBody2 = _interopRequireDefault(_responseBody);var _parameters = __webpack_require__(292);var _parameters2 = _interopRequireDefault(_parameters);var _parameterRow = __webpack_require__(293);var _parameterRow2 = _interopRequireDefault(_parameterRow);var _execute = __webpack_require__(294);var _execute2 = _interopRequireDefault(_execute);var _headers = __webpack_require__(295);var _headers2 = _interopRequireDefault(_headers);var _errors = __webpack_require__(296);var _errors2 = _interopRequireDefault(_errors);var _contentType = __webpack_require__(298);var _contentType2 = _interopRequireDefault(_contentType);var _overview = __webpack_require__(299);var _overview2 = _interopRequireDefault(_overview);var _info = __webpack_require__(302);var _info2 = _interopRequireDefault(_info);var _footer = __webpack_require__(303);var _footer2 = _interopRequireDefault(_footer);var _paramBody = __webpack_require__(304);var _paramBody2 = _interopRequireDefault(_paramBody);var _curl = __webpack_require__(305);var _curl2 = _interopRequireDefault(_curl);var _schemes = __webpack_require__(307);var _schemes2 = _interopRequireDefault(_schemes);var _modelExample = __webpack_require__(308);var _modelExample2 = _interopRequireDefault(_modelExample);var _model = __webpack_require__(309);var _model2 = _interopRequireDefault(_model);var _models = __webpack_require__(310);var _models2 = _interopRequireDefault(_models);var _tryItOutButton = __webpack_require__(311);var _tryItOutButton2 = _interopRequireDefault(_tryItOutButton);var _layoutUtils = __webpack_require__(300);var LayoutUtils = _interopRequireWildcard(_layoutUtils);var _jsonSchemaComponents = __webpack_require__(312);var JsonSchemaComponents = _interopRequireWildcard(_jsonSchemaComponents);function _interopRequireWildcard(obj) {if (obj && obj.__esModule) {return obj;} else {var newObj = {};if (obj != null) {for (var key in obj) {if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];}}newObj.default = obj;return newObj;}}function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} + +/***/ }, +/* 160 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = + + + + function (system) { + return { + statePlugins: { + err: { + reducers: (0, _reducers2.default)(system), + actions: actions, + selectors: selectors } } }; + + + + };var _reducers = __webpack_require__(161);var _reducers2 = _interopRequireDefault(_reducers);var _actions = __webpack_require__(11);var actions = _interopRequireWildcard(_actions);var _selectors = __webpack_require__(173);var selectors = _interopRequireWildcard(_selectors);function _interopRequireWildcard(obj) {if (obj && obj.__esModule) {return obj;} else {var newObj = {};if (obj != null) {for (var key in obj) {if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];}}newObj.default = obj;return newObj;}}function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} + +/***/ }, +/* 161 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = + + + + + + + + + + + + + + + + + + + + + function (system) {var _ref6; + return _ref6 = {}, _defineProperty(_ref6, _actions.NEW_THROWN_ERR, + function (state, _ref) {var payload = _ref.payload; + var error = Object.assign(DEFAULT_ERROR_STRUCTURE, payload, { type: "thrown" }); + return state. + update("errors", function (errors) {return (errors || (0, _immutable.List)()).push((0, _immutable.fromJS)(error));}). + update("errors", function (errors) {return (0, _hook2.default)(errors, system.getSystem());}); + }), _defineProperty(_ref6, _actions.NEW_THROWN_ERR_BATCH, + + function (state, _ref2) {var payload = _ref2.payload; + payload = payload.map(function (err) { + return (0, _immutable.fromJS)(Object.assign(DEFAULT_ERROR_STRUCTURE, err, { type: "thrown" })); + }); + return state. + update("errors", function (errors) {return (errors || (0, _immutable.List)()).concat((0, _immutable.fromJS)(payload));}). + update("errors", function (errors) {return (0, _hook2.default)(errors, system.getSystem());}); + }), _defineProperty(_ref6, _actions.NEW_SPEC_ERR, + + function (state, _ref3) {var payload = _ref3.payload; + var error = (0, _immutable.fromJS)(payload); + error = error.set("type", "spec"); + return state. + update("errors", function (errors) {return (errors || (0, _immutable.List)()).push((0, _immutable.fromJS)(error)).sortBy(function (err) {return err.get("line");});}). + update("errors", function (errors) {return (0, _hook2.default)(errors, system.getSystem());}); + }), _defineProperty(_ref6, _actions.NEW_AUTH_ERR, + + function (state, _ref4) {var payload = _ref4.payload; + var error = (0, _immutable.fromJS)(Object.assign({}, payload)); + + error = error.set("type", "auth"); + return state. + update("errors", function (errors) {return (errors || (0, _immutable.List)()).push((0, _immutable.fromJS)(error));}). + update("errors", function (errors) {return (0, _hook2.default)(errors, system.getSystem());}); + }), _defineProperty(_ref6, _actions.CLEAR, + + function (state, _ref5) {var payload = _ref5.payload; + if (!payload) { + return; + } + // TODO: Rework, to use immutable only, no need for lodash + var newErrors = _immutable2.default.fromJS((0, _reject2.default)((state.get("errors") || (0, _immutable.List)()).toJS(), payload)); + return state.merge({ + errors: newErrors }); + + }), _ref6; + + };var _actions = __webpack_require__(11);var _reject = __webpack_require__(162);var _reject2 = _interopRequireDefault(_reject);var _immutable = __webpack_require__(7);var _immutable2 = _interopRequireDefault(_immutable);var _hook = __webpack_require__(166);var _hook2 = _interopRequireDefault(_hook);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _defineProperty(obj, key, value) {if (key in obj) {Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });} else {obj[key] = value;}return obj;}var DEFAULT_ERROR_STRUCTURE = { // defaults + line: 0, level: "error", message: "Unknown error" }; + +/***/ }, +/* 162 */ +/***/ function(module, exports, __webpack_require__) { + + var arrayFilter = __webpack_require__(163), + baseFilter = __webpack_require__(164), + baseIteratee = __webpack_require__(85), + isArray = __webpack_require__(27), + negate = __webpack_require__(165); + + /** + * The opposite of `_.filter`; this method returns the elements of `collection` + * that `predicate` does **not** return truthy for. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + * @see _.filter + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': false }, + * { 'user': 'fred', 'age': 40, 'active': true } + * ]; + * + * _.reject(users, function(o) { return !o.active; }); + * // => objects for ['fred'] + * + * // The `_.matches` iteratee shorthand. + * _.reject(users, { 'age': 40, 'active': true }); + * // => objects for ['barney'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.reject(users, ['active', false]); + * // => objects for ['fred'] + * + * // The `_.property` iteratee shorthand. + * _.reject(users, 'active'); + * // => objects for ['barney'] + */ + function reject(collection, predicate) { + var func = isArray(collection) ? arrayFilter : baseFilter; + return func(collection, negate(baseIteratee(predicate, 3))); + } + + module.exports = reject; + + +/***/ }, +/* 163 */ +/***/ function(module, exports) { + + /** + * A specialized version of `_.filter` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ + function arrayFilter(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (predicate(value, index, array)) { + result[resIndex++] = value; + } + } + return result; + } + + module.exports = arrayFilter; + + +/***/ }, +/* 164 */ +/***/ function(module, exports, __webpack_require__) { + + var baseEach = __webpack_require__(149); + + /** + * The base implementation of `_.filter` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ + function baseFilter(collection, predicate) { + var result = []; + baseEach(collection, function(value, index, collection) { + if (predicate(value, index, collection)) { + result.push(value); + } + }); + return result; + } + + module.exports = baseFilter; + + +/***/ }, +/* 165 */ +/***/ function(module, exports) { + + /** Error message constants. */ + var FUNC_ERROR_TEXT = 'Expected a function'; + + /** + * Creates a function that negates the result of the predicate `func`. The + * `func` predicate is invoked with the `this` binding and arguments of the + * created function. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} predicate The predicate to negate. + * @returns {Function} Returns the new negated function. + * @example + * + * function isEven(n) { + * return n % 2 == 0; + * } + * + * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven)); + * // => [1, 3, 5] + */ + function negate(predicate) { + if (typeof predicate != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + return function() { + var args = arguments; + switch (args.length) { + case 0: return !predicate.call(this); + case 1: return !predicate.call(this, args[0]); + case 2: return !predicate.call(this, args[0], args[1]); + case 3: return !predicate.call(this, args[0], args[1], args[2]); + } + return !predicate.apply(this, args); + }; + } + + module.exports = negate; + + +/***/ }, +/* 166 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = + + + + + + + + + + + + + + + + + + + + + + + + transformErrors;var _reduce = __webpack_require__(167);var _reduce2 = _interopRequireDefault(_reduce);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}var request = __webpack_require__(169);var errorTransformers = [];request.keys().forEach(function (key) {if (key === "./hook.js") {return;}if (!key.match(/js$/)) {return;}if (key.slice(2).indexOf("/") > -1) {// skip files in subdirs + return;}errorTransformers.push({ name: toTitleCase(key).replace(".js", "").replace("./", ""), transform: request(key).transform });});function transformErrors(errors, system) {var inputs = { + jsSpec: system.specSelectors.specJson().toJS() }; + + + var transformedErrors = (0, _reduce2.default)(errorTransformers, function (result, transformer) { + try { + var newlyTransformedErrors = transformer.transform(result, inputs); + return newlyTransformedErrors.filter(function (err) {return !!err;}); // filter removed errors + } catch (e) { + console.error("Transformer error:", e); + return result; + } + }, errors); + + return transformedErrors. + filter(function (err) {return !!err;}) // filter removed errors + .map(function (err) { + if (!err.get("line") && err.get("path")) { + // TODO: re-resolve line number if we've transformed it away + } + return err; + }); + + } + + function toTitleCase(str) { + return str. + split("-"). + map(function (substr) {return substr[0].toUpperCase() + substr.slice(1);}). + join(""); + } + +/***/ }, +/* 167 */ +/***/ function(module, exports, __webpack_require__) { + + var arrayReduce = __webpack_require__(42), + baseEach = __webpack_require__(149), + baseIteratee = __webpack_require__(85), + baseReduce = __webpack_require__(168), + isArray = __webpack_require__(27); + + /** + * Reduces `collection` to a value which is the accumulated result of running + * each element in `collection` thru `iteratee`, where each successive + * invocation is supplied the return value of the previous. If `accumulator` + * is not given, the first element of `collection` is used as the initial + * value. The iteratee is invoked with four arguments: + * (accumulator, value, index|key, collection). + * + * Many lodash methods are guarded to work as iteratees for methods like + * `_.reduce`, `_.reduceRight`, and `_.transform`. + * + * The guarded methods are: + * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`, + * and `sortBy` + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @returns {*} Returns the accumulated value. + * @see _.reduceRight + * @example + * + * _.reduce([1, 2], function(sum, n) { + * return sum + n; + * }, 0); + * // => 3 + * + * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) { + * (result[value] || (result[value] = [])).push(key); + * return result; + * }, {}); + * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed) + */ + function reduce(collection, iteratee, accumulator) { + var func = isArray(collection) ? arrayReduce : baseReduce, + initAccum = arguments.length < 3; + + return func(collection, baseIteratee(iteratee, 4), accumulator, initAccum, baseEach); + } + + module.exports = reduce; + + +/***/ }, +/* 168 */ +/***/ function(module, exports) { + + /** + * The base implementation of `_.reduce` and `_.reduceRight`, without support + * for iteratee shorthands, which iterates over `collection` using `eachFunc`. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} accumulator The initial value. + * @param {boolean} initAccum Specify using the first or last element of + * `collection` as the initial value. + * @param {Function} eachFunc The function to iterate over `collection`. + * @returns {*} Returns the accumulated value. + */ + function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { + eachFunc(collection, function(value, index, collection) { + accumulator = initAccum + ? (initAccum = false, value) + : iteratee(accumulator, value, index, collection); + }); + return accumulator; + } + + module.exports = baseReduce; + + +/***/ }, +/* 169 */ +/***/ function(module, exports, __webpack_require__) { + + var map = { + "./not-of-type.js": 170, + "./parameter-oneof.js": 171, + "./strip-instance.js": 172 + }; + function webpackContext(req) { + return __webpack_require__(webpackContextResolve(req)); + }; + function webpackContextResolve(req) { + return map[req] || (function() { throw new Error("Cannot find module '" + req + "'.") }()); + }; + webpackContext.keys = function webpackContextKeys() { + return Object.keys(map); + }; + webpackContext.resolve = webpackContextResolve; + module.exports = webpackContext; + webpackContext.id = 169; + + +/***/ }, +/* 170 */ +/***/ function(module, exports) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.transform = transform;function transform(errors) { + // JSONSchema refers to the current object being validated + // as 'instance'. This isn't helpful to users, so we remove it. + return errors. + map(function (err) { + var seekStr = "is not of a type(s)"; + var i = err.get("message").indexOf(seekStr); + if (i > -1) { + var types = err.get("message").slice(i + seekStr.length).split(","); + return err.set("message", err.get("message").slice(0, i) + makeNewMessage(types)); + } else { + return err; + } + }); + } + + function makeNewMessage(types) { + return types.reduce(function (p, c, i, arr) { + if (i === arr.length - 1 && arr.length > 1) { + return p + "or " + c; + } else if (arr[i + 1] && arr.length > 2) { + return p + c + ", "; + } else if (arr[i + 1]) { + return p + c + " "; + } else { + return p + c; + } + }, "should be a"); + } + +/***/ }, +/* 171 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports. + + + transform = transform;var _get = __webpack_require__(134);var _get2 = _interopRequireDefault(_get);var _immutable = __webpack_require__(7);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function transform(errors, _ref) {var jsSpec = _ref.jsSpec; + // LOOK HERE THIS TRANSFORMER IS CURRENTLY DISABLED šŸ˜ƒ + // TODO: finish implementing, fix flattening problem + /* eslint-disable no-unreachable */ + return errors; + + + // JSONSchema gives us very little to go on + var searchStr = "is not exactly one from <#/definitions/parameter>,<#/definitions/jsonReference>"; + return errors. + map(function (err) { + var message = err.get("message"); + var isParameterOneOfError = message.indexOf(searchStr) > -1; + if (isParameterOneOfError) { + // try to find what's wrong + return createTailoredParameterError(err, jsSpec); + } else { + return err; + } + }). + flatten(true); // shallow Immutable flatten + } + + var VALID_IN_VALUES = ["path", "query", "header", "body", "formData"]; + var VALID_COLLECTIONFORMAT_VALUES = ["csv", "ssv", "tsv", "pipes", "multi"]; + + function createTailoredParameterError(err, jsSpec) { + var newErrs = []; + var parameter = (0, _get2.default)(jsSpec, err.get("path")); + + // find addressable cases + if (parameter.in && VALID_IN_VALUES.indexOf(parameter.in) === -1) { + var message = "Wrong value for the \"in\" keyword. Expected one of: " + VALID_IN_VALUES.join(", ") + "."; + newErrs.push({ + message: message, + path: err.get("path") + ".in", + type: "spec", + source: "schema", + level: "error" }); + + } + + if (parameter.collectionFormat && VALID_COLLECTIONFORMAT_VALUES.indexOf(parameter.collectionFormat) === -1) { + var _message = "Wrong value for the \"collectionFormat\" keyword. Expected one of: " + VALID_COLLECTIONFORMAT_VALUES.join(", ") + "."; + newErrs.push({ + message: _message, + path: err.get("path") + ".collectionFormat", + type: "spec", + source: "schema", + level: "error" }); + + } + + return newErrs.length ? (0, _immutable.fromJS)(newErrs) : err; // fall back to making no changes + + } + +/***/ }, +/* 172 */ +/***/ function(module, exports) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.transform = transform;function transform(errors) { + return errors. + map(function (err) { + return err.set("message", removeSubstring(err.get("message"), "instance.")); + }); + } + + function removeSubstring(str, substr) { + return str.replace(new RegExp(substr, "g"), ""); + } + +/***/ }, +/* 173 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.lastError = exports.allErrors = undefined;var _immutable = __webpack_require__(7); + var _reselect = __webpack_require__(174); + + var state = function state(_state) {return _state;}; + + var allErrors = exports.allErrors = (0, _reselect.createSelector)( + state, + function (err) {return err.get("errors", (0, _immutable.List)());}); + + + var lastError = exports.lastError = (0, _reselect.createSelector)( + allErrors, + function (all) {return all.last();}); + +/***/ }, +/* 174 */ +/***/ function(module, exports) { + + module.exports = require("reselect"); + +/***/ }, +/* 175 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = + + + + function () { + return { + statePlugins: { + layout: { + reducers: _reducers2.default, + actions: actions, + selectors: selectors } } }; + + + + };var _reducers = __webpack_require__(176);var _reducers2 = _interopRequireDefault(_reducers);var _actions = __webpack_require__(177);var actions = _interopRequireWildcard(_actions);var _selectors = __webpack_require__(178);var selectors = _interopRequireWildcard(_selectors);function _interopRequireWildcard(obj) {if (obj && obj.__esModule) {return obj;} else {var newObj = {};if (obj != null) {for (var key in obj) {if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];}}newObj.default = obj;return newObj;}}function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} + +/***/ }, +/* 176 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _UPDATE_LAYOUT$SHOW$U;var _actions = __webpack_require__(177);function _defineProperty(obj, key, value) {if (key in obj) {Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });} else {obj[key] = value;}return obj;}exports.default = (_UPDATE_LAYOUT$SHOW$U = {}, _defineProperty(_UPDATE_LAYOUT$SHOW$U, _actions.UPDATE_LAYOUT, + + + + + + + + function (state, action) {return state.set("layout", action.payload);}), _defineProperty(_UPDATE_LAYOUT$SHOW$U, _actions.SHOW, + + function (state, action) { + var thing = action.payload.thing; + var shown = action.payload.shown; + return state.setIn(["shown"].concat(thing), shown); + }), _defineProperty(_UPDATE_LAYOUT$SHOW$U, _actions.UPDATE_MODE, + + function (state, action) { + var thing = action.payload.thing; + var mode = action.payload.mode; + return state.setIn(["modes"].concat(thing), (mode || "") + ""); + }), _UPDATE_LAYOUT$SHOW$U); + +/***/ }, +/* 177 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.SHOW = exports.UPDATE_MODE = exports.UPDATE_LAYOUT = undefined;exports. + + + + + + + + updateLayout = updateLayout;exports. + + + + + + + show = show;exports. + + + + + + + + + changeMode = changeMode;var _utils = __webpack_require__(13);var UPDATE_LAYOUT = exports.UPDATE_LAYOUT = "layout_update_layout";var UPDATE_MODE = exports.UPDATE_MODE = "layout_update_mode";var SHOW = exports.SHOW = "layout_show"; // export const ONLY_SHOW = "layout_only_show" + function updateLayout(layout) {return { type: UPDATE_LAYOUT, payload: layout };}function show(thing) {var shown = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;thing = (0, _utils.normalizeArray)(thing);return { type: SHOW, payload: { thing: thing, shown: shown } };} // Simple string key-store, used for + function changeMode(thing) {var mode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "";thing = (0, _utils.normalizeArray)(thing);return { + type: UPDATE_MODE, + payload: { thing: thing, mode: mode } }; + + } + + + // export function onlyShow(thing, shown=true) { + // thing = normalizeArray(thing) + // if(thing.length < 2) + // throw new Error("layoutActions.onlyShow only works, when `thing` is an array with length > 1") + // return { + // type: ONLY_SHOW, + // payload: {thing, shown} + // } + // } + +/***/ }, +/* 178 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.showSummary = exports.whatMode = exports.isShown = exports.current = undefined;var _reselect = __webpack_require__(174);var _utils = __webpack_require__(13);function _toConsumableArray(arr) {if (Array.isArray(arr)) {for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {arr2[i] = arr[i];}return arr2;} else {return Array.from(arr);}} + + + var state = function state(_state) {return _state;}; + + var current = exports.current = function current(state) {return state.get("layout");}; + + var isShown = exports.isShown = function isShown(state, thing, def) { + thing = (0, _utils.normalizeArray)(thing); + return Boolean(state.getIn(["shown"].concat(_toConsumableArray(thing)), def)); + }; + + var whatMode = exports.whatMode = function whatMode(state, thing) {var def = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : ""; + thing = (0, _utils.normalizeArray)(thing); + return state.getIn(["modes"].concat(_toConsumableArray(thing)), def); + }; + + var showSummary = exports.showSummary = (0, _reselect.createSelector)( + state, + function (state) {return !isShown(state, "editor");}); + +/***/ }, +/* 179 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = + + + + + function () { + return { + statePlugins: { + spec: { + wrapActions: wrapActions, + reducers: _reducers2.default, + actions: actions, + selectors: selectors } } }; + + + + };var _reducers = __webpack_require__(180);var _reducers2 = _interopRequireDefault(_reducers);var _actions = __webpack_require__(181);var actions = _interopRequireWildcard(_actions);var _selectors = __webpack_require__(183);var selectors = _interopRequireWildcard(_selectors);var _wrapActions = __webpack_require__(184);var wrapActions = _interopRequireWildcard(_wrapActions);function _interopRequireWildcard(obj) {if (obj && obj.__esModule) {return obj;} else {var newObj = {};if (obj != null) {for (var key in obj) {if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];}}newObj.default = obj;return newObj;}}function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} + +/***/ }, +/* 180 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _UPDATE_SPEC$UPDATE_U;var _immutable = __webpack_require__(7);var _utils = __webpack_require__(13); + + var _window = __webpack_require__(12);var _window2 = _interopRequireDefault(_window); + + var _actions = __webpack_require__(181);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _defineProperty(obj, key, value) {if (key in obj) {Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });} else {obj[key] = value;}return obj;}function _toConsumableArray(arr) {if (Array.isArray(arr)) {for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {arr2[i] = arr[i];}return arr2;} else {return Array.from(arr);}}exports.default = (_UPDATE_SPEC$UPDATE_U = {}, _defineProperty(_UPDATE_SPEC$UPDATE_U, _actions.UPDATE_SPEC, + + + + + + + + + + + + + + + + + + function (state, action) { + return typeof action.payload === "string" ? + state.set("spec", action.payload) : + state; + }), _defineProperty(_UPDATE_SPEC$UPDATE_U, _actions.UPDATE_URL, + + function (state, action) { + return state.set("url", action.payload + ""); + }), _defineProperty(_UPDATE_SPEC$UPDATE_U, _actions.UPDATE_JSON, + + function (state, action) { + return state.set("json", (0, _utils.fromJSOrdered)(action.payload)); + }), _defineProperty(_UPDATE_SPEC$UPDATE_U, _actions.UPDATE_RESOLVED, + + function (state, action) { + return state.setIn(["resolved"], (0, _utils.fromJSOrdered)(action.payload)); + }), _defineProperty(_UPDATE_SPEC$UPDATE_U, _actions.UPDATE_PARAM, + + function (state, _ref) {var payload = _ref.payload;var + path = payload.path,paramName = payload.paramName,value = payload.value,isXml = payload.isXml; + return state.updateIn(["resolved", "paths"].concat(_toConsumableArray(path), ["parameters"]), (0, _immutable.fromJS)([]), function (parameters) { + var index = parameters.findIndex(function (p) {return p.get("name") === paramName;}); + if (!(value instanceof _window2.default.File)) { + value = (0, _utils.fromJSOrdered)(value); + } + return parameters.setIn([index, isXml ? "value_xml" : "value"], value); + }); + }), _defineProperty(_UPDATE_SPEC$UPDATE_U, _actions.VALIDATE_PARAMS, + + function (state, _ref2) {var pathMethod = _ref2.payload.pathMethod; + var operation = state.getIn(["resolved", "paths"].concat(_toConsumableArray(pathMethod))); + var isXml = /xml/i.test(operation.get("consumes_value")); + + return state.updateIn(["resolved", "paths"].concat(_toConsumableArray(pathMethod), ["parameters"]), (0, _immutable.fromJS)([]), function (parameters) { + return parameters.withMutations(function (parameters) { + for (var i = 0, len = parameters.count(); i < len; i++) { + var errors = (0, _utils.validateParam)(parameters.get(i), isXml); + parameters.setIn([i, "errors"], (0, _immutable.fromJS)(errors)); + } + }); + }); + }), _defineProperty(_UPDATE_SPEC$UPDATE_U, _actions.ClEAR_VALIDATE_PARAMS, + function (state, _ref3) {var pathMethod = _ref3.payload.pathMethod; + return state.updateIn(["resolved", "paths"].concat(_toConsumableArray(pathMethod), ["parameters"]), (0, _immutable.fromJS)([]), function (parameters) { + return parameters.withMutations(function (parameters) { + for (var i = 0, len = parameters.count(); i < len; i++) { + parameters.setIn([i, "errors"], (0, _immutable.fromJS)({})); + } + }); + }); + }), _defineProperty(_UPDATE_SPEC$UPDATE_U, _actions.SET_RESPONSE, + + function (state, _ref4) {var _ref4$payload = _ref4.payload,res = _ref4$payload.res,path = _ref4$payload.path,method = _ref4$payload.method; + var result = void 0; + if (res.error) { + result = Object.assign({ error: true }, res.err); + } else { + result = res; + } + + // Ensure headers + result.headers = result.headers || {}; + + var newState = state.setIn(["responses", path, method], (0, _utils.fromJSOrdered)(result)); + + // ImmutableJS messes up Blob. Needs to reset its value. + if (res.data instanceof _window2.default.Blob) { + newState = newState.setIn(["responses", path, method, "text"], res.data); + } + return newState; + }), _defineProperty(_UPDATE_SPEC$UPDATE_U, _actions.SET_REQUEST, + + function (state, _ref5) {var _ref5$payload = _ref5.payload,req = _ref5$payload.req,path = _ref5$payload.path,method = _ref5$payload.method; + return state.setIn(["requests", path, method], (0, _utils.fromJSOrdered)(req)); + }), _defineProperty(_UPDATE_SPEC$UPDATE_U, _actions.UPDATE_OPERATION_VALUE, + + function (state, _ref6) {var _ref6$payload = _ref6.payload,path = _ref6$payload.path,value = _ref6$payload.value,key = _ref6$payload.key; + return state.setIn(["resolved", "paths"].concat(_toConsumableArray(path), [key]), (0, _immutable.fromJS)(value)); + }), _defineProperty(_UPDATE_SPEC$UPDATE_U, _actions.CLEAR_RESPONSE, + + function (state, _ref7) {var _ref7$payload = _ref7.payload,path = _ref7$payload.path,method = _ref7$payload.method; + return state.deleteIn(["responses", path, method]); + }), _defineProperty(_UPDATE_SPEC$UPDATE_U, _actions.CLEAR_REQUEST, + + function (state, _ref8) {var _ref8$payload = _ref8.payload,path = _ref8$payload.path,method = _ref8$payload.method; + return state.deleteIn(["requests", path, method]); + }), _defineProperty(_UPDATE_SPEC$UPDATE_U, _actions.SET_SCHEME, + + function (state, _ref9) {var _ref9$payload = _ref9.payload,scheme = _ref9$payload.scheme,path = _ref9$payload.path,method = _ref9$payload.method; + if (path && method) { + return state.setIn(["scheme", path, method], scheme); + } + + if (!path && !method) { + return state.setIn(["scheme", "_defaultScheme"], scheme); + } + + }), _UPDATE_SPEC$UPDATE_U); + +/***/ }, +/* 181 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.execute = exports.executeRequest = exports.logRequest = exports.setRequest = exports.setResponse = exports.formatIntoYaml = exports.resolveSpec = exports.parseToJson = exports.SET_SCHEME = exports.UPDATE_RESOLVED = exports.UPDATE_OPERATION_VALUE = exports.ClEAR_VALIDATE_PARAMS = exports.CLEAR_REQUEST = exports.CLEAR_RESPONSE = exports.LOG_REQUEST = exports.SET_REQUEST = exports.SET_RESPONSE = exports.VALIDATE_PARAMS = exports.UPDATE_PARAM = exports.UPDATE_JSON = exports.UPDATE_URL = exports.UPDATE_SPEC = undefined;var _extends = Object.assign || function (target) {for (var i = 1; i < arguments.length; i++) {var source = arguments[i];for (var key in source) {if (Object.prototype.hasOwnProperty.call(source, key)) {target[key] = source[key];}}}return target;};var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) {return typeof obj;} : function (obj) {return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;};exports. + + + + + + + + + + + + + + + + + + + + + updateSpec = updateSpec;exports. + + + + + + + + + + + + + + + + + + updateResolved = updateResolved;exports. + + + + + + + updateUrl = updateUrl;exports. + + + + updateJsonSpec = updateJsonSpec;exports. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + changeParam = changeParam;exports. + + + + + + + validateParams = validateParams;exports. + + + + + + + clearValidateParams = clearValidateParams;exports. + + + + + + + changeConsumesValue = changeConsumesValue;exports. + + + + + + + changeProducesValue = changeProducesValue;exports. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + clearResponse = clearResponse;exports. + + + + + + + clearRequest = clearRequest;exports. + + + + + + + setScheme = setScheme;var _jsYaml = __webpack_require__(182);var _jsYaml2 = _interopRequireDefault(_jsYaml);var _serializeError = __webpack_require__(10);var _serializeError2 = _interopRequireDefault(_serializeError);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _objectWithoutProperties(obj, keys) {var target = {};for (var i in obj) {if (keys.indexOf(i) >= 0) continue;if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;target[i] = obj[i];}return target;} // Actions conform to FSA (flux-standard-actions) + // {type: string,payload: Any|Error, meta: obj, error: bool} + var UPDATE_SPEC = exports.UPDATE_SPEC = "spec_update_spec";var UPDATE_URL = exports.UPDATE_URL = "spec_update_url";var UPDATE_JSON = exports.UPDATE_JSON = "spec_update_json";var UPDATE_PARAM = exports.UPDATE_PARAM = "spec_update_param";var VALIDATE_PARAMS = exports.VALIDATE_PARAMS = "spec_validate_param";var SET_RESPONSE = exports.SET_RESPONSE = "spec_set_response";var SET_REQUEST = exports.SET_REQUEST = "spec_set_request";var LOG_REQUEST = exports.LOG_REQUEST = "spec_log_request";var CLEAR_RESPONSE = exports.CLEAR_RESPONSE = "spec_clear_response";var CLEAR_REQUEST = exports.CLEAR_REQUEST = "spec_clear_request";var ClEAR_VALIDATE_PARAMS = exports.ClEAR_VALIDATE_PARAMS = "spec_clear_validate_param";var UPDATE_OPERATION_VALUE = exports.UPDATE_OPERATION_VALUE = "spec_update_operation_value";var UPDATE_RESOLVED = exports.UPDATE_RESOLVED = "spec_update_resolved";var SET_SCHEME = exports.SET_SCHEME = "set_scheme";function updateSpec(spec) {if (spec instanceof Error) {return { type: UPDATE_SPEC, error: true, payload: spec };}if (typeof spec === "string") {return { type: UPDATE_SPEC, payload: spec.replace(/\t/g, " ") || "" };}return { type: UPDATE_SPEC, payload: "" };}function updateResolved(spec) {return { type: UPDATE_RESOLVED, payload: spec };}function updateUrl(url) {return { type: UPDATE_URL, payload: url };}function updateJsonSpec(json) {if (!json || (typeof json === "undefined" ? "undefined" : _typeof(json)) !== "object") {throw new Error("updateJson must only accept a simple JSON object");}return { type: UPDATE_JSON, payload: json };}var parseToJson = exports.parseToJson = function parseToJson(str) {return function (_ref) {var specActions = _ref.specActions,specSelectors = _ref.specSelectors,errActions = _ref.errActions;var specStr = specSelectors.specStr;var json = null;try {str = str || specStr();errActions.clear({ source: "parser" });json = _jsYaml2.default.safeLoad(str);} catch (e) {// TODO: push error to state + console.error(e);return errActions.newSpecErr({ source: "parser", level: "error", message: e.reason, line: e.mark && e.mark.line ? e.mark.line + 1 : undefined });}return specActions.updateJsonSpec(json);};};var resolveSpec = exports.resolveSpec = function resolveSpec(json, url) {return function (_ref2) {var specActions = _ref2.specActions,specSelectors = _ref2.specSelectors,errActions = _ref2.errActions,_ref2$fn = _ref2.fn,fetch = _ref2$fn.fetch,resolve = _ref2$fn.resolve,AST = _ref2$fn.AST;if (typeof json === "undefined") {json = specSelectors.specJson();}if (typeof url === "undefined") {url = specSelectors.url();}var getLineNumberForPath = AST.getLineNumberForPath;var specStr = specSelectors.specStr();return resolve({ fetch: fetch, spec: json, baseDoc: url }).then(function (_ref3) {var spec = _ref3.spec,errors = _ref3.errors;errActions.clear({ type: "thrown" });if (errors.length > 0) {var preparedErrors = errors.map(function (err) {console.error(err);err.line = err.fullPath ? getLineNumberForPath(specStr, err.fullPath) : null;err.path = err.fullPath ? err.fullPath.join(".") : null;err.level = "error";err.type = "thrown";err.source = "resolver";Object.defineProperty(err, "message", { enumerable: true, value: err.message });return err;});errActions.newThrownErrBatch(preparedErrors);}return specActions.updateResolved(spec);});};};var formatIntoYaml = exports.formatIntoYaml = function formatIntoYaml() {return function (_ref4) {var specActions = _ref4.specActions,specSelectors = _ref4.specSelectors;var specStr = specSelectors.specStr;var updateSpec = specActions.updateSpec;try {var yaml = _jsYaml2.default.safeDump(_jsYaml2.default.safeLoad(specStr()), { indent: 2 });updateSpec(yaml);} catch (e) {updateSpec(e);}};};function changeParam(path, paramName, value, isXml) {return { type: UPDATE_PARAM, payload: { path: path, value: value, paramName: paramName, isXml: isXml } };}function validateParams(payload) {return { type: VALIDATE_PARAMS, payload: { pathMethod: payload } };}function clearValidateParams(payload) {return { type: ClEAR_VALIDATE_PARAMS, payload: { pathMethod: payload } };}function changeConsumesValue(path, value) {return { type: UPDATE_OPERATION_VALUE, payload: { path: path, value: value, key: "consumes_value" } };}function changeProducesValue(path, value) {return { type: UPDATE_OPERATION_VALUE, payload: { path: path, value: value, key: "produces_value" } };}var setResponse = exports.setResponse = function setResponse(path, method, res) {return { payload: { path: path, method: method, res: res }, type: SET_RESPONSE };};var setRequest = exports.setRequest = function setRequest(path, method, req) {return { payload: { path: path, method: method, req: req }, type: SET_REQUEST };}; // This is for debugging, remove this comment if you depend on this action + var logRequest = exports.logRequest = function logRequest(req) {return { payload: req, type: LOG_REQUEST };}; // Actually fire the request via fn.execute + // (For debugging) and ease of testing + var executeRequest = exports.executeRequest = function executeRequest(req) {return function (_ref5) {var fn = _ref5.fn,specActions = _ref5.specActions,specSelectors = _ref5.specSelectors;var pathName = req.pathName,method = req.method;var parsedRequest = Object.assign({ contextUrl: specSelectors.url() }, req);if (pathName && method) {parsedRequest.operationId = method.toLowerCase() + "-" + pathName;}parsedRequest = fn.buildRequest(parsedRequest);specActions.setRequest(req.pathName, req.method, parsedRequest);return fn.execute(req).then(function (res) {return specActions.setResponse(req.pathName, req.method, res);}).catch(function (err) {return specActions.setResponse(req.pathName, req.method, { error: true, err: (0, _serializeError2.default)(err) });});};}; // I'm using extras as a way to inject properties into the final, `execute` method - It's not great. Anyone have a better idea? @ponelat + var execute = function execute() {var _ref6 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};var path = _ref6.path,method = _ref6.method,extras = _objectWithoutProperties(_ref6, ["path", "method"]);return function (system) {var fetch = system.fn.fetch,specSelectors = system.specSelectors,specActions = system.specActions;var spec = specSelectors.spec().toJS();var scheme = specSelectors.operationScheme(path, method);var _specSelectors$conten = specSelectors.contentTypeValues([path, method]).toJS(),requestContentType = _specSelectors$conten.requestContentType,responseContentType = _specSelectors$conten.responseContentType;var isXml = /xml/i.test(requestContentType);var parameters = specSelectors.parameterValues([path, method], isXml).toJS();return specActions.executeRequest(_extends({ fetch: fetch, spec: spec, pathName: path, method: method, parameters: parameters, requestContentType: requestContentType, scheme: scheme, responseContentType: responseContentType }, extras));};};exports.execute = execute;function clearResponse(path, method) {return { type: CLEAR_RESPONSE, payload: { path: path, method: method } };}function clearRequest(path, method) {return { type: CLEAR_REQUEST, payload: { path: path, method: method } };}function setScheme(scheme, path, method) {return { type: SET_SCHEME, payload: { scheme: scheme, path: path, method: method } };} + +/***/ }, +/* 182 */ +/***/ function(module, exports) { + + module.exports = require("js-yaml"); + +/***/ }, +/* 183 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.validateBeforeExecute = exports.canExecuteScheme = exports.operationScheme = exports.hasHost = exports.allowTryItOutFor = exports.requestFor = exports.responseFor = exports.requests = exports.responses = exports.taggedOperations = exports.operationsWithTags = exports.tagDetails = exports.tags = exports.operationsWithRootInherited = exports.schemes = exports.host = exports.basePath = exports.definitions = exports.findDefinition = exports.securityDefinitions = exports.security = exports.produces = exports.consumes = exports.operations = exports.paths = exports.semver = exports.version = exports.externalDocs = exports.info = exports.spec = exports.specResolved = exports.specJson = exports.specSource = exports.specStr = exports.url = exports.lastError = undefined;exports. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + getParameter = getParameter;exports. + + + + + + + + + + + + + + + + parameterValues = parameterValues;exports. + + + + + + + + + parametersIncludeIn = parametersIncludeIn;exports. + + + + + + + parametersIncludeType = parametersIncludeType;exports. + + + + + + + contentTypeValues = contentTypeValues;exports. + + + + + + + + + + + + + + + + + operationConsumes = operationConsumes;var _reselect = __webpack_require__(174);var _immutable = __webpack_require__(7);function _toConsumableArray(arr) {if (Array.isArray(arr)) {for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {arr2[i] = arr[i];}return arr2;} else {return Array.from(arr);}}var DEFAULT_TAG = "default";var OPERATION_METHODS = ["get", "put", "post", "delete", "options", "head", "patch"];var state = function state(_state) {return _state || (0, _immutable.Map)();};var lastError = exports.lastError = (0, _reselect.createSelector)(state, function (spec) {return spec.get("lastError");});var url = exports.url = (0, _reselect.createSelector)(state, function (spec) {return spec.get("url");});var specStr = exports.specStr = (0, _reselect.createSelector)(state, function (spec) {return spec.get("spec") || "";});var specSource = exports.specSource = (0, _reselect.createSelector)(state, function (spec) {return spec.get("specSource") || "not-editor";});var specJson = exports.specJson = (0, _reselect.createSelector)(state, function (spec) {return spec.get("json", (0, _immutable.Map)());});var specResolved = exports.specResolved = (0, _reselect.createSelector)(state, function (spec) {return spec.get("resolved", (0, _immutable.Map)());}); // Default Spec ( as an object ) + var spec = exports.spec = function spec(state) {var res = specResolved(state);if (res.count() < 1) res = specJson(state);return res;};var info = exports.info = (0, _reselect.createSelector)(spec, function (spec) {return returnSelfOrNewMap(spec && spec.get("info"));});var externalDocs = exports.externalDocs = (0, _reselect.createSelector)(spec, function (spec) {return returnSelfOrNewMap(spec && spec.get("externalDocs"));});var version = exports.version = (0, _reselect.createSelector)(info, function (info) {return info && info.get("version");});var semver = exports.semver = (0, _reselect.createSelector)(version, function (version) {return (/v?([0-9]*)\.([0-9]*)\.([0-9]*)/i.exec(version).slice(1));});var paths = exports.paths = (0, _reselect.createSelector)(spec, function (spec) {return spec.get("paths");});var operations = exports.operations = (0, _reselect.createSelector)(paths, function (paths) {if (!paths || paths.size < 1) return (0, _immutable.List)();var list = (0, _immutable.List)();if (!paths || !paths.forEach) {return (0, _immutable.List)();}paths.forEach(function (path, pathName) {if (!path || !path.forEach) {return {};}path.forEach(function (operation, method) {if (OPERATION_METHODS.indexOf(method) === -1) {return;}list = list.push((0, _immutable.fromJS)({ path: pathName, method: method, operation: operation, id: method + "-" + pathName }));});});return list;});var consumes = exports.consumes = (0, _reselect.createSelector)(spec, function (spec) {return (0, _immutable.Set)(spec.get("consumes"));});var produces = exports.produces = (0, _reselect.createSelector)(spec, function (spec) {return (0, _immutable.Set)(spec.get("produces"));});var security = exports.security = (0, _reselect.createSelector)(spec, function (spec) {return spec.get("security", (0, _immutable.List)());});var securityDefinitions = exports.securityDefinitions = (0, _reselect.createSelector)(spec, function (spec) {return spec.get("securityDefinitions");});var findDefinition = exports.findDefinition = function findDefinition(state, name) {return specResolved(state).getIn(["definitions", name], null);};var definitions = exports.definitions = (0, _reselect.createSelector)(spec, function (spec) {return spec.get("definitions") || (0, _immutable.Map)();});var basePath = exports.basePath = (0, _reselect.createSelector)(spec, function (spec) {return spec.get("basePath");});var host = exports.host = (0, _reselect.createSelector)(spec, function (spec) {return spec.get("host");});var schemes = exports.schemes = (0, _reselect.createSelector)(spec, function (spec) {return spec.get("schemes", (0, _immutable.Map)());});var operationsWithRootInherited = exports.operationsWithRootInherited = (0, _reselect.createSelector)(operations, consumes, produces, function (operations, consumes, produces) {return operations.map(function (ops) {return ops.update("operation", function (op) {if (op) {if (!_immutable.Map.isMap(op)) {return;}return op.withMutations(function (op) {if (!op.get("consumes")) {op.update("consumes", function (a) {return (0, _immutable.Set)(a).merge(consumes);});}if (!op.get("produces")) {op.update("produces", function (a) {return (0, _immutable.Set)(a).merge(produces);});}return op;});} else {// return something with Immutable methods + return (0, _immutable.Map)();}});});});var tags = exports.tags = (0, _reselect.createSelector)(spec, function (json) {return json.get("tags", (0, _immutable.List)());});var tagDetails = exports.tagDetails = function tagDetails(state, tag) {var currentTags = tags(state) || (0, _immutable.List)();return currentTags.filter(_immutable.Map.isMap).find(function (t) {return t.get("name") === tag;}, (0, _immutable.Map)());};var operationsWithTags = exports.operationsWithTags = (0, _reselect.createSelector)(operationsWithRootInherited, function (operations) {return operations.reduce(function (taggedMap, op) {var tags = (0, _immutable.Set)(op.getIn(["operation", "tags"]));if (tags.count() < 1) return taggedMap.update(DEFAULT_TAG, (0, _immutable.List)(), function (ar) {return ar.push(op);});return tags.reduce(function (res, tag) {return res.update(tag, (0, _immutable.List)(), function (ar) {return ar.push(op);});}, taggedMap);}, (0, _immutable.Map)());});var taggedOperations = exports.taggedOperations = (0, _reselect.createSelector)(state, operationsWithTags, function (state, tagMap) {return tagMap.map(function (ops, tag) {return (0, _immutable.Map)({ tagDetails: tagDetails(state, tag), operations: ops });});});var responses = exports.responses = (0, _reselect.createSelector)(state, function (state) {return state.get("responses", (0, _immutable.Map)());});var requests = exports.requests = (0, _reselect.createSelector)(state, function (state) {return state.get("requests", (0, _immutable.Map)());});var responseFor = exports.responseFor = function responseFor(state, path, method) {return responses(state).getIn([path, method], null);};var requestFor = exports.requestFor = function requestFor(state, path, method) {return requests(state).getIn([path, method], null);};var allowTryItOutFor = exports.allowTryItOutFor = function allowTryItOutFor() {// This is just a hook for now. + return true;}; // Get the parameter value by parameter name + function getParameter(state, pathMethod, name) {var params = spec(state).getIn(["paths"].concat(_toConsumableArray(pathMethod), ["parameters"]), (0, _immutable.fromJS)([]));return params.filter(function (p) {return _immutable.Map.isMap(p) && p.get("name") === name;}).first();}var hasHost = exports.hasHost = (0, _reselect.createSelector)(spec, function (spec) {var host = spec.get("host");return typeof host === "string" && host.length > 0 && host[0] !== "/";}); // Get the parameter values, that the user filled out + function parameterValues(state, pathMethod, isXml) {var params = spec(state).getIn(["paths"].concat(_toConsumableArray(pathMethod), ["parameters"]), (0, _immutable.fromJS)([]));return params.reduce(function (hash, p) {var value = isXml && p.get("in") === "body" ? p.get("value_xml") : p.get("value");return hash.set(p.get("name"), value);}, (0, _immutable.fromJS)({}));} // True if any parameter includes `in: ?` + function parametersIncludeIn(parameters) {var inValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "";if (_immutable.List.isList(parameters)) {return parameters.some(function (p) {return _immutable.Map.isMap(p) && p.get("in") === inValue;});}} // True if any parameter includes `type: ?` + function parametersIncludeType(parameters) {var typeValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "";if (_immutable.List.isList(parameters)) {return parameters.some(function (p) {return _immutable.Map.isMap(p) && p.get("type") === typeValue;});}} // Get the consumes/produces value that the user selected + function contentTypeValues(state, pathMethod) {var op = spec(state).getIn(["paths"].concat(_toConsumableArray(pathMethod)), (0, _immutable.fromJS)({}));var parameters = op.get("parameters") || new _immutable.List();var requestContentType = parametersIncludeType(parameters, "file") ? "multipart/form-data" : parametersIncludeIn(parameters, "formData") ? "application/x-www-form-urlencoded" : op.get("consumes_value");return (0, _immutable.fromJS)({ requestContentType: requestContentType, responseContentType: op.get("produces_value") });} // Get the consumes/produces by path + function operationConsumes(state, pathMethod) {return spec(state).getIn(["paths"].concat(_toConsumableArray(pathMethod), ["consumes"]), (0, _immutable.fromJS)({}));}var operationScheme = exports.operationScheme = function operationScheme(state, path, method) {var url = state.get("url");var matchResult = url.match(/^([a-z][a-z0-9+\-.]*):/);var urlScheme = Array.isArray(matchResult) ? matchResult[1] : null;return state.getIn(["scheme", path, method]) || state.getIn(["scheme", "_defaultScheme"]) || urlScheme || "http"; + }; + + var canExecuteScheme = exports.canExecuteScheme = function canExecuteScheme(state, path, method) { + return ["http", "https"].indexOf(operationScheme(state, path, method)) > -1; + }; + + var validateBeforeExecute = exports.validateBeforeExecute = function validateBeforeExecute(state, pathMethod) { + var params = spec(state).getIn(["paths"].concat(_toConsumableArray(pathMethod), ["parameters"]), (0, _immutable.fromJS)([])); + var isValid = true; + + params.forEach(function (p) { + var errors = p.get("errors"); + if (errors && errors.count()) { + isValid = false; + } + }); + + return isValid; + }; + + function returnSelfOrNewMap(obj) { + // returns obj if obj is an Immutable map, else returns a new Map + return _immutable.Map.isMap(obj) ? obj : new _immutable.Map(); + } + +/***/ }, +/* 184 */ +/***/ function(module, exports) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var updateSpec = exports.updateSpec = function updateSpec(ori, _ref) {var specActions = _ref.specActions;return function () { + ori.apply(undefined, arguments); + specActions.parseToJson.apply(specActions, arguments); + };}; + + var updateJsonSpec = exports.updateJsonSpec = function updateJsonSpec(ori, _ref2) {var specActions = _ref2.specActions;return function () { + ori.apply(undefined, arguments); + specActions.resolveSpec.apply(specActions, arguments); + };}; + + // Log the request ( just for debugging, shouldn't affect prod ) + var executeRequest = exports.executeRequest = function executeRequest(ori, _ref3) {var specActions = _ref3.specActions;return function (req) { + specActions.logRequest(req); + return ori(req); + };}; + +/***/ }, +/* 185 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = + + + function (_ref) {var getComponents = _ref.getComponents,getStore = _ref.getStore,getSystem = _ref.getSystem;var + + getComponent = rootInjects.getComponent,render = rootInjects.render,makeMappedContainer = rootInjects.makeMappedContainer; + + // getComponent should be passed into makeMappedContainer, _already_ memoized... otherwise we have a big performance hit ( think, really big ) + var memGetComponent = (0, _utils.memoize)(getComponent.bind(null, getSystem, getStore, getComponents)); + var memMakeMappedContainer = (0, _utils.memoize)(makeMappedContainer.bind(null, getSystem, getStore, memGetComponent, getComponents)); + + return { + rootInjects: { + getComponent: memGetComponent, + makeMappedContainer: memMakeMappedContainer, + render: render.bind(null, getSystem, getStore, getComponent, getComponents) } }; + + + };var _rootInjects = __webpack_require__(186);var rootInjects = _interopRequireWildcard(_rootInjects);var _utils = __webpack_require__(13);function _interopRequireWildcard(obj) {if (obj && obj.__esModule) {return obj;} else {var newObj = {};if (obj != null) {for (var key in obj) {if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];}}newObj.default = obj;return newObj;}} + +/***/ }, +/* 186 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.getComponent = exports.render = exports.makeMappedContainer = undefined;var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) {return typeof obj;} : function (obj) {return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;};var _extends = Object.assign || function (target) {for (var i = 1; i < arguments.length; i++) {var source = arguments[i];for (var key in source) {if (Object.prototype.hasOwnProperty.call(source, key)) {target[key] = source[key];}}}return target;};var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _reactDom = __webpack_require__(188);var _reactDom2 = _interopRequireDefault(_reactDom); + var _reactRedux = __webpack_require__(189); + var _omit = __webpack_require__(190);var _omit2 = _interopRequireDefault(_omit);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;} + + var SystemWrapper = function SystemWrapper(getSystem, ComponentToWrap) {return function (_Component) {_inherits(_class, _Component);function _class() {_classCallCheck(this, _class);return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));}_createClass(_class, [{ key: "render", value: function render() + { + return _react2.default.createElement(ComponentToWrap, _extends({}, getSystem(), this.props, this.context)); + } }]);return _class;}(_react.Component);}; + + + var RootWrapper = function RootWrapper(reduxStore, ComponentToWrap) {return function (_Component2) {_inherits(_class2, _Component2);function _class2() {_classCallCheck(this, _class2);return _possibleConstructorReturn(this, (_class2.__proto__ || Object.getPrototypeOf(_class2)).apply(this, arguments));}_createClass(_class2, [{ key: "render", value: function render() + { + return ( + _react2.default.createElement(_reactRedux.Provider, { store: reduxStore }, + _react2.default.createElement(ComponentToWrap, _extends({}, this.props, this.context)))); + + + } }]);return _class2;}(_react.Component);}; + + + var makeContainer = function makeContainer(getSystem, component, reduxStore) { + var wrappedWithSystem = SystemWrapper(getSystem, component, reduxStore); + var connected = (0, _reactRedux.connect)(function (state) {return { state: state };})(wrappedWithSystem); + if (reduxStore) + return RootWrapper(reduxStore, connected); + return connected; + }; + + var handleProps = function handleProps(getSystem, mapping, props, oldProps) { + for (var prop in mapping) { + var fn = mapping[prop]; + if (typeof fn === "function") + fn(props[prop], oldProps[prop], getSystem()); + } + }; + + var makeMappedContainer = exports.makeMappedContainer = function makeMappedContainer(getSystem, getStore, memGetComponent, getComponents, componentName, mapping) { + + return function (_Component3) {_inherits(_class3, _Component3); + + function _class3(props, context) {_classCallCheck(this, _class3);var _this3 = _possibleConstructorReturn(this, (_class3.__proto__ || Object.getPrototypeOf(_class3)).call(this, + props, context)); + handleProps(getSystem, mapping, props, {});return _this3; + }_createClass(_class3, [{ key: "componentWillReceiveProps", value: function componentWillReceiveProps( + + nextProps) { + handleProps(getSystem, mapping, nextProps, this.props); + } }, { key: "render", value: function render() + + { + var cleanProps = (0, _omit2.default)(this.props, mapping ? Object.keys(mapping) : []); + var Comp = memGetComponent(componentName, "root"); + return _react2.default.createElement(Comp, cleanProps); + } }]);return _class3;}(_react.Component); + + + + }; + + var render = exports.render = function render(getSystem, getStore, getComponent, getComponents, dom) { + var domNode = document.querySelector(dom); + var App = getComponent(getSystem, getStore, getComponents, "App", "root"); + _reactDom2.default.render(_react2.default.createElement(App, null), domNode); + }; + + // Render try/catch wrapper + var createClass = function createClass(component) {return _react2.default.createClass({ + render: function render() { + return component(this.props); + } });}; + + + var Fallback = function Fallback(_ref) {var name = _ref.name;return _react2.default.createElement("div", { style: { // eslint-disable-line react/prop-types + padding: "1em", + "color": "#aaa" } }, "\uD83D\uDE31 ", + _react2.default.createElement("i", null, "Could not render ", name === "t" ? "this component" : name, ", see the console."));}; + + var wrapRender = function wrapRender(component) { + var isStateless = function isStateless(component) {return !(component.prototype && component.prototype.isReactComponent);}; + + var target = isStateless(component) ? createClass(component) : component; + + var ori = target.prototype.render; + + target.prototype.render = function render() { + try {for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];} + return ori.apply(this, args); + } catch (error) { + console.error(error); // eslint-disable-line no-console + return _react2.default.createElement(Fallback, { error: error, name: target.name }); + } + }; + + return target; + }; + + + var getComponent = exports.getComponent = function getComponent(getSystem, getStore, getComponents, componentName, container) { + + if (typeof componentName !== "string") + throw new TypeError("Need a string, to fetch a component. Was given a " + (typeof componentName === "undefined" ? "undefined" : _typeof(componentName))); + + var component = getComponents(componentName); + + if (!component) { + getSystem().log.warn("Could not find component", componentName); + return null; + } + + if (!container) + return wrapRender(component); + + if (container === "root") + return makeContainer(getSystem, component, getStore()); + + // container == truthy + return makeContainer(getSystem, component); + }; + +/***/ }, +/* 187 */ +/***/ function(module, exports) { + + module.exports = require("react"); + +/***/ }, +/* 188 */ +/***/ function(module, exports) { + + module.exports = require("react-dom"); + +/***/ }, +/* 189 */ +/***/ function(module, exports) { + + module.exports = require("react-redux"); + +/***/ }, +/* 190 */ +/***/ function(module, exports, __webpack_require__) { + + var arrayMap = __webpack_require__(26), + baseClone = __webpack_require__(191), + baseUnset = __webpack_require__(227), + castPath = __webpack_require__(136), + copyObject = __webpack_require__(197), + flatRest = __webpack_require__(230), + getAllKeysIn = __webpack_require__(213); + + /** Used to compose bitmasks for cloning. */ + var CLONE_DEEP_FLAG = 1, + CLONE_FLAT_FLAG = 2, + CLONE_SYMBOLS_FLAG = 4; + + /** + * The opposite of `_.pick`; this method creates an object composed of the + * own and inherited enumerable property paths of `object` that are not omitted. + * + * **Note:** This method is considerably slower than `_.pick`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The source object. + * @param {...(string|string[])} [paths] The property paths to omit. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.omit(object, ['a', 'c']); + * // => { 'b': '2' } + */ + var omit = flatRest(function(object, paths) { + var result = {}; + if (object == null) { + return result; + } + var isDeep = false; + paths = arrayMap(paths, function(path) { + path = castPath(path, object); + isDeep || (isDeep = path.length > 1); + return path; + }); + copyObject(object, getAllKeysIn(object), result); + if (isDeep) { + result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG); + } + var length = paths.length; + while (length--) { + baseUnset(result, paths[length]); + } + return result; + }); + + module.exports = omit; + + +/***/ }, +/* 191 */ +/***/ function(module, exports, __webpack_require__) { + + var Stack = __webpack_require__(88), + arrayEach = __webpack_require__(192), + assignValue = __webpack_require__(193), + baseAssign = __webpack_require__(196), + baseAssignIn = __webpack_require__(198), + cloneBuffer = __webpack_require__(202), + copyArray = __webpack_require__(203), + copySymbols = __webpack_require__(204), + copySymbolsIn = __webpack_require__(207), + getAllKeys = __webpack_require__(211), + getAllKeysIn = __webpack_require__(213), + getTag = __webpack_require__(125), + initCloneArray = __webpack_require__(214), + initCloneByTag = __webpack_require__(215), + initCloneObject = __webpack_require__(225), + isArray = __webpack_require__(27), + isBuffer = __webpack_require__(111), + isObject = __webpack_require__(59), + keys = __webpack_require__(106); + + /** Used to compose bitmasks for cloning. */ + var CLONE_DEEP_FLAG = 1, + CLONE_FLAT_FLAG = 2, + CLONE_SYMBOLS_FLAG = 4; + + /** `Object#toString` result references. */ + var argsTag = '[object Arguments]', + arrayTag = '[object Array]', + boolTag = '[object Boolean]', + dateTag = '[object Date]', + errorTag = '[object Error]', + funcTag = '[object Function]', + genTag = '[object GeneratorFunction]', + mapTag = '[object Map]', + numberTag = '[object Number]', + objectTag = '[object Object]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + symbolTag = '[object Symbol]', + weakMapTag = '[object WeakMap]'; + + var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]', + float32Tag = '[object Float32Array]', + float64Tag = '[object Float64Array]', + int8Tag = '[object Int8Array]', + int16Tag = '[object Int16Array]', + int32Tag = '[object Int32Array]', + uint8Tag = '[object Uint8Array]', + uint8ClampedTag = '[object Uint8ClampedArray]', + uint16Tag = '[object Uint16Array]', + uint32Tag = '[object Uint32Array]'; + + /** Used to identify `toStringTag` values supported by `_.clone`. */ + var cloneableTags = {}; + cloneableTags[argsTag] = cloneableTags[arrayTag] = + cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = + cloneableTags[boolTag] = cloneableTags[dateTag] = + cloneableTags[float32Tag] = cloneableTags[float64Tag] = + cloneableTags[int8Tag] = cloneableTags[int16Tag] = + cloneableTags[int32Tag] = cloneableTags[mapTag] = + cloneableTags[numberTag] = cloneableTags[objectTag] = + cloneableTags[regexpTag] = cloneableTags[setTag] = + cloneableTags[stringTag] = cloneableTags[symbolTag] = + cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = + cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true; + cloneableTags[errorTag] = cloneableTags[funcTag] = + cloneableTags[weakMapTag] = false; + + /** + * The base implementation of `_.clone` and `_.cloneDeep` which tracks + * traversed objects. + * + * @private + * @param {*} value The value to clone. + * @param {boolean} bitmask The bitmask flags. + * 1 - Deep clone + * 2 - Flatten inherited properties + * 4 - Clone symbols + * @param {Function} [customizer] The function to customize cloning. + * @param {string} [key] The key of `value`. + * @param {Object} [object] The parent object of `value`. + * @param {Object} [stack] Tracks traversed objects and their clone counterparts. + * @returns {*} Returns the cloned value. + */ + function baseClone(value, bitmask, customizer, key, object, stack) { + var result, + isDeep = bitmask & CLONE_DEEP_FLAG, + isFlat = bitmask & CLONE_FLAT_FLAG, + isFull = bitmask & CLONE_SYMBOLS_FLAG; + + if (customizer) { + result = object ? customizer(value, key, object, stack) : customizer(value); + } + if (result !== undefined) { + return result; + } + if (!isObject(value)) { + return value; + } + var isArr = isArray(value); + if (isArr) { + result = initCloneArray(value); + if (!isDeep) { + return copyArray(value, result); + } + } else { + var tag = getTag(value), + isFunc = tag == funcTag || tag == genTag; + + if (isBuffer(value)) { + return cloneBuffer(value, isDeep); + } + if (tag == objectTag || tag == argsTag || (isFunc && !object)) { + result = (isFlat || isFunc) ? {} : initCloneObject(value); + if (!isDeep) { + return isFlat + ? copySymbolsIn(value, baseAssignIn(result, value)) + : copySymbols(value, baseAssign(result, value)); + } + } else { + if (!cloneableTags[tag]) { + return object ? value : {}; + } + result = initCloneByTag(value, tag, baseClone, isDeep); + } + } + // Check for circular references and return its corresponding clone. + stack || (stack = new Stack); + var stacked = stack.get(value); + if (stacked) { + return stacked; + } + stack.set(value, result); + + var keysFunc = isFull + ? (isFlat ? getAllKeysIn : getAllKeys) + : (isFlat ? keysIn : keys); + + var props = isArr ? undefined : keysFunc(value); + arrayEach(props || value, function(subValue, key) { + if (props) { + key = subValue; + subValue = value[key]; + } + // Recursively populate clone (susceptible to call stack limits). + assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack)); + }); + return result; + } + + module.exports = baseClone; + + +/***/ }, +/* 192 */ +/***/ function(module, exports) { + + /** + * A specialized version of `_.forEach` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns `array`. + */ + function arrayEach(array, iteratee) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (iteratee(array[index], index, array) === false) { + break; + } + } + return array; + } + + module.exports = arrayEach; + + +/***/ }, +/* 193 */ +/***/ function(module, exports, __webpack_require__) { + + var baseAssignValue = __webpack_require__(194), + eq = __webpack_require__(72); + + /** Used for built-in method references. */ + var objectProto = Object.prototype; + + /** Used to check objects for own properties. */ + var hasOwnProperty = objectProto.hasOwnProperty; + + /** + * Assigns `value` to `key` of `object` if the existing value is not equivalent + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * @private + * @param {Object} object The object to modify. + * @param {string} key The key of the property to assign. + * @param {*} value The value to assign. + */ + function assignValue(object, key, value) { + var objValue = object[key]; + if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || + (value === undefined && !(key in object))) { + baseAssignValue(object, key, value); + } + } + + module.exports = assignValue; + + +/***/ }, +/* 194 */ +/***/ function(module, exports, __webpack_require__) { + + var defineProperty = __webpack_require__(195); + + /** + * The base implementation of `assignValue` and `assignMergeValue` without + * value checks. + * + * @private + * @param {Object} object The object to modify. + * @param {string} key The key of the property to assign. + * @param {*} value The value to assign. + */ + function baseAssignValue(object, key, value) { + if (key == '__proto__' && defineProperty) { + defineProperty(object, key, { + 'configurable': true, + 'enumerable': true, + 'value': value, + 'writable': true + }); + } else { + object[key] = value; + } + } + + module.exports = baseAssignValue; + + +/***/ }, +/* 195 */ +/***/ function(module, exports, __webpack_require__) { + + var getNative = __webpack_require__(56); + + var defineProperty = (function() { + try { + var func = getNative(Object, 'defineProperty'); + func({}, '', {}); + return func; + } catch (e) {} + }()); + + module.exports = defineProperty; + + +/***/ }, +/* 196 */ +/***/ function(module, exports, __webpack_require__) { + + var copyObject = __webpack_require__(197), + keys = __webpack_require__(106); + + /** + * The base implementation of `_.assign` without support for multiple sources + * or `customizer` functions. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @returns {Object} Returns `object`. + */ + function baseAssign(object, source) { + return object && copyObject(source, keys(source), object); + } + + module.exports = baseAssign; + + +/***/ }, +/* 197 */ +/***/ function(module, exports, __webpack_require__) { + + var assignValue = __webpack_require__(193), + baseAssignValue = __webpack_require__(194); + + /** + * Copies properties of `source` to `object`. + * + * @private + * @param {Object} source The object to copy properties from. + * @param {Array} props The property identifiers to copy. + * @param {Object} [object={}] The object to copy properties to. + * @param {Function} [customizer] The function to customize copied values. + * @returns {Object} Returns `object`. + */ + function copyObject(source, props, object, customizer) { + var isNew = !object; + object || (object = {}); + + var index = -1, + length = props.length; + + while (++index < length) { + var key = props[index]; + + var newValue = customizer + ? customizer(object[key], source[key], key, object, source) + : undefined; + + if (newValue === undefined) { + newValue = source[key]; + } + if (isNew) { + baseAssignValue(object, key, newValue); + } else { + assignValue(object, key, newValue); + } + } + return object; + } + + module.exports = copyObject; + + +/***/ }, +/* 198 */ +/***/ function(module, exports, __webpack_require__) { + + var copyObject = __webpack_require__(197), + keysIn = __webpack_require__(199); + + /** + * The base implementation of `_.assignIn` without support for multiple sources + * or `customizer` functions. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @returns {Object} Returns `object`. + */ + function baseAssignIn(object, source) { + return object && copyObject(source, keysIn(source), object); + } + + module.exports = baseAssignIn; + + +/***/ }, +/* 199 */ +/***/ function(module, exports, __webpack_require__) { + + var arrayLikeKeys = __webpack_require__(107), + baseKeysIn = __webpack_require__(200), + isArrayLike = __webpack_require__(124); + + /** + * Creates an array of the own and inherited enumerable property names of `object`. + * + * **Note:** Non-object values are coerced to objects. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.keysIn(new Foo); + * // => ['a', 'b', 'c'] (iteration order is not guaranteed) + */ + function keysIn(object) { + return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object); + } + + module.exports = keysIn; + + +/***/ }, +/* 200 */ +/***/ function(module, exports, __webpack_require__) { + + var isObject = __webpack_require__(59), + isPrototype = __webpack_require__(121), + nativeKeysIn = __webpack_require__(201); + + /** Used for built-in method references. */ + var objectProto = Object.prototype; + + /** Used to check objects for own properties. */ + var hasOwnProperty = objectProto.hasOwnProperty; + + /** + * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + */ + function baseKeysIn(object) { + if (!isObject(object)) { + return nativeKeysIn(object); + } + var isProto = isPrototype(object), + result = []; + + for (var key in object) { + if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) { + result.push(key); + } + } + return result; + } + + module.exports = baseKeysIn; + + +/***/ }, +/* 201 */ +/***/ function(module, exports) { + + /** + * This function is like + * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) + * except that it includes inherited enumerable properties. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + */ + function nativeKeysIn(object) { + var result = []; + if (object != null) { + for (var key in Object(object)) { + result.push(key); + } + } + return result; + } + + module.exports = nativeKeysIn; + + +/***/ }, +/* 202 */ +/***/ function(module, exports, __webpack_require__) { + + /* WEBPACK VAR INJECTION */(function(module) {var root = __webpack_require__(24); + + /** Detect free variable `exports`. */ + var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; + + /** Detect free variable `module`. */ + var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; + + /** Detect the popular CommonJS extension `module.exports`. */ + var moduleExports = freeModule && freeModule.exports === freeExports; + + /** Built-in value references. */ + var Buffer = moduleExports ? root.Buffer : undefined, + allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined; + + /** + * Creates a clone of `buffer`. + * + * @private + * @param {Buffer} buffer The buffer to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Buffer} Returns the cloned buffer. + */ + function cloneBuffer(buffer, isDeep) { + if (isDeep) { + return buffer.slice(); + } + var length = buffer.length, + result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length); + + buffer.copy(result); + return result; + } + + module.exports = cloneBuffer; + + /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(112)(module))) + +/***/ }, +/* 203 */ +/***/ function(module, exports) { + + /** + * Copies the values of `source` to `array`. + * + * @private + * @param {Array} source The array to copy values from. + * @param {Array} [array=[]] The array to copy values to. + * @returns {Array} Returns `array`. + */ + function copyArray(source, array) { + var index = -1, + length = source.length; + + array || (array = Array(length)); + while (++index < length) { + array[index] = source[index]; + } + return array; + } + + module.exports = copyArray; + + +/***/ }, +/* 204 */ +/***/ function(module, exports, __webpack_require__) { + + var copyObject = __webpack_require__(197), + getSymbols = __webpack_require__(205); + + /** + * Copies own symbols of `source` to `object`. + * + * @private + * @param {Object} source The object to copy symbols from. + * @param {Object} [object={}] The object to copy symbols to. + * @returns {Object} Returns `object`. + */ + function copySymbols(source, object) { + return copyObject(source, getSymbols(source), object); + } + + module.exports = copySymbols; + + +/***/ }, +/* 205 */ +/***/ function(module, exports, __webpack_require__) { + + var overArg = __webpack_require__(123), + stubArray = __webpack_require__(206); + + /* Built-in method references for those with the same name as other `lodash` methods. */ + var nativeGetSymbols = Object.getOwnPropertySymbols; + + /** + * Creates an array of the own enumerable symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of symbols. + */ + var getSymbols = nativeGetSymbols ? overArg(nativeGetSymbols, Object) : stubArray; + + module.exports = getSymbols; + + +/***/ }, +/* 206 */ +/***/ function(module, exports) { + + /** + * This method returns a new empty array. + * + * @static + * @memberOf _ + * @since 4.13.0 + * @category Util + * @returns {Array} Returns the new empty array. + * @example + * + * var arrays = _.times(2, _.stubArray); + * + * console.log(arrays); + * // => [[], []] + * + * console.log(arrays[0] === arrays[1]); + * // => false + */ + function stubArray() { + return []; + } + + module.exports = stubArray; + + +/***/ }, +/* 207 */ +/***/ function(module, exports, __webpack_require__) { + + var copyObject = __webpack_require__(197), + getSymbolsIn = __webpack_require__(208); + + /** + * Copies own and inherited symbols of `source` to `object`. + * + * @private + * @param {Object} source The object to copy symbols from. + * @param {Object} [object={}] The object to copy symbols to. + * @returns {Object} Returns `object`. + */ + function copySymbolsIn(source, object) { + return copyObject(source, getSymbolsIn(source), object); + } + + module.exports = copySymbolsIn; + + +/***/ }, +/* 208 */ +/***/ function(module, exports, __webpack_require__) { + + var arrayPush = __webpack_require__(209), + getPrototype = __webpack_require__(210), + getSymbols = __webpack_require__(205), + stubArray = __webpack_require__(206); + + /* Built-in method references for those with the same name as other `lodash` methods. */ + var nativeGetSymbols = Object.getOwnPropertySymbols; + + /** + * Creates an array of the own and inherited enumerable symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of symbols. + */ + var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) { + var result = []; + while (object) { + arrayPush(result, getSymbols(object)); + object = getPrototype(object); + } + return result; + }; + + module.exports = getSymbolsIn; + + +/***/ }, +/* 209 */ +/***/ function(module, exports) { + + /** + * Appends the elements of `values` to `array`. + * + * @private + * @param {Array} array The array to modify. + * @param {Array} values The values to append. + * @returns {Array} Returns `array`. + */ + function arrayPush(array, values) { + var index = -1, + length = values.length, + offset = array.length; + + while (++index < length) { + array[offset + index] = values[index]; + } + return array; + } + + module.exports = arrayPush; + + +/***/ }, +/* 210 */ +/***/ function(module, exports, __webpack_require__) { + + var overArg = __webpack_require__(123); + + /** Built-in value references. */ + var getPrototype = overArg(Object.getPrototypeOf, Object); + + module.exports = getPrototype; + + +/***/ }, +/* 211 */ +/***/ function(module, exports, __webpack_require__) { + + var baseGetAllKeys = __webpack_require__(212), + getSymbols = __webpack_require__(205), + keys = __webpack_require__(106); + + /** + * Creates an array of own enumerable property names and symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names and symbols. + */ + function getAllKeys(object) { + return baseGetAllKeys(object, keys, getSymbols); + } + + module.exports = getAllKeys; + + +/***/ }, +/* 212 */ +/***/ function(module, exports, __webpack_require__) { + + var arrayPush = __webpack_require__(209), + isArray = __webpack_require__(27); + + /** + * The base implementation of `getAllKeys` and `getAllKeysIn` which uses + * `keysFunc` and `symbolsFunc` to get the enumerable property names and + * symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Function} keysFunc The function to get the keys of `object`. + * @param {Function} symbolsFunc The function to get the symbols of `object`. + * @returns {Array} Returns the array of property names and symbols. + */ + function baseGetAllKeys(object, keysFunc, symbolsFunc) { + var result = keysFunc(object); + return isArray(object) ? result : arrayPush(result, symbolsFunc(object)); + } + + module.exports = baseGetAllKeys; + + +/***/ }, +/* 213 */ +/***/ function(module, exports, __webpack_require__) { + + var baseGetAllKeys = __webpack_require__(212), + getSymbolsIn = __webpack_require__(208), + keysIn = __webpack_require__(199); + + /** + * Creates an array of own and inherited enumerable property names and + * symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names and symbols. + */ + function getAllKeysIn(object) { + return baseGetAllKeys(object, keysIn, getSymbolsIn); + } + + module.exports = getAllKeysIn; + + +/***/ }, +/* 214 */ +/***/ function(module, exports) { + + /** Used for built-in method references. */ + var objectProto = Object.prototype; + + /** Used to check objects for own properties. */ + var hasOwnProperty = objectProto.hasOwnProperty; + + /** + * Initializes an array clone. + * + * @private + * @param {Array} array The array to clone. + * @returns {Array} Returns the initialized clone. + */ + function initCloneArray(array) { + var length = array.length, + result = array.constructor(length); + + // Add properties assigned by `RegExp#exec`. + if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) { + result.index = array.index; + result.input = array.input; + } + return result; + } + + module.exports = initCloneArray; + + +/***/ }, +/* 215 */ +/***/ function(module, exports, __webpack_require__) { + + var cloneArrayBuffer = __webpack_require__(216), + cloneDataView = __webpack_require__(217), + cloneMap = __webpack_require__(218), + cloneRegExp = __webpack_require__(220), + cloneSet = __webpack_require__(221), + cloneSymbol = __webpack_require__(223), + cloneTypedArray = __webpack_require__(224); + + /** `Object#toString` result references. */ + var boolTag = '[object Boolean]', + dateTag = '[object Date]', + mapTag = '[object Map]', + numberTag = '[object Number]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + symbolTag = '[object Symbol]'; + + var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]', + float32Tag = '[object Float32Array]', + float64Tag = '[object Float64Array]', + int8Tag = '[object Int8Array]', + int16Tag = '[object Int16Array]', + int32Tag = '[object Int32Array]', + uint8Tag = '[object Uint8Array]', + uint8ClampedTag = '[object Uint8ClampedArray]', + uint16Tag = '[object Uint16Array]', + uint32Tag = '[object Uint32Array]'; + + /** + * Initializes an object clone based on its `toStringTag`. + * + * **Note:** This function only supports cloning values with tags of + * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. + * + * @private + * @param {Object} object The object to clone. + * @param {string} tag The `toStringTag` of the object to clone. + * @param {Function} cloneFunc The function to clone values. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the initialized clone. + */ + function initCloneByTag(object, tag, cloneFunc, isDeep) { + var Ctor = object.constructor; + switch (tag) { + case arrayBufferTag: + return cloneArrayBuffer(object); + + case boolTag: + case dateTag: + return new Ctor(+object); + + case dataViewTag: + return cloneDataView(object, isDeep); + + case float32Tag: case float64Tag: + case int8Tag: case int16Tag: case int32Tag: + case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag: + return cloneTypedArray(object, isDeep); + + case mapTag: + return cloneMap(object, isDeep, cloneFunc); + + case numberTag: + case stringTag: + return new Ctor(object); + + case regexpTag: + return cloneRegExp(object); + + case setTag: + return cloneSet(object, isDeep, cloneFunc); + + case symbolTag: + return cloneSymbol(object); + } + } + + module.exports = initCloneByTag; + + +/***/ }, +/* 216 */ +/***/ function(module, exports, __webpack_require__) { + + var Uint8Array = __webpack_require__(102); + + /** + * Creates a clone of `arrayBuffer`. + * + * @private + * @param {ArrayBuffer} arrayBuffer The array buffer to clone. + * @returns {ArrayBuffer} Returns the cloned array buffer. + */ + function cloneArrayBuffer(arrayBuffer) { + var result = new arrayBuffer.constructor(arrayBuffer.byteLength); + new Uint8Array(result).set(new Uint8Array(arrayBuffer)); + return result; + } + + module.exports = cloneArrayBuffer; + + +/***/ }, +/* 217 */ +/***/ function(module, exports, __webpack_require__) { + + var cloneArrayBuffer = __webpack_require__(216); + + /** + * Creates a clone of `dataView`. + * + * @private + * @param {Object} dataView The data view to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned data view. + */ + function cloneDataView(dataView, isDeep) { + var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer; + return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength); + } + + module.exports = cloneDataView; + + +/***/ }, +/* 218 */ +/***/ function(module, exports, __webpack_require__) { + + var addMapEntry = __webpack_require__(219), + arrayReduce = __webpack_require__(42), + mapToArray = __webpack_require__(103); + + /** Used to compose bitmasks for cloning. */ + var CLONE_DEEP_FLAG = 1; + + /** + * Creates a clone of `map`. + * + * @private + * @param {Object} map The map to clone. + * @param {Function} cloneFunc The function to clone values. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned map. + */ + function cloneMap(map, isDeep, cloneFunc) { + var array = isDeep ? cloneFunc(mapToArray(map), CLONE_DEEP_FLAG) : mapToArray(map); + return arrayReduce(array, addMapEntry, new map.constructor); + } + + module.exports = cloneMap; + + +/***/ }, +/* 219 */ +/***/ function(module, exports) { + + /** + * Adds the key-value `pair` to `map`. + * + * @private + * @param {Object} map The map to modify. + * @param {Array} pair The key-value pair to add. + * @returns {Object} Returns `map`. + */ + function addMapEntry(map, pair) { + // Don't return `map.set` because it's not chainable in IE 11. + map.set(pair[0], pair[1]); + return map; + } + + module.exports = addMapEntry; + + +/***/ }, +/* 220 */ +/***/ function(module, exports) { + + /** Used to match `RegExp` flags from their coerced string values. */ + var reFlags = /\w*$/; + + /** + * Creates a clone of `regexp`. + * + * @private + * @param {Object} regexp The regexp to clone. + * @returns {Object} Returns the cloned regexp. + */ + function cloneRegExp(regexp) { + var result = new regexp.constructor(regexp.source, reFlags.exec(regexp)); + result.lastIndex = regexp.lastIndex; + return result; + } + + module.exports = cloneRegExp; + + +/***/ }, +/* 221 */ +/***/ function(module, exports, __webpack_require__) { + + var addSetEntry = __webpack_require__(222), + arrayReduce = __webpack_require__(42), + setToArray = __webpack_require__(104); + + /** Used to compose bitmasks for cloning. */ + var CLONE_DEEP_FLAG = 1; + + /** + * Creates a clone of `set`. + * + * @private + * @param {Object} set The set to clone. + * @param {Function} cloneFunc The function to clone values. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned set. + */ + function cloneSet(set, isDeep, cloneFunc) { + var array = isDeep ? cloneFunc(setToArray(set), CLONE_DEEP_FLAG) : setToArray(set); + return arrayReduce(array, addSetEntry, new set.constructor); + } + + module.exports = cloneSet; + + +/***/ }, +/* 222 */ +/***/ function(module, exports) { + + /** + * Adds `value` to `set`. + * + * @private + * @param {Object} set The set to modify. + * @param {*} value The value to add. + * @returns {Object} Returns `set`. + */ + function addSetEntry(set, value) { + // Don't return `set.add` because it's not chainable in IE 11. + set.add(value); + return set; + } + + module.exports = addSetEntry; + + +/***/ }, +/* 223 */ +/***/ function(module, exports, __webpack_require__) { + + var Symbol = __webpack_require__(23); + + /** Used to convert symbols to primitives and strings. */ + var symbolProto = Symbol ? Symbol.prototype : undefined, + symbolValueOf = symbolProto ? symbolProto.valueOf : undefined; + + /** + * Creates a clone of the `symbol` object. + * + * @private + * @param {Object} symbol The symbol object to clone. + * @returns {Object} Returns the cloned symbol object. + */ + function cloneSymbol(symbol) { + return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {}; + } + + module.exports = cloneSymbol; + + +/***/ }, +/* 224 */ +/***/ function(module, exports, __webpack_require__) { + + var cloneArrayBuffer = __webpack_require__(216); + + /** + * Creates a clone of `typedArray`. + * + * @private + * @param {Object} typedArray The typed array to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned typed array. + */ + function cloneTypedArray(typedArray, isDeep) { + var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer; + return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length); + } + + module.exports = cloneTypedArray; + + +/***/ }, +/* 225 */ +/***/ function(module, exports, __webpack_require__) { + + var baseCreate = __webpack_require__(226), + getPrototype = __webpack_require__(210), + isPrototype = __webpack_require__(121); + + /** + * Initializes an object clone. + * + * @private + * @param {Object} object The object to clone. + * @returns {Object} Returns the initialized clone. + */ + function initCloneObject(object) { + return (typeof object.constructor == 'function' && !isPrototype(object)) + ? baseCreate(getPrototype(object)) + : {}; + } + + module.exports = initCloneObject; + + +/***/ }, +/* 226 */ +/***/ function(module, exports, __webpack_require__) { + + var isObject = __webpack_require__(59); + + /** Built-in value references. */ + var objectCreate = Object.create; + + /** + * The base implementation of `_.create` without support for assigning + * properties to the created object. + * + * @private + * @param {Object} proto The object to inherit from. + * @returns {Object} Returns the new object. + */ + var baseCreate = (function() { + function object() {} + return function(proto) { + if (!isObject(proto)) { + return {}; + } + if (objectCreate) { + return objectCreate(proto); + } + object.prototype = proto; + var result = new object; + object.prototype = undefined; + return result; + }; + }()); + + module.exports = baseCreate; + + +/***/ }, +/* 227 */ +/***/ function(module, exports, __webpack_require__) { + + var castPath = __webpack_require__(136), + last = __webpack_require__(228), + parent = __webpack_require__(229), + toKey = __webpack_require__(140); + + /** + * The base implementation of `_.unset`. + * + * @private + * @param {Object} object The object to modify. + * @param {Array|string} path The property path to unset. + * @returns {boolean} Returns `true` if the property is deleted, else `false`. + */ + function baseUnset(object, path) { + path = castPath(path, object); + object = parent(object, path); + return object == null || delete object[toKey(last(path))]; + } + + module.exports = baseUnset; + + +/***/ }, +/* 228 */ +/***/ function(module, exports) { + + /** + * Gets the last element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to query. + * @returns {*} Returns the last element of `array`. + * @example + * + * _.last([1, 2, 3]); + * // => 3 + */ + function last(array) { + var length = array == null ? 0 : array.length; + return length ? array[length - 1] : undefined; + } + + module.exports = last; + + +/***/ }, +/* 229 */ +/***/ function(module, exports, __webpack_require__) { + + var baseGet = __webpack_require__(135), + baseSlice = __webpack_require__(36); + + /** + * Gets the parent value at `path` of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} path The path to get the parent value of. + * @returns {*} Returns the parent value. + */ + function parent(object, path) { + return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1)); + } + + module.exports = parent; + + +/***/ }, +/* 230 */ +/***/ function(module, exports, __webpack_require__) { + + var flatten = __webpack_require__(231), + overRest = __webpack_require__(234), + setToString = __webpack_require__(236); + + /** + * A specialized version of `baseRest` which flattens the rest array. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @returns {Function} Returns the new function. + */ + function flatRest(func) { + return setToString(overRest(func, undefined, flatten), func + ''); + } + + module.exports = flatRest; + + +/***/ }, +/* 231 */ +/***/ function(module, exports, __webpack_require__) { + + var baseFlatten = __webpack_require__(232); + + /** + * Flattens `array` a single level deep. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to flatten. + * @returns {Array} Returns the new flattened array. + * @example + * + * _.flatten([1, [2, [3, [4]], 5]]); + * // => [1, 2, [3, [4]], 5] + */ + function flatten(array) { + var length = array == null ? 0 : array.length; + return length ? baseFlatten(array, 1) : []; + } + + module.exports = flatten; + + +/***/ }, +/* 232 */ +/***/ function(module, exports, __webpack_require__) { + + var arrayPush = __webpack_require__(209), + isFlattenable = __webpack_require__(233); + + /** + * The base implementation of `_.flatten` with support for restricting flattening. + * + * @private + * @param {Array} array The array to flatten. + * @param {number} depth The maximum recursion depth. + * @param {boolean} [predicate=isFlattenable] The function invoked per iteration. + * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks. + * @param {Array} [result=[]] The initial result value. + * @returns {Array} Returns the new flattened array. + */ + function baseFlatten(array, depth, predicate, isStrict, result) { + var index = -1, + length = array.length; + + predicate || (predicate = isFlattenable); + result || (result = []); + + while (++index < length) { + var value = array[index]; + if (depth > 0 && predicate(value)) { + if (depth > 1) { + // Recursively flatten arrays (susceptible to call stack limits). + baseFlatten(value, depth - 1, predicate, isStrict, result); + } else { + arrayPush(result, value); + } + } else if (!isStrict) { + result[result.length] = value; + } + } + return result; + } + + module.exports = baseFlatten; + + +/***/ }, +/* 233 */ +/***/ function(module, exports, __webpack_require__) { + + var Symbol = __webpack_require__(23), + isArguments = __webpack_require__(109), + isArray = __webpack_require__(27); + + /** Built-in value references. */ + var spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined; + + /** + * Checks if `value` is a flattenable `arguments` object or array. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is flattenable, else `false`. + */ + function isFlattenable(value) { + return isArray(value) || isArguments(value) || + !!(spreadableSymbol && value && value[spreadableSymbol]); + } + + module.exports = isFlattenable; + + +/***/ }, +/* 234 */ +/***/ function(module, exports, __webpack_require__) { + + var apply = __webpack_require__(235); + + /* Built-in method references for those with the same name as other `lodash` methods. */ + var nativeMax = Math.max; + + /** + * A specialized version of `baseRest` which transforms the rest array. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @param {number} [start=func.length-1] The start position of the rest parameter. + * @param {Function} transform The rest array transform. + * @returns {Function} Returns the new function. + */ + function overRest(func, start, transform) { + start = nativeMax(start === undefined ? (func.length - 1) : start, 0); + return function() { + var args = arguments, + index = -1, + length = nativeMax(args.length - start, 0), + array = Array(length); + + while (++index < length) { + array[index] = args[start + index]; + } + index = -1; + var otherArgs = Array(start + 1); + while (++index < start) { + otherArgs[index] = args[index]; + } + otherArgs[start] = transform(array); + return apply(func, this, otherArgs); + }; + } + + module.exports = overRest; + + +/***/ }, +/* 235 */ +/***/ function(module, exports) { + + /** + * A faster alternative to `Function#apply`, this function invokes `func` + * with the `this` binding of `thisArg` and the arguments of `args`. + * + * @private + * @param {Function} func The function to invoke. + * @param {*} thisArg The `this` binding of `func`. + * @param {Array} args The arguments to invoke `func` with. + * @returns {*} Returns the result of `func`. + */ + function apply(func, thisArg, args) { + switch (args.length) { + case 0: return func.call(thisArg); + case 1: return func.call(thisArg, args[0]); + case 2: return func.call(thisArg, args[0], args[1]); + case 3: return func.call(thisArg, args[0], args[1], args[2]); + } + return func.apply(thisArg, args); + } + + module.exports = apply; + + +/***/ }, +/* 236 */ +/***/ function(module, exports, __webpack_require__) { + + var baseSetToString = __webpack_require__(237), + shortOut = __webpack_require__(239); + + /** + * Sets the `toString` method of `func` to return `string`. + * + * @private + * @param {Function} func The function to modify. + * @param {Function} string The `toString` result. + * @returns {Function} Returns `func`. + */ + var setToString = shortOut(baseSetToString); + + module.exports = setToString; + + +/***/ }, +/* 237 */ +/***/ function(module, exports, __webpack_require__) { + + var constant = __webpack_require__(238), + defineProperty = __webpack_require__(195), + identity = __webpack_require__(144); + + /** + * The base implementation of `setToString` without support for hot loop shorting. + * + * @private + * @param {Function} func The function to modify. + * @param {Function} string The `toString` result. + * @returns {Function} Returns `func`. + */ + var baseSetToString = !defineProperty ? identity : function(func, string) { + return defineProperty(func, 'toString', { + 'configurable': true, + 'enumerable': false, + 'value': constant(string), + 'writable': true + }); + }; + + module.exports = baseSetToString; + + +/***/ }, +/* 238 */ +/***/ function(module, exports) { + + /** + * Creates a function that returns `value`. + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Util + * @param {*} value The value to return from the new function. + * @returns {Function} Returns the new constant function. + * @example + * + * var objects = _.times(2, _.constant({ 'a': 1 })); + * + * console.log(objects); + * // => [{ 'a': 1 }, { 'a': 1 }] + * + * console.log(objects[0] === objects[1]); + * // => true + */ + function constant(value) { + return function() { + return value; + }; + } + + module.exports = constant; + + +/***/ }, +/* 239 */ +/***/ function(module, exports) { + + /** Used to detect hot functions by number of calls within a span of milliseconds. */ + var HOT_COUNT = 800, + HOT_SPAN = 16; + + /* Built-in method references for those with the same name as other `lodash` methods. */ + var nativeNow = Date.now; + + /** + * Creates a function that'll short out and invoke `identity` instead + * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN` + * milliseconds. + * + * @private + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new shortable function. + */ + function shortOut(func) { + var count = 0, + lastCalled = 0; + + return function() { + var stamp = nativeNow(), + remaining = HOT_SPAN - (stamp - lastCalled); + + lastCalled = stamp; + if (remaining > 0) { + if (++count >= HOT_COUNT) { + return arguments[0]; + } + } else { + count = 0; + } + return func.apply(undefined, arguments); + }; + } + + module.exports = shortOut; + + +/***/ }, +/* 240 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = + + function () { + return { fn: fn }; + };var _fn = __webpack_require__(155);var fn = _interopRequireWildcard(_fn);function _interopRequireWildcard(obj) {if (obj && obj.__esModule) {return obj;} else {var newObj = {};if (obj != null) {for (var key in obj) {if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];}}newObj.default = obj;return newObj;}} + +/***/ }, +/* 241 */ +/***/ function(module, exports) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = function (_ref) {var configs = _ref.configs; + + var levels = { + "debug": 0, + "info": 1, + "log": 2, + "warn": 3, + "error": 4 }; + + + var getLevel = function getLevel(level) {return levels[level] || -1;};var + + logLevel = configs.logLevel; + var logLevelInt = getLevel(logLevel); + + function log(level) {var _console;for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {args[_key - 1] = arguments[_key];} + if (getLevel(level) >= logLevelInt) + // eslint-disable-next-line no-console + (_console = console)[level].apply(_console, args); + } + + log.warn = log.bind(null, "warn"); + log.error = log.bind(null, "error"); + log.info = log.bind(null, "info"); + log.debug = log.bind(null, "debug"); + + return { rootInjects: { log: log } }; + }; + +/***/ }, +/* 242 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = + + + function () { + return { + fn: { AST: AST }, + components: { JumpToPath: _jumpToPath2.default } }; + + };var _ast = __webpack_require__(243);var AST = _interopRequireWildcard(_ast);var _jumpToPath = __webpack_require__(252);var _jumpToPath2 = _interopRequireDefault(_jumpToPath);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _interopRequireWildcard(obj) {if (obj && obj.__esModule) {return obj;} else {var newObj = {};if (obj != null) {for (var key in obj) {if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];}}newObj.default = obj;return newObj;}} + +/***/ }, +/* 243 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.getLineNumberForPathAsync = exports.positionRangeForPathAsync = exports.pathForPositionAsync = undefined;var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) {return typeof obj;} : function (obj) {return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;};exports. + + + + + + + + + + getLineNumberForPath = getLineNumberForPath;exports. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + positionRangeForPath = positionRangeForPath;exports. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pathForPosition = pathForPosition;var _yamlJs = __webpack_require__(244);var _yamlJs2 = _interopRequireDefault(_yamlJs);var _isArray = __webpack_require__(27);var _isArray2 = _interopRequireDefault(_isArray);var _find = __webpack_require__(245);var _find2 = _interopRequireDefault(_find);var _utils = __webpack_require__(13);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}var cachedCompose = (0, _utils.memoize)(_yamlJs2.default.compose); // TODO: build a custom cache based on content + var MAP_TAG = "tag:yaml.org,2002:map";var SEQ_TAG = "tag:yaml.org,2002:seq";function getLineNumberForPath(yaml, path) {// Type check + if (typeof yaml !== "string") {throw new TypeError("yaml should be a string");}if (!(0, _isArray2.default)(path)) {throw new TypeError("path should be an array of strings");}var i = 0;var ast = cachedCompose(yaml); // simply walks the tree using current path recursively to the point that + // path is empty + return find(ast, path);function find(current, path, last) {if (!current) {// something has gone quite wrong + // return the last start_mark as a best-effort + if (last && last.start_mark) return last.start_mark.line;return 0;}if (path.length && current.tag === MAP_TAG) {for (i = 0; i < current.value.length; i++) {var pair = current.value[i];var key = pair[0];var value = pair[1];if (key.value === path[0]) {return find(value, path.slice(1), current);}if (key.value === path[0].replace(/\[.*/, "")) {// access the array at the index in the path (example: grab the 2 in "tags[2]") + var index = parseInt(path[0].match(/\[(.*)\]/)[1]);if (value.value.length === 1 && index !== 0 && !!index) {var nextVal = (0, _find2.default)(value.value[0], { value: index.toString() });} else {// eslint-disable-next-line no-redeclare + var nextVal = value.value[index];}return find(nextVal, path.slice(1), value.value);}}}if (path.length && current.tag === SEQ_TAG) {var item = current.value[path[0]];if (item && item.tag) {return find(item, path.slice(1), current.value);}}if (current.tag === MAP_TAG && !Array.isArray(last)) {return current.start_mark.line;} else {return current.start_mark.line + 1;}}} /** + * Get a position object with given + * @param {string} yaml + * YAML or JSON string + * @param {array} path + * an array of stings that constructs a + * JSON Path similiar to JSON Pointers(RFC 6901). The difference is, each + * component of path is an item of the array intead of beinf seperated with + * slash(/) in a string + */function positionRangeForPath(yaml, path) {// Type check + if (typeof yaml !== "string") {throw new TypeError("yaml should be a string");}if (!(0, _isArray2.default)(path)) {throw new TypeError("path should be an array of strings");}var invalidRange = { start: { line: -1, column: -1 }, end: { line: -1, column: -1 } };var i = 0;var ast = cachedCompose(yaml); // simply walks the tree using current path recursively to the point that + // path is empty. + return find(ast);function find(current) {if (current.tag === MAP_TAG) {for (i = 0; i < current.value.length; i++) {var pair = current.value[i];var key = pair[0];var value = pair[1];if (key.value === path[0]) {path.shift();return find(value);}}}if (current.tag === SEQ_TAG) {var item = current.value[path[0]];if (item && item.tag) {path.shift();return find(item);}} // if path is still not empty we were not able to find the node + if (path.length) {return invalidRange;}return { /* jshint camelcase: false */start: { line: current.start_mark.line, column: current.start_mark.column }, end: { line: current.end_mark.line, column: current.end_mark.column } };}} /** + * Get a JSON Path for position object in the spec + * @param {string} yaml + * YAML or JSON string + * @param {object} position + * position in the YAML or JSON string with `line` and `column` properties. + * `line` and `column` number are zero indexed + */function pathForPosition(yaml, position) {// Type check + if (typeof yaml !== "string") {throw new TypeError("yaml should be a string");}if ((typeof position === "undefined" ? "undefined" : _typeof(position)) !== "object" || typeof position.line !== "number" || typeof position.column !== "number") {throw new TypeError("position should be an object with line and column" + " properties");}try {var ast = cachedCompose(yaml);} catch (e) {console.error("Error composing AST", e);console.error("Problem area:\n", yaml.split("\n").slice(position.line - 5, position.line + 5).join("\n"));return null;}var path = [];return find(ast); /** + * recursive find function that finds the node matching the position + * @param {object} current - AST object to serach into + */function find(current) {// algorythm: + // is current a promitive? + // // finish recursion without modifying the path + // is current a hash? + // // find a key or value that position is in their range + // // if key is in range, terminate recursion with exisiting path + // // if a value is in range push the corresponding key to the path + // // andcontinue recursion + // is current an array + // // find the item that position is in it"s range and push the index + // // of the item to the path and continue recursion with that item. + var i = 0; + + if (!current || [MAP_TAG, SEQ_TAG].indexOf(current.tag) === -1) { + return path; + } + + if (current.tag === MAP_TAG) { + for (i = 0; i < current.value.length; i++) { + var pair = current.value[i]; + var key = pair[0]; + var value = pair[1]; + + if (isInRange(key)) { + return path; + } else if (isInRange(value)) { + path.push(key.value); + return find(value); + } + } + } + + if (current.tag === SEQ_TAG) { + for (i = 0; i < current.value.length; i++) { + var item = current.value[i]; + + if (isInRange(item)) { + path.push(i.toString()); + return find(item); + } + } + } + + return path; + + /** + * Determines if position is in node"s range + * @param {object} node - AST node + * @return {Boolean} true if position is in node"s range + */ + function isInRange(node) { + /* jshint camelcase: false */ + + // if node is in a single line + if (node.start_mark.line === node.end_mark.line) { + + return position.line === node.start_mark.line && + node.start_mark.column <= position.column && + node.end_mark.column >= position.column; + } + + // if position is in the same line as start_mark + if (position.line === node.start_mark.line) { + return position.column >= node.start_mark.column; + } + + // if position is in the same line as end_mark + if (position.line === node.end_mark.line) { + return position.column <= node.end_mark.column; + } + + // if position is between start and end lines return true, otherwise + // return false. + return node.start_mark.line < position.line && + node.end_mark.line > position.line; + } + } + } + + // utility fns + + + var pathForPositionAsync = exports.pathForPositionAsync = promisifySyncFn(pathForPosition); + var positionRangeForPathAsync = exports.positionRangeForPathAsync = promisifySyncFn(positionRangeForPath); + var getLineNumberForPathAsync = exports.getLineNumberForPathAsync = promisifySyncFn(getLineNumberForPath); + + function promisifySyncFn(fn) { + return function () {for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];} + return new Promise(function (resolve) {return resolve(fn.apply(undefined, args));}); + }; + } + +/***/ }, +/* 244 */ +/***/ function(module, exports) { + + module.exports = require("yaml-js"); + +/***/ }, +/* 245 */ +/***/ function(module, exports, __webpack_require__) { + + var createFind = __webpack_require__(246), + findIndex = __webpack_require__(247); + + /** + * Iterates over elements of `collection`, returning the first element + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {*} Returns the matched element, else `undefined`. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false }, + * { 'user': 'pebbles', 'age': 1, 'active': true } + * ]; + * + * _.find(users, function(o) { return o.age < 40; }); + * // => object for 'barney' + * + * // The `_.matches` iteratee shorthand. + * _.find(users, { 'age': 1, 'active': true }); + * // => object for 'pebbles' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.find(users, ['active', false]); + * // => object for 'fred' + * + * // The `_.property` iteratee shorthand. + * _.find(users, 'active'); + * // => object for 'barney' + */ + var find = createFind(findIndex); + + module.exports = find; + + +/***/ }, +/* 246 */ +/***/ function(module, exports, __webpack_require__) { + + var baseIteratee = __webpack_require__(85), + isArrayLike = __webpack_require__(124), + keys = __webpack_require__(106); + + /** + * Creates a `_.find` or `_.findLast` function. + * + * @private + * @param {Function} findIndexFunc The function to find the collection index. + * @returns {Function} Returns the new find function. + */ + function createFind(findIndexFunc) { + return function(collection, predicate, fromIndex) { + var iterable = Object(collection); + if (!isArrayLike(collection)) { + var iteratee = baseIteratee(predicate, 3); + collection = keys(collection); + predicate = function(key) { return iteratee(iterable[key], key, iterable); }; + } + var index = findIndexFunc(collection, predicate, fromIndex); + return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined; + }; + } + + module.exports = createFind; + + +/***/ }, +/* 247 */ +/***/ function(module, exports, __webpack_require__) { + + var baseFindIndex = __webpack_require__(248), + baseIteratee = __webpack_require__(85), + toInteger = __webpack_require__(249); + + /* Built-in method references for those with the same name as other `lodash` methods. */ + var nativeMax = Math.max; + + /** + * This method is like `_.find` except that it returns the index of the first + * element `predicate` returns truthy for instead of the element itself. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {number} Returns the index of the found element, else `-1`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': false }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': true } + * ]; + * + * _.findIndex(users, function(o) { return o.user == 'barney'; }); + * // => 0 + * + * // The `_.matches` iteratee shorthand. + * _.findIndex(users, { 'user': 'fred', 'active': false }); + * // => 1 + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findIndex(users, ['active', false]); + * // => 0 + * + * // The `_.property` iteratee shorthand. + * _.findIndex(users, 'active'); + * // => 2 + */ + function findIndex(array, predicate, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = fromIndex == null ? 0 : toInteger(fromIndex); + if (index < 0) { + index = nativeMax(length + index, 0); + } + return baseFindIndex(array, baseIteratee(predicate, 3), index); + } + + module.exports = findIndex; + + +/***/ }, +/* 248 */ +/***/ function(module, exports) { + + /** + * The base implementation of `_.findIndex` and `_.findLastIndex` without + * support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} predicate The function invoked per iteration. + * @param {number} fromIndex The index to search from. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function baseFindIndex(array, predicate, fromIndex, fromRight) { + var length = array.length, + index = fromIndex + (fromRight ? 1 : -1); + + while ((fromRight ? index-- : ++index < length)) { + if (predicate(array[index], index, array)) { + return index; + } + } + return -1; + } + + module.exports = baseFindIndex; + + +/***/ }, +/* 249 */ +/***/ function(module, exports, __webpack_require__) { + + var toFinite = __webpack_require__(250); + + /** + * Converts `value` to an integer. + * + * **Note:** This method is loosely based on + * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted integer. + * @example + * + * _.toInteger(3.2); + * // => 3 + * + * _.toInteger(Number.MIN_VALUE); + * // => 0 + * + * _.toInteger(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toInteger('3.2'); + * // => 3 + */ + function toInteger(value) { + var result = toFinite(value), + remainder = result % 1; + + return result === result ? (remainder ? result - remainder : result) : 0; + } + + module.exports = toInteger; + + +/***/ }, +/* 250 */ +/***/ function(module, exports, __webpack_require__) { + + var toNumber = __webpack_require__(251); + + /** Used as references for various `Number` constants. */ + var INFINITY = 1 / 0, + MAX_INTEGER = 1.7976931348623157e+308; + + /** + * Converts `value` to a finite number. + * + * @static + * @memberOf _ + * @since 4.12.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted number. + * @example + * + * _.toFinite(3.2); + * // => 3.2 + * + * _.toFinite(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toFinite(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toFinite('3.2'); + * // => 3.2 + */ + function toFinite(value) { + if (!value) { + return value === 0 ? value : 0; + } + value = toNumber(value); + if (value === INFINITY || value === -INFINITY) { + var sign = (value < 0 ? -1 : 1); + return sign * MAX_INTEGER; + } + return value === value ? value : 0; + } + + module.exports = toFinite; + + +/***/ }, +/* 251 */ +/***/ function(module, exports, __webpack_require__) { + + var isObject = __webpack_require__(59), + isSymbol = __webpack_require__(28); + + /** Used as references for various `Number` constants. */ + var NAN = 0 / 0; + + /** Used to match leading and trailing whitespace. */ + var reTrim = /^\s+|\s+$/g; + + /** Used to detect bad signed hexadecimal string values. */ + var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; + + /** Used to detect binary string values. */ + var reIsBinary = /^0b[01]+$/i; + + /** Used to detect octal string values. */ + var reIsOctal = /^0o[0-7]+$/i; + + /** Built-in method references without a dependency on `root`. */ + var freeParseInt = parseInt; + + /** + * Converts `value` to a number. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to process. + * @returns {number} Returns the number. + * @example + * + * _.toNumber(3.2); + * // => 3.2 + * + * _.toNumber(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toNumber(Infinity); + * // => Infinity + * + * _.toNumber('3.2'); + * // => 3.2 + */ + function toNumber(value) { + if (typeof value == 'number') { + return value; + } + if (isSymbol(value)) { + return NAN; + } + if (isObject(value)) { + var other = typeof value.valueOf == 'function' ? value.valueOf() : value; + value = isObject(other) ? (other + '') : other; + } + if (typeof value != 'string') { + return value === 0 ? value : +value; + } + value = value.replace(reTrim, ''); + var isBinary = reIsBinary.test(value); + return (isBinary || reIsOctal.test(value)) + ? freeParseInt(value.slice(2), isBinary ? 2 : 8) + : (reIsBadHex.test(value) ? NAN : +value); + } + + module.exports = toNumber; + + +/***/ }, +/* 252 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;} + + // Nothing by default- component can be overriden by another plugin. + var + JumpToPath = function (_React$Component) {_inherits(JumpToPath, _React$Component);function JumpToPath() {_classCallCheck(this, JumpToPath);return _possibleConstructorReturn(this, (JumpToPath.__proto__ || Object.getPrototypeOf(JumpToPath)).apply(this, arguments));}_createClass(JumpToPath, [{ key: "render", value: function render() + { + return null; + } }]);return JumpToPath;}(_react2.default.Component);exports.default = JumpToPath; + +/***/ }, +/* 253 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";var _swaggerClient = __webpack_require__(254);var _swaggerClient2 = _interopRequireDefault(_swaggerClient);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} + + module.exports = function (_ref) {var configs = _ref.configs; + return { + fn: { + fetch: _swaggerClient2.default.makeHttp(configs.preFetch, configs.postFetch), + buildRequest: _swaggerClient2.default.buildRequest, + execute: _swaggerClient2.default.execute, + resolve: _swaggerClient2.default.resolve, + serializeRes: _swaggerClient2.default.serializeRes } }; + + + }; + +/***/ }, +/* 254 */ +/***/ function(module, exports) { + + module.exports = require("swagger-client"); + +/***/ }, +/* 255 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = + + + + + function () { + return { + statePlugins: { + auth: { + reducers: _reducers2.default, + actions: actions, + selectors: selectors }, + + spec: { + wrapActions: specWrapActionReplacements } } }; + + + + };var _reducers = __webpack_require__(256);var _reducers2 = _interopRequireDefault(_reducers);var _actions = __webpack_require__(257);var actions = _interopRequireWildcard(_actions);var _selectors = __webpack_require__(258);var selectors = _interopRequireWildcard(_selectors);var _specWrapActions = __webpack_require__(259);var specWrapActionReplacements = _interopRequireWildcard(_specWrapActions);function _interopRequireWildcard(obj) {if (obj && obj.__esModule) {return obj;} else {var newObj = {};if (obj != null) {for (var key in obj) {if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];}}newObj.default = obj;return newObj;}}function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} + +/***/ }, +/* 256 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _SHOW_AUTH_POPUP$AUTH;var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}();var _immutable = __webpack_require__(7);var _utils = __webpack_require__(13); + + + var _actions = __webpack_require__(257);function _defineProperty(obj, key, value) {if (key in obj) {Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });} else {obj[key] = value;}return obj;}exports.default = (_SHOW_AUTH_POPUP$AUTH = {}, _defineProperty(_SHOW_AUTH_POPUP$AUTH, _actions.SHOW_AUTH_POPUP, + + + + + + + + function (state, _ref) {var payload = _ref.payload; + return state.set("showDefinitions", payload); + }), _defineProperty(_SHOW_AUTH_POPUP$AUTH, _actions.AUTHORIZE, + + function (state, _ref2) {var payload = _ref2.payload; + var securities = (0, _immutable.fromJS)(payload); + var map = state.get("authorized") || (0, _immutable.Map)(); + + // refactor withMutations + securities.entrySeq().forEach(function (_ref3) {var _ref4 = _slicedToArray(_ref3, 2),key = _ref4[0],security = _ref4[1]; + var type = security.getIn(["schema", "type"]); + + if (type === "apiKey") { + map = map.set(key, security); + } else if (type === "basic") { + var username = security.getIn(["value", "username"]); + var password = security.getIn(["value", "password"]); + + map = map.setIn([key, "value"], { + username: username, + header: "Basic " + (0, _utils.btoa)(username + ":" + password) }); + + + map = map.setIn([key, "schema"], security.get("schema")); + } + }); + + return state.set("authorized", map); + }), _defineProperty(_SHOW_AUTH_POPUP$AUTH, _actions.AUTHORIZE_OAUTH2, + + function (state, _ref5) {var payload = _ref5.payload;var + auth = payload.auth,token = payload.token; + var parsedAuth = void 0; + + auth.token = token; + parsedAuth = (0, _immutable.fromJS)(auth); + + return state.setIn(["authorized", parsedAuth.get("name")], parsedAuth); + }), _defineProperty(_SHOW_AUTH_POPUP$AUTH, _actions.LOGOUT, + + function (state, _ref6) {var payload = _ref6.payload; + var result = state.get("authorized").withMutations(function (authorized) { + payload.forEach(function (auth) { + authorized.delete(auth); + }); + }); + + return state.set("authorized", result); + }), _SHOW_AUTH_POPUP$AUTH); + +/***/ }, +/* 257 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.authorizeOauth2Application = exports.authorizePassword = exports.preAuthorizeOauth2 = exports.VALIDATE = exports.AUTHORIZE_OAUTH2 = exports.PRE_AUTHORIZE_OAUTH2 = exports.LOGOUT = exports.AUTHORIZE = exports.SHOW_AUTH_POPUP = undefined;exports. + + + + + + + + + + + + showDefinitions = showDefinitions;exports. + + + + + + + authorize = authorize;exports. + + + + + + + logout = logout;exports. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + authorizeOauth2 = authorizeOauth2;var _window = __webpack_require__(12);var _window2 = _interopRequireDefault(_window);var _utils = __webpack_require__(13);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}var SHOW_AUTH_POPUP = exports.SHOW_AUTH_POPUP = "show_popup";var AUTHORIZE = exports.AUTHORIZE = "authorize";var LOGOUT = exports.LOGOUT = "logout";var PRE_AUTHORIZE_OAUTH2 = exports.PRE_AUTHORIZE_OAUTH2 = "pre_authorize_oauth2";var AUTHORIZE_OAUTH2 = exports.AUTHORIZE_OAUTH2 = "authorize_oauth2";var VALIDATE = exports.VALIDATE = "validate";var scopeSeparator = " ";function showDefinitions(payload) {return { type: SHOW_AUTH_POPUP, payload: payload };}function authorize(payload) {return { type: AUTHORIZE, payload: payload };}function logout(payload) {return { type: LOGOUT, payload: payload };}var preAuthorizeOauth2 = exports.preAuthorizeOauth2 = function preAuthorizeOauth2(payload) {return function (_ref) {var authActions = _ref.authActions,errActions = _ref.errActions;var auth = payload.auth,token = payload.token,isValid = payload.isValid;var schema = auth.schema,name = auth.name;var flow = schema.get("flow"); // remove oauth2 property from window after redirect from authentication + delete _window2.default.swaggerUIRedirectOauth2;if (flow !== "accessCode" && !isValid) {errActions.newAuthErr({ authId: name, source: "auth", level: "warning", message: "Authorization may be unsafe, passed state was changed in server Passed state wasn't returned from auth server" });}if (token.error) {errActions.newAuthErr({ authId: name, source: "auth", level: "error", message: JSON.stringify(token) });return;}authActions.authorizeOauth2({ auth: auth, token: token });};};function authorizeOauth2(payload) {return { + type: AUTHORIZE_OAUTH2, + payload: payload }; + + } + + var authorizePassword = exports.authorizePassword = function authorizePassword(auth) {return function (_ref2) {var fn = _ref2.fn,authActions = _ref2.authActions,errActions = _ref2.errActions;var + schema = auth.schema,name = auth.name,username = auth.username,password = auth.password,passwordType = auth.passwordType,clientId = auth.clientId,clientSecret = auth.clientSecret; + var req = { + url: schema.get("tokenUrl"), + method: "post", + headers: { + "content-type": "application/x-www-form-urlencoded" }, + + query: { + grant_type: "password", + username: username, + password: password, + scopes: encodeURIComponent(auth.scopes.join(scopeSeparator)) } }; + + + + if (passwordType === "basic") { + req.headers.authorization = "Basic " + (0, _utils.btoa)(clientId + ":" + clientSecret); + } else if (passwordType === "request") { + req.query = Object.assign(req.query, { client_id: clientId, client_secret: clientSecret }); + } + return fn.fetch(req). + then(function (response) { + var token = JSON.parse(response.data); + var error = token && (token.error || ""); + var parseError = token && (token.parseError || ""); + + if (!response.ok) { + errActions.newAuthErr({ + authId: name, + level: "error", + source: "auth", + message: response.statusText }); + + return; + } + + if (error || parseError) { + errActions.newAuthErr({ + authId: name, + level: "error", + source: "auth", + message: JSON.stringify(token) }); + + return; + } + + authActions.authorizeOauth2({ auth: auth, token: token }); + }). + catch(function (err) {errActions.newAuthErr(err);}); + };}; + + var authorizeOauth2Application = exports.authorizeOauth2Application = function authorizeOauth2Application(auth) {return function (_ref3) {var fn = _ref3.fn,authActions = _ref3.authActions,errActions = _ref3.errActions;var + schema = auth.schema,scopes = auth.scopes,name = auth.name,clientId = auth.clientId,clientSecret = auth.clientSecret; + + fn.fetch(schema.get("tokenUrl"), { + method: "post", headers: { + "Accept": "application/json, text/plain, */*", + "Content-Type": "application/x-www-form-urlencoded" }, + + body: "grant_type=client_credentials" + + "&client_id=" + encodeURIComponent(clientId) + + "&client_secret=" + encodeURIComponent(clientSecret) + + "&scope=" + encodeURIComponent(scopes.join(scopeSeparator)) }). + + then(function (response) { + if (!response.ok) { + errActions.newAuthErr({ + authId: name, + level: "error", + source: "auth", + message: response.statusText }); + + return; + } else { + response.json(). + then(function (json) { + authActions.authorizeOauth2({ auth: auth, token: json }); + }); + } + }). + catch(function (err) {errActions.newAuthErr(err);}); + };}; + +/***/ }, +/* 258 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.isAuthorized = exports.authorized = exports.getDefinitionsByNames = exports.definitionsToAuthorize = exports.shownDefinitions = undefined;var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}();var _reselect = __webpack_require__(174); + var _immutable = __webpack_require__(7); + + var state = function state(_state) {return _state;}; + + var shownDefinitions = exports.shownDefinitions = (0, _reselect.createSelector)( + state, + function (auth) {return auth.get("showDefinitions");}); + + + var definitionsToAuthorize = exports.definitionsToAuthorize = (0, _reselect.createSelector)( + state, + function () {return function (_ref) {var specSelectors = _ref.specSelectors; + var definitions = specSelectors.securityDefinitions(); + var list = (0, _immutable.List)(); + + //todo refactor + definitions.entrySeq().forEach(function (_ref2) {var _ref3 = _slicedToArray(_ref2, 2),key = _ref3[0],val = _ref3[1]; + var map = (0, _immutable.Map)(); + + map = map.set(key, val); + list = list.push(map); + }); + + return list; + };}); + + + + var getDefinitionsByNames = exports.getDefinitionsByNames = function getDefinitionsByNames(state, securities) {return function (_ref4) {var specSelectors = _ref4.specSelectors; + var securityDefinitions = specSelectors.securityDefinitions(); + var result = (0, _immutable.List)(); + + securities.valueSeq().forEach(function (names) { + var map = (0, _immutable.Map)(); + names.entrySeq().forEach(function (_ref5) {var _ref6 = _slicedToArray(_ref5, 2),name = _ref6[0],scopes = _ref6[1]; + var definition = securityDefinitions.get(name); + var allowedScopes = void 0; + + if (definition.get("type") === "oauth2" && scopes.size) { + allowedScopes = definition.get("scopes"); + + allowedScopes.keySeq().forEach(function (key) { + if (!scopes.contains(key)) { + allowedScopes = allowedScopes.delete(key); + } + }); + + definition = definition.set("allowedScopes", allowedScopes); + } + + map = map.set(name, definition); + }); + + result = result.push(map); + }); + + return result; + };}; + + var authorized = exports.authorized = (0, _reselect.createSelector)( + state, + function (auth) {return auth.get("authorized") || (0, _immutable.Map)();}); + + + + var isAuthorized = exports.isAuthorized = function isAuthorized(state, securities) {return function (_ref7) {var authSelectors = _ref7.authSelectors; + var authorized = authSelectors.authorized(); + + if (!_immutable.List.isList(securities)) { + return null; + } + + return !!securities.toJS().filter(function (security) { + var isAuthorized = true; + + return Object.keys(security).map(function (key) { + return !isAuthorized || !!authorized.get(key); + }).indexOf(false) === -1; + }).length; + };}; + +/***/ }, +/* 259 */ +/***/ function(module, exports) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _extends = Object.assign || function (target) {for (var i = 1; i < arguments.length; i++) {var source = arguments[i];for (var key in source) {if (Object.prototype.hasOwnProperty.call(source, key)) {target[key] = source[key];}}}return target;}; // Add security to the final `execute` call ( via `extras` ) + var execute = exports.execute = function execute(oriAction, _ref) {var authSelectors = _ref.authSelectors,specSelectors = _ref.specSelectors;return function (_ref2) {var path = _ref2.path,method = _ref2.method,operation = _ref2.operation,extras = _ref2.extras; + var securities = { + authorized: authSelectors.authorized() && authSelectors.authorized().toJS(), + definitions: specSelectors.securityDefinitions() && specSelectors.securityDefinitions().toJS(), + specSecurity: specSelectors.security() && specSelectors.security().toJS() }; + + + return oriAction(_extends({ path: path, method: method, operation: operation, securities: securities }, extras)); + };}; + +/***/ }, +/* 260 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = + + + function () { + return { + fn: { shallowEqualKeys: _utils.shallowEqualKeys, transformPathToArray: _pathTranslator.transformPathToArray } }; + + };var _utils = __webpack_require__(13);var _pathTranslator = __webpack_require__(261); + +/***/ }, +/* 261 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports. + + transformPathToArray = transformPathToArray;var _get = __webpack_require__(134);var _get2 = _interopRequireDefault(_get);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function transformPathToArray(property, jsSpec) { + if (property.slice(0, 9) === "instance.") { + var str = property.slice(9); + } else {// eslint-disable-next-line no-redeclare + var str = property; + } + + var pathArr = []; + + str. + split("."). + map(function (item) { + // "key[0]" becomes ["key", "0"] + if (item.includes("[")) { + var index = parseInt(item.match(/\[(.*)\]/)[1]); + var keyName = item.slice(0, item.indexOf("[")); + return [keyName, index.toString()]; + } else { + return item; + } + }). + reduce(function (a, b) { + // flatten! + return a.concat(b); + }, []). + concat([""]) // add an empty item into the array, so we don't get stuck with something in our buffer below + .reduce(function (buffer, curr) { + var obj = pathArr.length ? (0, _get2.default)(jsSpec, pathArr) : jsSpec; + + if ((0, _get2.default)(obj, makeAccessArray(buffer, curr))) { + if (buffer.length) { + pathArr.push(buffer); + } + if (curr.length) { + pathArr.push(curr); + } + return ""; + } else { + // attach key to buffer + return "" + buffer + (buffer.length ? "." : "") + curr; + } + }, ""); + + if (typeof (0, _get2.default)(jsSpec, pathArr) !== "undefined") { + return pathArr; + } else { + // if our path is not correct (there is no value at the path), + // return null + return null; + } + } + + function makeAccessArray(buffer, curr) { + var arr = []; + + if (buffer.length) { + arr.push(buffer); + } + + if (curr.length) { + arr.push(curr); + } + + return arr; + } + +/***/ }, +/* 262 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = + + SplitPaneModePlugin;var _components = __webpack_require__(263);var components = _interopRequireWildcard(_components);function _interopRequireWildcard(obj) {if (obj && obj.__esModule) {return obj;} else {var newObj = {};if (obj != null) {for (var key in obj) {if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];}}newObj.default = obj;return newObj;}}function SplitPaneModePlugin() { + return { + // statePlugins: { + // layout: { + // actions, + // selectors, + // } + // }, + + components: components }; + + } + +/***/ }, +/* 263 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";var _utils = __webpack_require__(13); + + var request = __webpack_require__(264); + + request.keys().forEach(function (key) { + if (key === "./index.js") { + return; + } + + // if( key.slice(2).indexOf("/") > -1) { + // // skip files in subdirs + // return + // } + + var mod = request(key); + module.exports[(0, _utils.pascalCaseFilename)(key)] = mod.default ? mod.default : mod; + }); + +/***/ }, +/* 264 */ +/***/ function(module, exports, __webpack_require__) { + + var map = { + "./index.js": 263, + "./split-pane-mode.jsx": 265 + }; + function webpackContext(req) { + return __webpack_require__(webpackContextResolve(req)); + }; + function webpackContextResolve(req) { + return map[req] || (function() { throw new Error("Cannot find module '" + req + "'.") }()); + }; + webpackContext.keys = function webpackContextKeys() { + return Object.keys(map); + }; + webpackContext.resolve = webpackContextResolve; + module.exports = webpackContext; + webpackContext.id = 264; + + +/***/ }, +/* 265 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _reactSplitPane = __webpack_require__(266);var _reactSplitPane2 = _interopRequireDefault(_reactSplitPane); + __webpack_require__(267);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;} + + var MODE_KEY = ["split-pane-mode"]; + var MODE_LEFT = "left"; + var MODE_RIGHT = "right"; + var MODE_BOTH = "both"; // or anything other than left/right + var + SplitPaneMode = function (_React$Component) {_inherits(SplitPaneMode, _React$Component);function SplitPaneMode() {var _ref;var _temp, _this, _ret;_classCallCheck(this, SplitPaneMode);for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = SplitPaneMode.__proto__ || Object.getPrototypeOf(SplitPaneMode)).call.apply(_ref, [this].concat(args))), _this), _this. + + + + + + + + + + + + + + + + onDragFinished = function () {var _this$props = + _this.props,threshold = _this$props.threshold,layoutActions = _this$props.layoutActions;var _this$refs$splitPane$ = + _this.refs.splitPane.state,position = _this$refs$splitPane$.position,draggedSize = _this$refs$splitPane$.draggedSize; + _this.draggedSize = draggedSize; + + var nearLeftEdge = position <= threshold; + var nearRightEdge = draggedSize <= threshold; + + layoutActions. + changeMode(MODE_KEY, + nearLeftEdge ? + MODE_RIGHT : nearRightEdge ? + MODE_LEFT : MODE_BOTH); + + }, _this. + + sizeFromMode = function (mode, defaultSize) { + if (mode === MODE_LEFT) { + _this.draggedSize = null; + return "0px"; + } else if (mode === MODE_RIGHT) { + _this.draggedSize = null; + return "100%"; + } + // mode === "both" + return _this.draggedSize || defaultSize; + }, _temp), _possibleConstructorReturn(_this, _ret);}_createClass(SplitPaneMode, [{ key: "render", value: function render() + + {var _props = + this.props,children = _props.children,layoutSelectors = _props.layoutSelectors; + + var mode = layoutSelectors.whatMode(MODE_KEY); + var left = mode === MODE_RIGHT ? _react2.default.createElement("noscript", null) : children[0]; + var right = mode === MODE_LEFT ? _react2.default.createElement("noscript", null) : children[1]; + var size = this.sizeFromMode(mode, "50%"); + + return ( + _react2.default.createElement(_reactSplitPane2.default, { + disabledClass: "", + ref: "splitPane", + split: "vertical", + defaultSize: "50%", + primary: "second", + minSize: 0, + size: size, + onDragFinished: this.onDragFinished, + allowResize: mode !== MODE_LEFT && mode !== MODE_RIGHT, + resizerStyle: { "flex": "0 0 auto", "position": "relative" } }, + + left, + right)); + + + } }]);return SplitPaneMode;}(_react2.default.Component);SplitPaneMode.propTypes = { threshold: _react.PropTypes.number, children: _react.PropTypes.array, layoutSelectors: _react.PropTypes.object.isRequired, layoutActions: _react.PropTypes.object.isRequired };SplitPaneMode.defaultProps = { threshold: 100, // in pixels + children: [] };exports.default = SplitPaneMode; + +/***/ }, +/* 266 */ +/***/ function(module, exports) { + + module.exports = require("react-split-pane"); + +/***/ }, +/* 267 */ +/***/ function(module, exports) { + + // removed by extract-text-webpack-plugin + +/***/ }, +/* 268 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = + + + + + downloadUrlPlugin;var _reselect = __webpack_require__(174);var _immutable = __webpack_require__(7); /* global Promise */function downloadUrlPlugin(toolbox) {var + fn = toolbox.fn; + + var actions = { + download: function download(url) {return function (_ref) {var errActions = _ref.errActions,specSelectors = _ref.specSelectors,specActions = _ref.specActions;var + fetch = fn.fetch; + url = url || specSelectors.url(); + specActions.updateLoadingStatus("loading"); + fetch({ + url: url, + loadSpec: true, + credentials: "same-origin", + headers: { + "Accept": "application/json,*/*" } }). + + then(next, next); + + function next(res) { + if (res instanceof Error || res.status >= 400) { + specActions.updateLoadingStatus("failed"); + return errActions.newThrownErr(new Error(res.statusText + " " + url)); + } + specActions.updateLoadingStatus("success"); + specActions.updateSpec(res.text); + specActions.updateUrl(url); + } + + };}, + + updateLoadingStatus: function updateLoadingStatus(status) { + var enums = [null, "loading", "failed", "success", "failedConfig"]; + if (enums.indexOf(status) === -1) { + console.error("Error: " + status + " is not one of " + JSON.stringify(enums)); + } + + return { + type: "spec_update_loading_status", + payload: status }; + + } }; + + + var reducers = { + "spec_update_loading_status": function spec_update_loading_status(state, action) { + return typeof action.payload === "string" ? + state.set("loadingStatus", action.payload) : + state; + } }; + + + var selectors = { + loadingStatus: (0, _reselect.createSelector)( + function (state) { + return state || (0, _immutable.Map)(); + }, + function (spec) {return spec.get("loadingStatus") || null;}) }; + + + + return { + statePlugins: { + spec: { actions: actions, reducers: reducers, selectors: selectors } } }; + + + } + +/***/ }, +/* 269 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + App = function (_React$Component) {_inherits(App, _React$Component);function App() {_classCallCheck(this, App);return _possibleConstructorReturn(this, (App.__proto__ || Object.getPrototypeOf(App)).apply(this, arguments));}_createClass(App, [{ key: "getLayout", value: function getLayout() + + {var _props = + this.props,getComponent = _props.getComponent,layoutSelectors = _props.layoutSelectors; + var layoutName = layoutSelectors.current(); + var Component = getComponent(layoutName, true); + return Component ? Component : function () {return _react2.default.createElement("h1", null, " No layout defined for \"", layoutName, "\" ");}; + } }, { key: "render", value: function render() + + { + var Layout = this.getLayout(); + + return ( + _react2.default.createElement(Layout, null)); + + } }]);return App;}(_react2.default.Component);exports.default = App; + + + App.propTypes = { + getComponent: _react.PropTypes.func.isRequired, + layoutSelectors: _react.PropTypes.object.isRequired }; + + + App.defaultProps = {}; + +/***/ }, +/* 270 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + AuthorizationPopup = function (_React$Component) {_inherits(AuthorizationPopup, _React$Component);function AuthorizationPopup() {var _ref;var _temp, _this, _ret;_classCallCheck(this, AuthorizationPopup);for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = AuthorizationPopup.__proto__ || Object.getPrototypeOf(AuthorizationPopup)).call.apply(_ref, [this].concat(args))), _this), _this. + close = function () {var + authActions = _this.props.authActions; + + authActions.showDefinitions(false); + }, _temp), _possibleConstructorReturn(_this, _ret);}_createClass(AuthorizationPopup, [{ key: "render", value: function render() + + {var _props = + this.props,authSelectors = _props.authSelectors,authActions = _props.authActions,getComponent = _props.getComponent,errSelectors = _props.errSelectors,specSelectors = _props.specSelectors,AST = _props.fn.AST; + var definitions = authSelectors.shownDefinitions(); + var Auths = getComponent("auths"); + + return ( + _react2.default.createElement("div", { className: "dialog-ux" }, + _react2.default.createElement("div", { className: "backdrop-ux" }), + _react2.default.createElement("div", { className: "modal-ux" }, + _react2.default.createElement("div", { className: "modal-dialog-ux" }, + _react2.default.createElement("div", { className: "modal-ux-inner" }, + _react2.default.createElement("div", { className: "modal-ux-header" }, + _react2.default.createElement("h3", null, "Available authorizations"), + _react2.default.createElement("button", { type: "button", className: "close-modal", onClick: this.close }, + _react2.default.createElement("svg", { width: "20", height: "20" }, + _react2.default.createElement("use", { xlinkHref: "#close" })))), + + + + _react2.default.createElement("div", { className: "modal-ux-content" }, + + + definitions.valueSeq().map(function (definition, key) { + return _react2.default.createElement(Auths, { key: key, + AST: AST, + definitions: definition, + getComponent: getComponent, + errSelectors: errSelectors, + authSelectors: authSelectors, + authActions: authActions, + specSelectors: specSelectors }); + }))))))); + + + + + + + + } }]);return AuthorizationPopup;}(_react2.default.Component);AuthorizationPopup. + + propTypes = { + fn: _react.PropTypes.object.isRequired, + getComponent: _react.PropTypes.func.isRequired, + authSelectors: _react.PropTypes.object.isRequired, + specSelectors: _react.PropTypes.object.isRequired, + errSelectors: _react.PropTypes.object.isRequired, + authActions: _react.PropTypes.object.isRequired };exports.default = AuthorizationPopup; + +/***/ }, +/* 271 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + AuthorizeBtn = function (_React$Component) {_inherits(AuthorizeBtn, _React$Component);function AuthorizeBtn() {var _ref;var _temp, _this, _ret;_classCallCheck(this, AuthorizeBtn);for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = AuthorizeBtn.__proto__ || Object.getPrototypeOf(AuthorizeBtn)).call.apply(_ref, [this].concat(args))), _this), _this. + + + + + onClick = function () {var _this$props = + _this.props,authActions = _this$props.authActions,authSelectors = _this$props.authSelectors; + var definitions = authSelectors.definitionsToAuthorize(); + + authActions.showDefinitions(definitions); + }, _temp), _possibleConstructorReturn(_this, _ret);}_createClass(AuthorizeBtn, [{ key: "render", value: function render() + + {var _props = + this.props,authSelectors = _props.authSelectors,getComponent = _props.getComponent; + //must be moved out of button component + var AuthorizationPopup = getComponent("authorizationPopup", true); + var showPopup = !!authSelectors.shownDefinitions(); + var isAuthorized = !!authSelectors.authorized().size; + + return ( + _react2.default.createElement("div", { className: "auth-wrapper" }, + _react2.default.createElement("button", { className: isAuthorized ? "btn authorize locked" : "btn authorize unlocked", onClick: this.onClick }, + _react2.default.createElement("span", null, "Authorize"), + _react2.default.createElement("svg", { width: "20", height: "20" }, + _react2.default.createElement("use", { xlinkHref: isAuthorized ? "#locked" : "#unlocked" }))), + + + showPopup && _react2.default.createElement(AuthorizationPopup, null))); + + + } }]);return AuthorizeBtn;}(_react2.default.Component);AuthorizeBtn.propTypes = { className: _react.PropTypes.string };AuthorizeBtn. + + + propTypes = { + getComponent: _react.PropTypes.func.isRequired, + authSelectors: _react.PropTypes.object.isRequired, + errActions: _react.PropTypes.object.isRequired, + authActions: _react.PropTypes.object.isRequired };exports.default = AuthorizeBtn; + +/***/ }, +/* 272 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _reactImmutableProptypes = __webpack_require__(273);var _reactImmutableProptypes2 = _interopRequireDefault(_reactImmutableProptypes);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + AuthorizeOperationBtn = function (_React$Component) {_inherits(AuthorizeOperationBtn, _React$Component);function AuthorizeOperationBtn() {var _ref;var _temp, _this, _ret;_classCallCheck(this, AuthorizeOperationBtn);for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = AuthorizeOperationBtn.__proto__ || Object.getPrototypeOf(AuthorizeOperationBtn)).call.apply(_ref, [this].concat(args))), _this), _this. + onClick = function (e) { + e.stopPropagation();var _this$props = + + _this.props,security = _this$props.security,authActions = _this$props.authActions,authSelectors = _this$props.authSelectors; + var definitions = authSelectors.getDefinitionsByNames(security); + + authActions.showDefinitions(definitions); + }, _temp), _possibleConstructorReturn(_this, _ret);}_createClass(AuthorizeOperationBtn, [{ key: "render", value: function render() + + {var _props = + this.props,security = _props.security,authSelectors = _props.authSelectors; + + var isAuthorized = authSelectors.isAuthorized(security); + + if (isAuthorized === null) { + return null; + } + + return ( + _react2.default.createElement("button", { className: isAuthorized ? "authorization__btn locked" : "authorization__btn unlocked", onClick: this.onClick }, + _react2.default.createElement("svg", { width: "20", height: "20" }, + _react2.default.createElement("use", { xlinkHref: isAuthorized ? "#locked" : "#unlocked" })))); + + + + + } }]);return AuthorizeOperationBtn;}(_react2.default.Component);AuthorizeOperationBtn. + + propTypes = { + authSelectors: _react.PropTypes.object.isRequired, + authActions: _react.PropTypes.object.isRequired, + security: _reactImmutableProptypes2.default.iterable.isRequired };exports.default = AuthorizeOperationBtn; + +/***/ }, +/* 273 */ +/***/ function(module, exports) { + + module.exports = require("react-immutable-proptypes"); + +/***/ }, +/* 274 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _reactImmutableProptypes = __webpack_require__(273);var _reactImmutableProptypes2 = _interopRequireDefault(_reactImmutableProptypes);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _defineProperty(obj, key, value) {if (key in obj) {Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });} else {obj[key] = value;}return obj;}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + Auths = function (_React$Component) {_inherits(Auths, _React$Component); + + + + + + + + + function Auths(props, context) {_classCallCheck(this, Auths);var _this = _possibleConstructorReturn(this, (Auths.__proto__ || Object.getPrototypeOf(Auths)).call(this, + props, context));_this. + + + + + onAuthChange = function (auth) {var + name = auth.name; + + _this.setState(_defineProperty({}, name, auth)); + };_this. + + submitAuth = function (e) { + e.preventDefault();var + + authActions = _this.props.authActions; + + authActions.authorize(_this.state); + };_this. + + logoutClick = function (e) { + e.preventDefault();var _this$props = + + _this.props,authActions = _this$props.authActions,definitions = _this$props.definitions; + var auths = definitions.map(function (val, key) { + return key; + }).toArray(); + + authActions.logout(auths); + };_this.state = {};return _this;}_createClass(Auths, [{ key: "render", value: function render() + + {var _this2 = this;var _props = + this.props,definitions = _props.definitions,getComponent = _props.getComponent,authSelectors = _props.authSelectors,errSelectors = _props.errSelectors; + var ApiKeyAuth = getComponent("apiKeyAuth"); + var BasicAuth = getComponent("basicAuth"); + var Oauth2 = getComponent("oauth2", true); + var Button = getComponent("Button"); + + var authorized = authSelectors.authorized(); + + var authorizedAuth = definitions.filter(function (definition, key) { + return !!authorized.get(key); + }); + + var nonOauthDefinitions = definitions.filter(function (schema) {return schema.get("type") !== "oauth2";}); + var oauthDefinitions = definitions.filter(function (schema) {return schema.get("type") === "oauth2";}); + + return ( + _react2.default.createElement("div", { className: "auth-container" }, + + !!nonOauthDefinitions.size && _react2.default.createElement("form", { onSubmit: this.submitAuth }, + + nonOauthDefinitions.map(function (schema, name) { + var type = schema.get("type"); + var authEl = void 0; + + switch (type) { + case "apiKey":authEl = _react2.default.createElement(ApiKeyAuth, { key: name, + schema: schema, + name: name, + errSelectors: errSelectors, + authorized: authorized, + getComponent: getComponent, + onChange: _this2.onAuthChange }); + break; + case "basic":authEl = _react2.default.createElement(BasicAuth, { key: name, + schema: schema, + name: name, + errSelectors: errSelectors, + authorized: authorized, + getComponent: getComponent, + onChange: _this2.onAuthChange }); + break; + default:authEl = _react2.default.createElement("div", { key: name }, "Unknown security definition type ", type);} + + + return _react2.default.createElement("div", { key: name + "-jump" }, + authEl); + + + }).toArray(), + + _react2.default.createElement("div", { className: "auth-btn-wrapper" }, + + nonOauthDefinitions.size === authorizedAuth.size ? _react2.default.createElement(Button, { className: "btn modal-btn auth", onClick: this.logoutClick }, "Logout") : + _react2.default.createElement(Button, { type: "submit", className: "btn modal-btn auth authorize" }, "Authorize"))), + + + + + + + oauthDefinitions && oauthDefinitions.size ? _react2.default.createElement("div", null, + _react2.default.createElement("div", { className: "scope-def" }, + _react2.default.createElement("p", null, "Scopes are used to grant an application different levels of access to data on behalf of the end user. Each API may declare one or more scopes."), + _react2.default.createElement("p", null, "API requires the following scopes. Select which ones you want to grant to Swagger UI.")), + + + definitions.filter(function (schema) {return schema.get("type") === "oauth2";}). + map(function (schema, name) { + return _react2.default.createElement("div", { key: name }, + _react2.default.createElement(Oauth2, { authorized: authorized, + schema: schema, + name: name })); + + }). + toArray()) : + + null)); + + + + + } }]);return Auths;}(_react2.default.Component);Auths.propTypes = { definitions: _react.PropTypes.object.isRequired, getComponent: _react.PropTypes.func.isRequired, authSelectors: _react.PropTypes.object.isRequired, authActions: _react.PropTypes.object.isRequired, specSelectors: _react.PropTypes.object.isRequired };Auths. + + propTypes = { + errSelectors: _react.PropTypes.object.isRequired, + getComponent: _react.PropTypes.func.isRequired, + authSelectors: _react.PropTypes.object.isRequired, + specSelectors: _react.PropTypes.object.isRequired, + authActions: _react.PropTypes.object.isRequired, + definitions: _reactImmutableProptypes2.default.iterable.isRequired };exports.default = Auths; + +/***/ }, +/* 275 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + AuthError = function (_React$Component) {_inherits(AuthError, _React$Component);function AuthError() {_classCallCheck(this, AuthError);return _possibleConstructorReturn(this, (AuthError.__proto__ || Object.getPrototypeOf(AuthError)).apply(this, arguments));}_createClass(AuthError, [{ key: "render", value: function render() + + + + + + {var + error = this.props.error; + + var level = error.get("level"); + var message = error.get("message"); + var source = error.get("source"); + + return ( + _react2.default.createElement("div", { className: "errors", style: { backgroundColor: "#ffeeee", color: "red", margin: "1em" } }, + _react2.default.createElement("b", { style: { textTransform: "capitalize", marginRight: "1em" } }, source, " ", level), + _react2.default.createElement("span", null, message))); + + + } }]);return AuthError;}(_react2.default.Component);AuthError.propTypes = { error: _react.PropTypes.object.isRequired };exports.default = AuthError; + +/***/ }, +/* 276 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + ApiKeyAuth = function (_React$Component) {_inherits(ApiKeyAuth, _React$Component); + + + + + + + + + + function ApiKeyAuth(props, context) {_classCallCheck(this, ApiKeyAuth);var _this = _possibleConstructorReturn(this, (ApiKeyAuth.__proto__ || Object.getPrototypeOf(ApiKeyAuth)).call(this, + props, context));_initialiseProps.call(_this);var _this$props = + _this.props,name = _this$props.name,schema = _this$props.schema; + var value = _this.getValue(); + + _this.state = { + name: name, + schema: schema, + value: value };return _this; + + }_createClass(ApiKeyAuth, [{ key: "getValue", value: function getValue() + + {var _props = + this.props,name = _props.name,authorized = _props.authorized; + + return authorized && authorized.getIn([name, "value"]); + } }, { key: "render", value: function render() + + + + + + + + + + + {var _props2 = + this.props,schema = _props2.schema,getComponent = _props2.getComponent,errSelectors = _props2.errSelectors,name = _props2.name; + var Input = getComponent("Input"); + var Row = getComponent("Row"); + var Col = getComponent("Col"); + var AuthError = getComponent("authError"); + var Markdown = getComponent("Markdown"); + var JumpToPath = getComponent("JumpToPath", true); + var value = this.getValue(); + var errors = errSelectors.allErrors().filter(function (err) {return err.get("authId") === name;}); + + return ( + _react2.default.createElement("div", null, + _react2.default.createElement("h4", null, "Api key authorization", _react2.default.createElement(JumpToPath, { path: ["securityDefinitions", name] })), + value && _react2.default.createElement("h6", null, "Authorized"), + _react2.default.createElement(Row, null, + _react2.default.createElement(Markdown, { options: { html: true, typographer: true, linkify: true, linkTarget: "_blank" }, + source: schema.get("description") })), + + _react2.default.createElement(Row, null, + _react2.default.createElement("p", null, "Name: ", _react2.default.createElement("code", null, schema.get("name")))), + + _react2.default.createElement(Row, null, + _react2.default.createElement("p", null, "In: ", _react2.default.createElement("code", null, schema.get("in")))), + + _react2.default.createElement(Row, null, + _react2.default.createElement("label", null, "Value:"), + _react2.default.createElement(Col, null, + + value || _react2.default.createElement(Input, { type: "text", onChange: this.onChange }))), + + + + + errors.valueSeq().map(function (error, key) { + return _react2.default.createElement(AuthError, { error: error, + key: key }); + }))); + + + + } }]);return ApiKeyAuth;}(_react2.default.Component);ApiKeyAuth.propTypes = { authorized: _react.PropTypes.object, getComponent: _react.PropTypes.func.isRequired, errSelectors: _react.PropTypes.object.isRequired, schema: _react.PropTypes.object.isRequired, name: _react.PropTypes.string.isRequired, onChange: _react.PropTypes.func };var _initialiseProps = function _initialiseProps() {var _this2 = this;this.onChange = function (e) {var onChange = _this2.props.onChange;var value = e.target.value;var newState = Object.assign({}, _this2.state, { value: value });_this2.setState(newState);onChange(newState);};};exports.default = ApiKeyAuth; + +/***/ }, +/* 277 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _reactImmutableProptypes = __webpack_require__(273);var _reactImmutableProptypes2 = _interopRequireDefault(_reactImmutableProptypes);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + BasicAuth = function (_React$Component) {_inherits(BasicAuth, _React$Component); + + + + + + + + function BasicAuth(props, context) {_classCallCheck(this, BasicAuth);var _this = _possibleConstructorReturn(this, (BasicAuth.__proto__ || Object.getPrototypeOf(BasicAuth)).call(this, + props, context));_initialiseProps.call(_this);var _this$props = + _this.props,schema = _this$props.schema,name = _this$props.name; + + var value = _this.getValue(); + var username = value.username; + + _this.state = { + name: name, + schema: schema, + value: !username ? {} : { + username: username } };return _this; + + + }_createClass(BasicAuth, [{ key: "getValue", value: function getValue() + + {var _props = + this.props,authorized = _props.authorized,name = _props.name; + + return authorized && authorized.getIn([name, "value"]) || {}; + } }, { key: "render", value: function render() + + + + + + + + + + + + + + {var _props2 = + this.props,schema = _props2.schema,getComponent = _props2.getComponent,name = _props2.name,errSelectors = _props2.errSelectors; + var Input = getComponent("Input"); + var Row = getComponent("Row"); + var Col = getComponent("Col"); + var AuthError = getComponent("authError"); + var JumpToPath = getComponent("JumpToPath", true); + var Markdown = getComponent("Markdown"); + var username = this.getValue().username; + var errors = errSelectors.allErrors().filter(function (err) {return err.get("authId") === name;}); + + return ( + _react2.default.createElement("div", null, + _react2.default.createElement("h4", null, "Basic authorization", _react2.default.createElement(JumpToPath, { path: ["securityDefinitions", name] })), + username && _react2.default.createElement("h6", null, "Authorized"), + _react2.default.createElement(Row, null, + _react2.default.createElement(Markdown, { options: { html: true, typographer: true, linkify: true, linkTarget: "_blank" }, + source: schema.get("description") })), + + _react2.default.createElement(Row, null, + _react2.default.createElement(Col, { tablet: 2, desktop: 2 }, "username:"), + _react2.default.createElement(Col, { tablet: 10, desktop: 10 }, + + username || _react2.default.createElement(Input, { type: "text", required: "required", name: "username", onChange: this.onChange }))), + + + + + !username && _react2.default.createElement(Row, null, + _react2.default.createElement(Col, { tablet: 2, desktop: 2 }, "password:"), + _react2.default.createElement(Col, { tablet: 10, desktop: 10 }, _react2.default.createElement(Input, { required: "required", autoComplete: "new-password", name: "password", type: "password", onChange: this.onChange }))), + + + + errors.valueSeq().map(function (error, key) { + return _react2.default.createElement(AuthError, { error: error, + key: key }); + }))); + + + + } }]);return BasicAuth;}(_react2.default.Component);BasicAuth.propTypes = { authorized: _react.PropTypes.object, getComponent: _react.PropTypes.func.isRequired, schema: _react.PropTypes.object.isRequired, onChange: _react.PropTypes.func.isRequired };BasicAuth. + + propTypes = { + name: _react.PropTypes.string.isRequired, + errSelectors: _react.PropTypes.object.isRequired, + getComponent: _react.PropTypes.func.isRequired, + onChange: _react.PropTypes.func, + schema: _reactImmutableProptypes2.default.map, + authorized: _reactImmutableProptypes2.default.map };var _initialiseProps = function _initialiseProps() {var _this2 = this;this.onChange = function (e) {var onChange = _this2.props.onChange;var _e$target = e.target,value = _e$target.value,name = _e$target.name;var newValue = _this2.state.value;newValue[name] = value;_this2.setState({ value: newValue });onChange(_this2.state);};};exports.default = BasicAuth; + +/***/ }, +/* 278 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);var _oauth2Authorize = __webpack_require__(279);var _oauth2Authorize2 = _interopRequireDefault(_oauth2Authorize);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _defineProperty(obj, key, value) {if (key in obj) {Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });} else {obj[key] = value;}return obj;}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;} + + + var IMPLICIT = "implicit"; + var ACCESS_CODE = "accessCode"; + var PASSWORD = "password"; + var APPLICATION = "application";var + + Oauth2 = function (_React$Component) {_inherits(Oauth2, _React$Component); + + + + + + + + + + + + + function Oauth2(props, context) {_classCallCheck(this, Oauth2);var _this = _possibleConstructorReturn(this, (Oauth2.__proto__ || Object.getPrototypeOf(Oauth2)).call(this, + props, context));_initialiseProps.call(_this);var _this$props = + _this.props,name = _this$props.name,schema = _this$props.schema,authorized = _this$props.authorized; + var auth = authorized && authorized.get(name); + var username = auth && auth.get("username") || ""; + var clientId = auth && auth.get("clientId") || ""; + var clientSecret = auth && auth.get("clientSecret") || ""; + var passwordType = auth && auth.get("passwordType") || "none"; + + _this.state = { + name: name, + schema: schema, + scopes: [], + clientId: clientId, + clientSecret: clientSecret, + username: username, + password: "", + passwordType: passwordType };return _this; + + }_createClass(Oauth2, [{ key: "render", value: function render() + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {var _this2 = this;var _props = + this.props,schema = _props.schema,getComponent = _props.getComponent,authSelectors = _props.authSelectors,errSelectors = _props.errSelectors,name = _props.name; + var Input = getComponent("Input"); + var Row = getComponent("Row"); + var Col = getComponent("Col"); + var Button = getComponent("Button"); + var AuthError = getComponent("authError"); + var JumpToPath = getComponent("JumpToPath", true); + var Markdown = getComponent("Markdown"); + + var flow = schema.get("flow"); + var scopes = schema.get("allowedScopes") || schema.get("scopes"); + var authorizedAuth = authSelectors.authorized().get(name); + var isAuthorized = !!authorizedAuth; + var errors = errSelectors.allErrors().filter(function (err) {return err.get("authId") === name;}); + var isValid = !errors.filter(function (err) {return err.get("source") === "validation";}).size; + + return ( + _react2.default.createElement("div", null, + _react2.default.createElement("h4", null, "OAuth2.0 ", _react2.default.createElement(JumpToPath, { path: ["securityDefinitions", name] })), + _react2.default.createElement(Markdown, { options: { html: true, typographer: true, linkify: true, linkTarget: "_blank" }, + source: schema.get("description") }), + + isAuthorized && _react2.default.createElement("h6", null, "Authorized"), + + (flow === IMPLICIT || flow === ACCESS_CODE) && _react2.default.createElement("p", null, "Authorization URL: ", _react2.default.createElement("code", null, schema.get("authorizationUrl"))), + (flow === PASSWORD || flow === ACCESS_CODE || flow === APPLICATION) && _react2.default.createElement("p", null, "Token URL:", _react2.default.createElement("code", null, " ", schema.get("tokenUrl"))), + _react2.default.createElement("p", { className: "flow" }, "Flow: ", _react2.default.createElement("code", null, schema.get("flow"))), + + + flow === PASSWORD && (!isAuthorized || isAuthorized && this.state.username) && _react2.default.createElement(Row, null, + _react2.default.createElement(Col, { tablet: 2, desktop: 2 }, "username:"), + _react2.default.createElement(Col, { tablet: 10, desktop: 10 }, + + isAuthorized ? _react2.default.createElement("span", null, this.state.username) : + _react2.default.createElement("input", { type: "text", "data-name": "username", onChange: this.onInputChange }))), + + + + + + + flow === PASSWORD && !isAuthorized && _react2.default.createElement(Row, null, + _react2.default.createElement(Col, { tablet: 2, desktop: 2 }, "password:"), + _react2.default.createElement(Col, { tablet: 10, desktop: 10 }, + _react2.default.createElement("input", { type: "password", "data-name": "password", onChange: this.onInputChange }))), + + + + + + flow === PASSWORD && _react2.default.createElement(Row, null, + _react2.default.createElement(Col, { tablet: 2, desktop: 2 }, "type:"), + _react2.default.createElement(Col, { tablet: 10, desktop: 10 }, + + isAuthorized ? _react2.default.createElement("span", null, this.state.passwordType) : + _react2.default.createElement("select", { "data-name": "passwordType", onChange: this.onInputChange }, + _react2.default.createElement("option", { value: "none" }, "None or other"), + _react2.default.createElement("option", { value: "basic" }, "Basic auth"), + _react2.default.createElement("option", { value: "request" }, "Request body")))), + + + + + + + + (flow === APPLICATION || flow === IMPLICIT || flow === ACCESS_CODE || flow === PASSWORD && this.state.passwordType !== "none") && ( + !isAuthorized || isAuthorized && this.state.clientId) && _react2.default.createElement(Row, null, + _react2.default.createElement("label", { htmlFor: "client_id" }, "client_id:"), + _react2.default.createElement(Col, { tablet: 10, desktop: 10 }, + + isAuthorized ? _react2.default.createElement("span", null, this.state.clientId) : + _react2.default.createElement("input", { id: "client_id", type: "text", required: flow === PASSWORD, "data-name": "clientId", + onChange: this.onInputChange }))), + + + + + + + (flow === APPLICATION || flow === ACCESS_CODE || flow === PASSWORD && this.state.passwordType !== "none") && _react2.default.createElement(Row, null, + _react2.default.createElement("label", { htmlFor: "client_secret" }, "client_secret:"), + _react2.default.createElement(Col, { tablet: 10, desktop: 10 }, + + isAuthorized ? _react2.default.createElement("span", null, this.state.clientSecret) : + _react2.default.createElement("input", { id: "client_secret", type: "text", "data-name": "clientSecret", + onChange: this.onInputChange }))), + + + + + + + !isAuthorized && scopes && scopes.size ? _react2.default.createElement("div", { className: "scopes" }, + _react2.default.createElement("h2", null, "Scopes:"), + scopes.map(function (description, name) { + return ( + _react2.default.createElement(Row, { key: name }, + _react2.default.createElement("div", { className: "checkbox" }, + _react2.default.createElement(Input, { "data-value": name, + id: name + "-checkbox", + disabled: isAuthorized, + type: "checkbox", + onChange: _this2.onScopeChange }), + _react2.default.createElement("label", { htmlFor: name + "-checkbox" }, + _react2.default.createElement("span", { className: "item" }), + _react2.default.createElement("div", { className: "text" }, + _react2.default.createElement("p", { className: "name" }, name), + _react2.default.createElement("p", { className: "description" }, description)))))); + + + + + + }).toArray()) : + + null, + + + + errors.valueSeq().map(function (error, key) { + return _react2.default.createElement(AuthError, { error: error, + key: key }); + }), + + _react2.default.createElement("div", { className: "auth-btn-wrapper" }, + isValid && ( + isAuthorized ? _react2.default.createElement(Button, { className: "btn modal-btn auth authorize", onClick: this.logout }, "Logout") : + _react2.default.createElement(Button, { className: "btn modal-btn auth authorize", onClick: this.authorize }, "Authorize"))))); + + + + + + + } }]);return Oauth2;}(_react2.default.Component);Oauth2.propTypes = { name: _react.PropTypes.string, authorized: _react.PropTypes.object, getComponent: _react.PropTypes.func.isRequired, schema: _react.PropTypes.object.isRequired, authSelectors: _react.PropTypes.object.isRequired, authActions: _react.PropTypes.object.isRequired, errSelectors: _react.PropTypes.object.isRequired, errActions: _react.PropTypes.object.isRequired, getConfigs: _react.PropTypes.any };var _initialiseProps = function _initialiseProps() {var _this3 = this;this.authorize = function () {var _props2 = _this3.props,authActions = _props2.authActions,errActions = _props2.errActions,getConfigs = _props2.getConfigs;var configs = getConfigs();errActions.clear({ authId: name, type: "auth", source: "auth" });(0, _oauth2Authorize2.default)(_this3.state, authActions, errActions, configs);};this.onScopeChange = function (e) {var target = e.target;var checked = target.checked;var scope = target.dataset.value;if (checked && _this3.state.scopes.indexOf(scope) === -1) {var newScopes = _this3.state.scopes.concat([scope]);_this3.setState({ scopes: newScopes });} else if (!checked && _this3.state.scopes.indexOf(scope) > -1) {_this3.setState({ scopes: _this3.state.scopes.filter(function (val) {return val !== scope;}) });}};this.onInputChange = function (e) {var _e$target = e.target,name = _e$target.dataset.name,value = _e$target.value;var state = _defineProperty({}, name, value);_this3.setState(state);};this.logout = function (e) {e.preventDefault();var _props3 = _this3.props,authActions = _props3.authActions,errActions = _props3.errActions,name = _props3.name;errActions.clear({ authId: name, type: "auth", source: "auth" });authActions.logout([name]);};};exports.default = Oauth2; + +/***/ }, +/* 279 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = + + authorize;var _window = __webpack_require__(12);var _window2 = _interopRequireDefault(_window);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function authorize(auth, authActions, errActions, configs) {var + schema = auth.schema,scopes = auth.scopes,name = auth.name,clientId = auth.clientId; + + var redirectUrl = configs.oauth2RedirectUrl; + var scopeSeparator = " "; + var state = name; + var flow = schema.get("flow"); + var url = void 0; + + if (flow === "password") { + authActions.authorizePassword(auth); + return; + } + + if (flow === "application") { + authActions.authorizeOauth2Application(auth); + return; + } + + // todo move to parser + if (!redirectUrl) { + errActions.newAuthErr({ + authId: name, + source: "validation", + level: "error", + message: "oauth2RedirectUri configuration is not passed. Oauth2 authorization cannot be performed." }); + + return; + } + + if (flow === "implicit" || flow === "accessCode") { + url = schema.get("authorizationUrl") + "?response_type=" + (flow === "implicit" ? "token" : "code"); + } + + url += "&redirect_uri=" + encodeURIComponent(redirectUrl) + + "&scope=" + encodeURIComponent(scopes.join(scopeSeparator)) + + "&state=" + encodeURIComponent(state) + + "&client_id=" + encodeURIComponent(clientId); + + // pass action authorizeOauth2 and authentication data through window + // to authorize with oauth2 + _window2.default.swaggerUIRedirectOauth2 = { + auth: auth, + state: state, + callback: authActions.preAuthorizeOauth2, + errCb: errActions.newAuthErr }; + + + _window2.default.open(url); + } + +/***/ }, +/* 280 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + Clear = function (_Component) {_inherits(Clear, _Component);function Clear() {var _ref;var _temp, _this, _ret;_classCallCheck(this, Clear);for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Clear.__proto__ || Object.getPrototypeOf(Clear)).call.apply(_ref, [this].concat(args))), _this), _this. + + onClick = function () {var _this$props = + _this.props,specActions = _this$props.specActions,path = _this$props.path,method = _this$props.method; + specActions.clearResponse(path, method); + specActions.clearRequest(path, method); + }, _temp), _possibleConstructorReturn(_this, _ret);}_createClass(Clear, [{ key: "render", value: function render() + + { + return ( + _react2.default.createElement("button", { className: "btn btn-clear opblock-control__btn", onClick: this.onClick }, "Clear")); + + + + } }]);return Clear;}(_react.Component);Clear. + + propTypes = { + specActions: _react.PropTypes.object.isRequired, + path: _react.PropTypes.string.isRequired, + method: _react.PropTypes.string.isRequired };exports.default = Clear; + +/***/ }, +/* 281 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _reactImmutableProptypes = __webpack_require__(273);var _reactImmutableProptypes2 = _interopRequireDefault(_reactImmutableProptypes);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;} + + var Headers = function Headers(_ref) {var headers = _ref.headers; + return ( + _react2.default.createElement("div", null, + _react2.default.createElement("h5", null, "Response headers"), + _react2.default.createElement("pre", null, headers))); + + }; + + Headers.propTypes = { + headers: _react.PropTypes.array.isRequired };var + + + LiveResponse = function (_React$Component) {_inherits(LiveResponse, _React$Component);function LiveResponse() {_classCallCheck(this, LiveResponse);return _possibleConstructorReturn(this, (LiveResponse.__proto__ || Object.getPrototypeOf(LiveResponse)).apply(this, arguments));}_createClass(LiveResponse, [{ key: "render", value: function render() + + + + + + {var _props = + this.props,request = _props.request,response = _props.response,getComponent = _props.getComponent; + + var body = response.get("text"); + var status = response.get("status"); + var url = response.get("url"); + var headers = response.get("headers").toJS(); + var notDocumented = response.get("notDocumented"); + var isError = response.get("error"); + + var headersKeys = Object.keys(headers); + var contentType = headers["content-type"]; + + var Curl = getComponent("curl"); + var ResponseBody = getComponent("responseBody"); + var returnObject = headersKeys.map(function (key) { + return _react2.default.createElement("span", { className: "headerline", key: key }, " ", key, ": ", headers[key], " "); + }); + + return ( + _react2.default.createElement("div", null, + request && _react2.default.createElement(Curl, { request: request }), + _react2.default.createElement("h4", null, "Server response"), + _react2.default.createElement("table", { className: "responses-table" }, + _react2.default.createElement("thead", null, + _react2.default.createElement("tr", { className: "responses-header" }, + _react2.default.createElement("td", { className: "col col_header response-col_status" }, "Code"), + _react2.default.createElement("td", { className: "col col_header response-col_description" }, "Details"))), + + + _react2.default.createElement("tbody", null, + _react2.default.createElement("tr", { className: "response" }, + _react2.default.createElement("td", { className: "col response-col_status" }, + status, + + !notDocumented ? null : + _react2.default.createElement("div", { className: "response-undocumented" }, + _react2.default.createElement("i", null, " Undocumented "))), + + + + _react2.default.createElement("td", { className: "col response-col_description" }, + + !isError ? null : _react2.default.createElement("span", null, + response.get("name") + ": " + response.get("message")), + + + + !body || isError ? null : + _react2.default.createElement(ResponseBody, { content: body, + contentType: contentType, + url: url, + headers: headers, + getComponent: getComponent }), + + + !headers ? null : _react2.default.createElement(Headers, { headers: returnObject }))))))); + + + + + + + + } }]);return LiveResponse;}(_react2.default.Component);LiveResponse.propTypes = { response: _react.PropTypes.object.isRequired, getComponent: _react.PropTypes.func.isRequired };LiveResponse. + + propTypes = { + getComponent: _react.PropTypes.func.isRequired, + request: _reactImmutableProptypes2.default.map, + response: _reactImmutableProptypes2.default.map };exports.default = LiveResponse; + +/***/ }, +/* 282 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) {return typeof obj;} : function (obj) {return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;};var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + OnlineValidatorBadge = function (_React$Component) {_inherits(OnlineValidatorBadge, _React$Component); + + + + + + + function OnlineValidatorBadge(props, context) {_classCallCheck(this, OnlineValidatorBadge);var _this = _possibleConstructorReturn(this, (OnlineValidatorBadge.__proto__ || Object.getPrototypeOf(OnlineValidatorBadge)).call(this, + props, context));var + specSelectors = props.specSelectors,getConfigs = props.getConfigs;var _getConfigs = + getConfigs(),validatorUrl = _getConfigs.validatorUrl; + _this.state = { + url: specSelectors.url(), + validatorUrl: validatorUrl === undefined ? "https://online.swagger.io/validator" : validatorUrl };return _this; + + }_createClass(OnlineValidatorBadge, [{ key: "componentWillReceiveProps", value: function componentWillReceiveProps( + + nextProps) {var + specSelectors = nextProps.specSelectors,getConfigs = nextProps.getConfigs;var _getConfigs2 = + getConfigs(),validatorUrl = _getConfigs2.validatorUrl; + + this.setState({ + url: specSelectors.url(), + validatorUrl: validatorUrl === undefined ? "https://online.swagger.io/validator" : validatorUrl }); + + } }, { key: "render", value: function render() + + {var + getConfigs = this.props.getConfigs;var _getConfigs3 = + getConfigs(),spec = _getConfigs3.spec; + + if ((typeof spec === "undefined" ? "undefined" : _typeof(spec)) === "object" && Object.keys(spec).length) return null; + + if (!this.state.url || !this.state.validatorUrl || this.state.url.indexOf("localhost") >= 0 || + this.state.url.indexOf("127.0.0.1") >= 0) { + return null; + } + + return _react2.default.createElement("span", { style: { float: "right" } }, + _react2.default.createElement("a", { target: "_blank", href: this.state.validatorUrl + "/debug?url=" + this.state.url }, + _react2.default.createElement(ValidatorImage, { src: this.state.validatorUrl + "?url=" + this.state.url, alt: "Online validator badge" }))); + + + } }]);return OnlineValidatorBadge;}(_react2.default.Component);OnlineValidatorBadge.propTypes = { getComponent: _react.PropTypes.func.isRequired, getConfigs: _react.PropTypes.func.isRequired, specSelectors: _react.PropTypes.object.isRequired };exports.default = OnlineValidatorBadge;var + + + + ValidatorImage = function (_React$Component2) {_inherits(ValidatorImage, _React$Component2); + + + + + + function ValidatorImage(props) {_classCallCheck(this, ValidatorImage);var _this2 = _possibleConstructorReturn(this, (ValidatorImage.__proto__ || Object.getPrototypeOf(ValidatorImage)).call(this, + props)); + _this2.state = { + loaded: false, + error: false };return _this2; + + }_createClass(ValidatorImage, [{ key: "componentDidMount", value: function componentDidMount() + + {var _this3 = this; + var img = new Image(); + img.onload = function () { + _this3.setState({ + loaded: true }); + + }; + img.onerror = function () { + _this3.setState({ + error: true }); + + }; + img.src = this.props.src; + } }, { key: "componentWillReceiveProps", value: function componentWillReceiveProps( + + nextProps) {var _this4 = this; + if (nextProps.src !== this.props.src) { + var img = new Image(); + img.onload = function () { + _this4.setState({ + loaded: true }); + + }; + img.onerror = function () { + _this4.setState({ + error: true }); + + }; + img.src = nextProps.src; + } + } }, { key: "render", value: function render() + + { + if (this.state.error) { + return _react2.default.createElement("img", { alt: "Error" }); + } else if (!this.state.loaded) { + return _react2.default.createElement("img", { alt: "Loading..." }); + } + return _react2.default.createElement("img", { src: this.props.src, alt: this.props.alt }); + } }]);return ValidatorImage;}(_react2.default.Component);ValidatorImage.propTypes = { src: _react.PropTypes.string, alt: _react.PropTypes.string }; + +/***/ }, +/* 283 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _extends = Object.assign || function (target) {for (var i = 1; i < arguments.length; i++) {var source = arguments[i];for (var key in source) {if (Object.prototype.hasOwnProperty.call(source, key)) {target[key] = source[key];}}}return target;};var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + Operations = function (_React$Component) {_inherits(Operations, _React$Component);function Operations() {_classCallCheck(this, Operations);return _possibleConstructorReturn(this, (Operations.__proto__ || Object.getPrototypeOf(Operations)).apply(this, arguments));}_createClass(Operations, [{ key: "render", value: function render() + + + + + + + + + + + + + + + + {var _props = + + + + + + + + + + this.props,specSelectors = _props.specSelectors,specActions = _props.specActions,getComponent = _props.getComponent,layoutSelectors = _props.layoutSelectors,layoutActions = _props.layoutActions,authActions = _props.authActions,authSelectors = _props.authSelectors,fn = _props.fn; + + var taggedOps = specSelectors.taggedOperations(); + + var Operation = getComponent("operation"); + var Collapse = getComponent("Collapse"); + + var showSummary = layoutSelectors.showSummary(); + + return ( + _react2.default.createElement("div", null, + + taggedOps.map(function (tagObj, tag) { + var operations = tagObj.get("operations"); + var tagDescription = tagObj.getIn(["tagDetails", "description"], null); + + var isShownKey = ["operations-tag", tag]; + var showTag = layoutSelectors.isShown(isShownKey, true); + + return ( + _react2.default.createElement("div", { className: showTag ? "opblock-tag-section is-open" : "opblock-tag-section", key: "operation-" + tag }, + + _react2.default.createElement("h4", { className: !tagDescription ? "opblock-tag no-desc" : "opblock-tag" }, + _react2.default.createElement("span", { onClick: function onClick() {return layoutActions.show(isShownKey, !showTag);} }, tag), + + !tagDescription ? null : + _react2.default.createElement("small", { onClick: function onClick() {return layoutActions.show(isShownKey, !showTag);} }, + tagDescription), + + + + _react2.default.createElement("button", { className: "expand-operation", title: "Expand operation", onClick: function onClick() {return layoutActions.show(isShownKey, !showTag);} }, + _react2.default.createElement("svg", { className: "arrow", width: "20", height: "20" }, + _react2.default.createElement("use", { xlinkHref: showTag ? "#large-arrow-down" : "#large-arrow" })))), + + + + + _react2.default.createElement(Collapse, { isOpened: showTag }, + + operations.map(function (op) { + + var isShownKey = ["operations", op.get("id"), tag]; + var path = op.get("path", ""); + var method = op.get("method", ""); + var jumpToKey = "paths." + path + "." + method; + + var allowTryItOut = specSelectors.allowTryItOutFor(op.get("path"), op.get("method")); + var response = specSelectors.responseFor(op.get("path"), op.get("method")); + var request = specSelectors.requestFor(op.get("path"), op.get("method")); + + return _react2.default.createElement(Operation, _extends({}, + op.toObject(), { + + isShownKey: isShownKey, + jumpToKey: jumpToKey, + showSummary: showSummary, + key: isShownKey, + response: response, + request: request, + allowTryItOut: allowTryItOut, + + specActions: specActions, + specSelectors: specSelectors, + + layoutActions: layoutActions, + layoutSelectors: layoutSelectors, + + authActions: authActions, + authSelectors: authSelectors, + + getComponent: getComponent, + fn: fn })); + + }).toArray()))); + + + + + }).toArray(), + + + taggedOps.size < 1 ? _react2.default.createElement("h3", null, " No operations defined in spec! ") : null)); + + + } }]);return Operations;}(_react2.default.Component);Operations.propTypes = { specSelectors: _react.PropTypes.object.isRequired, specActions: _react.PropTypes.object.isRequired, getComponent: _react.PropTypes.func.isRequired, layoutSelectors: _react.PropTypes.object.isRequired, layoutActions: _react.PropTypes.object.isRequired, authActions: _react.PropTypes.object.isRequired, authSelectors: _react.PropTypes.object.isRequired };Operations.defaultProps = {};exports.default = Operations; + + + + Operations.propTypes = { + layoutActions: _react.PropTypes.object.isRequired, + specSelectors: _react.PropTypes.object.isRequired, + specActions: _react.PropTypes.object.isRequired, + layoutSelectors: _react.PropTypes.object.isRequired, + getComponent: _react.PropTypes.func.isRequired, + fn: _react.PropTypes.object.isRequired }; + +/***/ }, +/* 284 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _reactAddonsShallowCompare = __webpack_require__(285);var _reactAddonsShallowCompare2 = _interopRequireDefault(_reactAddonsShallowCompare);var _utils = __webpack_require__(13);var _proptypes = __webpack_require__(286);var + + CustomPropTypes = _interopRequireWildcard(_proptypes);function _interopRequireWildcard(obj) {if (obj && obj.__esModule) {return obj;} else {var newObj = {};if (obj != null) {for (var key in obj) {if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];}}newObj.default = obj;return newObj;}}function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;} + + //import "less/opblock" + var + Operation = function (_React$Component) {_inherits(Operation, _React$Component); + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + function Operation(props, context) {_classCallCheck(this, Operation);var _this = _possibleConstructorReturn(this, (Operation.__proto__ || Object.getPrototypeOf(Operation)).call(this, + props, context));_this. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + toggleShown = function () {var _this$props = + _this.props,layoutActions = _this$props.layoutActions,isShownKey = _this$props.isShownKey; + layoutActions.show(isShownKey, !_this.isShown()); + };_this. + + isShown = function () {var _this$props2 = + _this.props,layoutSelectors = _this$props2.layoutSelectors,isShownKey = _this$props2.isShownKey; + return layoutSelectors.isShown(isShownKey, false); // Here is where we set the default + };_this. + + onTryoutClick = function () { + _this.setState({ tryItOutEnabled: !_this.state.tryItOutEnabled }); + };_this. + + onCancelClick = function () {var _this$props3 = + _this.props,specActions = _this$props3.specActions,path = _this$props3.path,method = _this$props3.method; + _this.setState({ tryItOutEnabled: !_this.state.tryItOutEnabled }); + specActions.clearValidateParams([path, method]); + };_this. + + onExecute = function () { + _this.setState({ executeInProgress: true }); + };_this.state = { tryItOutEnabled: false };return _this;}_createClass(Operation, [{ key: "componentWillReceiveProps", value: function componentWillReceiveProps(nextProps) {var defaultContentType = "application/json";var specActions = nextProps.specActions,path = nextProps.path,method = nextProps.method,operation = nextProps.operation;var producesValue = operation.get("produces_value");var produces = operation.get("produces");var consumes = operation.get("consumes");var consumesValue = operation.get("consumes_value");if (nextProps.response !== this.props.response) {this.setState({ executeInProgress: false });}if (producesValue === undefined) {producesValue = produces && produces.size ? produces.first() : defaultContentType;specActions.changeProducesValue([path, method], producesValue);}if (consumesValue === undefined) {consumesValue = consumes && consumes.size ? consumes.first() : defaultContentType;specActions.changeConsumesValue([path, method], consumesValue);}} }, { key: "shouldComponentUpdate", value: function shouldComponentUpdate(props, state) {return (0, _reactAddonsShallowCompare2.default)(this, props, state);} }, { key: "render", value: function render() + + {var _props = + + + + + + + + + + + + + + + + + + this.props,isShownKey = _props.isShownKey,jumpToKey = _props.jumpToKey,path = _props.path,method = _props.method,operation = _props.operation,showSummary = _props.showSummary,response = _props.response,request = _props.request,allowTryItOut = _props.allowTryItOut,fn = _props.fn,getComponent = _props.getComponent,specActions = _props.specActions,specSelectors = _props.specSelectors,authActions = _props.authActions,authSelectors = _props.authSelectors; + + var summary = operation.get("summary"); + var description = operation.get("description"); + var deprecated = operation.get("deprecated"); + var externalDocs = operation.get("externalDocs"); + var responses = operation.get("responses"); + var security = operation.get("security") || specSelectors.security(); + var produces = operation.get("produces"); + var schemes = operation.get("schemes"); + var parameters = (0, _utils.getList)(operation, ["parameters"]); + + var Responses = getComponent("responses"); + var Parameters = getComponent("parameters"); + var Execute = getComponent("execute"); + var Clear = getComponent("clear"); + var AuthorizeOperationBtn = getComponent("authorizeOperationBtn"); + var JumpToPath = getComponent("JumpToPath", true); + var Collapse = getComponent("Collapse"); + var Markdown = getComponent("Markdown"); + var Schemes = getComponent("schemes"); + + // Merge in Live Response + if (response && response.size > 0) { + var notDocumented = !responses.get(String(response.get("status"))); + response = response.set("notDocumented", notDocumented); + }var + + tryItOutEnabled = this.state.tryItOutEnabled; + var shown = this.isShown(); + var onChangeKey = [path, method]; // Used to add values to _this_ operation ( indexed by path and method ) + + return ( + _react2.default.createElement("div", { className: deprecated ? "opblock opblock-deprecated" : shown ? "opblock opblock-" + method + " is-open" : "opblock opblock-" + method, id: isShownKey }, + _react2.default.createElement("div", { className: "opblock-summary opblock-summary-" + method, onClick: this.toggleShown }, + _react2.default.createElement("span", { className: "opblock-summary-method" }, method.toUpperCase()), + _react2.default.createElement("span", { className: deprecated ? "opblock-summary-path__deprecated" : "opblock-summary-path" }, + _react2.default.createElement("span", null, path), + _react2.default.createElement(JumpToPath, { path: jumpToKey })), + + + !showSummary ? null : + _react2.default.createElement("div", { className: "opblock-summary-description" }, + summary), + + + + + !security || !security.count() ? null : + _react2.default.createElement(AuthorizeOperationBtn, { authActions: authActions, + security: security, + authSelectors: authSelectors })), + + + + _react2.default.createElement(Collapse, { isOpened: shown, animated: true }, + _react2.default.createElement("div", { className: "opblock-body" }, + deprecated && _react2.default.createElement("h4", { className: "opblock-title_normal" }, " Warning: Deprecated"), + description && + _react2.default.createElement("div", { className: "opblock-description-wrapper" }, + _react2.default.createElement("div", { className: "opblock-description" }, + _react2.default.createElement(Markdown, { options: { html: true, typographer: true, linkify: true, linkTarget: "_blank" }, source: description }))), + + + + + externalDocs && externalDocs.get("url") ? + _react2.default.createElement("div", { className: "opblock-external-docs-wrapper" }, + _react2.default.createElement("h4", { className: "opblock-title_normal" }, "Find more details"), + _react2.default.createElement("div", { className: "opblock-external-docs" }, + _react2.default.createElement("span", { className: "opblock-external-docs__description" }, externalDocs.get("description")), + _react2.default.createElement("a", { className: "opblock-external-docs__link", href: externalDocs.get("url") }, externalDocs.get("url")))) : + + null, + + _react2.default.createElement(Parameters, { + parameters: parameters, + onChangeKey: onChangeKey, + onTryoutClick: this.onTryoutClick, + onCancelClick: this.onCancelClick, + tryItOutEnabled: tryItOutEnabled, + allowTryItOut: allowTryItOut, + + fn: fn, + getComponent: getComponent, + specActions: specActions, + specSelectors: specSelectors, + pathMethod: [path, method] }), + + + !tryItOutEnabled || !allowTryItOut ? null : schemes && schemes.size ? _react2.default.createElement("div", { className: "opblock-schemes" }, + _react2.default.createElement(Schemes, { schemes: schemes, + path: path, + method: method, + specActions: specActions })) : + null, + + + _react2.default.createElement("div", { className: !tryItOutEnabled || !response || !allowTryItOut ? "execute-wrapper" : "btn-group" }, + !tryItOutEnabled || !allowTryItOut ? null : + + _react2.default.createElement(Execute, { + getComponent: getComponent, + operation: operation, + specActions: specActions, + specSelectors: specSelectors, + path: path, + method: method, + onExecute: this.onExecute }), + + + !tryItOutEnabled || !response || !allowTryItOut ? null : + _react2.default.createElement(Clear, { + onClick: this.onClearClick, + specActions: specActions, + path: path, + method: method })), + + + + this.state.executeInProgress ? _react2.default.createElement("div", { className: "loading-container" }, _react2.default.createElement("div", { className: "loading" })) : null, + + !responses ? null : + _react2.default.createElement(Responses, { + responses: responses, + request: request, + tryItOutResponse: response, + getComponent: getComponent, + specSelectors: specSelectors, + specActions: specActions, + produces: produces, + producesValue: operation.get("produces_value"), + pathMethod: [path, method], + fn: fn }))))); + + + + + + } }]);return Operation;}(_react2.default.Component);Operation.propTypes = { path: _react.PropTypes.string.isRequired, method: _react.PropTypes.string.isRequired, operation: _react.PropTypes.object.isRequired, showSummary: _react.PropTypes.bool, isShownKey: CustomPropTypes.arrayOrString.isRequired, jumpToKey: CustomPropTypes.arrayOrString.isRequired, allowTryItOut: _react.PropTypes.bool, response: _react.PropTypes.object, request: _react.PropTypes.object, getComponent: _react.PropTypes.func.isRequired, authActions: _react.PropTypes.object, authSelectors: _react.PropTypes.object, specActions: _react.PropTypes.object.isRequired, specSelectors: _react.PropTypes.object.isRequired, layoutActions: _react.PropTypes.object.isRequired, layoutSelectors: _react.PropTypes.object.isRequired, fn: _react.PropTypes.object.isRequired };Operation.defaultProps = { showSummary: true, response: null, allowTryItOut: true };exports.default = Operation; + +/***/ }, +/* 285 */ +/***/ function(module, exports) { + + module.exports = require("react-addons-shallow-compare"); + +/***/ }, +/* 286 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.objectWithFuncs = exports.arrayOrString = undefined;var _react = __webpack_require__(187); + + // Takes a list and proptype, and returns a PropType.shape({ [item]: propType }) + var mapListToPropTypeShape = function mapListToPropTypeShape(list, propType) {return _react.PropTypes.shape( + list.reduce(function (shape, propName) { + shape[propName] = propType; + return shape; + }, {}));}; + + + var arrayOrString = exports.arrayOrString = _react.PropTypes.oneOfType([ + _react.PropTypes.arrayOf(_react.PropTypes.string), + _react.PropTypes.string]); + + + var objectWithFuncs = exports.objectWithFuncs = function objectWithFuncs(list) {return mapListToPropTypeShape(list, _react.PropTypes.func.isRequired);}; + +/***/ }, +/* 287 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);var _utils = __webpack_require__(13);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + + HighlightCode = function (_Component) {_inherits(HighlightCode, _Component);function HighlightCode() {_classCallCheck(this, HighlightCode);return _possibleConstructorReturn(this, (HighlightCode.__proto__ || Object.getPrototypeOf(HighlightCode)).apply(this, arguments));}_createClass(HighlightCode, [{ key: "componentDidMount", value: function componentDidMount() + + + + + + { + (0, _utils.highlight)(this.refs.el); + } }, { key: "componentDidUpdate", value: function componentDidUpdate() + + { + (0, _utils.highlight)(this.refs.el); + } }, { key: "render", value: function render() + + {var _props = + this.props,value = _props.value,className = _props.className; + className = className || ""; + + return _react2.default.createElement("pre", { ref: "el", className: className + " microlight" }, value); + } }]);return HighlightCode;}(_react.Component);HighlightCode.propTypes = { value: _react.PropTypes.string.isRequired, className: _react.PropTypes.string };exports.default = HighlightCode; + +/***/ }, +/* 288 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}();var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _immutable = __webpack_require__(7);var _utils = __webpack_require__(13);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + + Responses = function (_React$Component) {_inherits(Responses, _React$Component);function Responses() {var _ref;var _temp, _this, _ret;_classCallCheck(this, Responses);for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Responses.__proto__ || Object.getPrototypeOf(Responses)).call.apply(_ref, [this].concat(args))), _this), _this. + + + + + + + + + + + + + + + + + + + + + onChangeProducesWrapper = function (val) {return _this.props.specActions.changeProducesValue(_this.props.pathMethod, val);}, _temp), _possibleConstructorReturn(_this, _ret);}_createClass(Responses, [{ key: "render", value: function render() + + {var _props = + this.props,responses = _props.responses,request = _props.request,tryItOutResponse = _props.tryItOutResponse,getComponent = _props.getComponent,specSelectors = _props.specSelectors,fn = _props.fn,producesValue = _props.producesValue; + var defaultCode = (0, _utils.defaultStatusCode)(responses); + + var ContentType = getComponent("contentType"); + var LiveResponse = getComponent("liveResponse"); + var Response = getComponent("response"); + + var produces = this.props.produces && this.props.produces.size ? this.props.produces : Responses.defaultProps.produces; + + return ( + _react2.default.createElement("div", { className: "responses-wrapper" }, + _react2.default.createElement("div", { className: "opblock-section-header" }, + _react2.default.createElement("h4", null, "Responses"), + _react2.default.createElement("label", null, + _react2.default.createElement("span", null, "Response content type"), + _react2.default.createElement(ContentType, { value: producesValue, + onChange: this.onChangeProducesWrapper, + contentTypes: produces, + className: "execute-content-type" }))), + + + _react2.default.createElement("div", { className: "responses-inner" }, + + !tryItOutResponse ? null : + _react2.default.createElement("div", null, + _react2.default.createElement(LiveResponse, { request: request, + response: tryItOutResponse, + getComponent: getComponent }), + _react2.default.createElement("h4", null, "Responses")), + + + + + _react2.default.createElement("table", { className: "responses-table" }, + _react2.default.createElement("thead", null, + _react2.default.createElement("tr", { className: "responses-header" }, + _react2.default.createElement("td", { className: "col col_header response-col_status" }, "Code"), + _react2.default.createElement("td", { className: "col col_header response-col_description" }, "Description"))), + + + _react2.default.createElement("tbody", null, + + responses.entrySeq().map(function (_ref2) {var _ref3 = _slicedToArray(_ref2, 2),code = _ref3[0],response = _ref3[1]; + + var className = tryItOutResponse && tryItOutResponse.get("status") == code ? "response_current" : ""; + return ( + _react2.default.createElement(Response, { key: code, + isDefault: defaultCode === code, + fn: fn, + className: className, + code: code, + response: response, + specSelectors: specSelectors, + contentType: producesValue, + getComponent: getComponent })); + + }).toArray()))))); + + + + + + + } }]);return Responses;}(_react2.default.Component);Responses.propTypes = { request: _react.PropTypes.object, tryItOutResponse: _react.PropTypes.object, responses: _react.PropTypes.object.isRequired, produces: _react.PropTypes.object, producesValue: _react.PropTypes.any, getComponent: _react.PropTypes.func.isRequired, specSelectors: _react.PropTypes.object.isRequired, specActions: _react.PropTypes.object.isRequired, pathMethod: _react.PropTypes.array.isRequired, fn: _react.PropTypes.object.isRequired };Responses.defaultProps = { request: null, tryItOutResponse: null, produces: (0, _immutable.fromJS)(["application/json"]) };exports.default = Responses; + +/***/ }, +/* 289 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _immutable = __webpack_require__(7);var _utils = __webpack_require__(13);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;} + + + var getExampleComponent = function getExampleComponent(sampleResponse, examples, HighlightCode) { + if (examples && examples.size) { + return examples.entrySeq().map(function (_ref) {var _ref2 = _slicedToArray(_ref, 2),key = _ref2[0],example = _ref2[1]; + var exampleValue = void 0; + try { + exampleValue = example && example.toJS ? example.toJS() : example; + exampleValue = JSON.stringify(exampleValue); + } + catch (e) { + exampleValue = String(example); + } + return _react2.default.createElement("div", { key: key }, + _react2.default.createElement("h5", null, key), + _react2.default.createElement(HighlightCode, { className: "example", value: exampleValue })); + + }).toArray(); + } + + if (sampleResponse) {return _react2.default.createElement("div", null, + _react2.default.createElement(HighlightCode, { className: "example", value: sampleResponse })); + + } + return null; + };var + + Response = function (_React$Component) {_inherits(Response, _React$Component);function Response() {_classCallCheck(this, Response);return _possibleConstructorReturn(this, (Response.__proto__ || Object.getPrototypeOf(Response)).apply(this, arguments));}_createClass(Response, [{ key: "render", value: function render() + + + + + + + + + + + + + + + + {var _props = + + + + + + + + + + this.props,code = _props.code,response = _props.response,className = _props.className,fn = _props.fn,getComponent = _props.getComponent,specSelectors = _props.specSelectors,contentType = _props.contentType;var + + inferSchema = fn.inferSchema; + + var schema = inferSchema(response.toJS()); + var headers = response.get("headers"); + var examples = response.get("examples"); + var Headers = getComponent("headers"); + var HighlightCode = getComponent("highlightCode"); + var ModelExample = getComponent("modelExample"); + var Markdown = getComponent("Markdown"); + + var sampleResponse = schema ? (0, _utils.getSampleSchema)(schema, contentType, { includeReadOnly: true }) : null; + var example = getExampleComponent(sampleResponse, examples, HighlightCode); + + return ( + _react2.default.createElement("tr", { className: "response " + (className || "") }, + _react2.default.createElement("td", { className: "col response-col_status" }, + code), + + _react2.default.createElement("td", { className: "col response-col_description" }, + + _react2.default.createElement("div", { className: "response-col_description__inner" }, + _react2.default.createElement(Markdown, { options: { html: true, typographer: true, linkify: true, linkTarget: "_blank" }, source: response.get("description") })), + + + example ? + _react2.default.createElement(ModelExample, { + getComponent: getComponent, + specSelectors: specSelectors, + schema: (0, _immutable.fromJS)(schema), + example: example }) : + null, + + headers ? + _react2.default.createElement(Headers, { headers: headers }) : + null))); + + + + + + } }]);return Response;}(_react2.default.Component);Response.propTypes = { code: _react.PropTypes.string.isRequired, response: _react.PropTypes.object, className: _react.PropTypes.string, getComponent: _react.PropTypes.func.isRequired, specSelectors: _react.PropTypes.object.isRequired, fn: _react.PropTypes.object.isRequired, contentType: _react.PropTypes.string };Response.defaultProps = { response: (0, _immutable.fromJS)({}) };exports.default = Response; + +/***/ }, +/* 290 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);var _utils = __webpack_require__(13); + + var _lowerCase = __webpack_require__(291);var _lowerCase2 = _interopRequireDefault(_lowerCase);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + ResponseBody = function (_React$Component) {_inherits(ResponseBody, _React$Component);function ResponseBody() {_classCallCheck(this, ResponseBody);return _possibleConstructorReturn(this, (ResponseBody.__proto__ || Object.getPrototypeOf(ResponseBody)).apply(this, arguments));}_createClass(ResponseBody, [{ key: "render", value: function render() + + + + + + + + + + {var _props = + this.props,content = _props.content,contentType = _props.contentType,url = _props.url,_props$headers = _props.headers,headers = _props$headers === undefined ? {} : _props$headers,getComponent = _props.getComponent; + var HighlightCode = getComponent("highlightCode"); + var body = void 0,bodyEl = void 0; + url = url || ""; + + // JSON + if (/json/i.test(contentType)) { + try { + body = JSON.stringify(JSON.parse(content), null, " "); + } catch (error) { + body = "can't parse JSON. Raw result:\n\n" + content; + } + + bodyEl = _react2.default.createElement(HighlightCode, { value: body }); + + // XML + } else if (/xml/i.test(contentType)) { + body = (0, _utils.formatXml)(content); + bodyEl = _react2.default.createElement(HighlightCode, { value: body }); + + // HTML or Plain Text + } else if ((0, _lowerCase2.default)(contentType) === "text/html" || /text\/plain/.test(contentType)) { + bodyEl = _react2.default.createElement(HighlightCode, { value: content }); + + // Image + } else if (/^image\//i.test(contentType)) { + bodyEl = _react2.default.createElement("img", { src: url }); + + // Audio + } else if (/^audio\//i.test(contentType)) { + bodyEl = _react2.default.createElement("pre", null, _react2.default.createElement("audio", { controls: true }, _react2.default.createElement("source", { src: url, type: contentType }))); + + // Download + } else if ( + /^application\/octet-stream/i.test(contentType) || + headers["Content-Disposition"] && /attachment/i.test(headers["Content-Disposition"]) || + headers["content-disposition"] && /attachment/i.test(headers["content-disposition"]) || + headers["Content-Description"] && /File Transfer/i.test(headers["Content-Description"]) || + headers["content-description"] && /File Transfer/i.test(headers["content-description"])) { + + var contentLength = headers["content-length"] || headers["Content-Length"]; + if (!+contentLength) return null; + + var isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent); + + if (!isSafari && "Blob" in window) { + var type = contentType || "text/html"; + var blob = content instanceof Blob ? content : new Blob([content], { type: type }); + var href = window.URL.createObjectURL(blob); + var fileName = url.substr(url.lastIndexOf("/") + 1); + var download = [type, fileName, href].join(":"); + + // Use filename from response header + var disposition = headers["content-disposition"] || headers["Content-Disposition"]; + if (typeof disposition !== "undefined") { + var responseFilename = /filename=([^;]*);?/i.exec(disposition); + if (responseFilename !== null && responseFilename.length > 1) { + download = responseFilename[1]; + } + } + + bodyEl = _react2.default.createElement("div", null, _react2.default.createElement("a", { href: href, download: download }, "Download file")); + } else { + bodyEl = _react2.default.createElement("pre", null, "Download headers detected but your browser does not support downloading binary via XHR (Blob)."); + } + + // Anything else (CORS) + } else if (typeof content === "string") { + bodyEl = _react2.default.createElement(HighlightCode, { value: content }); + } else { + bodyEl = _react2.default.createElement("div", null, "Unknown response type"); + } + + return !bodyEl ? null : _react2.default.createElement("div", null, + _react2.default.createElement("h5", null, "Response body"), + bodyEl); + + + } }]);return ResponseBody;}(_react2.default.Component);ResponseBody.propTypes = { content: _react.PropTypes.any.isRequired, contentType: _react.PropTypes.string.isRequired, getComponent: _react.PropTypes.func.isRequired, headers: _react.PropTypes.object, url: _react.PropTypes.string };exports.default = ResponseBody; + +/***/ }, +/* 291 */ +/***/ function(module, exports, __webpack_require__) { + + var createCompounder = __webpack_require__(41); + + /** + * Converts `string`, as space separated words, to lower case. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the lower cased string. + * @example + * + * _.lowerCase('--Foo-Bar--'); + * // => 'foo bar' + * + * _.lowerCase('fooBar'); + * // => 'foo bar' + * + * _.lowerCase('__FOO_BAR__'); + * // => 'foo bar' + */ + var lowerCase = createCompounder(function(result, word, index) { + return result + (index ? ' ' : '') + word.toLowerCase(); + }); + + module.exports = lowerCase; + + +/***/ }, +/* 292 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _reactImmutableProptypes = __webpack_require__(273);var _reactImmutableProptypes2 = _interopRequireDefault(_reactImmutableProptypes); + var _immutable = __webpack_require__(7);var _immutable2 = _interopRequireDefault(_immutable);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;} + + // More readable, just iterate over maps, only + var eachMap = function eachMap(iterable, fn) {return iterable.valueSeq().filter(_immutable2.default.Map.isMap).map(fn);};var + + Parameters = function (_Component) {_inherits(Parameters, _Component);function Parameters() {var _ref;var _temp, _this, _ret;_classCallCheck(this, Parameters);for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Parameters.__proto__ || Object.getPrototypeOf(Parameters)).call.apply(_ref, [this].concat(args))), _this), _this. + + + + + + + + + + + + + + + + + + + + + + + + + onChange = function (param, value, isXml) {var _this$props = + + + + _this.props,changeParam = _this$props.specActions.changeParam,onChangeKey = _this$props.onChangeKey; + + changeParam(onChangeKey, param.get("name"), value, isXml); + }, _this. + + onChangeConsumesWrapper = function (val) {var _this$props2 = + + + + _this.props,changeConsumesValue = _this$props2.specActions.changeConsumesValue,onChangeKey = _this$props2.onChangeKey; + + changeConsumesValue(onChangeKey, val); + }, _temp), _possibleConstructorReturn(_this, _ret);}_createClass(Parameters, [{ key: "render", value: function render() + + {var _this2 = this;var _props = + + + + + + + + + + + + + this.props,onTryoutClick = _props.onTryoutClick,onCancelClick = _props.onCancelClick,parameters = _props.parameters,allowTryItOut = _props.allowTryItOut,tryItOutEnabled = _props.tryItOutEnabled,fn = _props.fn,getComponent = _props.getComponent,specSelectors = _props.specSelectors,pathMethod = _props.pathMethod; + + var ParameterRow = getComponent("parameterRow"); + var TryItOutButton = getComponent("TryItOutButton"); + + var isExecute = tryItOutEnabled && allowTryItOut; + + return ( + _react2.default.createElement("div", { className: "opblock-section" }, + _react2.default.createElement("div", { className: "opblock-section-header" }, + _react2.default.createElement("h4", { className: "opblock-title" }, "Parameters"), + allowTryItOut ? + _react2.default.createElement(TryItOutButton, { enabled: tryItOutEnabled, onCancelClick: onCancelClick, onTryoutClick: onTryoutClick }) : + null), + + !parameters.count() ? _react2.default.createElement("div", { className: "opblock-description-wrapper" }, _react2.default.createElement("p", null, "No parameters")) : + _react2.default.createElement("div", { className: "table-container" }, + _react2.default.createElement("table", { className: "parameters" }, + _react2.default.createElement("thead", null, + _react2.default.createElement("tr", null, + _react2.default.createElement("th", { className: "col col_header parameters-col_name" }, "Name"), + _react2.default.createElement("th", { className: "col col_header parameters-col_description" }, "Description"))), + + + _react2.default.createElement("tbody", null, + + eachMap(parameters, function (parameter) {return ( + _react2.default.createElement(ParameterRow, { fn: fn, + getComponent: getComponent, + param: parameter, + key: parameter.get("name"), + onChange: _this2.onChange, + onChangeConsumes: _this2.onChangeConsumesWrapper, + specSelectors: specSelectors, + pathMethod: pathMethod, + isExecute: isExecute }));}). + toArray()))))); + + + + + + + + } }]);return Parameters;}(_react.Component);Parameters.propTypes = { parameters: _reactImmutableProptypes2.default.list.isRequired, specActions: _react.PropTypes.object.isRequired, getComponent: _react.PropTypes.func.isRequired, specSelectors: _react.PropTypes.object.isRequired, fn: _react.PropTypes.object.isRequired, tryItOutEnabled: _react.PropTypes.bool, allowTryItOut: _react.PropTypes.bool, onTryoutClick: _react.PropTypes.func, onCancelClick: _react.PropTypes.func, onChangeKey: _react.PropTypes.array, pathMethod: _react.PropTypes.array.isRequired };Parameters.defaultProps = { onTryoutClick: Function.prototype, onCancelClick: Function.prototype, tryItOutEnabled: false, allowTryItOut: true, onChangeKey: [] };exports.default = Parameters; + +/***/ }, +/* 293 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);var _window = __webpack_require__(12);var _window2 = _interopRequireDefault(_window);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + + + ParameterRow = function (_Component) {_inherits(ParameterRow, _Component); + + + + + + + + + + + + function ParameterRow(props, context) {_classCallCheck(this, ParameterRow);var _this = _possibleConstructorReturn(this, (ParameterRow.__proto__ || Object.getPrototypeOf(ParameterRow)).call(this, + props, context));_initialiseProps.call(_this);var + + specSelectors = props.specSelectors,pathMethod = props.pathMethod,param = props.param; + var defaultValue = param.get("default"); + var parameter = specSelectors.getParameter(pathMethod, param.get("name")); + var value = parameter ? parameter.get("value") : ""; + if (defaultValue !== undefined && value === undefined) { + _this.onChangeWrapper(defaultValue); + }return _this; + }_createClass(ParameterRow, [{ key: "componentWillReceiveProps", value: function componentWillReceiveProps( + + props) {var + specSelectors = props.specSelectors,pathMethod = props.pathMethod,param = props.param; + var defaultValue = param.get("default"); + var parameter = specSelectors.getParameter(pathMethod, param.get("name")); + var value = parameter ? parameter.get("value") : ""; + if (defaultValue !== undefined && value === undefined) { + this.onChangeWrapper(defaultValue); + } + } }, { key: "render", value: function render() + + + + + + + {var _props = + this.props,param = _props.param,onChange = _props.onChange,getComponent = _props.getComponent,isExecute = _props.isExecute,fn = _props.fn,onChangeConsumes = _props.onChangeConsumes,specSelectors = _props.specSelectors,pathMethod = _props.pathMethod; + + // const onChangeWrapper = (value) => onChange(param, value) + var JsonSchemaForm = getComponent("JsonSchemaForm"); + var ParamBody = getComponent("ParamBody"); + var inType = param.get("in"); + var bodyParam = inType !== "body" ? null : + _react2.default.createElement(ParamBody, { getComponent: getComponent, + fn: fn, + param: param, + consumes: specSelectors.operationConsumes(pathMethod), + consumesValue: specSelectors.contentTypeValues(pathMethod).get("requestContentType"), + onChange: onChange, + onChangeConsumes: onChangeConsumes, + isExecute: isExecute, + specSelectors: specSelectors, + pathMethod: pathMethod }); + + + var ModelExample = getComponent("modelExample"); + var Markdown = getComponent("Markdown"); + + var schema = param.get("schema"); + + var isFormData = inType === "formData"; + var isFormDataSupported = "FormData" in _window2.default; + var required = param.get("required"); + var itemType = param.getIn(["items", "type"]); + var parameter = specSelectors.getParameter(pathMethod, param.get("name")); + var value = parameter ? parameter.get("value") : ""; + + return ( + _react2.default.createElement("tr", null, + _react2.default.createElement("td", { className: "col parameters-col_name" }, + _react2.default.createElement("div", { className: required ? "parameter__name required" : "parameter__name" }, + param.get("name"), + !required ? null : _react2.default.createElement("span", { style: { color: "red" } }, "\xA0*")), + + _react2.default.createElement("div", { className: "par\u0430meter__type" }, param.get("type"), " ", itemType && "[" + itemType + "]"), + _react2.default.createElement("div", { className: "parameter__in" }, "(", param.get("in"), ")")), + + + _react2.default.createElement("td", { className: "col parameters-col_description" }, + _react2.default.createElement(Markdown, { options: { html: true, typographer: true, linkify: true, linkTarget: "_blank" }, + source: param.get("description") }), + isFormData && !isFormDataSupported && _react2.default.createElement("div", null, "Error: your browser does not support FormData"), + + bodyParam || !isExecute ? null : + _react2.default.createElement(JsonSchemaForm, { fn: fn, + getComponent: getComponent, + value: value, + required: required, + description: param.get("description") ? param.get("name") + " - " + param.get("description") : "" + param.get("name"), + onChange: this.onChangeWrapper, + schema: param }), + + + + + bodyParam && schema ? _react2.default.createElement(ModelExample, { getComponent: getComponent, + isExecute: isExecute, + specSelectors: specSelectors, + schema: schema, + example: bodyParam }) : + null))); + + + + + + + + } }]);return ParameterRow;}(_react.Component);ParameterRow.propTypes = { onChange: _react.PropTypes.func.isRequired, param: _react.PropTypes.object.isRequired, getComponent: _react.PropTypes.func.isRequired, fn: _react.PropTypes.object.isRequired, isExecute: _react.PropTypes.bool, onChangeConsumes: _react.PropTypes.func.isRequired, specSelectors: _react.PropTypes.object.isRequired, pathMethod: _react.PropTypes.array.isRequired };var _initialiseProps = function _initialiseProps() {var _this2 = this;this.onChangeWrapper = function (value) {var _props2 = _this2.props,onChange = _props2.onChange,param = _props2.param;return onChange(param, value);};};exports.default = ParameterRow; + +/***/ }, +/* 294 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + Execute = function (_Component) {_inherits(Execute, _Component);function Execute() {var _ref;var _temp, _this, _ret;_classCallCheck(this, Execute);for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Execute.__proto__ || Object.getPrototypeOf(Execute)).call.apply(_ref, [this].concat(args))), _this), _this. + + + + + + + + + + + + onClick = function () {var _this$props = + _this.props,specSelectors = _this$props.specSelectors,specActions = _this$props.specActions,operation = _this$props.operation,path = _this$props.path,method = _this$props.method; + + specActions.validateParams([path, method]); + + if (specSelectors.validateBeforeExecute([path, method])) { + if (_this.props.onExecute) { + _this.props.onExecute(); + } + specActions.execute({ operation: operation, path: path, method: method }); + } + }, _this. + + onChangeProducesWrapper = function (val) {return _this.props.specActions.changeProducesValue([_this.props.path, _this.props.method], val);}, _temp), _possibleConstructorReturn(_this, _ret);}_createClass(Execute, [{ key: "render", value: function render() + + { + return ( + _react2.default.createElement("button", { className: "btn execute opblock-control__btn", onClick: this.onClick }, "Execute")); + + + + } }]);return Execute;}(_react.Component);Execute.propTypes = { specSelectors: _react.PropTypes.object.isRequired, specActions: _react.PropTypes.object.isRequired, operation: _react.PropTypes.object.isRequired, path: _react.PropTypes.string.isRequired, getComponent: _react.PropTypes.func.isRequired, method: _react.PropTypes.string.isRequired, onExecute: _react.PropTypes.func };exports.default = Execute; + +/***/ }, +/* 295 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}();var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _immutable = __webpack_require__(7);var _immutable2 = _interopRequireDefault(_immutable);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + Headers = function (_React$Component) {_inherits(Headers, _React$Component);function Headers() {_classCallCheck(this, Headers);return _possibleConstructorReturn(this, (Headers.__proto__ || Object.getPrototypeOf(Headers)).apply(this, arguments));}_createClass(Headers, [{ key: "render", value: function render() + + + + + + {var + + headers = this.props.headers; + + if (!headers || !headers.size) + return null; + + return ( + _react2.default.createElement("div", { className: "headers-wrapper" }, + _react2.default.createElement("h4", { className: "headers__title" }, "Headers:"), + _react2.default.createElement("table", { className: "headers" }, + _react2.default.createElement("thead", null, + _react2.default.createElement("tr", { className: "header-row" }, + _react2.default.createElement("th", { className: "header-col" }, "Name"), + _react2.default.createElement("th", { className: "header-col" }, "Description"), + _react2.default.createElement("th", { className: "header-col" }, "Type"))), + + + _react2.default.createElement("tbody", null, + + headers.entrySeq().map(function (_ref) {var _ref2 = _slicedToArray(_ref, 2),key = _ref2[0],header = _ref2[1]; + if (!_immutable2.default.Map.isMap(header)) { + return null; + } + return _react2.default.createElement("tr", { key: key }, + _react2.default.createElement("td", { className: "header-col" }, key), + _react2.default.createElement("td", { className: "header-col" }, header.get("description")), + _react2.default.createElement("td", { className: "header-col" }, header.get("type"))); + + }).toArray())))); + + + + + + } }]);return Headers;}(_react2.default.Component);Headers.propTypes = { headers: _react.PropTypes.object.isRequired };exports.default = Headers; + +/***/ }, +/* 296 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _immutable = __webpack_require__(7); + var _reactCollapse = __webpack_require__(297);var _reactCollapse2 = _interopRequireDefault(_reactCollapse);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + Errors = function (_React$Component) {_inherits(Errors, _React$Component);function Errors() {_classCallCheck(this, Errors);return _possibleConstructorReturn(this, (Errors.__proto__ || Object.getPrototypeOf(Errors)).apply(this, arguments));}_createClass(Errors, [{ key: "render", value: function render() + + + + + + + + + {var _props = + this.props,jumpToLine = _props.jumpToLine,errSelectors = _props.errSelectors,layoutSelectors = _props.layoutSelectors,layoutActions = _props.layoutActions; + + var errors = errSelectors.allErrors(); + + // all thrown errors, plus error-level everything else + var allErrorsToDisplay = errors.filter(function (err) {return err.get("type") === "thrown" ? true : err.get("level") === "error";}); + + if (!allErrorsToDisplay || allErrorsToDisplay.count() < 1) { + return null; + } + + var isVisible = layoutSelectors.isShown(["errorPane"], true); + var toggleVisibility = function toggleVisibility() {return layoutActions.show(["errorPane"], !isVisible);}; + + var sortedJSErrors = allErrorsToDisplay.sortBy(function (err) {return err.get("line");}); + + return ( + _react2.default.createElement("pre", { className: "errors-wrapper" }, + _react2.default.createElement("hgroup", { className: "error" }, + _react2.default.createElement("h4", { className: "errors__title" }, "Errors"), + _react2.default.createElement("button", { className: "btn errors__clear-btn", onClick: toggleVisibility }, isVisible ? "Hide" : "Show")), + + _react2.default.createElement(_reactCollapse2.default, { isOpened: isVisible, animated: true }, + _react2.default.createElement("div", { className: "errors" }, + sortedJSErrors.map(function (err, i) { + if (err.get("type") === "thrown") { + return _react2.default.createElement(ThrownErrorItem, { key: i, error: err.get("error") || err, jumpToLine: jumpToLine }); + } + if (err.get("type") === "spec") { + return _react2.default.createElement(SpecErrorItem, { key: i, error: err, jumpToLine: jumpToLine }); + } + }))))); + + + + + } }]);return Errors;}(_react2.default.Component);Errors.propTypes = { jumpToLine: _react.PropTypes.func, errSelectors: _react.PropTypes.object.isRequired, layoutSelectors: _react.PropTypes.object.isRequired, layoutActions: _react.PropTypes.object.isRequired };exports.default = Errors; + + + var ThrownErrorItem = function ThrownErrorItem(_ref) {var error = _ref.error,jumpToLine = _ref.jumpToLine; + if (!error) { + return null; + } + var errorLine = error.get("line"); + + return ( + _react2.default.createElement("div", { className: "error-wrapper" }, + !error ? null : + _react2.default.createElement("div", null, + _react2.default.createElement("h4", null, error.get("source") && error.get("level") ? + toTitleCase(error.get("source")) + " " + error.get("level") : "", + error.get("path") ? _react2.default.createElement("small", null, " at ", error.get("path")) : null), + _react2.default.createElement("span", { style: { whiteSpace: "pre-line", "maxWidth": "100%" } }, + error.get("message")), + + _react2.default.createElement("div", null, + errorLine && jumpToLine ? _react2.default.createElement("a", { onClick: jumpToLine.bind(null, errorLine) }, "Jump to line ", errorLine) : null)))); + + + + + + }; + + var SpecErrorItem = function SpecErrorItem(_ref2) {var error = _ref2.error,jumpToLine = _ref2.jumpToLine; + var locationMessage = null; + + if (error.get("path")) { + if (_immutable.List.isList(error.get("path"))) { + locationMessage = _react2.default.createElement("small", null, "at ", error.get("path").join(".")); + } else { + locationMessage = _react2.default.createElement("small", null, "at ", error.get("path")); + } + } else if (error.get("line") && !jumpToLine) { + locationMessage = _react2.default.createElement("small", null, "on line ", error.get("line")); + } + + return ( + _react2.default.createElement("div", { className: "error-wrapper" }, + !error ? null : + _react2.default.createElement("div", null, + _react2.default.createElement("h4", null, toTitleCase(error.get("source")) + " " + error.get("level"), "\xA0", locationMessage), + _react2.default.createElement("span", { style: { whiteSpace: "pre-line" } }, error.get("message")), + _react2.default.createElement("div", null, + jumpToLine ? + _react2.default.createElement("a", { onClick: jumpToLine.bind(null, error.get("line")) }, "Jump to line ", error.get("line")) : + null)))); + + + + + + }; + + function toTitleCase(str) { + return str. + split(" "). + map(function (substr) {return substr[0].toUpperCase() + substr.slice(1);}). + join(" "); + } + + ThrownErrorItem.propTypes = { + error: _react.PropTypes.object.isRequired, + jumpToLine: _react.PropTypes.func }; + + + ThrownErrorItem.defaultProps = { + jumpToLine: null }; + + + SpecErrorItem.propTypes = { + error: _react.PropTypes.object.isRequired, + jumpToLine: _react.PropTypes.func }; + +/***/ }, +/* 297 */ +/***/ function(module, exports) { + + module.exports = require("react-collapse"); + +/***/ }, +/* 298 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _reactImmutableProptypes = __webpack_require__(273);var _reactImmutableProptypes2 = _interopRequireDefault(_reactImmutableProptypes); + var _immutable = __webpack_require__(7);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;} + + var noop = function noop() {};var + + ContentType = function (_React$Component) {_inherits(ContentType, _React$Component);function ContentType() {var _ref;var _temp, _this, _ret;_classCallCheck(this, ContentType);for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = ContentType.__proto__ || Object.getPrototypeOf(ContentType)).call.apply(_ref, [this].concat(args))), _this), _this. + + + + + + + + + + + + + + + + + + + + onChangeWrapper = function (e) {return _this.props.onChange(e.target.value);}, _temp), _possibleConstructorReturn(_this, _ret);}_createClass(ContentType, [{ key: "componentDidMount", value: function componentDidMount() {// Needed to populate the form, initially + this.props.onChange(this.props.contentTypes.first());} }, { key: "render", value: function render() + {var _props = + this.props,contentTypes = _props.contentTypes,className = _props.className,value = _props.value; + + if (!contentTypes || !contentTypes.size) + return null; + + return ( + _react2.default.createElement("div", { className: "content-type-wrapper " + (className || "") }, + _react2.default.createElement("select", { className: "content-type", value: value, onChange: this.onChangeWrapper }, + contentTypes.map(function (val) { + return _react2.default.createElement("option", { key: val, value: val }, val); + }).toArray()))); + + + + } }]);return ContentType;}(_react2.default.Component);ContentType.propTypes = { contentTypes: _react.PropTypes.oneOfType([_reactImmutableProptypes2.default.list, _reactImmutableProptypes2.default.set]), value: _react.PropTypes.string, onChange: _react.PropTypes.func, className: _react.PropTypes.string };ContentType.defaultProps = { onChange: noop, value: null, contentTypes: (0, _immutable.fromJS)(["application/json"]) };exports.default = ContentType; + +/***/ }, +/* 299 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.OperationLink = undefined;var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);var _layoutUtils = __webpack_require__(300);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + + Overview = function (_React$Component) {_inherits(Overview, _React$Component); + + function Overview() {var _ref;_classCallCheck(this, Overview);for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}var _this = _possibleConstructorReturn(this, (_ref = Overview.__proto__ || Object.getPrototypeOf(Overview)).call.apply(_ref, [this].concat( + args))); + _this.setTagShown = _this._setTagShown.bind(_this);return _this; + }_createClass(Overview, [{ key: "_setTagShown", value: function _setTagShown( + + showTagId, shown) { + this.props.layoutActions.show(showTagId, shown); + } }, { key: "showOp", value: function showOp( + + key, shown) {var + layoutActions = this.props.layoutActions; + layoutActions.show(key, shown); + } }, { key: "render", value: function render() + + {var _props = + this.props,specSelectors = _props.specSelectors,layoutSelectors = _props.layoutSelectors,layoutActions = _props.layoutActions,getComponent = _props.getComponent; + var taggedOps = specSelectors.taggedOperations(); + + var Collapse = getComponent("Collapse"); + + return ( + _react2.default.createElement("div", null, + _react2.default.createElement("h4", { className: "overview-title" }, "Overview"), + + + taggedOps.map(function (tagObj, tag) { + var operations = tagObj.get("operations"); + + var showTagId = ["overview-tags", tag]; + var showTag = layoutSelectors.isShown(showTagId, true); + var toggleShow = function toggleShow() {return layoutActions.show(showTagId, !showTag);}; + + return ( + _react2.default.createElement("div", { key: "overview-" + tag }, + + + _react2.default.createElement("h4", { onClick: toggleShow, className: "link overview-tag" }, " ", showTag ? "-" : "+", tag), + + _react2.default.createElement(Collapse, { isOpened: showTag, animated: true }, + + operations.map(function (op) {var _op$toObject = + op.toObject(),path = _op$toObject.path,method = _op$toObject.method,id = _op$toObject.id; // toObject is shallow + var showOpIdPrefix = "operations"; + var showOpId = id; + var shown = layoutSelectors.isShown([showOpIdPrefix, showOpId]); + return _react2.default.createElement(OperationLink, { key: id, + path: path, + method: method, + id: path + "-" + method, + shown: shown, + showOpId: showOpId, + showOpIdPrefix: showOpIdPrefix, + href: "#operation-" + showOpId, + onClick: layoutActions.show }); + }).toArray()))); + + + + + + }).toArray(), + + + taggedOps.size < 1 && _react2.default.createElement("h3", null, " No operations defined in spec! "))); + + + } }]);return Overview;}(_react2.default.Component);exports.default = Overview; + + + + Overview.propTypes = { + layoutSelectors: _react.PropTypes.object.isRequired, + specSelectors: _react.PropTypes.object.isRequired, + layoutActions: _react.PropTypes.object.isRequired, + getComponent: _react.PropTypes.func.isRequired };var + + + OperationLink = exports.OperationLink = function (_React$Component2) {_inherits(OperationLink, _React$Component2); + + function OperationLink(props) {_classCallCheck(this, OperationLink);var _this2 = _possibleConstructorReturn(this, (OperationLink.__proto__ || Object.getPrototypeOf(OperationLink)).call(this, + props)); + _this2.onClick = _this2._onClick.bind(_this2);return _this2; + }_createClass(OperationLink, [{ key: "_onClick", value: function _onClick() + + {var _props2 = + this.props,showOpId = _props2.showOpId,showOpIdPrefix = _props2.showOpIdPrefix,onClick = _props2.onClick,shown = _props2.shown; + onClick([showOpIdPrefix, showOpId], !shown); + } }, { key: "render", value: function render() + + {var _props3 = + this.props,id = _props3.id,method = _props3.method,shown = _props3.shown,href = _props3.href; + + return ( + _react2.default.createElement(_layoutUtils.Link, { href: href, style: { fontWeight: shown ? "bold" : "normal" }, onClick: this.onClick, className: "block opblock-link" }, + _react2.default.createElement("div", null, + _react2.default.createElement("small", { className: "bold-label-" + method }, method.toUpperCase()), + _react2.default.createElement("span", { className: "bold-label" }, id)))); + + + + } }]);return OperationLink;}(_react2.default.Component); + + + + OperationLink.propTypes = { + href: _react.PropTypes.string, + onClick: _react.PropTypes.func, + id: _react.PropTypes.string.isRequired, + method: _react.PropTypes.string.isRequired, + shown: _react.PropTypes.bool.isRequired, + showOpId: _react.PropTypes.string.isRequired, + showOpIdPrefix: _react.PropTypes.string.isRequired }; + +/***/ }, +/* 300 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.Collapse = exports.Link = exports.Select = exports.Input = exports.TextArea = exports.Button = exports.Row = exports.Col = exports.Container = exports.Markdown = undefined;var _extends = Object.assign || function (target) {for (var i = 1; i < arguments.length; i++) {var source = arguments[i];for (var key in source) {if (Object.prototype.hasOwnProperty.call(source, key)) {target[key] = source[key];}}}return target;};var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _reactCollapse = __webpack_require__(297);var _reactCollapse2 = _interopRequireDefault(_reactCollapse); + var _reactRemarkable = __webpack_require__(301);var _reactRemarkable2 = _interopRequireDefault(_reactRemarkable);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _objectWithoutProperties(obj, keys) {var target = {};for (var i in obj) {if (keys.indexOf(i) >= 0) continue;if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;target[i] = obj[i];}return target;}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;} + + function xclass() {for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];} + return args.filter(function (a) {return !!a;}).join(" ").trim(); + } + + var Markdown = exports.Markdown = _reactRemarkable2.default;var + + Container = exports.Container = function (_React$Component) {_inherits(Container, _React$Component);function Container() {_classCallCheck(this, Container);return _possibleConstructorReturn(this, (Container.__proto__ || Object.getPrototypeOf(Container)).apply(this, arguments));}_createClass(Container, [{ key: "render", value: function render() + {var _props = + this.props,fullscreen = _props.fullscreen,full = _props.full,rest = _objectWithoutProperties(_props, ["fullscreen", "full"]); + // Normal element + + if (fullscreen) + return _react2.default.createElement("section", rest); + + var containerClass = "container" + (full ? "-full" : ""); + return ( + _react2.default.createElement("section", _extends({}, rest, { className: xclass(rest.className, containerClass) }))); + + } }]);return Container;}(_react2.default.Component); + + + Container.propTypes = { + fullscreen: _react.PropTypes.bool, + full: _react.PropTypes.bool, + className: _react.PropTypes.string }; + + + var DEVICES = { + "mobile": "", + "tablet": "-tablet", + "desktop": "-desktop", + "large": "-hd" };var + + + Col = exports.Col = function (_React$Component2) {_inherits(Col, _React$Component2);function Col() {_classCallCheck(this, Col);return _possibleConstructorReturn(this, (Col.__proto__ || Object.getPrototypeOf(Col)).apply(this, arguments));}_createClass(Col, [{ key: "render", value: function render() + + {var _props2 = + + + + + + + + + + + + + this.props,hide = _props2.hide,keepContents = _props2.keepContents,mobile = _props2.mobile,tablet = _props2.tablet,desktop = _props2.desktop,large = _props2.large,rest = _objectWithoutProperties(_props2, ["hide", "keepContents", "mobile", "tablet", "desktop", "large"]); + + if (hide && !keepContents) + return _react2.default.createElement("span", null); + + var classesAr = []; + + for (var device in DEVICES) { + var deviceClass = DEVICES[device]; + if (device in this.props) { + var val = this.props[device]; + + if (val < 1) { + classesAr.push("none" + deviceClass); + continue; + } + + classesAr.push("block" + deviceClass); + classesAr.push("col-" + val + deviceClass); + } + } + + var classes = xclass.apply(undefined, [rest.className, "clear"].concat(classesAr)); + + return ( + _react2.default.createElement("section", _extends({}, rest, { style: { display: hide ? "none" : null }, className: classes }))); + + } }]);return Col;}(_react2.default.Component); + + + + Col.propTypes = { + hide: _react.PropTypes.bool, + keepContents: _react.PropTypes.bool, + mobile: _react.PropTypes.number, + tablet: _react.PropTypes.number, + desktop: _react.PropTypes.number, + large: _react.PropTypes.number, + className: _react.PropTypes.string };var + + + Row = exports.Row = function (_React$Component3) {_inherits(Row, _React$Component3);function Row() {_classCallCheck(this, Row);return _possibleConstructorReturn(this, (Row.__proto__ || Object.getPrototypeOf(Row)).apply(this, arguments));}_createClass(Row, [{ key: "render", value: function render() + + { + return _react2.default.createElement("div", _extends({}, this.props, { className: xclass(this.props.className, "wrapper") })); + } }]);return Row;}(_react2.default.Component); + + + + Row.propTypes = { + className: _react.PropTypes.string };var + + + Button = exports.Button = function (_React$Component4) {_inherits(Button, _React$Component4);function Button() {_classCallCheck(this, Button);return _possibleConstructorReturn(this, (Button.__proto__ || Object.getPrototypeOf(Button)).apply(this, arguments));}_createClass(Button, [{ key: "render", value: function render() + + + + + + + + + + { + return _react2.default.createElement("button", _extends({}, this.props, { className: xclass(this.props.className, "button") })); + } }]);return Button;}(_react2.default.Component);Button.propTypes = { className: _react.PropTypes.string };Button.defaultProps = { className: "" }; + + + + + var TextArea = exports.TextArea = function TextArea(props) {return _react2.default.createElement("textarea", props);}; + + var Input = exports.Input = function Input(props) {return _react2.default.createElement("input", props);};var + + Select = exports.Select = function (_React$Component5) {_inherits(Select, _React$Component5); + + + + + + + + + + + + + + function Select(props, context) {_classCallCheck(this, Select);var _this5 = _possibleConstructorReturn(this, (Select.__proto__ || Object.getPrototypeOf(Select)).call(this, + props, context));_initialiseProps.call(_this5); + + var value = void 0; + + if (props.value !== undefined) { + value = props.value; + } else { + value = props.multiple ? [""] : ""; + } + + _this5.state = { value: value };return _this5; + }_createClass(Select, [{ key: "render", value: function render() + + + + + + + + + + + + + + + + + + + + + + + + {var _props3 = + this.props,allowedValues = _props3.allowedValues,multiple = _props3.multiple,allowEmptyValue = _props3.allowEmptyValue; + var value = this.state.value.toJS ? this.state.value.toJS() : this.state.value; + + return ( + _react2.default.createElement("select", { multiple: multiple, value: value, onChange: this.onChange }, + allowEmptyValue ? _react2.default.createElement("option", { value: "" }, "--") : null, + + allowedValues.map(function (item, key) { + return _react2.default.createElement("option", { key: key, value: String(item) }, item); + }))); + + + + } }]);return Select;}(_react2.default.Component);Select.propTypes = { allowedValues: _react.PropTypes.object, value: _react.PropTypes.any, onChange: _react.PropTypes.func, multiple: _react.PropTypes.bool, allowEmptyValue: _react.PropTypes.bool };Select.defaultProps = { multiple: false, allowEmptyValue: true };var _initialiseProps = function _initialiseProps() {var _this8 = this;this.onChange = function (e) {var _props5 = _this8.props,onChange = _props5.onChange,multiple = _props5.multiple;var options = [].slice.call(e.target.options);var value = void 0;if (multiple) {value = options.filter(function (option) {return option.selected;}).map(function (option) {return option.value;});} else {value = e.target.value;}_this8.setState({ value: value });onChange && onChange(value);};};var + + + Link = exports.Link = function (_React$Component6) {_inherits(Link, _React$Component6);function Link() {_classCallCheck(this, Link);return _possibleConstructorReturn(this, (Link.__proto__ || Object.getPrototypeOf(Link)).apply(this, arguments));}_createClass(Link, [{ key: "render", value: function render() + + { + return _react2.default.createElement("a", _extends({}, this.props, { className: xclass(this.props.className, "link") })); + } }]);return Link;}(_react2.default.Component); + + + + Link.propTypes = { + className: _react.PropTypes.string }; + + + var NoMargin = function NoMargin(_ref) {var children = _ref.children;return _react2.default.createElement("div", { style: { height: "auto", border: "none", margin: 0, padding: 0 } }, " ", children, " ");}; + + NoMargin.propTypes = { + children: _react.PropTypes.node };var + + + Collapse = exports.Collapse = function (_React$Component7) {_inherits(Collapse, _React$Component7);function Collapse() {_classCallCheck(this, Collapse);return _possibleConstructorReturn(this, (Collapse.__proto__ || Object.getPrototypeOf(Collapse)).apply(this, arguments));}_createClass(Collapse, [{ key: "renderNotAnimated", value: function renderNotAnimated() + + + + + + + + + + + + + { + if (!this.props.isOpened) + return _react2.default.createElement("noscript", null); + return ( + _react2.default.createElement(NoMargin, null, + this.props.children)); + + + } }, { key: "render", value: function render() + + {var _props4 = + this.props,animated = _props4.animated,isOpened = _props4.isOpened,children = _props4.children; + + if (!animated) + return this.renderNotAnimated(); + + children = isOpened ? children : null; + return ( + _react2.default.createElement(_reactCollapse2.default, { isOpened: isOpened }, + _react2.default.createElement(NoMargin, null, + children))); + + + + } }]);return Collapse;}(_react2.default.Component);Collapse.propTypes = { isOpened: _react.PropTypes.bool, children: _react.PropTypes.node.isRequired, animated: _react.PropTypes.bool };Collapse.defaultProps = { isOpened: false, animated: false }; + +/***/ }, +/* 301 */ +/***/ function(module, exports) { + + module.exports = require("react-remarkable"); + +/***/ }, +/* 302 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _immutable = __webpack_require__(7); + var _reactImmutableProptypes = __webpack_require__(273);var _reactImmutableProptypes2 = _interopRequireDefault(_reactImmutableProptypes);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + + Path = function (_React$Component) {_inherits(Path, _React$Component);function Path() {_classCallCheck(this, Path);return _possibleConstructorReturn(this, (Path.__proto__ || Object.getPrototypeOf(Path)).apply(this, arguments));}_createClass(Path, [{ key: "render", value: function render() + + + + + + {var _props = + this.props,host = _props.host,basePath = _props.basePath; + + return ( + _react2.default.createElement("pre", { className: "base-url" }, "[ Base url: ", + host, basePath, "]")); + + + } }]);return Path;}(_react2.default.Component);Path.propTypes = { host: _react.PropTypes.string, basePath: _react.PropTypes.string };var + + + + Contact = function (_React$Component2) {_inherits(Contact, _React$Component2);function Contact() {_classCallCheck(this, Contact);return _possibleConstructorReturn(this, (Contact.__proto__ || Object.getPrototypeOf(Contact)).apply(this, arguments));}_createClass(Contact, [{ key: "render", value: function render() + + + + + {var + data = this.props.data; + var name = data.get("name") || "the developer"; + var url = data.get("url"); + var email = data.get("email"); + + return ( + _react2.default.createElement("div", null, + url && _react2.default.createElement("div", null, _react2.default.createElement("a", { href: url, target: "_blank" }, name, " - Website")), + email && + _react2.default.createElement("a", { href: "mailto:" + email }, + url ? "Send email to " + name : "Contact " + name))); + + + + + } }]);return Contact;}(_react2.default.Component);Contact.propTypes = { data: _react.PropTypes.object };var + + + License = function (_React$Component3) {_inherits(License, _React$Component3);function License() {_classCallCheck(this, License);return _possibleConstructorReturn(this, (License.__proto__ || Object.getPrototypeOf(License)).apply(this, arguments));}_createClass(License, [{ key: "render", value: function render() + + + + + {var + license = this.props.license; + var name = license.get("name") || "License"; + var url = license.get("url"); + + return ( + _react2.default.createElement("div", null, + + url ? _react2.default.createElement("a", { target: "_blank", href: url }, name) : + _react2.default.createElement("span", null, name))); + + + + } }]);return License;}(_react2.default.Component);License.propTypes = { license: _react.PropTypes.object };var + + + Info = function (_React$Component4) {_inherits(Info, _React$Component4);function Info() {_classCallCheck(this, Info);return _possibleConstructorReturn(this, (Info.__proto__ || Object.getPrototypeOf(Info)).apply(this, arguments));}_createClass(Info, [{ key: "render", value: function render() + + + + + + + + + + {var _props2 = + this.props,info = _props2.info,url = _props2.url,host = _props2.host,basePath = _props2.basePath,getComponent = _props2.getComponent,externalDocs = _props2.externalDocs; + var version = info.get("version"); + var description = info.get("description"); + var title = info.get("title"); + var termsOfService = info.get("termsOfService"); + var contact = info.get("contact"); + var license = info.get("license");var _toJS = + (externalDocs || (0, _immutable.fromJS)({})).toJS(),externalDocsUrl = _toJS.url,externalDocsDescription = _toJS.description; + + var Markdown = getComponent("Markdown"); + + return ( + _react2.default.createElement("div", { className: "info" }, + _react2.default.createElement("hgroup", { className: "main" }, + _react2.default.createElement("h2", { className: "title" }, title, + version && _react2.default.createElement("small", null, _react2.default.createElement("pre", { className: "version" }, " ", version, " "))), + + host || basePath ? _react2.default.createElement(Path, { host: host, basePath: basePath }) : null, + url && _react2.default.createElement("a", { target: "_blank", href: url }, _react2.default.createElement("span", { className: "url" }, " ", url, " "))), + + + _react2.default.createElement("div", { className: "description" }, + _react2.default.createElement(Markdown, { options: { html: true, typographer: true, linkify: true, linkTarget: "_blank" }, source: description })), + + + + termsOfService && _react2.default.createElement("div", null, + _react2.default.createElement("a", { target: "_blank", href: termsOfService }, "Terms of service")), + + + + contact && contact.size ? _react2.default.createElement(Contact, { data: contact }) : null, + license && license.size ? _react2.default.createElement(License, { license: license }) : null, + externalDocsUrl ? + _react2.default.createElement("a", { target: "_blank", href: externalDocsUrl }, externalDocsDescription || externalDocsUrl) : + null)); + + + + } }]);return Info;}(_react2.default.Component);Info.propTypes = { info: _react.PropTypes.object, url: _react.PropTypes.string, host: _react.PropTypes.string, basePath: _react.PropTypes.string, externalDocs: _reactImmutableProptypes2.default.map, getComponent: _react.PropTypes.func.isRequired };exports.default = Info; + + + + Info.propTypes = { + title: _react.PropTypes.any, + description: _react.PropTypes.any, + version: _react.PropTypes.any, + url: _react.PropTypes.string }; + +/***/ }, +/* 303 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + Footer = function (_React$Component) {_inherits(Footer, _React$Component);function Footer() {_classCallCheck(this, Footer);return _possibleConstructorReturn(this, (Footer.__proto__ || Object.getPrototypeOf(Footer)).apply(this, arguments));}_createClass(Footer, [{ key: "render", value: function render() + { + return ( + _react2.default.createElement("div", { className: "footer" })); + + } }]);return Footer;}(_react2.default.Component);exports.default = Footer; + +/***/ }, +/* 304 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _reactAddonsShallowCompare = __webpack_require__(285);var _reactAddonsShallowCompare2 = _interopRequireDefault(_reactAddonsShallowCompare); + var _immutable = __webpack_require__(7);var _utils = __webpack_require__(13);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;} + + + var NOOP = Function.prototype;var + + ParamBody = function (_Component) {_inherits(ParamBody, _Component); + + + + + + + + + + + + + + + + + + + + + + function ParamBody(props, context) {_classCallCheck(this, ParamBody);var _this = _possibleConstructorReturn(this, (ParamBody.__proto__ || Object.getPrototypeOf(ParamBody)).call(this, + props, context));_initialiseProps.call(_this); + + _this.state = { + isEditBox: false, + value: "" };return _this; + + + }_createClass(ParamBody, [{ key: "componentDidMount", value: function componentDidMount() + + { + this.updateValues.call(this, this.props); + } }, { key: "shouldComponentUpdate", value: function shouldComponentUpdate( + + props, state) { + return (0, _reactAddonsShallowCompare2.default)(this, props, state); + } }, { key: "componentWillReceiveProps", value: function componentWillReceiveProps( + + nextProps) { + this.updateValues.call(this, nextProps); + } }, { key: "render", value: function render() + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {var _props = + + + + + + + + + this.props,onChangeConsumes = _props.onChangeConsumes,param = _props.param,isExecute = _props.isExecute,specSelectors = _props.specSelectors,pathMethod = _props.pathMethod,getComponent = _props.getComponent; + + var Button = getComponent("Button"); + var TextArea = getComponent("TextArea"); + var HighlightCode = getComponent("highlightCode"); + var ContentType = getComponent("contentType"); + // for domains where specSelectors not passed + var parameter = specSelectors ? specSelectors.getParameter(pathMethod, param.get("name")) : param; + var errors = parameter.get("errors", (0, _immutable.List)()); + var consumesValue = specSelectors.contentTypeValues(pathMethod).get("requestContentType"); + var consumes = this.props.consumes && this.props.consumes.size ? this.props.consumes : ParamBody.defaultProp.consumes;var _state = + + this.state,value = _state.value,isEditBox = _state.isEditBox; + + return ( + _react2.default.createElement("div", { className: "body-param" }, + + isEditBox && isExecute ? + _react2.default.createElement(TextArea, { className: "body-param__text" + (errors.count() ? " invalid" : ""), value: value, onChange: this.handleOnChange }) : + value && _react2.default.createElement(HighlightCode, { className: "body-param__example", + value: value }), + + _react2.default.createElement("div", { className: "body-param-options" }, + + !isExecute ? null : + _react2.default.createElement("div", { className: "body-param-edit" }, + _react2.default.createElement(Button, { className: isEditBox ? "btn cancel body-param__example-edit" : "btn edit body-param__example-edit", + onClick: this.toggleIsEditBox }, isEditBox ? "Cancel" : "Edit")), + + + + _react2.default.createElement("label", { htmlFor: "" }, + _react2.default.createElement("span", null, "Parameter content type"), + _react2.default.createElement(ContentType, { value: consumesValue, contentTypes: consumes, onChange: onChangeConsumes, className: "body-param-content-type" }))))); + + + + + + + } }]);return ParamBody;}(_react.Component);ParamBody.propTypes = { param: _react.PropTypes.object, onChange: _react.PropTypes.func, onChangeConsumes: _react.PropTypes.func, consumes: _react.PropTypes.object, consumesValue: _react.PropTypes.string, fn: _react.PropTypes.object.isRequired, getComponent: _react.PropTypes.func.isRequired, isExecute: _react.PropTypes.bool, specSelectors: _react.PropTypes.object.isRequired, pathMethod: _react.PropTypes.array.isRequired };ParamBody.defaultProp = { consumes: (0, _immutable.fromJS)(["application/json"]), param: (0, _immutable.fromJS)({}), onChange: NOOP, onChangeConsumes: NOOP };var _initialiseProps = function _initialiseProps() {var _this2 = this;this.updateValues = function (props) {var specSelectors = props.specSelectors,pathMethod = props.pathMethod,param = props.param,isExecute = props.isExecute,_props$consumesValue = props.consumesValue,consumesValue = _props$consumesValue === undefined ? "" : _props$consumesValue;var parameter = specSelectors ? specSelectors.getParameter(pathMethod, param.get("name")) : {};var isXml = /xml/i.test(consumesValue);var paramValue = isXml ? parameter.get("value_xml") : parameter.get("value");if (paramValue) {_this2.setState({ value: paramValue });_this2.onChange(paramValue, { isXml: isXml, isEditBox: isExecute });} else {if (isXml) {_this2.onChange(_this2.sample("xml"), { isXml: isXml, isEditBox: isExecute });} else {_this2.onChange(_this2.sample(), { isEditBox: isExecute });}}};this.sample = function (xml) {var _props2 = _this2.props,param = _props2.param,inferSchema = _props2.fn.inferSchema;var schema = inferSchema(param.toJS());return (0, _utils.getSampleSchema)(schema, xml);};this.onChange = function (value, _ref) {var isEditBox = _ref.isEditBox,isXml = _ref.isXml;_this2.setState({ value: value, isEditBox: isEditBox });_this2._onChange(value, isXml);};this._onChange = function (val, isXml) {(_this2.props.onChange || NOOP)(_this2.props.param, val, isXml);};this.handleOnChange = function (e) {var consumesValue = _this2.props.consumesValue;_this2.onChange(e.target.value.trim(), { isXml: /xml/i.test(consumesValue) });};this.toggleIsEditBox = function () {return _this2.setState(function (state) {return { isEditBox: !state.isEditBox };});};};exports.default = ParamBody; + +/***/ }, +/* 305 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);var _curlify = __webpack_require__(306);var _curlify2 = _interopRequireDefault(_curlify);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + + Curl = function (_React$Component) {_inherits(Curl, _React$Component);function Curl() {_classCallCheck(this, Curl);return _possibleConstructorReturn(this, (Curl.__proto__ || Object.getPrototypeOf(Curl)).apply(this, arguments));}_createClass(Curl, [{ key: "handleFocus", value: function handleFocus( + + + + + e) { + e.target.select(); + document.execCommand("copy"); + } }, { key: "render", value: function render() + + {var + request = this.props.request; + var curl = (0, _curlify2.default)(request); + + return ( + _react2.default.createElement("div", null, + _react2.default.createElement("h4", null, "Curl"), + _react2.default.createElement("div", { className: "copy-paste" }, + _react2.default.createElement("textarea", { onFocus: this.handleFocus, className: "curl", style: { whiteSpace: "normal" }, value: curl })))); + + + + } }]);return Curl;}(_react2.default.Component);Curl.propTypes = { request: _react.PropTypes.object.isRequired };exports.default = Curl; + +/***/ }, +/* 306 */ +/***/ function(module, exports) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}();exports.default = curl;function curl(request) { + var curlified = []; + var type = ""; + var headers = request.get("headers"); + curlified.push("curl"); + curlified.push("-X", request.get("method")); + curlified.push("\"" + request.get("url") + "\""); + + if (headers && headers.size) {var _iteratorNormalCompletion = true;var _didIteratorError = false;var _iteratorError = undefined;try { + for (var _iterator = request.get("headers").entries()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {var p = _step.value;var _p = _slicedToArray( + p, 2),h = _p[0],v = _p[1]; + type = v; + curlified.push("-H "); + curlified.push("\"" + h + ": " + v + "\""); + }} catch (err) {_didIteratorError = true;_iteratorError = err;} finally {try {if (!_iteratorNormalCompletion && _iterator.return) {_iterator.return();}} finally {if (_didIteratorError) {throw _iteratorError;}}} + } + + if (request.get("body")) { + + if (type === "multipart/form-data" && request.get("method") === "POST") { + var formDataBody = request.get("body").split("&"); + + for (var data in formDataBody) { + curlified.push("-F"); + curlified.push(formDataBody[data]); + } + } else { + curlified.push("-d"); + curlified.push(JSON.stringify(request.get("body")).replace(/\\n/g, "")); + } + } + + return curlified.join(" "); + } + +/***/ }, +/* 307 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + Schemes = function (_React$Component) {_inherits(Schemes, _React$Component);function Schemes() {var _ref;var _temp, _this, _ret;_classCallCheck(this, Schemes);for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Schemes.__proto__ || Object.getPrototypeOf(Schemes)).call.apply(_ref, [this].concat(args))), _this), _this. + + + + + + + + + + + + + + + + onChange = function (e) { + _this.setScheme(e.target.value); + }, _this. + + setScheme = function (value) {var _this$props = + _this.props,path = _this$props.path,method = _this$props.method,specActions = _this$props.specActions; + + specActions.setScheme(value, path, method); + }, _temp), _possibleConstructorReturn(_this, _ret);}_createClass(Schemes, [{ key: "componentWillMount", value: function componentWillMount() {var schemes = this.props.schemes; //fire 'change' event to set default 'value' of select + this.setScheme(schemes.first());} }, { key: "render", value: function render() + {var + schemes = this.props.schemes; + + return ( + _react2.default.createElement("label", { htmlFor: "schemes" }, + _react2.default.createElement("span", { className: "schemes-title" }, "Schemes"), + _react2.default.createElement("select", { onChange: this.onChange }, + schemes.valueSeq().map( + function (scheme) {return _react2.default.createElement("option", { value: scheme, key: scheme }, scheme);}). + toArray()))); + + + + } }]);return Schemes;}(_react2.default.Component);Schemes.propTypes = { specActions: _react.PropTypes.object.isRequired, schemes: _react.PropTypes.object.isRequired, path: _react.PropTypes.string, method: _react.PropTypes.string };exports.default = Schemes; + +/***/ }, +/* 308 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + + ModelExample = function (_React$Component) {_inherits(ModelExample, _React$Component); + + + + + + + + + function ModelExample(props, context) {_classCallCheck(this, ModelExample);var _this = _possibleConstructorReturn(this, (ModelExample.__proto__ || Object.getPrototypeOf(ModelExample)).call(this, + props, context));_this. + + + + + + + activeTab = function (e) {var + name = e.target.dataset.name; + + _this.setState({ + activeTab: name }); + + };_this.state = { activeTab: "example" };return _this;}_createClass(ModelExample, [{ key: "render", value: function render() + + {var _props = + this.props,getComponent = _props.getComponent,specSelectors = _props.specSelectors,schema = _props.schema,example = _props.example,isExecute = _props.isExecute; + var Model = getComponent("model"); + + return _react2.default.createElement("div", null, + _react2.default.createElement("ul", { className: "tab" }, + _react2.default.createElement("li", { className: "tabitem" + (isExecute || this.state.activeTab === "example" ? " active" : "") }, + _react2.default.createElement("a", { className: "tablinks", "data-name": "example", onClick: this.activeTab }, "Example Value")), + + _react2.default.createElement("li", { className: "tabitem" + (!isExecute && this.state.activeTab === "model" ? " active" : "") }, + _react2.default.createElement("a", { className: "tablinks" + (isExecute ? " inactive" : ""), "data-name": "model", onClick: this.activeTab }, "Model"))), + + + _react2.default.createElement("div", null, + + (isExecute || this.state.activeTab === "example") && example, + + + !isExecute && this.state.activeTab === "model" && _react2.default.createElement(Model, { schema: schema, + getComponent: getComponent, + specSelectors: specSelectors, + expandDepth: 1 }))); + + + + + + } }]);return ModelExample;}(_react2.default.Component);ModelExample.propTypes = { getComponent: _react.PropTypes.func.isRequired, specSelectors: _react.PropTypes.object.isRequired, schema: _react.PropTypes.object.isRequired, example: _react.PropTypes.any.isRequired, isExecute: _react.PropTypes.bool };exports.default = ModelExample; + +/***/ }, +/* 309 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _extends = Object.assign || function (target) {for (var i = 1; i < arguments.length; i++) {var source = arguments[i];for (var key in source) {if (Object.prototype.hasOwnProperty.call(source, key)) {target[key] = source[key];}}}return target;};var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}();var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _reactImmutableProptypes = __webpack_require__(273);var _reactImmutableProptypes2 = _interopRequireDefault(_reactImmutableProptypes); + var _immutable = __webpack_require__(7);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _objectWithoutProperties(obj, keys) {var target = {};for (var i in obj) {if (keys.indexOf(i) >= 0) continue;if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;target[i] = obj[i];}return target;}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;} + var braceOpen = "{"; + var braceClose = "}"; + + var propStyle = { color: "#999", fontStyle: "italic" }; + + var EnumModel = function EnumModel(_ref) {var value = _ref.value; + var collapsedContent = _react2.default.createElement("span", null, "Array [ ", value.count(), " ]"); + return _react2.default.createElement("span", { className: "prop-enum" }, "Enum:", + _react2.default.createElement("br", null), + _react2.default.createElement(Collapse, { collapsedContent: collapsedContent }, "[ ", + value.join(", "), " ]")); + + + }; + + EnumModel.propTypes = { + value: _reactImmutableProptypes2.default.iterable };var + + + ObjectModel = function (_Component) {_inherits(ObjectModel, _Component);function ObjectModel() {_classCallCheck(this, ObjectModel);return _possibleConstructorReturn(this, (ObjectModel.__proto__ || Object.getPrototypeOf(ObjectModel)).apply(this, arguments));}_createClass(ObjectModel, [{ key: "render", value: function render() + + + + + + + + + + + {var _props = + this.props,schema = _props.schema,name = _props.name,isRef = _props.isRef,getComponent = _props.getComponent,depth = _props.depth,props = _objectWithoutProperties(_props, ["schema", "name", "isRef", "getComponent", "depth"]);var + expandDepth = this.props.expandDepth; + var JumpToPath = getComponent("JumpToPath", true); + var description = schema.get("description"); + var properties = schema.get("properties"); + var additionalProperties = schema.get("additionalProperties"); + var title = schema.get("title") || name; + var required = schema.get("required"); + var JumpToPathSection = function JumpToPathSection(_ref2) {var name = _ref2.name;return _react2.default.createElement("span", { className: "model-jump-to-path" }, _react2.default.createElement(JumpToPath, { path: "definitions." + name }));}; + var collapsedContent = _react2.default.createElement("span", null, + _react2.default.createElement("span", null, braceOpen), "...", _react2.default.createElement("span", null, braceClose), + + isRef ? _react2.default.createElement(JumpToPathSection, { name: name }) : ""); + + + + return _react2.default.createElement("span", { className: "model" }, + + title && _react2.default.createElement("span", { className: "model-title" }, + isRef && schema.get("$$ref") && _react2.default.createElement("span", { className: "model-hint" }, schema.get("$$ref")), + _react2.default.createElement("span", { className: "model-title__text" }, title)), + + + _react2.default.createElement(Collapse, { collapsed: depth > expandDepth, collapsedContent: collapsedContent }, + _react2.default.createElement("span", { className: "brace-open object" }, braceOpen), + + !isRef ? null : _react2.default.createElement(JumpToPathSection, { name: name }), + + _react2.default.createElement("span", { className: "inner-object" }, + + _react2.default.createElement("table", { className: "model", style: { marginLeft: "2em" } }, _react2.default.createElement("tbody", null, + + !description ? null : _react2.default.createElement("tr", { style: { color: "#999", fontStyle: "italic" } }, + _react2.default.createElement("td", null, "description:"), + _react2.default.createElement("td", null, description)), + + + + !(properties && properties.size) ? null : properties.entrySeq().map( + function (_ref3) {var _ref4 = _slicedToArray(_ref3, 2),key = _ref4[0],value = _ref4[1]; + var isRequired = _immutable.List.isList(required) && required.contains(key); + var propertyStyle = { verticalAlign: "top", paddingRight: "0.2em" }; + if (isRequired) { + propertyStyle.fontWeight = "bold"; + } + + return _react2.default.createElement("tr", { key: key }, + _react2.default.createElement("td", { style: propertyStyle }, key, ":"), + _react2.default.createElement("td", { style: { verticalAlign: "top" } }, + _react2.default.createElement(Model, _extends({ key: "object-" + name + "-" + key + "_" + value }, props, { + required: isRequired, + getComponent: getComponent, + schema: value, + depth: depth + 1 })))); + + + }).toArray(), + + + !additionalProperties || !additionalProperties.size ? null : + _react2.default.createElement("tr", null, + _react2.default.createElement("td", null, "< * >:"), + _react2.default.createElement("td", null, + _react2.default.createElement(Model, _extends({}, props, { required: false, + getComponent: getComponent, + schema: additionalProperties, + depth: depth + 1 }))))))), + + + + + + + _react2.default.createElement("span", { className: "brace-close" }, braceClose))); + + + } }]);return ObjectModel;}(_react.Component);ObjectModel.propTypes = { schema: _react.PropTypes.object.isRequired, getComponent: _react.PropTypes.func.isRequired, specSelectors: _react.PropTypes.object.isRequired, name: _react.PropTypes.string, isRef: _react.PropTypes.bool, expandDepth: _react.PropTypes.number, depth: _react.PropTypes.number };var + + + Primitive = function (_Component2) {_inherits(Primitive, _Component2);function Primitive() {_classCallCheck(this, Primitive);return _possibleConstructorReturn(this, (Primitive.__proto__ || Object.getPrototypeOf(Primitive)).apply(this, arguments));}_createClass(Primitive, [{ key: "render", value: function render() + + + + + + {var _props2 = + this.props,schema = _props2.schema,required = _props2.required; + + if (!schema || !schema.get) { + // don't render if schema isn't correctly formed + return _react2.default.createElement("div", null); + } + + var type = schema.get("type"); + var format = schema.get("format"); + var xml = schema.get("xml"); + var enumArray = schema.get("enum"); + var properties = schema.filter(function (v, key) {return ["enum", "type", "format", "$$ref"].indexOf(key) === -1;}); + var style = required ? { fontWeight: "bold" } : {}; + + return _react2.default.createElement("span", { className: "prop" }, + _react2.default.createElement("span", { className: "prop-type", style: style }, type), " ", required && _react2.default.createElement("span", { style: { color: "red" } }, "*"), + format && _react2.default.createElement("span", { className: "prop-format" }, "($", format, ")"), + + properties.size ? properties.entrySeq().map(function (_ref5) {var _ref6 = _slicedToArray(_ref5, 2),key = _ref6[0],v = _ref6[1];return _react2.default.createElement("span", { key: key + "-" + v, style: propStyle }, + _react2.default.createElement("br", null), key !== "description" && key + ": ", String(v));}) : + null, + + + xml && xml.size ? _react2.default.createElement("span", null, _react2.default.createElement("br", null), _react2.default.createElement("span", { style: propStyle }, "xml:"), + + xml.entrySeq().map(function (_ref7) {var _ref8 = _slicedToArray(_ref7, 2),key = _ref8[0],v = _ref8[1];return _react2.default.createElement("span", { key: key + "-" + v, style: propStyle }, _react2.default.createElement("br", null), "\xA0\xA0\xA0", key, ": ", String(v));}).toArray()) : + + null, + + + enumArray && _react2.default.createElement(EnumModel, { value: enumArray })); + + + } }]);return Primitive;}(_react.Component);Primitive.propTypes = { schema: _react.PropTypes.object.isRequired, required: _react.PropTypes.bool };var + + + ArrayModel = function (_Component3) {_inherits(ArrayModel, _Component3);function ArrayModel() {_classCallCheck(this, ArrayModel);return _possibleConstructorReturn(this, (ArrayModel.__proto__ || Object.getPrototypeOf(ArrayModel)).apply(this, arguments));}_createClass(ArrayModel, [{ key: "render", value: function render() + + + + + + + + + + + {var _props3 = + this.props,required = _props3.required,schema = _props3.schema,depth = _props3.depth,expandDepth = _props3.expandDepth; + var items = schema.get("items"); + var properties = schema.filter(function (v, key) {return ["type", "items", "$$ref"].indexOf(key) === -1;}); + + return _react2.default.createElement("span", { className: "model" }, + _react2.default.createElement("span", { className: "model-title" }, + _react2.default.createElement("span", { className: "model-title__text" }, schema.get("title"))), + + _react2.default.createElement(Collapse, { collapsed: depth > expandDepth, collapsedContent: "[...]" }, "[", + + _react2.default.createElement("span", null, _react2.default.createElement(Model, _extends({}, this.props, { schema: items, required: false }))), "]", + + + properties.size ? _react2.default.createElement("span", null, + properties.entrySeq().map(function (_ref9) {var _ref10 = _slicedToArray(_ref9, 2),key = _ref10[0],v = _ref10[1];return _react2.default.createElement("span", { key: key + "-" + v, style: propStyle }, + _react2.default.createElement("br", null), key + ":", String(v));}), + _react2.default.createElement("br", null)) : + null), + + + required && _react2.default.createElement("span", { style: { color: "red" } }, "*")); + + } }]);return ArrayModel;}(_react.Component);ArrayModel.propTypes = { schema: _react.PropTypes.object.isRequired, getComponent: _react.PropTypes.func.isRequired, specSelectors: _react.PropTypes.object.isRequired, name: _react.PropTypes.string, required: _react.PropTypes.bool, expandDepth: _react.PropTypes.number, depth: _react.PropTypes.number };var + + + + Model = function (_Component4) {_inherits(Model, _Component4);function Model() {var _ref11;var _temp, _this4, _ret;_classCallCheck(this, Model);for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}return _ret = (_temp = (_this4 = _possibleConstructorReturn(this, (_ref11 = Model.__proto__ || Object.getPrototypeOf(Model)).call.apply(_ref11, [this].concat(args))), _this4), _this4. + + + + + + + + + + + + getModelName = function (ref) { + if (ref.indexOf("#/definitions/") !== -1) { + return ref.replace(/^.*#\/definitions\//, ""); + } + }, _this4. + + getRefSchema = function (model) {var + specSelectors = _this4.props.specSelectors; + + return specSelectors.findDefinition(model); + }, _temp), _possibleConstructorReturn(_this4, _ret);}_createClass(Model, [{ key: "render", value: function render() + + {var _props4 = + this.props,schema = _props4.schema,required = _props4.required,name = _props4.name,isRef = _props4.isRef; + var $$ref = schema && schema.get("$$ref"); + var modelName = $$ref && this.getModelName($$ref); + var modelSchema = void 0,type = void 0; + + if (schema && (schema.get("type") || schema.get("properties"))) { + modelSchema = schema; + } else if ($$ref) { + modelSchema = this.getRefSchema(modelName); + } + + type = modelSchema && modelSchema.get("type"); + if (!type && modelSchema && modelSchema.get("properties")) { + type = "object"; + } + + switch (type) { + case "object": + return _react2.default.createElement(ObjectModel, _extends({ className: "object" }, this.props, { schema: modelSchema, + name: modelName || name, + isRef: isRef !== undefined ? isRef : !!$$ref })); + case "array": + return _react2.default.createElement(ArrayModel, _extends({ className: "array" }, this.props, { schema: modelSchema, required: required })); + case "string": + case "number": + case "integer": + case "boolean": + default: + return _react2.default.createElement(Primitive, { schema: modelSchema, required: required });} + + } }]);return Model;}(_react.Component);Model.propTypes = { schema: _react.PropTypes.object.isRequired, getComponent: _react.PropTypes.func.isRequired, specSelectors: _react.PropTypes.object.isRequired, name: _react.PropTypes.string, isRef: _react.PropTypes.bool, required: _react.PropTypes.bool, expandDepth: _react.PropTypes.number, depth: _react.PropTypes.number };var + + + + ModelComponent = function (_Component5) {_inherits(ModelComponent, _Component5);function ModelComponent() {_classCallCheck(this, ModelComponent);return _possibleConstructorReturn(this, (ModelComponent.__proto__ || Object.getPrototypeOf(ModelComponent)).apply(this, arguments));}_createClass(ModelComponent, [{ key: "render", value: function render() + + + + + + + + + { + return _react2.default.createElement("div", { className: "model-box" }, + _react2.default.createElement(Model, _extends({}, this.props, { depth: 1, expandDepth: this.props.expandDepth || 0 }))); + + } }]);return ModelComponent;}(_react.Component);ModelComponent.propTypes = { schema: _react.PropTypes.object.isRequired, name: _react.PropTypes.string, getComponent: _react.PropTypes.func.isRequired, specSelectors: _react.PropTypes.object.isRequired, expandDepth: _react.PropTypes.number };exports.default = ModelComponent;var + + + Collapse = function (_Component6) {_inherits(Collapse, _Component6); + + + + + + + + + + + + function Collapse(props, context) {_classCallCheck(this, Collapse);var _this6 = _possibleConstructorReturn(this, (Collapse.__proto__ || Object.getPrototypeOf(Collapse)).call(this, + props, context));_this6. + + + + + + + + + + toggleCollapsed = function () { + _this6.setState({ + collapsed: !_this6.state.collapsed }); + + };var _this6$props = _this6.props,collapsed = _this6$props.collapsed,collapsedContent = _this6$props.collapsedContent;_this6.state = { collapsed: collapsed !== undefined ? collapsed : Collapse.defaultProps.collapsed, collapsedContent: collapsedContent || Collapse.defaultProps.collapsedContent };return _this6;}_createClass(Collapse, [{ key: "render", value: function render() + + { + return _react2.default.createElement("span", null, + _react2.default.createElement("span", { onClick: this.toggleCollapsed, style: { "cursor": "pointer" } }, + _react2.default.createElement("span", { className: "model-toggle" + (this.state.collapsed ? " collapsed" : "") })), + + this.state.collapsed ? this.state.collapsedContent : this.props.children); + + } }]);return Collapse;}(_react.Component);Collapse.propTypes = { collapsedContent: _react.PropTypes.any, collapsed: _react.PropTypes.bool, children: _react.PropTypes.any };Collapse.defaultProps = { collapsedContent: "{...}", collapsed: true }; + +/***/ }, +/* 310 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}();var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + + Models = function (_Component) {_inherits(Models, _Component);function Models() {_classCallCheck(this, Models);return _possibleConstructorReturn(this, (Models.__proto__ || Object.getPrototypeOf(Models)).apply(this, arguments));}_createClass(Models, [{ key: "render", value: function render() + + + + + + + + {var _props = + this.props,specSelectors = _props.specSelectors,getComponent = _props.getComponent,layoutSelectors = _props.layoutSelectors,layoutActions = _props.layoutActions; + var definitions = specSelectors.definitions(); + var showModels = layoutSelectors.isShown("models", true); + + var Model = getComponent("model"); + var Collapse = getComponent("Collapse"); + + if (!definitions.size) return null; + + return _react2.default.createElement("section", { className: showModels ? "models is-open" : "models" }, + _react2.default.createElement("h4", { onClick: function onClick() {return layoutActions.show("models", !showModels);} }, + _react2.default.createElement("span", null, "Models"), + _react2.default.createElement("svg", { width: "20", height: "20" }, + _react2.default.createElement("use", { xlinkHref: "#large-arrow" }))), + + + _react2.default.createElement(Collapse, { isOpened: showModels, animated: true }, + + definitions.entrySeq().map(function (_ref) {var _ref2 = _slicedToArray(_ref, 2),name = _ref2[0],model = _ref2[1]; + return _react2.default.createElement("div", { className: "model-container", key: "models-section-" + name }, + _react2.default.createElement(Model, { name: name, + schema: model, + isRef: true, + getComponent: getComponent, + specSelectors: specSelectors })); + + }).toArray())); + + + + } }]);return Models;}(_react.Component);Models.propTypes = { getComponent: _react.PropTypes.func, specSelectors: _react.PropTypes.object, layoutSelectors: _react.PropTypes.object, layoutActions: _react.PropTypes.object };exports.default = Models; + +/***/ }, +/* 311 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;}var + + TryItOutButton = function (_React$Component) {_inherits(TryItOutButton, _React$Component);function TryItOutButton() {_classCallCheck(this, TryItOutButton);return _possibleConstructorReturn(this, (TryItOutButton.__proto__ || Object.getPrototypeOf(TryItOutButton)).apply(this, arguments));}_createClass(TryItOutButton, [{ key: "render", value: function render() + + + + + + + + + + + + + + {var _props = + this.props,onTryoutClick = _props.onTryoutClick,onCancelClick = _props.onCancelClick,enabled = _props.enabled; + + return ( + _react2.default.createElement("div", { className: "try-out" }, + + enabled ? _react2.default.createElement("button", { className: "btn try-out__btn cancel", onClick: onTryoutClick }, "Cancel") : + _react2.default.createElement("button", { className: "btn try-out__btn", onClick: onCancelClick }, "Try it out "))); + + + + } }]);return TryItOutButton;}(_react2.default.Component);TryItOutButton.propTypes = { onTryoutClick: _react.PropTypes.func, onCancelClick: _react.PropTypes.func, enabled: _react.PropTypes.bool };TryItOutButton.defaultProps = { onTryoutClick: Function.prototype, onCancelClick: Function.prototype, enabled: false };exports.default = TryItOutButton; + +/***/ }, +/* 312 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.JsonSchema_boolean = exports.JsonSchema_array = exports.JsonSchema_string = exports.JsonSchemaForm = undefined;var _extends = Object.assign || function (target) {for (var i = 1; i < arguments.length; i++) {var source = arguments[i];for (var key in source) {if (Object.prototype.hasOwnProperty.call(source, key)) {target[key] = source[key];}}}return target;};var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _react = __webpack_require__(187);var _react2 = _interopRequireDefault(_react); + var _reactAddonsShallowCompare = __webpack_require__(285);var _reactAddonsShallowCompare2 = _interopRequireDefault(_reactAddonsShallowCompare); + var _immutable = __webpack_require__(7);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self, call) {if (!self) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call && (typeof call === "object" || typeof call === "function") ? call : self;}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;} + //import "less/json-schema-form" + + var noop = function noop() {}; + var JsonSchemaPropShape = { + getComponent: _react.PropTypes.func.isRequired, + value: _react.PropTypes.any, + onChange: _react.PropTypes.func, + keyName: _react.PropTypes.any, + fn: _react.PropTypes.object.isRequired, + schema: _react.PropTypes.object, + required: _react.PropTypes.bool, + description: _react.PropTypes.any }; + + + var JsonSchemaDefaultProps = { + value: "", + onChange: noop, + schema: {}, + keyName: "", + required: false };var + + + JsonSchemaForm = exports.JsonSchemaForm = function (_Component) {_inherits(JsonSchemaForm, _Component);function JsonSchemaForm() {_classCallCheck(this, JsonSchemaForm);return _possibleConstructorReturn(this, (JsonSchemaForm.__proto__ || Object.getPrototypeOf(JsonSchemaForm)).apply(this, arguments));}_createClass(JsonSchemaForm, [{ key: "render", value: function render() + + + + + {var _props = + this.props,schema = _props.schema,value = _props.value,onChange = _props.onChange,getComponent = _props.getComponent,fn = _props.fn; + + if (schema.toJS) + schema = schema.toJS();var _schema = + + schema,type = _schema.type,_schema$format = _schema.format,format = _schema$format === undefined ? "" : _schema$format; + + var Comp = getComponent("JsonSchema_" + type + "_" + format) || getComponent("JsonSchema_" + type) || getComponent("JsonSchema_string"); + return _react2.default.createElement(Comp, _extends({}, this.props, { fn: fn, getComponent: getComponent, value: value, onChange: onChange, schema: schema })); + } }]);return JsonSchemaForm;}(_react.Component);JsonSchemaForm.propTypes = JsonSchemaPropShape;JsonSchemaForm.defaultProps = JsonSchemaDefaultProps;var + + + + JsonSchema_string = exports.JsonSchema_string = function (_Component2) {_inherits(JsonSchema_string, _Component2);function JsonSchema_string() {var _ref;var _temp, _this2, _ret;_classCallCheck(this, JsonSchema_string);for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}return _ret = (_temp = (_this2 = _possibleConstructorReturn(this, (_ref = JsonSchema_string.__proto__ || Object.getPrototypeOf(JsonSchema_string)).call.apply(_ref, [this].concat(args))), _this2), _this2. + + + onChange = function (e) { + var value = _this2.props.schema["type"] === "file" ? e.target.files[0] : e.target.value; + _this2.props.onChange(value, _this2.props.keyName); + }, _this2. + onEnumChange = function (val) {return _this2.props.onChange(val);}, _temp), _possibleConstructorReturn(_this2, _ret);}_createClass(JsonSchema_string, [{ key: "render", value: function render() + {var _props2 = + this.props,getComponent = _props2.getComponent,value = _props2.value,schema = _props2.schema,required = _props2.required,description = _props2.description; + var enumValue = schema["enum"]; + var errors = schema.errors || []; + + if (enumValue) { + var Select = getComponent("Select"); + return _react2.default.createElement(Select, { allowedValues: enumValue, + value: value, + allowEmptyValue: !required, + onChange: this.onEnumChange }); + } + + var isDisabled = schema["in"] === "formData" && !("FormData" in window); + var Input = getComponent("Input"); + if (schema["type"] === "file") { + return _react2.default.createElement(Input, { type: "file", className: errors.length ? "invalid" : "", onChange: this.onChange, disabled: isDisabled }); + } else + { + return _react2.default.createElement(Input, { type: "text", className: errors.length ? "invalid" : "", value: value, placeholder: description, onChange: this.onChange, disabled: isDisabled }); + } + } }]);return JsonSchema_string;}(_react.Component);JsonSchema_string.propTypes = JsonSchemaPropShape;JsonSchema_string.defaultProps = JsonSchemaDefaultProps;var + + + JsonSchema_array = exports.JsonSchema_array = function (_Component3) {_inherits(JsonSchema_array, _Component3); + + + + + function JsonSchema_array(props, context) {_classCallCheck(this, JsonSchema_array);var _this3 = _possibleConstructorReturn(this, (JsonSchema_array.__proto__ || Object.getPrototypeOf(JsonSchema_array)).call(this, + props, context));_this3. + + + + + + + + + + + + + onChange = function () {return _this3.props.onChange(_this3.state.value);};_this3. + + onItemChange = function (itemVal, i) { + _this3.setState(function (state) {return { + value: state.value.set(i, itemVal) };}, + _this3.onChange); + };_this3. + + removeItem = function (i) { + _this3.setState(function (state) {return { + value: state.value.remove(i) };}, + _this3.onChange); + };_this3. + + addItem = function () { + _this3.setState(function (state) { + state.value = state.value || (0, _immutable.List)(); + return { + value: state.value.push("") }; + + }, _this3.onChange); + };_this3. + + onEnumChange = function (value) { + _this3.setState(function () {return { + value: value };}, + _this3.onChange); + };_this3.state = { value: props.value };return _this3;}_createClass(JsonSchema_array, [{ key: "componentWillReceiveProps", value: function componentWillReceiveProps(props) {if (props.value !== this.state.value) this.setState({ value: props.value });} }, { key: "shouldComponentUpdate", value: function shouldComponentUpdate(props, state) {return (0, _reactAddonsShallowCompare2.default)(this, props, state);} }, { key: "render", value: function render() + + {var _this4 = this;var _props3 = + this.props,getComponent = _props3.getComponent,required = _props3.required,schema = _props3.schema,fn = _props3.fn; + + var itemSchema = fn.inferSchema(schema.items); + + var JsonSchemaForm = getComponent("JsonSchemaForm"); + var Button = getComponent("Button"); + + var enumValue = itemSchema["enum"]; + var value = this.state.value; + + if (enumValue) { + var Select = getComponent("Select"); + return _react2.default.createElement(Select, { multiple: true, + value: value, + allowedValues: enumValue, + allowEmptyValue: !required, + onChange: this.onEnumChange }); + } + + var errors = schema.errors || []; + + return ( + _react2.default.createElement("div", null, + !value || value.count() < 1 ? + errors.length ? _react2.default.createElement("span", { style: { color: "red", fortWeight: "bold" } }, errors[0]) : null : + value.map(function (item, i) { + var schema = Object.assign({}, itemSchema); + var err = errors.filter(function (err) {return err.index === i;}); + if (err.length) { + schema.errors = [err[0].error + i]; + } + return ( + _react2.default.createElement("div", { key: i, className: "json-schema-form-item" }, + _react2.default.createElement(JsonSchemaForm, { fn: fn, getComponent: getComponent, value: item, onChange: function onChange(val) {return _this4.onItemChange(val, i);}, schema: schema }), + _react2.default.createElement(Button, { className: "json-schema-form-item-remove", onClick: function onClick() {return _this4.removeItem(i);} }, " - "))); + + + }).toArray(), + + _react2.default.createElement(Button, { className: "json-schema-form-item-add", onClick: this.addItem }, " Add item "))); + + + } }]);return JsonSchema_array;}(_react.Component);JsonSchema_array.propTypes = JsonSchemaPropShape;JsonSchema_array.defaultProps = JsonSchemaDefaultProps;var + + + JsonSchema_boolean = exports.JsonSchema_boolean = function (_Component4) {_inherits(JsonSchema_boolean, _Component4);function JsonSchema_boolean() {var _ref2;var _temp2, _this5, _ret2;_classCallCheck(this, JsonSchema_boolean);for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {args[_key2] = arguments[_key2];}return _ret2 = (_temp2 = (_this5 = _possibleConstructorReturn(this, (_ref2 = JsonSchema_boolean.__proto__ || Object.getPrototypeOf(JsonSchema_boolean)).call.apply(_ref2, [this].concat(args))), _this5), _this5. + + + + onEnumChange = function (val) {return _this5.props.onChange(val);}, _temp2), _possibleConstructorReturn(_this5, _ret2);}_createClass(JsonSchema_boolean, [{ key: "render", value: function render() + {var _props4 = + this.props,getComponent = _props4.getComponent,required = _props4.required,value = _props4.value; + var Select = getComponent("Select"); + + return _react2.default.createElement(Select, { value: String(value), + allowedValues: (0, _immutable.fromJS)(["true", "false"]), + allowEmptyValue: !required, + onChange: this.onEnumChange }); + } }]);return JsonSchema_boolean;}(_react.Component);JsonSchema_boolean.propTypes = JsonSchemaPropShape;JsonSchema_boolean.defaultProps = JsonSchemaDefaultProps; + +/***/ }, +/* 313 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";var _utils = __webpack_require__(13); + + var request = __webpack_require__(314); + + request.keys().forEach(function (key) { + if (key === "./index.js") { + return; + } + + // if( key.slice(2).indexOf("/") > -1) { + // // skip files in subdirs + // return + // } + + var mod = request(key); + module.exports[(0, _utils.pascalCaseFilename)(key)] = mod.default ? mod.default : mod; + }); + +/***/ }, +/* 314 */ +/***/ function(module, exports, __webpack_require__) { + + var map = { + "./all.js": 313, + "./ast/ast.js": 243, + "./ast/index.js": 242, + "./ast/jump-to-path.jsx": 252, + "./auth/actions.js": 257, + "./auth/index.js": 255, + "./auth/reducers.js": 256, + "./auth/selectors.js": 258, + "./auth/spec-wrap-actions.js": 259, + "./download-url.js": 268, + "./err/actions.js": 11, + "./err/error-transformers/hook.js": 166, + "./err/error-transformers/transformers/not-of-type.js": 170, + "./err/error-transformers/transformers/parameter-oneof.js": 171, + "./err/error-transformers/transformers/strip-instance.js": 172, + "./err/index.js": 160, + "./err/reducers.js": 161, + "./err/selectors.js": 173, + "./layout/actions.js": 177, + "./layout/index.js": 175, + "./layout/reducers.js": 176, + "./layout/selectors.js": 178, + "./logs/index.js": 241, + "./samples/fn.js": 155, + "./samples/index.js": 240, + "./spec/actions.js": 181, + "./spec/index.js": 179, + "./spec/reducers.js": 180, + "./spec/selectors.js": 183, + "./spec/wrap-actions.js": 184, + "./split-pane-mode/components/index.js": 263, + "./split-pane-mode/components/split-pane-mode.jsx": 265, + "./split-pane-mode/index.js": 262, + "./swagger-js/index.js": 253, + "./util/index.js": 260, + "./view/index.js": 185, + "./view/root-injects.js": 186 + }; + function webpackContext(req) { + return __webpack_require__(webpackContextResolve(req)); + }; + function webpackContextResolve(req) { + return map[req] || (function() { throw new Error("Cannot find module '" + req + "'.") }()); + }; + webpackContext.keys = function webpackContextKeys() { + return Object.keys(map); + }; + webpackContext.resolve = webpackContextResolve; + module.exports = webpackContext; + webpackContext.id = 314; + + +/***/ }, +/* 315 */ +/***/ function(module, exports, __webpack_require__) { + + "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = + + + + + + + + + + + + + + + + + + + configPlugin;exports. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + filterConfigs = filterConfigs;var _jsYaml = __webpack_require__(182);var _jsYaml2 = _interopRequireDefault(_jsYaml);var _swaggerConfig = __webpack_require__(316);var _swaggerConfig2 = _interopRequireDefault(_swaggerConfig);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}var CONFIGS = ["url", "spec", "validatorUrl", "onComplete", "onFailure", "authorizations", "docExpansion", "apisSorter", "operationsSorter", "supportedSubmitMethods", "highlightSizeThreshold", "dom_id", "defaultModelRendering", "oauth2RedirectUrl", "showRequestHeaders"];var parseYamlConfig = function parseYamlConfig(yaml, system) {try {return _jsYaml2.default.safeLoad(yaml);} catch (e) {if (system) {system.errActions.newThrownErr(new Error(e));}return {};}};function configPlugin(toolbox) {var fn = toolbox.fn;var actions = { downloadConfig: function downloadConfig(url) {return function () {var fetch = fn.fetch;return fetch(url);};}, getConfigByUrl: function getConfigByUrl(configUrl, cb) {return function (_ref) {var specActions = _ref.specActions;if (configUrl) {return specActions.downloadConfig(configUrl).then(next, next);}function next(res) {if (res instanceof Error || res.status >= 400) {specActions.updateLoadingStatus("failedConfig");specActions.updateLoadingStatus("failedConfig");specActions.updateUrl("");console.error(res.statusText + " " + configUrl);cb(null);} else {cb(parseYamlConfig(res.text));}}};} };var selectors = { getLocalConfig: function getLocalConfig() {return parseYamlConfig(_swaggerConfig2.default);} };return { statePlugins: { spec: { actions: actions, selectors: selectors } } };}function filterConfigs(configs) { + var i = void 0,filteredConfigs = {}; + + for (i in configs) { + if (CONFIGS.indexOf(i) !== -1) { + filteredConfigs[i] = configs[i]; + } + } + + return filteredConfigs; + } + +/***/ }, +/* 316 */ +/***/ function(module, exports) { + + module.exports = "---\nurl: \"http://petstore.swagger.io/v2/swagger.json\"\ndom_id: \"#swagger-ui\"\nvalidatorUrl: \"https://online.swagger.io/validator\"\noauth2RedirectUrl: \"http://localhost:3200/oauth2-redirect.html\"\n" + +/***/ } +/******/ ]) +}); +; //# sourceMappingURL=swagger-ui.js.map \ No newline at end of file diff --git a/dist/swagger-ui.js.map b/dist/swagger-ui.js.map index fe774117..7b0d3433 100644 --- a/dist/swagger-ui.js.map +++ b/dist/swagger-ui.js.map @@ -1 +1 @@ -{"version":3,"file":"swagger-ui.js","sources":["webpack:///swagger-ui.js"],"mappings":"AAAA;;;;;;AAuwCA;AAoyHA;AA2wHA;AA07FA;AAmoCA;AAghCA;AA0gCA;AAw4BA","sourceRoot":""} \ No newline at end of file +{"version":3,"file":"swagger-ui.js","sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap 7ca211a40512f8bbe91c","webpack:///external \"babel-polyfill\"","webpack:///./src/style/main.scss","webpack:///src/core/index.js","webpack:///external \"deep-extend\"","webpack:///src/core/system.js","webpack:///external \"redux\"","webpack:///external \"immutable\"","webpack:///external \"redux-immutable\"","webpack:///external \"object-assign\"","webpack:///external \"serialize-error\"","webpack:///src/core/plugins/err/actions.js","webpack:///src/core/window.js","webpack:///src/core/utils.js","webpack:///./~/buffer/index.js","webpack:///external \"base64-js\"","webpack:///external \"ieee754\"","webpack:///external \"isarray\"","webpack:///external \"shallowequal\"","webpack:///./~/lodash/camelCase.js","webpack:///./~/lodash/capitalize.js","webpack:///./~/lodash/toString.js","webpack:///./~/lodash/_baseToString.js","webpack:///./~/lodash/_Symbol.js","webpack:///./~/lodash/_root.js","webpack:///./~/lodash/_freeGlobal.js","webpack:///./~/lodash/_arrayMap.js","webpack:///./~/lodash/isArray.js","webpack:///./~/lodash/isSymbol.js","webpack:///./~/lodash/_baseGetTag.js","webpack:///./~/lodash/_getRawTag.js","webpack:///./~/lodash/_objectToString.js","webpack:///./~/lodash/isObjectLike.js","webpack:///./~/lodash/upperFirst.js","webpack:///./~/lodash/_createCaseFirst.js","webpack:///./~/lodash/_castSlice.js","webpack:///./~/lodash/_baseSlice.js","webpack:///./~/lodash/_hasUnicode.js","webpack:///./~/lodash/_stringToArray.js","webpack:///./~/lodash/_asciiToArray.js","webpack:///./~/lodash/_unicodeToArray.js","webpack:///./~/lodash/_createCompounder.js","webpack:///./~/lodash/_arrayReduce.js","webpack:///./~/lodash/deburr.js","webpack:///./~/lodash/_deburrLetter.js","webpack:///./~/lodash/_basePropertyOf.js","webpack:///./~/lodash/words.js","webpack:///./~/lodash/_asciiWords.js","webpack:///./~/lodash/_hasUnicodeWord.js","webpack:///./~/lodash/_unicodeWords.js","webpack:///./~/lodash/memoize.js","webpack:///./~/lodash/_MapCache.js","webpack:///./~/lodash/_mapCacheClear.js","webpack:///./~/lodash/_Hash.js","webpack:///./~/lodash/_hashClear.js","webpack:///./~/lodash/_nativeCreate.js","webpack:///./~/lodash/_getNative.js","webpack:///./~/lodash/_baseIsNative.js","webpack:///./~/lodash/isFunction.js","webpack:///./~/lodash/isObject.js","webpack:///./~/lodash/_isMasked.js","webpack:///./~/lodash/_coreJsData.js","webpack:///./~/lodash/_toSource.js","webpack:///./~/lodash/_getValue.js","webpack:///./~/lodash/_hashDelete.js","webpack:///./~/lodash/_hashGet.js","webpack:///./~/lodash/_hashHas.js","webpack:///./~/lodash/_hashSet.js","webpack:///./~/lodash/_ListCache.js","webpack:///./~/lodash/_listCacheClear.js","webpack:///./~/lodash/_listCacheDelete.js","webpack:///./~/lodash/_assocIndexOf.js","webpack:///./~/lodash/eq.js","webpack:///./~/lodash/_listCacheGet.js","webpack:///./~/lodash/_listCacheHas.js","webpack:///./~/lodash/_listCacheSet.js","webpack:///./~/lodash/_Map.js","webpack:///./~/lodash/_mapCacheDelete.js","webpack:///./~/lodash/_getMapData.js","webpack:///./~/lodash/_isKeyable.js","webpack:///./~/lodash/_mapCacheGet.js","webpack:///./~/lodash/_mapCacheHas.js","webpack:///./~/lodash/_mapCacheSet.js","webpack:///./~/lodash/some.js","webpack:///./~/lodash/_arraySome.js","webpack:///./~/lodash/_baseIteratee.js","webpack:///./~/lodash/_baseMatches.js","webpack:///./~/lodash/_baseIsMatch.js","webpack:///./~/lodash/_Stack.js","webpack:///./~/lodash/_stackClear.js","webpack:///./~/lodash/_stackDelete.js","webpack:///./~/lodash/_stackGet.js","webpack:///./~/lodash/_stackHas.js","webpack:///./~/lodash/_stackSet.js","webpack:///./~/lodash/_baseIsEqual.js","webpack:///./~/lodash/_baseIsEqualDeep.js","webpack:///./~/lodash/_equalArrays.js","webpack:///./~/lodash/_SetCache.js","webpack:///./~/lodash/_setCacheAdd.js","webpack:///./~/lodash/_setCacheHas.js","webpack:///./~/lodash/_cacheHas.js","webpack:///./~/lodash/_equalByTag.js","webpack:///./~/lodash/_Uint8Array.js","webpack:///./~/lodash/_mapToArray.js","webpack:///./~/lodash/_setToArray.js","webpack:///./~/lodash/_equalObjects.js","webpack:///./~/lodash/keys.js","webpack:///./~/lodash/_arrayLikeKeys.js","webpack:///./~/lodash/_baseTimes.js","webpack:///./~/lodash/isArguments.js","webpack:///./~/lodash/_baseIsArguments.js","webpack:///./~/lodash/isBuffer.js","webpack:///(webpack)/buildin/module.js","webpack:///./~/lodash/stubFalse.js","webpack:///./~/lodash/_isIndex.js","webpack:///./~/lodash/isTypedArray.js","webpack:///./~/lodash/_baseIsTypedArray.js","webpack:///./~/lodash/isLength.js","webpack:///./~/lodash/_baseUnary.js","webpack:///./~/lodash/_nodeUtil.js","webpack:///./~/lodash/_baseKeys.js","webpack:///./~/lodash/_isPrototype.js","webpack:///./~/lodash/_nativeKeys.js","webpack:///./~/lodash/_overArg.js","webpack:///./~/lodash/isArrayLike.js","webpack:///./~/lodash/_getTag.js","webpack:///./~/lodash/_DataView.js","webpack:///./~/lodash/_Promise.js","webpack:///./~/lodash/_Set.js","webpack:///./~/lodash/_WeakMap.js","webpack:///./~/lodash/_getMatchData.js","webpack:///./~/lodash/_isStrictComparable.js","webpack:///./~/lodash/_matchesStrictComparable.js","webpack:///./~/lodash/_baseMatchesProperty.js","webpack:///./~/lodash/get.js","webpack:///./~/lodash/_baseGet.js","webpack:///./~/lodash/_castPath.js","webpack:///./~/lodash/_isKey.js","webpack:///./~/lodash/_stringToPath.js","webpack:///./~/lodash/_memoizeCapped.js","webpack:///./~/lodash/_toKey.js","webpack:///./~/lodash/hasIn.js","webpack:///./~/lodash/_baseHasIn.js","webpack:///./~/lodash/_hasPath.js","webpack:///./~/lodash/identity.js","webpack:///./~/lodash/property.js","webpack:///./~/lodash/_baseProperty.js","webpack:///./~/lodash/_basePropertyDeep.js","webpack:///./~/lodash/_baseSome.js","webpack:///./~/lodash/_baseEach.js","webpack:///./~/lodash/_baseForOwn.js","webpack:///./~/lodash/_baseFor.js","webpack:///./~/lodash/_createBaseFor.js","webpack:///./~/lodash/_createBaseEach.js","webpack:///./~/lodash/_isIterateeCall.js","webpack:///src/core/plugins/samples/fn.js","webpack:///external \"xml\"","webpack:///external \"memoizee\"","webpack:///src/core/presets/apis.js","webpack:///src/core/presets/base.js","webpack:///src/core/plugins/err/index.js","webpack:///src/core/plugins/err/reducers.js","webpack:///./~/lodash/reject.js","webpack:///./~/lodash/_arrayFilter.js","webpack:///./~/lodash/_baseFilter.js","webpack:///./~/lodash/negate.js","webpack:///src/core/plugins/err/error-transformers/hook.js","webpack:///./~/lodash/reduce.js","webpack:///./~/lodash/_baseReduce.js","webpack:///./src/core/plugins/err/error-transformers/transformers \\.js$","webpack:///src/core/plugins/err/error-transformers/transformers/not-of-type.js","webpack:///src/core/plugins/err/error-transformers/transformers/parameter-oneof.js","webpack:///src/core/plugins/err/error-transformers/transformers/strip-instance.js","webpack:///src/core/plugins/err/selectors.js","webpack:///external \"reselect\"","webpack:///src/core/plugins/layout/index.js","webpack:///src/core/plugins/layout/reducers.js","webpack:///src/core/plugins/layout/actions.js","webpack:///src/core/plugins/layout/selectors.js","webpack:///src/core/plugins/spec/index.js","webpack:///src/core/plugins/spec/reducers.js","webpack:///src/core/plugins/spec/actions.js","webpack:///external \"js-yaml\"","webpack:///src/core/plugins/spec/selectors.js","webpack:///src/core/plugins/spec/wrap-actions.js","webpack:///src/core/plugins/view/index.js","webpack:///src/core/plugins/view/root-injects.js","webpack:///external \"react\"","webpack:///external \"react-dom\"","webpack:///external \"react-redux\"","webpack:///./~/lodash/omit.js","webpack:///./~/lodash/_baseClone.js","webpack:///./~/lodash/_arrayEach.js","webpack:///./~/lodash/_assignValue.js","webpack:///./~/lodash/_baseAssignValue.js","webpack:///./~/lodash/_defineProperty.js","webpack:///./~/lodash/_baseAssign.js","webpack:///./~/lodash/_copyObject.js","webpack:///./~/lodash/_baseAssignIn.js","webpack:///./~/lodash/keysIn.js","webpack:///./~/lodash/_baseKeysIn.js","webpack:///./~/lodash/_nativeKeysIn.js","webpack:///./~/lodash/_cloneBuffer.js","webpack:///./~/lodash/_copyArray.js","webpack:///./~/lodash/_copySymbols.js","webpack:///./~/lodash/_getSymbols.js","webpack:///./~/lodash/stubArray.js","webpack:///./~/lodash/_copySymbolsIn.js","webpack:///./~/lodash/_getSymbolsIn.js","webpack:///./~/lodash/_arrayPush.js","webpack:///./~/lodash/_getPrototype.js","webpack:///./~/lodash/_getAllKeys.js","webpack:///./~/lodash/_baseGetAllKeys.js","webpack:///./~/lodash/_getAllKeysIn.js","webpack:///./~/lodash/_initCloneArray.js","webpack:///./~/lodash/_initCloneByTag.js","webpack:///./~/lodash/_cloneArrayBuffer.js","webpack:///./~/lodash/_cloneDataView.js","webpack:///./~/lodash/_cloneMap.js","webpack:///./~/lodash/_addMapEntry.js","webpack:///./~/lodash/_cloneRegExp.js","webpack:///./~/lodash/_cloneSet.js","webpack:///./~/lodash/_addSetEntry.js","webpack:///./~/lodash/_cloneSymbol.js","webpack:///./~/lodash/_cloneTypedArray.js","webpack:///./~/lodash/_initCloneObject.js","webpack:///./~/lodash/_baseCreate.js","webpack:///./~/lodash/_baseUnset.js","webpack:///./~/lodash/last.js","webpack:///./~/lodash/_parent.js","webpack:///./~/lodash/_flatRest.js","webpack:///./~/lodash/flatten.js","webpack:///./~/lodash/_baseFlatten.js","webpack:///./~/lodash/_isFlattenable.js","webpack:///./~/lodash/_overRest.js","webpack:///./~/lodash/_apply.js","webpack:///./~/lodash/_setToString.js","webpack:///./~/lodash/_baseSetToString.js","webpack:///./~/lodash/constant.js","webpack:///./~/lodash/_shortOut.js","webpack:///src/core/plugins/samples/index.js","webpack:///src/core/plugins/logs/index.js","webpack:///src/core/plugins/ast/index.js","webpack:///src/core/plugins/ast/ast.js","webpack:///external \"yaml-js\"","webpack:///./~/lodash/find.js","webpack:///./~/lodash/_createFind.js","webpack:///./~/lodash/findIndex.js","webpack:///./~/lodash/_baseFindIndex.js","webpack:///./~/lodash/toInteger.js","webpack:///./~/lodash/toFinite.js","webpack:///./~/lodash/toNumber.js","webpack:///src/core/plugins/ast/jump-to-path.jsx","webpack:///src/core/plugins/swagger-js/index.js","webpack:///external \"swagger-client\"","webpack:///src/core/plugins/auth/index.js","webpack:///src/core/plugins/auth/reducers.js","webpack:///src/core/plugins/auth/actions.js","webpack:///src/core/plugins/auth/selectors.js","webpack:///src/core/plugins/auth/spec-wrap-actions.js","webpack:///src/core/plugins/util/index.js","webpack:///src/core/path-translator.js","webpack:///src/core/plugins/split-pane-mode/index.js","webpack:///src/core/plugins/split-pane-mode/components/index.js","webpack:///./src/core/plugins/split-pane-mode/components \\.jsx","webpack:///src/core/plugins/split-pane-mode/components/split-pane-mode.jsx","webpack:///external \"react-split-pane\"","webpack:///./src/core/plugins/split-pane-mode/components/split-pane-mode.less","webpack:///src/core/plugins/download-url.js","webpack:///src/core/components/app.jsx","webpack:///src/core/components/auth/authorization-popup.jsx","webpack:///src/core/components/auth/authorize-btn.jsx","webpack:///src/core/components/auth/authorize-operation-btn.jsx","webpack:///external \"react-immutable-proptypes\"","webpack:///src/core/components/auth/auths.jsx","webpack:///src/core/components/auth/error.jsx","webpack:///src/core/components/auth/api-key-auth.jsx","webpack:///src/core/components/auth/basic-auth.jsx","webpack:///src/core/components/auth/oauth2.jsx","webpack:///src/core/oauth2-authorize.js","webpack:///src/core/components/clear.jsx","webpack:///src/core/components/live-response.jsx","webpack:///src/core/components/online-validator-badge.jsx","webpack:///src/core/components/operations.jsx","webpack:///src/core/components/operation.jsx","webpack:///external \"react-addons-shallow-compare\"","webpack:///src/core/proptypes.js","webpack:///src/core/components/highlight-code.jsx","webpack:///src/core/components/responses.jsx","webpack:///src/core/components/response.jsx","webpack:///src/core/components/response-body.jsx","webpack:///./~/lodash/lowerCase.js","webpack:///src/core/components/parameters.jsx","webpack:///src/core/components/parameter-row.jsx","webpack:///src/core/components/execute.jsx","webpack:///src/core/components/headers.jsx","webpack:///src/core/components/errors.jsx","webpack:///external \"react-collapse\"","webpack:///src/core/components/content-type.jsx","webpack:///src/core/components/overview.jsx","webpack:///src/core/components/layout-utils.jsx","webpack:///external \"react-remarkable\"","webpack:///src/core/components/info.jsx","webpack:///src/core/components/footer.jsx","webpack:///src/core/components/param-body.jsx","webpack:///src/core/components/curl.jsx","webpack:///src/core/curlify.js","webpack:///src/core/components/schemes.jsx","webpack:///src/core/components/model-example.jsx","webpack:///src/core/components/model.jsx","webpack:///src/core/components/models.jsx","webpack:///src/core/components/try-it-out-button.jsx","webpack:///src/core/json-schema-components.js","webpack:///src/core/plugins/all.js","webpack:///./src/core/plugins \\.jsx","webpack:///src/plugins/configs/index.js","webpack:///./swagger-config.yaml"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"babel-polyfill\"), require(\"deep-extend\"), require(\"redux\"), require(\"immutable\"), require(\"redux-immutable\"), require(\"object-assign\"), require(\"serialize-error\"), require(\"base64-js\"), require(\"ieee754\"), require(\"isarray\"), require(\"shallowequal\"), require(\"xml\"), require(\"memoizee\"), require(\"reselect\"), require(\"js-yaml\"), require(\"react\"), require(\"react-dom\"), require(\"react-redux\"), require(\"yaml-js\"), require(\"swagger-client\"), require(\"react-split-pane\"), require(\"react-immutable-proptypes\"), require(\"react-addons-shallow-compare\"), require(\"react-collapse\"), require(\"react-remarkable\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"babel-polyfill\", \"deep-extend\", \"redux\", \"immutable\", \"redux-immutable\", \"object-assign\", \"serialize-error\", \"base64-js\", \"ieee754\", \"isarray\", \"shallowequal\", \"xml\", \"memoizee\", \"reselect\", \"js-yaml\", \"react\", \"react-dom\", \"react-redux\", \"yaml-js\", \"swagger-client\", \"react-split-pane\", \"react-immutable-proptypes\", \"react-addons-shallow-compare\", \"react-collapse\", \"react-remarkable\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"SwaggerUICore\"] = factory(require(\"babel-polyfill\"), require(\"deep-extend\"), require(\"redux\"), require(\"immutable\"), require(\"redux-immutable\"), require(\"object-assign\"), require(\"serialize-error\"), require(\"base64-js\"), require(\"ieee754\"), require(\"isarray\"), require(\"shallowequal\"), require(\"xml\"), require(\"memoizee\"), require(\"reselect\"), require(\"js-yaml\"), require(\"react\"), require(\"react-dom\"), require(\"react-redux\"), require(\"yaml-js\"), require(\"swagger-client\"), require(\"react-split-pane\"), require(\"react-immutable-proptypes\"), require(\"react-addons-shallow-compare\"), require(\"react-collapse\"), require(\"react-remarkable\"));\n\telse\n\t\troot[\"SwaggerUICore\"] = factory(root[\"babel-polyfill\"], root[\"deep-extend\"], root[\"redux\"], root[\"immutable\"], root[\"redux-immutable\"], root[\"object-assign\"], root[\"serialize-error\"], root[\"base64-js\"], root[\"ieee754\"], root[\"isarray\"], root[\"shallowequal\"], root[\"xml\"], root[\"memoizee\"], root[\"reselect\"], root[\"js-yaml\"], root[\"react\"], root[\"react-dom\"], root[\"react-redux\"], root[\"yaml-js\"], root[\"swagger-client\"], root[\"react-split-pane\"], root[\"react-immutable-proptypes\"], root[\"react-addons-shallow-compare\"], root[\"react-collapse\"], root[\"react-remarkable\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_1__, __WEBPACK_EXTERNAL_MODULE_4__, __WEBPACK_EXTERNAL_MODULE_6__, __WEBPACK_EXTERNAL_MODULE_7__, __WEBPACK_EXTERNAL_MODULE_8__, __WEBPACK_EXTERNAL_MODULE_9__, __WEBPACK_EXTERNAL_MODULE_10__, __WEBPACK_EXTERNAL_MODULE_15__, __WEBPACK_EXTERNAL_MODULE_16__, __WEBPACK_EXTERNAL_MODULE_17__, __WEBPACK_EXTERNAL_MODULE_18__, __WEBPACK_EXTERNAL_MODULE_156__, __WEBPACK_EXTERNAL_MODULE_157__, __WEBPACK_EXTERNAL_MODULE_174__, __WEBPACK_EXTERNAL_MODULE_182__, __WEBPACK_EXTERNAL_MODULE_187__, __WEBPACK_EXTERNAL_MODULE_188__, __WEBPACK_EXTERNAL_MODULE_189__, __WEBPACK_EXTERNAL_MODULE_244__, __WEBPACK_EXTERNAL_MODULE_254__, __WEBPACK_EXTERNAL_MODULE_266__, __WEBPACK_EXTERNAL_MODULE_273__, __WEBPACK_EXTERNAL_MODULE_285__, __WEBPACK_EXTERNAL_MODULE_297__, __WEBPACK_EXTERNAL_MODULE_301__) {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/dist\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 7ca211a40512f8bbe91c","module.exports = require(\"babel-polyfill\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"babel-polyfill\"\n// module id = 1\n// module chunks = 0","// removed by extract-text-webpack-plugin\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/style/main.scss\n// module id = 2\n// module chunks = 0","import deepExtend from \"deep-extend\"\n\nimport System from \"core/system\"\nimport ApisPreset from \"core/presets/apis\"\nimport * as AllPlugins from \"core/plugins/all\"\nimport { filterConfigs } from \"plugins/configs\"\nimport { parseSeach } from \"core/utils\"\n\nmodule.exports = function SwaggerUI(opts) {\n\n const defaults = {\n // Some general settings, that we floated to the top\n dom_id: null,\n spec: {},\n url: \"\",\n layout: \"Layout\",\n validatorUrl: \"https://online.swagger.io/validator\",\n configs: {\n },\n\n // Initial set of plugins ( TODO rename this, or refactor - we don't need presets _and_ plugins. Its just there for performance.\n // Instead, we can compile the first plugin ( it can be a collection of plugins ), then batch the rest.\n presets: [\n ],\n\n // Plugins; ( loaded after presets )\n plugins: [\n ],\n\n // Inline Plugin\n fn: { },\n components: { },\n state: { },\n\n // Override some core configs... at your own risk\n store: { },\n }\n\n const constructorConfig = deepExtend({}, defaults, opts)\n\n const storeConfigs = deepExtend({}, constructorConfig.store, {\n system: {\n configs: constructorConfig.configs\n },\n plugins: constructorConfig.presets,\n state: {\n layout: {\n layout: constructorConfig.layout\n },\n spec: {\n spec: \"\",\n url: constructorConfig.url\n }\n }\n })\n\n let inlinePlugin = ()=> {\n return {\n fn: constructorConfig.fn,\n components: constructorConfig.components,\n state: constructorConfig.state,\n }\n }\n\n var store = new System(storeConfigs)\n store.register([constructorConfig.plugins, inlinePlugin])\n\n var system = store.getSystem()\n let queryConfig = parseSeach()\n\n const downloadSpec = (fetchedConfig) => {\n if(typeof constructorConfig !== \"object\") {\n return system\n }\n\n let localConfig = system.specSelectors.getLocalConfig ? system.specSelectors.getLocalConfig() : {}\n let mergedConfig = deepExtend({}, constructorConfig, localConfig, fetchedConfig || {}, queryConfig)\n store.setConfigs(filterConfigs(mergedConfig))\n\n if (fetchedConfig !== null) {\n if (!queryConfig.url && typeof mergedConfig.spec === \"object\" && Object.keys(mergedConfig.spec).length) {\n system.specActions.updateUrl(\"\")\n system.specActions.updateLoadingStatus(\"success\")\n system.specActions.updateSpec(JSON.stringify(mergedConfig.spec))\n } else if (system.specActions.download && mergedConfig.url) {\n system.specActions.updateUrl(mergedConfig.url)\n system.specActions.download(mergedConfig.url)\n }\n }\n\n if(mergedConfig.dom_id) {\n system.render(mergedConfig.dom_id, \"App\")\n } else {\n console.error(\"Skipped rendering: no `dom_id` was specified\")\n }\n\n return system\n }\n\n let configUrl = queryConfig.config || constructorConfig.configUrl\n\n if (!configUrl || !system.specActions.getConfigByUrl || system.specActions.getConfigByUrl && !system.specActions.getConfigByUrl(configUrl, downloadSpec)) {\n return downloadSpec()\n }\n\n}\n\n// Add presets\nmodule.exports.presets = {\n apis: ApisPreset,\n}\n\n// All Plugins\nmodule.exports.plugins = AllPlugins\n\n\n\n// WEBPACK FOOTER //\n// src/core/index.js","module.exports = require(\"deep-extend\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"deep-extend\"\n// module id = 4\n// module chunks = 0","import { createStore, applyMiddleware, bindActionCreators, compose } from \"redux\"\nimport Im, { fromJS, Map } from \"immutable\"\nimport deepExtend from \"deep-extend\"\nimport { combineReducers } from \"redux-immutable\"\nimport assign from \"object-assign\"\nimport serializeError from \"serialize-error\"\nimport { NEW_THROWN_ERR } from \"corePlugins/err/actions\"\nimport win from \"core/window\"\n\nimport { systemThunkMiddleware, isFn, objMap, objReduce, isObject, isArray, isFunc } from \"core/utils\"\n\nconst idFn = a => a\n\n// Apply middleware that gets sandwitched between `dispatch` and the reducer function(s)\nfunction createStoreWithMiddleware(rootReducer, initialState, getSystem) {\n\n let middlwares = [\n // createLogger( {\n // stateTransformer: state => state && state.toJS()\n // } ),\n // errorLog(getSystem), Need to properly handle errors that occur during a render. Ie: let them be...\n systemThunkMiddleware( getSystem )\n ]\n\n const composeEnhancers = win.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose\n\n return createStore(rootReducer, initialState, composeEnhancers(\n applyMiddleware( ...middlwares )\n ))\n}\n\nexport default class Store {\n\n constructor(opts={}) {\n deepExtend(this, {\n state: {},\n plugins: [],\n system: {\n configs: {},\n fn: {},\n components: {},\n rootInjects: {},\n statePlugins: {}\n },\n boundSystem: {},\n toolbox: {}\n }, opts)\n\n this.getSystem = this._getSystem.bind(this)\n\n // Bare system (nothing in it, besides the state)\n this.store = configureStore(idFn, fromJS(this.state), this.getSystem )\n\n // will be the system + Im, we can add more tools when we need to\n this.buildSystem(false)\n\n // Bootstrap plugins\n this.register(this.plugins)\n }\n\n getStore() {\n return this.store\n }\n\n register(plugins, rebuild=true) {\n var pluginSystem = combinePlugins(plugins, this.getSystem())\n systemExtend(this.system, pluginSystem)\n if(rebuild) {\n this.buildSystem()\n }\n }\n\n buildSystem(buildReducer=true) {\n let dispatch = this.getStore().dispatch\n let getState = this.getStore().getState\n\n this.boundSystem = assign({},\n this.getRootInjects(),\n this.getWrappedAndBoundActions(dispatch),\n this.getBoundSelectors(getState, this.getSystem),\n this.getStateThunks(getState),\n this.getFn(),\n this.getConfigs()\n )\n\n if(buildReducer)\n this.rebuildReducer()\n }\n\n _getSystem() {\n return this.boundSystem\n }\n\n getRootInjects() {\n return assign({\n getSystem: this.getSystem,\n getStore: this.getStore.bind(this),\n getComponents: this.getComponents.bind(this),\n getState: this.getStore().getState,\n getConfigs: this._getConfigs.bind(this),\n Im\n }, this.system.rootInjects || {})\n }\n\n _getConfigs(){\n return this.system.configs\n }\n\n getConfigs() {\n return {\n configs: this.system.configs\n }\n }\n\n setConfigs(configs) {\n this.system.configs = configs\n }\n\n rebuildReducer() {\n this.store.replaceReducer(buildReducer(this.system.statePlugins))\n }\n\n /**\n * Generic getter from system.statePlugins\n *\n */\n getType(name) {\n let upName = name[0].toUpperCase() + name.slice(1)\n return objReduce(this.system.statePlugins, (val, namespace) => {\n let thing = val[name]\n if(thing)\n return {[namespace+upName]: thing}\n })\n }\n\n getSelectors() {\n return this.getType(\"selectors\")\n }\n\n getActions() {\n let actionHolders = this.getType(\"actions\")\n\n return objMap(actionHolders, (actions) => {\n return objReduce(actions, (action, actionName) => {\n if(isFn(action))\n return {[actionName]: action}\n })\n })\n }\n\n getWrappedAndBoundActions(dispatch) {\n let actionGroups = this.getBoundActions(dispatch)\n return objMap(actionGroups, (actions, actionGroupName) => {\n let wrappers = this.system.statePlugins[actionGroupName.slice(0,-7)].wrapActions\n if(wrappers) {\n return objMap(actions, (action, actionName) => {\n let wrap = wrappers[actionName]\n if(!wrap) {\n return action\n }\n\n if(!Array.isArray(wrap)) {\n wrap = [wrap]\n }\n return wrap.reduce((acc, fn) => {\n let newAction = (...args) => {\n return fn(acc, this.getSystem())(...args)\n }\n if(!isFn(newAction)) {\n throw new TypeError(\"wrapActions needs to return a function that returns a new function (ie the wrapped action)\")\n }\n return newAction\n }, action || Function.prototype)\n })\n }\n return actions\n })\n }\n\n getStates(state) {\n return Object.keys(this.system.statePlugins).reduce((obj, key) => {\n obj[key] = state.get(key)\n return obj\n }, {})\n }\n\n getStateThunks(getState) {\n return Object.keys(this.system.statePlugins).reduce((obj, key) => {\n obj[key] = ()=> getState().get(key)\n return obj\n }, {})\n }\n\n getFn() {\n return {\n fn: this.system.fn\n }\n }\n\n getComponents(component) {\n if(typeof component !== \"undefined\")\n return this.system.components[component]\n return this.system.components\n }\n\n getBoundSelectors(getState, getSystem) {\n return objMap(this.getSelectors(), (obj, key) => {\n let stateName = [key.slice(0, -9)] // selectors = 9 chars\n const getNestedState = ()=> getState().getIn(stateName)\n\n return objMap(obj, (fn) => {\n return (...args) => {\n let res = fn.apply(null, [getNestedState(), ...args])\n\n // If a selector returns a function, give it the system - for advanced usage\n if(typeof(res) === \"function\")\n res = res(getSystem())\n\n return res\n }\n })\n })\n }\n\n getBoundActions(dispatch) {\n\n dispatch = dispatch || this.getStore().dispatch\n\n const process = creator =>{\n\n if( typeof( creator ) !== \"function\" ) {\n return objMap(creator, prop => process(prop))\n }\n\n return ( ...args )=>{\n var action = null\n try{\n action = creator( ...args )\n }\n catch( e ){\n action = {type: NEW_THROWN_ERR, error: true, payload: serializeError(e) }\n }\n finally{\n return action\n }\n }\n\n }\n return objMap(this.getActions(), actionCreator => bindActionCreators( process( actionCreator ), dispatch ) )\n }\n\n getMapStateToProps() {\n return () => {\n let obj = assign({}, this.getSystem())\n return obj\n }\n }\n\n getMapDispatchToProps(extras) {\n return (dispatch) => {\n return deepExtend({}, this.getWrappedAndBoundActions(dispatch), this.getFn(), extras)\n }\n }\n\n}\n\nfunction combinePlugins(plugins, toolbox) {\n if(isObject(plugins) && !isArray(plugins))\n return plugins\n\n if(isFunc(plugins))\n return combinePlugins(plugins(toolbox), toolbox)\n\n if(isArray(plugins)) {\n return plugins\n .map(plugin => combinePlugins(plugin, toolbox))\n .reduce(systemExtend, {})\n }\n\n return {}\n}\n\n// Wraps deepExtend, to account for certain fields, being wrappers.\n// Ie: we need to convert some fields into arrays, and append to them.\n// Rather than overwrite\nfunction systemExtend(dest={}, src={}) {\n\n if(!isObject(dest)) {\n return {}\n }\n if(!isObject(src)) {\n return dest\n }\n\n // Account for wrapActions, make it an array and append to it\n // Modifies `src`\n // 80% of this code is just safe traversal. We need to address that ( ie: use a lib )\n const { statePlugins } = dest\n if(isObject(statePlugins)) {\n for(let namespace in statePlugins) {\n const namespaceObj = statePlugins[namespace]\n if(!isObject(namespaceObj) || !isObject(namespaceObj.wrapActions)) {\n continue\n }\n const { wrapActions } = namespaceObj\n for(let actionName in wrapActions) {\n let action = wrapActions[actionName]\n\n // This should only happen if dest is the first plugin, since invocations after that will ensure its an array\n if(!Array.isArray(action)) {\n action = [action]\n wrapActions[actionName] = action // Put the value inside an array\n }\n\n if(src && src.statePlugins && src.statePlugins[namespace] && src.statePlugins[namespace].wrapActions && src.statePlugins[namespace].wrapActions[actionName]) {\n src.statePlugins[namespace].wrapActions[actionName] = wrapActions[actionName].concat(src.statePlugins[namespace].wrapActions[actionName])\n }\n\n }\n }\n }\n\n return deepExtend(dest, src)\n}\n\nfunction buildReducer(states) {\n let reducerObj = objMap(states, (val) => {\n return val.reducers\n })\n return allReducers(reducerObj)\n}\n\nfunction allReducers(reducerSystem) {\n let reducers = Object.keys(reducerSystem).reduce((obj, key) => {\n obj[key] = makeReducer(reducerSystem[key])\n return obj\n },{})\n\n if(!Object.keys(reducers).length) {\n return idFn\n }\n\n return combineReducers(reducers)\n}\n\nfunction makeReducer(reducerObj) {\n return (state = new Map(), action) => {\n if(!reducerObj)\n return state\n\n let redFn = reducerObj[action.type]\n if(redFn) {\n return redFn(state, action)\n }\n return state\n }\n}\n\nfunction configureStore(rootReducer, initialState, getSystem) {\n const store = createStoreWithMiddleware(rootReducer, initialState, getSystem)\n\n // if (module.hot) {\n // // Enable Webpack hot module replacement for reducers\n // module.hot.accept(\"reducers/index\", () => {\n // const nextRootReducer = require(\"reducers/index\")\n // store.replaceReducer(nextRootReducer)\n // })\n // }\n\n return store\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/system.js","module.exports = require(\"redux\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"redux\"\n// module id = 6\n// module chunks = 0","module.exports = require(\"immutable\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"immutable\"\n// module id = 7\n// module chunks = 0","module.exports = require(\"redux-immutable\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"redux-immutable\"\n// module id = 8\n// module chunks = 0","module.exports = require(\"object-assign\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"object-assign\"\n// module id = 9\n// module chunks = 0","module.exports = require(\"serialize-error\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"serialize-error\"\n// module id = 10\n// module chunks = 0","import serializeError from \"serialize-error\"\n\nexport const NEW_THROWN_ERR = \"err_new_thrown_err\"\nexport const NEW_THROWN_ERR_BATCH = \"err_new_thrown_err_batch\"\nexport const NEW_SPEC_ERR = \"err_new_spec_err\"\nexport const NEW_AUTH_ERR = \"err_new_auth_err\"\nexport const CLEAR = \"err_clear\"\n\nexport function newThrownErr(err, action) {\n return {\n type: NEW_THROWN_ERR,\n payload: { action, error: serializeError(err) }\n }\n}\n\nexport function newThrownErrBatch(errors) {\n return {\n type: NEW_THROWN_ERR_BATCH,\n payload: errors\n }\n}\n\nexport function newSpecErr(err) {\n return {\n type: NEW_SPEC_ERR,\n payload: err\n }\n}\n\nexport function newAuthErr(err) {\n return {\n type: NEW_AUTH_ERR,\n payload: err\n }\n}\n\nexport function clear(filter = {}) {\n // filter looks like: {type: 'spec'}, {source: 'parser'}\n return {\n type: CLEAR,\n payload: filter\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/err/actions.js","function makeWindow() {\n var win = {\n location: {},\n history: {},\n open: () => {},\n close: () => {}\n }\n\n if(typeof window === \"undefined\") {\n return win\n }\n\n try {\n win = window\n var props = [\"File\", \"Blob\", \"FormData\"]\n for (var prop of props) {\n if (prop in window) {\n win[prop] = window[prop]\n }\n }\n } catch( e ) {\n console.error(e)\n }\n\n return win\n}\n\nmodule.exports = makeWindow()\n\n\n\n// WEBPACK FOOTER //\n// src/core/window.js","import Im from \"immutable\"\nimport assign from \"object-assign\"\nimport shallowEqual from \"shallowequal\"\n\nimport camelCase from \"lodash/camelCase\"\nimport upperFirst from \"lodash/upperFirst\"\nimport _memoize from \"lodash/memoize\"\nimport some from \"lodash/some\"\nimport eq from \"lodash/eq\"\nimport { memoizedSampleFromSchema, memoizedCreateXMLExample } from \"core/plugins/samples/fn\"\n\nconst DEFAULT_REPONSE_KEY = \"default\"\n\nexport const isImmutable = (maybe) => Im.Iterable.isIterable(maybe)\n\nexport function objectify (thing) {\n if(!isObject(thing))\n return {}\n if(isImmutable(thing))\n return thing.toObject()\n return thing\n}\n\nexport function arrayify (thing) {\n if(!thing)\n return []\n\n if(thing.toArray)\n return thing.toArray()\n\n return normalizeArray(thing)\n}\n\nexport function fromJSOrdered (js) {\n if(isImmutable(js))\n return js // Can't do much here\n\n return !isObject(js) ? js :\n Array.isArray(js) ?\n Im.Seq(js).map(fromJSOrdered).toList() :\n Im.Seq(js).map(fromJSOrdered).toOrderedMap()\n}\n\nexport function bindToState(obj, state) {\n\tvar newObj = {}\n\tObject.keys(obj)\n .filter(key => typeof obj[key] === \"function\")\n .forEach(key => newObj[key] = obj[key].bind(null, state))\n\treturn newObj\n}\n\nexport function normalizeArray(arr) {\n if(Array.isArray(arr))\n return arr\n return [arr]\n}\n\nexport function isFn(fn) {\n return typeof fn === \"function\"\n}\n\nexport function isObject(obj) {\n return !!obj && typeof obj === \"object\"\n}\n\nexport function isFunc(thing) {\n return typeof(thing) === \"function\"\n}\n\nexport function isArray(thing) {\n return Array.isArray(thing)\n}\n\n// I've changed memoize libs more than once, so I'm using this a way to make that simpler\nexport const memoize = _memoize\n\nexport function objMap(obj, fn) {\n return Object.keys(obj).reduce((newObj, key) => {\n newObj[key] = fn(obj[key], key)\n return newObj\n }, {})\n}\n\nexport function objReduce(obj, fn) {\n return Object.keys(obj).reduce((newObj, key) => {\n let res = fn(obj[key], key)\n if(res && typeof res === \"object\")\n assign(newObj, res)\n return newObj\n }, {})\n}\n\n// Redux middleware that exposes the system to async actions (like redux-thunk, but with out system instead of (dispatch, getState)\nexport function systemThunkMiddleware(getSystem) {\n return ({ dispatch, getState }) => { // eslint-disable-line no-unused-vars\n return next => action => {\n if (typeof action === \"function\") {\n return action(getSystem())\n }\n\n return next(action)\n }\n }\n}\n\nexport const errorLog = getSystem => () => next => action => {\n try{\n next( action )\n }\n catch( e ) {\n getSystem().errActions.newThrownErr( e, action )\n }\n}\n\nexport function defaultStatusCode ( responses ) {\n let codes = responses.keySeq()\n return codes.contains(DEFAULT_REPONSE_KEY) ? DEFAULT_REPONSE_KEY : codes.filter( key => (key+\"\")[0] === \"2\").sort().first()\n}\n\n\n/**\n * Returns an Immutable List, safely\n * @param {Immutable.Iterable} iterable the iterable to get the key from\n * @param {String|[String]} key either an array of keys, or a single key\n * @returns {Immutable.List} either iterable.get(keys) or an empty Immutable.List\n */\nexport function getList(iterable, keys) {\n if(!Im.Iterable.isIterable(iterable)) {\n return Im.List()\n }\n let val = iterable.getIn(Array.isArray(keys) ? keys : [keys])\n return Im.List.isList(val) ? val : Im.List()\n}\n\n// Adapted from http://stackoverflow.com/a/2893259/454004\n// Note: directly ported from CoffeeScript\nexport function formatXml (xml) {\n var contexp, fn, formatted, indent, l, lastType, len, lines, ln, reg, transitions, wsexp\n reg = /(>)(<)(\\/*)/g\n wsexp = /[ ]*(.*)[ ]+\\n/g\n contexp = /(<.+>)(.+\\n)/g\n xml = xml.replace(/\\r\\n/g, \"\\n\").replace(reg, \"$1\\n$2$3\").replace(wsexp, \"$1\\n\").replace(contexp, \"$1\\n$2\")\n formatted = \"\"\n lines = xml.split(\"\\n\")\n indent = 0\n lastType = \"other\"\n transitions = {\n \"single->single\": 0,\n \"single->closing\": -1,\n \"single->opening\": 0,\n \"single->other\": 0,\n \"closing->single\": 0,\n \"closing->closing\": -1,\n \"closing->opening\": 0,\n \"closing->other\": 0,\n \"opening->single\": 1,\n \"opening->closing\": 0,\n \"opening->opening\": 1,\n \"opening->other\": 1,\n \"other->single\": 0,\n \"other->closing\": -1,\n \"other->opening\": 0,\n \"other->other\": 0\n }\n fn = function(ln) {\n var fromTo, key, padding, type, types, value\n types = {\n single: Boolean(ln.match(/<.+\\/>/)),\n closing: Boolean(ln.match(/<\\/.+>/)),\n opening: Boolean(ln.match(/<[^!?].*>/))\n }\n type = ((function() {\n var results\n results = []\n for (key in types) {\n value = types[key]\n if (value) {\n results.push(key)\n }\n }\n return results\n })())[0]\n type = type === void 0 ? \"other\" : type\n fromTo = lastType + \"->\" + type\n lastType = type\n padding = \"\"\n indent += transitions[fromTo]\n padding = ((function() {\n /* eslint-disable no-unused-vars */\n var m, ref1, results, j\n results = []\n for (j = m = 0, ref1 = indent; 0 <= ref1 ? m < ref1 : m > ref1; j = 0 <= ref1 ? ++m : --m) {\n results.push(\" \")\n }\n /* eslint-enable no-unused-vars */\n return results\n })()).join(\"\")\n if (fromTo === \"opening->closing\") {\n formatted = formatted.substr(0, formatted.length - 1) + ln + \"\\n\"\n } else {\n formatted += padding + ln + \"\\n\"\n }\n }\n for (l = 0, len = lines.length; l < len; l++) {\n ln = lines[l]\n fn(ln)\n }\n return formatted\n}\n\n\n/**\n * Adapted from http://github.com/asvd/microlight\n * @copyright 2016 asvd \n */\nexport function highlight (el) {\n const MAX_LENGTH = 5000\n var\n _document = document,\n appendChild = \"appendChild\",\n test = \"test\"\n\n if (!el) return \"\"\n if (el.textContent.length > MAX_LENGTH) { return el.textContent }\n\n var reset = function(el) {\n var text = el.textContent,\n pos = 0, // current position\n next1 = text[0], // next character\n chr = 1, // current character\n prev1, // previous character\n prev2, // the one before the previous\n token = // current token content\n el.innerHTML = \"\", // (and cleaning the node)\n\n // current token type:\n // 0: anything else (whitespaces / newlines)\n // 1: operator or brace\n // 2: closing braces (after which '/' is division not regex)\n // 3: (key)word\n // 4: regex\n // 5: string starting with \"\n // 6: string starting with '\n // 7: xml comment \n // 8: multiline comment /* */\n // 9: single-line comment starting with two slashes //\n // 10: single-line comment starting with hash #\n tokenType = 0,\n\n // kept to determine between regex and division\n lastTokenType,\n // flag determining if token is multi-character\n multichar,\n node\n\n // running through characters and highlighting\n while (prev2 = prev1,\n // escaping if needed (with except for comments)\n // pervious character will not be therefore\n // recognized as a token finalize condition\n prev1 = tokenType < 7 && prev1 == \"\\\\\" ? 1 : chr\n ) {\n chr = next1\n next1=text[++pos]\n multichar = token.length > 1\n\n // checking if current token should be finalized\n if (!chr || // end of content\n // types 9-10 (single-line comments) end with a\n // newline\n (tokenType > 8 && chr == \"\\n\") ||\n [ // finalize conditions for other token types\n // 0: whitespaces\n /\\S/[test](chr), // merged together\n // 1: operators\n 1, // consist of a single character\n // 2: braces\n 1, // consist of a single character\n // 3: (key)word\n !/[$\\w]/[test](chr),\n // 4: regex\n (prev1 == \"/\" || prev1 == \"\\n\") && multichar,\n // 5: string with \"\n prev1 == \"\\\"\" && multichar,\n // 6: string with '\n prev1 == \"'\" && multichar,\n // 7: xml comment\n text[pos-4]+prev2+prev1 == \"-->\",\n // 8: multiline comment\n prev2+prev1 == \"*/\"\n ][tokenType]\n ) {\n // appending the token to the result\n if (token) {\n // remapping token type into style\n // (some types are highlighted similarly)\n el[appendChild](\n node = _document.createElement(\"span\")\n ).setAttribute(\"style\", [\n // 0: not formatted\n \"color: #555; font-weight: bold;\",\n // 1: keywords\n \"\",\n // 2: punctuation\n \"\",\n // 3: strings and regexps\n \"color: #555;\",\n // 4: comments\n \"\"\n ][\n // not formatted\n !tokenType ? 0 :\n // punctuation\n tokenType < 3 ? 2 :\n // comments\n tokenType > 6 ? 4 :\n // regex and strings\n tokenType > 3 ? 3 :\n // otherwise tokenType == 3, (key)word\n // (1 if regexp matches, 0 otherwise)\n + /^(a(bstract|lias|nd|rguments|rray|s(m|sert)?|uto)|b(ase|egin|ool(ean)?|reak|yte)|c(ase|atch|har|hecked|lass|lone|ompl|onst|ontinue)|de(bugger|cimal|clare|f(ault|er)?|init|l(egate|ete)?)|do|double|e(cho|ls?if|lse(if)?|nd|nsure|num|vent|x(cept|ec|p(licit|ort)|te(nds|nsion|rn)))|f(allthrough|alse|inal(ly)?|ixed|loat|or(each)?|riend|rom|unc(tion)?)|global|goto|guard|i(f|mp(lements|licit|ort)|n(it|clude(_once)?|line|out|stanceof|t(erface|ernal)?)?|s)|l(ambda|et|ock|ong)|m(icrolight|odule|utable)|NaN|n(amespace|ative|ext|ew|il|ot|ull)|o(bject|perator|r|ut|verride)|p(ackage|arams|rivate|rotected|rotocol|ublic)|r(aise|e(adonly|do|f|gister|peat|quire(_once)?|scue|strict|try|turn))|s(byte|ealed|elf|hort|igned|izeof|tatic|tring|truct|ubscript|uper|ynchronized|witch)|t(emplate|hen|his|hrows?|ransient|rue|ry|ype(alias|def|id|name|of))|u(n(checked|def(ined)?|ion|less|signed|til)|se|sing)|v(ar|irtual|oid|olatile)|w(char_t|hen|here|hile|ith)|xor|yield)$/[test](token)\n ])\n\n node[appendChild](_document.createTextNode(token))\n }\n\n // saving the previous token type\n // (skipping whitespaces and comments)\n lastTokenType =\n (tokenType && tokenType < 7) ?\n tokenType : lastTokenType\n\n // initializing a new token\n token = \"\"\n\n // determining the new token type (going up the\n // list until matching a token type start\n // condition)\n tokenType = 11\n while (![\n 1, // 0: whitespace\n // 1: operator or braces\n /[\\/{}[(\\-+*=<>:;|\\\\.,?!&@~]/[test](chr),\n /[\\])]/[test](chr), // 2: closing brace\n /[$\\w]/[test](chr), // 3: (key)word\n chr == \"/\" && // 4: regex\n // previous token was an\n // opening brace or an\n // operator (otherwise\n // division, not a regex)\n (lastTokenType < 2) &&\n // workaround for xml\n // closing tags\n prev1 != \"<\",\n chr == \"\\\"\", // 5: string with \"\n chr == \"'\", // 6: string with '\n // 7: xml comment\n chr+next1+text[pos+1]+text[pos+2] == \"\"\n } else {\n return null\n }\n }\n return memoizedCreateXMLExample(schema, config)\n }\n\n return JSON.stringify(memoizedSampleFromSchema(schema, config), null, 2)\n}\n\nexport const parseSeach = () => {\n let map = {}\n let search = window.location.search\n\n if ( search != \"\" ) {\n let params = search.substr(1).split(\"&\")\n\n for (let i in params) {\n i = params[i].split(\"=\")\n map[decodeURIComponent(i[0])] = decodeURIComponent(i[1])\n }\n }\n\n return map\n}\n\nexport const btoa = (str) => {\n let buffer\n\n if (str instanceof Buffer) {\n buffer = str\n } else {\n buffer = new Buffer(str.toString(), \"utf-8\")\n }\n\n return buffer.toString(\"base64\")\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/utils.js","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nvar base64 = require('base64-js')\nvar ieee754 = require('ieee754')\nvar isArray = require('isarray')\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Use Object implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * Due to various browser bugs, sometimes the Object implementation will be used even\n * when the browser supports typed arrays.\n *\n * Note:\n *\n * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,\n * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.\n *\n * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.\n *\n * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of\n * incorrect length in some situations.\n\n * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they\n * get the Object implementation, which is slower but behaves correctly.\n */\nBuffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined\n ? global.TYPED_ARRAY_SUPPORT\n : typedArraySupport()\n\n/*\n * Export kMaxLength after typed array support is determined.\n */\nexports.kMaxLength = kMaxLength()\n\nfunction typedArraySupport () {\n try {\n var arr = new Uint8Array(1)\n arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }}\n return arr.foo() === 42 && // typed array instances can be augmented\n typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`\n arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`\n } catch (e) {\n return false\n }\n}\n\nfunction kMaxLength () {\n return Buffer.TYPED_ARRAY_SUPPORT\n ? 0x7fffffff\n : 0x3fffffff\n}\n\nfunction createBuffer (that, length) {\n if (kMaxLength() < length) {\n throw new RangeError('Invalid typed array length')\n }\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = new Uint8Array(length)\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n if (that === null) {\n that = new Buffer(length)\n }\n that.length = length\n }\n\n return that\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {\n return new Buffer(arg, encodingOrOffset, length)\n }\n\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new Error(\n 'If encoding is specified then the first argument must be a string'\n )\n }\n return allocUnsafe(this, arg)\n }\n return from(this, arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\n// TODO: Legacy, not needed anymore. Remove in next major version.\nBuffer._augment = function (arr) {\n arr.__proto__ = Buffer.prototype\n return arr\n}\n\nfunction from (that, value, encodingOrOffset, length) {\n if (typeof value === 'number') {\n throw new TypeError('\"value\" argument must not be a number')\n }\n\n if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {\n return fromArrayBuffer(that, value, encodingOrOffset, length)\n }\n\n if (typeof value === 'string') {\n return fromString(that, value, encodingOrOffset)\n }\n\n return fromObject(that, value)\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(null, value, encodingOrOffset, length)\n}\n\nif (Buffer.TYPED_ARRAY_SUPPORT) {\n Buffer.prototype.__proto__ = Uint8Array.prototype\n Buffer.__proto__ = Uint8Array\n if (typeof Symbol !== 'undefined' && Symbol.species &&\n Buffer[Symbol.species] === Buffer) {\n // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97\n Object.defineProperty(Buffer, Symbol.species, {\n value: null,\n configurable: true\n })\n }\n}\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be a number')\n } else if (size < 0) {\n throw new RangeError('\"size\" argument must not be negative')\n }\n}\n\nfunction alloc (that, size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(that, size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpretted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(that, size).fill(fill, encoding)\n : createBuffer(that, size).fill(fill)\n }\n return createBuffer(that, size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(null, size, fill, encoding)\n}\n\nfunction allocUnsafe (that, size) {\n assertSize(size)\n that = createBuffer(that, size < 0 ? 0 : checked(size) | 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) {\n for (var i = 0; i < size; ++i) {\n that[i] = 0\n }\n }\n return that\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(null, size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(null, size)\n}\n\nfunction fromString (that, string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('\"encoding\" must be a valid string encoding')\n }\n\n var length = byteLength(string, encoding) | 0\n that = createBuffer(that, length)\n\n var actual = that.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n that = that.slice(0, actual)\n }\n\n return that\n}\n\nfunction fromArrayLike (that, array) {\n var length = array.length < 0 ? 0 : checked(array.length) | 0\n that = createBuffer(that, length)\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\nfunction fromArrayBuffer (that, array, byteOffset, length) {\n array.byteLength // this throws if `array` is not a valid ArrayBuffer\n\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\\'offset\\' is out of bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\\'length\\' is out of bounds')\n }\n\n if (byteOffset === undefined && length === undefined) {\n array = new Uint8Array(array)\n } else if (length === undefined) {\n array = new Uint8Array(array, byteOffset)\n } else {\n array = new Uint8Array(array, byteOffset, length)\n }\n\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = array\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n that = fromArrayLike(that, array)\n }\n return that\n}\n\nfunction fromObject (that, obj) {\n if (Buffer.isBuffer(obj)) {\n var len = checked(obj.length) | 0\n that = createBuffer(that, len)\n\n if (that.length === 0) {\n return that\n }\n\n obj.copy(that, 0, 0, len)\n return that\n }\n\n if (obj) {\n if ((typeof ArrayBuffer !== 'undefined' &&\n obj.buffer instanceof ArrayBuffer) || 'length' in obj) {\n if (typeof obj.length !== 'number' || isnan(obj.length)) {\n return createBuffer(that, 0)\n }\n return fromArrayLike(that, obj)\n }\n\n if (obj.type === 'Buffer' && isArray(obj.data)) {\n return fromArrayLike(that, obj.data)\n }\n }\n\n throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')\n}\n\nfunction checked (length) {\n // Note: cannot use `length < kMaxLength()` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= kMaxLength()) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + kMaxLength().toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return !!(b != null && b._isBuffer)\n}\n\nBuffer.compare = function compare (a, b) {\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError('Arguments must be Buffers')\n }\n\n if (a === b) return 0\n\n var x = a.length\n var y = b.length\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n var i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n var buffer = Buffer.allocUnsafe(length)\n var pos = 0\n for (i = 0; i < list.length; ++i) {\n var buf = list[i]\n if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n buf.copy(buffer, pos)\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&\n (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n string = '' + string\n }\n\n var len = string.length\n if (len === 0) return 0\n\n // Use a for loop to avoid recursion\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n case undefined:\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) return utf8ToBytes(string).length // assume utf8\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n var loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coersion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect\n// Buffer instances.\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n var i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n var len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (var i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n var len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (var i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n var len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (var i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n var length = this.length | 0\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n var str = ''\n var max = exports.INSPECT_MAX_BYTES\n if (this.length > 0) {\n str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')\n if (this.length > max) str += ' ... '\n }\n return ''\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (!Buffer.isBuffer(target)) {\n throw new TypeError('Argument must be a Buffer')\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n var x = thisEnd - thisStart\n var y = end - start\n var len = Math.min(x, y)\n\n var thisCopy = this.slice(thisStart, thisEnd)\n var targetCopy = target.slice(start, end)\n\n for (var i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (isNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (Buffer.TYPED_ARRAY_SUPPORT &&\n typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n var indexSize = 1\n var arrLength = arr.length\n var valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n var i\n if (dir) {\n var foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n var found = true\n for (var j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n var remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n // must be an even number of digits\n var strLen = string.length\n if (strLen % 2 !== 0) throw new TypeError('Invalid hex string')\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n for (var i = 0; i < length; ++i) {\n var parsed = parseInt(string.substr(i * 2, 2), 16)\n if (isNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction latin1Write (buf, string, offset, length) {\n return asciiWrite(buf, string, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset | 0\n if (isFinite(length)) {\n length = length | 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n // legacy write(string, encoding, offset, length) - remove in v0.13\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n var remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n return asciiWrite(this, string, offset, length)\n\n case 'latin1':\n case 'binary':\n return latin1Write(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n var res = []\n\n var i = start\n while (i < end) {\n var firstByte = buf[i]\n var codePoint = null\n var bytesPerSequence = (firstByte > 0xEF) ? 4\n : (firstByte > 0xDF) ? 3\n : (firstByte > 0xBF) ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n var secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nvar MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n var len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n var res = ''\n var i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n var len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n var out = ''\n for (var i = start; i < end; ++i) {\n out += toHex(buf[i])\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n var bytes = buf.slice(start, end)\n var res = ''\n for (var i = 0; i < bytes.length; i += 2) {\n res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n var len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n var newBuf\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n newBuf = this.subarray(start, end)\n newBuf.__proto__ = Buffer.prototype\n } else {\n var sliceLen = end - start\n newBuf = new Buffer(sliceLen, undefined)\n for (var i = 0; i < sliceLen; ++i) {\n newBuf[i] = this[i + start]\n }\n }\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n var val = this[offset + --byteLength]\n var mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var i = byteLength\n var mul = 1\n var val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var mul = 1\n var i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var i = byteLength - 1\n var mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nfunction objectWriteUInt16 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) {\n buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>\n (littleEndian ? i : 1 - i) * 8\n }\n}\n\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nfunction objectWriteUInt32 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffffffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) {\n buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff\n }\n}\n\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = 0\n var mul = 1\n var sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = byteLength - 1\n var mul = 1\n var sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n var len = end - start\n var i\n\n if (this === target && start < targetStart && targetStart < end) {\n // descending copy from end\n for (i = len - 1; i >= 0; --i) {\n target[i + targetStart] = this[i + start]\n }\n } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n // ascending copy from start\n for (i = 0; i < len; ++i) {\n target[i + targetStart] = this[i + start]\n }\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, start + len),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (val.length === 1) {\n var code = val.charCodeAt(0)\n if (code < 256) {\n val = code\n }\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n } else if (typeof val === 'number') {\n val = val & 255\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n var i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n var bytes = Buffer.isBuffer(val)\n ? val\n : utf8ToBytes(new Buffer(val, encoding).toString())\n var len = bytes.length\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// HELPER FUNCTIONS\n// ================\n\nvar INVALID_BASE64_RE = /[^+\\/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = stringtrim(str).replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction stringtrim (str) {\n if (str.trim) return str.trim()\n return str.replace(/^\\s+|\\s+$/g, '')\n}\n\nfunction toHex (n) {\n if (n < 16) return '0' + n.toString(16)\n return n.toString(16)\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n var codePoint\n var length = string.length\n var leadSurrogate = null\n var bytes = []\n\n for (var i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n var c, hi, lo\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n for (var i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\nfunction isnan (val) {\n return val !== val // eslint-disable-line no-self-compare\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/buffer/index.js\n// module id = 14\n// module chunks = 0","module.exports = require(\"base64-js\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"base64-js\"\n// module id = 15\n// module chunks = 0","module.exports = require(\"ieee754\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"ieee754\"\n// module id = 16\n// module chunks = 0","module.exports = require(\"isarray\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"isarray\"\n// module id = 17\n// module chunks = 0","module.exports = require(\"shallowequal\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"shallowequal\"\n// module id = 18\n// module chunks = 0","var capitalize = require('./capitalize'),\n createCompounder = require('./_createCompounder');\n\n/**\n * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the camel cased string.\n * @example\n *\n * _.camelCase('Foo Bar');\n * // => 'fooBar'\n *\n * _.camelCase('--foo-bar--');\n * // => 'fooBar'\n *\n * _.camelCase('__FOO_BAR__');\n * // => 'fooBar'\n */\nvar camelCase = createCompounder(function(result, word, index) {\n word = word.toLowerCase();\n return result + (index ? capitalize(word) : word);\n});\n\nmodule.exports = camelCase;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/camelCase.js\n// module id = 19\n// module chunks = 0","var toString = require('./toString'),\n upperFirst = require('./upperFirst');\n\n/**\n * Converts the first character of `string` to upper case and the remaining\n * to lower case.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to capitalize.\n * @returns {string} Returns the capitalized string.\n * @example\n *\n * _.capitalize('FRED');\n * // => 'Fred'\n */\nfunction capitalize(string) {\n return upperFirst(toString(string).toLowerCase());\n}\n\nmodule.exports = capitalize;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/capitalize.js\n// module id = 20\n// module chunks = 0","var baseToString = require('./_baseToString');\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\nmodule.exports = toString;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/toString.js\n// module id = 21\n// module chunks = 0","var Symbol = require('./_Symbol'),\n arrayMap = require('./_arrayMap'),\n isArray = require('./isArray'),\n isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nmodule.exports = baseToString;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseToString.js\n// module id = 22\n// module chunks = 0","var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_Symbol.js\n// module id = 23\n// module chunks = 0","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_root.js\n// module id = 24\n// module chunks = 0","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_freeGlobal.js\n// module id = 25\n// module chunks = 0","/**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\nfunction arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n}\n\nmodule.exports = arrayMap;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_arrayMap.js\n// module id = 26\n// module chunks = 0","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nmodule.exports = isArray;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/isArray.js\n// module id = 27\n// module chunks = 0","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nmodule.exports = isSymbol;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/isSymbol.js\n// module id = 28\n// module chunks = 0","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n value = Object(value);\n return (symToStringTag && symToStringTag in value)\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseGetTag.js\n// module id = 29\n// module chunks = 0","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_getRawTag.js\n// module id = 30\n// module chunks = 0","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_objectToString.js\n// module id = 31\n// module chunks = 0","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/isObjectLike.js\n// module id = 32\n// module chunks = 0","var createCaseFirst = require('./_createCaseFirst');\n\n/**\n * Converts the first character of `string` to upper case.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.upperFirst('fred');\n * // => 'Fred'\n *\n * _.upperFirst('FRED');\n * // => 'FRED'\n */\nvar upperFirst = createCaseFirst('toUpperCase');\n\nmodule.exports = upperFirst;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/upperFirst.js\n// module id = 33\n// module chunks = 0","var castSlice = require('./_castSlice'),\n hasUnicode = require('./_hasUnicode'),\n stringToArray = require('./_stringToArray'),\n toString = require('./toString');\n\n/**\n * Creates a function like `_.lowerFirst`.\n *\n * @private\n * @param {string} methodName The name of the `String` case method to use.\n * @returns {Function} Returns the new case function.\n */\nfunction createCaseFirst(methodName) {\n return function(string) {\n string = toString(string);\n\n var strSymbols = hasUnicode(string)\n ? stringToArray(string)\n : undefined;\n\n var chr = strSymbols\n ? strSymbols[0]\n : string.charAt(0);\n\n var trailing = strSymbols\n ? castSlice(strSymbols, 1).join('')\n : string.slice(1);\n\n return chr[methodName]() + trailing;\n };\n}\n\nmodule.exports = createCaseFirst;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_createCaseFirst.js\n// module id = 34\n// module chunks = 0","var baseSlice = require('./_baseSlice');\n\n/**\n * Casts `array` to a slice if it's needed.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {number} start The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the cast slice.\n */\nfunction castSlice(array, start, end) {\n var length = array.length;\n end = end === undefined ? length : end;\n return (!start && end >= length) ? array : baseSlice(array, start, end);\n}\n\nmodule.exports = castSlice;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_castSlice.js\n// module id = 35\n// module chunks = 0","/**\n * The base implementation of `_.slice` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\nfunction baseSlice(array, start, end) {\n var index = -1,\n length = array.length;\n\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = end > length ? length : end;\n if (end < 0) {\n end += length;\n }\n length = start > end ? 0 : ((end - start) >>> 0);\n start >>>= 0;\n\n var result = Array(length);\n while (++index < length) {\n result[index] = array[index + start];\n }\n return result;\n}\n\nmodule.exports = baseSlice;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseSlice.js\n// module id = 36\n// module chunks = 0","/** Used to compose unicode character classes. */\nvar rsAstralRange = '\\\\ud800-\\\\udfff',\n rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,\n rsVarRange = '\\\\ufe0e\\\\ufe0f';\n\n/** Used to compose unicode capture groups. */\nvar rsZWJ = '\\\\u200d';\n\n/** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */\nvar reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']');\n\n/**\n * Checks if `string` contains Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a symbol is found, else `false`.\n */\nfunction hasUnicode(string) {\n return reHasUnicode.test(string);\n}\n\nmodule.exports = hasUnicode;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_hasUnicode.js\n// module id = 37\n// module chunks = 0","var asciiToArray = require('./_asciiToArray'),\n hasUnicode = require('./_hasUnicode'),\n unicodeToArray = require('./_unicodeToArray');\n\n/**\n * Converts `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\nfunction stringToArray(string) {\n return hasUnicode(string)\n ? unicodeToArray(string)\n : asciiToArray(string);\n}\n\nmodule.exports = stringToArray;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_stringToArray.js\n// module id = 38\n// module chunks = 0","/**\n * Converts an ASCII `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\nfunction asciiToArray(string) {\n return string.split('');\n}\n\nmodule.exports = asciiToArray;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_asciiToArray.js\n// module id = 39\n// module chunks = 0","/** Used to compose unicode character classes. */\nvar rsAstralRange = '\\\\ud800-\\\\udfff',\n rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,\n rsVarRange = '\\\\ufe0e\\\\ufe0f';\n\n/** Used to compose unicode capture groups. */\nvar rsAstral = '[' + rsAstralRange + ']',\n rsCombo = '[' + rsComboRange + ']',\n rsFitz = '\\\\ud83c[\\\\udffb-\\\\udfff]',\n rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',\n rsNonAstral = '[^' + rsAstralRange + ']',\n rsRegional = '(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}',\n rsSurrPair = '[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]',\n rsZWJ = '\\\\u200d';\n\n/** Used to compose unicode regexes. */\nvar reOptMod = rsModifier + '?',\n rsOptVar = '[' + rsVarRange + ']?',\n rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',\n rsSeq = rsOptVar + reOptMod + rsOptJoin,\n rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')';\n\n/** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */\nvar reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g');\n\n/**\n * Converts a Unicode `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\nfunction unicodeToArray(string) {\n return string.match(reUnicode) || [];\n}\n\nmodule.exports = unicodeToArray;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_unicodeToArray.js\n// module id = 40\n// module chunks = 0","var arrayReduce = require('./_arrayReduce'),\n deburr = require('./deburr'),\n words = require('./words');\n\n/** Used to compose unicode capture groups. */\nvar rsApos = \"['\\u2019]\";\n\n/** Used to match apostrophes. */\nvar reApos = RegExp(rsApos, 'g');\n\n/**\n * Creates a function like `_.camelCase`.\n *\n * @private\n * @param {Function} callback The function to combine each word.\n * @returns {Function} Returns the new compounder function.\n */\nfunction createCompounder(callback) {\n return function(string) {\n return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');\n };\n}\n\nmodule.exports = createCompounder;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_createCompounder.js\n// module id = 41\n// module chunks = 0","/**\n * A specialized version of `_.reduce` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the first element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\nfunction arrayReduce(array, iteratee, accumulator, initAccum) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n if (initAccum && length) {\n accumulator = array[++index];\n }\n while (++index < length) {\n accumulator = iteratee(accumulator, array[index], index, array);\n }\n return accumulator;\n}\n\nmodule.exports = arrayReduce;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_arrayReduce.js\n// module id = 42\n// module chunks = 0","var deburrLetter = require('./_deburrLetter'),\n toString = require('./toString');\n\n/** Used to match Latin Unicode letters (excluding mathematical operators). */\nvar reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\n\n/** Used to compose unicode character classes. */\nvar rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange;\n\n/** Used to compose unicode capture groups. */\nvar rsCombo = '[' + rsComboRange + ']';\n\n/**\n * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\n * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\n */\nvar reComboMark = RegExp(rsCombo, 'g');\n\n/**\n * Deburrs `string` by converting\n * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)\n * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)\n * letters to basic Latin letters and removing\n * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to deburr.\n * @returns {string} Returns the deburred string.\n * @example\n *\n * _.deburr('dĆ©jĆ  vu');\n * // => 'deja vu'\n */\nfunction deburr(string) {\n string = toString(string);\n return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\n}\n\nmodule.exports = deburr;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/deburr.js\n// module id = 43\n// module chunks = 0","var basePropertyOf = require('./_basePropertyOf');\n\n/** Used to map Latin Unicode letters to basic Latin letters. */\nvar deburredLetters = {\n // Latin-1 Supplement block.\n '\\xc0': 'A', '\\xc1': 'A', '\\xc2': 'A', '\\xc3': 'A', '\\xc4': 'A', '\\xc5': 'A',\n '\\xe0': 'a', '\\xe1': 'a', '\\xe2': 'a', '\\xe3': 'a', '\\xe4': 'a', '\\xe5': 'a',\n '\\xc7': 'C', '\\xe7': 'c',\n '\\xd0': 'D', '\\xf0': 'd',\n '\\xc8': 'E', '\\xc9': 'E', '\\xca': 'E', '\\xcb': 'E',\n '\\xe8': 'e', '\\xe9': 'e', '\\xea': 'e', '\\xeb': 'e',\n '\\xcc': 'I', '\\xcd': 'I', '\\xce': 'I', '\\xcf': 'I',\n '\\xec': 'i', '\\xed': 'i', '\\xee': 'i', '\\xef': 'i',\n '\\xd1': 'N', '\\xf1': 'n',\n '\\xd2': 'O', '\\xd3': 'O', '\\xd4': 'O', '\\xd5': 'O', '\\xd6': 'O', '\\xd8': 'O',\n '\\xf2': 'o', '\\xf3': 'o', '\\xf4': 'o', '\\xf5': 'o', '\\xf6': 'o', '\\xf8': 'o',\n '\\xd9': 'U', '\\xda': 'U', '\\xdb': 'U', '\\xdc': 'U',\n '\\xf9': 'u', '\\xfa': 'u', '\\xfb': 'u', '\\xfc': 'u',\n '\\xdd': 'Y', '\\xfd': 'y', '\\xff': 'y',\n '\\xc6': 'Ae', '\\xe6': 'ae',\n '\\xde': 'Th', '\\xfe': 'th',\n '\\xdf': 'ss',\n // Latin Extended-A block.\n '\\u0100': 'A', '\\u0102': 'A', '\\u0104': 'A',\n '\\u0101': 'a', '\\u0103': 'a', '\\u0105': 'a',\n '\\u0106': 'C', '\\u0108': 'C', '\\u010a': 'C', '\\u010c': 'C',\n '\\u0107': 'c', '\\u0109': 'c', '\\u010b': 'c', '\\u010d': 'c',\n '\\u010e': 'D', '\\u0110': 'D', '\\u010f': 'd', '\\u0111': 'd',\n '\\u0112': 'E', '\\u0114': 'E', '\\u0116': 'E', '\\u0118': 'E', '\\u011a': 'E',\n '\\u0113': 'e', '\\u0115': 'e', '\\u0117': 'e', '\\u0119': 'e', '\\u011b': 'e',\n '\\u011c': 'G', '\\u011e': 'G', '\\u0120': 'G', '\\u0122': 'G',\n '\\u011d': 'g', '\\u011f': 'g', '\\u0121': 'g', '\\u0123': 'g',\n '\\u0124': 'H', '\\u0126': 'H', '\\u0125': 'h', '\\u0127': 'h',\n '\\u0128': 'I', '\\u012a': 'I', '\\u012c': 'I', '\\u012e': 'I', '\\u0130': 'I',\n '\\u0129': 'i', '\\u012b': 'i', '\\u012d': 'i', '\\u012f': 'i', '\\u0131': 'i',\n '\\u0134': 'J', '\\u0135': 'j',\n '\\u0136': 'K', '\\u0137': 'k', '\\u0138': 'k',\n '\\u0139': 'L', '\\u013b': 'L', '\\u013d': 'L', '\\u013f': 'L', '\\u0141': 'L',\n '\\u013a': 'l', '\\u013c': 'l', '\\u013e': 'l', '\\u0140': 'l', '\\u0142': 'l',\n '\\u0143': 'N', '\\u0145': 'N', '\\u0147': 'N', '\\u014a': 'N',\n '\\u0144': 'n', '\\u0146': 'n', '\\u0148': 'n', '\\u014b': 'n',\n '\\u014c': 'O', '\\u014e': 'O', '\\u0150': 'O',\n '\\u014d': 'o', '\\u014f': 'o', '\\u0151': 'o',\n '\\u0154': 'R', '\\u0156': 'R', '\\u0158': 'R',\n '\\u0155': 'r', '\\u0157': 'r', '\\u0159': 'r',\n '\\u015a': 'S', '\\u015c': 'S', '\\u015e': 'S', '\\u0160': 'S',\n '\\u015b': 's', '\\u015d': 's', '\\u015f': 's', '\\u0161': 's',\n '\\u0162': 'T', '\\u0164': 'T', '\\u0166': 'T',\n '\\u0163': 't', '\\u0165': 't', '\\u0167': 't',\n '\\u0168': 'U', '\\u016a': 'U', '\\u016c': 'U', '\\u016e': 'U', '\\u0170': 'U', '\\u0172': 'U',\n '\\u0169': 'u', '\\u016b': 'u', '\\u016d': 'u', '\\u016f': 'u', '\\u0171': 'u', '\\u0173': 'u',\n '\\u0174': 'W', '\\u0175': 'w',\n '\\u0176': 'Y', '\\u0177': 'y', '\\u0178': 'Y',\n '\\u0179': 'Z', '\\u017b': 'Z', '\\u017d': 'Z',\n '\\u017a': 'z', '\\u017c': 'z', '\\u017e': 'z',\n '\\u0132': 'IJ', '\\u0133': 'ij',\n '\\u0152': 'Oe', '\\u0153': 'oe',\n '\\u0149': \"'n\", '\\u017f': 's'\n};\n\n/**\n * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A\n * letters to basic Latin letters.\n *\n * @private\n * @param {string} letter The matched letter to deburr.\n * @returns {string} Returns the deburred letter.\n */\nvar deburrLetter = basePropertyOf(deburredLetters);\n\nmodule.exports = deburrLetter;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_deburrLetter.js\n// module id = 44\n// module chunks = 0","/**\n * The base implementation of `_.propertyOf` without support for deep paths.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Function} Returns the new accessor function.\n */\nfunction basePropertyOf(object) {\n return function(key) {\n return object == null ? undefined : object[key];\n };\n}\n\nmodule.exports = basePropertyOf;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_basePropertyOf.js\n// module id = 45\n// module chunks = 0","var asciiWords = require('./_asciiWords'),\n hasUnicodeWord = require('./_hasUnicodeWord'),\n toString = require('./toString'),\n unicodeWords = require('./_unicodeWords');\n\n/**\n * Splits `string` into an array of its words.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {RegExp|string} [pattern] The pattern to match words.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the words of `string`.\n * @example\n *\n * _.words('fred, barney, & pebbles');\n * // => ['fred', 'barney', 'pebbles']\n *\n * _.words('fred, barney, & pebbles', /[^, ]+/g);\n * // => ['fred', 'barney', '&', 'pebbles']\n */\nfunction words(string, pattern, guard) {\n string = toString(string);\n pattern = guard ? undefined : pattern;\n\n if (pattern === undefined) {\n return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string);\n }\n return string.match(pattern) || [];\n}\n\nmodule.exports = words;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/words.js\n// module id = 46\n// module chunks = 0","/** Used to match words composed of alphanumeric characters. */\nvar reAsciiWord = /[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g;\n\n/**\n * Splits an ASCII `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\nfunction asciiWords(string) {\n return string.match(reAsciiWord) || [];\n}\n\nmodule.exports = asciiWords;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_asciiWords.js\n// module id = 47\n// module chunks = 0","/** Used to detect strings that need a more robust regexp to match words. */\nvar reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;\n\n/**\n * Checks if `string` contains a word composed of Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a word is found, else `false`.\n */\nfunction hasUnicodeWord(string) {\n return reHasUnicodeWord.test(string);\n}\n\nmodule.exports = hasUnicodeWord;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_hasUnicodeWord.js\n// module id = 48\n// module chunks = 0","/** Used to compose unicode character classes. */\nvar rsAstralRange = '\\\\ud800-\\\\udfff',\n rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,\n rsDingbatRange = '\\\\u2700-\\\\u27bf',\n rsLowerRange = 'a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff',\n rsMathOpRange = '\\\\xac\\\\xb1\\\\xd7\\\\xf7',\n rsNonCharRange = '\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf',\n rsPunctuationRange = '\\\\u2000-\\\\u206f',\n rsSpaceRange = ' \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000',\n rsUpperRange = 'A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde',\n rsVarRange = '\\\\ufe0e\\\\ufe0f',\n rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;\n\n/** Used to compose unicode capture groups. */\nvar rsApos = \"['\\u2019]\",\n rsBreak = '[' + rsBreakRange + ']',\n rsCombo = '[' + rsComboRange + ']',\n rsDigits = '\\\\d+',\n rsDingbat = '[' + rsDingbatRange + ']',\n rsLower = '[' + rsLowerRange + ']',\n rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',\n rsFitz = '\\\\ud83c[\\\\udffb-\\\\udfff]',\n rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',\n rsNonAstral = '[^' + rsAstralRange + ']',\n rsRegional = '(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}',\n rsSurrPair = '[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]',\n rsUpper = '[' + rsUpperRange + ']',\n rsZWJ = '\\\\u200d';\n\n/** Used to compose unicode regexes. */\nvar rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',\n rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',\n rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',\n rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',\n reOptMod = rsModifier + '?',\n rsOptVar = '[' + rsVarRange + ']?',\n rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',\n rsOrdLower = '\\\\d*(?:(?:1st|2nd|3rd|(?![123])\\\\dth)\\\\b)',\n rsOrdUpper = '\\\\d*(?:(?:1ST|2ND|3RD|(?![123])\\\\dTH)\\\\b)',\n rsSeq = rsOptVar + reOptMod + rsOptJoin,\n rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq;\n\n/** Used to match complex or compound words. */\nvar reUnicodeWord = RegExp([\n rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',\n rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',\n rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,\n rsUpper + '+' + rsOptContrUpper,\n rsOrdUpper,\n rsOrdLower,\n rsDigits,\n rsEmoji\n].join('|'), 'g');\n\n/**\n * Splits a Unicode `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\nfunction unicodeWords(string) {\n return string.match(reUnicodeWord) || [];\n}\n\nmodule.exports = unicodeWords;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_unicodeWords.js\n// module id = 49\n// module chunks = 0","var MapCache = require('./_MapCache');\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n}\n\n// Expose `MapCache`.\nmemoize.Cache = MapCache;\n\nmodule.exports = memoize;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/memoize.js\n// module id = 50\n// module chunks = 0","var mapCacheClear = require('./_mapCacheClear'),\n mapCacheDelete = require('./_mapCacheDelete'),\n mapCacheGet = require('./_mapCacheGet'),\n mapCacheHas = require('./_mapCacheHas'),\n mapCacheSet = require('./_mapCacheSet');\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\nmodule.exports = MapCache;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_MapCache.js\n// module id = 51\n// module chunks = 0","var Hash = require('./_Hash'),\n ListCache = require('./_ListCache'),\n Map = require('./_Map');\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\nmodule.exports = mapCacheClear;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_mapCacheClear.js\n// module id = 52\n// module chunks = 0","var hashClear = require('./_hashClear'),\n hashDelete = require('./_hashDelete'),\n hashGet = require('./_hashGet'),\n hashHas = require('./_hashHas'),\n hashSet = require('./_hashSet');\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nmodule.exports = Hash;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_Hash.js\n// module id = 53\n// module chunks = 0","var nativeCreate = require('./_nativeCreate');\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nmodule.exports = hashClear;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_hashClear.js\n// module id = 54\n// module chunks = 0","var getNative = require('./_getNative');\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nmodule.exports = nativeCreate;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_nativeCreate.js\n// module id = 55\n// module chunks = 0","var baseIsNative = require('./_baseIsNative'),\n getValue = require('./_getValue');\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nmodule.exports = getNative;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_getNative.js\n// module id = 56\n// module chunks = 0","var isFunction = require('./isFunction'),\n isMasked = require('./_isMasked'),\n isObject = require('./isObject'),\n toSource = require('./_toSource');\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nmodule.exports = baseIsNative;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseIsNative.js\n// module id = 57\n// module chunks = 0","var baseGetTag = require('./_baseGetTag'),\n isObject = require('./isObject');\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nmodule.exports = isFunction;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/isFunction.js\n// module id = 58\n// module chunks = 0","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/isObject.js\n// module id = 59\n// module chunks = 0","var coreJsData = require('./_coreJsData');\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nmodule.exports = isMasked;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_isMasked.js\n// module id = 60\n// module chunks = 0","var root = require('./_root');\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nmodule.exports = coreJsData;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_coreJsData.js\n// module id = 61\n// module chunks = 0","/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nmodule.exports = toSource;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_toSource.js\n// module id = 62\n// module chunks = 0","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nmodule.exports = getValue;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_getValue.js\n// module id = 63\n// module chunks = 0","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = hashDelete;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_hashDelete.js\n// module id = 64\n// module chunks = 0","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nmodule.exports = hashGet;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_hashGet.js\n// module id = 65\n// module chunks = 0","var nativeCreate = require('./_nativeCreate');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? data[key] !== undefined : hasOwnProperty.call(data, key);\n}\n\nmodule.exports = hashHas;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_hashHas.js\n// module id = 66\n// module chunks = 0","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nmodule.exports = hashSet;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_hashSet.js\n// module id = 67\n// module chunks = 0","var listCacheClear = require('./_listCacheClear'),\n listCacheDelete = require('./_listCacheDelete'),\n listCacheGet = require('./_listCacheGet'),\n listCacheHas = require('./_listCacheHas'),\n listCacheSet = require('./_listCacheSet');\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nmodule.exports = ListCache;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_ListCache.js\n// module id = 68\n// module chunks = 0","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nmodule.exports = listCacheClear;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_listCacheClear.js\n// module id = 69\n// module chunks = 0","var assocIndexOf = require('./_assocIndexOf');\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nmodule.exports = listCacheDelete;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_listCacheDelete.js\n// module id = 70\n// module chunks = 0","var eq = require('./eq');\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nmodule.exports = assocIndexOf;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_assocIndexOf.js\n// module id = 71\n// module chunks = 0","/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nmodule.exports = eq;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/eq.js\n// module id = 72\n// module chunks = 0","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nmodule.exports = listCacheGet;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_listCacheGet.js\n// module id = 73\n// module chunks = 0","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nmodule.exports = listCacheHas;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_listCacheHas.js\n// module id = 74\n// module chunks = 0","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nmodule.exports = listCacheSet;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_listCacheSet.js\n// module id = 75\n// module chunks = 0","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nmodule.exports = Map;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_Map.js\n// module id = 76\n// module chunks = 0","var getMapData = require('./_getMapData');\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = mapCacheDelete;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_mapCacheDelete.js\n// module id = 77\n// module chunks = 0","var isKeyable = require('./_isKeyable');\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nmodule.exports = getMapData;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_getMapData.js\n// module id = 78\n// module chunks = 0","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nmodule.exports = isKeyable;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_isKeyable.js\n// module id = 79\n// module chunks = 0","var getMapData = require('./_getMapData');\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nmodule.exports = mapCacheGet;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_mapCacheGet.js\n// module id = 80\n// module chunks = 0","var getMapData = require('./_getMapData');\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\nmodule.exports = mapCacheHas;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_mapCacheHas.js\n// module id = 81\n// module chunks = 0","var getMapData = require('./_getMapData');\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nmodule.exports = mapCacheSet;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_mapCacheSet.js\n// module id = 82\n// module chunks = 0","var arraySome = require('./_arraySome'),\n baseIteratee = require('./_baseIteratee'),\n baseSome = require('./_baseSome'),\n isArray = require('./isArray'),\n isIterateeCall = require('./_isIterateeCall');\n\n/**\n * Checks if `predicate` returns truthy for **any** element of `collection`.\n * Iteration is stopped once `predicate` returns truthy. The predicate is\n * invoked with three arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n * @example\n *\n * _.some([null, 0, 'yes', false], Boolean);\n * // => true\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false }\n * ];\n *\n * // The `_.matches` iteratee shorthand.\n * _.some(users, { 'user': 'barney', 'active': false });\n * // => false\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.some(users, ['active', false]);\n * // => true\n *\n * // The `_.property` iteratee shorthand.\n * _.some(users, 'active');\n * // => true\n */\nfunction some(collection, predicate, guard) {\n var func = isArray(collection) ? arraySome : baseSome;\n if (guard && isIterateeCall(collection, predicate, guard)) {\n predicate = undefined;\n }\n return func(collection, baseIteratee(predicate, 3));\n}\n\nmodule.exports = some;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/some.js\n// module id = 83\n// module chunks = 0","/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n}\n\nmodule.exports = arraySome;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_arraySome.js\n// module id = 84\n// module chunks = 0","var baseMatches = require('./_baseMatches'),\n baseMatchesProperty = require('./_baseMatchesProperty'),\n identity = require('./identity'),\n isArray = require('./isArray'),\n property = require('./property');\n\n/**\n * The base implementation of `_.iteratee`.\n *\n * @private\n * @param {*} [value=_.identity] The value to convert to an iteratee.\n * @returns {Function} Returns the iteratee.\n */\nfunction baseIteratee(value) {\n // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.\n // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.\n if (typeof value == 'function') {\n return value;\n }\n if (value == null) {\n return identity;\n }\n if (typeof value == 'object') {\n return isArray(value)\n ? baseMatchesProperty(value[0], value[1])\n : baseMatches(value);\n }\n return property(value);\n}\n\nmodule.exports = baseIteratee;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseIteratee.js\n// module id = 85\n// module chunks = 0","var baseIsMatch = require('./_baseIsMatch'),\n getMatchData = require('./_getMatchData'),\n matchesStrictComparable = require('./_matchesStrictComparable');\n\n/**\n * The base implementation of `_.matches` which doesn't clone `source`.\n *\n * @private\n * @param {Object} source The object of property values to match.\n * @returns {Function} Returns the new spec function.\n */\nfunction baseMatches(source) {\n var matchData = getMatchData(source);\n if (matchData.length == 1 && matchData[0][2]) {\n return matchesStrictComparable(matchData[0][0], matchData[0][1]);\n }\n return function(object) {\n return object === source || baseIsMatch(object, source, matchData);\n };\n}\n\nmodule.exports = baseMatches;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseMatches.js\n// module id = 86\n// module chunks = 0","var Stack = require('./_Stack'),\n baseIsEqual = require('./_baseIsEqual');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * The base implementation of `_.isMatch` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @param {Array} matchData The property names, values, and compare flags to match.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n */\nfunction baseIsMatch(object, source, matchData, customizer) {\n var index = matchData.length,\n length = index,\n noCustomizer = !customizer;\n\n if (object == null) {\n return !length;\n }\n object = Object(object);\n while (index--) {\n var data = matchData[index];\n if ((noCustomizer && data[2])\n ? data[1] !== object[data[0]]\n : !(data[0] in object)\n ) {\n return false;\n }\n }\n while (++index < length) {\n data = matchData[index];\n var key = data[0],\n objValue = object[key],\n srcValue = data[1];\n\n if (noCustomizer && data[2]) {\n if (objValue === undefined && !(key in object)) {\n return false;\n }\n } else {\n var stack = new Stack;\n if (customizer) {\n var result = customizer(objValue, srcValue, key, object, source, stack);\n }\n if (!(result === undefined\n ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)\n : result\n )) {\n return false;\n }\n }\n }\n return true;\n}\n\nmodule.exports = baseIsMatch;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseIsMatch.js\n// module id = 87\n// module chunks = 0","var ListCache = require('./_ListCache'),\n stackClear = require('./_stackClear'),\n stackDelete = require('./_stackDelete'),\n stackGet = require('./_stackGet'),\n stackHas = require('./_stackHas'),\n stackSet = require('./_stackSet');\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\nmodule.exports = Stack;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_Stack.js\n// module id = 88\n// module chunks = 0","var ListCache = require('./_ListCache');\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\nmodule.exports = stackClear;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_stackClear.js\n// module id = 89\n// module chunks = 0","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nmodule.exports = stackDelete;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_stackDelete.js\n// module id = 90\n// module chunks = 0","/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nmodule.exports = stackGet;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_stackGet.js\n// module id = 91\n// module chunks = 0","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nmodule.exports = stackHas;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_stackHas.js\n// module id = 92\n// module chunks = 0","var ListCache = require('./_ListCache'),\n Map = require('./_Map'),\n MapCache = require('./_MapCache');\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nmodule.exports = stackSet;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_stackSet.js\n// module id = 93\n// module chunks = 0","var baseIsEqualDeep = require('./_baseIsEqualDeep'),\n isObject = require('./isObject'),\n isObjectLike = require('./isObjectLike');\n\n/**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\nfunction baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObject(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\nmodule.exports = baseIsEqual;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseIsEqual.js\n// module id = 94\n// module chunks = 0","var Stack = require('./_Stack'),\n equalArrays = require('./_equalArrays'),\n equalByTag = require('./_equalByTag'),\n equalObjects = require('./_equalObjects'),\n getTag = require('./_getTag'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isTypedArray = require('./isTypedArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = arrayTag,\n othTag = arrayTag;\n\n if (!objIsArr) {\n objTag = getTag(object);\n objTag = objTag == argsTag ? objectTag : objTag;\n }\n if (!othIsArr) {\n othTag = getTag(other);\n othTag = othTag == argsTag ? objectTag : othTag;\n }\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n}\n\nmodule.exports = baseIsEqualDeep;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseIsEqualDeep.js\n// module id = 95\n// module chunks = 0","var SetCache = require('./_SetCache'),\n arraySome = require('./_arraySome'),\n cacheHas = require('./_cacheHas');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(array);\n if (stacked && stack.get(other)) {\n return stacked == other;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n}\n\nmodule.exports = equalArrays;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_equalArrays.js\n// module id = 96\n// module chunks = 0","var MapCache = require('./_MapCache'),\n setCacheAdd = require('./_setCacheAdd'),\n setCacheHas = require('./_setCacheHas');\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\nSetCache.prototype.has = setCacheHas;\n\nmodule.exports = SetCache;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_SetCache.js\n// module id = 97\n// module chunks = 0","/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n}\n\nmodule.exports = setCacheAdd;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_setCacheAdd.js\n// module id = 98\n// module chunks = 0","/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\nmodule.exports = setCacheHas;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_setCacheHas.js\n// module id = 99\n// module chunks = 0","/**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction cacheHas(cache, key) {\n return cache.has(key);\n}\n\nmodule.exports = cacheHas;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_cacheHas.js\n// module id = 100\n// module chunks = 0","var Symbol = require('./_Symbol'),\n Uint8Array = require('./_Uint8Array'),\n eq = require('./eq'),\n equalArrays = require('./_equalArrays'),\n mapToArray = require('./_mapToArray'),\n setToArray = require('./_setToArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\nmodule.exports = equalByTag;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_equalByTag.js\n// module id = 101\n// module chunks = 0","var root = require('./_root');\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nmodule.exports = Uint8Array;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_Uint8Array.js\n// module id = 102\n// module chunks = 0","/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\nmodule.exports = mapToArray;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_mapToArray.js\n// module id = 103\n// module chunks = 0","/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n}\n\nmodule.exports = setToArray;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_setToArray.js\n// module id = 104\n// module chunks = 0","var keys = require('./keys');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = keys(object),\n objLength = objProps.length,\n othProps = keys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked && stack.get(other)) {\n return stacked == other;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n}\n\nmodule.exports = equalObjects;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_equalObjects.js\n// module id = 105\n// module chunks = 0","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeys = require('./_baseKeys'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nmodule.exports = keys;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/keys.js\n// module id = 106\n// module chunks = 0","var baseTimes = require('./_baseTimes'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isIndex = require('./_isIndex'),\n isTypedArray = require('./isTypedArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = arrayLikeKeys;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_arrayLikeKeys.js\n// module id = 107\n// module chunks = 0","/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nmodule.exports = baseTimes;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseTimes.js\n// module id = 108\n// module chunks = 0","var baseIsArguments = require('./_baseIsArguments'),\n isObjectLike = require('./isObjectLike');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nmodule.exports = isArguments;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/isArguments.js\n// module id = 109\n// module chunks = 0","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\nmodule.exports = baseIsArguments;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseIsArguments.js\n// module id = 110\n// module chunks = 0","var root = require('./_root'),\n stubFalse = require('./stubFalse');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nmodule.exports = isBuffer;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/isBuffer.js\n// module id = 111\n// module chunks = 0","module.exports = function(module) {\r\n\tif(!module.webpackPolyfill) {\r\n\t\tmodule.deprecate = function() {};\r\n\t\tmodule.paths = [];\r\n\t\t// module.parent = undefined by default\r\n\t\tmodule.children = [];\r\n\t\tmodule.webpackPolyfill = 1;\r\n\t}\r\n\treturn module;\r\n}\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/module.js\n// module id = 112\n// module chunks = 0","/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nmodule.exports = stubFalse;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/stubFalse.js\n// module id = 113\n// module chunks = 0","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n length = length == null ? MAX_SAFE_INTEGER : length;\n return !!length &&\n (typeof value == 'number' || reIsUint.test(value)) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nmodule.exports = isIndex;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_isIndex.js\n// module id = 114\n// module chunks = 0","var baseIsTypedArray = require('./_baseIsTypedArray'),\n baseUnary = require('./_baseUnary'),\n nodeUtil = require('./_nodeUtil');\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nmodule.exports = isTypedArray;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/isTypedArray.js\n// module id = 115\n// module chunks = 0","var baseGetTag = require('./_baseGetTag'),\n isLength = require('./isLength'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nmodule.exports = baseIsTypedArray;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseIsTypedArray.js\n// module id = 116\n// module chunks = 0","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\nmodule.exports = isLength;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/isLength.js\n// module id = 117\n// module chunks = 0","/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\nmodule.exports = baseUnary;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseUnary.js\n// module id = 118\n// module chunks = 0","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nmodule.exports = nodeUtil;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_nodeUtil.js\n// module id = 119\n// module chunks = 0","var isPrototype = require('./_isPrototype'),\n nativeKeys = require('./_nativeKeys');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeys;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseKeys.js\n// module id = 120\n// module chunks = 0","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\nmodule.exports = isPrototype;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_isPrototype.js\n// module id = 121\n// module chunks = 0","var overArg = require('./_overArg');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nmodule.exports = nativeKeys;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_nativeKeys.js\n// module id = 122\n// module chunks = 0","/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nmodule.exports = overArg;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_overArg.js\n// module id = 123\n// module chunks = 0","var isFunction = require('./isFunction'),\n isLength = require('./isLength');\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\nmodule.exports = isArrayLike;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/isArrayLike.js\n// module id = 124\n// module chunks = 0","var DataView = require('./_DataView'),\n Map = require('./_Map'),\n Promise = require('./_Promise'),\n Set = require('./_Set'),\n WeakMap = require('./_WeakMap'),\n baseGetTag = require('./_baseGetTag'),\n toSource = require('./_toSource');\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nmodule.exports = getTag;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_getTag.js\n// module id = 125\n// module chunks = 0","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView');\n\nmodule.exports = DataView;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_DataView.js\n// module id = 126\n// module chunks = 0","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nmodule.exports = Promise;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_Promise.js\n// module id = 127\n// module chunks = 0","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Set = getNative(root, 'Set');\n\nmodule.exports = Set;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_Set.js\n// module id = 128\n// module chunks = 0","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nmodule.exports = WeakMap;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_WeakMap.js\n// module id = 129\n// module chunks = 0","var isStrictComparable = require('./_isStrictComparable'),\n keys = require('./keys');\n\n/**\n * Gets the property names, values, and compare flags of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the match data of `object`.\n */\nfunction getMatchData(object) {\n var result = keys(object),\n length = result.length;\n\n while (length--) {\n var key = result[length],\n value = object[key];\n\n result[length] = [key, value, isStrictComparable(value)];\n }\n return result;\n}\n\nmodule.exports = getMatchData;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_getMatchData.js\n// module id = 130\n// module chunks = 0","var isObject = require('./isObject');\n\n/**\n * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` if suitable for strict\n * equality comparisons, else `false`.\n */\nfunction isStrictComparable(value) {\n return value === value && !isObject(value);\n}\n\nmodule.exports = isStrictComparable;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_isStrictComparable.js\n// module id = 131\n// module chunks = 0","/**\n * A specialized version of `matchesProperty` for source values suitable\n * for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\nfunction matchesStrictComparable(key, srcValue) {\n return function(object) {\n if (object == null) {\n return false;\n }\n return object[key] === srcValue &&\n (srcValue !== undefined || (key in Object(object)));\n };\n}\n\nmodule.exports = matchesStrictComparable;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_matchesStrictComparable.js\n// module id = 132\n// module chunks = 0","var baseIsEqual = require('./_baseIsEqual'),\n get = require('./get'),\n hasIn = require('./hasIn'),\n isKey = require('./_isKey'),\n isStrictComparable = require('./_isStrictComparable'),\n matchesStrictComparable = require('./_matchesStrictComparable'),\n toKey = require('./_toKey');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.\n *\n * @private\n * @param {string} path The path of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\nfunction baseMatchesProperty(path, srcValue) {\n if (isKey(path) && isStrictComparable(srcValue)) {\n return matchesStrictComparable(toKey(path), srcValue);\n }\n return function(object) {\n var objValue = get(object, path);\n return (objValue === undefined && objValue === srcValue)\n ? hasIn(object, path)\n : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);\n };\n}\n\nmodule.exports = baseMatchesProperty;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseMatchesProperty.js\n// module id = 133\n// module chunks = 0","var baseGet = require('./_baseGet');\n\n/**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\nfunction get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n}\n\nmodule.exports = get;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/get.js\n// module id = 134\n// module chunks = 0","var castPath = require('./_castPath'),\n toKey = require('./_toKey');\n\n/**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\nfunction baseGet(object, path) {\n path = castPath(path, object);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n}\n\nmodule.exports = baseGet;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseGet.js\n// module id = 135\n// module chunks = 0","var isArray = require('./isArray'),\n isKey = require('./_isKey'),\n stringToPath = require('./_stringToPath'),\n toString = require('./toString');\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value, object) {\n if (isArray(value)) {\n return value;\n }\n return isKey(value, object) ? [value] : stringToPath(toString(value));\n}\n\nmodule.exports = castPath;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_castPath.js\n// module id = 136\n// module chunks = 0","var isArray = require('./isArray'),\n isSymbol = require('./isSymbol');\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/;\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n}\n\nmodule.exports = isKey;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_isKey.js\n// module id = 137\n// module chunks = 0","var memoizeCapped = require('./_memoizeCapped');\n\n/** Used to match property names within property paths. */\nvar reLeadingDot = /^\\./,\n rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoizeCapped(function(string) {\n var result = [];\n if (reLeadingDot.test(string)) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, string) {\n result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n});\n\nmodule.exports = stringToPath;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_stringToPath.js\n// module id = 138\n// module chunks = 0","var memoize = require('./memoize');\n\n/** Used as the maximum memoize cache size. */\nvar MAX_MEMOIZE_SIZE = 500;\n\n/**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\nfunction memoizeCapped(func) {\n var result = memoize(func, function(key) {\n if (cache.size === MAX_MEMOIZE_SIZE) {\n cache.clear();\n }\n return key;\n });\n\n var cache = result.cache;\n return result;\n}\n\nmodule.exports = memoizeCapped;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_memoizeCapped.js\n// module id = 139\n// module chunks = 0","var isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nmodule.exports = toKey;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_toKey.js\n// module id = 140\n// module chunks = 0","var baseHasIn = require('./_baseHasIn'),\n hasPath = require('./_hasPath');\n\n/**\n * Checks if `path` is a direct or inherited property of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.hasIn(object, 'a');\n * // => true\n *\n * _.hasIn(object, 'a.b');\n * // => true\n *\n * _.hasIn(object, ['a', 'b']);\n * // => true\n *\n * _.hasIn(object, 'b');\n * // => false\n */\nfunction hasIn(object, path) {\n return object != null && hasPath(object, path, baseHasIn);\n}\n\nmodule.exports = hasIn;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/hasIn.js\n// module id = 141\n// module chunks = 0","/**\n * The base implementation of `_.hasIn` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\nfunction baseHasIn(object, key) {\n return object != null && key in Object(object);\n}\n\nmodule.exports = baseHasIn;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseHasIn.js\n// module id = 142\n// module chunks = 0","var castPath = require('./_castPath'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isIndex = require('./_isIndex'),\n isLength = require('./isLength'),\n toKey = require('./_toKey');\n\n/**\n * Checks if `path` exists on `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @param {Function} hasFunc The function to check properties.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n */\nfunction hasPath(object, path, hasFunc) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n result = false;\n\n while (++index < length) {\n var key = toKey(path[index]);\n if (!(result = object != null && hasFunc(object, key))) {\n break;\n }\n object = object[key];\n }\n if (result || ++index != length) {\n return result;\n }\n length = object == null ? 0 : object.length;\n return !!length && isLength(length) && isIndex(key, length) &&\n (isArray(object) || isArguments(object));\n}\n\nmodule.exports = hasPath;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_hasPath.js\n// module id = 143\n// module chunks = 0","/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\nmodule.exports = identity;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/identity.js\n// module id = 144\n// module chunks = 0","var baseProperty = require('./_baseProperty'),\n basePropertyDeep = require('./_basePropertyDeep'),\n isKey = require('./_isKey'),\n toKey = require('./_toKey');\n\n/**\n * Creates a function that returns the value at `path` of a given object.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {Array|string} path The path of the property to get.\n * @returns {Function} Returns the new accessor function.\n * @example\n *\n * var objects = [\n * { 'a': { 'b': 2 } },\n * { 'a': { 'b': 1 } }\n * ];\n *\n * _.map(objects, _.property('a.b'));\n * // => [2, 1]\n *\n * _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b');\n * // => [1, 2]\n */\nfunction property(path) {\n return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path);\n}\n\nmodule.exports = property;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/property.js\n// module id = 145\n// module chunks = 0","/**\n * The base implementation of `_.property` without support for deep paths.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\nfunction baseProperty(key) {\n return function(object) {\n return object == null ? undefined : object[key];\n };\n}\n\nmodule.exports = baseProperty;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseProperty.js\n// module id = 146\n// module chunks = 0","var baseGet = require('./_baseGet');\n\n/**\n * A specialized version of `baseProperty` which supports deep paths.\n *\n * @private\n * @param {Array|string} path The path of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\nfunction basePropertyDeep(path) {\n return function(object) {\n return baseGet(object, path);\n };\n}\n\nmodule.exports = basePropertyDeep;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_basePropertyDeep.js\n// module id = 147\n// module chunks = 0","var baseEach = require('./_baseEach');\n\n/**\n * The base implementation of `_.some` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction baseSome(collection, predicate) {\n var result;\n\n baseEach(collection, function(value, index, collection) {\n result = predicate(value, index, collection);\n return !result;\n });\n return !!result;\n}\n\nmodule.exports = baseSome;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseSome.js\n// module id = 148\n// module chunks = 0","var baseForOwn = require('./_baseForOwn'),\n createBaseEach = require('./_createBaseEach');\n\n/**\n * The base implementation of `_.forEach` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\nvar baseEach = createBaseEach(baseForOwn);\n\nmodule.exports = baseEach;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseEach.js\n// module id = 149\n// module chunks = 0","var baseFor = require('./_baseFor'),\n keys = require('./keys');\n\n/**\n * The base implementation of `_.forOwn` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Object} Returns `object`.\n */\nfunction baseForOwn(object, iteratee) {\n return object && baseFor(object, iteratee, keys);\n}\n\nmodule.exports = baseForOwn;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseForOwn.js\n// module id = 150\n// module chunks = 0","var createBaseFor = require('./_createBaseFor');\n\n/**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\nvar baseFor = createBaseFor();\n\nmodule.exports = baseFor;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseFor.js\n// module id = 151\n// module chunks = 0","/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\nmodule.exports = createBaseFor;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_createBaseFor.js\n// module id = 152\n// module chunks = 0","var isArrayLike = require('./isArrayLike');\n\n/**\n * Creates a `baseEach` or `baseEachRight` function.\n *\n * @private\n * @param {Function} eachFunc The function to iterate over a collection.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseEach(eachFunc, fromRight) {\n return function(collection, iteratee) {\n if (collection == null) {\n return collection;\n }\n if (!isArrayLike(collection)) {\n return eachFunc(collection, iteratee);\n }\n var length = collection.length,\n index = fromRight ? length : -1,\n iterable = Object(collection);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (iteratee(iterable[index], index, iterable) === false) {\n break;\n }\n }\n return collection;\n };\n}\n\nmodule.exports = createBaseEach;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_createBaseEach.js\n// module id = 153\n// module chunks = 0","var eq = require('./eq'),\n isArrayLike = require('./isArrayLike'),\n isIndex = require('./_isIndex'),\n isObject = require('./isObject');\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\nmodule.exports = isIterateeCall;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_isIterateeCall.js\n// module id = 154\n// module chunks = 0","import { objectify, isFunc, normalizeArray } from \"core/utils\"\nimport XML from \"xml\"\nimport memoizee from \"memoizee\"\n\nconst primitives = {\n \"string\": () => \"string\",\n \"string_email\": () => \"user@example.com\",\n \"string_date-time\": () => new Date().toISOString(),\n \"number\": () => 0,\n \"number_float\": () => 0.0,\n \"integer\": () => 0,\n \"boolean\": () => true\n}\n\nconst primitive = (schema) => {\n schema = objectify(schema)\n let { type, format } = schema\n\n let fn = primitives[`${type}_${format}`] || primitives[type]\n\n if(isFunc(fn))\n return fn(schema)\n\n return \"Unknown Type: \" + schema.type\n}\n\n\nexport const sampleFromSchema = (schema, config={}) => {\n let { type, example, properties, additionalProperties, items } = objectify(schema)\n let { includeReadOnly } = config\n\n if(example !== undefined)\n return example\n\n if(!type) {\n if(properties) {\n type = \"object\"\n } else if(items) {\n type = \"array\"\n } else {\n return\n }\n }\n\n if(type === \"object\") {\n let props = objectify(properties)\n let obj = {}\n for (var name in props) {\n if ( !props[name].readOnly || includeReadOnly ) {\n obj[name] = sampleFromSchema(props[name])\n }\n }\n\n if ( additionalProperties === true ) {\n obj.additionalProp1 = {}\n } else if ( additionalProperties ) {\n let additionalProps = objectify(additionalProperties)\n let additionalPropVal = sampleFromSchema(additionalProps)\n\n for (let i = 1; i < 4; i++) {\n obj[\"additionalProp\" + i] = additionalPropVal\n }\n }\n return obj\n }\n\n if(type === \"array\") {\n return [ sampleFromSchema(items) ]\n }\n\n if(schema[\"enum\"]) {\n if(schema[\"default\"])\n return schema[\"default\"]\n return normalizeArray(schema[\"enum\"])[0]\n }\n\n return primitive(schema)\n}\n\nexport const inferSchema = (thing) => {\n if(thing.schema)\n thing = thing.schema\n\n if(thing.properties) {\n thing.type = \"object\"\n }\n\n return thing // Hopefully this will have something schema like in it... `type` for example\n}\n\n\nexport const sampleXmlFromSchema = (schema, config={}) => {\n let objectifySchema = objectify(schema)\n let { type, properties, additionalProperties, items, example } = objectifySchema\n let { includeReadOnly } = config\n let defaultValue = objectifySchema.default\n let res = {}\n let _attr = {}\n let { xml } = schema\n let { name, prefix, namespace } = xml\n let enumValue = objectifySchema.enum\n let displayName, value\n\n if(!type) {\n if(properties || additionalProperties) {\n type = \"object\"\n } else if(items) {\n type = \"array\"\n } else {\n return\n }\n }\n\n name = name || \"notagname\"\n // add prefix to name if exists\n displayName = (prefix ? prefix + \":\" : \"\") + name\n if ( namespace ) {\n //add prefix to namespace if exists\n let namespacePrefix = prefix ? ( \"xmlns:\" + prefix ) : \"xmlns\"\n _attr[namespacePrefix] = namespace\n }\n\n if (type === \"array\") {\n if (items) {\n items.xml = items.xml || xml || {}\n items.xml.name = items.xml.name || xml.name\n\n if (xml.wrapped) {\n res[displayName] = []\n if (Array.isArray(example)) {\n example.forEach((v)=>{\n items.example = v\n res[displayName].push(sampleXmlFromSchema(items, config))\n })\n } else if (Array.isArray(defaultValue)) {\n defaultValue.forEach((v)=>{\n items.default = v\n res[displayName].push(sampleXmlFromSchema(items, config))\n })\n } else {\n res[displayName] = [sampleXmlFromSchema(items, config)]\n }\n\n if (_attr) {\n res[displayName].push({_attr: _attr})\n }\n return res\n }\n\n let _res = []\n\n if (Array.isArray(example)) {\n example.forEach((v)=>{\n items.example = v\n _res.push(sampleXmlFromSchema(items, config))\n })\n return _res\n } else if (Array.isArray(defaultValue)) {\n defaultValue.forEach((v)=>{\n items.default = v\n _res.push(sampleXmlFromSchema(items, config))\n })\n return _res\n }\n\n return sampleXmlFromSchema(items, config)\n }\n }\n\n if (type === \"object\") {\n let props = objectify(properties)\n res[displayName] = []\n example = example || {}\n\n for (let propName in props) {\n if ( !props[propName].readOnly || includeReadOnly ) {\n props[propName].xml = props[propName].xml || {}\n\n if (props[propName].xml.attribute) {\n let enumAttrVal = Array.isArray(props[propName].enum) && props[propName].enum[0]\n let attrExample = props[propName].example\n let attrDefault = props[propName].default\n _attr[props[propName].xml.name || propName] = attrExample!== undefined && attrExample\n || example[propName] !== undefined && example[propName] || attrDefault !== undefined && attrDefault\n || enumAttrVal || primitive(props[propName])\n } else {\n props[propName].xml.name = props[propName].xml.name || propName\n props[propName].example = props[propName].example !== undefined ? props[propName].example : example[propName]\n let t = sampleXmlFromSchema(props[propName])\n if (Array.isArray(t)) {\n res[displayName] = res[displayName].concat(t)\n } else {\n res[displayName].push(t)\n }\n\n }\n }\n }\n\n if (additionalProperties === true) {\n res[displayName].push({additionalProp: \"Anything can be here\"})\n } else if (additionalProperties) {\n res[displayName].push({additionalProp: primitive(additionalProperties)})\n }\n\n if (_attr) {\n res[displayName].push({_attr: _attr})\n }\n return res\n }\n\n if (example !== undefined) {\n value = example\n } else if (defaultValue !== undefined) {\n //display example if exists\n value = defaultValue\n } else if (Array.isArray(enumValue)) {\n //display enum first value\n value = enumValue[0]\n } else {\n //set default value\n value = primitive(schema)\n }\n\n res[displayName] = _attr ? [{_attr: _attr}, value] : value\n\n return res\n}\n\nexport function createXMLExample(schema, config) {\n let json = sampleXmlFromSchema(schema, config)\n if (!json) { return }\n\n return XML(json, { declaration: true, indent: \"\\t\" })\n}\n\nexport const memoizedCreateXMLExample = memoizee(createXMLExample)\n\nexport const memoizedSampleFromSchema = memoizee(sampleFromSchema)\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/samples/fn.js","module.exports = require(\"xml\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"xml\"\n// module id = 156\n// module chunks = 0","module.exports = require(\"memoizee\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"memoizee\"\n// module id = 157\n// module chunks = 0","import BasePreset from \"./base\"\n\n// Just the base, for now.\n\nexport default function PresetApis() {\n\n return [\n BasePreset,\n ]\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/presets/apis.js","import err from \"core/plugins/err\"\nimport layout from \"core/plugins/layout\"\nimport spec from \"core/plugins/spec\"\nimport view from \"core/plugins/view\"\nimport samples from \"core/plugins/samples\"\nimport logs from \"core/plugins/logs\"\nimport ast from \"core/plugins/ast\"\nimport swaggerJs from \"core/plugins/swagger-js\"\nimport auth from \"core/plugins/auth\"\nimport util from \"core/plugins/util\"\nimport SplitPaneModePlugin from \"core/plugins/split-pane-mode\"\nimport downloadUrlPlugin from \"core/plugins/download-url\"\n\nimport App from \"core/components/app\"\nimport AuthorizationPopup from \"core/components/auth/authorization-popup\"\nimport AuthorizeBtn from \"core/components/auth/authorize-btn\"\nimport AuthorizeOperationBtn from \"core/components/auth/authorize-operation-btn\"\nimport Auths from \"core/components/auth/auths\"\nimport AuthError from \"core/components/auth/error\"\nimport ApiKeyAuth from \"core/components/auth/api-key-auth\"\nimport BasicAuth from \"core/components/auth/basic-auth\"\nimport Oauth2 from \"core/components/auth/oauth2\"\nimport Clear from \"core/components/clear\"\nimport LiveResponse from \"core/components/live-response\"\nimport OnlineValidatorBadge from \"core/components/online-validator-badge\"\nimport Operations from \"core/components/operations\"\nimport Operation from \"core/components/operation\"\nimport HighlightCode from \"core/components/highlight-code\"\nimport Responses from \"core/components/responses\"\nimport Response from \"core/components/response\"\nimport ResponseBody from \"core/components/response-body\"\nimport Parameters from \"core/components/parameters\"\nimport ParameterRow from \"core/components/parameter-row\"\nimport Execute from \"core/components/execute\"\nimport Headers from \"core/components/headers\"\nimport Errors from \"core/components/errors\"\nimport ContentType from \"core/components/content-type\"\nimport Overview from \"core/components/overview\"\nimport Info from \"core/components/info\"\nimport Footer from \"core/components/footer\"\nimport ParamBody from \"core/components/param-body\"\nimport Curl from \"core/components/curl\"\nimport Schemes from \"core/components/schemes\"\nimport ModelExample from \"core/components/model-example\"\nimport Model from \"core/components/model\"\nimport Models from \"core/components/models\"\nimport TryItOutButton from \"core/components/try-it-out-button\"\n\nimport * as LayoutUtils from \"core/components/layout-utils\"\nimport * as JsonSchemaComponents from \"core/json-schema-components\"\n\nexport default function() {\n\n let coreComponents = {\n components: {\n App,\n authorizationPopup: AuthorizationPopup,\n authorizeBtn: AuthorizeBtn,\n authorizeOperationBtn: AuthorizeOperationBtn,\n auths: Auths,\n authError: AuthError,\n oauth2: Oauth2,\n apiKeyAuth: ApiKeyAuth,\n basicAuth: BasicAuth,\n clear: Clear,\n liveResponse: LiveResponse,\n info: Info,\n onlineValidatorBadge: OnlineValidatorBadge,\n operations: Operations,\n operation: Operation,\n highlightCode: HighlightCode,\n responses: Responses,\n response: Response,\n responseBody: ResponseBody,\n parameters: Parameters,\n parameterRow: ParameterRow,\n execute: Execute,\n headers: Headers,\n errors: Errors,\n contentType: ContentType,\n overview: Overview,\n footer: Footer,\n ParamBody: ParamBody,\n curl: Curl,\n schemes: Schemes,\n modelExample: ModelExample,\n model: Model,\n models: Models,\n TryItOutButton,\n }\n }\n\n let formComponents = {\n components: LayoutUtils\n }\n\n let jsonSchemaComponents = {\n components: JsonSchemaComponents\n }\n\n return [\n util,\n logs,\n view,\n spec,\n err,\n layout,\n samples,\n coreComponents,\n formComponents,\n swaggerJs,\n jsonSchemaComponents,\n auth,\n ast,\n SplitPaneModePlugin,\n downloadUrlPlugin\n ]\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/presets/base.js","import makeReducers from \"./reducers\"\nimport * as actions from \"./actions\"\nimport * as selectors from \"./selectors\"\n\nexport default function(system) {\n return {\n statePlugins: {\n err: {\n reducers: makeReducers(system),\n actions,\n selectors\n }\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/err/index.js","import {\n NEW_THROWN_ERR,\n NEW_THROWN_ERR_BATCH,\n NEW_SPEC_ERR,\n NEW_AUTH_ERR,\n CLEAR\n} from \"./actions\"\n\nimport reject from \"lodash/reject\"\n\nimport Im, { fromJS, List } from \"immutable\"\n\nimport transformErrors from \"./error-transformers/hook\"\n\nlet DEFAULT_ERROR_STRUCTURE = {\n // defaults\n line: 0,\n level: \"error\",\n message: \"Unknown error\"\n}\n\nexport default function(system) {\n return {\n [NEW_THROWN_ERR]: (state, { payload }) => {\n let error = Object.assign(DEFAULT_ERROR_STRUCTURE, payload, {type: \"thrown\"})\n return state\n .update(\"errors\", errors => (errors || List()).push( fromJS( error )) )\n .update(\"errors\", errors => transformErrors(errors, system.getSystem()))\n },\n\n [NEW_THROWN_ERR_BATCH]: (state, { payload }) => {\n payload = payload.map(err => {\n return fromJS(Object.assign(DEFAULT_ERROR_STRUCTURE, err, { type: \"thrown\" }))\n })\n return state\n .update(\"errors\", errors => (errors || List()).concat( fromJS( payload )) )\n .update(\"errors\", errors => transformErrors(errors, system.getSystem()))\n },\n\n [NEW_SPEC_ERR]: (state, { payload }) => {\n let error = fromJS(payload)\n error = error.set(\"type\", \"spec\")\n return state\n .update(\"errors\", errors => (errors || List()).push( fromJS(error)).sortBy(err => err.get(\"line\")) )\n .update(\"errors\", errors => transformErrors(errors, system.getSystem()))\n },\n\n [NEW_AUTH_ERR]: (state, { payload }) => {\n let error = fromJS(Object.assign({}, payload))\n\n error = error.set(\"type\", \"auth\")\n return state\n .update(\"errors\", errors => (errors || List()).push( fromJS(error)) )\n .update(\"errors\", errors => transformErrors(errors, system.getSystem()))\n },\n\n [CLEAR]: (state, { payload }) => {\n if(!payload) {\n return\n }\n // TODO: Rework, to use immutable only, no need for lodash\n let newErrors = Im.fromJS(reject((state.get(\"errors\") || List()).toJS(), payload))\n return state.merge({\n errors: newErrors\n })\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/err/reducers.js","var arrayFilter = require('./_arrayFilter'),\n baseFilter = require('./_baseFilter'),\n baseIteratee = require('./_baseIteratee'),\n isArray = require('./isArray'),\n negate = require('./negate');\n\n/**\n * The opposite of `_.filter`; this method returns the elements of `collection`\n * that `predicate` does **not** return truthy for.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n * @see _.filter\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': true }\n * ];\n *\n * _.reject(users, function(o) { return !o.active; });\n * // => objects for ['fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.reject(users, { 'age': 40, 'active': true });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.reject(users, ['active', false]);\n * // => objects for ['fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.reject(users, 'active');\n * // => objects for ['barney']\n */\nfunction reject(collection, predicate) {\n var func = isArray(collection) ? arrayFilter : baseFilter;\n return func(collection, negate(baseIteratee(predicate, 3)));\n}\n\nmodule.exports = reject;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/reject.js\n// module id = 162\n// module chunks = 0","/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nmodule.exports = arrayFilter;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_arrayFilter.js\n// module id = 163\n// module chunks = 0","var baseEach = require('./_baseEach');\n\n/**\n * The base implementation of `_.filter` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction baseFilter(collection, predicate) {\n var result = [];\n baseEach(collection, function(value, index, collection) {\n if (predicate(value, index, collection)) {\n result.push(value);\n }\n });\n return result;\n}\n\nmodule.exports = baseFilter;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseFilter.js\n// module id = 164\n// module chunks = 0","/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/**\n * Creates a function that negates the result of the predicate `func`. The\n * `func` predicate is invoked with the `this` binding and arguments of the\n * created function.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} predicate The predicate to negate.\n * @returns {Function} Returns the new negated function.\n * @example\n *\n * function isEven(n) {\n * return n % 2 == 0;\n * }\n *\n * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven));\n * // => [1, 3, 5]\n */\nfunction negate(predicate) {\n if (typeof predicate != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n return function() {\n var args = arguments;\n switch (args.length) {\n case 0: return !predicate.call(this);\n case 1: return !predicate.call(this, args[0]);\n case 2: return !predicate.call(this, args[0], args[1]);\n case 3: return !predicate.call(this, args[0], args[1], args[2]);\n }\n return !predicate.apply(this, args);\n };\n}\n\nmodule.exports = negate;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/negate.js\n// module id = 165\n// module chunks = 0","import reduce from \"lodash/reduce\"\nlet request = require.context(\"./transformers/\", true, /\\.js$/)\nlet errorTransformers = []\n\nrequest.keys().forEach( function( key ){\n if( key === \"./hook.js\" ) {\n return\n }\n\n if( !key.match(/js$/) ) {\n return\n }\n\n if( key.slice(2).indexOf(\"/\") > -1) {\n // skip files in subdirs\n return\n }\n\n errorTransformers.push({\n name: toTitleCase(key).replace(\".js\", \"\").replace(\"./\", \"\"),\n transform: request(key).transform\n })\n})\n\nexport default function transformErrors (errors, system) {\n let inputs = {\n jsSpec: system.specSelectors.specJson().toJS()\n }\n\n let transformedErrors = reduce(errorTransformers, (result, transformer) => {\n try {\n let newlyTransformedErrors = transformer.transform(result, inputs)\n return newlyTransformedErrors.filter(err => !!err) // filter removed errors\n } catch(e) {\n console.error(\"Transformer error:\", e)\n return result\n }\n }, errors)\n\n return transformedErrors\n .filter(err => !!err) // filter removed errors\n .map(err => {\n if(!err.get(\"line\") && err.get(\"path\")) {\n // TODO: re-resolve line number if we've transformed it away\n }\n return err\n })\n\n}\n\nfunction toTitleCase(str) {\n return str\n .split(\"-\")\n .map(substr => substr[0].toUpperCase() + substr.slice(1))\n .join(\"\")\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/err/error-transformers/hook.js","var arrayReduce = require('./_arrayReduce'),\n baseEach = require('./_baseEach'),\n baseIteratee = require('./_baseIteratee'),\n baseReduce = require('./_baseReduce'),\n isArray = require('./isArray');\n\n/**\n * Reduces `collection` to a value which is the accumulated result of running\n * each element in `collection` thru `iteratee`, where each successive\n * invocation is supplied the return value of the previous. If `accumulator`\n * is not given, the first element of `collection` is used as the initial\n * value. The iteratee is invoked with four arguments:\n * (accumulator, value, index|key, collection).\n *\n * Many lodash methods are guarded to work as iteratees for methods like\n * `_.reduce`, `_.reduceRight`, and `_.transform`.\n *\n * The guarded methods are:\n * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`,\n * and `sortBy`\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @returns {*} Returns the accumulated value.\n * @see _.reduceRight\n * @example\n *\n * _.reduce([1, 2], function(sum, n) {\n * return sum + n;\n * }, 0);\n * // => 3\n *\n * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {\n * (result[value] || (result[value] = [])).push(key);\n * return result;\n * }, {});\n * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed)\n */\nfunction reduce(collection, iteratee, accumulator) {\n var func = isArray(collection) ? arrayReduce : baseReduce,\n initAccum = arguments.length < 3;\n\n return func(collection, baseIteratee(iteratee, 4), accumulator, initAccum, baseEach);\n}\n\nmodule.exports = reduce;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/reduce.js\n// module id = 167\n// module chunks = 0","/**\n * The base implementation of `_.reduce` and `_.reduceRight`, without support\n * for iteratee shorthands, which iterates over `collection` using `eachFunc`.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} accumulator The initial value.\n * @param {boolean} initAccum Specify using the first or last element of\n * `collection` as the initial value.\n * @param {Function} eachFunc The function to iterate over `collection`.\n * @returns {*} Returns the accumulated value.\n */\nfunction baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) {\n eachFunc(collection, function(value, index, collection) {\n accumulator = initAccum\n ? (initAccum = false, value)\n : iteratee(accumulator, value, index, collection);\n });\n return accumulator;\n}\n\nmodule.exports = baseReduce;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseReduce.js\n// module id = 168\n// module chunks = 0","var map = {\n\t\"./not-of-type.js\": 170,\n\t\"./parameter-oneof.js\": 171,\n\t\"./strip-instance.js\": 172\n};\nfunction webpackContext(req) {\n\treturn __webpack_require__(webpackContextResolve(req));\n};\nfunction webpackContextResolve(req) {\n\treturn map[req] || (function() { throw new Error(\"Cannot find module '\" + req + \"'.\") }());\n};\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 169;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/core/plugins/err/error-transformers/transformers \\.js$\n// module id = 169\n// module chunks = 0","export function transform(errors) {\n // JSONSchema refers to the current object being validated\n // as 'instance'. This isn't helpful to users, so we remove it.\n return errors\n .map(err => {\n let seekStr = \"is not of a type(s)\"\n let i = err.get(\"message\").indexOf(seekStr)\n if(i > -1) {\n let types = err.get(\"message\").slice(i + seekStr.length).split(\",\")\n return err.set(\"message\", err.get(\"message\").slice(0, i) + makeNewMessage(types))\n } else {\n return err\n }\n })\n}\n\nfunction makeNewMessage(types) {\n return types.reduce((p, c, i, arr) => {\n if(i === arr.length - 1 && arr.length > 1) {\n return p + \"or \" + c\n } else if(arr[i+1] && arr.length > 2) {\n return p + c + \", \"\n } else if(arr[i+1]) {\n return p + c + \" \"\n } else {\n return p + c\n }\n }, \"should be a\")\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/err/error-transformers/transformers/not-of-type.js","import get from \"lodash/get\"\nimport { fromJS } from \"immutable\"\n\nexport function transform(errors, { jsSpec }) {\n // LOOK HERE THIS TRANSFORMER IS CURRENTLY DISABLED šŸ˜ƒ\n // TODO: finish implementing, fix flattening problem\n /* eslint-disable no-unreachable */\n return errors\n\n\n // JSONSchema gives us very little to go on\n let searchStr = \"is not exactly one from <#/definitions/parameter>,<#/definitions/jsonReference>\"\n return errors\n .map(err => {\n let message = err.get(\"message\")\n let isParameterOneOfError = message.indexOf(searchStr) > -1\n if(isParameterOneOfError) {\n // try to find what's wrong\n return createTailoredParameterError(err, jsSpec)\n } else {\n return err\n }\n })\n .flatten(true) // shallow Immutable flatten\n}\n\nconst VALID_IN_VALUES = [\"path\", \"query\", \"header\", \"body\", \"formData\"]\nconst VALID_COLLECTIONFORMAT_VALUES = [\"csv\", \"ssv\", \"tsv\", \"pipes\", \"multi\"]\n\nfunction createTailoredParameterError(err, jsSpec) {\n let newErrs = []\n let parameter = get(jsSpec, err.get(\"path\"))\n\n // find addressable cases\n if(parameter.in && VALID_IN_VALUES.indexOf(parameter.in) === -1) {\n let message = `Wrong value for the \"in\" keyword. Expected one of: ${VALID_IN_VALUES.join(\", \")}.`\n newErrs.push({\n message,\n path: err.get(\"path\") + \".in\",\n type: \"spec\",\n source: \"schema\",\n level: \"error\"\n })\n }\n\n if(parameter.collectionFormat && VALID_COLLECTIONFORMAT_VALUES.indexOf(parameter.collectionFormat) === -1) {\n let message = `Wrong value for the \"collectionFormat\" keyword. Expected one of: ${VALID_COLLECTIONFORMAT_VALUES.join(\", \")}.`\n newErrs.push({\n message,\n path: err.get(\"path\") + \".collectionFormat\",\n type: \"spec\",\n source: \"schema\",\n level: \"error\"\n })\n }\n\n return newErrs.length ? fromJS(newErrs) : err // fall back to making no changes\n\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/err/error-transformers/transformers/parameter-oneof.js","export function transform(errors) {\n return errors\n .map(err => {\n return err.set(\"message\", removeSubstring(err.get(\"message\"), \"instance.\"))\n })\n}\n\nfunction removeSubstring(str, substr) {\n return str.replace(new RegExp(substr, \"g\"), \"\")\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/err/error-transformers/transformers/strip-instance.js","import { List } from \"immutable\"\nimport { createSelector } from \"reselect\"\n\nconst state = state => state\n\nexport const allErrors = createSelector(\n state,\n err => err.get(\"errors\", List())\n)\n\nexport const lastError = createSelector(\n allErrors,\n all => all.last()\n)\n\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/err/selectors.js","module.exports = require(\"reselect\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"reselect\"\n// module id = 174\n// module chunks = 0","import reducers from \"./reducers\"\nimport * as actions from \"./actions\"\nimport * as selectors from \"./selectors\"\n\nexport default function() {\n return {\n statePlugins: {\n layout: {\n reducers,\n actions,\n selectors\n }\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/layout/index.js","import {\n UPDATE_LAYOUT,\n UPDATE_MODE,\n SHOW\n} from \"./actions\"\n\nexport default {\n\n [UPDATE_LAYOUT]: (state, action) => state.set(\"layout\", action.payload),\n\n [SHOW]: (state, action) => {\n let thing = action.payload.thing\n let shown = action.payload.shown\n return state.setIn([\"shown\"].concat(thing), shown)\n },\n\n [UPDATE_MODE]: (state, action) => {\n let thing = action.payload.thing\n let mode = action.payload.mode\n return state.setIn([\"modes\"].concat(thing), (mode || \"\") + \"\")\n }\n\n}\n\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/layout/reducers.js","import { normalizeArray } from \"core/utils\"\n\nexport const UPDATE_LAYOUT = \"layout_update_layout\"\nexport const UPDATE_MODE = \"layout_update_mode\"\nexport const SHOW = \"layout_show\"\n\n// export const ONLY_SHOW = \"layout_only_show\"\n\nexport function updateLayout(layout) {\n return {\n type: UPDATE_LAYOUT,\n payload: layout\n }\n}\n\nexport function show(thing, shown=true) {\n thing = normalizeArray(thing)\n return {\n type: SHOW,\n payload: {thing, shown}\n }\n}\n\n// Simple string key-store, used for\nexport function changeMode(thing, mode=\"\") {\n thing = normalizeArray(thing)\n return {\n type: UPDATE_MODE,\n payload: {thing, mode}\n }\n}\n\n\n// export function onlyShow(thing, shown=true) {\n// thing = normalizeArray(thing)\n// if(thing.length < 2)\n// throw new Error(\"layoutActions.onlyShow only works, when `thing` is an array with length > 1\")\n// return {\n// type: ONLY_SHOW,\n// payload: {thing, shown}\n// }\n// }\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/layout/actions.js","import { createSelector } from \"reselect\"\nimport { normalizeArray } from \"core/utils\"\n\nconst state = state => state\n\nexport const current = state => state.get(\"layout\")\n\nexport const isShown = (state, thing, def) => {\n thing = normalizeArray(thing)\n return Boolean(state.getIn([\"shown\", ...thing], def))\n}\n\nexport const whatMode = (state, thing, def=\"\") => {\n thing = normalizeArray(thing)\n return state.getIn([\"modes\", ...thing], def)\n}\n\nexport const showSummary = createSelector(\n state,\n state => !isShown(state, \"editor\")\n)\n\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/layout/selectors.js","import reducers from \"./reducers\"\nimport * as actions from \"./actions\"\nimport * as selectors from \"./selectors\"\nimport * as wrapActions from \"./wrap-actions\"\n\nexport default function() {\n return {\n statePlugins: {\n spec: {\n wrapActions,\n reducers,\n actions,\n selectors\n }\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/spec/index.js","import { fromJS } from \"immutable\"\nimport { fromJSOrdered, validateParam } from \"core/utils\"\nimport win from \"../../window\"\n\nimport {\n\tUPDATE_SPEC,\n UPDATE_URL,\n UPDATE_JSON,\n UPDATE_PARAM,\n VALIDATE_PARAMS,\n SET_RESPONSE,\n SET_REQUEST,\n UPDATE_RESOLVED,\n UPDATE_OPERATION_VALUE,\n CLEAR_RESPONSE,\n CLEAR_REQUEST,\n ClEAR_VALIDATE_PARAMS,\n SET_SCHEME\n} from \"./actions\"\n\nexport default {\n\n [UPDATE_SPEC]: (state, action) => {\n return (typeof action.payload === \"string\")\n ? state.set(\"spec\", action.payload)\n : state\n },\n\n [UPDATE_URL]: (state, action) => {\n return state.set(\"url\", action.payload+\"\")\n },\n\n [UPDATE_JSON]: (state, action) => {\n return state.set(\"json\", fromJSOrdered(action.payload))\n },\n\n [UPDATE_RESOLVED]: (state, action) => {\n return state.setIn([\"resolved\"], fromJSOrdered(action.payload))\n },\n\n [UPDATE_PARAM]: ( state, {payload} ) => {\n let { path, paramName, value, isXml } = payload\n return state.updateIn( [ \"resolved\", \"paths\", ...path, \"parameters\" ], fromJS([]), parameters => {\n let index = parameters.findIndex( p => p.get( \"name\" ) === paramName )\n if (!(value instanceof win.File)) {\n value = fromJSOrdered( value )\n }\n return parameters.setIn( [ index, isXml ? \"value_xml\" : \"value\" ], value)\n })\n },\n\n [VALIDATE_PARAMS]: ( state, { payload: { pathMethod } } ) => {\n let operation = state.getIn( [ \"resolved\", \"paths\", ...pathMethod ] )\n let isXml = /xml/i.test(operation.get(\"consumes_value\"))\n\n return state.updateIn( [ \"resolved\", \"paths\", ...pathMethod, \"parameters\" ], fromJS([]), parameters => {\n return parameters.withMutations( parameters => {\n for ( let i = 0, len = parameters.count(); i < len; i++ ) {\n let errors = validateParam(parameters.get(i), isXml)\n parameters.setIn([i, \"errors\"], fromJS(errors))\n }\n })\n })\n },\n [ClEAR_VALIDATE_PARAMS]: ( state, { payload: { pathMethod } } ) => {\n return state.updateIn( [ \"resolved\", \"paths\", ...pathMethod, \"parameters\" ], fromJS([]), parameters => {\n return parameters.withMutations( parameters => {\n for ( let i = 0, len = parameters.count(); i < len; i++ ) {\n parameters.setIn([i, \"errors\"], fromJS({}))\n }\n })\n })\n },\n\n [SET_RESPONSE]: (state, { payload: { res, path, method } } ) =>{\n let result\n if ( res.error ) {\n result = Object.assign({error: true}, res.err)\n } else {\n result = res\n }\n\n // Ensure headers\n result.headers = result.headers || {}\n\n let newState = state.setIn( [ \"responses\", path, method ], fromJSOrdered(result) )\n\n // ImmutableJS messes up Blob. Needs to reset its value.\n if (res.data instanceof win.Blob) {\n newState = newState.setIn( [ \"responses\", path, method, \"text\" ], res.data)\n }\n return newState\n },\n\n [SET_REQUEST]: (state, { payload: { req, path, method } } ) =>{\n return state.setIn( [ \"requests\", path, method ], fromJSOrdered(req))\n },\n\n [UPDATE_OPERATION_VALUE]: (state, { payload: { path, value, key } }) => {\n return state.setIn([\"resolved\", \"paths\", ...path, key], fromJS(value))\n },\n\n [CLEAR_RESPONSE]: (state, { payload: { path, method } } ) =>{\n return state.deleteIn( [ \"responses\", path, method ])\n },\n\n [CLEAR_REQUEST]: (state, { payload: { path, method } } ) =>{\n return state.deleteIn( [ \"requests\", path, method ])\n },\n\n [SET_SCHEME]: (state, { payload: { scheme, path, method } } ) =>{\n if ( path && method ) {\n return state.setIn( [ \"scheme\", path, method ], scheme)\n }\n\n if (!path && !method) {\n return state.setIn( [ \"scheme\", \"_defaultScheme\" ], scheme)\n }\n\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/spec/reducers.js","import YAML from \"js-yaml\"\nimport serializeError from \"serialize-error\"\n\n// Actions conform to FSA (flux-standard-actions)\n// {type: string,payload: Any|Error, meta: obj, error: bool}\n\nexport const UPDATE_SPEC = \"spec_update_spec\"\nexport const UPDATE_URL = \"spec_update_url\"\nexport const UPDATE_JSON = \"spec_update_json\"\nexport const UPDATE_PARAM = \"spec_update_param\"\nexport const VALIDATE_PARAMS = \"spec_validate_param\"\nexport const SET_RESPONSE = \"spec_set_response\"\nexport const SET_REQUEST = \"spec_set_request\"\nexport const LOG_REQUEST = \"spec_log_request\"\nexport const CLEAR_RESPONSE = \"spec_clear_response\"\nexport const CLEAR_REQUEST = \"spec_clear_request\"\nexport const ClEAR_VALIDATE_PARAMS = \"spec_clear_validate_param\"\nexport const UPDATE_OPERATION_VALUE = \"spec_update_operation_value\"\nexport const UPDATE_RESOLVED = \"spec_update_resolved\"\nexport const SET_SCHEME = \"set_scheme\"\n\nexport function updateSpec(spec) {\n if(spec instanceof Error) {\n return {type: UPDATE_SPEC, error: true, payload: spec}\n }\n\n if(typeof spec === \"string\") {\n return {\n type: UPDATE_SPEC,\n payload: spec.replace(/\\t/g, \" \") || \"\"\n }\n }\n\n return {\n type: UPDATE_SPEC,\n payload: \"\"\n }\n}\n\nexport function updateResolved(spec) {\n return {\n type: UPDATE_RESOLVED,\n payload: spec\n }\n}\n\nexport function updateUrl(url) {\n return {type: UPDATE_URL, payload: url}\n}\n\nexport function updateJsonSpec(json) {\n if(!json || typeof json !== \"object\") {\n throw new Error(\"updateJson must only accept a simple JSON object\")\n }\n return {type: UPDATE_JSON, payload: json}\n}\n\nexport const parseToJson = (str) => ({specActions, specSelectors, errActions}) => {\n let { specStr } = specSelectors\n\n let json = null\n try {\n str = str || specStr()\n errActions.clear({ source: \"parser\" })\n json = YAML.safeLoad(str)\n } catch(e) {\n // TODO: push error to state\n console.error(e)\n return errActions.newSpecErr({\n source: \"parser\",\n level: \"error\",\n message: e.reason,\n line: e.mark && e.mark.line ? e.mark.line + 1 : undefined\n })\n }\n return specActions.updateJsonSpec(json)\n}\n\nexport const resolveSpec = (json, url) => ({specActions, specSelectors, errActions, fn: { fetch, resolve, AST }}) => {\n if(typeof(json) === \"undefined\") {\n json = specSelectors.specJson()\n }\n if(typeof(url) === \"undefined\") {\n url = specSelectors.url()\n }\n\n let { getLineNumberForPath } = AST\n\n let specStr = specSelectors.specStr()\n\n return resolve({fetch, spec: json, baseDoc: url})\n .then( ({spec, errors}) => {\n errActions.clear({\n type: \"thrown\"\n })\n\n if(errors.length > 0) {\n let preparedErrors = errors\n .map(err => {\n console.error(err)\n err.line = err.fullPath ? getLineNumberForPath(specStr, err.fullPath) : null\n err.path = err.fullPath ? err.fullPath.join(\".\") : null\n err.level = \"error\"\n err.type = \"thrown\"\n err.source = \"resolver\"\n Object.defineProperty(err, \"message\", { enumerable: true, value: err.message })\n return err\n })\n errActions.newThrownErrBatch(preparedErrors)\n }\n\n return specActions.updateResolved(spec)\n })\n}\n\nexport const formatIntoYaml = () => ({specActions, specSelectors}) => {\n let { specStr } = specSelectors\n let { updateSpec } = specActions\n\n try {\n let yaml = YAML.safeDump(YAML.safeLoad(specStr()), {indent: 2})\n updateSpec(yaml)\n } catch(e) {\n updateSpec(e)\n }\n}\n\nexport function changeParam( path, paramName, value, isXml ){\n return {\n type: UPDATE_PARAM,\n payload:{ path, value, paramName, isXml }\n }\n}\n\nexport function validateParams( payload ){\n return {\n type: VALIDATE_PARAMS,\n payload:{ pathMethod: payload }\n }\n}\n\nexport function clearValidateParams( payload ){\n return {\n type: ClEAR_VALIDATE_PARAMS,\n payload:{ pathMethod: payload }\n }\n}\n\nexport function changeConsumesValue(path, value) {\n return {\n type: UPDATE_OPERATION_VALUE,\n payload:{ path, value, key: \"consumes_value\" }\n }\n}\n\nexport function changeProducesValue(path, value) {\n return {\n type: UPDATE_OPERATION_VALUE,\n payload:{ path, value, key: \"produces_value\" }\n }\n}\n\nexport const setResponse = ( path, method, res ) => {\n return {\n payload: { path, method, res },\n type: SET_RESPONSE\n }\n}\n\nexport const setRequest = ( path, method, req ) => {\n return {\n payload: { path, method, req },\n type: SET_REQUEST\n }\n}\n\n// This is for debugging, remove this comment if you depend on this action\nexport const logRequest = (req) => {\n return {\n payload: req,\n type: LOG_REQUEST\n }\n}\n\n// Actually fire the request via fn.execute\n// (For debugging) and ease of testing\nexport const executeRequest = (req) => ({fn, specActions, specSelectors}) => {\n let { pathName, method } = req\n let parsedRequest = Object.assign({ contextUrl: specSelectors.url() }, req)\n if ( pathName && method ) {\n parsedRequest.operationId = method.toLowerCase() + \"-\" + pathName\n }\n parsedRequest = fn.buildRequest(parsedRequest)\n specActions.setRequest(req.pathName, req.method, parsedRequest)\n\n return fn.execute(req)\n .then( res => specActions.setResponse(req.pathName, req.method, res))\n .catch( err => specActions.setResponse(req.pathName, req.method, { error: true, err: serializeError(err) } ) )\n}\n\n\n// I'm using extras as a way to inject properties into the final, `execute` method - It's not great. Anyone have a better idea? @ponelat\nexport const execute = ( { path, method, ...extras }={} ) => (system) => {\n let { fn:{fetch}, specSelectors, specActions } = system\n let spec = specSelectors.spec().toJS()\n let scheme = specSelectors.operationScheme(path, method)\n let { requestContentType, responseContentType } = specSelectors.contentTypeValues([path, method]).toJS()\n let isXml = /xml/i.test(requestContentType)\n let parameters = specSelectors.parameterValues([path, method], isXml).toJS()\n\n return specActions.executeRequest({fetch, spec, pathName: path, method, parameters, requestContentType, scheme, responseContentType, ...extras })\n}\n\nexport function clearResponse (path, method) {\n return {\n type: CLEAR_RESPONSE,\n payload:{ path, method }\n }\n}\n\nexport function clearRequest (path, method) {\n return {\n type: CLEAR_REQUEST,\n payload:{ path, method }\n }\n}\n\nexport function setScheme (scheme, path, method) {\n return {\n type: SET_SCHEME,\n payload: { scheme, path, method }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/spec/actions.js","module.exports = require(\"js-yaml\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"js-yaml\"\n// module id = 182\n// module chunks = 0","import { createSelector } from \"reselect\"\nimport { fromJS, Set, Map, List } from \"immutable\"\n\nconst DEFAULT_TAG = \"default\"\n\nconst OPERATION_METHODS = [\"get\", \"put\", \"post\", \"delete\", \"options\", \"head\", \"patch\"]\n\nconst state = state => {\n return state || Map()\n}\n\nexport const lastError = createSelector(\n state,\n spec => spec.get(\"lastError\")\n)\n\nexport const url = createSelector(\n state,\n spec => spec.get(\"url\")\n)\n\nexport const specStr = createSelector(\n state,\n spec => spec.get(\"spec\") || \"\"\n)\n\nexport const specSource = createSelector(\n state,\n spec => spec.get(\"specSource\") || \"not-editor\"\n)\n\nexport const specJson = createSelector(\n state,\n spec => spec.get(\"json\", Map())\n)\n\nexport const specResolved = createSelector(\n state,\n spec => spec.get(\"resolved\", Map())\n)\n\n// Default Spec ( as an object )\nexport const spec = state => {\n let res = specResolved(state)\n if(res.count() < 1)\n res = specJson(state)\n return res\n}\n\nexport const info = createSelector(\n spec,\n\tspec => returnSelfOrNewMap(spec && spec.get(\"info\"))\n)\n\nexport const externalDocs = createSelector(\n spec,\n\tspec => returnSelfOrNewMap(spec && spec.get(\"externalDocs\"))\n)\n\nexport const version = createSelector(\n\tinfo,\n\tinfo => info && info.get(\"version\")\n)\n\nexport const semver = createSelector(\n\tversion,\n\tversion => /v?([0-9]*)\\.([0-9]*)\\.([0-9]*)/i.exec(version).slice(1)\n)\n\nexport const paths = createSelector(\n\tspec,\n\tspec => spec.get(\"paths\")\n)\n\nexport const operations = createSelector(\n paths,\n paths => {\n if(!paths || paths.size < 1)\n return List()\n\n let list = List()\n\n if(!paths || !paths.forEach) {\n return List()\n }\n\n paths.forEach((path, pathName) => {\n if(!path || !path.forEach) {\n return {}\n }\n path.forEach((operation, method) => {\n if(OPERATION_METHODS.indexOf(method) === -1) {\n return\n }\n list = list.push(fromJS({\n path: pathName,\n method,\n operation,\n id: `${method}-${pathName}`\n }))\n })\n })\n\n return list\n }\n)\n\nexport const consumes = createSelector(\n spec,\n spec => Set(spec.get(\"consumes\"))\n)\n\nexport const produces = createSelector(\n spec,\n spec => Set(spec.get(\"produces\"))\n)\n\nexport const security = createSelector(\n spec,\n spec => spec.get(\"security\", List())\n)\n\nexport const securityDefinitions = createSelector(\n spec,\n spec => spec.get(\"securityDefinitions\")\n)\n\n\nexport const findDefinition = ( state, name ) => {\n return specResolved(state).getIn([\"definitions\", name], null)\n}\n\nexport const definitions = createSelector(\n spec,\n spec => spec.get(\"definitions\") || Map()\n)\n\nexport const basePath = createSelector(\n spec,\n spec => spec.get(\"basePath\")\n)\n\nexport const host = createSelector(\n spec,\n spec => spec.get(\"host\")\n)\n\nexport const schemes = createSelector(\n spec,\n spec => spec.get(\"schemes\", Map())\n)\n\nexport const operationsWithRootInherited = createSelector(\n operations,\n consumes,\n produces,\n (operations, consumes, produces) => {\n return operations.map( ops => ops.update(\"operation\", op => {\n if(op) {\n if(!Map.isMap(op)) { return }\n return op.withMutations( op => {\n if ( !op.get(\"consumes\") ) {\n op.update(\"consumes\", a => Set(a).merge(consumes))\n }\n if ( !op.get(\"produces\") ) {\n op.update(\"produces\", a => Set(a).merge(produces))\n }\n return op\n })\n } else {\n // return something with Immutable methods\n return Map()\n }\n\n }))\n }\n)\n\nexport const tags = createSelector(\n spec,\n json => json.get(\"tags\", List())\n)\n\nexport const tagDetails = (state, tag) => {\n let currentTags = tags(state) || List()\n return currentTags.filter(Map.isMap).find(t => t.get(\"name\") === tag, Map())\n}\n\nexport const operationsWithTags = createSelector(\n operationsWithRootInherited,\n operations => {\n return operations.reduce( (taggedMap, op) => {\n let tags = Set(op.getIn([\"operation\",\"tags\"]))\n if(tags.count() < 1)\n return taggedMap.update(DEFAULT_TAG, List(), ar => ar.push(op))\n return tags.reduce( (res, tag) => res.update(tag, List(), (ar) => ar.push(op)), taggedMap )\n }, Map())\n }\n)\n\nexport const taggedOperations = createSelector(\n state,\n operationsWithTags,\n (state, tagMap) => {\n return tagMap.map((ops, tag) => Map({tagDetails: tagDetails(state, tag), operations: ops}))\n }\n)\n\nexport const responses = createSelector(\n state,\n state => state.get( \"responses\", Map() )\n)\n\nexport const requests = createSelector(\n state,\n state => state.get( \"requests\", Map() )\n)\n\nexport const responseFor = (state, path, method) => {\n return responses(state).getIn([path, method], null)\n}\n\nexport const requestFor = (state, path, method) => {\n return requests(state).getIn([path, method], null)\n}\n\nexport const allowTryItOutFor = () => {\n // This is just a hook for now.\n return true\n}\n\n// Get the parameter value by parameter name\nexport function getParameter(state, pathMethod, name) {\n let params = spec(state).getIn([\"paths\", ...pathMethod, \"parameters\"], fromJS([]))\n return params.filter( (p) => {\n return Map.isMap(p) && p.get(\"name\") === name\n }).first()\n}\n\nexport const hasHost = createSelector(\n spec,\n spec => {\n const host = spec.get(\"host\")\n return typeof host === \"string\" && host.length > 0 && host[0] !== \"/\"\n }\n)\n\n// Get the parameter values, that the user filled out\nexport function parameterValues(state, pathMethod, isXml) {\n let params = spec(state).getIn([\"paths\", ...pathMethod, \"parameters\"], fromJS([]))\n return params.reduce( (hash, p) => {\n let value = isXml && p.get(\"in\") === \"body\" ? p.get(\"value_xml\") : p.get(\"value\")\n return hash.set(p.get(\"name\"), value)\n }, fromJS({}))\n}\n\n// True if any parameter includes `in: ?`\nexport function parametersIncludeIn(parameters, inValue=\"\") {\n if(List.isList(parameters)) {\n return parameters.some( p => Map.isMap(p) && p.get(\"in\") === inValue )\n }\n}\n\n// True if any parameter includes `type: ?`\nexport function parametersIncludeType(parameters, typeValue=\"\") {\n if(List.isList(parameters)) {\n return parameters.some( p => Map.isMap(p) && p.get(\"type\") === typeValue )\n }\n}\n\n// Get the consumes/produces value that the user selected\nexport function contentTypeValues(state, pathMethod) {\n let op = spec(state).getIn([\"paths\", ...pathMethod], fromJS({}))\n const parameters = op.get(\"parameters\") || new List()\n const requestContentType = (\n parametersIncludeType(parameters, \"file\") ? \"multipart/form-data\"\n : parametersIncludeIn(parameters, \"formData\") ? \"application/x-www-form-urlencoded\"\n : op.get(\"consumes_value\")\n )\n\n\n return fromJS({\n requestContentType,\n responseContentType: op.get(\"produces_value\")\n })\n}\n\n// Get the consumes/produces by path\nexport function operationConsumes(state, pathMethod) {\n return spec(state).getIn([\"paths\", ...pathMethod, \"consumes\"], fromJS({}))\n}\n\nexport const operationScheme = ( state, path, method ) => {\n let url = state.get(\"url\")\n let matchResult = url.match(/^([a-z][a-z0-9+\\-.]*):/)\n let urlScheme = Array.isArray(matchResult) ? matchResult[1] : null\n \n return state.getIn([\"scheme\", path, method]) || state.getIn([\"scheme\", \"_defaultScheme\"]) || urlScheme || \"http\"\n}\n\nexport const canExecuteScheme = ( state, path, method ) => {\n return [\"http\", \"https\"].indexOf(operationScheme(state, path, method)) > -1\n}\n\nexport const validateBeforeExecute = ( state, pathMethod ) => {\n let params = spec(state).getIn([\"paths\", ...pathMethod, \"parameters\"], fromJS([]))\n let isValid = true\n\n params.forEach( (p) => {\n let errors = p.get(\"errors\")\n if ( errors && errors.count() ) {\n isValid = false\n }\n })\n\n return isValid\n}\n\nfunction returnSelfOrNewMap(obj) {\n // returns obj if obj is an Immutable map, else returns a new Map\n return Map.isMap(obj) ? obj : new Map()\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/spec/selectors.js","export const updateSpec = (ori, {specActions}) => (...args) => {\n ori(...args)\n specActions.parseToJson(...args)\n}\n\nexport const updateJsonSpec = (ori, {specActions}) => (...args) => {\n ori(...args)\n specActions.resolveSpec(...args)\n}\n\n// Log the request ( just for debugging, shouldn't affect prod )\nexport const executeRequest = (ori, { specActions }) => (req) => {\n specActions.logRequest(req)\n return ori(req)\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/spec/wrap-actions.js","import * as rootInjects from \"./root-injects\"\nimport { memoize } from \"core/utils\"\n\nexport default function({getComponents, getStore, getSystem}) {\n\n let { getComponent, render, makeMappedContainer } = rootInjects\n\n // getComponent should be passed into makeMappedContainer, _already_ memoized... otherwise we have a big performance hit ( think, really big )\n const memGetComponent = memoize(getComponent.bind(null, getSystem, getStore, getComponents))\n const memMakeMappedContainer = memoize(makeMappedContainer.bind(null, getSystem, getStore, memGetComponent, getComponents))\n\n return {\n rootInjects: {\n getComponent: memGetComponent,\n makeMappedContainer: memMakeMappedContainer,\n render: render.bind(null, getSystem, getStore, getComponent, getComponents),\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/view/index.js","import React, { Component } from \"react\"\nimport ReactDOM from \"react-dom\"\nimport { connect, Provider } from \"react-redux\"\nimport omit from \"lodash/omit\"\n\nconst SystemWrapper = (getSystem, ComponentToWrap ) => class extends Component {\n render() {\n return \n }\n}\n\nconst RootWrapper = (reduxStore, ComponentToWrap) => class extends Component {\n render() {\n return (\n \n \n \n )\n }\n}\n\nconst makeContainer = (getSystem, component, reduxStore) => {\n let wrappedWithSystem = SystemWrapper(getSystem, component, reduxStore)\n let connected = connect(state => ({state}))(wrappedWithSystem)\n if(reduxStore)\n return RootWrapper(reduxStore, connected)\n return connected\n}\n\nconst handleProps = (getSystem, mapping, props, oldProps) => {\n for (let prop in mapping) {\n let fn = mapping[prop]\n if(typeof fn === \"function\")\n fn(props[prop], oldProps[prop], getSystem())\n }\n}\n\nexport const makeMappedContainer = (getSystem, getStore, memGetComponent, getComponents, componentName, mapping) => {\n\n return class extends Component {\n\n constructor(props, context) {\n super(props, context)\n handleProps(getSystem, mapping, props, {})\n }\n\n componentWillReceiveProps(nextProps) {\n handleProps(getSystem, mapping, nextProps, this.props)\n }\n\n render() {\n let cleanProps = omit(this.props, mapping ? Object.keys(mapping) : [])\n let Comp = memGetComponent(componentName, \"root\")\n return \n }\n\n }\n\n}\n\nexport const render = (getSystem, getStore, getComponent, getComponents, dom) => {\n let domNode = document.querySelector(dom)\n let App = (getComponent(getSystem, getStore, getComponents, \"App\", \"root\"))\n ReactDOM.render(( ), domNode)\n}\n\n// Render try/catch wrapper\nconst createClass = component => React.createClass({\n render() {\n return component(this.props)\n }\n})\n\nconst Fallback = ({ name }) =>
šŸ˜± Could not render { name === \"t\" ? \"this component\" : name }, see the console.
\n\nconst wrapRender = (component) => {\n const isStateless = component => !(component.prototype && component.prototype.isReactComponent)\n\n const target = isStateless(component) ? createClass(component) : component\n\n const ori = target.prototype.render\n\n target.prototype.render = function render(...args) {\n try {\n return ori.apply(this, args)\n } catch (error) {\n console.error(error) // eslint-disable-line no-console\n return \n }\n }\n\n return target\n}\n\n\nexport const getComponent = (getSystem, getStore, getComponents, componentName, container) => {\n\n if(typeof componentName !== \"string\")\n throw new TypeError(\"Need a string, to fetch a component. Was given a \" + typeof componentName)\n\n let component = getComponents(componentName)\n\n if(!component) {\n getSystem().log.warn(\"Could not find component\", componentName)\n return null\n }\n\n if(!container)\n return wrapRender(component)\n\n if(container === \"root\")\n return makeContainer(getSystem, component, getStore())\n\n // container == truthy\n return makeContainer(getSystem, component)\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/view/root-injects.js","module.exports = require(\"react\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"react\"\n// module id = 187\n// module chunks = 0","module.exports = require(\"react-dom\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"react-dom\"\n// module id = 188\n// module chunks = 0","module.exports = require(\"react-redux\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"react-redux\"\n// module id = 189\n// module chunks = 0","var arrayMap = require('./_arrayMap'),\n baseClone = require('./_baseClone'),\n baseUnset = require('./_baseUnset'),\n castPath = require('./_castPath'),\n copyObject = require('./_copyObject'),\n flatRest = require('./_flatRest'),\n getAllKeysIn = require('./_getAllKeysIn');\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_DEEP_FLAG = 1,\n CLONE_FLAT_FLAG = 2,\n CLONE_SYMBOLS_FLAG = 4;\n\n/**\n * The opposite of `_.pick`; this method creates an object composed of the\n * own and inherited enumerable property paths of `object` that are not omitted.\n *\n * **Note:** This method is considerably slower than `_.pick`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The source object.\n * @param {...(string|string[])} [paths] The property paths to omit.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.omit(object, ['a', 'c']);\n * // => { 'b': '2' }\n */\nvar omit = flatRest(function(object, paths) {\n var result = {};\n if (object == null) {\n return result;\n }\n var isDeep = false;\n paths = arrayMap(paths, function(path) {\n path = castPath(path, object);\n isDeep || (isDeep = path.length > 1);\n return path;\n });\n copyObject(object, getAllKeysIn(object), result);\n if (isDeep) {\n result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG);\n }\n var length = paths.length;\n while (length--) {\n baseUnset(result, paths[length]);\n }\n return result;\n});\n\nmodule.exports = omit;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/omit.js\n// module id = 190\n// module chunks = 0","var Stack = require('./_Stack'),\n arrayEach = require('./_arrayEach'),\n assignValue = require('./_assignValue'),\n baseAssign = require('./_baseAssign'),\n baseAssignIn = require('./_baseAssignIn'),\n cloneBuffer = require('./_cloneBuffer'),\n copyArray = require('./_copyArray'),\n copySymbols = require('./_copySymbols'),\n copySymbolsIn = require('./_copySymbolsIn'),\n getAllKeys = require('./_getAllKeys'),\n getAllKeysIn = require('./_getAllKeysIn'),\n getTag = require('./_getTag'),\n initCloneArray = require('./_initCloneArray'),\n initCloneByTag = require('./_initCloneByTag'),\n initCloneObject = require('./_initCloneObject'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isObject = require('./isObject'),\n keys = require('./keys');\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_DEEP_FLAG = 1,\n CLONE_FLAT_FLAG = 2,\n CLONE_SYMBOLS_FLAG = 4;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values supported by `_.clone`. */\nvar cloneableTags = {};\ncloneableTags[argsTag] = cloneableTags[arrayTag] =\ncloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =\ncloneableTags[boolTag] = cloneableTags[dateTag] =\ncloneableTags[float32Tag] = cloneableTags[float64Tag] =\ncloneableTags[int8Tag] = cloneableTags[int16Tag] =\ncloneableTags[int32Tag] = cloneableTags[mapTag] =\ncloneableTags[numberTag] = cloneableTags[objectTag] =\ncloneableTags[regexpTag] = cloneableTags[setTag] =\ncloneableTags[stringTag] = cloneableTags[symbolTag] =\ncloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =\ncloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;\ncloneableTags[errorTag] = cloneableTags[funcTag] =\ncloneableTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.clone` and `_.cloneDeep` which tracks\n * traversed objects.\n *\n * @private\n * @param {*} value The value to clone.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Deep clone\n * 2 - Flatten inherited properties\n * 4 - Clone symbols\n * @param {Function} [customizer] The function to customize cloning.\n * @param {string} [key] The key of `value`.\n * @param {Object} [object] The parent object of `value`.\n * @param {Object} [stack] Tracks traversed objects and their clone counterparts.\n * @returns {*} Returns the cloned value.\n */\nfunction baseClone(value, bitmask, customizer, key, object, stack) {\n var result,\n isDeep = bitmask & CLONE_DEEP_FLAG,\n isFlat = bitmask & CLONE_FLAT_FLAG,\n isFull = bitmask & CLONE_SYMBOLS_FLAG;\n\n if (customizer) {\n result = object ? customizer(value, key, object, stack) : customizer(value);\n }\n if (result !== undefined) {\n return result;\n }\n if (!isObject(value)) {\n return value;\n }\n var isArr = isArray(value);\n if (isArr) {\n result = initCloneArray(value);\n if (!isDeep) {\n return copyArray(value, result);\n }\n } else {\n var tag = getTag(value),\n isFunc = tag == funcTag || tag == genTag;\n\n if (isBuffer(value)) {\n return cloneBuffer(value, isDeep);\n }\n if (tag == objectTag || tag == argsTag || (isFunc && !object)) {\n result = (isFlat || isFunc) ? {} : initCloneObject(value);\n if (!isDeep) {\n return isFlat\n ? copySymbolsIn(value, baseAssignIn(result, value))\n : copySymbols(value, baseAssign(result, value));\n }\n } else {\n if (!cloneableTags[tag]) {\n return object ? value : {};\n }\n result = initCloneByTag(value, tag, baseClone, isDeep);\n }\n }\n // Check for circular references and return its corresponding clone.\n stack || (stack = new Stack);\n var stacked = stack.get(value);\n if (stacked) {\n return stacked;\n }\n stack.set(value, result);\n\n var keysFunc = isFull\n ? (isFlat ? getAllKeysIn : getAllKeys)\n : (isFlat ? keysIn : keys);\n\n var props = isArr ? undefined : keysFunc(value);\n arrayEach(props || value, function(subValue, key) {\n if (props) {\n key = subValue;\n subValue = value[key];\n }\n // Recursively populate clone (susceptible to call stack limits).\n assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n return result;\n}\n\nmodule.exports = baseClone;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseClone.js\n// module id = 191\n// module chunks = 0","/**\n * A specialized version of `_.forEach` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns `array`.\n */\nfunction arrayEach(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (iteratee(array[index], index, array) === false) {\n break;\n }\n }\n return array;\n}\n\nmodule.exports = arrayEach;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_arrayEach.js\n// module id = 192\n// module chunks = 0","var baseAssignValue = require('./_baseAssignValue'),\n eq = require('./eq');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nmodule.exports = assignValue;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_assignValue.js\n// module id = 193\n// module chunks = 0","var defineProperty = require('./_defineProperty');\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nmodule.exports = baseAssignValue;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseAssignValue.js\n// module id = 194\n// module chunks = 0","var getNative = require('./_getNative');\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nmodule.exports = defineProperty;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_defineProperty.js\n// module id = 195\n// module chunks = 0","var copyObject = require('./_copyObject'),\n keys = require('./keys');\n\n/**\n * The base implementation of `_.assign` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\nfunction baseAssign(object, source) {\n return object && copyObject(source, keys(source), object);\n}\n\nmodule.exports = baseAssign;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseAssign.js\n// module id = 196\n// module chunks = 0","var assignValue = require('./_assignValue'),\n baseAssignValue = require('./_baseAssignValue');\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\nmodule.exports = copyObject;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_copyObject.js\n// module id = 197\n// module chunks = 0","var copyObject = require('./_copyObject'),\n keysIn = require('./keysIn');\n\n/**\n * The base implementation of `_.assignIn` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\nfunction baseAssignIn(object, source) {\n return object && copyObject(source, keysIn(source), object);\n}\n\nmodule.exports = baseAssignIn;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseAssignIn.js\n// module id = 198\n// module chunks = 0","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeysIn = require('./_baseKeysIn'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\nmodule.exports = keysIn;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/keysIn.js\n// module id = 199\n// module chunks = 0","var isObject = require('./isObject'),\n isPrototype = require('./_isPrototype'),\n nativeKeysIn = require('./_nativeKeysIn');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeysIn;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseKeysIn.js\n// module id = 200\n// module chunks = 0","/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = nativeKeysIn;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_nativeKeysIn.js\n// module id = 201\n// module chunks = 0","var root = require('./_root');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\nmodule.exports = cloneBuffer;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_cloneBuffer.js\n// module id = 202\n// module chunks = 0","/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\nmodule.exports = copyArray;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_copyArray.js\n// module id = 203\n// module chunks = 0","var copyObject = require('./_copyObject'),\n getSymbols = require('./_getSymbols');\n\n/**\n * Copies own symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\nfunction copySymbols(source, object) {\n return copyObject(source, getSymbols(source), object);\n}\n\nmodule.exports = copySymbols;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_copySymbols.js\n// module id = 204\n// module chunks = 0","var overArg = require('./_overArg'),\n stubArray = require('./stubArray');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = nativeGetSymbols ? overArg(nativeGetSymbols, Object) : stubArray;\n\nmodule.exports = getSymbols;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_getSymbols.js\n// module id = 205\n// module chunks = 0","/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nmodule.exports = stubArray;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/stubArray.js\n// module id = 206\n// module chunks = 0","var copyObject = require('./_copyObject'),\n getSymbolsIn = require('./_getSymbolsIn');\n\n/**\n * Copies own and inherited symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\nfunction copySymbolsIn(source, object) {\n return copyObject(source, getSymbolsIn(source), object);\n}\n\nmodule.exports = copySymbolsIn;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_copySymbolsIn.js\n// module id = 207\n// module chunks = 0","var arrayPush = require('./_arrayPush'),\n getPrototype = require('./_getPrototype'),\n getSymbols = require('./_getSymbols'),\n stubArray = require('./stubArray');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own and inherited enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {\n var result = [];\n while (object) {\n arrayPush(result, getSymbols(object));\n object = getPrototype(object);\n }\n return result;\n};\n\nmodule.exports = getSymbolsIn;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_getSymbolsIn.js\n// module id = 208\n// module chunks = 0","/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\nmodule.exports = arrayPush;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_arrayPush.js\n// module id = 209\n// module chunks = 0","var overArg = require('./_overArg');\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nmodule.exports = getPrototype;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_getPrototype.js\n// module id = 210\n// module chunks = 0","var baseGetAllKeys = require('./_baseGetAllKeys'),\n getSymbols = require('./_getSymbols'),\n keys = require('./keys');\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n}\n\nmodule.exports = getAllKeys;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_getAllKeys.js\n// module id = 211\n// module chunks = 0","var arrayPush = require('./_arrayPush'),\n isArray = require('./isArray');\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\nmodule.exports = baseGetAllKeys;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseGetAllKeys.js\n// module id = 212\n// module chunks = 0","var baseGetAllKeys = require('./_baseGetAllKeys'),\n getSymbolsIn = require('./_getSymbolsIn'),\n keysIn = require('./keysIn');\n\n/**\n * Creates an array of own and inherited enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeysIn(object) {\n return baseGetAllKeys(object, keysIn, getSymbolsIn);\n}\n\nmodule.exports = getAllKeysIn;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_getAllKeysIn.js\n// module id = 213\n// module chunks = 0","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Initializes an array clone.\n *\n * @private\n * @param {Array} array The array to clone.\n * @returns {Array} Returns the initialized clone.\n */\nfunction initCloneArray(array) {\n var length = array.length,\n result = array.constructor(length);\n\n // Add properties assigned by `RegExp#exec`.\n if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {\n result.index = array.index;\n result.input = array.input;\n }\n return result;\n}\n\nmodule.exports = initCloneArray;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_initCloneArray.js\n// module id = 214\n// module chunks = 0","var cloneArrayBuffer = require('./_cloneArrayBuffer'),\n cloneDataView = require('./_cloneDataView'),\n cloneMap = require('./_cloneMap'),\n cloneRegExp = require('./_cloneRegExp'),\n cloneSet = require('./_cloneSet'),\n cloneSymbol = require('./_cloneSymbol'),\n cloneTypedArray = require('./_cloneTypedArray');\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/**\n * Initializes an object clone based on its `toStringTag`.\n *\n * **Note:** This function only supports cloning values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to clone.\n * @param {string} tag The `toStringTag` of the object to clone.\n * @param {Function} cloneFunc The function to clone values.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneByTag(object, tag, cloneFunc, isDeep) {\n var Ctor = object.constructor;\n switch (tag) {\n case arrayBufferTag:\n return cloneArrayBuffer(object);\n\n case boolTag:\n case dateTag:\n return new Ctor(+object);\n\n case dataViewTag:\n return cloneDataView(object, isDeep);\n\n case float32Tag: case float64Tag:\n case int8Tag: case int16Tag: case int32Tag:\n case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:\n return cloneTypedArray(object, isDeep);\n\n case mapTag:\n return cloneMap(object, isDeep, cloneFunc);\n\n case numberTag:\n case stringTag:\n return new Ctor(object);\n\n case regexpTag:\n return cloneRegExp(object);\n\n case setTag:\n return cloneSet(object, isDeep, cloneFunc);\n\n case symbolTag:\n return cloneSymbol(object);\n }\n}\n\nmodule.exports = initCloneByTag;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_initCloneByTag.js\n// module id = 215\n// module chunks = 0","var Uint8Array = require('./_Uint8Array');\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n}\n\nmodule.exports = cloneArrayBuffer;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_cloneArrayBuffer.js\n// module id = 216\n// module chunks = 0","var cloneArrayBuffer = require('./_cloneArrayBuffer');\n\n/**\n * Creates a clone of `dataView`.\n *\n * @private\n * @param {Object} dataView The data view to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned data view.\n */\nfunction cloneDataView(dataView, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;\n return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);\n}\n\nmodule.exports = cloneDataView;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_cloneDataView.js\n// module id = 217\n// module chunks = 0","var addMapEntry = require('./_addMapEntry'),\n arrayReduce = require('./_arrayReduce'),\n mapToArray = require('./_mapToArray');\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_DEEP_FLAG = 1;\n\n/**\n * Creates a clone of `map`.\n *\n * @private\n * @param {Object} map The map to clone.\n * @param {Function} cloneFunc The function to clone values.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned map.\n */\nfunction cloneMap(map, isDeep, cloneFunc) {\n var array = isDeep ? cloneFunc(mapToArray(map), CLONE_DEEP_FLAG) : mapToArray(map);\n return arrayReduce(array, addMapEntry, new map.constructor);\n}\n\nmodule.exports = cloneMap;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_cloneMap.js\n// module id = 218\n// module chunks = 0","/**\n * Adds the key-value `pair` to `map`.\n *\n * @private\n * @param {Object} map The map to modify.\n * @param {Array} pair The key-value pair to add.\n * @returns {Object} Returns `map`.\n */\nfunction addMapEntry(map, pair) {\n // Don't return `map.set` because it's not chainable in IE 11.\n map.set(pair[0], pair[1]);\n return map;\n}\n\nmodule.exports = addMapEntry;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_addMapEntry.js\n// module id = 219\n// module chunks = 0","/** Used to match `RegExp` flags from their coerced string values. */\nvar reFlags = /\\w*$/;\n\n/**\n * Creates a clone of `regexp`.\n *\n * @private\n * @param {Object} regexp The regexp to clone.\n * @returns {Object} Returns the cloned regexp.\n */\nfunction cloneRegExp(regexp) {\n var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));\n result.lastIndex = regexp.lastIndex;\n return result;\n}\n\nmodule.exports = cloneRegExp;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_cloneRegExp.js\n// module id = 220\n// module chunks = 0","var addSetEntry = require('./_addSetEntry'),\n arrayReduce = require('./_arrayReduce'),\n setToArray = require('./_setToArray');\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_DEEP_FLAG = 1;\n\n/**\n * Creates a clone of `set`.\n *\n * @private\n * @param {Object} set The set to clone.\n * @param {Function} cloneFunc The function to clone values.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned set.\n */\nfunction cloneSet(set, isDeep, cloneFunc) {\n var array = isDeep ? cloneFunc(setToArray(set), CLONE_DEEP_FLAG) : setToArray(set);\n return arrayReduce(array, addSetEntry, new set.constructor);\n}\n\nmodule.exports = cloneSet;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_cloneSet.js\n// module id = 221\n// module chunks = 0","/**\n * Adds `value` to `set`.\n *\n * @private\n * @param {Object} set The set to modify.\n * @param {*} value The value to add.\n * @returns {Object} Returns `set`.\n */\nfunction addSetEntry(set, value) {\n // Don't return `set.add` because it's not chainable in IE 11.\n set.add(value);\n return set;\n}\n\nmodule.exports = addSetEntry;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_addSetEntry.js\n// module id = 222\n// module chunks = 0","var Symbol = require('./_Symbol');\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * Creates a clone of the `symbol` object.\n *\n * @private\n * @param {Object} symbol The symbol object to clone.\n * @returns {Object} Returns the cloned symbol object.\n */\nfunction cloneSymbol(symbol) {\n return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};\n}\n\nmodule.exports = cloneSymbol;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_cloneSymbol.js\n// module id = 223\n// module chunks = 0","var cloneArrayBuffer = require('./_cloneArrayBuffer');\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\nmodule.exports = cloneTypedArray;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_cloneTypedArray.js\n// module id = 224\n// module chunks = 0","var baseCreate = require('./_baseCreate'),\n getPrototype = require('./_getPrototype'),\n isPrototype = require('./_isPrototype');\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\nmodule.exports = initCloneObject;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_initCloneObject.js\n// module id = 225\n// module chunks = 0","var isObject = require('./isObject');\n\n/** Built-in value references. */\nvar objectCreate = Object.create;\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\nmodule.exports = baseCreate;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseCreate.js\n// module id = 226\n// module chunks = 0","var castPath = require('./_castPath'),\n last = require('./last'),\n parent = require('./_parent'),\n toKey = require('./_toKey');\n\n/**\n * The base implementation of `_.unset`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The property path to unset.\n * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n */\nfunction baseUnset(object, path) {\n path = castPath(path, object);\n object = parent(object, path);\n return object == null || delete object[toKey(last(path))];\n}\n\nmodule.exports = baseUnset;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseUnset.js\n// module id = 227\n// module chunks = 0","/**\n * Gets the last element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {*} Returns the last element of `array`.\n * @example\n *\n * _.last([1, 2, 3]);\n * // => 3\n */\nfunction last(array) {\n var length = array == null ? 0 : array.length;\n return length ? array[length - 1] : undefined;\n}\n\nmodule.exports = last;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/last.js\n// module id = 228\n// module chunks = 0","var baseGet = require('./_baseGet'),\n baseSlice = require('./_baseSlice');\n\n/**\n * Gets the parent value at `path` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} path The path to get the parent value of.\n * @returns {*} Returns the parent value.\n */\nfunction parent(object, path) {\n return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1));\n}\n\nmodule.exports = parent;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_parent.js\n// module id = 229\n// module chunks = 0","var flatten = require('./flatten'),\n overRest = require('./_overRest'),\n setToString = require('./_setToString');\n\n/**\n * A specialized version of `baseRest` which flattens the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @returns {Function} Returns the new function.\n */\nfunction flatRest(func) {\n return setToString(overRest(func, undefined, flatten), func + '');\n}\n\nmodule.exports = flatRest;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_flatRest.js\n// module id = 230\n// module chunks = 0","var baseFlatten = require('./_baseFlatten');\n\n/**\n * Flattens `array` a single level deep.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * _.flatten([1, [2, [3, [4]], 5]]);\n * // => [1, 2, [3, [4]], 5]\n */\nfunction flatten(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseFlatten(array, 1) : [];\n}\n\nmodule.exports = flatten;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/flatten.js\n// module id = 231\n// module chunks = 0","var arrayPush = require('./_arrayPush'),\n isFlattenable = require('./_isFlattenable');\n\n/**\n * The base implementation of `_.flatten` with support for restricting flattening.\n *\n * @private\n * @param {Array} array The array to flatten.\n * @param {number} depth The maximum recursion depth.\n * @param {boolean} [predicate=isFlattenable] The function invoked per iteration.\n * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks.\n * @param {Array} [result=[]] The initial result value.\n * @returns {Array} Returns the new flattened array.\n */\nfunction baseFlatten(array, depth, predicate, isStrict, result) {\n var index = -1,\n length = array.length;\n\n predicate || (predicate = isFlattenable);\n result || (result = []);\n\n while (++index < length) {\n var value = array[index];\n if (depth > 0 && predicate(value)) {\n if (depth > 1) {\n // Recursively flatten arrays (susceptible to call stack limits).\n baseFlatten(value, depth - 1, predicate, isStrict, result);\n } else {\n arrayPush(result, value);\n }\n } else if (!isStrict) {\n result[result.length] = value;\n }\n }\n return result;\n}\n\nmodule.exports = baseFlatten;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseFlatten.js\n// module id = 232\n// module chunks = 0","var Symbol = require('./_Symbol'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray');\n\n/** Built-in value references. */\nvar spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined;\n\n/**\n * Checks if `value` is a flattenable `arguments` object or array.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is flattenable, else `false`.\n */\nfunction isFlattenable(value) {\n return isArray(value) || isArguments(value) ||\n !!(spreadableSymbol && value && value[spreadableSymbol]);\n}\n\nmodule.exports = isFlattenable;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_isFlattenable.js\n// module id = 233\n// module chunks = 0","var apply = require('./_apply');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n}\n\nmodule.exports = overRest;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_overRest.js\n// module id = 234\n// module chunks = 0","/**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\nfunction apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n}\n\nmodule.exports = apply;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_apply.js\n// module id = 235\n// module chunks = 0","var baseSetToString = require('./_baseSetToString'),\n shortOut = require('./_shortOut');\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = shortOut(baseSetToString);\n\nmodule.exports = setToString;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_setToString.js\n// module id = 236\n// module chunks = 0","var constant = require('./constant'),\n defineProperty = require('./_defineProperty'),\n identity = require('./identity');\n\n/**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n};\n\nmodule.exports = baseSetToString;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseSetToString.js\n// module id = 237\n// module chunks = 0","/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\nmodule.exports = constant;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/constant.js\n// module id = 238\n// module chunks = 0","/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeNow = Date.now;\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\nmodule.exports = shortOut;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_shortOut.js\n// module id = 239\n// module chunks = 0","import * as fn from \"./fn\"\n\nexport default function () {\n return { fn }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/samples/index.js","export default function ({configs}) {\n\n const levels = {\n \"debug\": 0,\n \"info\": 1,\n \"log\": 2,\n \"warn\": 3,\n \"error\": 4\n }\n\n const getLevel = (level) => levels[level] || -1\n\n let { logLevel } = configs\n let logLevelInt = getLevel(logLevel)\n\n function log(level, ...args) {\n if(getLevel(level) >= logLevelInt)\n // eslint-disable-next-line no-console\n console[level](...args)\n }\n\n log.warn = log.bind(null, \"warn\")\n log.error = log.bind(null, \"error\")\n log.info = log.bind(null, \"info\")\n log.debug = log.bind(null, \"debug\")\n\n return { rootInjects: { log } }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/logs/index.js","import * as AST from \"./ast\"\nimport JumpToPath from \"./jump-to-path\"\n\nexport default function() {\n return {\n fn: { AST },\n components: { JumpToPath }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/ast/index.js","import YAML from \"yaml-js\"\nimport isArray from \"lodash/isArray\"\nimport lodashFind from \"lodash/find\"\nimport { memoize } from \"core/utils\"\n\nlet cachedCompose = memoize(YAML.compose) // TODO: build a custom cache based on content\n\nvar MAP_TAG = \"tag:yaml.org,2002:map\"\nvar SEQ_TAG = \"tag:yaml.org,2002:seq\"\n\nexport function getLineNumberForPath(yaml, path) {\n\n // Type check\n if (typeof yaml !== \"string\") {\n throw new TypeError(\"yaml should be a string\")\n }\n if (!isArray(path)) {\n throw new TypeError(\"path should be an array of strings\")\n }\n\n var i = 0\n\n let ast = cachedCompose(yaml)\n\n // simply walks the tree using current path recursively to the point that\n // path is empty\n\n return find(ast, path)\n\n function find(current, path, last) {\n if(!current) {\n // something has gone quite wrong\n // return the last start_mark as a best-effort\n if(last && last.start_mark)\n return last.start_mark.line\n return 0\n }\n\n if (path.length && current.tag === MAP_TAG) {\n for (i = 0; i < current.value.length; i++) {\n var pair = current.value[i]\n var key = pair[0]\n var value = pair[1]\n\n if (key.value === path[0]) {\n return find(value, path.slice(1), current)\n }\n\n if (key.value === path[0].replace(/\\[.*/, \"\")) {\n // access the array at the index in the path (example: grab the 2 in \"tags[2]\")\n var index = parseInt(path[0].match(/\\[(.*)\\]/)[1])\n if(value.value.length === 1 && index !== 0 && !!index) {\n var nextVal = lodashFind(value.value[0], { value: index.toString() })\n } else { // eslint-disable-next-line no-redeclare\n var nextVal = value.value[index]\n }\n return find(nextVal, path.slice(1), value.value)\n }\n }\n }\n\n if (path.length && current.tag === SEQ_TAG) {\n var item = current.value[path[0]]\n\n if (item && item.tag) {\n return find(item, path.slice(1), current.value)\n }\n }\n\n if (current.tag === MAP_TAG && !Array.isArray(last)) {\n return current.start_mark.line\n } else {\n return current.start_mark.line + 1\n }\n }\n}\n\n/**\n* Get a position object with given\n* @param {string} yaml\n* YAML or JSON string\n* @param {array} path\n* an array of stings that constructs a\n* JSON Path similiar to JSON Pointers(RFC 6901). The difference is, each\n* component of path is an item of the array intead of beinf seperated with\n* slash(/) in a string\n*/\nexport function positionRangeForPath(yaml, path) {\n\n // Type check\n if (typeof yaml !== \"string\") {\n throw new TypeError(\"yaml should be a string\")\n }\n if (!isArray(path)) {\n throw new TypeError(\"path should be an array of strings\")\n }\n\n var invalidRange = {\n start: {line: -1, column: -1},\n end: {line: -1, column: -1}\n }\n var i = 0\n\n let ast = cachedCompose(yaml)\n\n // simply walks the tree using current path recursively to the point that\n // path is empty.\n return find(ast)\n\n function find(current) {\n if (current.tag === MAP_TAG) {\n for (i = 0; i < current.value.length; i++) {\n var pair = current.value[i]\n var key = pair[0]\n var value = pair[1]\n\n if (key.value === path[0]) {\n path.shift()\n return find(value)\n }\n }\n }\n\n if (current.tag === SEQ_TAG) {\n var item = current.value[path[0]]\n\n if (item && item.tag) {\n path.shift()\n return find(item)\n }\n }\n\n // if path is still not empty we were not able to find the node\n if (path.length) {\n return invalidRange\n }\n\n return {\n /* jshint camelcase: false */\n start: {\n line: current.start_mark.line,\n column: current.start_mark.column\n },\n end: {\n line: current.end_mark.line,\n column: current.end_mark.column\n }\n }\n }\n}\n\n/**\n* Get a JSON Path for position object in the spec\n* @param {string} yaml\n* YAML or JSON string\n* @param {object} position\n* position in the YAML or JSON string with `line` and `column` properties.\n* `line` and `column` number are zero indexed\n*/\nexport function pathForPosition(yaml, position) {\n\n // Type check\n if (typeof yaml !== \"string\") {\n throw new TypeError(\"yaml should be a string\")\n }\n if (typeof position !== \"object\" || typeof position.line !== \"number\" ||\n typeof position.column !== \"number\") {\n throw new TypeError(\"position should be an object with line and column\" +\n \" properties\")\n }\n\n try {\n var ast = cachedCompose(yaml)\n } catch (e) {\n console.error(\"Error composing AST\", e)\n console.error(`Problem area:\\n`, yaml.split(\"\\n\").slice(position.line - 5, position.line + 5).join(\"\\n\"))\n return null\n }\n\n\n var path = []\n\n return find(ast)\n\n /**\n * recursive find function that finds the node matching the position\n * @param {object} current - AST object to serach into\n */\n function find(current) {\n\n // algorythm:\n // is current a promitive?\n // // finish recursion without modifying the path\n // is current a hash?\n // // find a key or value that position is in their range\n // // if key is in range, terminate recursion with exisiting path\n // // if a value is in range push the corresponding key to the path\n // // andcontinue recursion\n // is current an array\n // // find the item that position is in it\"s range and push the index\n // // of the item to the path and continue recursion with that item.\n\n var i = 0\n\n if (!current || [MAP_TAG, SEQ_TAG].indexOf(current.tag) === -1) {\n return path\n }\n\n if (current.tag === MAP_TAG) {\n for (i = 0; i < current.value.length; i++) {\n var pair = current.value[i]\n var key = pair[0]\n var value = pair[1]\n\n if (isInRange(key)) {\n return path\n } else if (isInRange(value)) {\n path.push(key.value)\n return find(value)\n }\n }\n }\n\n if (current.tag === SEQ_TAG) {\n for (i = 0; i < current.value.length; i++) {\n var item = current.value[i]\n\n if (isInRange(item)) {\n path.push(i.toString())\n return find(item)\n }\n }\n }\n\n return path\n\n /**\n * Determines if position is in node\"s range\n * @param {object} node - AST node\n * @return {Boolean} true if position is in node\"s range\n */\n function isInRange(node) {\n /* jshint camelcase: false */\n\n // if node is in a single line\n if (node.start_mark.line === node.end_mark.line) {\n\n return (position.line === node.start_mark.line) &&\n (node.start_mark.column <= position.column) &&\n (node.end_mark.column >= position.column)\n }\n\n // if position is in the same line as start_mark\n if (position.line === node.start_mark.line) {\n return position.column >= node.start_mark.column\n }\n\n // if position is in the same line as end_mark\n if (position.line === node.end_mark.line) {\n return position.column <= node.end_mark.column\n }\n\n // if position is between start and end lines return true, otherwise\n // return false.\n return (node.start_mark.line < position.line) &&\n (node.end_mark.line > position.line)\n }\n }\n}\n\n// utility fns\n\n\nexport let pathForPositionAsync = promisifySyncFn(pathForPosition)\nexport let positionRangeForPathAsync = promisifySyncFn(positionRangeForPath)\nexport let getLineNumberForPathAsync = promisifySyncFn(getLineNumberForPath)\n\nfunction promisifySyncFn(fn) {\n return function(...args) {\n return new Promise((resolve) => resolve(fn(...args)))\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/ast/ast.js","module.exports = require(\"yaml-js\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"yaml-js\"\n// module id = 244\n// module chunks = 0","var createFind = require('./_createFind'),\n findIndex = require('./findIndex');\n\n/**\n * Iterates over elements of `collection`, returning the first element\n * `predicate` returns truthy for. The predicate is invoked with three\n * arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {*} Returns the matched element, else `undefined`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': true },\n * { 'user': 'fred', 'age': 40, 'active': false },\n * { 'user': 'pebbles', 'age': 1, 'active': true }\n * ];\n *\n * _.find(users, function(o) { return o.age < 40; });\n * // => object for 'barney'\n *\n * // The `_.matches` iteratee shorthand.\n * _.find(users, { 'age': 1, 'active': true });\n * // => object for 'pebbles'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.find(users, ['active', false]);\n * // => object for 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.find(users, 'active');\n * // => object for 'barney'\n */\nvar find = createFind(findIndex);\n\nmodule.exports = find;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/find.js\n// module id = 245\n// module chunks = 0","var baseIteratee = require('./_baseIteratee'),\n isArrayLike = require('./isArrayLike'),\n keys = require('./keys');\n\n/**\n * Creates a `_.find` or `_.findLast` function.\n *\n * @private\n * @param {Function} findIndexFunc The function to find the collection index.\n * @returns {Function} Returns the new find function.\n */\nfunction createFind(findIndexFunc) {\n return function(collection, predicate, fromIndex) {\n var iterable = Object(collection);\n if (!isArrayLike(collection)) {\n var iteratee = baseIteratee(predicate, 3);\n collection = keys(collection);\n predicate = function(key) { return iteratee(iterable[key], key, iterable); };\n }\n var index = findIndexFunc(collection, predicate, fromIndex);\n return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined;\n };\n}\n\nmodule.exports = createFind;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_createFind.js\n// module id = 246\n// module chunks = 0","var baseFindIndex = require('./_baseFindIndex'),\n baseIteratee = require('./_baseIteratee'),\n toInteger = require('./toInteger');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * This method is like `_.find` except that it returns the index of the first\n * element `predicate` returns truthy for instead of the element itself.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {number} Returns the index of the found element, else `-1`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.findIndex(users, function(o) { return o.user == 'barney'; });\n * // => 0\n *\n * // The `_.matches` iteratee shorthand.\n * _.findIndex(users, { 'user': 'fred', 'active': false });\n * // => 1\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findIndex(users, ['active', false]);\n * // => 0\n *\n * // The `_.property` iteratee shorthand.\n * _.findIndex(users, 'active');\n * // => 2\n */\nfunction findIndex(array, predicate, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = fromIndex == null ? 0 : toInteger(fromIndex);\n if (index < 0) {\n index = nativeMax(length + index, 0);\n }\n return baseFindIndex(array, baseIteratee(predicate, 3), index);\n}\n\nmodule.exports = findIndex;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/findIndex.js\n// module id = 247\n// module chunks = 0","/**\n * The base implementation of `_.findIndex` and `_.findLastIndex` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {number} fromIndex The index to search from.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction baseFindIndex(array, predicate, fromIndex, fromRight) {\n var length = array.length,\n index = fromIndex + (fromRight ? 1 : -1);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (predicate(array[index], index, array)) {\n return index;\n }\n }\n return -1;\n}\n\nmodule.exports = baseFindIndex;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/_baseFindIndex.js\n// module id = 248\n// module chunks = 0","var toFinite = require('./toFinite');\n\n/**\n * Converts `value` to an integer.\n *\n * **Note:** This method is loosely based on\n * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toInteger(3.2);\n * // => 3\n *\n * _.toInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toInteger(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toInteger('3.2');\n * // => 3\n */\nfunction toInteger(value) {\n var result = toFinite(value),\n remainder = result % 1;\n\n return result === result ? (remainder ? result - remainder : result) : 0;\n}\n\nmodule.exports = toInteger;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/toInteger.js\n// module id = 249\n// module chunks = 0","var toNumber = require('./toNumber');\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0,\n MAX_INTEGER = 1.7976931348623157e+308;\n\n/**\n * Converts `value` to a finite number.\n *\n * @static\n * @memberOf _\n * @since 4.12.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted number.\n * @example\n *\n * _.toFinite(3.2);\n * // => 3.2\n *\n * _.toFinite(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toFinite(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toFinite('3.2');\n * // => 3.2\n */\nfunction toFinite(value) {\n if (!value) {\n return value === 0 ? value : 0;\n }\n value = toNumber(value);\n if (value === INFINITY || value === -INFINITY) {\n var sign = (value < 0 ? -1 : 1);\n return sign * MAX_INTEGER;\n }\n return value === value ? value : 0;\n}\n\nmodule.exports = toFinite;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/toFinite.js\n// module id = 250\n// module chunks = 0","var isObject = require('./isObject'),\n isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** Used to match leading and trailing whitespace. */\nvar reTrim = /^\\s+|\\s+$/g;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = value.replace(reTrim, '');\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = toNumber;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/lodash/toNumber.js\n// module id = 251\n// module chunks = 0","import React from \"react\"\n\n// Nothing by default- component can be overriden by another plugin.\n\nexport default class JumpToPath extends React.Component {\n render() {\n return null\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/ast/jump-to-path.jsx","import Swagger from \"swagger-client\"\n\nmodule.exports = function({ configs }) {\n return {\n fn: {\n fetch: Swagger.makeHttp(configs.preFetch, configs.postFetch),\n buildRequest: Swagger.buildRequest,\n execute: Swagger.execute,\n resolve: Swagger.resolve,\n serializeRes: Swagger.serializeRes\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/swagger-js/index.js","module.exports = require(\"swagger-client\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"swagger-client\"\n// module id = 254\n// module chunks = 0","import reducers from \"./reducers\"\nimport * as actions from \"./actions\"\nimport * as selectors from \"./selectors\"\nimport * as specWrapActionReplacements from \"./spec-wrap-actions\"\n\nexport default function() {\n return {\n statePlugins: {\n auth: {\n reducers,\n actions,\n selectors\n },\n spec: {\n wrapActions: specWrapActionReplacements\n }\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/auth/index.js","import { fromJS, Map } from \"immutable\"\nimport { btoa } from \"core/utils\"\n\nimport {\n SHOW_AUTH_POPUP,\n AUTHORIZE,\n AUTHORIZE_OAUTH2,\n LOGOUT\n} from \"./actions\"\n\nexport default {\n [SHOW_AUTH_POPUP]: (state, { payload } ) =>{\n return state.set( \"showDefinitions\", payload )\n },\n\n [AUTHORIZE]: (state, { payload } ) =>{\n let securities = fromJS(payload)\n let map = state.get(\"authorized\") || Map()\n\n // refactor withMutations\n securities.entrySeq().forEach( ([ key, security ]) => {\n let type = security.getIn([\"schema\", \"type\"])\n\n if ( type === \"apiKey\" ) {\n map = map.set(key, security)\n } else if ( type === \"basic\" ) {\n let username = security.getIn([\"value\", \"username\"])\n let password = security.getIn([\"value\", \"password\"])\n\n map = map.setIn([key, \"value\"], {\n username: username,\n header: \"Basic \" + btoa(username + \":\" + password)\n })\n\n map = map.setIn([key, \"schema\"], security.get(\"schema\"))\n }\n })\n\n return state.set( \"authorized\", map )\n },\n\n [AUTHORIZE_OAUTH2]: (state, { payload } ) =>{\n let { auth, token } = payload\n let parsedAuth\n\n auth.token = token\n parsedAuth = fromJS(auth)\n\n return state.setIn( [ \"authorized\", parsedAuth.get(\"name\") ], parsedAuth )\n },\n\n [LOGOUT]: (state, { payload } ) =>{\n let result = state.get(\"authorized\").withMutations((authorized) => {\n payload.forEach((auth) => {\n authorized.delete(auth)\n })\n })\n\n return state.set(\"authorized\", result)\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/auth/reducers.js","import win from \"core/window\"\nimport { btoa } from \"core/utils\"\n\nexport const SHOW_AUTH_POPUP = \"show_popup\"\nexport const AUTHORIZE = \"authorize\"\nexport const LOGOUT = \"logout\"\nexport const PRE_AUTHORIZE_OAUTH2 = \"pre_authorize_oauth2\"\nexport const AUTHORIZE_OAUTH2 = \"authorize_oauth2\"\nexport const VALIDATE = \"validate\"\n\nconst scopeSeparator = \" \"\n\nexport function showDefinitions(payload) {\n return {\n type: SHOW_AUTH_POPUP,\n payload: payload\n }\n}\n\nexport function authorize(payload) {\n return {\n type: AUTHORIZE,\n payload: payload\n }\n}\n\nexport function logout(payload) {\n return {\n type: LOGOUT,\n payload: payload\n }\n}\n\nexport const preAuthorizeOauth2 = (payload) => ( { authActions, errActions } ) => {\n let { auth , token, isValid } = payload\n let { schema, name } = auth\n let flow = schema.get(\"flow\")\n\n // remove oauth2 property from window after redirect from authentication\n delete win.swaggerUIRedirectOauth2\n\n if ( flow !== \"accessCode\" && !isValid ) {\n errActions.newAuthErr( {\n authId: name,\n source: \"auth\",\n level: \"warning\",\n message: \"Authorization may be unsafe, passed state was changed in server Passed state wasn't returned from auth server\"\n })\n }\n\n if ( token.error ) {\n errActions.newAuthErr({\n authId: name,\n source: \"auth\",\n level: \"error\",\n message: JSON.stringify(token)\n })\n return\n }\n\n authActions.authorizeOauth2({ auth, token })\n}\n\nexport function authorizeOauth2(payload) {\n return {\n type: AUTHORIZE_OAUTH2,\n payload: payload\n }\n}\n\nexport const authorizePassword = ( auth ) => ( { fn, authActions, errActions } ) => {\n let { schema, name, username, password, passwordType, clientId, clientSecret } = auth\n let req = {\n url: schema.get(\"tokenUrl\"),\n method: \"post\",\n headers: {\n \"content-type\": \"application/x-www-form-urlencoded\"\n },\n query: {\n grant_type: \"password\",\n username,\n password,\n scopes: encodeURIComponent(auth.scopes.join(scopeSeparator))\n }\n }\n\n if ( passwordType === \"basic\") {\n req.headers.authorization = \"Basic \" + btoa(clientId + \":\" + clientSecret)\n } else if ( passwordType === \"request\") {\n req.query = Object.assign(req.query, { client_id: clientId, client_secret: clientSecret })\n }\n return fn.fetch(req)\n .then(( response ) => {\n let token = JSON.parse(response.data)\n let error = token && ( token.error || \"\" )\n let parseError = token && ( token.parseError || \"\" )\n\n if ( !response.ok ) {\n errActions.newAuthErr( {\n authId: name,\n level: \"error\",\n source: \"auth\",\n message: response.statusText\n } )\n return\n }\n\n if ( error || parseError ) {\n errActions.newAuthErr({\n authId: name,\n level: \"error\",\n source: \"auth\",\n message: JSON.stringify(token)\n })\n return\n }\n\n authActions.authorizeOauth2({ auth, token })\n })\n .catch(err => { errActions.newAuthErr( err ) })\n}\n\nexport const authorizeOauth2Application = ( auth ) => ( { fn, authActions, errActions } ) => {\n let { schema, scopes, name, clientId, clientSecret } = auth\n\n fn.fetch(schema.get(\"tokenUrl\"), {\n method: \"post\", headers: {\n \"Accept\":\"application/json, text/plain, */*\",\n \"Content-Type\": \"application/x-www-form-urlencoded\"\n },\n body: \"grant_type=client_credentials\" +\n \"&client_id=\" + encodeURIComponent(clientId) +\n \"&client_secret=\" + encodeURIComponent(clientSecret) +\n \"&scope=\" + encodeURIComponent(scopes.join(scopeSeparator))\n })\n .then(function (response) {\n if ( !response.ok ) {\n errActions.newAuthErr( {\n authId: name,\n level: \"error\",\n source: \"auth\",\n message: response.statusText\n } )\n return\n } else {\n response.json()\n .then(function (json){\n authActions.authorizeOauth2({ auth, token: json})\n })\n }\n })\n .catch(err => { errActions.newAuthErr( err ) })\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/auth/actions.js","import { createSelector } from \"reselect\"\nimport { List, Map } from \"immutable\"\n\nconst state = state => state\n\nexport const shownDefinitions = createSelector(\n state,\n auth => auth.get( \"showDefinitions\" )\n)\n\nexport const definitionsToAuthorize = createSelector(\n state,\n () =>( { specSelectors } ) => {\n let definitions = specSelectors.securityDefinitions()\n let list = List()\n\n //todo refactor\n definitions.entrySeq().forEach( ([ key, val ]) => {\n let map = Map()\n\n map = map.set(key, val)\n list = list.push(map)\n })\n\n return list\n }\n)\n\n\nexport const getDefinitionsByNames = ( state, securities ) =>( { specSelectors } ) => {\n let securityDefinitions = specSelectors.securityDefinitions()\n let result = List()\n\n securities.valueSeq().forEach( (names) => {\n let map = Map()\n names.entrySeq().forEach( ([name, scopes]) => {\n let definition = securityDefinitions.get(name)\n let allowedScopes\n\n if ( definition.get(\"type\") === \"oauth2\" && scopes.size ) {\n allowedScopes = definition.get(\"scopes\")\n\n allowedScopes.keySeq().forEach( (key) => {\n if ( !scopes.contains(key) ) {\n allowedScopes = allowedScopes.delete(key)\n }\n })\n\n definition = definition.set(\"allowedScopes\", allowedScopes)\n }\n\n map = map.set(name, definition)\n })\n\n result = result.push(map)\n })\n\n return result\n}\n\nexport const authorized = createSelector(\n state,\n auth => auth.get(\"authorized\") || Map()\n)\n\n\nexport const isAuthorized = ( state, securities ) =>( { authSelectors } ) => {\n let authorized = authSelectors.authorized()\n\n if(!List.isList(securities)) {\n return null\n }\n\n return !!securities.toJS().filter( ( security ) => {\n let isAuthorized = true\n\n return Object.keys(security).map((key) => {\n return !isAuthorized || !!authorized.get(key)\n }).indexOf(false) === -1\n }).length\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/auth/selectors.js","// Add security to the final `execute` call ( via `extras` )\nexport const execute = ( oriAction, { authSelectors, specSelectors }) => ({ path, method, operation, extras }) => {\n let securities = {\n authorized: authSelectors.authorized() && authSelectors.authorized().toJS(),\n definitions: specSelectors.securityDefinitions() && specSelectors.securityDefinitions().toJS(),\n specSecurity: specSelectors.security() && specSelectors.security().toJS()\n }\n\n return oriAction({ path, method, operation, securities, ...extras })\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/auth/spec-wrap-actions.js","import { shallowEqualKeys } from \"core/utils\"\nimport { transformPathToArray } from \"core/path-translator\"\n\nexport default function() {\n return {\n fn: { shallowEqualKeys, transformPathToArray }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/util/index.js","import get from \"lodash/get\"\n\nexport function transformPathToArray(property, jsSpec) {\n if(property.slice(0,9) === \"instance.\") {\n var str = property.slice(9)\n } else { // eslint-disable-next-line no-redeclare\n var str = property\n }\n\n var pathArr = []\n\n str\n .split(\".\")\n .map(item => {\n // \"key[0]\" becomes [\"key\", \"0\"]\n if(item.includes(\"[\")) {\n let index = parseInt(item.match(/\\[(.*)\\]/)[1])\n let keyName = item.slice(0, item.indexOf(\"[\"))\n return [keyName, index.toString()]\n } else {\n return item\n }\n })\n .reduce(function(a, b) {\n // flatten!\n return a.concat(b)\n }, [])\n .concat([\"\"]) // add an empty item into the array, so we don't get stuck with something in our buffer below\n .reduce((buffer, curr) => {\n let obj = pathArr.length ? get(jsSpec, pathArr) : jsSpec\n\n if(get(obj, makeAccessArray(buffer, curr))) {\n if(buffer.length) {\n pathArr.push(buffer)\n }\n if(curr.length) {\n pathArr.push(curr)\n }\n return \"\"\n } else {\n // attach key to buffer\n return `${buffer}${buffer.length ? \".\" : \"\"}${curr}`\n }\n }, \"\")\n\n if(typeof get(jsSpec, pathArr) !== \"undefined\") {\n return pathArr\n } else {\n // if our path is not correct (there is no value at the path),\n // return null\n return null\n }\n}\n\nfunction makeAccessArray(buffer, curr) {\n let arr = []\n\n if(buffer.length) {\n arr.push(buffer)\n }\n\n if(curr.length) {\n arr.push(curr)\n }\n\n return arr\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/path-translator.js","import * as components from \"./components\"\n\nexport default function SplitPaneModePlugin() {\n return {\n // statePlugins: {\n // layout: {\n // actions,\n // selectors,\n // }\n // },\n\n components,\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/split-pane-mode/index.js","import { pascalCaseFilename } from \"core/utils\"\n\nconst request = require.context(\".\", true, /\\.jsx?$/)\n\nrequest.keys().forEach( function( key ){\n if( key === \"./index.js\" ) {\n return\n }\n\n // if( key.slice(2).indexOf(\"/\") > -1) {\n // // skip files in subdirs\n // return\n // }\n\n let mod = request(key)\n module.exports[pascalCaseFilename(key)] = mod.default ? mod.default : mod\n})\n\n\n\n// WEBPACK FOOTER //\n// src/core/plugins/split-pane-mode/components/index.js","var map = {\n\t\"./index.js\": 263,\n\t\"./split-pane-mode.jsx\": 265\n};\nfunction webpackContext(req) {\n\treturn __webpack_require__(webpackContextResolve(req));\n};\nfunction webpackContextResolve(req) {\n\treturn map[req] || (function() { throw new Error(\"Cannot find module '\" + req + \"'.\") }());\n};\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 264;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/core/plugins/split-pane-mode/components \\.jsx?$\n// module id = 264\n// module chunks = 0","import React, { PropTypes } from \"react\"\nimport SplitPane from \"react-split-pane\"\nimport \"./split-pane-mode.less\"\n\nconst MODE_KEY = [\"split-pane-mode\"]\nconst MODE_LEFT = \"left\"\nconst MODE_RIGHT = \"right\"\nconst MODE_BOTH = \"both\" // or anything other than left/right\n\nexport default class SplitPaneMode extends React.Component {\n\n static propTypes = {\n threshold: PropTypes.number,\n\n children: PropTypes.array,\n\n layoutSelectors: PropTypes.object.isRequired,\n layoutActions: PropTypes.object.isRequired,\n };\n\n static defaultProps = {\n threshold: 100, // in pixels\n children: [],\n };\n\n onDragFinished = () => {\n let { threshold, layoutActions } = this.props\n let { position, draggedSize } = this.refs.splitPane.state\n this.draggedSize = draggedSize\n\n let nearLeftEdge = position <= threshold\n let nearRightEdge = draggedSize <= threshold\n\n layoutActions\n .changeMode(MODE_KEY, (\n nearLeftEdge\n ? MODE_RIGHT : nearRightEdge\n ? MODE_LEFT : MODE_BOTH\n ))\n }\n\n sizeFromMode = (mode, defaultSize) => {\n if(mode === MODE_LEFT) {\n this.draggedSize = null\n return \"0px\"\n } else if (mode === MODE_RIGHT) {\n this.draggedSize = null\n return \"100%\"\n }\n // mode === \"both\"\n return this.draggedSize || defaultSize\n }\n\n render() {\n let { children, layoutSelectors } = this.props\n\n const mode = layoutSelectors.whatMode(MODE_KEY)\n const left = mode === MODE_RIGHT ?