diff --git a/Gruntfile.js b/Gruntfile.js
index 9bbe4f6..ed2e7a1 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -112,6 +112,7 @@ module.exports = function( grunt ) {
options: {
potFilename: '<%= pkg.name %>.pot',
exclude: [
+ 'docs/.*', // Exclude docs directory
'dist/<%= pkg.name %>/.*' // Exclude deploy directory
],
processPot: function( pot ) {
@@ -172,6 +173,7 @@ module.exports = function( grunt ) {
'!contributing.md',
'!dev-lib/**',
'!dist/**',
+ '!docs/**',
'!Gruntfile.js',
'!node_modules/**',
'!npm-debug.log',
@@ -197,7 +199,7 @@ module.exports = function( grunt ) {
compress: {
deploy: {
options: {
- archive: 'dist/<%= pkg.name %>.zip',
+ archive: 'docs/dist/<%= pkg.name %>.zip',
mode: 'zip'
},
files: [ {
diff --git a/css/envato-market-rtl.css b/css/envato-market-rtl.css
index 386a3bc..fbfb9bb 100644
--- a/css/envato-market-rtl.css
+++ b/css/envato-market-rtl.css
@@ -1 +1 @@
-.about-wrap{overflow:hidden}.about-wrap .about-title{margin-left:0}.about-wrap .about-title sup{background:#fff;color:#666;font-size:33.333%;font-weight:700;padding:5px 10px;white-space:nowrap}.about-wrap .about-title+p{font-size:1.2em}.about-wrap img.about-logo{width:280px!important;margin-left:5px}.about-wrap h2.nav-tab-wrapper{float:right;width:100%;box-sizing:border-box;margin-bottom:1em}.about-wrap h2.nav-tab-wrapper .nav-tab{float:right;font-weight:400;margin-bottom:0}.about-wrap h2.nav-tab-wrapper .nav-tab.hidden{display:none}.about-wrap h2.nav-tab-wrapper .nav-tab-active,.about-wrap h2.nav-tab-wrapper .nav-tab-active:hover{border-bottom:0}.about-wrap h2.nav-tab-wrapper .nav-tab-active{position:relative}.about-wrap h2.nav-tab-wrapper .nav-tab-active:after{content:"";display:block;position:absolute;width:100%;bottom:-1px;height:1px;right:0;background:#f1f1f1}.about-wrap .notice{float:right;display:block!important;margin-top:15px;margin-bottom:0;width:100%;box-sizing:border-box}.about-wrap .last-feature{margin-left:0!important}.about-wrap .panel{border-bottom:none;display:none;float:right;width:100%}.about-wrap .panel:first-child{display:block}.js .about-wrap .panel{display:none}.about-wrap .panel .submit{clear:both}.about-wrap .envato-market-blocks{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between}.about-wrap .envato-market-block{margin-bottom:20px;width:49%;width:calc(50% - 10px)}.about-wrap .screenshot-image{text-align:left}.about-wrap .screenshot-image img{max-width:100%;height:auto}.about-wrap .screenshot-image span{background:#0074a2;color:#fff;font-size:.618em;text-transform:uppercase;padding:.53em 1em;position:absolute;top:0;left:0}.about-wrap .plugin-card{width:100%}.about-wrap .plugin-card .plugin-action-buttons{font-size:13px}.about-wrap #envato-market-items{margin:0;padding:0}.about-wrap #envato-market-items li{background-color:#fff;border:1px solid #dedede;-moz-box-sizing:border-box;box-sizing:border-box;min-height:40px;padding:10px;padding-left:40px;position:relative}.about-wrap #envato-market-items li.not-authorized{border-color:#dc3232}.about-wrap #envato-market-items .item-delete{background:0 0;border:none;box-shadow:none;color:#b3b9be;cursor:pointer;padding:0;position:absolute;left:0;top:0;width:38px;height:38px}.about-wrap #envato-market-items .item-delete:focus,.about-wrap #envato-market-items .item-delete:hover{color:#d61c00}.about-wrap #envato-market-items .item-delete:focus{-webkit-box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8);box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8)}#envato-market-dialog-form div.notice,#envato-market-dialog-remove div.notice{margin:0 0 10px 0!important}.envato-card{background-color:#fff;border:1px solid #dedede;box-sizing:border-box;margin:0;width:100%;display:flex;flex-direction:column;height:100%}.envato-card.active{border-color:#aaa}.envato-card .envato-card-top{min-height:140px;padding:20px;position:relative;flex-grow:1}.envato-card .envato-card-top .column-icon{height:80px;right:20px;margin:0 0 20px 20px;position:absolute;top:20px;width:80px}.envato-card .envato-card-top .column-name{margin-right:100px}.envato-card .envato-card-top .column-name h4{font-size:18px;line-height:1.3;margin:0 0 12px}.envato-card .envato-card-top .column-name h4 span{color:#999;display:inline-block;font-size:13px;font-weight:400;margin-right:5px}.envato-card .envato-card-top .column-description{margin-right:100px}.envato-card .envato-card-top .column-description .description{display:block;width:100%}.envato-card .envato-card-top .column-description .description.closed{max-height:45px;overflow:hidden}.envato-card .envato-card-top .column-description .description p:last-child{margin:0}.envato-card .envato-card-top .column-description a.read-more{margin-top:.5em}.envato-card .envato-card-top .column-description a.read-more:active,.envato-card .envato-card-top .column-description a.read-more:focus{-webkit-box-shadow:none;box-shadow:none}.envato-card .envato-card-top .column-description .author{margin-bottom:0}.envato-card .envato-card-top .column-update{background:#d54e21;background:rgba(213,78,33,.9);color:#fff;display:block;font-size:13px;font-weight:400;min-height:48px;line-height:1;padding:0 10px;position:absolute;top:0;right:0;border-bottom:1px solid rgba(0,0,0,.2);overflow:hidden;width:100%;box-sizing:border-box}.envato-card .envato-card-top .column-update.update-complete{background:#79ba49;background:rgba(121,186,73,.9)}.envato-card .envato-card-top .column-update a{color:#fff;outline:0;text-decoration:none}.envato-card .envato-card-top .column-update a:hover{text-decoration:underline}.envato-card .envato-card-top .column-update a:active,.envato-card .envato-card-top .column-update a:focus{outline:0;box-shadow:none}.envato-card .envato-card-top .column-update .update-now{display:block;float:right;padding:12px 0}.envato-card .envato-card-top .column-update .update-now:before{color:#fff;content:'\f463';display:inline-block;font:normal 20px/1 dashicons;margin:0 0 -1px 5px;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:text-bottom}.envato-card .envato-card-top .column-update .updating-message:before{content:'\f463';-webkit-animation:rotation 2s infinite linear;animation:rotation 2s infinite linear}.envato-card .envato-card-top .column-update .updated-message:before{content:'\f147'}.envato-card .envato-card-top .column-update .details{display:block;float:left;padding:18px 0 8px}.envato-card .envato-card-bottom{background-color:#fafafa;border-top:1px solid #dedede;clear:both;overflow:hidden;padding:12px 20px}.envato-card .envato-card-bottom .column-rating{float:right;margin-top:4px}.envato-card .envato-card-bottom .column-actions{float:left}.envato-card .envato-card-bottom .column-actions .button{margin-right:10px;margin-bottom:0!important}.envato-card .envato-card-bottom .column-actions .button:first-child{margin-right:0}.envato-card .envato-card-bottom .star-rating{display:inline}.envato-card .envato-card-bottom .num-ratings{font-size:13px;line-height:23px}.envato-card.active .envato-card-bottom{border-top-color:#aaa}.envato-card .button-delete{color:#a00;padding:0 5px;line-height:2;text-decoration:none}.envato-card .button-delete:hover{color:red;border:none}@-webkit-keyframes rotation{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(-359deg);transform:rotate(-359deg)}}@keyframes rotation{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(-359deg);transform:rotate(-359deg)}}@media screen and (min-width:783px) and (max-width:1030px){.envato-card .envato-card-bottom .num-ratings{display:none}}@media screen and (min-width:783px){.about-wrap h2.nav-tab-wrapper .nav-tab-active{box-shadow:none}.about-wrap #settings .form-table td,.about-wrap #settings .form-table th{float:right;display:block;width:100%}.about-wrap #settings .form-table th{padding-bottom:0}.about-wrap #settings .form-table td{padding-right:0;padding-left:0}.about-wrap p.submit{margin-top:0;padding-top:0}}@media screen and (max-width:782px){.about-wrap h2.nav-tab-wrapper{border:none;padding:0}.about-wrap h2.nav-tab-wrapper .nav-tab{border-bottom:1px solid #ccc;text-align:center;margin:0 0 1% 0;padding:2%;width:100%;box-sizing:border-box}.about-wrap h2.nav-tab-wrapper .nav-tab-active,.about-wrap h2.nav-tab-wrapper .nav-tab-active:hover{background:#fff;border-bottom:1px solid #ccc}.about-wrap h2.nav-tab-wrapper .nav-tab-active:after,.about-wrap h2.nav-tab-wrapper .nav-tab-active:hover:after{display:none}.about-wrap .envato-market-block{width:100%}.about-wrap #plugins>div:first-child,.about-wrap #themes>div:first-child{margin-top:0!important}.about-wrap p.submit{float:right;margin-top:1.25em;width:100%}.about-wrap .screenshot-image{text-align:right}.about-wrap .screenshot-image img{max-width:100%}.about-wrap .button-delete{font-size:15px}.about-wrap .column-description .description{max-height:none!important;overflow:visible!important}.about-wrap .column-description a.read-more{display:none!important}}
\ No newline at end of file
+.about-wrap{overflow:hidden}.about-wrap .about-title{margin-left:0}.about-wrap .about-title sup{background:#fff;color:#666;font-size:33.333%;font-weight:700;padding:5px 10px;white-space:nowrap}.about-wrap .about-title+p{font-size:1.2em}.about-wrap img.about-logo{width:280px!important;margin-left:5px}.about-wrap h2.nav-tab-wrapper{float:right;width:100%;box-sizing:border-box;margin-bottom:1em}.about-wrap h2.nav-tab-wrapper .nav-tab{float:right;font-weight:400;margin-bottom:0}.about-wrap h2.nav-tab-wrapper .nav-tab.hidden{display:none}.about-wrap h2.nav-tab-wrapper .nav-tab-active,.about-wrap h2.nav-tab-wrapper .nav-tab-active:hover{border-bottom:0}.about-wrap h2.nav-tab-wrapper .nav-tab-active{position:relative}.about-wrap h2.nav-tab-wrapper .nav-tab-active:after{content:"";display:block;position:absolute;width:100%;bottom:-1px;height:1px;right:0;background:#f1f1f1}.about-wrap .notice{display:block!important;margin-top:15px;margin-bottom:0;width:100%;box-sizing:border-box}.about-wrap .last-feature{margin-left:0!important}.about-wrap .panel{border-bottom:none;display:none;float:right;width:100%}.about-wrap .panel:first-child{display:block}.js .about-wrap .panel{display:none}.about-wrap .panel .submit{clear:both}.about-wrap .envato-market-blocks{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between}.about-wrap .envato-market-block{margin-bottom:20px;width:49%;width:calc(50% - 10px)}.about-wrap .screenshot-image{text-align:left}.about-wrap .screenshot-image img{max-width:100%;height:auto}.about-wrap .screenshot-image span{background:#0074a2;color:#fff;font-size:.618em;text-transform:uppercase;padding:.53em 1em;position:absolute;top:0;left:0}.about-wrap .plugin-card{width:100%}.about-wrap .plugin-card .plugin-action-buttons{font-size:13px}.about-wrap #envato-market-items{margin:0;padding:0}.about-wrap #envato-market-items li{background-color:#fff;border:1px solid #dedede;-moz-box-sizing:border-box;box-sizing:border-box;min-height:40px;padding:10px;padding-left:40px;position:relative}.about-wrap #envato-market-items li.not-authorized{border-color:#dc3232}.about-wrap #envato-market-items .item-delete{background:0 0;border:none;box-shadow:none;color:#b3b9be;cursor:pointer;padding:0;position:absolute;left:0;top:0;width:38px;height:38px}.about-wrap #envato-market-items .item-delete:focus,.about-wrap #envato-market-items .item-delete:hover{color:#d61c00}.about-wrap #envato-market-items .item-delete:focus{-webkit-box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8);box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8)}#envato-market-dialog-form div.notice,#envato-market-dialog-remove div.notice{margin:0 0 10px 0!important}.envato-card{background-color:#fff;border:1px solid #dedede;box-sizing:border-box;margin:0;width:100%;display:flex;flex-direction:column;height:100%}.envato-card.active{border-color:#aaa}.envato-card .envato-card-top{min-height:140px;padding:20px;position:relative;flex-grow:1}.envato-card .envato-card-top .column-icon{height:80px;right:20px;margin:0 0 20px 20px;position:absolute;top:20px;width:80px}.envato-card .envato-card-top .column-name{margin-right:100px}.envato-card .envato-card-top .column-name h4{font-size:18px;line-height:1.3;margin:0 0 12px}.envato-card .envato-card-top .column-name h4 span{color:#999;display:inline-block;font-size:13px;font-weight:400;margin-right:5px}.envato-card .envato-card-top .column-description{margin-right:100px}.envato-card .envato-card-top .column-description .description{display:block;width:100%}.envato-card .envato-card-top .column-description .description.closed{max-height:45px;overflow:hidden}.envato-card .envato-card-top .column-description .description p:last-child{margin:0}.envato-card .envato-card-top .column-description a.read-more{margin-top:.5em}.envato-card .envato-card-top .column-description a.read-more:active,.envato-card .envato-card-top .column-description a.read-more:focus{-webkit-box-shadow:none;box-shadow:none}.envato-card .envato-card-top .column-description .author{margin-bottom:0}.envato-card .envato-card-top .column-update{background:#d54e21;background:rgba(213,78,33,.9);color:#fff;display:block;font-size:13px;font-weight:400;min-height:48px;line-height:1;padding:0 10px;position:absolute;top:0;right:0;border-bottom:1px solid rgba(0,0,0,.2);overflow:hidden;width:100%;box-sizing:border-box}.envato-card .envato-card-top .column-update.update-complete{background:#79ba49;background:rgba(121,186,73,.9)}.envato-card .envato-card-top .column-update a{color:#fff;outline:0;text-decoration:none}.envato-card .envato-card-top .column-update a:hover{text-decoration:underline}.envato-card .envato-card-top .column-update a:active,.envato-card .envato-card-top .column-update a:focus{outline:0;box-shadow:none}.envato-card .envato-card-top .column-update .update-now{display:block;float:right;padding:12px 0}.envato-card .envato-card-top .column-update .update-now:before{color:#fff;content:'\f463';display:inline-block;font:normal 20px/1 dashicons;margin:0 0 -1px 5px;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:text-bottom}.envato-card .envato-card-top .column-update .updating-message:before{content:'\f463';-webkit-animation:rotation 2s infinite linear;animation:rotation 2s infinite linear}.envato-card .envato-card-top .column-update .updated-message:before{content:'\f147'}.envato-card .envato-card-top .column-update .details{display:block;float:left;padding:18px 0 8px}.envato-card .envato-card-bottom{background-color:#fafafa;border-top:1px solid #dedede;clear:both;overflow:hidden;padding:12px 20px}.envato-card .envato-card-bottom .column-rating{float:right;margin-top:4px}.envato-card .envato-card-bottom .column-actions{float:left}.envato-card .envato-card-bottom .column-actions .button{margin-right:10px;margin-bottom:0!important}.envato-card .envato-card-bottom .column-actions .button:first-child{margin-right:0}.envato-card .envato-card-bottom .star-rating{display:inline}.envato-card .envato-card-bottom .num-ratings{font-size:13px;line-height:23px}.envato-card.active .envato-card-bottom{border-top-color:#aaa}.envato-card .button-delete{color:#a00;padding:0 5px;line-height:2;text-decoration:none}.envato-card .button-delete:hover{color:red;border:none}@-webkit-keyframes rotation{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(-359deg);transform:rotate(-359deg)}}@keyframes rotation{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(-359deg);transform:rotate(-359deg)}}@media screen and (min-width:783px) and (max-width:1030px){.envato-card .envato-card-bottom .num-ratings{display:none}}@media screen and (min-width:783px){.about-wrap h2.nav-tab-wrapper .nav-tab-active{box-shadow:none}.about-wrap #settings .form-table td,.about-wrap #settings .form-table th{float:right;display:block;width:100%}.about-wrap #settings .form-table th{padding-bottom:0}.about-wrap #settings .form-table td{padding-right:0;padding-left:0}.about-wrap p.submit{margin-top:0;padding-top:0}}@media screen and (max-width:782px){.about-wrap h2.nav-tab-wrapper{border:none;padding:0}.about-wrap h2.nav-tab-wrapper .nav-tab{border-bottom:1px solid #ccc;text-align:center;margin:0 0 1% 0;padding:2%;width:100%;box-sizing:border-box}.about-wrap h2.nav-tab-wrapper .nav-tab-active,.about-wrap h2.nav-tab-wrapper .nav-tab-active:hover{background:#fff;border-bottom:1px solid #ccc}.about-wrap h2.nav-tab-wrapper .nav-tab-active:after,.about-wrap h2.nav-tab-wrapper .nav-tab-active:hover:after{display:none}.about-wrap .envato-market-block{width:100%}.about-wrap #plugins>div:first-child,.about-wrap #themes>div:first-child{margin-top:0!important}.about-wrap p.submit{float:right;margin-top:1.25em;width:100%}.about-wrap .screenshot-image{text-align:right}.about-wrap .screenshot-image img{max-width:100%}.about-wrap .button-delete{font-size:15px}.about-wrap .column-description .description{max-height:none!important;overflow:visible!important}.about-wrap .column-description a.read-more{display:none!important}}
\ No newline at end of file
diff --git a/css/envato-market.css b/css/envato-market.css
index 3b4ad43..c001c20 100644
--- a/css/envato-market.css
+++ b/css/envato-market.css
@@ -1 +1 @@
-.about-wrap{overflow:hidden}.about-wrap .about-title{margin-right:0}.about-wrap .about-title sup{background:#fff;color:#666;font-size:33.333%;font-weight:700;padding:5px 10px;white-space:nowrap}.about-wrap .about-title+p{font-size:1.2em}.about-wrap img.about-logo{width:280px!important;margin-right:5px}.about-wrap h2.nav-tab-wrapper{float:left;width:100%;box-sizing:border-box;margin-bottom:1em}.about-wrap h2.nav-tab-wrapper .nav-tab{float:left;font-weight:400;margin-bottom:0}.about-wrap h2.nav-tab-wrapper .nav-tab.hidden{display:none}.about-wrap h2.nav-tab-wrapper .nav-tab-active,.about-wrap h2.nav-tab-wrapper .nav-tab-active:hover{border-bottom:0}.about-wrap h2.nav-tab-wrapper .nav-tab-active{position:relative}.about-wrap h2.nav-tab-wrapper .nav-tab-active:after{content:"";display:block;position:absolute;width:100%;bottom:-1px;height:1px;left:0;background:#f1f1f1}.about-wrap .notice{float:left;display:block!important;margin-top:15px;margin-bottom:0;width:100%;box-sizing:border-box}.about-wrap .last-feature{margin-right:0!important}.about-wrap .panel{border-bottom:none;display:none;float:left;width:100%}.about-wrap .panel:first-child{display:block}.js .about-wrap .panel{display:none}.about-wrap .panel .submit{clear:both}.about-wrap .envato-market-blocks{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between}.about-wrap .envato-market-block{margin-bottom:20px;width:49%;width:calc(50% - 10px)}.about-wrap .screenshot-image{text-align:right}.about-wrap .screenshot-image img{max-width:100%;height:auto}.about-wrap .screenshot-image span{background:#0074a2;color:#fff;font-size:.618em;text-transform:uppercase;padding:.53em 1em;position:absolute;top:0;right:0}.about-wrap .plugin-card{width:100%}.about-wrap .plugin-card .plugin-action-buttons{font-size:13px}.about-wrap #envato-market-items{margin:0;padding:0}.about-wrap #envato-market-items li{background-color:#fff;border:1px solid #dedede;-moz-box-sizing:border-box;box-sizing:border-box;min-height:40px;padding:10px;padding-right:40px;position:relative}.about-wrap #envato-market-items li.not-authorized{border-color:#dc3232}.about-wrap #envato-market-items .item-delete{background:0 0;border:none;box-shadow:none;color:#b3b9be;cursor:pointer;padding:0;position:absolute;right:0;top:0;width:38px;height:38px}.about-wrap #envato-market-items .item-delete:focus,.about-wrap #envato-market-items .item-delete:hover{color:#d61c00}.about-wrap #envato-market-items .item-delete:focus{-webkit-box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8);box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8)}#envato-market-dialog-form div.notice,#envato-market-dialog-remove div.notice{margin:0 0 10px 0!important}.envato-card{background-color:#fff;border:1px solid #dedede;box-sizing:border-box;margin:0;width:100%;display:flex;flex-direction:column;height:100%}.envato-card.active{border-color:#aaa}.envato-card .envato-card-top{min-height:140px;padding:20px;position:relative;flex-grow:1}.envato-card .envato-card-top .column-icon{height:80px;left:20px;margin:0 20px 20px 0;position:absolute;top:20px;width:80px}.envato-card .envato-card-top .column-name{margin-left:100px}.envato-card .envato-card-top .column-name h4{font-size:18px;line-height:1.3;margin:0 0 12px}.envato-card .envato-card-top .column-name h4 span{color:#999;display:inline-block;font-size:13px;font-weight:400;margin-left:5px}.envato-card .envato-card-top .column-description{margin-left:100px}.envato-card .envato-card-top .column-description .description{display:block;width:100%}.envato-card .envato-card-top .column-description .description.closed{max-height:45px;overflow:hidden}.envato-card .envato-card-top .column-description .description p:last-child{margin:0}.envato-card .envato-card-top .column-description a.read-more{margin-top:.5em}.envato-card .envato-card-top .column-description a.read-more:active,.envato-card .envato-card-top .column-description a.read-more:focus{-webkit-box-shadow:none;box-shadow:none}.envato-card .envato-card-top .column-description .author{margin-bottom:0}.envato-card .envato-card-top .column-update{background:#d54e21;background:rgba(213,78,33,.9);color:#fff;display:block;font-size:13px;font-weight:400;min-height:48px;line-height:1;padding:0 10px;position:absolute;top:0;left:0;border-bottom:1px solid rgba(0,0,0,.2);overflow:hidden;width:100%;box-sizing:border-box}.envato-card .envato-card-top .column-update.update-complete{background:#79ba49;background:rgba(121,186,73,.9)}.envato-card .envato-card-top .column-update a{color:#fff;outline:0;text-decoration:none}.envato-card .envato-card-top .column-update a:hover{text-decoration:underline}.envato-card .envato-card-top .column-update a:active,.envato-card .envato-card-top .column-update a:focus{outline:0;box-shadow:none}.envato-card .envato-card-top .column-update .update-now{display:block;float:left;padding:12px 0}.envato-card .envato-card-top .column-update .update-now:before{color:#fff;content:'\f463';display:inline-block;font:normal 20px/1 dashicons;margin:0 5px -1px 0;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:text-bottom}.envato-card .envato-card-top .column-update .updating-message:before{content:'\f463';-webkit-animation:rotation 2s infinite linear;animation:rotation 2s infinite linear}.envato-card .envato-card-top .column-update .updated-message:before{content:'\f147'}.envato-card .envato-card-top .column-update .details{display:block;float:right;padding:18px 0 8px}.envato-card .envato-card-bottom{background-color:#fafafa;border-top:1px solid #dedede;clear:both;overflow:hidden;padding:12px 20px}.envato-card .envato-card-bottom .column-rating{float:left;margin-top:4px}.envato-card .envato-card-bottom .column-actions{float:right}.envato-card .envato-card-bottom .column-actions .button{margin-left:10px;margin-bottom:0!important}.envato-card .envato-card-bottom .column-actions .button:first-child{margin-left:0}.envato-card .envato-card-bottom .star-rating{display:inline}.envato-card .envato-card-bottom .num-ratings{font-size:13px;line-height:23px}.envato-card.active .envato-card-bottom{border-top-color:#aaa}.envato-card .button-delete{color:#a00;padding:0 5px;line-height:2;text-decoration:none}.envato-card .button-delete:hover{color:red;border:none}@-webkit-keyframes rotation{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes rotation{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@media screen and (min-width:783px) and (max-width:1030px){.envato-card .envato-card-bottom .num-ratings{display:none}}@media screen and (min-width:783px){.about-wrap h2.nav-tab-wrapper .nav-tab-active{box-shadow:none}.about-wrap #settings .form-table td,.about-wrap #settings .form-table th{float:left;display:block;width:100%}.about-wrap #settings .form-table th{padding-bottom:0}.about-wrap #settings .form-table td{padding-left:0;padding-right:0}.about-wrap p.submit{margin-top:0;padding-top:0}}@media screen and (max-width:782px){.about-wrap h2.nav-tab-wrapper{border:none;padding:0}.about-wrap h2.nav-tab-wrapper .nav-tab{border-bottom:1px solid #ccc;text-align:center;margin:0 0 1% 0;padding:2%;width:100%;box-sizing:border-box}.about-wrap h2.nav-tab-wrapper .nav-tab-active,.about-wrap h2.nav-tab-wrapper .nav-tab-active:hover{background:#fff;border-bottom:1px solid #ccc}.about-wrap h2.nav-tab-wrapper .nav-tab-active:after,.about-wrap h2.nav-tab-wrapper .nav-tab-active:hover:after{display:none}.about-wrap .envato-market-block{width:100%}.about-wrap #plugins>div:first-child,.about-wrap #themes>div:first-child{margin-top:0!important}.about-wrap p.submit{float:left;margin-top:1.25em;width:100%}.about-wrap .screenshot-image{text-align:left}.about-wrap .screenshot-image img{max-width:100%}.about-wrap .button-delete{font-size:15px}.about-wrap .column-description .description{max-height:none!important;overflow:visible!important}.about-wrap .column-description a.read-more{display:none!important}}
\ No newline at end of file
+.about-wrap{overflow:hidden}.about-wrap .about-title{margin-right:0}.about-wrap .about-title sup{background:#fff;color:#666;font-size:33.333%;font-weight:700;padding:5px 10px;white-space:nowrap}.about-wrap .about-title+p{font-size:1.2em}.about-wrap img.about-logo{width:280px!important;margin-right:5px}.about-wrap h2.nav-tab-wrapper{float:left;width:100%;box-sizing:border-box;margin-bottom:1em}.about-wrap h2.nav-tab-wrapper .nav-tab{float:left;font-weight:400;margin-bottom:0}.about-wrap h2.nav-tab-wrapper .nav-tab.hidden{display:none}.about-wrap h2.nav-tab-wrapper .nav-tab-active,.about-wrap h2.nav-tab-wrapper .nav-tab-active:hover{border-bottom:0}.about-wrap h2.nav-tab-wrapper .nav-tab-active{position:relative}.about-wrap h2.nav-tab-wrapper .nav-tab-active:after{content:"";display:block;position:absolute;width:100%;bottom:-1px;height:1px;left:0;background:#f1f1f1}.about-wrap .notice{display:block!important;margin-top:15px;margin-bottom:0;width:100%;box-sizing:border-box}.about-wrap .last-feature{margin-right:0!important}.about-wrap .panel{border-bottom:none;display:none;float:left;width:100%}.about-wrap .panel:first-child{display:block}.js .about-wrap .panel{display:none}.about-wrap .panel .submit{clear:both}.about-wrap .envato-market-blocks{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between}.about-wrap .envato-market-block{margin-bottom:20px;width:49%;width:calc(50% - 10px)}.about-wrap .screenshot-image{text-align:right}.about-wrap .screenshot-image img{max-width:100%;height:auto}.about-wrap .screenshot-image span{background:#0074a2;color:#fff;font-size:.618em;text-transform:uppercase;padding:.53em 1em;position:absolute;top:0;right:0}.about-wrap .plugin-card{width:100%}.about-wrap .plugin-card .plugin-action-buttons{font-size:13px}.about-wrap #envato-market-items{margin:0;padding:0}.about-wrap #envato-market-items li{background-color:#fff;border:1px solid #dedede;-moz-box-sizing:border-box;box-sizing:border-box;min-height:40px;padding:10px;padding-right:40px;position:relative}.about-wrap #envato-market-items li.not-authorized{border-color:#dc3232}.about-wrap #envato-market-items .item-delete{background:0 0;border:none;box-shadow:none;color:#b3b9be;cursor:pointer;padding:0;position:absolute;right:0;top:0;width:38px;height:38px}.about-wrap #envato-market-items .item-delete:focus,.about-wrap #envato-market-items .item-delete:hover{color:#d61c00}.about-wrap #envato-market-items .item-delete:focus{-webkit-box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8);box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8)}#envato-market-dialog-form div.notice,#envato-market-dialog-remove div.notice{margin:0 0 10px 0!important}.envato-card{background-color:#fff;border:1px solid #dedede;box-sizing:border-box;margin:0;width:100%;display:flex;flex-direction:column;height:100%}.envato-card.active{border-color:#aaa}.envato-card .envato-card-top{min-height:140px;padding:20px;position:relative;flex-grow:1}.envato-card .envato-card-top .column-icon{height:80px;left:20px;margin:0 20px 20px 0;position:absolute;top:20px;width:80px}.envato-card .envato-card-top .column-name{margin-left:100px}.envato-card .envato-card-top .column-name h4{font-size:18px;line-height:1.3;margin:0 0 12px}.envato-card .envato-card-top .column-name h4 span{color:#999;display:inline-block;font-size:13px;font-weight:400;margin-left:5px}.envato-card .envato-card-top .column-description{margin-left:100px}.envato-card .envato-card-top .column-description .description{display:block;width:100%}.envato-card .envato-card-top .column-description .description.closed{max-height:45px;overflow:hidden}.envato-card .envato-card-top .column-description .description p:last-child{margin:0}.envato-card .envato-card-top .column-description a.read-more{margin-top:.5em}.envato-card .envato-card-top .column-description a.read-more:active,.envato-card .envato-card-top .column-description a.read-more:focus{-webkit-box-shadow:none;box-shadow:none}.envato-card .envato-card-top .column-description .author{margin-bottom:0}.envato-card .envato-card-top .column-update{background:#d54e21;background:rgba(213,78,33,.9);color:#fff;display:block;font-size:13px;font-weight:400;min-height:48px;line-height:1;padding:0 10px;position:absolute;top:0;left:0;border-bottom:1px solid rgba(0,0,0,.2);overflow:hidden;width:100%;box-sizing:border-box}.envato-card .envato-card-top .column-update.update-complete{background:#79ba49;background:rgba(121,186,73,.9)}.envato-card .envato-card-top .column-update a{color:#fff;outline:0;text-decoration:none}.envato-card .envato-card-top .column-update a:hover{text-decoration:underline}.envato-card .envato-card-top .column-update a:active,.envato-card .envato-card-top .column-update a:focus{outline:0;box-shadow:none}.envato-card .envato-card-top .column-update .update-now{display:block;float:left;padding:12px 0}.envato-card .envato-card-top .column-update .update-now:before{color:#fff;content:'\f463';display:inline-block;font:normal 20px/1 dashicons;margin:0 5px -1px 0;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:text-bottom}.envato-card .envato-card-top .column-update .updating-message:before{content:'\f463';-webkit-animation:rotation 2s infinite linear;animation:rotation 2s infinite linear}.envato-card .envato-card-top .column-update .updated-message:before{content:'\f147'}.envato-card .envato-card-top .column-update .details{display:block;float:right;padding:18px 0 8px}.envato-card .envato-card-bottom{background-color:#fafafa;border-top:1px solid #dedede;clear:both;overflow:hidden;padding:12px 20px}.envato-card .envato-card-bottom .column-rating{float:left;margin-top:4px}.envato-card .envato-card-bottom .column-actions{float:right}.envato-card .envato-card-bottom .column-actions .button{margin-left:10px;margin-bottom:0!important}.envato-card .envato-card-bottom .column-actions .button:first-child{margin-left:0}.envato-card .envato-card-bottom .star-rating{display:inline}.envato-card .envato-card-bottom .num-ratings{font-size:13px;line-height:23px}.envato-card.active .envato-card-bottom{border-top-color:#aaa}.envato-card .button-delete{color:#a00;padding:0 5px;line-height:2;text-decoration:none}.envato-card .button-delete:hover{color:red;border:none}@-webkit-keyframes rotation{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes rotation{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@media screen and (min-width:783px) and (max-width:1030px){.envato-card .envato-card-bottom .num-ratings{display:none}}@media screen and (min-width:783px){.about-wrap h2.nav-tab-wrapper .nav-tab-active{box-shadow:none}.about-wrap #settings .form-table td,.about-wrap #settings .form-table th{float:left;display:block;width:100%}.about-wrap #settings .form-table th{padding-bottom:0}.about-wrap #settings .form-table td{padding-left:0;padding-right:0}.about-wrap p.submit{margin-top:0;padding-top:0}}@media screen and (max-width:782px){.about-wrap h2.nav-tab-wrapper{border:none;padding:0}.about-wrap h2.nav-tab-wrapper .nav-tab{border-bottom:1px solid #ccc;text-align:center;margin:0 0 1% 0;padding:2%;width:100%;box-sizing:border-box}.about-wrap h2.nav-tab-wrapper .nav-tab-active,.about-wrap h2.nav-tab-wrapper .nav-tab-active:hover{background:#fff;border-bottom:1px solid #ccc}.about-wrap h2.nav-tab-wrapper .nav-tab-active:after,.about-wrap h2.nav-tab-wrapper .nav-tab-active:hover:after{display:none}.about-wrap .envato-market-block{width:100%}.about-wrap #plugins>div:first-child,.about-wrap #themes>div:first-child{margin-top:0!important}.about-wrap p.submit{float:left;margin-top:1.25em;width:100%}.about-wrap .screenshot-image{text-align:left}.about-wrap .screenshot-image img{max-width:100%}.about-wrap .button-delete{font-size:15px}.about-wrap .column-description .description{max-height:none!important;overflow:visible!important}.about-wrap .column-description a.read-more{display:none!important}}
\ No newline at end of file
diff --git a/docs/.gitignore b/docs/.gitignore
new file mode 100644
index 0000000..af3e899
--- /dev/null
+++ b/docs/.gitignore
@@ -0,0 +1,18 @@
+.DS_Store
+
+# Sass
+.sass-cache
+
+# Grunt
+/node_modules/
+npm-debug.log
+
+# API Token
+.token
+
+# Build tools
+/dev-lib/
+
+# Composer
+composer.lock
+/vendor/
diff --git a/docs/dist/banner-1544x500.jpg b/docs/dist/banner-1544x500.jpg
new file mode 100644
index 0000000..759216e
Binary files /dev/null and b/docs/dist/banner-1544x500.jpg differ
diff --git a/docs/dist/banner-772x250.jpg b/docs/dist/banner-772x250.jpg
new file mode 100644
index 0000000..f939619
Binary files /dev/null and b/docs/dist/banner-772x250.jpg differ
diff --git a/docs/dist/envato-market.zip b/docs/dist/envato-market.zip
new file mode 100644
index 0000000..be6015f
Binary files /dev/null and b/docs/dist/envato-market.zip differ
diff --git a/docs/dist/update-check.json b/docs/dist/update-check.json
new file mode 100644
index 0000000..e68b65b
--- /dev/null
+++ b/docs/dist/update-check.json
@@ -0,0 +1,33 @@
+{
+ "name": "Envato Market",
+ "slug": "envato-market",
+ "version": "2.0.1",
+ "author": "Envato ",
+ "author_profile": "https://envato.com/market-plugin/",
+ "contributors": {
+ "valendesigns": "//profiles.wordpress.org/valendesigns",
+ "dtbaker": "//profiles.wordpress.org/dtbaker",
+ "aaronrutley": "//profiles.wordpress.org/aaronrutley"
+ },
+ "requires": "4.9",
+ "tested": "4.9.8",
+ "compatibility": {},
+ "rating": 0,
+ "num_ratings": "0",
+ "ratings": {},
+ "downloaded": 0,
+ "last_updated": "",
+ "added": "",
+ "homepage": "https://envato.com/market-plugin/",
+ "sections": {
+ "description": "WordPress Theme & Plugin management for the Envato Market."
+ },
+ "short_description": "WordPress Theme & Plugin management for the Envato Market.",
+ "download_link": "http://envato.github.io/wp-envato-market/dist/envato-market.zip",
+ "tags": {},
+ "donate_link": "",
+ "banners": {
+ "low": "https://envato.github.io/wp-envato-market/dist/banner-772x250.jpg",
+ "high": "https://envato.github.io/wp-envato-market/dist/banner-1544x500.jpg"
+ }
+}
\ No newline at end of file
diff --git a/docs/index.html b/docs/index.html
new file mode 100644
index 0000000..1ac006b
--- /dev/null
+++ b/docs/index.html
@@ -0,0 +1,53 @@
+
+
+
+
+ Envato Market by envato
+
+
+
+
+
+
+
+
+
+
+ Welcome!
+
+ The Envato Market plugin can install WordPress themes and plugins purchased from ThemeForest & CodeCanyon by connecting with the Envato Market API using a secure OAuth personal token. Once your themes & plugins are installed WordPress will periodically check for updates, so keeping your items up to date is as simple as a few clicks.
+
+ You can add a global token to connect all your items from your account, and/or connect directly with a specific item using a singe-use token & item ID. When the global token and single-use token are set for the same item, the single-use token will be used to communicate with the API.
+
+ Installation
+
+ The latest version of the Envato Market plugin can be downloaded from the docs/
folder as a WordPress installable package. DO NOT click the Github "Download ZIP" button, this plugin is meant to be installed in the WordPress plugins
directory as envato-market
and Github will not package the plugin correctly.
+
+ Installing the Envato Market plugin.
+
+
+ Download the envato-market.zip
and unpack the archive.
+ Upload envato-market
to the /wp-content/plugins/
directory.
+ Activate the plugin through the 'Plugins' menu in WordPress.
+ Click the 'Envato Market' menu in WordPress and connect to the API.
+
+
+ Contributing
+
+ Pull requests are welcome. Please review the guidelines for contributing and code of conduct before contributing to this repository.
+
+
+
+
+
+
+
diff --git a/docs/params.json b/docs/params.json
new file mode 100644
index 0000000..b8ed37c
--- /dev/null
+++ b/docs/params.json
@@ -0,0 +1 @@
+{"name":"Envato Market","tagline":"WordPress Theme & Plugin management for the Envato Market.","body":"## Welcome! ##\r\n\r\nThe Envato Market plugin can install WordPress themes and plugins purchased from ThemeForest & CodeCanyon by connecting with the Envato Market API using a secure OAuth personal token. Once your themes & plugins are installed WordPress will periodically check for updates, so keeping your items up to date is as simple as a few clicks.\r\n\r\nYou can add a global token to connect all your items from your account, and/or connect directly with a specific item using a singe-use token & item ID. When the global token and single-use token are set for the same item, the single-use token will be used to communicate with the API.\r\n\r\n## Installation ##\r\n\r\nThe latest version of the Envato Market plugin can be [**downloaded**](http://envato.github.io/wp-envato-market/dist/envato-market.zip) from the `gh-pages` branch as a WordPress installable package. **DO NOT** click the Github \"Download ZIP\" button, this plugin is meant to be installed in the WordPress `plugins` directory as `envato-market` and Github will not package the plugin correctly.\r\n\r\nInstalling the Envato Market plugin.\r\n\r\n1. Download the `envato-market.zip` and unpack the archive.\r\n1. Upload `envato-market` to the `/wp-content/plugins/` directory.\r\n1. Activate the plugin through the 'Plugins' menu in WordPress.\r\n1. Click the 'Envato Market' menu in WordPress and connect to the API.\r\n\r\n## Contributing ##\r\n\r\n**Pull requests are welcome.** Please review the [guidelines for contributing](https://github.com/envato/wp-envato-market/blob/master/contributing.md) and [code of conduct](https://github.com/envato/wp-envato-market/blob/master/code_of_conduct.md) before contributing to this repository.\r\n\r\n","google":"","note":"Don't delete this file! It's used internally to help with page regeneration."}
\ No newline at end of file
diff --git a/docs/stylesheets/github-light.css b/docs/stylesheets/github-light.css
new file mode 100644
index 0000000..872a6f4
--- /dev/null
+++ b/docs/stylesheets/github-light.css
@@ -0,0 +1,116 @@
+/*
+ Copyright 2014 GitHub Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+*/
+
+.pl-c /* comment */ {
+ color: #969896;
+}
+
+.pl-c1 /* constant, markup.raw, meta.diff.header, meta.module-reference, meta.property-name, support, support.constant, support.variable, variable.other.constant */,
+.pl-s .pl-v /* string variable */ {
+ color: #0086b3;
+}
+
+.pl-e /* entity */,
+.pl-en /* entity.name */ {
+ color: #795da3;
+}
+
+.pl-s .pl-s1 /* string source */,
+.pl-smi /* storage.modifier.import, storage.modifier.package, storage.type.java, variable.other, variable.parameter.function */ {
+ color: #333;
+}
+
+.pl-ent /* entity.name.tag */ {
+ color: #63a35c;
+}
+
+.pl-k /* keyword, storage, storage.type */ {
+ color: #a71d5d;
+}
+
+.pl-pds /* punctuation.definition.string, string.regexp.character-class */,
+.pl-s /* string */,
+.pl-s .pl-pse .pl-s1 /* string punctuation.section.embedded source */,
+.pl-sr /* string.regexp */,
+.pl-sr .pl-cce /* string.regexp constant.character.escape */,
+.pl-sr .pl-sra /* string.regexp string.regexp.arbitrary-repitition */,
+.pl-sr .pl-sre /* string.regexp source.ruby.embedded */ {
+ color: #183691;
+}
+
+.pl-v /* variable */ {
+ color: #ed6a43;
+}
+
+.pl-id /* invalid.deprecated */ {
+ color: #b52a1d;
+}
+
+.pl-ii /* invalid.illegal */ {
+ background-color: #b52a1d;
+ color: #f8f8f8;
+}
+
+.pl-sr .pl-cce /* string.regexp constant.character.escape */ {
+ color: #63a35c;
+ font-weight: bold;
+}
+
+.pl-ml /* markup.list */ {
+ color: #693a17;
+}
+
+.pl-mh /* markup.heading */,
+.pl-mh .pl-en /* markup.heading entity.name */,
+.pl-ms /* meta.separator */ {
+ color: #1d3e81;
+ font-weight: bold;
+}
+
+.pl-mq /* markup.quote */ {
+ color: #008080;
+}
+
+.pl-mi /* markup.italic */ {
+ color: #333;
+ font-style: italic;
+}
+
+.pl-mb /* markup.bold */ {
+ color: #333;
+ font-weight: bold;
+}
+
+.pl-md /* markup.deleted, meta.diff.header.from-file */ {
+ background-color: #ffecec;
+ color: #bd2c00;
+}
+
+.pl-mi1 /* markup.inserted, meta.diff.header.to-file */ {
+ background-color: #eaffea;
+ color: #55a532;
+}
+
+.pl-mdr /* meta.diff.range */ {
+ color: #795da3;
+ font-weight: bold;
+}
+
+.pl-mo /* meta.output */ {
+ color: #1d3e81;
+}
+
diff --git a/docs/stylesheets/normalize.css b/docs/stylesheets/normalize.css
new file mode 100644
index 0000000..30366a6
--- /dev/null
+++ b/docs/stylesheets/normalize.css
@@ -0,0 +1,424 @@
+/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
+
+/**
+ * 1. Set default font family to sans-serif.
+ * 2. Prevent iOS text size adjust after orientation change, without disabling
+ * user zoom.
+ */
+
+html {
+ font-family: sans-serif; /* 1 */
+ -ms-text-size-adjust: 100%; /* 2 */
+ -webkit-text-size-adjust: 100%; /* 2 */
+}
+
+/**
+ * Remove default margin.
+ */
+
+body {
+ margin: 0;
+}
+
+/* HTML5 display definitions
+ ========================================================================== */
+
+/**
+ * Correct `block` display not defined for any HTML5 element in IE 8/9.
+ * Correct `block` display not defined for `details` or `summary` in IE 10/11
+ * and Firefox.
+ * Correct `block` display not defined for `main` in IE 11.
+ */
+
+article,
+aside,
+details,
+figcaption,
+figure,
+footer,
+header,
+hgroup,
+main,
+menu,
+nav,
+section,
+summary {
+ display: block;
+}
+
+/**
+ * 1. Correct `inline-block` display not defined in IE 8/9.
+ * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
+ */
+
+audio,
+canvas,
+progress,
+video {
+ display: inline-block; /* 1 */
+ vertical-align: baseline; /* 2 */
+}
+
+/**
+ * Prevent modern browsers from displaying `audio` without controls.
+ * Remove excess height in iOS 5 devices.
+ */
+
+audio:not([controls]) {
+ display: none;
+ height: 0;
+}
+
+/**
+ * Address `[hidden]` styling not present in IE 8/9/10.
+ * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
+ */
+
+[hidden],
+template {
+ display: none;
+}
+
+/* Links
+ ========================================================================== */
+
+/**
+ * Remove the gray background color from active links in IE 10.
+ */
+
+a {
+ background-color: transparent;
+}
+
+/**
+ * Improve readability when focused and also mouse hovered in all browsers.
+ */
+
+a:active,
+a:hover {
+ outline: 0;
+}
+
+/* Text-level semantics
+ ========================================================================== */
+
+/**
+ * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
+ */
+
+abbr[title] {
+ border-bottom: 1px dotted;
+}
+
+/**
+ * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
+ */
+
+b,
+strong {
+ font-weight: bold;
+}
+
+/**
+ * Address styling not present in Safari and Chrome.
+ */
+
+dfn {
+ font-style: italic;
+}
+
+/**
+ * Address variable `h1` font-size and margin within `section` and `article`
+ * contexts in Firefox 4+, Safari, and Chrome.
+ */
+
+h1 {
+ font-size: 2em;
+ margin: 0.67em 0;
+}
+
+/**
+ * Address styling not present in IE 8/9.
+ */
+
+mark {
+ background: #ff0;
+ color: #000;
+}
+
+/**
+ * Address inconsistent and variable font size in all browsers.
+ */
+
+small {
+ font-size: 80%;
+}
+
+/**
+ * Prevent `sub` and `sup` affecting `line-height` in all browsers.
+ */
+
+sub,
+sup {
+ font-size: 75%;
+ line-height: 0;
+ position: relative;
+ vertical-align: baseline;
+}
+
+sup {
+ top: -0.5em;
+}
+
+sub {
+ bottom: -0.25em;
+}
+
+/* Embedded content
+ ========================================================================== */
+
+/**
+ * Remove border when inside `a` element in IE 8/9/10.
+ */
+
+img {
+ border: 0;
+}
+
+/**
+ * Correct overflow not hidden in IE 9/10/11.
+ */
+
+svg:not(:root) {
+ overflow: hidden;
+}
+
+/* Grouping content
+ ========================================================================== */
+
+/**
+ * Address margin not present in IE 8/9 and Safari.
+ */
+
+figure {
+ margin: 1em 40px;
+}
+
+/**
+ * Address differences between Firefox and other browsers.
+ */
+
+hr {
+ box-sizing: content-box;
+ height: 0;
+}
+
+/**
+ * Contain overflow in all browsers.
+ */
+
+pre {
+ overflow: auto;
+}
+
+/**
+ * Address odd `em`-unit font size rendering in all browsers.
+ */
+
+code,
+kbd,
+pre,
+samp {
+ font-family: monospace, monospace;
+ font-size: 1em;
+}
+
+/* Forms
+ ========================================================================== */
+
+/**
+ * Known limitation: by default, Chrome and Safari on OS X allow very limited
+ * styling of `select`, unless a `border` property is set.
+ */
+
+/**
+ * 1. Correct color not being inherited.
+ * Known issue: affects color of disabled elements.
+ * 2. Correct font properties not being inherited.
+ * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
+ */
+
+button,
+input,
+optgroup,
+select,
+textarea {
+ color: inherit; /* 1 */
+ font: inherit; /* 2 */
+ margin: 0; /* 3 */
+}
+
+/**
+ * Address `overflow` set to `hidden` in IE 8/9/10/11.
+ */
+
+button {
+ overflow: visible;
+}
+
+/**
+ * Address inconsistent `text-transform` inheritance for `button` and `select`.
+ * All other form control elements do not inherit `text-transform` values.
+ * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
+ * Correct `select` style inheritance in Firefox.
+ */
+
+button,
+select {
+ text-transform: none;
+}
+
+/**
+ * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
+ * and `video` controls.
+ * 2. Correct inability to style clickable `input` types in iOS.
+ * 3. Improve usability and consistency of cursor style between image-type
+ * `input` and others.
+ */
+
+button,
+html input[type="button"], /* 1 */
+input[type="reset"],
+input[type="submit"] {
+ -webkit-appearance: button; /* 2 */
+ cursor: pointer; /* 3 */
+}
+
+/**
+ * Re-set default cursor for disabled elements.
+ */
+
+button[disabled],
+html input[disabled] {
+ cursor: default;
+}
+
+/**
+ * Remove inner padding and border in Firefox 4+.
+ */
+
+button::-moz-focus-inner,
+input::-moz-focus-inner {
+ border: 0;
+ padding: 0;
+}
+
+/**
+ * Address Firefox 4+ setting `line-height` on `input` using `!important` in
+ * the UA stylesheet.
+ */
+
+input {
+ line-height: normal;
+}
+
+/**
+ * It's recommended that you don't attempt to style these elements.
+ * Firefox's implementation doesn't respect box-sizing, padding, or width.
+ *
+ * 1. Address box sizing set to `content-box` in IE 8/9/10.
+ * 2. Remove excess padding in IE 8/9/10.
+ */
+
+input[type="checkbox"],
+input[type="radio"] {
+ box-sizing: border-box; /* 1 */
+ padding: 0; /* 2 */
+}
+
+/**
+ * Fix the cursor style for Chrome's increment/decrement buttons. For certain
+ * `font-size` values of the `input`, it causes the cursor style of the
+ * decrement button to change from `default` to `text`.
+ */
+
+input[type="number"]::-webkit-inner-spin-button,
+input[type="number"]::-webkit-outer-spin-button {
+ height: auto;
+}
+
+/**
+ * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
+ * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
+ * (include `-moz` to future-proof).
+ */
+
+input[type="search"] {
+ -webkit-appearance: textfield; /* 1 */ /* 2 */
+ box-sizing: content-box;
+}
+
+/**
+ * Remove inner padding and search cancel button in Safari and Chrome on OS X.
+ * Safari (but not Chrome) clips the cancel button when the search input has
+ * padding (and `textfield` appearance).
+ */
+
+input[type="search"]::-webkit-search-cancel-button,
+input[type="search"]::-webkit-search-decoration {
+ -webkit-appearance: none;
+}
+
+/**
+ * Define consistent border, margin, and padding.
+ */
+
+fieldset {
+ border: 1px solid #c0c0c0;
+ margin: 0 2px;
+ padding: 0.35em 0.625em 0.75em;
+}
+
+/**
+ * 1. Correct `color` not being inherited in IE 8/9/10/11.
+ * 2. Remove padding so people aren't caught out if they zero out fieldsets.
+ */
+
+legend {
+ border: 0; /* 1 */
+ padding: 0; /* 2 */
+}
+
+/**
+ * Remove default vertical scrollbar in IE 8/9/10/11.
+ */
+
+textarea {
+ overflow: auto;
+}
+
+/**
+ * Don't inherit the `font-weight` (applied by a rule above).
+ * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
+ */
+
+optgroup {
+ font-weight: bold;
+}
+
+/* Tables
+ ========================================================================== */
+
+/**
+ * Remove most spacing between table cells.
+ */
+
+table {
+ border-collapse: collapse;
+ border-spacing: 0;
+}
+
+td,
+th {
+ padding: 0;
+}
diff --git a/docs/stylesheets/stylesheet.css b/docs/stylesheets/stylesheet.css
new file mode 100644
index 0000000..b5f20c2
--- /dev/null
+++ b/docs/stylesheets/stylesheet.css
@@ -0,0 +1,245 @@
+* {
+ box-sizing: border-box; }
+
+body {
+ padding: 0;
+ margin: 0;
+ font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
+ font-size: 16px;
+ line-height: 1.5;
+ color: #606c71; }
+
+a {
+ color: #1e6bb8;
+ text-decoration: none; }
+ a:hover {
+ text-decoration: underline; }
+
+.btn {
+ display: inline-block;
+ margin-bottom: 1rem;
+ color: rgba(255, 255, 255, 0.7);
+ background-color: rgba(255, 255, 255, 0.08);
+ border-color: rgba(255, 255, 255, 0.2);
+ border-style: solid;
+ border-width: 1px;
+ border-radius: 0.3rem;
+ transition: color 0.2s, background-color 0.2s, border-color 0.2s; }
+ .btn + .btn {
+ margin-left: 1rem; }
+
+.btn:hover {
+ color: rgba(255, 255, 255, 0.8);
+ text-decoration: none;
+ background-color: rgba(255, 255, 255, 0.2);
+ border-color: rgba(255, 255, 255, 0.3); }
+
+@media screen and (min-width: 64em) {
+ .btn {
+ padding: 0.75rem 1rem; } }
+
+@media screen and (min-width: 42em) and (max-width: 64em) {
+ .btn {
+ padding: 0.6rem 0.9rem;
+ font-size: 0.9rem; } }
+
+@media screen and (max-width: 42em) {
+ .btn {
+ display: block;
+ width: 100%;
+ padding: 0.75rem;
+ font-size: 0.9rem; }
+ .btn + .btn {
+ margin-top: 1rem;
+ margin-left: 0; } }
+
+.page-header {
+ color: #fff;
+ text-align: center;
+ background-color: #159957;
+ background-image: linear-gradient(120deg, #155799, #159957); }
+
+@media screen and (min-width: 64em) {
+ .page-header {
+ padding: 5rem 6rem; } }
+
+@media screen and (min-width: 42em) and (max-width: 64em) {
+ .page-header {
+ padding: 3rem 4rem; } }
+
+@media screen and (max-width: 42em) {
+ .page-header {
+ padding: 2rem 1rem; } }
+
+.project-name {
+ margin-top: 0;
+ margin-bottom: 0.1rem; }
+
+@media screen and (min-width: 64em) {
+ .project-name {
+ font-size: 3.25rem; } }
+
+@media screen and (min-width: 42em) and (max-width: 64em) {
+ .project-name {
+ font-size: 2.25rem; } }
+
+@media screen and (max-width: 42em) {
+ .project-name {
+ font-size: 1.75rem; } }
+
+.project-tagline {
+ margin-bottom: 2rem;
+ font-weight: normal;
+ opacity: 0.7; }
+
+@media screen and (min-width: 64em) {
+ .project-tagline {
+ font-size: 1.25rem; } }
+
+@media screen and (min-width: 42em) and (max-width: 64em) {
+ .project-tagline {
+ font-size: 1.15rem; } }
+
+@media screen and (max-width: 42em) {
+ .project-tagline {
+ font-size: 1rem; } }
+
+.main-content :first-child {
+ margin-top: 0; }
+.main-content img {
+ max-width: 100%; }
+.main-content h1, .main-content h2, .main-content h3, .main-content h4, .main-content h5, .main-content h6 {
+ margin-top: 2rem;
+ margin-bottom: 1rem;
+ font-weight: normal;
+ color: #159957; }
+.main-content p {
+ margin-bottom: 1em; }
+.main-content code {
+ padding: 2px 4px;
+ font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace;
+ font-size: 0.9rem;
+ color: #383e41;
+ background-color: #f3f6fa;
+ border-radius: 0.3rem; }
+.main-content pre {
+ padding: 0.8rem;
+ margin-top: 0;
+ margin-bottom: 1rem;
+ font: 1rem Consolas, "Liberation Mono", Menlo, Courier, monospace;
+ color: #567482;
+ word-wrap: normal;
+ background-color: #f3f6fa;
+ border: solid 1px #dce6f0;
+ border-radius: 0.3rem; }
+ .main-content pre > code {
+ padding: 0;
+ margin: 0;
+ font-size: 0.9rem;
+ color: #567482;
+ word-break: normal;
+ white-space: pre;
+ background: transparent;
+ border: 0; }
+.main-content .highlight {
+ margin-bottom: 1rem; }
+ .main-content .highlight pre {
+ margin-bottom: 0;
+ word-break: normal; }
+.main-content .highlight pre, .main-content pre {
+ padding: 0.8rem;
+ overflow: auto;
+ font-size: 0.9rem;
+ line-height: 1.45;
+ border-radius: 0.3rem; }
+.main-content pre code, .main-content pre tt {
+ display: inline;
+ max-width: initial;
+ padding: 0;
+ margin: 0;
+ overflow: initial;
+ line-height: inherit;
+ word-wrap: normal;
+ background-color: transparent;
+ border: 0; }
+ .main-content pre code:before, .main-content pre code:after, .main-content pre tt:before, .main-content pre tt:after {
+ content: normal; }
+.main-content ul, .main-content ol {
+ margin-top: 0; }
+.main-content blockquote {
+ padding: 0 1rem;
+ margin-left: 0;
+ color: #819198;
+ border-left: 0.3rem solid #dce6f0; }
+ .main-content blockquote > :first-child {
+ margin-top: 0; }
+ .main-content blockquote > :last-child {
+ margin-bottom: 0; }
+.main-content table {
+ display: block;
+ width: 100%;
+ overflow: auto;
+ word-break: normal;
+ word-break: keep-all; }
+ .main-content table th {
+ font-weight: bold; }
+ .main-content table th, .main-content table td {
+ padding: 0.5rem 1rem;
+ border: 1px solid #e9ebec; }
+.main-content dl {
+ padding: 0; }
+ .main-content dl dt {
+ padding: 0;
+ margin-top: 1rem;
+ font-size: 1rem;
+ font-weight: bold; }
+ .main-content dl dd {
+ padding: 0;
+ margin-bottom: 1rem; }
+.main-content hr {
+ height: 2px;
+ padding: 0;
+ margin: 1rem 0;
+ background-color: #eff0f1;
+ border: 0; }
+
+@media screen and (min-width: 64em) {
+ .main-content {
+ max-width: 64rem;
+ padding: 2rem 6rem;
+ margin: 0 auto;
+ font-size: 1.1rem; } }
+
+@media screen and (min-width: 42em) and (max-width: 64em) {
+ .main-content {
+ padding: 2rem 4rem;
+ font-size: 1.1rem; } }
+
+@media screen and (max-width: 42em) {
+ .main-content {
+ padding: 2rem 1rem;
+ font-size: 1rem; } }
+
+.site-footer {
+ padding-top: 2rem;
+ margin-top: 2rem;
+ border-top: solid 1px #eff0f1; }
+
+.site-footer-owner {
+ display: block;
+ font-weight: bold; }
+
+.site-footer-credits {
+ color: #819198; }
+
+@media screen and (min-width: 64em) {
+ .site-footer {
+ font-size: 1rem; } }
+
+@media screen and (min-width: 42em) and (max-width: 64em) {
+ .site-footer {
+ font-size: 1rem; } }
+
+@media screen and (max-width: 42em) {
+ .site-footer {
+ font-size: 0.9rem; } }
diff --git a/envato-market.php b/envato-market.php
index c7deaf4..a2c6cb8 100644
--- a/envato-market.php
+++ b/envato-market.php
@@ -3,7 +3,7 @@
* Plugin Name: Envato Market
* Plugin URI: https://envato.com/market-plugin/
* Description: WordPress Theme & Plugin management for the Envato Market.
- * Version: 2.0.0
+ * Version: 2.0.1
* Author: Envato
* Author URI: https://envato.com
* Requires at least: 4.9
@@ -20,7 +20,7 @@
/* Set plugin version constant. */
-define( 'ENVATO_MARKET_VERSION', '2.0.0' );
+define( 'ENVATO_MARKET_VERSION', '2.0.1' );
/* Debug output control. */
define( 'ENVATO_MARKET_DEBUG_OUTPUT', 0 );
@@ -44,10 +44,15 @@
add_action( 'admin_notices', 'envato_market_fail_installation_method' );
} else {
+ if ( ! function_exists( 'is_plugin_active_for_network' ) ) {
+ // Makes sure the plugin functions are defined before trying to use them.
+ require_once( ABSPATH . '/wp-admin/includes/plugin.php' );
+ }
+ define( 'ENVATO_MARKET_NETWORK_ACTIVATED', is_plugin_active_for_network( ENVATO_MARKET_SLUG . '/envato-market.php' ) );
+
/* Envato_Market Class */
require_once ENVATO_MARKET_PATH . 'inc/class-envato-market.php';
-
if ( ! function_exists( 'envato_market' ) ) :
/**
* The main function responsible for returning the one true
diff --git a/inc/admin/class-envato-market-admin.php b/inc/admin/class-envato-market-admin.php
index 8e6685e..fd5add0 100644
--- a/inc/admin/class-envato-market-admin.php
+++ b/inc/admin/class-envato-market-admin.php
@@ -51,6 +51,7 @@ public static function instance() {
self::$_instance = new self();
self::$_instance->init_actions();
}
+
return self::$_instance;
}
@@ -102,7 +103,7 @@ public function init_actions() {
}
// @codeCoverageIgnoreEnd
// Deferred Download.
- add_action( 'upgrader_package_options', array( $this, 'maybe_deferred_download' ), 99 );
+ add_action( 'upgrader_package_options', array( $this, 'maybe_deferred_download' ), 9 );
// Add pre download filter to help with 3rd party plugin integration.
add_filter( 'upgrader_pre_download', array( $this, 'upgrader_pre_download' ), 2, 4 );
@@ -133,8 +134,39 @@ public function init_actions() {
// Set the API values.
add_action( 'current_screen', array( $this, 'set_items' ) );
+
+ // Hook to verify the API token before saving it.
+ add_filter( 'pre_update_option_' . envato_market()->get_option_name(), array( $this, 'check_api_token_before_saving', ), 9, 3 );
+ add_filter( 'pre_update_site_option_' . envato_market()->get_option_name(), array( $this, 'check_api_token_before_saving', ), 9, 3 );
+
+ // When network enabled, add the network options menu.
+ add_action( 'network_admin_menu', array( $this, 'add_menu_page' ) );
+
+ // Ability to make use of the Settings API when in multisite mode.
+ add_action( 'network_admin_edit_envato_market_network_settings', array( $this, 'save_network_settings' ) );
+ }
+
+ /**
+ * This runs before we save the Envato Market options array.
+ * If the token has changed then we set a transient so we can do the update check.
+ *
+ * @since 2.0.1
+ *
+ * @param array $value The option to save.
+ * @param array $old_value The old option value.
+ * @param array $option Serialized option value.
+ *
+ * @return array $value The updated option value.
+ */
+ public function check_api_token_before_saving( $value, $old_value, $option ) {
+ if ( ! empty( $value['token'] ) && ( empty( $old_value['token'] ) || $old_value['token'] != $value['token'] || isset( $_POST['envato_market'] ) ) ) {
+ set_site_transient( envato_market()->get_option_name() . '_check_token', $value['token'], HOUR_IN_SECONDS );
+ }
+
+ return $value;
}
+
/**
* Defers building the API download url until the last responsible moment to limit file requests.
*
@@ -239,10 +271,10 @@ public function maybe_delete_transients() {
}
self::delete_transients();
- } elseif ( ! get_option( envato_market()->get_option_name() . '_installed_version', 0 ) || version_compare( envato_market()->get_version(), get_option( envato_market()->get_option_name() . '_installed_version', 0 ), '<' ) ) {
+ } elseif ( ! envato_market()->get_option( 'installed_version', 0 ) || version_compare( envato_market()->get_version(), envato_market()->get_option( 'installed_version', 0 ), '<' ) ) {
// When the plugin updates we want to delete transients.
- update_option( envato_market()->get_option_name() . '_installed_version', envato_market()->get_version() );
+ envato_market()->set_option( 'installed_version', envato_market()->get_version() );
self::delete_transients();
}
@@ -286,19 +318,19 @@ public static function do_settings_sections( $page, $columns = 2 ) {
// Set the column class.
$class = 'envato-market-block';
?>
-
- ' . esc_html( $section['title'] ) . '' . "\n";
- }
- if ( ! empty( $section['callback'] ) ) {
- call_user_func( $section['callback'], $section );
- }
- ?>
-
-
+
+ ' . esc_html( $section['title'] ) . '' . "\n";
+ }
+ if ( ! empty( $section['callback'] ) ) {
+ call_user_func( $section['callback'], $section );
+ }
+ ?>
+
+
get_slug(), array(
$this,
@@ -395,18 +433,18 @@ public function admin_enqueue_script() {
wp_enqueue_script(
$slug, $plugin_url . 'js/envato-market' . $min . '.js', array(
- 'jquery',
- 'jquery-ui-dialog',
- 'wp-util',
- ), $version, true
+ 'jquery',
+ 'jquery-ui-dialog',
+ 'wp-util',
+ ), $version, true
);
wp_enqueue_script(
$slug . '-updates', $plugin_url . 'js/updates' . $min . '.js', array(
- 'jquery',
- 'updates',
- 'wp-a11y',
- 'wp-util',
- ), $version, true
+ 'jquery',
+ 'updates',
+ 'wp-a11y',
+ 'wp-util',
+ ), $version, true
);
// Script data array.
@@ -436,85 +474,102 @@ public function admin_enqueue_script() {
*/
public function render_templates() {
?>
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
get_slug() === get_current_screen()->id ) {
+ if ( $this->are_we_on_settings_page() ) {
if ( ! empty( $_GET['action'] ) && 'install-theme' === $_GET['action'] && ! empty( $_GET['enabled'] ) ) {
wp_safe_redirect( esc_url( envato_market()->get_page_url() ) );
@@ -584,10 +639,12 @@ public function maybe_redirect() {
* @since 1.0.0
*/
public function add_notices() {
- if ( 'toplevel_page_' . envato_market()->get_slug() === get_current_screen()->id ) {
+
+ if ( $this->are_we_on_settings_page() ) {
// @codeCoverageIgnoreStart
- if ( isset( $_GET['authorization'] ) && 'check' === $_GET['authorization'] ) {
+ if ( get_site_transient( envato_market()->get_option_name() . '_check_token' ) || ( isset( $_GET['authorization'] ) && 'check' === $_GET['authorization'] ) ) {
+ delete_site_transient( envato_market()->get_option_name() . '_check_token' );
self::authorization_redirect();
}
// @codeCoverageIgnoreEnd
@@ -599,33 +656,73 @@ public function add_notices() {
self::delete_transients();
// Show succes notice.
- if ( in_array( 'success', $option['notices'] ) ) {
- add_action( 'admin_notices', array( $this, 'render_success_notice' ) );
+ if ( isset( $option['notices']['success'] ) ) {
+ add_action( ( ENVATO_MARKET_NETWORK_ACTIVATED ? 'network_' : '' ) . 'admin_notices', array(
+ $this,
+ 'render_success_notice'
+ ) );
}
// Show succes no-items notice.
- if ( in_array( 'success-no-items', $option['notices'] ) ) {
- add_action( 'admin_notices', array( $this, 'render_success_no_items_notice' ) );
+ if ( isset( $option['notices']['success-no-items'] ) ) {
+ add_action( ( ENVATO_MARKET_NETWORK_ACTIVATED ? 'network_' : '' ) . 'admin_notices', array(
+ $this,
+ 'render_success_no_items_notice'
+ ) );
}
// Show single-use succes notice.
- if ( in_array( 'success-single-use', $option['notices'] ) ) {
- add_action( 'admin_notices', array( $this, 'render_success_single_use_notice' ) );
+ if ( isset( $option['notices']['success-single-use'] ) ) {
+ add_action( ( ENVATO_MARKET_NETWORK_ACTIVATED ? 'network_' : '' ) . 'admin_notices', array(
+ $this,
+ 'render_success_single_use_notice'
+ ) );
}
// Show error notice.
- if ( in_array( 'error', $option['notices'] ) ) {
- add_action( 'admin_notices', array( $this, 'render_error_notice' ) );
+ if ( isset( $option['notices']['error'] ) ) {
+ add_action( ( ENVATO_MARKET_NETWORK_ACTIVATED ? 'network_' : '' ) . 'admin_notices', array(
+ $this,
+ 'render_error_notice'
+ ) );
+ }
+
+ // Show invalid permissions error notice.
+ if ( isset( $option['notices']['error-permissions'] ) ) {
+ add_action( ( ENVATO_MARKET_NETWORK_ACTIVATED ? 'network_' : '' ) . 'admin_notices', array(
+ $this,
+ 'render_error_permissions'
+ ) );
}
// Show single-use error notice.
- if ( in_array( 'error-single-use', $option['notices'] ) ) {
- add_action( 'admin_notices', array( $this, 'render_error_single_use_notice' ) );
+ if ( isset( $option['notices']['error-single-use'] ) ) {
+ add_action( ( ENVATO_MARKET_NETWORK_ACTIVATED ? 'network_' : '' ) . 'admin_notices', array(
+ $this,
+ 'render_error_single_use_notice'
+ ) );
+ }
+
+ // Show missing zip notice.
+ if ( isset( $option['notices']['missing-package-zip'] ) ) {
+ add_action( ( ENVATO_MARKET_NETWORK_ACTIVATED ? 'network_' : '' ) . 'admin_notices', array(
+ $this,
+ 'render_error_missing_zip'
+ ) );
+ }
+
+ // Show missing http connection error.
+ if ( isset( $option['notices']['http_error'] ) ) {
+ add_action( ( ENVATO_MARKET_NETWORK_ACTIVATED ? 'network_' : '' ) . 'admin_notices', array(
+ $this,
+ 'render_error_http'
+ ) );
}
// Update the saved data so the notice disappears on the next page load.
unset( $option['notices'] );
- update_option( envato_market()->get_option_name(), $option );
+
+ envato_market()->set_options( $option );
}
}
}
@@ -636,12 +733,22 @@ public function add_notices() {
* @since 1.0.0
*/
public function set_items() {
- if ( 'toplevel_page_' . envato_market()->get_slug() === get_current_screen()->id ) {
+ if ( $this->are_we_on_settings_page() ) {
envato_market()->items()->set_themes();
envato_market()->items()->set_plugins();
}
}
+ /**
+ * Check if we're on the settings page.
+ *
+ * @since 2.0.0
+ * @access private
+ */
+ private function are_we_on_settings_page() {
+ return 'toplevel_page_' . envato_market()->get_slug() === get_current_screen()->id || 'toplevel_page_' . envato_market()->get_slug() . '-network' === get_current_screen()->id;
+ }
+
/**
* Check for authorization and redirect.
*
@@ -662,44 +769,35 @@ private function authorization_redirect() {
*/
public function authorization() {
// Get the option array.
- $option = envato_market()->get_options();
+ $option = envato_market()->get_options();
+ $option['notices'] = array();
// Check for global token.
if ( envato_market()->get_option( 'token' ) || envato_market()->api()->token ) {
- $failed = false;
- $option['notices'] = array();
- if ( 'error' === $this->authorize_total_items() ) {
- $failed = true;
- }
-
- if ( false === $failed ) {
- $themes_notice = $this->authorize_themes();
- if ( 'success-no-themes' === $themes_notice ) {
- $themes_empty = true;
- } elseif ( 'error' === $themes_notice ) {
- $failed = true;
- }
- }
+ $notice = 'success';
+ $scope_check = $this->authorize_token_permissions();
- if ( false === $failed ) {
- $plugins_notice = $this->authorize_plugins();
- if ( 'success-no-plugins' === $plugins_notice ) {
- $plugins_empty = true;
- } elseif ( 'error' === $plugins_notice ) {
- $failed = true;
- }
- }
-
- if ( true === $failed ) {
- $option['notices'][] = 'error';
+ if ( 'http_error' === $scope_check ) {
+ $notice = 'http_error';
+ } elseif ( 'error' === $this->authorize_total_items() || 'error' === $scope_check ) {
+ $notice = 'error';
} else {
- if ( false === $failed && isset( $themes_empty ) && isset( $plugins_empty ) ) {
- $option['notices'][] = 'success-no-items';
+ if ( 'missing-permissions' == $scope_check ) {
+ $notice = 'error-permissions';
+ } elseif ( 'too-many-permissions' === $scope_check ) {
+ $notice = 'error-permissions';
} else {
- $option['notices'][] = 'success';
+ $themes_notice = $this->authorize_themes();
+ $plugins_notice = $this->authorize_plugins();
+ if ( 'error' === $themes_notice || 'error' === $plugins_notice ) {
+ $notice = 'error';
+ } elseif ( 'success-no-themes' === $themes_notice && 'success-no-plugins' === $plugins_notice ) {
+ $notice = 'success-no-items';
+ }
}
}
+ $option['notices'][ $notice ] = true;
}
// Check for single-use token.
@@ -729,15 +827,15 @@ public function authorization() {
}
if ( true === $failed ) {
- $option['notices'][] = 'error-single-use';
+ $option['notices']['error-single-use'] = true;
} else {
- $option['notices'][] = 'success-single-use';
+ $option['notices']['success-single-use'] = true;
}
}
// Set the option array.
- if ( isset( $option['notices'] ) ) {
- update_option( envato_market()->get_option_name(), $option );
+ if ( ! empty( $option['notices'] ) ) {
+ envato_market()->set_options( $option );
}
}
@@ -759,6 +857,78 @@ public function authorize_total_items() {
return $notice;
}
+
+ /**
+ * Get the required API permissions for this plugin to work.
+ *
+ * @single 2.0.1
+ *
+ * @return array
+ */
+ public function get_required_permissions() {
+ return apply_filters(
+ 'envato_market_required_permissions', array(
+ 'default' => 'View and search Envato sites',
+ 'purchase:download' => 'Download your purchased items',
+ 'purchase:list' => 'List purchases you\'ve made',
+ )
+ );
+ }
+
+ /**
+ * Return the URL a user needs to click to generate a personal token.
+ *
+ * @single 2.0.1
+ *
+ * @return string The full URL to request a token.
+ */
+ public function get_generate_token_url() {
+ return 'https://build.envato.com/create-token/?' . implode(
+ '&', array_map(
+ function ( $val ) {
+ return $val . '=t';
+ }, array_keys( $this->get_required_permissions() )
+ )
+ );
+ }
+
+ /**
+ * Check that themes are authorized.
+ *
+ * @since 1.0.0
+ *
+ * @return bool
+ */
+ public function authorize_token_permissions() {
+ $response = envato_market()->api()->request( 'https://api.envato.com/whoami' );
+ $notice = 'success';
+
+ if ( is_wp_error( $response ) && ( $response->get_error_code() === 'http_error' || $response->get_error_code() == 500 ) ) {
+ $notice = 'http_error';
+ } elseif ( is_wp_error( $response ) || ! isset( $response['scopes'] ) || ! is_array( $response['scopes'] ) ) {
+ $notice = 'error';
+ } else {
+
+ $minimum_scopes = $this->get_required_permissions();
+ $maximum_scopes = array( 'default' => 'Default' ) + $minimum_scopes;
+
+ foreach ( $minimum_scopes as $required_scope => $required_scope_name ) {
+ if ( ! in_array( $required_scope, $response['scopes'] ) ) {
+ // The scope minimum required scope doesn't exist.
+ $notice = 'missing-permissions';
+ }
+ }
+ foreach ( $response['scopes'] as $scope ) {
+ if ( ! isset( $maximum_scopes[ $scope ] ) ) {
+ // The available scope is outside our maximum bounds.
+ $notice = 'too-many-permissions';
+ }
+ }
+ }
+
+ return $notice;
+ }
+
/**
* Check that themes or plugins are authorized and downloadable.
*
@@ -989,7 +1159,7 @@ public function ajax_add_item() {
$options['items'][] = $response;
- update_option( envato_market()->get_option_name(), $options );
+ envato_market()->set_options( $options );
// Rebuild the theme cache.
if ( 'theme' === $type ) {
@@ -1058,7 +1228,7 @@ public function ajax_remove_item() {
}
$options['items'] = array_values( $options['items'] );
- update_option( envato_market()->get_option_name(), $options );
+ envato_market()->set_options( $options );
// Rebuild the theme cache.
if ( 'theme' === $type ) {
@@ -1145,6 +1315,16 @@ public function render_settings_panel_partial() {
require( envato_market()->get_plugin_path() . 'inc/admin/view/partials/settings.php' );
}
+
+ /**
+ * Help panel
+ *
+ * @since 2.0.1
+ */
+ public function render_help_panel_partial() {
+ require( envato_market()->get_plugin_path() . 'inc/admin/view/partials/help.php' );
+ }
+
/**
* Themes panel
*
@@ -1199,6 +1379,15 @@ public function render_error_notice() {
require( envato_market()->get_plugin_path() . 'inc/admin/view/notice/error.php' );
}
+ /**
+ * Permission error notice.
+ *
+ * @since 2.0.1
+ */
+ public function render_error_permissions() {
+ require( envato_market()->get_plugin_path() . 'inc/admin/view/notice/error-permissions.php' );
+ }
+
/**
* Error single-use notice.
*
@@ -1207,6 +1396,48 @@ public function render_error_notice() {
public function render_error_single_use_notice() {
require( envato_market()->get_plugin_path() . 'inc/admin/view/notice/error-single-use.php' );
}
+
+ /**
+ * Error missing zip.
+ *
+ * @since 2.0.1
+ */
+ public function render_error_missing_zip() {
+ require( envato_market()->get_plugin_path() . 'inc/admin/view/notice/error-missing-zip.php' );
+ }
+
+ /**
+ * Error http
+ *
+ * @since 2.0.1
+ */
+ public function render_error_http() {
+ require( envato_market()->get_plugin_path() . 'inc/admin/view/notice/error-http.php' );
+ }
+
+ /**
+ * Use the Settings API when in network mode.
+ *
+ * This allows us to make use of the same WordPress Settings API when displaying the menu item in network mode.
+ *
+ * @since 2.0.0
+ */
+ public function save_network_settings() {
+ check_admin_referer( envato_market()->get_slug() . '-options' );
+
+ global $new_whitelist_options;
+ $options = $new_whitelist_options[ envato_market()->get_slug() ];
+
+ foreach ( $options as $option ) {
+ if ( isset( $_POST[ $option ] ) ) {
+ update_site_option( $option, $_POST[ $option ] );
+ } else {
+ delete_site_option( $option );
+ }
+ }
+ wp_redirect( envato_market()->get_page_url() );
+ exit;
+ }
}
endif;
diff --git a/inc/admin/class-envato-market-theme-installer-skin.php b/inc/admin/class-envato-market-theme-installer-skin.php
index 9c177f6..4bb85be 100644
--- a/inc/admin/class-envato-market-theme-installer-skin.php
+++ b/inc/admin/class-envato-market-theme-installer-skin.php
@@ -56,10 +56,6 @@ public function after() {
}
if ( is_multisite() ) {
- if ( current_user_can( 'manage_sites' ) ) {
- $install_actions['site_enable'] = '' . __( 'Site Enable', 'envato-market' ) . ' ';
- }
-
if ( current_user_can( 'manage_network_themes' ) ) {
$install_actions['network_enable'] = '' . __( 'Network Enable', 'envato-market' ) . ' ';
}
@@ -108,10 +104,6 @@ public function after() {
if ( is_multisite() ) {
unset( $install_actions['activate_plugin'] );
- if ( current_user_can( 'manage_sites' ) ) {
- $install_actions['site_activate'] = '' . __( 'Site Activate', 'envato-market' ) . ' ';
- }
-
if ( current_user_can( 'manage_network_plugins' ) ) {
$install_actions['network_activate'] = '' . __( 'Network Activate', 'envato-market' ) . ' ';
}
diff --git a/inc/admin/functions.php b/inc/admin/functions.php
index 4f85352..b04f736 100644
--- a/inc/admin/functions.php
+++ b/inc/admin/functions.php
@@ -102,11 +102,6 @@ function envato_market_themes_column( $group = 'install' ) {
// Multisite needs special attention.
if ( is_multisite() && ! $get_theme->is_allowed( 'both' ) && current_user_can( 'manage_sites' ) ) {
$can_activate = false;
-
- if ( current_user_can( 'manage_sites' ) ) {
- $actions['site_enable'] = '' . __( 'Site Enable', 'envato-market' ) . ' ' . sprintf( __( 'Site Enable “%s”', 'envato-market' ), $name ) . ' ';
- }
-
if ( current_user_can( 'manage_network_themes' ) ) {
$actions['network_enable'] = '' . __( 'Network Enable', 'envato-market' ) . ' ' . sprintf( __( 'Network Enable “%s”', 'envato-market' ), $name ) . ' ';
}
@@ -189,17 +184,25 @@ function envato_market_themes_column( $group = 'install' ) {
( $theme['rating']['rating'] / 5 * 100 ),
- 'type' => 'percent',
- 'number' => $theme['rating']['count'],
- )
- );
- ?>
-
-
+ if ( ! empty( $theme['rating'] ) ) {
+ if( is_array($theme['rating']) && ! empty( $theme['rating']['count'] )) {
+ wp_star_rating(
+ array(
+ 'rating' => ( $theme['rating']['rating'] / 5 * 100 ),
+ 'type' => 'percent',
+ 'number' => $theme['rating']['count'],
+ )
+ );
+ }else{
+ wp_star_rating(
+ array(
+ 'rating' => ( $theme['rating'] / 5 * 100 ),
+ 'type' => 'percent',
+ )
+ );
+ }
+ }
+ ?>
@@ -350,14 +353,6 @@ function envato_market_plugins_column( $group = 'install' ) {
// @codeCoverageIgnoreStart
// Multisite needs special attention.
if ( is_multisite() ) {
- if ( current_user_can( 'manage_sites' ) ) {
- $actions['site_activate'] = '
-
- ' . __( 'Site Activate', 'envato-market' ) . '
- ' . sprintf( __( 'Site Activate %s', 'envato-market' ), $name ) . '
- ';
- }
-
if ( current_user_can( 'manage_network_plugins' ) ) {
$actions['network_activate'] = '
@@ -423,17 +418,25 @@ function envato_market_plugins_column( $group = 'install' ) {
( $plugin['rating']['rating'] / 5 * 100 ),
- 'type' => 'percent',
- 'number' => $plugin['rating']['count'],
- )
- );
- ?>
-
-
+ if ( ! empty( $plugin['rating'] ) ) {
+ if( is_array($plugin['rating']) && ! empty( $plugin['rating']['count'] )) {
+ wp_star_rating(
+ array(
+ 'rating' => ( $plugin['rating']['rating'] / 5 * 100 ),
+ 'type' => 'percent',
+ 'number' => $plugin['rating']['count'],
+ )
+ );
+ }else{
+ wp_star_rating(
+ array(
+ 'rating' => ( $plugin['rating'] / 5 * 100 ),
+ 'type' => 'percent',
+ )
+ );
+ }
+ }
+ ?>
diff --git a/inc/admin/view/callback/admin.php b/inc/admin/view/callback/admin.php
index 5e888ae..1292a23 100644
--- a/inc/admin/view/callback/admin.php
+++ b/inc/admin/view/callback/admin.php
@@ -20,10 +20,11 @@
-
' . esc_html__( 'envato.com', 'envato-market' ) . '' ); ?>
- ' . esc_html__( 'clicking this link', 'envato-market' ) . '' ); ?>
+ admin()->get_generate_token_url() . '" target="_blank">' . esc_html__( 'clicking this link', 'envato-market' ) . '' ); ?>
diff --git a/inc/admin/view/notice/error-http.php b/inc/admin/view/notice/error-http.php
new file mode 100644
index 0000000..72ff7c7
--- /dev/null
+++ b/inc/admin/view/notice/error-http.php
@@ -0,0 +1,12 @@
+
+
diff --git a/inc/admin/view/notice/error-missing-zip.php b/inc/admin/view/notice/error-missing-zip.php
new file mode 100644
index 0000000..8cc9d39
--- /dev/null
+++ b/inc/admin/view/notice/error-missing-zip.php
@@ -0,0 +1,12 @@
+
+
+
downloads page' ); ?>
+
diff --git a/inc/admin/view/notice/error-permissions.php b/inc/admin/view/notice/error-permissions.php
new file mode 100644
index 0000000..c11845a
--- /dev/null
+++ b/inc/admin/view/notice/error-permissions.php
@@ -0,0 +1,18 @@
+
+
+
+
+
+ get_required_permissions() as $permission ){ ?>
+
+
+
+
diff --git a/inc/admin/view/partials/help.php b/inc/admin/view/partials/help.php
new file mode 100644
index 0000000..a51aaad
--- /dev/null
+++ b/inc/admin/view/partials/help.php
@@ -0,0 +1,47 @@
+
+
+
+
+
Help:
+
When help is required using this plugin please follow these steps:
+
+ First check the FAQ to see if the problem can be solved.
+ Confirm the old Envato Toolkit
plugin is not installed.
+ Confirm the latest version of WordPress is installed.
+ Confirm the latest version of the Envato Market plugin is installed.
+ Check with the hosting provider to ensure the API connection to api.envato.com
is not blocked.
+ Check with the item author to confirm the Theme or Plugin is compatible with the Envato Market plugin.
+ Confirm a valid API token has been generated from the build.envato.com website.
+ Confirm your Envato account is still active and the items are still visible from your downloads page .
+ If this still doesn't solve the issue, please send us an email to marketpluginsupport@envato.com . We may ask for your Envato username, the item you are trying to install/update, and some temporary WordPress login details so we can debug any issues.
+
+
+
+
Common Problems:
+
Common problems and how to solve them.
+
+
+ Purchased items do not display in the Themes or Plugins area:
+ Go to build.envato.com and log out, then log back in, and then generate a new API token.
+
+
+ An item will not install or update:
+ Please install or update the item manually. The item can be downloaded from your downloads page . Please contact the item author for instructions on how to install or update the item manually.
+
+
+ It says my hosting provider is blocked:
+ Please contact your hosting provider and ask if connections to api.envato.com
are blocked.
+
+
+
+
+
diff --git a/inc/admin/view/partials/tabs.php b/inc/admin/view/partials/tabs.php
index f8b47ac..cf0fbf2 100644
--- a/inc/admin/view/partials/tabs.php
+++ b/inc/admin/view/partials/tabs.php
@@ -43,5 +43,8 @@
// Settings tab.
echo '' . esc_html__( 'Settings', 'envato-market' ) . ' ';
+
+ // Help tab.
+ echo '' . esc_html__( 'Help', 'envato-market' ) . ' ';
?>
diff --git a/inc/class-envato-market-api.php b/inc/class-envato-market-api.php
index 4c1652c..de1eb0d 100644
--- a/inc/class-envato-market-api.php
+++ b/inc/class-envato-market-api.php
@@ -111,7 +111,7 @@ private function init_globals() {
*
* @param string $url API request URL, including the request method, parameters, & file type.
* @param array $args The arguments passed to `wp_remote_get`.
- * @return array The HTTP response.
+ * @return array|WP_Error The HTTP response.
*/
public function request( $url, $args = array() ) {
$defaults = array(
@@ -119,7 +119,7 @@ public function request( $url, $args = array() ) {
'Authorization' => 'Bearer ' . $this->token,
'User-Agent' => 'WordPress - Envato Market ' . envato_market()->get_version(),
),
- 'timeout' => 20,
+ 'timeout' => 14,
);
$args = wp_parse_args( $args, $defaults );
@@ -135,6 +135,17 @@ public function request( $url, $args = array() ) {
$response_code = wp_remote_retrieve_response_code( $response );
$response_message = wp_remote_retrieve_response_message( $response );
+ if ( ! empty( $response->errors ) && isset( $response->errors['http_request_failed'] ) ) {
+ // API connectivity issue, inject notice into transient with more details.
+ $option = envato_market()->get_options();
+ if ( empty( $option['notices'] ) ) {
+ $option['notices'] = [];
+ }
+ $option['notices']['http_error'] = current( $response->errors['http_request_failed'] );
+ envato_market()->set_options( $option );
+ return new WP_Error( 'http_error', esc_html( current( $response->errors['http_request_failed'] ) ) );
+ }
+
if ( 200 !== $response_code && ! empty( $response_message ) ) {
return new WP_Error( $response_code, $response_message );
} elseif ( 200 !== $response_code ) {
@@ -198,6 +209,14 @@ public function download( $id, $args = array() ) {
return $response['wordpress_plugin'];
}
+ // Missing a WordPress theme and plugin, report an error.
+ $option = envato_market()->get_options();
+ if ( ! isset( $option['notices'] ) ) {
+ $option['notices'] = [];
+ }
+ $option['notices']['missing-package-zip'] = true;
+ envato_market()->set_options( $option );
+
return false;
}
diff --git a/inc/class-envato-market-github.php b/inc/class-envato-market-github.php
index 5cfe95c..7e3c75f 100644
--- a/inc/class-envato-market-github.php
+++ b/inc/class-envato-market-github.php
@@ -41,7 +41,7 @@ class Envato_Market_Github {
*
* @var string
*/
- private static $api_url = 'https://envato.github.io/wp-envato-market/dist/update-check.json';
+ private static $api_url = 'http://envato.github.io/wp-envato-market/dist/update-check.json';
/**
* The Envato_Market_Items Instance
@@ -228,14 +228,14 @@ public function state() {
$option = 'envato_market_state';
$active_plugins = apply_filters( 'active_plugins', get_option( 'active_plugins' ) );
// We also have to check network activated plugins. Otherwise this plugin won't update on multisite.
- $active_sitewide_plugins = get_option( 'active_sitewide_plugins' );
+ $active_sitewide_plugins = get_site_option( 'active_sitewide_plugins' );
if ( ! is_array( $active_plugins ) ) {
$active_plugins = array();
}
if ( ! is_array( $active_sitewide_plugins ) ) {
$active_sitewide_plugins = array();
}
- $active_plugins = array_merge( $active_plugins, $active_sitewide_plugins );
+ $active_plugins = array_merge( $active_plugins, array_keys( $active_sitewide_plugins ) );
if ( in_array( 'envato-market/envato-market.php', $active_plugins ) ) {
$state = 'activated';
update_option( $option, $state );
diff --git a/inc/class-envato-market-items.php b/inc/class-envato-market-items.php
index 144936f..df5d713 100644
--- a/inc/class-envato-market-items.php
+++ b/inc/class-envato-market-items.php
@@ -127,8 +127,8 @@ public function init_actions() {
add_filter( 'pre_set_transient_update_plugins', array( $this, 'update_plugins' ), 5, 1 );
// Inject theme updates into the response array.
- add_filter( 'pre_set_site_transient_update_themes', array( $this, 'update_themes' ), 5, 1 );
- add_filter( 'pre_set_transient_update_themes', array( $this, 'update_themes' ), 5, 1 );
+ add_filter( 'pre_set_site_transient_update_themes', array( $this, 'update_themes' ), 1, 99999 );
+ add_filter( 'pre_set_transient_update_themes', array( $this, 'update_themes' ), 1, 99999 );
// Inject plugin information into the API calls.
add_filter( 'plugins_api', array( $this, 'plugins_api' ), 10, 3 );
diff --git a/inc/class-envato-market.php b/inc/class-envato-market.php
index cd47f9f..cf349f4 100644
--- a/inc/class-envato-market.php
+++ b/inc/class-envato-market.php
@@ -173,13 +173,9 @@ private function init_globals() {
$this->option_name = self::sanitize_key( $this->slug );
$this->plugin_url = ENVATO_MARKET_URI;
$this->plugin_path = ENVATO_MARKET_PATH;
- $this->page_url = admin_url( 'admin.php?page=' . $this->slug );
+ $this->page_url = ENVATO_MARKET_NETWORK_ACTIVATED ? network_admin_url( 'admin.php?page=' . $this->slug ) : admin_url( 'admin.php?page=' . $this->slug );
$this->data->admin = true;
- // Set the current version for the Github updater to use.
- if ( version_compare( get_option( 'envato_market_version' ), $this->version, '<' ) ) {
- update_option( 'envato_market_version', $this->version );
- }
}
/**
@@ -304,16 +300,27 @@ private function set_plugin_state( $value ) {
* Set option value.
*
* @since 1.0.0
- * @access private
*
* @param string $name Option name.
* @param mixed $option Option data.
*/
- private function set_option( $name, $option ) {
+ public function set_option( $name, $option ) {
$options = self::get_options();
$name = self::sanitize_key( $name );
$options[ $name ] = esc_html( $option );
- update_option( $this->option_name, $options );
+ $this->set_options( $options );
+ }
+
+
+ /**
+ * Set option.
+ *
+ * @since 2.0.0
+ *
+ * @param mixed $options Option data.
+ */
+ public function set_options( $options ) {
+ ENVATO_MARKET_NETWORK_ACTIVATED ? update_site_option( $this->option_name, $options ) : update_option( $this->option_name, $options );
}
/**
@@ -322,7 +329,7 @@ private function set_option( $name, $option ) {
* @since 1.0.0
*/
public function get_options() {
- return get_option( $this->option_name, array() );
+ return ENVATO_MARKET_NETWORK_ACTIVATED ? get_site_option( $this->option_name, array() ) : get_option( $this->option_name, array() );
}
/**
diff --git a/languages/envato-market.pot b/languages/envato-market.pot
index 1a040c8..6938865 100644
--- a/languages/envato-market.pot
+++ b/languages/envato-market.pot
@@ -2,31 +2,31 @@
# This file is distributed under the same license as the Envato Market package.
msgid ""
msgstr ""
-"Project-Id-Version: Envato Market 2.0.0\n"
+"Project-Id-Version: Envato Market 2.0.1\n"
"Report-Msgid-Bugs-To: Envato Support Team \n"
-"POT-Creation-Date: 2018-03-06 04:38:03+00:00\n"
+"POT-Creation-Date: 2018-08-17 02:47:16+00:00\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"PO-Revision-Date: 2018-MO-DA HO:MI+ZONE\n"
"Last-Translator: Envato Support Team \n"
"Language-Team: Envato Support Team \n"
-"X-Generator: grunt-wp-i18n1.0.1\n"
+"X-Generator: grunt-wp-i18n1.0.2\n"
-#: envato-market.php:93
+#: envato-market.php:98
msgid ""
"The Envato Market plugin requires PHP version 5.4+, plugin is currently NOT "
"ACTIVE. Please contact the hosting provider to upgrade the version of PHP."
msgstr ""
-#: envato-market.php:112
+#: envato-market.php:117
msgid ""
"Envato Market plugin is not installed correctly. Please delete this plugin "
"and get the correct zip file from %s."
msgstr ""
-#: inc/admin/class-envato-market-admin.php:77
-#: inc/admin/class-envato-market-admin.php:87
+#: inc/admin/class-envato-market-admin.php:78
+#: inc/admin/class-envato-market-admin.php:88
#: inc/class-envato-market-api.php:80 inc/class-envato-market-api.php:90
#: inc/class-envato-market-github.php:87 inc/class-envato-market-github.php:97
#: inc/class-envato-market-items.php:100 inc/class-envato-market-items.php:110
@@ -34,7 +34,7 @@ msgstr ""
msgid "Cheatin’ huh?"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:233
+#: inc/admin/class-envato-market-admin.php:270
msgid "You do not have sufficient permissions to delete transients."
msgstr ""
@@ -42,207 +42,197 @@ msgstr ""
msgid "Envato Market"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:388
+#: inc/admin/class-envato-market-admin.php:455
msgid "Save"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:389
+#: inc/admin/class-envato-market-admin.php:456
msgid "Remove"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:390
+#: inc/admin/class-envato-market-admin.php:457
msgid "Cancel"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:391
+#: inc/admin/class-envato-market-admin.php:458
msgid "An unknown error occurred. Try again."
msgstr ""
-#: inc/admin/class-envato-market-admin.php:411
+#: inc/admin/class-envato-market-admin.php:481
#: inc/admin/view/partials/settings.php:21
msgid "Test API Connection"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:416
+#: inc/admin/class-envato-market-admin.php:486
#: inc/admin/view/callback/setting/items.php:22
msgid "ID"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:418 inc/admin/functions.php:329
+#: inc/admin/class-envato-market-admin.php:489 inc/admin/functions.php:333
#: inc/admin/view/callback/setting/items.php:24
msgid "Delete"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:429
+#: inc/admin/class-envato-market-admin.php:510
msgid "Remove Item"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:430
+#: inc/admin/class-envato-market-admin.php:511
msgid ""
"You are about to remove the connection between the Envato Market API and "
"this item. You cannot undo this action."
msgstr ""
-#: inc/admin/class-envato-market-admin.php:435
+#: inc/admin/class-envato-market-admin.php:516
#: inc/admin/view/callback/setting/items.php:37
msgid "Add Item"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:438
-#: inc/admin/class-envato-market-admin.php:512
+#: inc/admin/class-envato-market-admin.php:519
+#: inc/admin/class-envato-market-admin.php:596
msgid "Token"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:440
+#: inc/admin/class-envato-market-admin.php:522
msgid "Enter the Envato API Personal Token."
msgstr ""
-#: inc/admin/class-envato-market-admin.php:441
+#: inc/admin/class-envato-market-admin.php:523
msgid "Item ID"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:443
+#: inc/admin/class-envato-market-admin.php:525
msgid "Enter the Envato Item ID."
msgstr ""
-#: inc/admin/class-envato-market-admin.php:466 inc/admin/functions.php:167
-#: inc/admin/functions.php:168 inc/admin/functions.php:401
-#: inc/admin/functions.php:402
+#: inc/admin/class-envato-market-admin.php:549 inc/admin/functions.php:162
+#: inc/admin/functions.php:163 inc/admin/functions.php:397
+#: inc/admin/functions.php:398
msgid "Version %s"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:466
+#: inc/admin/class-envato-market-admin.php:549
msgid "Version"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:474 inc/admin/functions.php:178
-#: inc/admin/functions.php:412
+#: inc/admin/class-envato-market-admin.php:558 inc/admin/functions.php:173
+#: inc/admin/functions.php:408
msgid "By"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:481
-#: inc/admin/class-envato-market-admin.php:482 inc/admin/functions.php:148
-#: inc/admin/functions.php:382
+#: inc/admin/class-envato-market-admin.php:565
+#: inc/admin/class-envato-market-admin.php:566 inc/admin/functions.php:143
+#: inc/admin/functions.php:378
msgid "Install"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:504
+#: inc/admin/class-envato-market-admin.php:588
msgid "Activate Envato API Connection"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:521
+#: inc/admin/class-envato-market-admin.php:605
msgid "Single Item Tokens (Advanced)"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:529
+#: inc/admin/class-envato-market-admin.php:613
msgid "Envato Market Items"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:795
-#: inc/admin/class-envato-market-admin.php:820
+#: inc/admin/class-envato-market-admin.php:995
+#: inc/admin/class-envato-market-admin.php:1020
msgid "Installing Plugin..."
msgstr ""
-#: inc/admin/class-envato-market-admin.php:796
+#: inc/admin/class-envato-market-admin.php:996
msgid "You do not have sufficient permissions to install plugins on this site."
msgstr ""
-#: inc/admin/class-envato-market-admin.php:797
-#: inc/admin/class-envato-market-admin.php:822
-#: inc/admin/class-envato-market-admin.php:880
-#: inc/admin/class-envato-market-theme-installer-skin.php:120
+#: inc/admin/class-envato-market-admin.php:997
+#: inc/admin/class-envato-market-admin.php:1022
+#: inc/admin/class-envato-market-admin.php:1080
+#: inc/admin/class-envato-market-theme-installer-skin.php:112
msgid "Return to Plugin Installer"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:821
-#: inc/admin/class-envato-market-admin.php:879
+#: inc/admin/class-envato-market-admin.php:1021
+#: inc/admin/class-envato-market-admin.php:1079
msgid "An error occurred, please check that the item ID is correct."
msgstr ""
-#: inc/admin/class-envato-market-admin.php:827
+#: inc/admin/class-envato-market-admin.php:1027
msgid "Installing Plugin: %s"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:853
-#: inc/admin/class-envato-market-admin.php:878
+#: inc/admin/class-envato-market-admin.php:1053
+#: inc/admin/class-envato-market-admin.php:1078
msgid "Installing Theme..."
msgstr ""
-#: inc/admin/class-envato-market-admin.php:854
+#: inc/admin/class-envato-market-admin.php:1054
msgid "You do not have sufficient permissions to install themes on this site."
msgstr ""
-#: inc/admin/class-envato-market-admin.php:855
-#: inc/admin/class-envato-market-theme-installer-skin.php:70
+#: inc/admin/class-envato-market-admin.php:1055
+#: inc/admin/class-envato-market-theme-installer-skin.php:66
msgid "Return to Theme Installer"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:887
+#: inc/admin/class-envato-market-admin.php:1087
msgid "Installing Theme: %s"
msgstr ""
-#: inc/admin/class-envato-market-admin.php:915
+#: inc/admin/class-envato-market-admin.php:1115
msgid "The Token is missing."
msgstr ""
-#: inc/admin/class-envato-market-admin.php:917
-#: inc/admin/class-envato-market-admin.php:1016
+#: inc/admin/class-envato-market-admin.php:1117
+#: inc/admin/class-envato-market-admin.php:1216
msgid "The Item ID is missing."
msgstr ""
-#: inc/admin/class-envato-market-admin.php:928
+#: inc/admin/class-envato-market-admin.php:1128
msgid "The Token or Item ID is incorrect."
msgstr ""
-#: inc/admin/class-envato-market-admin.php:932
+#: inc/admin/class-envato-market-admin.php:1132
msgid "The item cannot be downloaded."
msgstr ""
-#: inc/admin/class-envato-market-admin.php:999
+#: inc/admin/class-envato-market-admin.php:1199
msgid "An unknown error occurred."
msgstr ""
#: inc/admin/class-envato-market-theme-installer-skin.php:55
-#: inc/admin/functions.php:133
+#: inc/admin/functions.php:128
msgid "Live Preview"
msgstr ""
#: inc/admin/class-envato-market-theme-installer-skin.php:55
-#: inc/admin/functions.php:133
+#: inc/admin/functions.php:128
msgid "Live Preview “%s”"
msgstr ""
#: inc/admin/class-envato-market-theme-installer-skin.php:60
-#: inc/admin/functions.php:107
-msgid "Site Enable"
-msgstr ""
-
-#: inc/admin/class-envato-market-theme-installer-skin.php:64
-#: inc/admin/functions.php:111
+#: inc/admin/functions.php:106
msgid "Network Enable"
msgstr ""
-#: inc/admin/class-envato-market-theme-installer-skin.php:68
-#: inc/admin/functions.php:126 inc/admin/functions.php:345
+#: inc/admin/class-envato-market-theme-installer-skin.php:64
+#: inc/admin/functions.php:121 inc/admin/functions.php:349
msgid "Activate"
msgstr ""
-#: inc/admin/class-envato-market-theme-installer-skin.php:68
-#: inc/admin/functions.php:126
+#: inc/admin/class-envato-market-theme-installer-skin.php:64
+#: inc/admin/functions.php:121
msgid "Activate “%s”"
msgstr ""
-#: inc/admin/class-envato-market-theme-installer-skin.php:105
+#: inc/admin/class-envato-market-theme-installer-skin.php:101
msgid "Activate Plugin"
msgstr ""
-#: inc/admin/class-envato-market-theme-installer-skin.php:112
-#: inc/admin/functions.php:356
-msgid "Site Activate"
-msgstr ""
-
-#: inc/admin/class-envato-market-theme-installer-skin.php:116
-#: inc/admin/functions.php:364
+#: inc/admin/class-envato-market-theme-installer-skin.php:108
+#: inc/admin/functions.php:360
msgid "Network Activate"
msgstr ""
@@ -256,15 +246,15 @@ msgstr ""
msgid "Downloading the Envato Market install package…"
msgstr ""
-#: inc/admin/functions.php:70 inc/admin/functions.php:280
+#: inc/admin/functions.php:70 inc/admin/functions.php:284
msgid "Update %s now"
msgstr ""
-#: inc/admin/functions.php:74 inc/admin/functions.php:285
+#: inc/admin/functions.php:74 inc/admin/functions.php:289
msgid "Update Available"
msgstr ""
-#: inc/admin/functions.php:82 inc/admin/functions.php:293
+#: inc/admin/functions.php:82 inc/admin/functions.php:297
msgid "View version %1$s details."
msgstr ""
@@ -276,39 +266,31 @@ msgstr ""
msgid "Customize “%s”"
msgstr ""
-#: inc/admin/functions.php:107
-msgid "Site Enable “%s”"
-msgstr ""
-
-#: inc/admin/functions.php:111
+#: inc/admin/functions.php:106
msgid "Network Enable “%s”"
msgstr ""
-#: inc/admin/functions.php:149 inc/admin/functions.php:383
+#: inc/admin/functions.php:144 inc/admin/functions.php:379
msgid "Install %s"
msgstr ""
-#: inc/admin/functions.php:314
+#: inc/admin/functions.php:318
msgid "Deactivate"
msgstr ""
-#: inc/admin/functions.php:315
+#: inc/admin/functions.php:319
msgid "Deactivate %s"
msgstr ""
-#: inc/admin/functions.php:330
+#: inc/admin/functions.php:334
msgid "Delete %s"
msgstr ""
-#: inc/admin/functions.php:346
+#: inc/admin/functions.php:350
msgid "Activate %s"
msgstr ""
-#: inc/admin/functions.php:357
-msgid "Site Activate %s"
-msgstr ""
-
-#: inc/admin/functions.php:365
+#: inc/admin/functions.php:361
msgid "Network Activate %s"
msgstr ""
@@ -358,6 +340,29 @@ msgstr ""
msgid "Enter your Envato API Personal Token."
msgstr ""
+#: inc/admin/view/notice/error-http.php:11
+msgid ""
+"Failed to connect to the Envato API. Please try again and if the issue "
+"persists contact the hosting providier to ask: \"Please un-block PHP "
+"connections from WordPress to api.envato.com\"."
+msgstr ""
+
+#: inc/admin/view/notice/error-missing-zip.php:11
+msgid ""
+"Failed to locate the package file for this item. Please contact the item "
+"author for support, or install/upgrade the item manually from the %s."
+msgstr ""
+
+#: inc/admin/view/notice/error-permissions.php:11
+msgid ""
+"Incorrect token permissions, please generate another token or fix the "
+"permissions on the existing token."
+msgstr ""
+
+#: inc/admin/view/notice/error-permissions.php:12
+msgid "Please ensure only the following permissions are enabled: "
+msgstr ""
+
#: inc/admin/view/notice/error-single-use.php:11
msgid ""
"One or more Single Use OAuth Personal Tokens could not be verified and "
@@ -417,21 +422,25 @@ msgstr ""
msgid "Settings"
msgstr ""
+#: inc/admin/view/partials/tabs.php:48
+msgid "Help"
+msgstr ""
+
#: inc/class-envato-market-api.php:128
msgid "An API token is required."
msgstr ""
-#: inc/class-envato-market-api.php:141 inc/class-envato-market-api.php:145
+#: inc/class-envato-market-api.php:152 inc/class-envato-market-api.php:156
msgid "An unknown API error occurred."
msgstr ""
-#: inc/class-envato-market-github.php:296
+#: inc/class-envato-market-github.php:305
msgid ""
"%1$sActivate the Envato Market plugin%2$s to get updates for your "
"ThemeForest and CodeCanyon items."
msgstr ""
-#: inc/class-envato-market-github.php:309
+#: inc/class-envato-market-github.php:318
msgid ""
"%1$sInstall the Envato Market plugin%2$s to get updates for your "
"ThemeForest and CodeCanyon items."
diff --git a/package-lock.json b/package-lock.json
index e1f7894..542e8a5 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "envato-market",
- "version": "2.0.0",
+ "version": "2.0.1",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@@ -22,10 +22,10 @@
"integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=",
"dev": true,
"requires": {
- "co": "4.6.0",
- "fast-deep-equal": "1.1.0",
- "fast-json-stable-stringify": "2.0.0",
- "json-schema-traverse": "0.3.1"
+ "co": "^4.6.0",
+ "fast-deep-equal": "^1.0.0",
+ "fast-json-stable-stringify": "^2.0.0",
+ "json-schema-traverse": "^0.3.0"
}
},
"amdefine": {
@@ -58,15 +58,15 @@
"integrity": "sha1-TyGU1tj5nfP1MeaIHxTxXVX6ryI=",
"dev": true,
"requires": {
- "archiver-utils": "1.3.0",
- "async": "2.6.0",
- "buffer-crc32": "0.2.13",
- "glob": "7.0.6",
- "lodash": "4.17.5",
- "readable-stream": "2.3.4",
- "tar-stream": "1.5.5",
- "walkdir": "0.0.11",
- "zip-stream": "1.2.0"
+ "archiver-utils": "^1.3.0",
+ "async": "^2.0.0",
+ "buffer-crc32": "^0.2.1",
+ "glob": "^7.0.0",
+ "lodash": "^4.8.0",
+ "readable-stream": "^2.0.0",
+ "tar-stream": "^1.5.0",
+ "walkdir": "^0.0.11",
+ "zip-stream": "^1.1.0"
},
"dependencies": {
"async": {
@@ -75,7 +75,7 @@
"integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==",
"dev": true,
"requires": {
- "lodash": "4.17.5"
+ "lodash": "^4.14.0"
}
},
"lodash": {
@@ -92,12 +92,12 @@
"integrity": "sha1-5QtMCccL89aA4y/xt5lOn52JUXQ=",
"dev": true,
"requires": {
- "glob": "7.0.6",
- "graceful-fs": "4.1.11",
- "lazystream": "1.0.0",
- "lodash": "4.17.5",
- "normalize-path": "2.1.1",
- "readable-stream": "2.3.4"
+ "glob": "^7.0.0",
+ "graceful-fs": "^4.1.0",
+ "lazystream": "^1.0.0",
+ "lodash": "^4.8.0",
+ "normalize-path": "^2.0.0",
+ "readable-stream": "^2.0.0"
},
"dependencies": {
"lodash": {
@@ -114,8 +114,8 @@
"integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=",
"dev": true,
"requires": {
- "delegates": "1.0.0",
- "readable-stream": "2.3.4"
+ "delegates": "^1.0.0",
+ "readable-stream": "^2.0.6"
}
},
"argparse": {
@@ -124,15 +124,51 @@
"integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
"dev": true,
"requires": {
- "sprintf-js": "1.0.3"
+ "sprintf-js": "~1.0.2"
}
},
+ "arr-diff": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
+ "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=",
+ "dev": true
+ },
+ "arr-flatten": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
+ "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
+ "dev": true
+ },
+ "arr-union": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
+ "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=",
+ "dev": true
+ },
+ "array-each": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz",
+ "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=",
+ "dev": true
+ },
"array-find-index": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
"integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
"dev": true
},
+ "array-slice": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz",
+ "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==",
+ "dev": true
+ },
+ "array-unique": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
+ "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=",
+ "dev": true
+ },
"asn1": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
@@ -145,6 +181,12 @@
"integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
"dev": true
},
+ "assign-symbols": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
+ "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=",
+ "dev": true
+ },
"async": {
"version": "1.5.2",
"resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
@@ -163,6 +205,12 @@
"integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
"dev": true
},
+ "atob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.1.tgz",
+ "integrity": "sha1-ri1acpR38onWDdf5amMUoi3Wwio=",
+ "dev": true
+ },
"aws-sign2": {
"version": "0.7.0",
"resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
@@ -181,8 +229,8 @@
"integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
"dev": true,
"requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
+ "core-js": "^2.4.0",
+ "regenerator-runtime": "^0.11.0"
}
},
"babylon": {
@@ -197,6 +245,61 @@
"integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
"dev": true
},
+ "base": {
+ "version": "0.11.2",
+ "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
+ "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
+ "dev": true,
+ "requires": {
+ "cache-base": "^1.0.1",
+ "class-utils": "^0.3.5",
+ "component-emitter": "^1.2.1",
+ "define-property": "^1.0.0",
+ "isobject": "^3.0.1",
+ "mixin-deep": "^1.2.0",
+ "pascalcase": "^0.1.1"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^1.0.0"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-data-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-descriptor": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+ "dev": true,
+ "requires": {
+ "is-accessor-descriptor": "^1.0.0",
+ "is-data-descriptor": "^1.0.0",
+ "kind-of": "^6.0.2"
+ }
+ }
+ }
+ },
"bcrypt-pbkdf": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz",
@@ -204,7 +307,7 @@
"dev": true,
"optional": true,
"requires": {
- "tweetnacl": "0.14.5"
+ "tweetnacl": "^0.14.3"
}
},
"bl": {
@@ -213,7 +316,7 @@
"integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=",
"dev": true,
"requires": {
- "readable-stream": "2.3.4"
+ "readable-stream": "^2.0.5"
}
},
"block-stream": {
@@ -222,7 +325,7 @@
"integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=",
"dev": true,
"requires": {
- "inherits": "2.0.3"
+ "inherits": "~2.0.0"
}
},
"bluebird": {
@@ -231,36 +334,16 @@
"integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==",
"dev": true
},
- "body-parser": {
- "version": "1.14.2",
- "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.14.2.tgz",
- "integrity": "sha1-EBXLH+LEQ4WCWVgdtTMy+NDPUPk=",
+ "body": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/body/-/body-5.1.0.tgz",
+ "integrity": "sha1-5LoM5BCkaTYyM2dgnstOZVMSUGk=",
"dev": true,
"requires": {
- "bytes": "2.2.0",
- "content-type": "1.0.4",
- "debug": "2.2.0",
- "depd": "1.1.2",
- "http-errors": "1.3.1",
- "iconv-lite": "0.4.13",
- "on-finished": "2.3.0",
- "qs": "5.2.0",
- "raw-body": "2.1.7",
- "type-is": "1.6.16"
- },
- "dependencies": {
- "iconv-lite": {
- "version": "0.4.13",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.13.tgz",
- "integrity": "sha1-H4irpKsLFQjoMSrMOTRfNumS4vI=",
- "dev": true
- },
- "qs": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/qs/-/qs-5.2.0.tgz",
- "integrity": "sha1-qfMRQq9GjLcrJbMBNrokVoNJFr4=",
- "dev": true
- }
+ "continuable-cache": "^0.3.1",
+ "error": "^7.0.0",
+ "raw-body": "~1.1.0",
+ "safe-json-parse": "~1.0.1"
}
},
"boom": {
@@ -269,7 +352,7 @@
"integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=",
"dev": true,
"requires": {
- "hoek": "4.2.1"
+ "hoek": "4.x.x"
}
},
"bourbon": {
@@ -284,17 +367,46 @@
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"dev": true,
"requires": {
- "balanced-match": "1.0.0",
+ "balanced-match": "^1.0.0",
"concat-map": "0.0.1"
}
},
+ "braces": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
+ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
+ "dev": true,
+ "requires": {
+ "arr-flatten": "^1.1.0",
+ "array-unique": "^0.3.2",
+ "extend-shallow": "^2.0.1",
+ "fill-range": "^4.0.0",
+ "isobject": "^3.0.1",
+ "repeat-element": "^1.1.2",
+ "snapdragon": "^0.8.1",
+ "snapdragon-node": "^2.0.1",
+ "split-string": "^3.0.2",
+ "to-regex": "^3.0.1"
+ },
+ "dependencies": {
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ }
+ }
+ },
"browserify-zlib": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz",
"integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=",
"dev": true,
"requires": {
- "pako": "0.2.9"
+ "pako": "~0.2.0"
}
},
"buffer-crc32": {
@@ -303,6 +415,13 @@
"integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=",
"dev": true
},
+ "buffer-from": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
+ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
+ "dev": true,
+ "optional": true
+ },
"builtin-modules": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
@@ -310,11 +429,28 @@
"dev": true
},
"bytes": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-2.2.0.tgz",
- "integrity": "sha1-/TVGSkA/b5EXwt42Cez/nK4ABYg=",
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz",
+ "integrity": "sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g=",
"dev": true
},
+ "cache-base": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
+ "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==",
+ "dev": true,
+ "requires": {
+ "collection-visit": "^1.0.0",
+ "component-emitter": "^1.2.1",
+ "get-value": "^2.0.6",
+ "has-value": "^1.0.0",
+ "isobject": "^3.0.1",
+ "set-value": "^2.0.0",
+ "to-object-path": "^0.3.0",
+ "union-value": "^1.0.0",
+ "unset-value": "^1.0.0"
+ }
+ },
"camelcase": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
@@ -327,8 +463,8 @@
"integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
"dev": true,
"requires": {
- "camelcase": "2.1.1",
- "map-obj": "1.0.1"
+ "camelcase": "^2.0.0",
+ "map-obj": "^1.0.0"
}
},
"caseless": {
@@ -343,8 +479,8 @@
"integrity": "sha1-dhPhV1FFshOGSD9/SFql/6jL0Qw=",
"dev": true,
"requires": {
- "ansi-styles": "0.2.0",
- "has-color": "0.1.7"
+ "ansi-styles": "~0.2.0",
+ "has-color": "~0.1.0"
}
},
"chownr": {
@@ -354,13 +490,36 @@
"dev": true,
"optional": true
},
+ "class-utils": {
+ "version": "0.3.6",
+ "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
+ "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
+ "dev": true,
+ "requires": {
+ "arr-union": "^3.1.0",
+ "define-property": "^0.2.5",
+ "isobject": "^3.0.0",
+ "static-extend": "^0.1.1"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^0.1.0"
+ }
+ }
+ }
+ },
"clean-css": {
"version": "4.1.9",
"resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.1.9.tgz",
"integrity": "sha1-Nc7ornaHpJuYA09w3gDE7dOCYwE=",
"dev": true,
"requires": {
- "source-map": "0.5.7"
+ "source-map": "0.5.x"
}
},
"cli": {
@@ -370,7 +529,7 @@
"dev": true,
"requires": {
"exit": "0.1.2",
- "glob": "7.1.2"
+ "glob": "^7.1.1"
},
"dependencies": {
"glob": {
@@ -379,12 +538,12 @@
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
"dev": true,
"requires": {
- "fs.realpath": "1.0.0",
- "inflight": "1.0.6",
- "inherits": "2.0.3",
- "minimatch": "3.0.4",
- "once": "1.4.0",
- "path-is-absolute": "1.0.1"
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
}
}
}
@@ -412,9 +571,9 @@
"integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
"dev": true,
"requires": {
- "string-width": "1.0.2",
- "strip-ansi": "3.0.1",
- "wrap-ansi": "2.1.0"
+ "string-width": "^1.0.1",
+ "strip-ansi": "^3.0.1",
+ "wrap-ansi": "^2.0.0"
}
},
"co": {
@@ -435,13 +594,23 @@
"integrity": "sha1-56qDAZF+9iGzXYo580jc3R234z4=",
"dev": true
},
+ "collection-visit": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
+ "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=",
+ "dev": true,
+ "requires": {
+ "map-visit": "^1.0.0",
+ "object-visit": "^1.0.0"
+ }
+ },
"color-convert": {
"version": "1.9.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz",
"integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==",
"dev": true,
"requires": {
- "color-name": "1.1.3"
+ "color-name": "^1.1.1"
}
},
"color-name": {
@@ -462,7 +631,7 @@
"integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=",
"dev": true,
"requires": {
- "delayed-stream": "1.0.0"
+ "delayed-stream": "~1.0.0"
}
},
"commander": {
@@ -477,19 +646,25 @@
"integrity": "sha1-PAPwd2uGo239mgosl8YwfzMggv4=",
"dev": true,
"requires": {
- "readable-stream": "2.3.4"
+ "readable-stream": "^2.0.4"
}
},
+ "component-emitter": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
+ "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=",
+ "dev": true
+ },
"compress-commons": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz",
"integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=",
"dev": true,
"requires": {
- "buffer-crc32": "0.2.13",
- "crc32-stream": "2.0.0",
- "normalize-path": "2.1.1",
- "readable-stream": "2.3.4"
+ "buffer-crc32": "^0.2.1",
+ "crc32-stream": "^2.0.0",
+ "normalize-path": "^2.0.0",
+ "readable-stream": "^2.0.0"
}
},
"concat-map": {
@@ -504,9 +679,9 @@
"integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=",
"dev": true,
"requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.4",
- "typedarray": "0.0.6"
+ "inherits": "^2.0.3",
+ "readable-stream": "^2.2.2",
+ "typedarray": "^0.0.6"
}
},
"console-browserify": {
@@ -515,7 +690,7 @@
"integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=",
"dev": true,
"requires": {
- "date-now": "0.1.4"
+ "date-now": "^0.1.4"
}
},
"console-control-strings": {
@@ -524,10 +699,16 @@
"integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
"dev": true
},
- "content-type": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
- "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==",
+ "continuable-cache": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz",
+ "integrity": "sha1-vXJ6f67XfnH/OYWskzUakSczrQ8=",
+ "dev": true
+ },
+ "copy-descriptor": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
+ "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=",
"dev": true
},
"core-js": {
@@ -554,8 +735,8 @@
"integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=",
"dev": true,
"requires": {
- "crc": "3.5.0",
- "readable-stream": "2.3.4"
+ "crc": "^3.4.4",
+ "readable-stream": "^2.0.0"
}
},
"cross-spawn": {
@@ -564,8 +745,8 @@
"integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=",
"dev": true,
"requires": {
- "lru-cache": "4.1.1",
- "which": "1.2.14"
+ "lru-cache": "^4.0.1",
+ "which": "^1.2.9"
}
},
"cryptiles": {
@@ -574,7 +755,7 @@
"integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=",
"dev": true,
"requires": {
- "boom": "5.2.0"
+ "boom": "5.x.x"
},
"dependencies": {
"boom": {
@@ -583,7 +764,7 @@
"integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==",
"dev": true,
"requires": {
- "hoek": "4.2.1"
+ "hoek": "4.x.x"
}
}
}
@@ -594,9 +775,9 @@
"integrity": "sha512-U5ETe1IOjq2h56ZcBE3oe9rT7XryCH6IKgPMv0L7sSk6w29yR3p5egCK0T3BDNHHV95OoUBgXsqiVG+3a900Ag==",
"dev": true,
"requires": {
- "babel-runtime": "6.26.0",
- "babylon": "6.18.0",
- "source-map-support": "0.4.18"
+ "babel-runtime": "^6.9.2",
+ "babylon": "^6.8.1",
+ "source-map-support": "^0.4.0"
}
},
"currently-unhandled": {
@@ -605,7 +786,7 @@
"integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
"dev": true,
"requires": {
- "array-find-index": "1.0.2"
+ "array-find-index": "^1.0.1"
}
},
"cycle": {
@@ -620,7 +801,7 @@
"integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
"dev": true,
"requires": {
- "assert-plus": "1.0.0"
+ "assert-plus": "^1.0.0"
}
},
"date-now": {
@@ -635,17 +816,17 @@
"integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=",
"dev": true,
"requires": {
- "get-stdin": "4.0.1",
- "meow": "3.7.0"
+ "get-stdin": "^4.0.1",
+ "meow": "^3.3.0"
}
},
"debug": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz",
- "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=",
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"dev": true,
"requires": {
- "ms": "0.7.1"
+ "ms": "2.0.0"
}
},
"decamelize": {
@@ -654,6 +835,12 @@
"integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
"dev": true
},
+ "decode-uri-component": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz",
+ "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=",
+ "dev": true
+ },
"decompress-response": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz",
@@ -661,7 +848,7 @@
"dev": true,
"optional": true,
"requires": {
- "mimic-response": "1.0.0"
+ "mimic-response": "^1.0.0"
}
},
"deep-equal": {
@@ -677,6 +864,47 @@
"dev": true,
"optional": true
},
+ "define-property": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
+ "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^1.0.2",
+ "isobject": "^3.0.1"
+ },
+ "dependencies": {
+ "is-accessor-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-data-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-descriptor": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+ "dev": true,
+ "requires": {
+ "is-accessor-descriptor": "^1.0.0",
+ "is-data-descriptor": "^1.0.0",
+ "kind-of": "^6.0.2"
+ }
+ }
+ }
+ },
"delayed-stream": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
@@ -689,10 +917,10 @@
"integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
"dev": true
},
- "depd": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
- "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=",
+ "detect-file": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz",
+ "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=",
"dev": true
},
"detect-libc": {
@@ -708,8 +936,8 @@
"integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=",
"dev": true,
"requires": {
- "domelementtype": "1.1.3",
- "entities": "1.1.1"
+ "domelementtype": "~1.1.1",
+ "entities": "~1.1.1"
},
"dependencies": {
"domelementtype": {
@@ -738,7 +966,7 @@
"integrity": "sha1-LeWaCCLVAn+r/28DLCsloqir5zg=",
"dev": true,
"requires": {
- "domelementtype": "1.3.0"
+ "domelementtype": "1"
}
},
"domutils": {
@@ -747,8 +975,8 @@
"integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=",
"dev": true,
"requires": {
- "dom-serializer": "0.1.0",
- "domelementtype": "1.3.0"
+ "dom-serializer": "0",
+ "domelementtype": "1"
}
},
"duplexer": {
@@ -763,8 +991,8 @@
"integrity": "sha1-3uUim98KtrogEqOV4bhpq/iBNHM=",
"dev": true,
"requires": {
- "onetime": "1.1.0",
- "set-immediate-shim": "1.0.1"
+ "onetime": "^1.0.0",
+ "set-immediate-shim": "^1.0.0"
}
},
"ecc-jsbn": {
@@ -774,22 +1002,16 @@
"dev": true,
"optional": true,
"requires": {
- "jsbn": "0.1.1"
+ "jsbn": "~0.1.0"
}
},
- "ee-first": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
- "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=",
- "dev": true
- },
"encoding": {
"version": "0.1.12",
"resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz",
"integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=",
"dev": true,
"requires": {
- "iconv-lite": "0.4.19"
+ "iconv-lite": "~0.4.13"
}
},
"end-of-stream": {
@@ -798,7 +1020,7 @@
"integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==",
"dev": true,
"requires": {
- "once": "1.4.0"
+ "once": "^1.4.0"
}
},
"entities": {
@@ -807,15 +1029,32 @@
"integrity": "sha1-sph6o4ITR/zeZCsk/fyeT7cSvyY=",
"dev": true
},
+ "error": {
+ "version": "7.0.2",
+ "resolved": "https://registry.npmjs.org/error/-/error-7.0.2.tgz",
+ "integrity": "sha1-pfdf/02ZJhJt2sDqXcOOaJFTywI=",
+ "dev": true,
+ "requires": {
+ "string-template": "~0.2.1",
+ "xtend": "~4.0.0"
+ }
+ },
"error-ex": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz",
"integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=",
"dev": true,
"requires": {
- "is-arrayish": "0.2.1"
+ "is-arrayish": "^0.2.1"
}
},
+ "es6-promise": {
+ "version": "4.2.4",
+ "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz",
+ "integrity": "sha512-/NdNZVJg+uZgtm9eS3O6lrOLYmQag2DjdEXuPaHlZ6RuVqgqaVZfgYCepEIKsLqwdQArOPtC3XzRLqGGfT8KQQ==",
+ "dev": true,
+ "optional": true
+ },
"escape-string-regexp": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
@@ -846,6 +1085,41 @@
"integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
"dev": true
},
+ "expand-brackets": {
+ "version": "2.1.4",
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
+ "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=",
+ "dev": true,
+ "requires": {
+ "debug": "^2.3.3",
+ "define-property": "^0.2.5",
+ "extend-shallow": "^2.0.1",
+ "posix-character-classes": "^0.1.0",
+ "regex-not": "^1.0.0",
+ "snapdragon": "^0.8.1",
+ "to-regex": "^3.0.1"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^0.1.0"
+ }
+ },
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ }
+ }
+ },
"expand-template": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/expand-template/-/expand-template-1.1.0.tgz",
@@ -853,12 +1127,135 @@
"dev": true,
"optional": true
},
+ "expand-tilde": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz",
+ "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=",
+ "dev": true,
+ "requires": {
+ "homedir-polyfill": "^1.0.1"
+ }
+ },
"extend": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz",
"integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=",
"dev": true
},
+ "extend-shallow": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
+ "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=",
+ "dev": true,
+ "requires": {
+ "assign-symbols": "^1.0.0",
+ "is-extendable": "^1.0.1"
+ },
+ "dependencies": {
+ "is-extendable": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
+ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
+ "dev": true,
+ "requires": {
+ "is-plain-object": "^2.0.4"
+ }
+ }
+ }
+ },
+ "extglob": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
+ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
+ "dev": true,
+ "requires": {
+ "array-unique": "^0.3.2",
+ "define-property": "^1.0.0",
+ "expand-brackets": "^2.1.4",
+ "extend-shallow": "^2.0.1",
+ "fragment-cache": "^0.2.1",
+ "regex-not": "^1.0.0",
+ "snapdragon": "^0.8.1",
+ "to-regex": "^3.0.1"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^1.0.0"
+ }
+ },
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-data-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-descriptor": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+ "dev": true,
+ "requires": {
+ "is-accessor-descriptor": "^1.0.0",
+ "is-data-descriptor": "^1.0.0",
+ "kind-of": "^6.0.2"
+ }
+ }
+ }
+ },
+ "extract-zip": {
+ "version": "1.6.7",
+ "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.7.tgz",
+ "integrity": "sha1-qEC0uK9kAyZMjbV/Txp0Mz74H+k=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "concat-stream": "1.6.2",
+ "debug": "2.6.9",
+ "mkdirp": "0.5.1",
+ "yauzl": "2.4.1"
+ },
+ "dependencies": {
+ "concat-stream": {
+ "version": "1.6.2",
+ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
+ "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "buffer-from": "^1.0.0",
+ "inherits": "^2.0.3",
+ "readable-stream": "^2.2.2",
+ "typedarray": "^0.0.6"
+ }
+ }
+ }
+ },
"extsprintf": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
@@ -889,7 +1286,17 @@
"integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=",
"dev": true,
"requires": {
- "websocket-driver": "0.7.0"
+ "websocket-driver": ">=0.5.1"
+ }
+ },
+ "fd-slicer": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz",
+ "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "pend": "~1.2.0"
}
},
"figures": {
@@ -898,8 +1305,8 @@
"integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=",
"dev": true,
"requires": {
- "escape-string-regexp": "1.0.5",
- "object-assign": "4.1.1"
+ "escape-string-regexp": "^1.0.5",
+ "object-assign": "^4.1.0"
}
},
"file-sync-cmp": {
@@ -908,14 +1315,37 @@
"integrity": "sha1-peeo/7+kk7Q7kju9TKiaU7Y7YSs=",
"dev": true
},
+ "fill-range": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
+ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
+ "dev": true,
+ "requires": {
+ "extend-shallow": "^2.0.1",
+ "is-number": "^3.0.0",
+ "repeat-string": "^1.6.1",
+ "to-regex-range": "^2.1.0"
+ },
+ "dependencies": {
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ }
+ }
+ },
"find-up": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
"integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
"dev": true,
"requires": {
- "path-exists": "2.1.0",
- "pinkie-promise": "2.0.1"
+ "path-exists": "^2.0.0",
+ "pinkie-promise": "^2.0.0"
}
},
"findup": {
@@ -924,8 +1354,8 @@
"integrity": "sha1-itkpozk7rGJ5V6fl3kYjsGsOLOs=",
"dev": true,
"requires": {
- "colors": "0.6.2",
- "commander": "2.1.0"
+ "colors": "~0.6.0-1",
+ "commander": "~2.1.0"
},
"dependencies": {
"commander": {
@@ -942,7 +1372,7 @@
"integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=",
"dev": true,
"requires": {
- "glob": "5.0.15"
+ "glob": "~5.0.0"
},
"dependencies": {
"glob": {
@@ -951,15 +1381,49 @@
"integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=",
"dev": true,
"requires": {
- "inflight": "1.0.6",
- "inherits": "2.0.3",
- "minimatch": "3.0.4",
- "once": "1.4.0",
- "path-is-absolute": "1.0.1"
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "2 || 3",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
}
}
}
},
+ "fined": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/fined/-/fined-1.1.0.tgz",
+ "integrity": "sha1-s33IRLdqL15wgeiE98CuNE8VNHY=",
+ "dev": true,
+ "requires": {
+ "expand-tilde": "^2.0.2",
+ "is-plain-object": "^2.0.3",
+ "object.defaults": "^1.1.0",
+ "object.pick": "^1.2.0",
+ "parse-filepath": "^1.0.1"
+ }
+ },
+ "flagged-respawn": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.0.tgz",
+ "integrity": "sha1-Tnmumy6zi/hrO7Vr8+ClaqX8q9c=",
+ "dev": true
+ },
+ "for-in": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
+ "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
+ "dev": true
+ },
+ "for-own": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz",
+ "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=",
+ "dev": true,
+ "requires": {
+ "for-in": "^1.0.1"
+ }
+ },
"forever-agent": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
@@ -972,9 +1436,30 @@
"integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=",
"dev": true,
"requires": {
- "asynckit": "0.4.0",
+ "asynckit": "^0.4.0",
"combined-stream": "1.0.6",
- "mime-types": "2.1.18"
+ "mime-types": "^2.1.12"
+ }
+ },
+ "fragment-cache": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
+ "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=",
+ "dev": true,
+ "requires": {
+ "map-cache": "^0.2.2"
+ }
+ },
+ "fs-extra": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz",
+ "integrity": "sha1-zTzl9+fLYUWIP8rjGR6Yd/hYeVA=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "graceful-fs": "^4.1.2",
+ "jsonfile": "^2.1.0",
+ "klaw": "^1.0.0"
}
},
"fs.realpath": {
@@ -989,10 +1474,10 @@
"integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=",
"dev": true,
"requires": {
- "graceful-fs": "4.1.11",
- "inherits": "2.0.3",
- "mkdirp": "0.5.1",
- "rimraf": "2.2.8"
+ "graceful-fs": "^4.1.2",
+ "inherits": "~2.0.0",
+ "mkdirp": ">=0.5 0",
+ "rimraf": "2"
}
},
"gauge": {
@@ -1001,14 +1486,14 @@
"integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
"dev": true,
"requires": {
- "aproba": "1.2.0",
- "console-control-strings": "1.1.0",
- "has-unicode": "2.0.1",
- "object-assign": "4.1.1",
- "signal-exit": "3.0.2",
- "string-width": "1.0.2",
- "strip-ansi": "3.0.1",
- "wide-align": "1.1.2"
+ "aproba": "^1.0.3",
+ "console-control-strings": "^1.0.0",
+ "has-unicode": "^2.0.0",
+ "object-assign": "^4.1.0",
+ "signal-exit": "^3.0.0",
+ "string-width": "^1.0.1",
+ "strip-ansi": "^3.0.1",
+ "wide-align": "^1.1.0"
}
},
"gaze": {
@@ -1017,7 +1502,7 @@
"integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=",
"dev": true,
"requires": {
- "globule": "1.2.0"
+ "globule": "^1.0.0"
}
},
"generate-function": {
@@ -1032,7 +1517,7 @@
"integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=",
"dev": true,
"requires": {
- "is-property": "1.0.2"
+ "is-property": "^1.0.0"
}
},
"get-caller-file": {
@@ -1047,6 +1532,12 @@
"integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
"dev": true
},
+ "get-value": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
+ "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=",
+ "dev": true
+ },
"getobject": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz",
@@ -1059,7 +1550,7 @@
"integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
"dev": true,
"requires": {
- "assert-plus": "1.0.0"
+ "assert-plus": "^1.0.0"
}
},
"gettext-parser": {
@@ -1068,8 +1559,8 @@
"integrity": "sha512-W4t55eB/c7WrH0gbCHFiHuaEnJ1WiPJVnbFFiNEoh2QkOmuSLxs0PmJDGAmCQuTJCU740Fmb6D+2D/2xECWZGQ==",
"dev": true,
"requires": {
- "encoding": "0.1.12",
- "safe-buffer": "5.1.1"
+ "encoding": "^0.1.12",
+ "safe-buffer": "^5.1.1"
}
},
"github-from-package": {
@@ -1085,12 +1576,36 @@
"integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=",
"dev": true,
"requires": {
- "fs.realpath": "1.0.0",
- "inflight": "1.0.6",
- "inherits": "2.0.3",
- "minimatch": "3.0.4",
- "once": "1.4.0",
- "path-is-absolute": "1.0.1"
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.2",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ },
+ "global-modules": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz",
+ "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==",
+ "dev": true,
+ "requires": {
+ "global-prefix": "^1.0.1",
+ "is-windows": "^1.0.1",
+ "resolve-dir": "^1.0.0"
+ }
+ },
+ "global-prefix": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz",
+ "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=",
+ "dev": true,
+ "requires": {
+ "expand-tilde": "^2.0.2",
+ "homedir-polyfill": "^1.0.1",
+ "ini": "^1.3.4",
+ "is-windows": "^1.0.1",
+ "which": "^1.2.14"
}
},
"globule": {
@@ -1099,9 +1614,9 @@
"integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=",
"dev": true,
"requires": {
- "glob": "7.1.2",
- "lodash": "4.17.5",
- "minimatch": "3.0.4"
+ "glob": "~7.1.1",
+ "lodash": "~4.17.4",
+ "minimatch": "~3.0.2"
},
"dependencies": {
"glob": {
@@ -1110,12 +1625,12 @@
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
"dev": true,
"requires": {
- "fs.realpath": "1.0.0",
- "inflight": "1.0.6",
- "inherits": "2.0.3",
- "minimatch": "3.0.4",
- "once": "1.4.0",
- "path-is-absolute": "1.0.1"
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
}
},
"lodash": {
@@ -1130,7 +1645,7 @@
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"dev": true,
"requires": {
- "brace-expansion": "1.1.11"
+ "brace-expansion": "^1.1.7"
}
}
}
@@ -1148,27 +1663,28 @@
"dev": true
},
"grunt": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.0.2.tgz",
- "integrity": "sha1-TmpeaVtwRy/VME9fqeNCNoNqc7w=",
- "dev": true,
- "requires": {
- "coffeescript": "1.10.0",
- "dateformat": "1.0.12",
- "eventemitter2": "0.4.14",
- "exit": "0.1.2",
- "findup-sync": "0.3.0",
- "glob": "7.0.6",
- "grunt-cli": "1.2.0",
- "grunt-known-options": "1.1.0",
- "grunt-legacy-log": "1.0.0",
- "grunt-legacy-util": "1.0.0",
- "iconv-lite": "0.4.19",
- "js-yaml": "3.5.5",
- "minimatch": "3.0.4",
- "nopt": "3.0.6",
- "path-is-absolute": "1.0.1",
- "rimraf": "2.2.8"
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.0.3.tgz",
+ "integrity": "sha512-/JzmZNPfKorlCrrmxWqQO4JVodO+DVd5XX4DkocL/1WlLlKVLE9+SdEIempOAxDhWPysLle6afvn/hg7Ck2k9g==",
+ "dev": true,
+ "requires": {
+ "coffeescript": "~1.10.0",
+ "dateformat": "~1.0.12",
+ "eventemitter2": "~0.4.13",
+ "exit": "~0.1.1",
+ "findup-sync": "~0.3.0",
+ "glob": "~7.0.0",
+ "grunt-cli": "~1.2.0",
+ "grunt-known-options": "~1.1.0",
+ "grunt-legacy-log": "~2.0.0",
+ "grunt-legacy-util": "~1.1.1",
+ "iconv-lite": "~0.4.13",
+ "js-yaml": "~3.5.2",
+ "minimatch": "~3.0.2",
+ "mkdirp": "~0.5.1",
+ "nopt": "~3.0.6",
+ "path-is-absolute": "~1.0.0",
+ "rimraf": "~2.6.2"
},
"dependencies": {
"grunt-cli": {
@@ -1177,10 +1693,19 @@
"integrity": "sha1-VisRnrsGndtGSs4oRVAb6Xs1tqg=",
"dev": true,
"requires": {
- "findup-sync": "0.3.0",
- "grunt-known-options": "1.1.0",
- "nopt": "3.0.6",
- "resolve": "1.1.7"
+ "findup-sync": "~0.3.0",
+ "grunt-known-options": "~1.1.0",
+ "nopt": "~3.0.6",
+ "resolve": "~1.1.0"
+ }
+ },
+ "rimraf": {
+ "version": "2.6.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz",
+ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==",
+ "dev": true,
+ "requires": {
+ "glob": "^7.0.5"
}
}
}
@@ -1191,20 +1716,33 @@
"integrity": "sha1-slTQHh3pEwBdTbHFMD2QI7mD4Zs=",
"dev": true,
"requires": {
- "chalk": "0.2.1",
- "text-table": "0.2.0"
+ "chalk": "~0.2.1",
+ "text-table": "~0.2.0"
}
},
"grunt-cli": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.2.0.tgz",
- "integrity": "sha1-VisRnrsGndtGSs4oRVAb6Xs1tqg=",
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.3.0.tgz",
+ "integrity": "sha512-XPTy8cfSbIrf2Gt0WDjn3EzW/xm6n7RnFX0koi5T87xNBIzJbcM8BFf+rTheKHO+C7AmA/w8PWCCEGumg2yWtA==",
"dev": true,
"requires": {
- "findup-sync": "0.3.0",
- "grunt-known-options": "1.1.0",
- "nopt": "3.0.6",
- "resolve": "1.1.7"
+ "grunt-known-options": "~1.1.0",
+ "interpret": "~1.1.0",
+ "liftoff": "~2.5.0",
+ "nopt": "~4.0.1",
+ "v8flags": "~3.0.2"
+ },
+ "dependencies": {
+ "nopt": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz",
+ "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=",
+ "dev": true,
+ "requires": {
+ "abbrev": "1",
+ "osenv": "^0.1.4"
+ }
+ }
}
},
"grunt-contrib-clean": {
@@ -1213,8 +1751,8 @@
"integrity": "sha1-Vkq/LQN4qYOhW54/MO51tzjEBjg=",
"dev": true,
"requires": {
- "async": "1.5.2",
- "rimraf": "2.6.2"
+ "async": "^1.5.2",
+ "rimraf": "^2.5.1"
},
"dependencies": {
"rimraf": {
@@ -1223,7 +1761,7 @@
"integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==",
"dev": true,
"requires": {
- "glob": "7.0.6"
+ "glob": "^7.0.5"
}
}
}
@@ -1234,12 +1772,12 @@
"integrity": "sha1-Ac7/ucY39S5wgfRjdQmD0KOw+nM=",
"dev": true,
"requires": {
- "archiver": "1.3.0",
- "chalk": "1.1.3",
- "iltorb": "1.3.10",
- "lodash": "4.17.5",
- "pretty-bytes": "4.0.2",
- "stream-buffers": "2.2.0"
+ "archiver": "^1.3.0",
+ "chalk": "^1.1.1",
+ "iltorb": "^1.0.13",
+ "lodash": "^4.7.0",
+ "pretty-bytes": "^4.0.2",
+ "stream-buffers": "^2.1.0"
},
"dependencies": {
"ansi-styles": {
@@ -1254,11 +1792,11 @@
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"dev": true,
"requires": {
- "ansi-styles": "2.2.1",
- "escape-string-regexp": "1.0.5",
- "has-ansi": "2.0.0",
- "strip-ansi": "3.0.1",
- "supports-color": "2.0.0"
+ "ansi-styles": "^2.2.1",
+ "escape-string-regexp": "^1.0.2",
+ "has-ansi": "^2.0.0",
+ "strip-ansi": "^3.0.0",
+ "supports-color": "^2.0.0"
}
},
"lodash": {
@@ -1275,8 +1813,8 @@
"integrity": "sha1-cGDGWB6QS4qw0A8HbgqPbj58NXM=",
"dev": true,
"requires": {
- "chalk": "1.1.3",
- "file-sync-cmp": "0.1.1"
+ "chalk": "^1.1.1",
+ "file-sync-cmp": "^0.1.0"
},
"dependencies": {
"ansi-styles": {
@@ -1291,11 +1829,11 @@
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"dev": true,
"requires": {
- "ansi-styles": "2.2.1",
- "escape-string-regexp": "1.0.5",
- "has-ansi": "2.0.0",
- "strip-ansi": "3.0.1",
- "supports-color": "2.0.0"
+ "ansi-styles": "^2.2.1",
+ "escape-string-regexp": "^1.0.2",
+ "has-ansi": "^2.0.0",
+ "strip-ansi": "^3.0.0",
+ "supports-color": "^2.0.0"
}
}
}
@@ -1306,9 +1844,9 @@
"integrity": "sha512-IXNomhQ5ekVZbDbj/ik5YccoD9khU6LT2fDXqO1+/Txjq8cp0tQKjVS8i8EAbHOrSDkL7/UD6A7b+xj98gqh9w==",
"dev": true,
"requires": {
- "chalk": "1.1.3",
- "clean-css": "4.1.9",
- "maxmin": "2.1.0"
+ "chalk": "^1.0.0",
+ "clean-css": "~4.1.1",
+ "maxmin": "^2.1.0"
},
"dependencies": {
"ansi-styles": {
@@ -1323,11 +1861,11 @@
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"dev": true,
"requires": {
- "ansi-styles": "2.2.1",
- "escape-string-regexp": "1.0.5",
- "has-ansi": "2.0.0",
- "strip-ansi": "3.0.1",
- "supports-color": "2.0.0"
+ "ansi-styles": "^2.2.1",
+ "escape-string-regexp": "^1.0.2",
+ "has-ansi": "^2.0.0",
+ "strip-ansi": "^3.0.0",
+ "supports-color": "^2.0.0"
}
}
}
@@ -1338,9 +1876,9 @@
"integrity": "sha1-Np2QmyWTxA6L55lAshNAhQx5Oaw=",
"dev": true,
"requires": {
- "chalk": "1.1.3",
- "hooker": "0.2.3",
- "jshint": "2.9.5"
+ "chalk": "^1.1.1",
+ "hooker": "^0.2.3",
+ "jshint": "~2.9.4"
},
"dependencies": {
"ansi-styles": {
@@ -1355,11 +1893,11 @@
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"dev": true,
"requires": {
- "ansi-styles": "2.2.1",
- "escape-string-regexp": "1.0.5",
- "has-ansi": "2.0.0",
- "strip-ansi": "3.0.1",
- "supports-color": "2.0.0"
+ "ansi-styles": "^2.2.1",
+ "escape-string-regexp": "^1.0.2",
+ "has-ansi": "^2.0.0",
+ "strip-ansi": "^3.0.0",
+ "supports-color": "^2.0.0"
}
}
}
@@ -1370,10 +1908,10 @@
"integrity": "sha512-W9O7lJE3PlD8VCc5fyaf98QV7f5wEDiU4PBIh0+/6UBbk2LhgzEFS0/p+taH5UD3+PlEn7QPN0o06Z0To6SqXw==",
"dev": true,
"requires": {
- "chalk": "1.1.3",
- "maxmin": "1.1.0",
- "uglify-js": "3.3.12",
- "uri-path": "1.0.0"
+ "chalk": "^1.0.0",
+ "maxmin": "^1.1.0",
+ "uglify-js": "~3.3.0",
+ "uri-path": "^1.0.0"
},
"dependencies": {
"ansi-styles": {
@@ -1388,11 +1926,11 @@
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"dev": true,
"requires": {
- "ansi-styles": "2.2.1",
- "escape-string-regexp": "1.0.5",
- "has-ansi": "2.0.0",
- "strip-ansi": "3.0.1",
- "supports-color": "2.0.0"
+ "ansi-styles": "^2.2.1",
+ "escape-string-regexp": "^1.0.2",
+ "has-ansi": "^2.0.0",
+ "strip-ansi": "^3.0.0",
+ "supports-color": "^2.0.0"
}
},
"gzip-size": {
@@ -1401,8 +1939,8 @@
"integrity": "sha1-Zs+LEBBHInuVus5uodoMF37Vwi8=",
"dev": true,
"requires": {
- "browserify-zlib": "0.1.4",
- "concat-stream": "1.6.0"
+ "browserify-zlib": "^0.1.4",
+ "concat-stream": "^1.4.1"
}
},
"maxmin": {
@@ -1411,10 +1949,10 @@
"integrity": "sha1-cTZehKmd2Piz99X94vANHn9zvmE=",
"dev": true,
"requires": {
- "chalk": "1.1.3",
- "figures": "1.7.0",
- "gzip-size": "1.0.0",
- "pretty-bytes": "1.0.4"
+ "chalk": "^1.0.0",
+ "figures": "^1.0.1",
+ "gzip-size": "^1.0.0",
+ "pretty-bytes": "^1.0.0"
}
},
"pretty-bytes": {
@@ -1423,34 +1961,37 @@
"integrity": "sha1-CiLoIQYJrTVUL4yNXSFZr/B1HIQ=",
"dev": true,
"requires": {
- "get-stdin": "4.0.1",
- "meow": "3.7.0"
+ "get-stdin": "^4.0.1",
+ "meow": "^3.1.0"
}
}
}
},
"grunt-contrib-watch": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/grunt-contrib-watch/-/grunt-contrib-watch-1.0.0.tgz",
- "integrity": "sha1-hKGnodar0m7VaEE0lscxM+mQAY8=",
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/grunt-contrib-watch/-/grunt-contrib-watch-1.1.0.tgz",
+ "integrity": "sha512-yGweN+0DW5yM+oo58fRu/XIRrPcn3r4tQx+nL7eMRwjpvk+rQY6R8o94BPK0i2UhTg9FN21hS+m8vR8v9vXfeg==",
"dev": true,
"requires": {
- "async": "1.5.2",
- "gaze": "1.1.2",
- "lodash": "3.10.1",
- "tiny-lr": "0.2.1"
+ "async": "^2.6.0",
+ "gaze": "^1.1.0",
+ "lodash": "^4.17.10",
+ "tiny-lr": "^1.1.1"
},
"dependencies": {
"async": {
- "version": "1.5.2",
- "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
- "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=",
- "dev": true
+ "version": "2.6.1",
+ "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz",
+ "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==",
+ "dev": true,
+ "requires": {
+ "lodash": "^4.17.10"
+ }
},
"lodash": {
- "version": "3.10.1",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz",
- "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=",
+ "version": "4.17.10",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
+ "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
"dev": true
}
}
@@ -1462,16 +2003,15 @@
"dev": true
},
"grunt-legacy-log": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-1.0.0.tgz",
- "integrity": "sha1-+4bxgJhHvAfcR4Q/ns1srLYt8tU=",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-2.0.0.tgz",
+ "integrity": "sha512-1m3+5QvDYfR1ltr8hjiaiNjddxGdQWcH0rw1iKKiQnF0+xtgTazirSTGu68RchPyh1OBng1bBUjLmX8q9NpoCw==",
"dev": true,
"requires": {
- "colors": "1.1.2",
- "grunt-legacy-log-utils": "1.0.0",
- "hooker": "0.2.3",
- "lodash": "3.10.1",
- "underscore.string": "3.2.3"
+ "colors": "~1.1.2",
+ "grunt-legacy-log-utils": "~2.0.0",
+ "hooker": "~0.2.3",
+ "lodash": "~4.17.5"
},
"dependencies": {
"colors": {
@@ -1479,66 +2019,91 @@
"resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz",
"integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=",
"dev": true
+ },
+ "lodash": {
+ "version": "4.17.10",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
+ "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
+ "dev": true
}
}
},
"grunt-legacy-log-utils": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-1.0.0.tgz",
- "integrity": "sha1-p7ji0Ps1taUPSvmG/BEnSevJbz0=",
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.0.1.tgz",
+ "integrity": "sha512-o7uHyO/J+i2tXG8r2bZNlVk20vlIFJ9IEYyHMCQGfWYru8Jv3wTqKZzvV30YW9rWEjq0eP3cflQ1qWojIe9VFA==",
"dev": true,
"requires": {
- "chalk": "1.1.3",
- "lodash": "4.3.0"
+ "chalk": "~2.4.1",
+ "lodash": "~4.17.10"
},
"dependencies": {
"ansi-styles": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
- "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
- "dev": true
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^1.9.0"
+ }
},
"chalk": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
- "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz",
+ "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==",
"dev": true,
"requires": {
- "ansi-styles": "2.2.1",
- "escape-string-regexp": "1.0.5",
- "has-ansi": "2.0.0",
- "strip-ansi": "3.0.1",
- "supports-color": "2.0.0"
+ "ansi-styles": "^3.2.1",
+ "escape-string-regexp": "^1.0.5",
+ "supports-color": "^5.3.0"
}
},
"lodash": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.3.0.tgz",
- "integrity": "sha1-79nEpuxT87BUEkKZFcPkgk5NJaQ=",
+ "version": "4.17.10",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
+ "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
"dev": true
+ },
+ "supports-color": {
+ "version": "5.4.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz",
+ "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^3.0.0"
+ }
}
}
},
"grunt-legacy-util": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-1.0.0.tgz",
- "integrity": "sha1-OGqnjcbtUJhsKxiVcmWxtIq7m4Y=",
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-1.1.1.tgz",
+ "integrity": "sha512-9zyA29w/fBe6BIfjGENndwoe1Uy31BIXxTH3s8mga0Z5Bz2Sp4UCjkeyv2tI449ymkx3x26B+46FV4fXEddl5A==",
"dev": true,
"requires": {
- "async": "1.5.2",
- "exit": "0.1.2",
- "getobject": "0.1.0",
- "hooker": "0.2.3",
- "lodash": "4.3.0",
- "underscore.string": "3.2.3",
- "which": "1.2.14"
+ "async": "~1.5.2",
+ "exit": "~0.1.1",
+ "getobject": "~0.1.0",
+ "hooker": "~0.2.3",
+ "lodash": "~4.17.10",
+ "underscore.string": "~3.3.4",
+ "which": "~1.3.0"
},
"dependencies": {
"lodash": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.3.0.tgz",
- "integrity": "sha1-79nEpuxT87BUEkKZFcPkgk5NJaQ=",
+ "version": "4.17.10",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
+ "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
"dev": true
+ },
+ "which": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
+ "dev": true,
+ "requires": {
+ "isexe": "^2.0.0"
+ }
}
}
},
@@ -1548,8 +2113,8 @@
"integrity": "sha1-6eYc5DdAY5f546Sxv2aeR+cf/MM=",
"dev": true,
"requires": {
- "chalk": "1.1.3",
- "rtlcss": "2.2.1"
+ "chalk": "^1.0.0",
+ "rtlcss": "^2.0.0"
},
"dependencies": {
"ansi-styles": {
@@ -1564,11 +2129,11 @@
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"dev": true,
"requires": {
- "ansi-styles": "2.2.1",
- "escape-string-regexp": "1.0.5",
- "has-ansi": "2.0.0",
- "strip-ansi": "3.0.1",
- "supports-color": "2.0.0"
+ "ansi-styles": "^2.2.1",
+ "escape-string-regexp": "^1.0.2",
+ "has-ansi": "^2.0.0",
+ "strip-ansi": "^3.0.0",
+ "supports-color": "^2.0.0"
}
}
}
@@ -1579,9 +2144,9 @@
"integrity": "sha512-XkexnQt/9rhReNd+Y7T0n/2g5FqYOQKfi2iSlpwDqvgs7EgEaGTxNhnWzHnbW5oNRvzL9AHopBG3AgRxL0d+DA==",
"dev": true,
"requires": {
- "each-async": "1.1.1",
- "node-sass": "4.7.2",
- "object-assign": "4.1.1"
+ "each-async": "^1.0.0",
+ "node-sass": "^4.7.2",
+ "object-assign": "^4.0.1"
}
},
"grunt-shell": {
@@ -1590,8 +2155,8 @@
"integrity": "sha1-Q595FZ7RHmSmUaacyKPQK+v17MI=",
"dev": true,
"requires": {
- "chalk": "1.1.3",
- "npm-run-path": "2.0.2"
+ "chalk": "^1.0.0",
+ "npm-run-path": "^2.0.0"
},
"dependencies": {
"ansi-styles": {
@@ -1606,23 +2171,23 @@
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"dev": true,
"requires": {
- "ansi-styles": "2.2.1",
- "escape-string-regexp": "1.0.5",
- "has-ansi": "2.0.0",
- "strip-ansi": "3.0.1",
- "supports-color": "2.0.0"
+ "ansi-styles": "^2.2.1",
+ "escape-string-regexp": "^1.0.2",
+ "has-ansi": "^2.0.0",
+ "strip-ansi": "^3.0.0",
+ "supports-color": "^2.0.0"
}
}
}
},
"grunt-wp-i18n": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/grunt-wp-i18n/-/grunt-wp-i18n-1.0.1.tgz",
- "integrity": "sha512-0V+rBR0yNUGsmDrFaibP9i0G4FLFSumzMfGcny2LhdiW5MS+EwdNiuJ0qRWoiUzyvyYHpCF/8t+GBaIu/pb0iw==",
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/grunt-wp-i18n/-/grunt-wp-i18n-1.0.2.tgz",
+ "integrity": "sha512-s7DdR1wRYWvgeQOELL/s8AmWz0scVUq+h0yYVWvLx23kTXOBslvaD35NTvubyM+MO+k29bgND0gDDvS6sHixfg==",
"dev": true,
"requires": {
- "grunt": "1.0.2",
- "node-wp-i18n": "1.0.5"
+ "grunt": "^1.0.2",
+ "node-wp-i18n": "^1.0.5"
}
},
"gzip-size": {
@@ -1631,7 +2196,7 @@
"integrity": "sha1-VGGI6b3DN/Zzdy+BZgRks4nc5SA=",
"dev": true,
"requires": {
- "duplexer": "0.1.1"
+ "duplexer": "^0.1.1"
}
},
"har-schema": {
@@ -1646,8 +2211,8 @@
"integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=",
"dev": true,
"requires": {
- "ajv": "5.5.2",
- "har-schema": "2.0.0"
+ "ajv": "^5.1.0",
+ "har-schema": "^2.0.0"
}
},
"has-ansi": {
@@ -1656,7 +2221,7 @@
"integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
"dev": true,
"requires": {
- "ansi-regex": "2.1.1"
+ "ansi-regex": "^2.0.0"
}
},
"has-color": {
@@ -1677,16 +2242,59 @@
"integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=",
"dev": true
},
+ "has-value": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
+ "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=",
+ "dev": true,
+ "requires": {
+ "get-value": "^2.0.6",
+ "has-values": "^1.0.0",
+ "isobject": "^3.0.0"
+ }
+ },
+ "has-values": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz",
+ "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=",
+ "dev": true,
+ "requires": {
+ "is-number": "^3.0.0",
+ "kind-of": "^4.0.0"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
+ "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "hasha": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/hasha/-/hasha-2.2.0.tgz",
+ "integrity": "sha1-eNfL/B5tZjA/55g3NlmEUXsvbuE=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "is-stream": "^1.0.1",
+ "pinkie-promise": "^2.0.0"
+ }
+ },
"hawk": {
"version": "6.0.2",
"resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz",
"integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==",
"dev": true,
"requires": {
- "boom": "4.3.1",
- "cryptiles": "3.1.2",
- "hoek": "4.2.1",
- "sntp": "2.1.0"
+ "boom": "4.x.x",
+ "cryptiles": "3.x.x",
+ "hoek": "4.x.x",
+ "sntp": "2.x.x"
}
},
"hoek": {
@@ -1695,6 +2303,15 @@
"integrity": "sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA==",
"dev": true
},
+ "homedir-polyfill": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz",
+ "integrity": "sha1-TCu8inWJmP7r9e1oWA921GdotLw=",
+ "dev": true,
+ "requires": {
+ "parse-passwd": "^1.0.0"
+ }
+ },
"hooker": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz",
@@ -1713,11 +2330,11 @@
"integrity": "sha1-mWwosZFRaovoZQGn15dX5ccMEGg=",
"dev": true,
"requires": {
- "domelementtype": "1.3.0",
- "domhandler": "2.3.0",
- "domutils": "1.5.1",
- "entities": "1.0.0",
- "readable-stream": "1.1.14"
+ "domelementtype": "1",
+ "domhandler": "2.3",
+ "domutils": "1.5",
+ "entities": "1.0",
+ "readable-stream": "1.1"
},
"dependencies": {
"isarray": {
@@ -1732,10 +2349,10 @@
"integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
"dev": true,
"requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.1",
"isarray": "0.0.1",
- "string_decoder": "0.10.31"
+ "string_decoder": "~0.10.x"
}
},
"string_decoder": {
@@ -1746,20 +2363,10 @@
}
}
},
- "http-errors": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.3.1.tgz",
- "integrity": "sha1-GX4izevUGYWF6GlO9nhhl7ke2UI=",
- "dev": true,
- "requires": {
- "inherits": "2.0.3",
- "statuses": "1.4.0"
- }
- },
"http-parser-js": {
- "version": "0.4.10",
- "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.10.tgz",
- "integrity": "sha1-ksnBN0w1CF912zWexWzCV8u5P6Q=",
+ "version": "0.4.13",
+ "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.13.tgz",
+ "integrity": "sha1-O9bW/ebjFyyTNMOzO2wZPYD+ETc=",
"dev": true
},
"http-signature": {
@@ -1768,9 +2375,9 @@
"integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
"dev": true,
"requires": {
- "assert-plus": "1.0.0",
- "jsprim": "1.4.1",
- "sshpk": "1.13.1"
+ "assert-plus": "^1.0.0",
+ "jsprim": "^1.2.2",
+ "sshpk": "^1.7.0"
}
},
"i": {
@@ -1792,10 +2399,10 @@
"dev": true,
"optional": true,
"requires": {
- "detect-libc": "0.2.0",
- "nan": "2.9.2",
- "node-gyp": "3.6.2",
- "prebuild-install": "2.5.1"
+ "detect-libc": "^0.2.0",
+ "nan": "^2.6.2",
+ "node-gyp": "^3.6.2",
+ "prebuild-install": "^2.3.0"
}
},
"in-publish": {
@@ -1810,7 +2417,7 @@
"integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
"dev": true,
"requires": {
- "repeating": "2.0.1"
+ "repeating": "^2.0.0"
}
},
"inflight": {
@@ -1819,8 +2426,8 @@
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
"dev": true,
"requires": {
- "once": "1.4.0",
- "wrappy": "1.0.2"
+ "once": "^1.3.0",
+ "wrappy": "1"
}
},
"inherit": {
@@ -1839,8 +2446,13 @@
"version": "1.3.5",
"resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
"integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==",
- "dev": true,
- "optional": true
+ "dev": true
+ },
+ "interpret": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz",
+ "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=",
+ "dev": true
},
"invert-kv": {
"version": "1.0.0",
@@ -1848,28 +2460,115 @@
"integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=",
"dev": true
},
+ "is-absolute": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz",
+ "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==",
+ "dev": true,
+ "requires": {
+ "is-relative": "^1.0.0",
+ "is-windows": "^1.0.1"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
+ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.0.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
"is-arrayish": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
"integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
"dev": true
},
+ "is-buffer": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
+ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
+ "dev": true
+ },
"is-builtin-module": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz",
"integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=",
"dev": true,
"requires": {
- "builtin-modules": "1.1.1"
+ "builtin-modules": "^1.0.0"
+ }
+ },
+ "is-data-descriptor": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
+ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.0.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "is-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
+ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
+ "dev": true,
+ "requires": {
+ "is-accessor-descriptor": "^0.1.6",
+ "is-data-descriptor": "^0.1.4",
+ "kind-of": "^5.0.0"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
+ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
+ "dev": true
+ }
}
},
+ "is-extendable": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
+ "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
+ "dev": true
+ },
+ "is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
+ "dev": true
+ },
"is-finite": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz",
"integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=",
"dev": true,
"requires": {
- "number-is-nan": "1.0.1"
+ "number-is-nan": "^1.0.0"
}
},
"is-fullwidth-code-point": {
@@ -1878,7 +2577,16 @@
"integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
"dev": true,
"requires": {
- "number-is-nan": "1.0.1"
+ "number-is-nan": "^1.0.0"
+ }
+ },
+ "is-glob": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
+ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^2.1.0"
}
},
"is-my-ip-valid": {
@@ -1893,11 +2601,40 @@
"integrity": "sha512-IBhBslgngMQN8DDSppmgDv7RNrlFotuuDsKcrCP3+HbFaVivIBU7u9oiiErw8sH4ynx3+gOGQ3q2otkgiSi6kg==",
"dev": true,
"requires": {
- "generate-function": "2.0.0",
- "generate-object-property": "1.2.0",
- "is-my-ip-valid": "1.0.0",
- "jsonpointer": "4.0.1",
- "xtend": "4.0.1"
+ "generate-function": "^2.0.0",
+ "generate-object-property": "^1.1.0",
+ "is-my-ip-valid": "^1.0.0",
+ "jsonpointer": "^4.0.0",
+ "xtend": "^4.0.0"
+ }
+ },
+ "is-number": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
+ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.0.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "is-plain-object": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
+ "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
+ "dev": true,
+ "requires": {
+ "isobject": "^3.0.1"
}
},
"is-property": {
@@ -1906,18 +2643,49 @@
"integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=",
"dev": true
},
+ "is-relative": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz",
+ "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==",
+ "dev": true,
+ "requires": {
+ "is-unc-path": "^1.0.0"
+ }
+ },
+ "is-stream": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
+ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=",
+ "dev": true,
+ "optional": true
+ },
"is-typedarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
"integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
"dev": true
},
+ "is-unc-path": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
+ "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==",
+ "dev": true,
+ "requires": {
+ "unc-path-regex": "^0.1.2"
+ }
+ },
"is-utf8": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
"integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
"dev": true
},
+ "is-windows": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
+ "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
+ "dev": true
+ },
"isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
@@ -1930,6 +2698,12 @@
"integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
"dev": true
},
+ "isobject": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
+ "dev": true
+ },
"isstream": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
@@ -1948,8 +2722,8 @@
"integrity": "sha1-A3fDgBfKvHMisNH7zSWkkWQfL74=",
"dev": true,
"requires": {
- "argparse": "1.0.10",
- "esprima": "2.7.3"
+ "argparse": "^1.0.2",
+ "esprima": "^2.6.0"
}
},
"jsbn": {
@@ -1965,32 +2739,32 @@
"integrity": "sha1-cUG03/W4bjLQ6Z12S4NnZ8MNIBo=",
"dev": true,
"requires": {
- "chalk": "1.1.3",
- "cli-table": "0.3.1",
- "commander": "2.9.0",
- "cst": "0.4.10",
- "estraverse": "4.2.0",
- "exit": "0.1.2",
- "glob": "5.0.15",
+ "chalk": "~1.1.0",
+ "cli-table": "~0.3.1",
+ "commander": "~2.9.0",
+ "cst": "^0.4.3",
+ "estraverse": "^4.1.0",
+ "exit": "~0.1.2",
+ "glob": "^5.0.1",
"htmlparser2": "3.8.3",
- "js-yaml": "3.4.6",
- "jscs-jsdoc": "2.0.0",
- "jscs-preset-wikimedia": "1.0.0",
- "jsonlint": "1.6.3",
- "lodash": "3.10.1",
- "minimatch": "3.0.4",
- "natural-compare": "1.2.2",
- "pathval": "0.1.1",
- "prompt": "0.2.14",
- "reserved-words": "0.1.2",
- "resolve": "1.1.7",
- "strip-bom": "2.0.0",
- "strip-json-comments": "1.0.4",
- "to-double-quotes": "2.0.0",
- "to-single-quotes": "2.0.1",
- "vow": "0.4.17",
- "vow-fs": "0.3.6",
- "xmlbuilder": "3.1.0"
+ "js-yaml": "~3.4.0",
+ "jscs-jsdoc": "^2.0.0",
+ "jscs-preset-wikimedia": "~1.0.0",
+ "jsonlint": "~1.6.2",
+ "lodash": "~3.10.0",
+ "minimatch": "~3.0.0",
+ "natural-compare": "~1.2.2",
+ "pathval": "~0.1.1",
+ "prompt": "~0.2.14",
+ "reserved-words": "^0.1.1",
+ "resolve": "^1.1.6",
+ "strip-bom": "^2.0.0",
+ "strip-json-comments": "~1.0.2",
+ "to-double-quotes": "^2.0.0",
+ "to-single-quotes": "^2.0.0",
+ "vow": "~0.4.8",
+ "vow-fs": "~0.3.4",
+ "xmlbuilder": "^3.1.0"
},
"dependencies": {
"ansi-styles": {
@@ -2005,11 +2779,11 @@
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"dev": true,
"requires": {
- "ansi-styles": "2.2.1",
- "escape-string-regexp": "1.0.5",
- "has-ansi": "2.0.0",
- "strip-ansi": "3.0.1",
- "supports-color": "2.0.0"
+ "ansi-styles": "^2.2.1",
+ "escape-string-regexp": "^1.0.2",
+ "has-ansi": "^2.0.0",
+ "strip-ansi": "^3.0.0",
+ "supports-color": "^2.0.0"
}
},
"commander": {
@@ -2018,7 +2792,7 @@
"integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=",
"dev": true,
"requires": {
- "graceful-readlink": "1.0.1"
+ "graceful-readlink": ">= 1.0.0"
}
},
"glob": {
@@ -2027,11 +2801,11 @@
"integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=",
"dev": true,
"requires": {
- "inflight": "1.0.6",
- "inherits": "2.0.3",
- "minimatch": "3.0.4",
- "once": "1.4.0",
- "path-is-absolute": "1.0.1"
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "2 || 3",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
}
},
"js-yaml": {
@@ -2040,9 +2814,9 @@
"integrity": "sha1-a+GyP2JJ9T0pM3D9TRqqY84bTrA=",
"dev": true,
"requires": {
- "argparse": "1.0.10",
- "esprima": "2.7.3",
- "inherit": "2.2.6"
+ "argparse": "^1.0.2",
+ "esprima": "^2.6.0",
+ "inherit": "^2.2.2"
}
},
"strip-json-comments": {
@@ -2059,8 +2833,8 @@
"integrity": "sha1-9T684CmqMSW9iCkLpQ1k1FEKSHE=",
"dev": true,
"requires": {
- "comment-parser": "0.3.2",
- "jsdoctypeparser": "1.2.0"
+ "comment-parser": "^0.3.1",
+ "jsdoctypeparser": "~1.2.0"
}
},
"jscs-preset-wikimedia": {
@@ -2075,29 +2849,32 @@
"integrity": "sha1-597cFToRhJ/8UUEUSuhqfvDCU5I=",
"dev": true,
"requires": {
- "lodash": "3.10.1"
+ "lodash": "^3.7.0"
}
},
"jshint": {
- "version": "2.9.5",
- "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.9.5.tgz",
- "integrity": "sha1-HnJSkVzmgbQIJ+4UJIxG006apiw=",
- "dev": true,
- "requires": {
- "cli": "1.0.1",
- "console-browserify": "1.1.0",
- "exit": "0.1.2",
- "htmlparser2": "3.8.3",
- "lodash": "3.7.0",
- "minimatch": "3.0.4",
- "shelljs": "0.3.0",
- "strip-json-comments": "1.0.4"
+ "version": "2.9.6",
+ "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.9.6.tgz",
+ "integrity": "sha512-KO9SIAKTlJQOM4lE64GQUtGBRpTOuvbrRrSZw3AhUxMNG266nX9hK2cKA4SBhXOj0irJGyNyGSLT62HGOVDEOA==",
+ "dev": true,
+ "requires": {
+ "cli": "~1.0.0",
+ "console-browserify": "1.1.x",
+ "exit": "0.1.x",
+ "htmlparser2": "3.8.x",
+ "lodash": "~4.17.10",
+ "minimatch": "~3.0.2",
+ "phantom": "~4.0.1",
+ "phantomjs-prebuilt": "~2.1.7",
+ "shelljs": "0.3.x",
+ "strip-json-comments": "1.0.x",
+ "unicode-5.2.0": "^0.7.5"
},
"dependencies": {
"lodash": {
- "version": "3.7.0",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.7.0.tgz",
- "integrity": "sha1-Nni9irmVBXwHreg27S7wh9qBHUU=",
+ "version": "4.17.10",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
+ "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
"dev": true
},
"strip-json-comments": {
@@ -2126,14 +2903,24 @@
"integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=",
"dev": true
},
+ "jsonfile": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz",
+ "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "graceful-fs": "^4.1.6"
+ }
+ },
"jsonlint": {
"version": "1.6.3",
"resolved": "https://registry.npmjs.org/jsonlint/-/jsonlint-1.6.3.tgz",
"integrity": "sha512-jMVTMzP+7gU/IyC6hvKyWpUU8tmTkK5b3BPNuMI9U8Sit+YAWLlZwB6Y6YrdCxfg2kNz05p3XY3Bmm4m26Nv3A==",
"dev": true,
"requires": {
- "JSV": "4.0.2",
- "nomnom": "1.8.1"
+ "JSV": "^4.0.x",
+ "nomnom": "^1.5.x"
}
},
"jsonpointer": {
@@ -2154,13 +2941,36 @@
"verror": "1.10.0"
}
},
+ "kew": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/kew/-/kew-0.7.0.tgz",
+ "integrity": "sha1-edk9LTM2PW/dKXCzNdkUGtWR15s=",
+ "dev": true,
+ "optional": true
+ },
+ "kind-of": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz",
+ "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==",
+ "dev": true
+ },
+ "klaw": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz",
+ "integrity": "sha1-QIhDO0azsbolnXh4XY6W9zugJDk=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "graceful-fs": "^4.1.9"
+ }
+ },
"lazystream": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz",
"integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=",
"dev": true,
"requires": {
- "readable-stream": "2.3.4"
+ "readable-stream": "^2.0.5"
}
},
"lcid": {
@@ -2169,7 +2979,37 @@
"integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=",
"dev": true,
"requires": {
- "invert-kv": "1.0.0"
+ "invert-kv": "^1.0.0"
+ }
+ },
+ "liftoff": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz",
+ "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=",
+ "dev": true,
+ "requires": {
+ "extend": "^3.0.0",
+ "findup-sync": "^2.0.0",
+ "fined": "^1.0.1",
+ "flagged-respawn": "^1.0.0",
+ "is-plain-object": "^2.0.4",
+ "object.map": "^1.0.0",
+ "rechoir": "^0.6.2",
+ "resolve": "^1.1.7"
+ },
+ "dependencies": {
+ "findup-sync": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz",
+ "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=",
+ "dev": true,
+ "requires": {
+ "detect-file": "^1.0.0",
+ "is-glob": "^3.1.0",
+ "micromatch": "^3.0.4",
+ "resolve-dir": "^1.0.1"
+ }
+ }
}
},
"livereload-js": {
@@ -2184,11 +3024,11 @@
"integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
"dev": true,
"requires": {
- "graceful-fs": "4.1.11",
- "parse-json": "2.2.0",
- "pify": "2.3.0",
- "pinkie-promise": "2.0.1",
- "strip-bom": "2.0.0"
+ "graceful-fs": "^4.1.2",
+ "parse-json": "^2.2.0",
+ "pify": "^2.0.0",
+ "pinkie-promise": "^2.0.0",
+ "strip-bom": "^2.0.0"
}
},
"lodash": {
@@ -2221,8 +3061,8 @@
"integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
"dev": true,
"requires": {
- "currently-unhandled": "0.4.1",
- "signal-exit": "3.0.2"
+ "currently-unhandled": "^0.4.1",
+ "signal-exit": "^3.0.0"
}
},
"lru-cache": {
@@ -2231,26 +3071,50 @@
"integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==",
"dev": true,
"requires": {
- "pseudomap": "1.0.2",
- "yallist": "2.1.2"
+ "pseudomap": "^1.0.2",
+ "yallist": "^2.1.2"
+ }
+ },
+ "make-iterator": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz",
+ "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.2"
}
},
+ "map-cache": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
+ "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=",
+ "dev": true
+ },
"map-obj": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
"integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
"dev": true
},
+ "map-visit": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
+ "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=",
+ "dev": true,
+ "requires": {
+ "object-visit": "^1.0.0"
+ }
+ },
"maxmin": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/maxmin/-/maxmin-2.1.0.tgz",
"integrity": "sha1-TTsiCQPZXu5+t6x/qGTnLcCaMWY=",
"dev": true,
"requires": {
- "chalk": "1.1.3",
- "figures": "1.7.0",
- "gzip-size": "3.0.0",
- "pretty-bytes": "3.0.1"
+ "chalk": "^1.0.0",
+ "figures": "^1.0.1",
+ "gzip-size": "^3.0.0",
+ "pretty-bytes": "^3.0.0"
},
"dependencies": {
"ansi-styles": {
@@ -2265,11 +3129,11 @@
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"dev": true,
"requires": {
- "ansi-styles": "2.2.1",
- "escape-string-regexp": "1.0.5",
- "has-ansi": "2.0.0",
- "strip-ansi": "3.0.1",
- "supports-color": "2.0.0"
+ "ansi-styles": "^2.2.1",
+ "escape-string-regexp": "^1.0.2",
+ "has-ansi": "^2.0.0",
+ "strip-ansi": "^3.0.0",
+ "supports-color": "^2.0.0"
}
},
"pretty-bytes": {
@@ -2278,33 +3142,48 @@
"integrity": "sha1-J9AAjXeAY6C0gRuzXHnxvV1fvM8=",
"dev": true,
"requires": {
- "number-is-nan": "1.0.1"
+ "number-is-nan": "^1.0.0"
}
}
}
},
- "media-typer": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
- "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=",
- "dev": true
- },
"meow": {
"version": "3.7.0",
"resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
"integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
"dev": true,
"requires": {
- "camelcase-keys": "2.1.0",
- "decamelize": "1.2.0",
- "loud-rejection": "1.6.0",
- "map-obj": "1.0.1",
- "minimist": "1.2.0",
- "normalize-package-data": "2.4.0",
- "object-assign": "4.1.1",
- "read-pkg-up": "1.0.1",
- "redent": "1.0.0",
- "trim-newlines": "1.0.0"
+ "camelcase-keys": "^2.0.0",
+ "decamelize": "^1.1.2",
+ "loud-rejection": "^1.0.0",
+ "map-obj": "^1.0.1",
+ "minimist": "^1.1.3",
+ "normalize-package-data": "^2.3.4",
+ "object-assign": "^4.0.1",
+ "read-pkg-up": "^1.0.1",
+ "redent": "^1.0.0",
+ "trim-newlines": "^1.0.0"
+ }
+ },
+ "micromatch": {
+ "version": "3.1.10",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
+ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
+ "dev": true,
+ "requires": {
+ "arr-diff": "^4.0.0",
+ "array-unique": "^0.3.2",
+ "braces": "^2.3.1",
+ "define-property": "^2.0.2",
+ "extend-shallow": "^3.0.2",
+ "extglob": "^2.0.4",
+ "fragment-cache": "^0.2.1",
+ "kind-of": "^6.0.2",
+ "nanomatch": "^1.2.9",
+ "object.pick": "^1.3.0",
+ "regex-not": "^1.0.0",
+ "snapdragon": "^0.8.1",
+ "to-regex": "^3.0.2"
}
},
"mime-db": {
@@ -2319,7 +3198,7 @@
"integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==",
"dev": true,
"requires": {
- "mime-db": "1.33.0"
+ "mime-db": "~1.33.0"
}
},
"mimic-response": {
@@ -2335,7 +3214,7 @@
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"dev": true,
"requires": {
- "brace-expansion": "1.1.11"
+ "brace-expansion": "^1.1.7"
}
},
"minimist": {
@@ -2344,6 +3223,27 @@
"integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
"dev": true
},
+ "mixin-deep": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz",
+ "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==",
+ "dev": true,
+ "requires": {
+ "for-in": "^1.0.2",
+ "is-extendable": "^1.0.1"
+ },
+ "dependencies": {
+ "is-extendable": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
+ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
+ "dev": true,
+ "requires": {
+ "is-plain-object": "^2.0.4"
+ }
+ }
+ }
+ },
"mkdirp": {
"version": "0.5.1",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
@@ -2362,9 +3262,9 @@
}
},
"ms": {
- "version": "0.7.1",
- "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz",
- "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
"dev": true
},
"mute-stream": {
@@ -2379,6 +3279,25 @@
"integrity": "sha512-ltW65co7f3PQWBDbqVvaU1WtFJUsNW7sWWm4HINhbMQIyVyzIeyZ8toX5TC5eeooE6piZoaEh4cZkueSKG3KYw==",
"dev": true
},
+ "nanomatch": {
+ "version": "1.2.13",
+ "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz",
+ "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==",
+ "dev": true,
+ "requires": {
+ "arr-diff": "^4.0.0",
+ "array-unique": "^0.3.2",
+ "define-property": "^2.0.2",
+ "extend-shallow": "^3.0.2",
+ "fragment-cache": "^0.2.1",
+ "is-windows": "^1.0.2",
+ "kind-of": "^6.0.2",
+ "object.pick": "^1.3.0",
+ "regex-not": "^1.0.0",
+ "snapdragon": "^0.8.1",
+ "to-regex": "^3.0.1"
+ }
+ },
"natural-compare": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.2.2.tgz",
@@ -2398,7 +3317,7 @@
"dev": true,
"optional": true,
"requires": {
- "semver": "5.5.0"
+ "semver": "^5.4.1"
}
},
"node-bourbon": {
@@ -2407,7 +3326,7 @@
"integrity": "sha1-5ETx8JQ0q3ZQ6jGMKOLhA9P5Qs0=",
"dev": true,
"requires": {
- "bourbon": "4.3.4"
+ "bourbon": "^4.2.6"
}
},
"node-gyp": {
@@ -2416,19 +3335,19 @@
"integrity": "sha1-m/vlRWIoYoSDjnUOrAUpWFP6HGA=",
"dev": true,
"requires": {
- "fstream": "1.0.11",
- "glob": "7.0.6",
- "graceful-fs": "4.1.11",
- "minimatch": "3.0.4",
- "mkdirp": "0.5.1",
- "nopt": "3.0.6",
- "npmlog": "4.1.2",
- "osenv": "0.1.5",
- "request": "2.83.0",
- "rimraf": "2.2.8",
- "semver": "5.3.0",
- "tar": "2.2.1",
- "which": "1.2.14"
+ "fstream": "^1.0.0",
+ "glob": "^7.0.3",
+ "graceful-fs": "^4.1.2",
+ "minimatch": "^3.0.2",
+ "mkdirp": "^0.5.0",
+ "nopt": "2 || 3",
+ "npmlog": "0 || 1 || 2 || 3 || 4",
+ "osenv": "0",
+ "request": "^2",
+ "rimraf": "2",
+ "semver": "~5.3.0",
+ "tar": "^2.0.0",
+ "which": "1"
},
"dependencies": {
"semver": {
@@ -2445,25 +3364,25 @@
"integrity": "sha512-CaV+wLqZ7//Jdom5aUFCpGNoECd7BbNhjuwdsX/LkXBrHl8eb1Wjw4HvWqcFvhr5KuNgAk8i/myf/MQ1YYeroA==",
"dev": true,
"requires": {
- "async-foreach": "0.1.3",
- "chalk": "1.1.3",
- "cross-spawn": "3.0.1",
- "gaze": "1.1.2",
- "get-stdin": "4.0.1",
- "glob": "7.0.6",
- "in-publish": "2.0.0",
- "lodash.assign": "4.2.0",
- "lodash.clonedeep": "4.5.0",
- "lodash.mergewith": "4.6.1",
- "meow": "3.7.0",
- "mkdirp": "0.5.1",
- "nan": "2.9.2",
- "node-gyp": "3.6.2",
- "npmlog": "4.1.2",
- "request": "2.79.0",
- "sass-graph": "2.2.4",
- "stdout-stream": "1.4.0",
- "true-case-path": "1.0.2"
+ "async-foreach": "^0.1.3",
+ "chalk": "^1.1.1",
+ "cross-spawn": "^3.0.0",
+ "gaze": "^1.0.0",
+ "get-stdin": "^4.0.1",
+ "glob": "^7.0.3",
+ "in-publish": "^2.0.0",
+ "lodash.assign": "^4.2.0",
+ "lodash.clonedeep": "^4.3.2",
+ "lodash.mergewith": "^4.6.0",
+ "meow": "^3.7.0",
+ "mkdirp": "^0.5.1",
+ "nan": "^2.3.2",
+ "node-gyp": "^3.3.1",
+ "npmlog": "^4.0.0",
+ "request": "~2.79.0",
+ "sass-graph": "^2.2.4",
+ "stdout-stream": "^1.4.0",
+ "true-case-path": "^1.0.2"
},
"dependencies": {
"ansi-styles": {
@@ -2490,7 +3409,7 @@
"integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=",
"dev": true,
"requires": {
- "hoek": "2.16.3"
+ "hoek": "2.x.x"
}
},
"caseless": {
@@ -2505,11 +3424,11 @@
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"dev": true,
"requires": {
- "ansi-styles": "2.2.1",
- "escape-string-regexp": "1.0.5",
- "has-ansi": "2.0.0",
- "strip-ansi": "3.0.1",
- "supports-color": "2.0.0"
+ "ansi-styles": "^2.2.1",
+ "escape-string-regexp": "^1.0.2",
+ "has-ansi": "^2.0.0",
+ "strip-ansi": "^3.0.0",
+ "supports-color": "^2.0.0"
}
},
"cryptiles": {
@@ -2518,7 +3437,7 @@
"integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=",
"dev": true,
"requires": {
- "boom": "2.10.1"
+ "boom": "2.x.x"
}
},
"form-data": {
@@ -2527,9 +3446,9 @@
"integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=",
"dev": true,
"requires": {
- "asynckit": "0.4.0",
- "combined-stream": "1.0.6",
- "mime-types": "2.1.18"
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.5",
+ "mime-types": "^2.1.12"
}
},
"har-validator": {
@@ -2538,10 +3457,10 @@
"integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=",
"dev": true,
"requires": {
- "chalk": "1.1.3",
- "commander": "2.14.1",
- "is-my-json-valid": "2.17.2",
- "pinkie-promise": "2.0.1"
+ "chalk": "^1.1.1",
+ "commander": "^2.9.0",
+ "is-my-json-valid": "^2.12.4",
+ "pinkie-promise": "^2.0.0"
}
},
"hawk": {
@@ -2550,10 +3469,10 @@
"integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=",
"dev": true,
"requires": {
- "boom": "2.10.1",
- "cryptiles": "2.0.5",
- "hoek": "2.16.3",
- "sntp": "1.0.9"
+ "boom": "2.x.x",
+ "cryptiles": "2.x.x",
+ "hoek": "2.x.x",
+ "sntp": "1.x.x"
}
},
"hoek": {
@@ -2568,9 +3487,9 @@
"integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=",
"dev": true,
"requires": {
- "assert-plus": "0.2.0",
- "jsprim": "1.4.1",
- "sshpk": "1.13.1"
+ "assert-plus": "^0.2.0",
+ "jsprim": "^1.2.2",
+ "sshpk": "^1.7.0"
}
},
"qs": {
@@ -2585,26 +3504,26 @@
"integrity": "sha1-Tf5b9r6LjNw3/Pk+BLZVd3InEN4=",
"dev": true,
"requires": {
- "aws-sign2": "0.6.0",
- "aws4": "1.6.0",
- "caseless": "0.11.0",
- "combined-stream": "1.0.6",
- "extend": "3.0.1",
- "forever-agent": "0.6.1",
- "form-data": "2.1.4",
- "har-validator": "2.0.6",
- "hawk": "3.1.3",
- "http-signature": "1.1.1",
- "is-typedarray": "1.0.0",
- "isstream": "0.1.2",
- "json-stringify-safe": "5.0.1",
- "mime-types": "2.1.18",
- "oauth-sign": "0.8.2",
- "qs": "6.3.2",
- "stringstream": "0.0.5",
- "tough-cookie": "2.3.3",
- "tunnel-agent": "0.4.3",
- "uuid": "3.2.1"
+ "aws-sign2": "~0.6.0",
+ "aws4": "^1.2.1",
+ "caseless": "~0.11.0",
+ "combined-stream": "~1.0.5",
+ "extend": "~3.0.0",
+ "forever-agent": "~0.6.1",
+ "form-data": "~2.1.1",
+ "har-validator": "~2.0.6",
+ "hawk": "~3.1.3",
+ "http-signature": "~1.1.0",
+ "is-typedarray": "~1.0.0",
+ "isstream": "~0.1.2",
+ "json-stringify-safe": "~5.0.1",
+ "mime-types": "~2.1.7",
+ "oauth-sign": "~0.8.1",
+ "qs": "~6.3.0",
+ "stringstream": "~0.0.4",
+ "tough-cookie": "~2.3.0",
+ "tunnel-agent": "~0.4.1",
+ "uuid": "^3.0.0"
}
},
"sntp": {
@@ -2613,7 +3532,7 @@
"integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=",
"dev": true,
"requires": {
- "hoek": "2.16.3"
+ "hoek": "2.x.x"
}
},
"tunnel-agent": {
@@ -2625,24 +3544,24 @@
}
},
"node-wp-i18n": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/node-wp-i18n/-/node-wp-i18n-1.0.5.tgz",
- "integrity": "sha512-IqU2IR5XEptL3e+m4nxlKStS71Vcxe1lEQq8d33ou6T0c0JmoLk8rexs2ur6PBjJWGN5dhSG6y0NWMAS64C4mw==",
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/node-wp-i18n/-/node-wp-i18n-1.1.1.tgz",
+ "integrity": "sha512-SI3+vhddQDBh2pkOowqPdXs/YN/bRnNvR4gDmcSJaQ4P+z8jSuPRZTFFClaD/fVv0AG0zY/ku07oQuayr844Mg==",
"dev": true,
"requires": {
- "bluebird": "3.5.1",
- "gettext-parser": "1.3.1",
- "glob": "7.0.6",
- "lodash": "4.17.5",
- "minimist": "1.2.0",
- "mkdirp": "0.5.1",
- "tmp": "0.0.33"
+ "bluebird": "^3.4.1",
+ "gettext-parser": "^1.2.0",
+ "glob": "^7.0.5",
+ "lodash": "^4.14.2",
+ "minimist": "^1.2.0",
+ "mkdirp": "^0.5.1",
+ "tmp": "^0.0.33"
},
"dependencies": {
"lodash": {
- "version": "4.17.5",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz",
- "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
+ "version": "4.17.10",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
+ "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
"dev": true
}
}
@@ -2653,8 +3572,8 @@
"integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=",
"dev": true,
"requires": {
- "chalk": "0.4.0",
- "underscore": "1.6.0"
+ "chalk": "~0.4.0",
+ "underscore": "~1.6.0"
},
"dependencies": {
"ansi-styles": {
@@ -2669,9 +3588,9 @@
"integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=",
"dev": true,
"requires": {
- "ansi-styles": "1.0.0",
- "has-color": "0.1.7",
- "strip-ansi": "0.1.1"
+ "ansi-styles": "~1.0.0",
+ "has-color": "~0.1.0",
+ "strip-ansi": "~0.1.0"
}
},
"strip-ansi": {
@@ -2695,7 +3614,7 @@
"integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
"dev": true,
"requires": {
- "abbrev": "1.1.1"
+ "abbrev": "1"
}
},
"normalize-package-data": {
@@ -2704,10 +3623,10 @@
"integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==",
"dev": true,
"requires": {
- "hosted-git-info": "2.5.0",
- "is-builtin-module": "1.0.0",
- "semver": "5.5.0",
- "validate-npm-package-license": "3.0.1"
+ "hosted-git-info": "^2.1.4",
+ "is-builtin-module": "^1.0.0",
+ "semver": "2 || 3 || 4 || 5",
+ "validate-npm-package-license": "^3.0.1"
}
},
"normalize-path": {
@@ -2716,7 +3635,7 @@
"integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
"dev": true,
"requires": {
- "remove-trailing-separator": "1.1.0"
+ "remove-trailing-separator": "^1.0.1"
}
},
"npm-run-path": {
@@ -2725,7 +3644,7 @@
"integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=",
"dev": true,
"requires": {
- "path-key": "2.0.1"
+ "path-key": "^2.0.0"
}
},
"npmlog": {
@@ -2734,10 +3653,10 @@
"integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
"dev": true,
"requires": {
- "are-we-there-yet": "1.1.4",
- "console-control-strings": "1.1.0",
- "gauge": "2.7.4",
- "set-blocking": "2.0.0"
+ "are-we-there-yet": "~1.1.2",
+ "console-control-strings": "~1.1.0",
+ "gauge": "~2.7.3",
+ "set-blocking": "~2.0.0"
}
},
"number-is-nan": {
@@ -2758,13 +3677,75 @@
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
"dev": true
},
- "on-finished": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
- "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
+ "object-copy": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
+ "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=",
+ "dev": true,
+ "requires": {
+ "copy-descriptor": "^0.1.0",
+ "define-property": "^0.2.5",
+ "kind-of": "^3.0.3"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^0.1.0"
+ }
+ },
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "object-visit": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
+ "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=",
+ "dev": true,
+ "requires": {
+ "isobject": "^3.0.0"
+ }
+ },
+ "object.defaults": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz",
+ "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=",
+ "dev": true,
+ "requires": {
+ "array-each": "^1.0.1",
+ "array-slice": "^1.0.0",
+ "for-own": "^1.0.0",
+ "isobject": "^3.0.0"
+ }
+ },
+ "object.map": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz",
+ "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=",
"dev": true,
"requires": {
- "ee-first": "1.1.1"
+ "for-own": "^1.0.0",
+ "make-iterator": "^1.0.0"
+ }
+ },
+ "object.pick": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz",
+ "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=",
+ "dev": true,
+ "requires": {
+ "isobject": "^3.0.1"
}
},
"once": {
@@ -2773,7 +3754,7 @@
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
"dev": true,
"requires": {
- "wrappy": "1.0.2"
+ "wrappy": "1"
}
},
"onetime": {
@@ -2794,7 +3775,7 @@
"integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=",
"dev": true,
"requires": {
- "lcid": "1.0.0"
+ "lcid": "^1.0.0"
}
},
"os-tmpdir": {
@@ -2809,8 +3790,8 @@
"integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==",
"dev": true,
"requires": {
- "os-homedir": "1.0.2",
- "os-tmpdir": "1.0.2"
+ "os-homedir": "^1.0.0",
+ "os-tmpdir": "^1.0.0"
}
},
"pako": {
@@ -2819,19 +3800,36 @@
"integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=",
"dev": true
},
+ "parse-filepath": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz",
+ "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=",
+ "dev": true,
+ "requires": {
+ "is-absolute": "^1.0.0",
+ "map-cache": "^0.2.0",
+ "path-root": "^0.1.1"
+ }
+ },
"parse-json": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
"integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
"dev": true,
"requires": {
- "error-ex": "1.3.1"
+ "error-ex": "^1.2.0"
}
},
- "parseurl": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz",
- "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=",
+ "parse-passwd": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz",
+ "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=",
+ "dev": true
+ },
+ "pascalcase": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz",
+ "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=",
"dev": true
},
"path-exists": {
@@ -2840,7 +3838,7 @@
"integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
"dev": true,
"requires": {
- "pinkie-promise": "2.0.1"
+ "pinkie-promise": "^2.0.0"
}
},
"path-is-absolute": {
@@ -2855,15 +3853,30 @@
"integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=",
"dev": true
},
+ "path-root": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz",
+ "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=",
+ "dev": true,
+ "requires": {
+ "path-root-regex": "^0.1.0"
+ }
+ },
+ "path-root-regex": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz",
+ "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=",
+ "dev": true
+ },
"path-type": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
"integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
"dev": true,
"requires": {
- "graceful-fs": "4.1.11",
- "pify": "2.3.0",
- "pinkie-promise": "2.0.1"
+ "graceful-fs": "^4.1.2",
+ "pify": "^2.0.0",
+ "pinkie-promise": "^2.0.0"
}
},
"pathval": {
@@ -2872,12 +3885,80 @@
"integrity": "sha1-CPkRzcqczllCiA2ngXvAtyO2bYI=",
"dev": true
},
+ "pend": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
+ "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=",
+ "dev": true,
+ "optional": true
+ },
"performance-now": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
"integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=",
"dev": true
},
+ "phantom": {
+ "version": "4.0.12",
+ "resolved": "https://registry.npmjs.org/phantom/-/phantom-4.0.12.tgz",
+ "integrity": "sha512-Tz82XhtPmwCk1FFPmecy7yRGZG2btpzY2KI9fcoPT7zT9det0CcMyfBFPp1S8DqzsnQnm8ZYEfdy528mwVtksA==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "phantomjs-prebuilt": "^2.1.16",
+ "split": "^1.0.1",
+ "winston": "^2.4.0"
+ },
+ "dependencies": {
+ "async": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz",
+ "integrity": "sha1-+PwEyjoTeErenhZBr5hXjPvWR6k=",
+ "dev": true,
+ "optional": true
+ },
+ "colors": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz",
+ "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=",
+ "dev": true,
+ "optional": true
+ },
+ "winston": {
+ "version": "2.4.3",
+ "resolved": "https://registry.npmjs.org/winston/-/winston-2.4.3.tgz",
+ "integrity": "sha512-GYKuysPz2pxYAVJD2NPsDLP5Z79SDEzPm9/j4tCjkF/n89iBNGBMJcR+dMUqxgPNgoSs6fVygPi+Vl2oxIpBuw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "async": "~1.0.0",
+ "colors": "1.0.x",
+ "cycle": "1.0.x",
+ "eyes": "0.1.x",
+ "isstream": "0.1.x",
+ "stack-trace": "0.0.x"
+ }
+ }
+ }
+ },
+ "phantomjs-prebuilt": {
+ "version": "2.1.16",
+ "resolved": "https://registry.npmjs.org/phantomjs-prebuilt/-/phantomjs-prebuilt-2.1.16.tgz",
+ "integrity": "sha1-79ISpKOWbTZHaE6ouniFSb4q7+8=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "es6-promise": "^4.0.3",
+ "extract-zip": "^1.6.5",
+ "fs-extra": "^1.0.0",
+ "hasha": "^2.2.0",
+ "kew": "^0.7.0",
+ "progress": "^1.1.8",
+ "request": "^2.81.0",
+ "request-progress": "^2.0.1",
+ "which": "^1.2.10"
+ }
+ },
"pify": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
@@ -2896,7 +3977,7 @@
"integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
"dev": true,
"requires": {
- "pinkie": "2.0.4"
+ "pinkie": "^2.0.0"
}
},
"pkginfo": {
@@ -2905,15 +3986,21 @@
"integrity": "sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8=",
"dev": true
},
+ "posix-character-classes": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
+ "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=",
+ "dev": true
+ },
"postcss": {
"version": "6.0.19",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.19.tgz",
"integrity": "sha512-f13HRz0HtVwVaEuW6J6cOUCBLFtymhgyLPV7t4QEk2UD3twRI9IluDcQNdzQdBpiixkXj2OmzejhhTbSbDxNTg==",
"dev": true,
"requires": {
- "chalk": "2.3.1",
- "source-map": "0.6.1",
- "supports-color": "5.2.0"
+ "chalk": "^2.3.1",
+ "source-map": "^0.6.1",
+ "supports-color": "^5.2.0"
},
"dependencies": {
"ansi-styles": {
@@ -2922,7 +4009,7 @@
"integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==",
"dev": true,
"requires": {
- "color-convert": "1.9.1"
+ "color-convert": "^1.9.0"
}
},
"chalk": {
@@ -2931,9 +4018,9 @@
"integrity": "sha512-QUU4ofkDoMIVO7hcx1iPTISs88wsO8jA92RQIm4JAwZvFGGAV2hSAA1NX7oVj2Ej2Q6NDTcRDjPTFrMCRZoJ6g==",
"dev": true,
"requires": {
- "ansi-styles": "3.2.0",
- "escape-string-regexp": "1.0.5",
- "supports-color": "5.2.0"
+ "ansi-styles": "^3.2.0",
+ "escape-string-regexp": "^1.0.5",
+ "supports-color": "^5.2.0"
}
},
"source-map": {
@@ -2948,7 +4035,7 @@
"integrity": "sha512-F39vS48la4YvTZUPVeTqsjsFNrvcMwrV3RLZINsmHo+7djCvuUzSIeXOnZ5hmjef4bajL1dNccN+tg5XAliO5Q==",
"dev": true,
"requires": {
- "has-flag": "3.0.0"
+ "has-flag": "^3.0.0"
}
}
}
@@ -2960,21 +4047,21 @@
"dev": true,
"optional": true,
"requires": {
- "detect-libc": "1.0.3",
- "expand-template": "1.1.0",
+ "detect-libc": "^1.0.3",
+ "expand-template": "^1.0.2",
"github-from-package": "0.0.0",
- "minimist": "1.2.0",
- "mkdirp": "0.5.1",
- "node-abi": "2.3.0",
- "noop-logger": "0.1.1",
- "npmlog": "4.1.2",
- "os-homedir": "1.0.2",
- "pump": "2.0.1",
- "rc": "1.2.5",
- "simple-get": "2.7.0",
- "tar-fs": "1.16.0",
- "tunnel-agent": "0.6.0",
- "which-pm-runs": "1.0.0"
+ "minimist": "^1.2.0",
+ "mkdirp": "^0.5.1",
+ "node-abi": "^2.2.0",
+ "noop-logger": "^0.1.1",
+ "npmlog": "^4.0.1",
+ "os-homedir": "^1.0.1",
+ "pump": "^2.0.1",
+ "rc": "^1.1.6",
+ "simple-get": "^2.7.0",
+ "tar-fs": "^1.13.0",
+ "tunnel-agent": "^0.6.0",
+ "which-pm-runs": "^1.0.0"
},
"dependencies": {
"detect-libc": {
@@ -2998,17 +4085,24 @@
"integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==",
"dev": true
},
+ "progress": {
+ "version": "1.1.8",
+ "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz",
+ "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=",
+ "dev": true,
+ "optional": true
+ },
"prompt": {
"version": "0.2.14",
"resolved": "https://registry.npmjs.org/prompt/-/prompt-0.2.14.tgz",
"integrity": "sha1-V3VPZPVD/XsIRXB8gY7OYY8F/9w=",
"dev": true,
"requires": {
- "pkginfo": "0.4.1",
- "read": "1.0.7",
- "revalidator": "0.1.8",
- "utile": "0.2.1",
- "winston": "0.8.3"
+ "pkginfo": "0.x.x",
+ "read": "1.0.x",
+ "revalidator": "0.1.x",
+ "utile": "0.2.x",
+ "winston": "0.8.x"
}
},
"pseudomap": {
@@ -3024,8 +4118,8 @@
"dev": true,
"optional": true,
"requires": {
- "end-of-stream": "1.4.1",
- "once": "1.4.0"
+ "end-of-stream": "^1.1.0",
+ "once": "^1.3.1"
}
},
"punycode": {
@@ -3035,32 +4129,25 @@
"dev": true
},
"qs": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/qs/-/qs-5.1.0.tgz",
- "integrity": "sha1-TZMuXH6kEcynajEtOaYGIA/VDNk=",
+ "version": "6.5.2",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
+ "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==",
"dev": true
},
"raw-body": {
- "version": "2.1.7",
- "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.1.7.tgz",
- "integrity": "sha1-rf6s4uT7MJgFgBTQjActzFl1h3Q=",
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz",
+ "integrity": "sha1-HQJ8K/oRasxmI7yo8AAWVyqH1CU=",
"dev": true,
"requires": {
- "bytes": "2.4.0",
- "iconv-lite": "0.4.13",
- "unpipe": "1.0.0"
+ "bytes": "1",
+ "string_decoder": "0.10"
},
"dependencies": {
- "bytes": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-2.4.0.tgz",
- "integrity": "sha1-fZcZb51br39pNeJZhVSe3SpsIzk=",
- "dev": true
- },
- "iconv-lite": {
- "version": "0.4.13",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.13.tgz",
- "integrity": "sha1-H4irpKsLFQjoMSrMOTRfNumS4vI=",
+ "string_decoder": {
+ "version": "0.10.31",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
+ "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
"dev": true
}
}
@@ -3072,10 +4159,10 @@
"dev": true,
"optional": true,
"requires": {
- "deep-extend": "0.4.2",
- "ini": "1.3.5",
- "minimist": "1.2.0",
- "strip-json-comments": "2.0.1"
+ "deep-extend": "~0.4.0",
+ "ini": "~1.3.0",
+ "minimist": "^1.2.0",
+ "strip-json-comments": "~2.0.1"
}
},
"read": {
@@ -3084,7 +4171,7 @@
"integrity": "sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ=",
"dev": true,
"requires": {
- "mute-stream": "0.0.7"
+ "mute-stream": "~0.0.4"
}
},
"read-pkg": {
@@ -3093,9 +4180,9 @@
"integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
"dev": true,
"requires": {
- "load-json-file": "1.1.0",
- "normalize-package-data": "2.4.0",
- "path-type": "1.1.0"
+ "load-json-file": "^1.0.0",
+ "normalize-package-data": "^2.3.2",
+ "path-type": "^1.0.0"
}
},
"read-pkg-up": {
@@ -3104,8 +4191,8 @@
"integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
"dev": true,
"requires": {
- "find-up": "1.1.2",
- "read-pkg": "1.1.0"
+ "find-up": "^1.0.0",
+ "read-pkg": "^1.0.0"
}
},
"readable-stream": {
@@ -3114,13 +4201,22 @@
"integrity": "sha512-vuYxeWYM+fde14+rajzqgeohAI7YoJcHE7kXDAc4Nk0EbuKnJfqtY9YtRkLo/tqkuF7MsBQRhPnPeyjYITp3ZQ==",
"dev": true,
"requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "2.0.0",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.3",
+ "isarray": "~1.0.0",
+ "process-nextick-args": "~2.0.0",
+ "safe-buffer": "~5.1.1",
+ "string_decoder": "~1.0.3",
+ "util-deprecate": "~1.0.1"
+ }
+ },
+ "rechoir": {
+ "version": "0.6.2",
+ "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz",
+ "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=",
+ "dev": true,
+ "requires": {
+ "resolve": "^1.1.6"
}
},
"redent": {
@@ -3129,8 +4225,8 @@
"integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
"dev": true,
"requires": {
- "indent-string": "2.1.0",
- "strip-indent": "1.0.1"
+ "indent-string": "^2.1.0",
+ "strip-indent": "^1.0.1"
}
},
"regenerator-runtime": {
@@ -3139,19 +4235,41 @@
"integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==",
"dev": true
},
+ "regex-not": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz",
+ "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==",
+ "dev": true,
+ "requires": {
+ "extend-shallow": "^3.0.2",
+ "safe-regex": "^1.1.0"
+ }
+ },
"remove-trailing-separator": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
"integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=",
"dev": true
},
+ "repeat-element": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz",
+ "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=",
+ "dev": true
+ },
+ "repeat-string": {
+ "version": "1.6.1",
+ "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
+ "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
+ "dev": true
+ },
"repeating": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
"integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
"dev": true,
"requires": {
- "is-finite": "1.0.2"
+ "is-finite": "^1.0.0"
}
},
"request": {
@@ -3160,28 +4278,28 @@
"integrity": "sha512-lR3gD69osqm6EYLk9wB/G1W/laGWjzH90t1vEa2xuxHD5KUrSzp9pUSfTm+YC5Nxt2T8nMPEvKlhbQayU7bgFw==",
"dev": true,
"requires": {
- "aws-sign2": "0.7.0",
- "aws4": "1.6.0",
- "caseless": "0.12.0",
- "combined-stream": "1.0.6",
- "extend": "3.0.1",
- "forever-agent": "0.6.1",
- "form-data": "2.3.2",
- "har-validator": "5.0.3",
- "hawk": "6.0.2",
- "http-signature": "1.2.0",
- "is-typedarray": "1.0.0",
- "isstream": "0.1.2",
- "json-stringify-safe": "5.0.1",
- "mime-types": "2.1.18",
- "oauth-sign": "0.8.2",
- "performance-now": "2.1.0",
- "qs": "6.5.1",
- "safe-buffer": "5.1.1",
- "stringstream": "0.0.5",
- "tough-cookie": "2.3.3",
- "tunnel-agent": "0.6.0",
- "uuid": "3.2.1"
+ "aws-sign2": "~0.7.0",
+ "aws4": "^1.6.0",
+ "caseless": "~0.12.0",
+ "combined-stream": "~1.0.5",
+ "extend": "~3.0.1",
+ "forever-agent": "~0.6.1",
+ "form-data": "~2.3.1",
+ "har-validator": "~5.0.3",
+ "hawk": "~6.0.2",
+ "http-signature": "~1.2.0",
+ "is-typedarray": "~1.0.0",
+ "isstream": "~0.1.2",
+ "json-stringify-safe": "~5.0.1",
+ "mime-types": "~2.1.17",
+ "oauth-sign": "~0.8.2",
+ "performance-now": "^2.1.0",
+ "qs": "~6.5.1",
+ "safe-buffer": "^5.1.1",
+ "stringstream": "~0.0.5",
+ "tough-cookie": "~2.3.3",
+ "tunnel-agent": "^0.6.0",
+ "uuid": "^3.1.0"
},
"dependencies": {
"qs": {
@@ -3192,6 +4310,16 @@
}
}
},
+ "request-progress": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-2.0.1.tgz",
+ "integrity": "sha1-XTa7V5YcZzqlt4jbyBQf3yO0Tgg=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "throttleit": "^1.0.0"
+ }
+ },
"require-directory": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
@@ -3216,6 +4344,28 @@
"integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=",
"dev": true
},
+ "resolve-dir": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz",
+ "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=",
+ "dev": true,
+ "requires": {
+ "expand-tilde": "^2.0.0",
+ "global-modules": "^1.0.0"
+ }
+ },
+ "resolve-url": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
+ "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
+ "dev": true
+ },
+ "ret": {
+ "version": "0.1.15",
+ "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
+ "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==",
+ "dev": true
+ },
"revalidator": {
"version": "0.1.8",
"resolved": "https://registry.npmjs.org/revalidator/-/revalidator-0.1.8.tgz",
@@ -3234,11 +4384,11 @@
"integrity": "sha512-JjQ5DlrmwiItAjlmhoxrJq5ihgZcE0wMFxt7S17bIrt4Lw0WwKKFk+viRhvodB/0falyG/5fiO043ZDh6/aqTw==",
"dev": true,
"requires": {
- "chalk": "2.3.1",
- "findup": "0.1.5",
- "mkdirp": "0.5.1",
- "postcss": "6.0.19",
- "strip-json-comments": "2.0.1"
+ "chalk": "^2.3.0",
+ "findup": "^0.1.5",
+ "mkdirp": "^0.5.1",
+ "postcss": "^6.0.14",
+ "strip-json-comments": "^2.0.0"
},
"dependencies": {
"ansi-styles": {
@@ -3247,7 +4397,7 @@
"integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==",
"dev": true,
"requires": {
- "color-convert": "1.9.1"
+ "color-convert": "^1.9.0"
}
},
"chalk": {
@@ -3256,9 +4406,9 @@
"integrity": "sha512-QUU4ofkDoMIVO7hcx1iPTISs88wsO8jA92RQIm4JAwZvFGGAV2hSAA1NX7oVj2Ej2Q6NDTcRDjPTFrMCRZoJ6g==",
"dev": true,
"requires": {
- "ansi-styles": "3.2.0",
- "escape-string-regexp": "1.0.5",
- "supports-color": "5.2.0"
+ "ansi-styles": "^3.2.0",
+ "escape-string-regexp": "^1.0.5",
+ "supports-color": "^5.2.0"
}
},
"strip-json-comments": {
@@ -3273,7 +4423,7 @@
"integrity": "sha512-F39vS48la4YvTZUPVeTqsjsFNrvcMwrV3RLZINsmHo+7djCvuUzSIeXOnZ5hmjef4bajL1dNccN+tg5XAliO5Q==",
"dev": true,
"requires": {
- "has-flag": "3.0.0"
+ "has-flag": "^3.0.0"
}
}
}
@@ -3284,16 +4434,31 @@
"integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==",
"dev": true
},
+ "safe-json-parse": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz",
+ "integrity": "sha1-PnZyPjjf3aE8mx0poeB//uSzC1c=",
+ "dev": true
+ },
+ "safe-regex": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
+ "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
+ "dev": true,
+ "requires": {
+ "ret": "~0.1.10"
+ }
+ },
"sass-graph": {
"version": "2.2.4",
"resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz",
"integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=",
"dev": true,
"requires": {
- "glob": "7.0.6",
- "lodash": "4.17.5",
- "scss-tokenizer": "0.2.3",
- "yargs": "7.1.0"
+ "glob": "^7.0.0",
+ "lodash": "^4.0.0",
+ "scss-tokenizer": "^0.2.3",
+ "yargs": "^7.0.0"
},
"dependencies": {
"lodash": {
@@ -3310,8 +4475,8 @@
"integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=",
"dev": true,
"requires": {
- "js-base64": "2.4.3",
- "source-map": "0.4.4"
+ "js-base64": "^2.1.8",
+ "source-map": "^0.4.2"
},
"dependencies": {
"source-map": {
@@ -3320,7 +4485,7 @@
"integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
"dev": true,
"requires": {
- "amdefine": "1.0.1"
+ "amdefine": ">=0.0.4"
}
}
}
@@ -3343,6 +4508,29 @@
"integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=",
"dev": true
},
+ "set-value": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz",
+ "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==",
+ "dev": true,
+ "requires": {
+ "extend-shallow": "^2.0.1",
+ "is-extendable": "^0.1.1",
+ "is-plain-object": "^2.0.3",
+ "split-string": "^3.0.1"
+ },
+ "dependencies": {
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ }
+ }
+ },
"shelljs": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.3.0.tgz",
@@ -3369,9 +4557,116 @@
"dev": true,
"optional": true,
"requires": {
- "decompress-response": "3.3.0",
- "once": "1.4.0",
- "simple-concat": "1.0.0"
+ "decompress-response": "^3.3.0",
+ "once": "^1.3.1",
+ "simple-concat": "^1.0.0"
+ }
+ },
+ "snapdragon": {
+ "version": "0.8.2",
+ "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
+ "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==",
+ "dev": true,
+ "requires": {
+ "base": "^0.11.1",
+ "debug": "^2.2.0",
+ "define-property": "^0.2.5",
+ "extend-shallow": "^2.0.1",
+ "map-cache": "^0.2.2",
+ "source-map": "^0.5.6",
+ "source-map-resolve": "^0.5.0",
+ "use": "^3.1.0"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^0.1.0"
+ }
+ },
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ }
+ }
+ },
+ "snapdragon-node": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz",
+ "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==",
+ "dev": true,
+ "requires": {
+ "define-property": "^1.0.0",
+ "isobject": "^3.0.0",
+ "snapdragon-util": "^3.0.1"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^1.0.0"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-data-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-descriptor": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+ "dev": true,
+ "requires": {
+ "is-accessor-descriptor": "^1.0.0",
+ "is-data-descriptor": "^1.0.0",
+ "kind-of": "^6.0.2"
+ }
+ }
+ }
+ },
+ "snapdragon-util": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
+ "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.2.0"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
}
},
"sntp": {
@@ -3380,7 +4675,7 @@
"integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==",
"dev": true,
"requires": {
- "hoek": "4.2.1"
+ "hoek": "4.x.x"
}
},
"source-map": {
@@ -3389,22 +4684,41 @@
"integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
"dev": true
},
+ "source-map-resolve": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz",
+ "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==",
+ "dev": true,
+ "requires": {
+ "atob": "^2.1.1",
+ "decode-uri-component": "^0.2.0",
+ "resolve-url": "^0.2.1",
+ "source-map-url": "^0.4.0",
+ "urix": "^0.1.0"
+ }
+ },
"source-map-support": {
"version": "0.4.18",
"resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz",
"integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==",
"dev": true,
"requires": {
- "source-map": "0.5.7"
+ "source-map": "^0.5.6"
}
},
+ "source-map-url": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz",
+ "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=",
+ "dev": true
+ },
"spdx-correct": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz",
"integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=",
"dev": true,
"requires": {
- "spdx-license-ids": "1.2.2"
+ "spdx-license-ids": "^1.0.2"
}
},
"spdx-expression-parse": {
@@ -3419,6 +4733,25 @@
"integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=",
"dev": true
},
+ "split": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz",
+ "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "through": "2"
+ }
+ },
+ "split-string": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
+ "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
+ "dev": true,
+ "requires": {
+ "extend-shallow": "^3.0.0"
+ }
+ },
"sprintf-js": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
@@ -3431,14 +4764,14 @@
"integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=",
"dev": true,
"requires": {
- "asn1": "0.2.3",
- "assert-plus": "1.0.0",
- "bcrypt-pbkdf": "1.0.1",
- "dashdash": "1.14.1",
- "ecc-jsbn": "0.1.1",
- "getpass": "0.1.7",
- "jsbn": "0.1.1",
- "tweetnacl": "0.14.5"
+ "asn1": "~0.2.3",
+ "assert-plus": "^1.0.0",
+ "bcrypt-pbkdf": "^1.0.0",
+ "dashdash": "^1.12.0",
+ "ecc-jsbn": "~0.1.1",
+ "getpass": "^0.1.1",
+ "jsbn": "~0.1.0",
+ "tweetnacl": "~0.14.0"
}
},
"stack-trace": {
@@ -3447,11 +4780,26 @@
"integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=",
"dev": true
},
- "statuses": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz",
- "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==",
- "dev": true
+ "static-extend": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz",
+ "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=",
+ "dev": true,
+ "requires": {
+ "define-property": "^0.2.5",
+ "object-copy": "^0.1.0"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^0.1.0"
+ }
+ }
+ }
},
"stdout-stream": {
"version": "1.4.0",
@@ -3459,7 +4807,7 @@
"integrity": "sha1-osfIWH5U2UJ+qe2zrD8s1SLfN4s=",
"dev": true,
"requires": {
- "readable-stream": "2.3.4"
+ "readable-stream": "^2.0.1"
}
},
"stream-buffers": {
@@ -3468,15 +4816,21 @@
"integrity": "sha1-kdX1Ew0c75bc+n9yaUUYh0HQnuQ=",
"dev": true
},
+ "string-template": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz",
+ "integrity": "sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0=",
+ "dev": true
+ },
"string-width": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
"integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
"dev": true,
"requires": {
- "code-point-at": "1.1.0",
- "is-fullwidth-code-point": "1.0.0",
- "strip-ansi": "3.0.1"
+ "code-point-at": "^1.0.0",
+ "is-fullwidth-code-point": "^1.0.0",
+ "strip-ansi": "^3.0.0"
}
},
"string_decoder": {
@@ -3485,7 +4839,7 @@
"integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
"dev": true,
"requires": {
- "safe-buffer": "5.1.1"
+ "safe-buffer": "~5.1.0"
}
},
"stringstream": {
@@ -3500,7 +4854,7 @@
"integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
"dev": true,
"requires": {
- "ansi-regex": "2.1.1"
+ "ansi-regex": "^2.0.0"
}
},
"strip-bom": {
@@ -3509,7 +4863,7 @@
"integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
"dev": true,
"requires": {
- "is-utf8": "0.2.1"
+ "is-utf8": "^0.2.0"
}
},
"strip-indent": {
@@ -3518,7 +4872,7 @@
"integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
"dev": true,
"requires": {
- "get-stdin": "4.0.1"
+ "get-stdin": "^4.0.1"
}
},
"strip-json-comments": {
@@ -3535,9 +4889,9 @@
"dev": true
},
"susy": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/susy/-/susy-3.0.3.tgz",
- "integrity": "sha512-ALoJ+Vobi9qeYJ6uJO0L4J71u/w+mwB/UqPb7BT3KMog+UUF7+Bw1EOCm0+DTqtY3gI/1CAVe6Jk+C7xFp/azw==",
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/susy/-/susy-3.0.5.tgz",
+ "integrity": "sha512-Adc67mYO0n7eKn0lnyVOMN9lqA3JrHE/NAMfOQQnm2g8yvcZpmcrNfiHjfQXVodXdZE1PyluPnUjPhezaKGztA==",
"dev": true
},
"tar": {
@@ -3546,9 +4900,9 @@
"integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=",
"dev": true,
"requires": {
- "block-stream": "0.0.9",
- "fstream": "1.0.11",
- "inherits": "2.0.3"
+ "block-stream": "*",
+ "fstream": "^1.0.2",
+ "inherits": "2"
}
},
"tar-fs": {
@@ -3558,10 +4912,10 @@
"dev": true,
"optional": true,
"requires": {
- "chownr": "1.0.1",
- "mkdirp": "0.5.1",
- "pump": "1.0.3",
- "tar-stream": "1.5.5"
+ "chownr": "^1.0.1",
+ "mkdirp": "^0.5.1",
+ "pump": "^1.0.0",
+ "tar-stream": "^1.1.2"
},
"dependencies": {
"pump": {
@@ -3571,8 +4925,8 @@
"dev": true,
"optional": true,
"requires": {
- "end-of-stream": "1.4.1",
- "once": "1.4.0"
+ "end-of-stream": "^1.1.0",
+ "once": "^1.3.1"
}
}
}
@@ -3583,10 +4937,10 @@
"integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==",
"dev": true,
"requires": {
- "bl": "1.2.1",
- "end-of-stream": "1.4.1",
- "readable-stream": "2.3.4",
- "xtend": "4.0.1"
+ "bl": "^1.0.0",
+ "end-of-stream": "^1.0.0",
+ "readable-stream": "^2.0.0",
+ "xtend": "^4.0.0"
}
},
"text-table": {
@@ -3595,18 +4949,43 @@
"integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
"dev": true
},
+ "throttleit": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz",
+ "integrity": "sha1-nnhYNtr0Z0MUWlmEtiaNgoUorGw=",
+ "dev": true,
+ "optional": true
+ },
+ "through": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
+ "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
+ "dev": true,
+ "optional": true
+ },
"tiny-lr": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-0.2.1.tgz",
- "integrity": "sha1-s/26gC5dVqM8L28QeUsy5Hescp0=",
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.1.1.tgz",
+ "integrity": "sha512-44yhA3tsaRoMOjQQ+5v5mVdqef+kH6Qze9jTpqtVufgYjYt08zyZAwNwwVBj3i1rJMnR52IxOW0LK0vBzgAkuA==",
"dev": true,
"requires": {
- "body-parser": "1.14.2",
- "debug": "2.2.0",
- "faye-websocket": "0.10.0",
- "livereload-js": "2.3.0",
- "parseurl": "1.3.2",
- "qs": "5.1.0"
+ "body": "^5.1.0",
+ "debug": "^3.1.0",
+ "faye-websocket": "~0.10.0",
+ "livereload-js": "^2.3.0",
+ "object-assign": "^4.1.0",
+ "qs": "^6.4.0"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
+ "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
+ "dev": true,
+ "requires": {
+ "ms": "2.0.0"
+ }
+ }
}
},
"tmp": {
@@ -3615,7 +4994,7 @@
"integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
"dev": true,
"requires": {
- "os-tmpdir": "1.0.2"
+ "os-tmpdir": "~1.0.2"
}
},
"to-double-quotes": {
@@ -3624,6 +5003,48 @@
"integrity": "sha1-qvIx1vqUiUn4GTAburRITYWI5Kc=",
"dev": true
},
+ "to-object-path": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz",
+ "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.0.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "to-regex": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
+ "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==",
+ "dev": true,
+ "requires": {
+ "define-property": "^2.0.2",
+ "extend-shallow": "^3.0.2",
+ "regex-not": "^1.0.2",
+ "safe-regex": "^1.1.0"
+ }
+ },
+ "to-regex-range": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
+ "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=",
+ "dev": true,
+ "requires": {
+ "is-number": "^3.0.0",
+ "repeat-string": "^1.6.1"
+ }
+ },
"to-single-quotes": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/to-single-quotes/-/to-single-quotes-2.0.1.tgz",
@@ -3636,7 +5057,7 @@
"integrity": "sha1-C2GKVWW23qkL80JdBNVe3EdadWE=",
"dev": true,
"requires": {
- "punycode": "1.4.1"
+ "punycode": "^1.4.1"
}
},
"trim-newlines": {
@@ -3651,7 +5072,7 @@
"integrity": "sha1-fskRMJJHZsf1c74wIMNPj9/QDWI=",
"dev": true,
"requires": {
- "glob": "6.0.4"
+ "glob": "^6.0.4"
},
"dependencies": {
"glob": {
@@ -3660,11 +5081,11 @@
"integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=",
"dev": true,
"requires": {
- "inflight": "1.0.6",
- "inherits": "2.0.3",
- "minimatch": "3.0.4",
- "once": "1.4.0",
- "path-is-absolute": "1.0.1"
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "2 || 3",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
}
}
}
@@ -3675,7 +5096,7 @@
"integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
"dev": true,
"requires": {
- "safe-buffer": "5.1.1"
+ "safe-buffer": "^5.0.1"
}
},
"tweetnacl": {
@@ -3685,16 +5106,6 @@
"dev": true,
"optional": true
},
- "type-is": {
- "version": "1.6.16",
- "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz",
- "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==",
- "dev": true,
- "requires": {
- "media-typer": "0.3.0",
- "mime-types": "2.1.18"
- }
- },
"typedarray": {
"version": "0.0.6",
"resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
@@ -3707,8 +5118,8 @@
"integrity": "sha512-4jxrTXlV0HaXTsNILfXW0eey7Qo8qHYM6ih5ZNh45erDWU2GHmKDmekwBTskDb12h+kdd2DBvdzqVb47YzNmTA==",
"dev": true,
"requires": {
- "commander": "2.14.1",
- "source-map": "0.6.1"
+ "commander": "~2.14.1",
+ "source-map": "~0.6.1"
},
"dependencies": {
"source-map": {
@@ -3719,6 +5130,12 @@
}
}
},
+ "unc-path-regex": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz",
+ "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=",
+ "dev": true
+ },
"underscore": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz",
@@ -3726,16 +5143,95 @@
"dev": true
},
"underscore.string": {
- "version": "3.2.3",
- "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.2.3.tgz",
- "integrity": "sha1-gGmSYzZl1eX8tNsfs6hi62jp5to=",
+ "version": "3.3.4",
+ "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.4.tgz",
+ "integrity": "sha1-LCo/n4PmR2L9xF5s6sZRQoZCE9s=",
+ "dev": true,
+ "requires": {
+ "sprintf-js": "^1.0.3",
+ "util-deprecate": "^1.0.2"
+ }
+ },
+ "unicode-5.2.0": {
+ "version": "0.7.5",
+ "resolved": "https://registry.npmjs.org/unicode-5.2.0/-/unicode-5.2.0-0.7.5.tgz",
+ "integrity": "sha512-KVGLW1Bri30x00yv4HNM8kBxoqFXr0Sbo55735nvrlsx4PYBZol3UtoWgO492fSwmsetzPEZzy73rbU8OGXJcA==",
"dev": true
},
- "unpipe": {
+ "union-value": {
"version": "1.0.0",
- "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
- "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=",
- "dev": true
+ "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz",
+ "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=",
+ "dev": true,
+ "requires": {
+ "arr-union": "^3.1.0",
+ "get-value": "^2.0.6",
+ "is-extendable": "^0.1.1",
+ "set-value": "^0.4.3"
+ },
+ "dependencies": {
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ },
+ "set-value": {
+ "version": "0.4.3",
+ "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz",
+ "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=",
+ "dev": true,
+ "requires": {
+ "extend-shallow": "^2.0.1",
+ "is-extendable": "^0.1.1",
+ "is-plain-object": "^2.0.1",
+ "to-object-path": "^0.3.0"
+ }
+ }
+ }
+ },
+ "unset-value": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
+ "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=",
+ "dev": true,
+ "requires": {
+ "has-value": "^0.3.1",
+ "isobject": "^3.0.0"
+ },
+ "dependencies": {
+ "has-value": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
+ "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=",
+ "dev": true,
+ "requires": {
+ "get-value": "^2.0.3",
+ "has-values": "^0.1.4",
+ "isobject": "^2.0.0"
+ },
+ "dependencies": {
+ "isobject": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
+ "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
+ "dev": true,
+ "requires": {
+ "isarray": "1.0.0"
+ }
+ }
+ }
+ },
+ "has-values": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
+ "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=",
+ "dev": true
+ }
+ }
},
"uri-path": {
"version": "1.0.0",
@@ -3743,6 +5239,18 @@
"integrity": "sha1-l0fwGDWJM8Md4PzP2C0TjmcmLjI=",
"dev": true
},
+ "urix": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
+ "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=",
+ "dev": true
+ },
+ "use": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
+ "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
+ "dev": true
+ },
"util-deprecate": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
@@ -3755,12 +5263,12 @@
"integrity": "sha1-kwyI6ZCY1iIINMNWy9mncFItkNc=",
"dev": true,
"requires": {
- "async": "0.2.10",
- "deep-equal": "1.0.1",
- "i": "0.3.6",
- "mkdirp": "0.5.1",
- "ncp": "0.4.2",
- "rimraf": "2.2.8"
+ "async": "~0.2.9",
+ "deep-equal": "*",
+ "i": "0.3.x",
+ "mkdirp": "0.x.x",
+ "ncp": "0.4.x",
+ "rimraf": "2.x.x"
},
"dependencies": {
"async": {
@@ -3777,14 +5285,23 @@
"integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==",
"dev": true
},
+ "v8flags": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.0.2.tgz",
+ "integrity": "sha512-6sgSKoFw1UpUPd3cFdF7QGnrH6tDeBgW1F3v9gy8gLY0mlbiBXq8soy8aQpY6xeeCjH5K+JvC62Acp7gtl7wWA==",
+ "dev": true,
+ "requires": {
+ "homedir-polyfill": "^1.0.1"
+ }
+ },
"validate-npm-package-license": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz",
"integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=",
"dev": true,
"requires": {
- "spdx-correct": "1.0.2",
- "spdx-expression-parse": "1.0.4"
+ "spdx-correct": "~1.0.0",
+ "spdx-expression-parse": "~1.0.0"
}
},
"verror": {
@@ -3793,9 +5310,9 @@
"integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
"dev": true,
"requires": {
- "assert-plus": "1.0.0",
+ "assert-plus": "^1.0.0",
"core-util-is": "1.0.2",
- "extsprintf": "1.3.0"
+ "extsprintf": "^1.2.0"
}
},
"vow": {
@@ -3810,10 +5327,10 @@
"integrity": "sha1-LUxZviLivyYY3fWXq0uqkjvnIA0=",
"dev": true,
"requires": {
- "glob": "7.0.6",
- "uuid": "2.0.3",
- "vow": "0.4.17",
- "vow-queue": "0.4.3"
+ "glob": "^7.0.5",
+ "uuid": "^2.0.2",
+ "vow": "^0.4.7",
+ "vow-queue": "^0.4.1"
},
"dependencies": {
"uuid": {
@@ -3830,7 +5347,7 @@
"integrity": "sha512-/poAKDTFL3zYbeQg7cl4BGcfP4sGgXKrHnRFSKj97dteUFu8oyXMwIcdwu8NSx/RmPGIuYx1Bik/y5vU4H/VKw==",
"dev": true,
"requires": {
- "vow": "0.4.17"
+ "vow": "^0.4.17"
}
},
"walkdir": {
@@ -3845,8 +5362,8 @@
"integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=",
"dev": true,
"requires": {
- "http-parser-js": "0.4.10",
- "websocket-extensions": "0.1.3"
+ "http-parser-js": ">=0.4.0",
+ "websocket-extensions": ">=0.1.1"
}
},
"websocket-extensions": {
@@ -3861,7 +5378,7 @@
"integrity": "sha1-mofEN48D6CfOyvGs31bHNsAcFOU=",
"dev": true,
"requires": {
- "isexe": "2.0.0"
+ "isexe": "^2.0.0"
}
},
"which-module": {
@@ -3883,7 +5400,7 @@
"integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==",
"dev": true,
"requires": {
- "string-width": "1.0.2"
+ "string-width": "^1.0.2"
}
},
"winston": {
@@ -3892,13 +5409,13 @@
"integrity": "sha1-ZLar9M0Brcrv1QCTk7HY6L7BnbA=",
"dev": true,
"requires": {
- "async": "0.2.10",
- "colors": "0.6.2",
- "cycle": "1.0.3",
- "eyes": "0.1.8",
- "isstream": "0.1.2",
- "pkginfo": "0.3.1",
- "stack-trace": "0.0.10"
+ "async": "0.2.x",
+ "colors": "0.6.x",
+ "cycle": "1.0.x",
+ "eyes": "0.1.x",
+ "isstream": "0.1.x",
+ "pkginfo": "0.3.x",
+ "stack-trace": "0.0.x"
},
"dependencies": {
"async": {
@@ -3921,8 +5438,8 @@
"integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
"dev": true,
"requires": {
- "string-width": "1.0.2",
- "strip-ansi": "3.0.1"
+ "string-width": "^1.0.1",
+ "strip-ansi": "^3.0.1"
}
},
"wrappy": {
@@ -3937,7 +5454,7 @@
"integrity": "sha1-LIaIjy1OrehQ+jjKf3Ij9yCVFuE=",
"dev": true,
"requires": {
- "lodash": "3.10.1"
+ "lodash": "^3.5.0"
}
},
"xtend": {
@@ -3964,19 +5481,19 @@
"integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=",
"dev": true,
"requires": {
- "camelcase": "3.0.0",
- "cliui": "3.2.0",
- "decamelize": "1.2.0",
- "get-caller-file": "1.0.2",
- "os-locale": "1.4.0",
- "read-pkg-up": "1.0.1",
- "require-directory": "2.1.1",
- "require-main-filename": "1.0.1",
- "set-blocking": "2.0.0",
- "string-width": "1.0.2",
- "which-module": "1.0.0",
- "y18n": "3.2.1",
- "yargs-parser": "5.0.0"
+ "camelcase": "^3.0.0",
+ "cliui": "^3.2.0",
+ "decamelize": "^1.1.1",
+ "get-caller-file": "^1.0.1",
+ "os-locale": "^1.4.0",
+ "read-pkg-up": "^1.0.1",
+ "require-directory": "^2.1.1",
+ "require-main-filename": "^1.0.1",
+ "set-blocking": "^2.0.0",
+ "string-width": "^1.0.2",
+ "which-module": "^1.0.0",
+ "y18n": "^3.2.1",
+ "yargs-parser": "^5.0.0"
},
"dependencies": {
"camelcase": {
@@ -3993,7 +5510,7 @@
"integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=",
"dev": true,
"requires": {
- "camelcase": "3.0.0"
+ "camelcase": "^3.0.0"
},
"dependencies": {
"camelcase": {
@@ -4004,16 +5521,26 @@
}
}
},
+ "yauzl": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.4.1.tgz",
+ "integrity": "sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "fd-slicer": "~1.0.1"
+ }
+ },
"zip-stream": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-1.2.0.tgz",
"integrity": "sha1-qLxF9MG0lpnGuQGYuqyqzbzUugQ=",
"dev": true,
"requires": {
- "archiver-utils": "1.3.0",
- "compress-commons": "1.2.2",
- "lodash": "4.17.5",
- "readable-stream": "2.3.4"
+ "archiver-utils": "^1.3.0",
+ "compress-commons": "^1.2.0",
+ "lodash": "^4.8.0",
+ "readable-stream": "^2.0.0"
},
"dependencies": {
"lodash": {
diff --git a/package.json b/package.json
index 7ccc273..923deef 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "envato-market",
"title": "Envato Market",
- "version": "2.0.0",
+ "version": "2.0.1",
"homepage": "https://envato.com/market-plugin/",
"repository": {
"type": "git",
@@ -10,24 +10,24 @@
"author": "Envato",
"license": "GPL-2.0+",
"devDependencies": {
- "grunt": "~1.0.2",
+ "grunt": "^1.0.3",
"grunt-checktextdomain": "~1.0.0",
- "grunt-cli": "^1.2.0",
+ "grunt-cli": "^1.3.0",
"grunt-contrib-clean": "~1.1.0",
"grunt-contrib-compress": "~1.4.3",
"grunt-contrib-copy": "~1.0.0",
"grunt-contrib-cssmin": "~2.2.1",
"grunt-contrib-jshint": "~1.1.0",
"grunt-contrib-uglify": "~3.3.0",
- "grunt-contrib-watch": "~1.0.0",
+ "grunt-contrib-watch": "^1.1.0",
"grunt-rtlcss": "~2.0.1",
"grunt-sass": "~2.1.0",
"grunt-shell": "~2.1.0",
- "grunt-wp-i18n": "~1.0.1",
+ "grunt-wp-i18n": "^1.0.2",
"jscs": "^3.0.7",
- "jshint": "^2.9.5",
+ "jshint": "^2.9.6",
"node-bourbon": "~4.2.3",
"node-sass": "~4.7.2",
- "susy": "~3.0.3"
+ "susy": "^3.0.5"
}
}
diff --git a/readme.md b/readme.md
index b3d7f34..7831b4d 100644
--- a/readme.md
+++ b/readme.md
@@ -6,7 +6,7 @@ WordPress Theme & Plugin management for the Envato Market.
**Contributors:** [valendesigns](https://profiles.wordpress.org/valendesigns), [dtbaker](https://profiles.wordpress.org/dtbaker), [aaronrutley](https://profiles.wordpress.org/aaronrutley)
**Requires at least:** 4.9
**Tested up to:** 4.9.4
-**Stable tag:** 2.0.0
+**Stable tag:** 2.0.1
**License:** [GPLv2 or later](http://www.gnu.org/licenses/gpl-2.0.html)
**Website:** https://envato.com/market-plugin/
@@ -36,12 +36,25 @@ Alternatively you can manually install the item via FTP
1. Activate the plugin through the 'Plugins' menu in WordPress.
1. Click the 'Envato Market' menu in WordPress and connect to the API.
-## Contributing ##
+Required token permissions:
-**Pull requests are welcome.** Please review the [guidelines for contributing](https://github.com/envato/wp-envato-market/blob/master/contributing.md) and [code of conduct](https://github.com/envato/wp-envato-market/blob/master/code_of_conduct.md) before contributing to this repository.
+* View and search Envato sites (default)
+* Download your purchased items
+* List purchases you've made
+
+## Support ##
+
+Please see https://envato.com/market-plugin/ for more details.
## Change Log ##
+### v2.0.1
+- Token permission checks
+- Fix for showing missing ratings
+- Multisite/Network mode support
+- Fix self-update check
+- Improved token generation feature
+
#### v2.0.0
- Various bug fixes
- Compatibility with the new Envato API response format
diff --git a/readme.txt b/readme.txt
index 20beb31..37c6348 100644
--- a/readme.txt
+++ b/readme.txt
@@ -3,7 +3,7 @@ Website: https://envato.com/market-plugin/
Contributors: valendesigns, dtbaker, aaronrutley
Requires at least: 4.9
Tested up to: 4.9.4
-Stable tag: 2.0.0
+Stable tag: 2.0.1
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
@@ -33,14 +33,28 @@ Alternatively you can manually install the item via FTP
1. Activate the plugin through the 'Plugins' menu in WordPress.
1. Click the 'Envato Market' menu in WordPress and connect to the API.
-== Contributing ==
+Required token permissions:
-**Pull requests are welcome.** Please review the [guidelines for contributing](https://github.com/envato/wp-envato-market/blob/master/contributing.md) and [code of conduct](https://github.com/envato/wp-envato-market/blob/master/code_of_conduct.md) before contributing to this repository.
+* View and search Envato sites (default)
+* Download your purchased items
+* List purchases you've made
+
+
+== Support ==
+
+Please see https://envato.com/market-plugin/ for more details.
== Change Log ==
+### v2.0.1
+- Token permission checks
+- Fix for showing missing ratings
+- Multisite/Network mode support
+- Fix self-update check
+- Improved token generation feature
+
#### v2.0.0
- Various bug fixes
- Compatibility with the new Envato API response format
diff --git a/sass/envato-market.scss b/sass/envato-market.scss
index 9a7efb6..1278472 100644
--- a/sass/envato-market.scss
+++ b/sass/envato-market.scss
@@ -60,7 +60,6 @@
}
.notice {
- float: left;
display: block !important;
margin-top: 15px;
margin-bottom: 0;
diff --git a/tests/phpunit/tests/inc/admin/class-envato-market-admin.php b/tests/phpunit/tests/inc/admin/class-envato-market-admin.php
index db982ee..e54eb57 100644
--- a/tests/phpunit/tests/inc/admin/class-envato-market-admin.php
+++ b/tests/phpunit/tests/inc/admin/class-envato-market-admin.php
@@ -90,7 +90,7 @@ function test_maybe_deferred_download() {
$ref->setAccessible( true );
$ref->setValue( null, null );
- update_option( envato_market()->get_option_name(), $options );
+ envato_market()->set_options( $options );
}
/**
@@ -122,7 +122,7 @@ function test_set_bearer_args() {
$this->assertEquals( $expected, $this->admin->set_bearer_args( 12345 ) );
$this->assertEquals( array(), $this->admin->set_bearer_args( 12346 ) );
- update_option( envato_market()->get_option_name(), $options );
+ envato_market()->set_options( $options );
}
/**
@@ -156,7 +156,7 @@ function test_admin_enqueue_style() {
* Check authorization success notice
*/
function test_add_notices_success() {
- update_option( envato_market()->get_option_name(), array( 'notices' => array( 'success' ) ) );
+ envato_market()->set_options( array( 'notices' => array( 'success' ) ) );
set_current_screen( 'toplevel_page_' . envato_market()->get_slug() );
$this->admin->add_notices();
ob_start();
@@ -169,7 +169,7 @@ function test_add_notices_success() {
* Check authorization success no-items notice
*/
function test_add_notices_success_no_items() {
- update_option( envato_market()->get_option_name(), array( 'notices' => array( 'success-no-items' ) ) );
+ envato_market()->set_options( array( 'notices' => array( 'success-no-items' ) ) );
set_current_screen( 'toplevel_page_' . envato_market()->get_slug() );
$this->admin->add_notices();
ob_start();
@@ -182,7 +182,7 @@ function test_add_notices_success_no_items() {
* Check authorization success single-use notice
*/
function test_add_notices_success_single_use() {
- update_option( envato_market()->get_option_name(), array( 'notices' => array( 'success-single-use' ) ) );
+ envato_market()->set_options( array( 'notices' => array( 'success-single-use' ) ) );
set_current_screen( 'toplevel_page_' . envato_market()->get_slug() );
$this->admin->add_notices();
ob_start();
@@ -195,7 +195,7 @@ function test_add_notices_success_single_use() {
* Check authorization error notice
*/
function test_add_notices_error() {
- update_option( envato_market()->get_option_name(), array( 'notices' => array( 'error' ) ) );
+ envato_market()->set_options( array( 'notices' => array( 'error' ) ) );
set_current_screen( 'toplevel_page_' . envato_market()->get_slug() );
$this->admin->add_notices();
ob_start();
@@ -208,7 +208,7 @@ function test_add_notices_error() {
* Check authorization error single-use notice
*/
function test_add_notices_error_single_use() {
- update_option( envato_market()->get_option_name(), array( 'notices' => array( 'error-single-use' ) ) );
+ envato_market()->set_options( array( 'notices' => array( 'error-single-use' ) ) );
set_current_screen( 'toplevel_page_' . envato_market()->get_slug() );
$this->admin->add_notices();
ob_start();
@@ -275,7 +275,7 @@ function test_authorization_success_no_items() {
envato_market()->api()->token = '12345';
$mock = $this->getMockBuilder( 'Envato_Market_Admin' )
- ->setMethods( array( 'authorize_total_items', 'authorize_themes', 'authorize_plugins' ) )
+ ->setMethods( array( 'authorize_total_items', 'authorize_token_permissions', 'authorize_themes', 'authorize_plugins' ) )
->disableOriginalConstructor()
->getMock();
@@ -283,6 +283,10 @@ function test_authorization_success_no_items() {
->method( 'authorize_total_items' )
->will( $this->returnValue( 'success' ) );
+ $mock->expects( $this->any() )
+ ->method( 'authorize_token_permissions' )
+ ->will( $this->returnValue( 'success' ) );
+
$mock->expects( $this->any() )
->method( 'authorize_themes' )
->will( $this->returnValue( 'success-no-themes' ) );
@@ -302,7 +306,7 @@ function test_authorization_success() {
envato_market()->api()->token = '12345';
$mock = $this->getMockBuilder( 'Envato_Market_Admin' )
- ->setMethods( array( 'authorize_total_items', 'authorize_themes', 'authorize_plugins' ) )
+ ->setMethods( array( 'authorize_total_items', 'authorize_token_permissions', 'authorize_themes', 'authorize_plugins' ) )
->disableOriginalConstructor()
->getMock();
@@ -310,6 +314,10 @@ function test_authorization_success() {
->method( 'authorize_total_items' )
->will( $this->returnValue( 'success' ) );
+ $mock->expects( $this->any() )
+ ->method( 'authorize_token_permissions' )
+ ->will( $this->returnValue( 'success' ) );
+
$mock->expects( $this->any() )
->method( 'authorize_themes' )
->will( $this->returnValue( 'success' ) );
@@ -389,7 +397,7 @@ function test_render_admin_callback() {
$this->admin->render_admin_callback();
$contents = ob_get_clean();
$this->assertContains( '', $contents );
- $this->assertContains( '