Plugin Directory

Changeset 2246211


Ignore:
Timestamp:
02/18/2020 01:42:49 PM (6 years ago)
Author:
cneumann
Message:

Realease 0.2.1

Location:
greenerwp/trunk
Files:
7 added
2 deleted
16 edited

Legend:

Unmodified
Added
Removed
  • greenerwp/trunk/dist/css/frontend.css

    r2228423 r2246211  
    1 .greenerwp-image-preview-wrap:not(.greenerwp-image-preview-wrap--loaded) .greenerwp-image-preview{cursor:zoom-in}.greenerwp-image-preview-wrap:not(.greenerwp-image-preview-wrap--loaded) .greenerwp-image-preview__controls{display:block}.greenerwp-image-preview-wrap{position:relative;display:inline-block}.greenerwp-image-preview__controls{display:none;position:absolute;pointer-events:none;top:0;left:0;z-index:1;color:#000;font-size:.5em;padding:.2em .4em;background:hsla(0,0%,100%,.5);border-top-left-radius:2px}
     1.greenerwp-awareness-widget{display:none;position:relative;width:100%;height:1em}.greenerwp-awareness-widget--position-absolute{position:absolute;z-index:10000;top:0;left:0}.greenerwp-awareness-widget__description{display:none;position:absolute;z-index:5000;background:#fff;margin-top:1.5em;padding:.5em;box-shadow:0 0 1px 1px rgba(0,0,0,.5);max-width:30em;margin-left:2em;margin-right:1em}.greenerwp-awareness-widget__description-close{display:block;font-size:1em;text-decoration:none;padding:0 .5em 1em 1em;float:right}.greenerwp-awareness-widget__help-icon{position:relative;font-weight:700;display:inline-block;color:#fff;background:#006680;border-radius:.2em;padding:0 .5em}.greenerwp-awareness-widget__transfer-graph,.greenerwp-awareness-widget__transfer-graph-actual,.greenerwp-awareness-widget__transfer-graph-average{display:inline-block;text-align:right;font-size:.7em}.greenerwp-awareness-widget__transfer-graph{border-radius:3px;display:block;position:absolute;height:100%;width:100%}.greenerwp-awareness-widget__transfer-graph-label{background:#fff;white-space:nowrap;text-decoration:none;color:#000;position:absolute;font-size:.5em;left:0;margin-left:2em;top:.2em;font-weight:700;padding:0 0 0 .5em;border-radius:0 2px 2px 0;z-index:2}.greenerwp-awareness-widget__transfer-graph-label:before{position:absolute;display:inline-block;content:"";border-right:.75em solid #fff;border-top:.75em solid transparent;border-bottom:.75em solid transparent;left:-.75em}.greenerwp-awareness-widget__transfer-graph-label--average{z-index:1;left:75%;margin-left:2em;top:.7em;padding:0 .5em}.greenerwp-awareness-widget__transfer-graph-actual,.greenerwp-awareness-widget__transfer-graph-average{position:absolute;box-shadow:0 0 1px 1px rgba(0,0,0,.5);left:0;right:25%;top:50%;bottom:0;background:#a04}.greenerwp-awareness-widget__transfer-graph-actual>span,.greenerwp-awareness-widget__transfer-graph-average>span{width:100%;position:absolute;left:100%}.greenerwp-awareness-widget__transfer-graph-actual{bottom:50%;top:0;width:0;background:#00aad4;text-align:left}.greenerwp-image-preview-wrap:not(.greenerwp-image-preview-wrap--loaded) .greenerwp-image-preview{cursor:zoom-in}.greenerwp-image-preview-wrap:not(.greenerwp-image-preview-wrap--loaded) .greenerwp-image-preview__controls{display:block}.greenerwp-image-preview-wrap{position:relative;display:inline-block}.greenerwp-image-preview__controls{display:none;position:absolute;pointer-events:none;top:0;left:0;z-index:1;color:#000;font-size:.5em;padding:.2em .4em;background:hsla(0,0%,100%,.5);border-top-left-radius:2px}
    22/*# sourceMappingURL=frontend.css.map */
  • greenerwp/trunk/dist/css/frontend.css.map

    r2228423 r2246211  
    1 {"version":3,"sources":["frontend/_images.scss"],"names":[],"mappings":"AACC,kGACC,eAED,4GACC,cAIF,8BACC,iBAAA,CACA,qBAGD,mCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,KAAA,CACA,MAAA,CACA,SAAA,CACA,UAAA,CACA,cAAA,CACA,iBAAA,CACA,6BAAA,CACA","file":"frontend.css","sourceRoot":"../../scss","sourcesContent":[".greenerwp-image-preview-wrap:not(.greenerwp-image-preview-wrap--loaded) {\n\t.greenerwp-image-preview {\n\t\tcursor: zoom-in;\n\t}\n\t.greenerwp-image-preview__controls {\n\t\tdisplay: block;\n\t}\n}\n\n.greenerwp-image-preview-wrap {\n\tposition: relative;\n\tdisplay: inline-block;\n}\n\n.greenerwp-image-preview__controls {\n\tdisplay: none;\n\tposition: absolute;\n\tpointer-events: none;\n\ttop: 0;\n\tleft: 0;\n\tz-index: 1;\n\tcolor: black;\n\tfont-size: 0.5em;\n\tpadding: 0.2em 0.4em;\n\tbackground: rgba( white, 0.5 );\n\tborder-top-left-radius: 2px;\n}"]}
     1{"version":3,"sources":["frontend/_awareness.scss","frontend/_images.scss"],"names":[],"mappings":"AAAA,4BACC,YAAA,CACA,iBAAA,CACA,UAAA,CACA,WACA,+CACC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,OAIF,yCACC,YAAA,CACA,iBAAA,CACA,YAAA,CACA,eAAA,CACA,gBAAA,CACA,YAAA,CACA,qCAAA,CACA,cAAA,CACA,eAAA,CACA,iBAGD,+CACC,aAAA,CACA,aAAA,CACA,oBAAA,CACA,sBAAA,CACA,YAGD,uCACC,iBAAA,CACA,eAAA,CACA,oBAAA,CACA,UAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAGD,mJAGC,oBAAA,CACA,gBAAA,CACA,eAGD,4CACC,iBAAA,CACA,aAAA,CACA,iBAAA,CACA,WAAA,CACA,WAGD,kDACC,eAAA,CACA,kBAAA,CACA,oBAAA,CACA,UAAA,CACA,iBAAA,CACA,cAAA,CACA,MAAA,CACA,eAAA,CACA,QAAA,CACA,eAAA,CACA,kBAAA,CACA,yBAAA,CACA,UACA,yDACC,iBAAA,CACA,oBAAA,CACA,UAAA,CAEA,6BAAA,CACA,kCAAA,CACA,qCAAA,CACA,YAED,2DACC,SAAA,CACA,QAAA,CACA,eAAA,CACA,QAAA,CACA,eAIF,uGAEC,iBAAA,CACA,qCAAA,CACA,MAAA,CACA,SAAA,CACA,OAAA,CACA,QAAA,CACA,gBACA,iHACC,UAAA,CACA,iBAAA,CACA,UAIF,mDACC,UAAA,CACA,KAAA,CACA,OAAA,CACA,kBAAA,CACA,gBCjHA,kGACC,eAED,4GACC,cAIF,8BACC,iBAAA,CACA,qBAGD,mCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,KAAA,CACA,MAAA,CACA,SAAA,CACA,UAAA,CACA,cAAA,CACA,iBAAA,CACA,6BAAA,CACA","file":"frontend.css","sourceRoot":"../../scss","sourcesContent":[".greenerwp-awareness-widget {\n\tdisplay: none;\n\tposition: relative;\n\twidth: 100%;\n\theight: 1em;\n\t&--position-absolute {\n\t\tposition: absolute;\n\t\tz-index: 10000;\n\t\ttop: 0;\n\t\tleft: 0;\n\t}\n}\n\n.greenerwp-awareness-widget__description {\n\tdisplay: none;\n\tposition: absolute;\n\tz-index: 5000;\n\tbackground: white;\n\tmargin-top: 1.5em;\n\tpadding: 0.5em;\n\tbox-shadow: 0 0 1px 1px rgba( black, 0.5 ) ;\n\tmax-width: 30em;\n\tmargin-left: 2em;\n\tmargin-right: 1em;\n}\n\n.greenerwp-awareness-widget__description-close {\n\tdisplay: block;\n\tfont-size: 1em;\n\ttext-decoration: none;\n\tpadding: 0 0.5em 1em 1em;\n\tfloat: right;\n}\n\n.greenerwp-awareness-widget__help-icon {\n\tposition: relative;\n\tfont-weight: bold;\n\tdisplay: inline-block;\n\tcolor: white;\n\tbackground: #006680;\n\tborder-radius: 0.2em;\n\tpadding: 0 0.5em;\n}\n\n.greenerwp-awareness-widget__transfer-graph,\n.greenerwp-awareness-widget__transfer-graph-average,\n.greenerwp-awareness-widget__transfer-graph-actual {\n\tdisplay: inline-block;\n\ttext-align: right;\n\tfont-size: 0.7em;\n}\n\n.greenerwp-awareness-widget__transfer-graph {\n\tborder-radius: 3px;\n\tdisplay: block;\n\tposition: absolute;\n\theight: 100%;\n\twidth: 100%;\n}\n\n.greenerwp-awareness-widget__transfer-graph-label {\n\tbackground: white;\n\twhite-space: nowrap;\n\ttext-decoration: none;\n\tcolor: black;\n\tposition: absolute;\n\tfont-size: 0.5em;\n\tleft: 0;\n\tmargin-left: 2em;\n\ttop: 0.2em;\n\tfont-weight: bold;\n\tpadding: 0 0 0 0.5em;\n\tborder-radius: 0 2px 2px 0;\n\tz-index: 2;\n\t&::before {\n\t\tposition: absolute;\n\t\tdisplay: inline-block;\n\t\tcontent: '';\n\t\t$height: 0.75em;\n\t\tborder-right: $height solid white;\n\t\tborder-top: $height solid transparent;\n\t\tborder-bottom: $height solid transparent;\n\t\tleft: -$height;\n\t}\n\t&--average {\n\t\tz-index: 1;\n\t\tleft: 75%;\n\t\tmargin-left: 2em;\n\t\ttop: 0.7em;\n\t\tpadding: 0 0.5em;\n\t}\n}\n\n.greenerwp-awareness-widget__transfer-graph-average,\n.greenerwp-awareness-widget__transfer-graph-actual {\n\tposition: absolute;\n\tbox-shadow: 0 0 1px 1px rgba( black, 0.5 ) ;\n\tleft: 0;\n\tright: 25%;\n\ttop: 50%;\n\tbottom: 0;\n\tbackground: #aa0044;\n\t& > span {\n\t\twidth: 100%;\n\t\tposition: absolute;\n\t\tleft: 100%;\n\t}\n}\n\n.greenerwp-awareness-widget__transfer-graph-actual {\n\tbottom: 50%;\n\ttop: 0;\n\twidth: 0;\n\tbackground: #00aad4;\n\ttext-align: left;\n}",".greenerwp-image-preview-wrap:not(.greenerwp-image-preview-wrap--loaded) {\n\t.greenerwp-image-preview {\n\t\tcursor: zoom-in;\n\t}\n\t.greenerwp-image-preview__controls {\n\t\tdisplay: block;\n\t}\n}\n\n.greenerwp-image-preview-wrap {\n\tposition: relative;\n\tdisplay: inline-block;\n}\n\n.greenerwp-image-preview__controls {\n\tdisplay: none;\n\tposition: absolute;\n\tpointer-events: none;\n\ttop: 0;\n\tleft: 0;\n\tz-index: 1;\n\tcolor: black;\n\tfont-size: 0.5em;\n\tpadding: 0.2em 0.4em;\n\tbackground: rgba( white, 0.5 );\n\tborder-top-left-radius: 2px;\n}"]}
  • greenerwp/trunk/dist/js/frontend.js

    r2228423 r2246211  
    11parcelRequire=function(e,r,t,n){var i,o="function"==typeof parcelRequire&&parcelRequire,u="function"==typeof require&&require;function f(t,n){if(!r[t]){if(!e[t]){var i="function"==typeof parcelRequire&&parcelRequire;if(!n&&i)return i(t,!0);if(o)return o(t,!0);if(u&&"string"==typeof t)return u(t);var c=new Error("Cannot find module '"+t+"'");throw c.code="MODULE_NOT_FOUND",c}p.resolve=function(r){return e[t][1][r]||r},p.cache={};var l=r[t]=new f.Module(t);e[t][0].call(l.exports,p,l,l.exports,this)}return r[t].exports;function p(e){return f(p.resolve(e))}}f.isParcelRequire=!0,f.Module=function(e){this.id=e,this.bundle=f,this.exports={}},f.modules=e,f.cache=r,f.parent=o,f.register=function(r,t){e[r]=[function(e,r){r.exports=t},{}]};for(var c=0;c<t.length;c++)try{f(t[c])}catch(e){i||(i=e)}if(t.length){var l=f(t[t.length-1]);"object"==typeof exports&&"undefined"!=typeof module?module.exports=l:"function"==typeof define&&define.amd?define(function(){return l}):n&&(this[n]=l)}if(parcelRequire=f,i)throw i;return f}({"whQi":[function(require,module,exports) {
    2 "use strict";function e(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function n(e,n){for(var r=0;r<n.length;r++){var t=n[r];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(e,t.key,t)}}function r(e,r,t){return r&&n(e.prototype,r),t&&n(e,t),e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var t=function(){function n(r){e(this,n),!1 in navigator||!1 in new Request("")||setTimeout(this.sendBeacon.bind(this),500)}return r(n,[{key:"sendBeacon",value:function(){var e={transferred:this.get(),path:document.location.pathname},n={method:"POST",keepalive:!0,body:JSON.stringify(e)};fetch(greenerwpVars.root+"greenerwp/v1/profiler",n)}},{key:"get",value:function(){if(void 0!==performance){var e=performance.getEntriesByType("resource");if(void 0!==e){for(var n=performance.getEntriesByType("navigation")[0].encodedBodySize,r=0;r<e.length;r++)"transferSize"in e[r]&&(n+=e[r].encodedBodySize);return n}}}}]),n}(),o=t;exports.default=o;
     2"use strict";function e(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function n(e,n){for(var r=0;r<n.length;r++){var i=n[r];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function r(e,r,i){return r&&n(e.prototype,r),i&&n(e,i),e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var i=function(){function n(r){(e(this,n),void 0!==performance&&"PerformanceObserver"in window)&&(r.sendProfile&&"sendBeacon"in navigator&&window.addEventListener("unload",this.sendBeacon.bind(this)),this.initProfile(),new PerformanceObserver(this.update.bind(this)).observe({entryTypes:["navigation","resource"]}))}return r(n,[{key:"sendBeacon",value:function(){var e=this.get();if(e){var n=greenerwpVars.root+"greenerwp/v1/profiler";e.path=document.location.pathname,navigator.sendBeacon(n,JSON.stringify(e))}}},{key:"initProfile",value:function(){this.profile={},this.profile.transferredSize=performance.getEntriesByType("navigation")[0].transferSize,this.profile.encodedBodySize=performance.getEntriesByType("navigation")[0].encodedBodySize,this.update(performance,null)}},{key:"update",value:function(e,n){var r=e.getEntriesByType("resource");if(void 0!==r){for(var i=0;i<r.length;i++)"transferSize"in r[i]&&(this.profile.transferredSize+=r[i].transferSize,this.profile.encodedBodySize+=r[i].encodedBodySize);var t=new CustomEvent("greenerwp:profiler-update",{detail:{profiler:this}});document.dispatchEvent(t)}}},{key:"get",value:function(){return this.profile}}]),n}(),t=i;exports.default=t;
    33},{}],"Dgxz":[function(require,module,exports) {
    44"use strict";function e(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function t(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function i(e,i,r){return i&&t(e.prototype,i),r&&t(e,r),e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var r=function(){function t(i){e(this,t),this.image=i,this.listener=this.handleClick.bind(this),i.addEventListener("click",this.listener)}return i(t,[{key:"handleClick",value:function(e){e.preventDefault(),this.image.removeEventListener("click",this.listener),this.image.setAttribute("srcset",this.image.getAttribute("data-srcset")),this.image.setAttribute("src",this.image.getAttribute("data-src")),this.image.parentNode.classList.add("greenerwp-image-preview-wrap--loaded")}}]),t}(),n=r;exports.default=n;
     
    88var r=require("./bundle-url").getBundleURL;function e(r){Array.isArray(r)||(r=[r]);var e=r[r.length-1];try{return Promise.resolve(require(e))}catch(n){if("MODULE_NOT_FOUND"===n.code)return new s(function(n,i){t(r.slice(0,-1)).then(function(){return require(e)}).then(n,i)});throw n}}function t(r){return Promise.all(r.map(u))}var n={};function i(r,e){n[r]=e}module.exports=exports=e,exports.load=t,exports.register=i;var o={};function u(e){var t;if(Array.isArray(e)&&(t=e[1],e=e[0]),o[e])return o[e];var i=(e.substring(e.lastIndexOf(".")+1,e.length)||e).toLowerCase(),u=n[i];return u?o[e]=u(r()+e).then(function(r){return r&&module.bundle.register(t,r),r}).catch(function(r){throw delete o[e],r}):void 0}function s(r){this.executor=r,this.promise=null}s.prototype.then=function(r,e){return null===this.promise&&(this.promise=new Promise(this.executor)),this.promise.then(r,e)},s.prototype.catch=function(r){return null===this.promise&&(this.promise=new Promise(this.executor)),this.promise.catch(r)};
    99},{"./bundle-url":"Bdj8"}],"vQUE":[function(require,module,exports) {
    10 "use strict";var e=r(require("./image-preview.js"));function r(e){return e&&e.__esModule?e:{default:e}}document.querySelector("img.lazyload")&&require("_bundle_loader")(require.resolve("lazysizes")).then(),document.querySelectorAll("img.greenerwp-image-preview").forEach(function(r){return new e.default(r)});
    11 },{"./image-preview.js":"Dgxz","_bundle_loader":"U3OY","lazysizes":[["lazysizes.66d07160.js","xLME"],"lazysizes.66d07160.js.map","xLME"]}],"Focm":[function(require,module,exports) {
    12 "use strict";var e=r(require("./stats/profiler.js"));function r(e){return e&&e.__esModule?e:{default:e}}if(greenerwpVars.statisticsEnabled)var s=new e.default;require("./media/index.js");
    13 },{"./stats/profiler.js":"whQi","./media/index.js":"vQUE"}],"C1LB":[function(require,module,exports) {
     10"use strict";var e=r(require("./image-preview.js"));function r(e){return e&&e.__esModule?e:{default:e}}function t(e){return i(e)||o(e)||n()}function n(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function o(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function i(e){if(Array.isArray(e)){for(var r=0,t=new Array(e.length);r<e.length;r++)t[r]=e[r];return t}}document.querySelector("img.lazyload")&&require("_bundle_loader")(require.resolve("lazysizes")).then(),t(document.querySelectorAll("img.greenerwp-image-preview")).forEach(function(r){return new e.default(r)});
     11},{"./image-preview.js":"Dgxz","_bundle_loader":"U3OY","lazysizes":[["lazysizes.66d07160.js","xLME"],"lazysizes.66d07160.js.map","xLME"]}],"T359":[function(require,module,exports) {
     12"use strict";function e(e){return n(e)||r(e)||t()}function t(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function r(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function n(e){if(Array.isArray(e)){for(var t=0,r=new Array(e.length);t<e.length;t++)r[t]=e[t];return r}}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function s(e,t,r){return t&&i(e.prototype,t),r&&i(e,r),e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var o=function(){function t(e){var r=this;a(this,t),this.widget=e,this.state={percentLess:0,transferKBValue:0,transferMBValue:0};var n=this.widget.querySelector(".greenerwp-awareness-widget__transfer-graph-label"),i=this.widget.querySelector(".greenerwp-awareness-widget__description");n.addEventListener("click",function(e){e.preventDefault(),i.style.display="block"}),i.querySelector(".greenerwp-awareness-widget__description-close").addEventListener("click",function(e){e.preventDefault(),i.style.display="none"}),document.addEventListener("greenerwp:profiler-update",function(e){r.widget.style.display="block";var t=e.detail.profiler.get();r.state={percentLess:10,transferKBValue:Math.round(t.encodedBodySize/1024),transferMBValue:(t.encodedBodySize/1024/1024).toFixed(2)},r.refresh()}),this.refresh()}return s(t,[{key:"refresh",value:function(){var t=this;Object.keys(this.state).forEach(function(r){e(t.widget.querySelectorAll(".greenerwp-awareness-widget__"+r)).forEach(function(e){e instanceof HTMLProgressElement&&(e.value=t.state[r]),e.innerHTML=t.state[r]})});var r=this.widget.querySelector(".greenerwp-awareness-widget__transfer-graph-actual"),n=this.widget.querySelector(".greenerwp-awareness-widget__transfer-graph-label");if(r&&n){var a=75*this.state.transferKBValue/4096;r.style.width=a+"%",n.style.left=a+"%"}}}]),t}(),l=o;exports.default=l;
     13},{}],"zbOU":[function(require,module,exports) {
     14"use strict";var r=e(require("./awareness.js"));function e(r){return r&&r.__esModule?r:{default:r}}function t(r){return a(r)||o(r)||n()}function n(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function o(r){if(Symbol.iterator in Object(r)||"[object Arguments]"===Object.prototype.toString.call(r))return Array.from(r)}function a(r){if(Array.isArray(r)){for(var e=0,t=new Array(r.length);e<r.length;e++)t[e]=r[e];return t}}t(document.querySelectorAll(".greenerwp-awareness-widget")).forEach(function(e){new r.default(e)});
     15},{"./awareness.js":"T359"}],"Focm":[function(require,module,exports) {
     16"use strict";var e=r(require("./stats/profiler.js"));function r(e){return e&&e.__esModule?e:{default:e}}var s=new e.default({sendProfile:greenerwpVars.statisticsEnabled});require("./media/index.js"),require("./widgets/index.js");
     17},{"./stats/profiler.js":"whQi","./media/index.js":"vQUE","./widgets/index.js":"zbOU"}],"C1LB":[function(require,module,exports) {
    1418module.exports=function(n){return new Promise(function(e,o){var r=document.createElement("script");r.async=!0,r.type="text/javascript",r.charset="utf-8",r.src=n,r.onerror=function(n){r.onerror=r.onload=null,o(n)},r.onload=function(){r.onerror=r.onload=null,e()},document.getElementsByTagName("head")[0].appendChild(r)})};
    1519},{}],0:[function(require,module,exports) {
  • greenerwp/trunk/dist/js/frontend.js.map

    r2228423 r2246211  
    1 {"version":3,"sources":["stats/profiler.js","media/image-preview.js","../../../node_modules/parcel-bundler/src/builtins/bundle-url.js","../../../node_modules/parcel-bundler/src/builtins/bundle-loader.js","media/index.js","index.js","../../../node_modules/parcel-bundler/src/builtins/loaders/browser/js-loader.js"],"names":["Profiler","args","navigator","Request","setTimeout","sendBeacon","bind","profile","transferred","get","path","document","location","pathname","opts","method","keepalive","body","JSON","stringify","fetch","greenerwpVars","root","performance","undefined","list","getEntriesByType","encodedBodySize","i","length","ImagePreview","image","listener","handleClick","addEventListener","event","preventDefault","removeEventListener","setAttribute","getAttribute","parentNode","classList","add","bundleURL","getBundleURLCached","getBundleURL","Error","err","matches","stack","match","getBaseURL","url","replace","exports","require","loadBundlesLazy","bundles","Array","isArray","id","Promise","resolve","code","LazyPromise","reject","loadBundles","slice","then","all","map","loadBundle","bundleLoaders","registerBundleLoader","type","loader","module","load","register","bundle","substring","lastIndexOf","toLowerCase","bundleLoader","resolved","catch","e","executor","promise","prototype","onSuccess","onError","querySelector","querySelectorAll","forEach","statisticsEnabled","profiler","script","createElement","async","charset","src","onerror","onload","getElementsByTagName","appendChild"],"mappings":"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","file":"frontend.js","sourceRoot":"../../js/frontend","sourcesContent":["/**\n * Statistics for bytes transferred.\n */\nclass Profiler {\n\tconstructor( args ) {\n\t\t// Feature detection\n\t\tif ( ! 'sendBeacon' in navigator\n\t\t\t\t || ! 'keepalive' in new Request('')\n\t\t\t ) {\n\t\t\treturn;\n\t\t}\n\t\t// window.addEventListener( \"unload\", this.sendBeacon.bind( this ) );\n\t\tsetTimeout( this.sendBeacon.bind( this ), 500 );\n\t}\n\n\tsendBeacon() {\n\t\tvar profile = {\n\t\t\ttransferred: this.get(),\n\t\t\tpath: document.location.pathname,\n\t\t};\n\n\t\tconst opts = {\n\t\t\t// headers: {\n\t\t\t// \t'X-WP-Nonce': wpApiSettings.nonce,\n\t\t\t// },\n\t\t\tmethod: 'POST',\n\t\t\tkeepalive: true,\n\t\t\tbody: JSON.stringify( profile ),\n\t\t};\n\t\tfetch( greenerwpVars.root + 'greenerwp/v1/profiler', opts );\n\t}\n\n\tget() {\n\t\tif ( performance === undefined ) {\n\t\t\treturn;\n\t\t}\n\t\tvar list = performance.getEntriesByType( \"resource\" );\n\t\tif ( list === undefined ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// var pageNav = performance.getEntriesByType(\"navigation\")[0];\n\t\t// var headerSize = pageNav.transferSize - pageNav.encodedBodySize;\n\n\n\t\t// Use observer?\n\t\t// https://developers.google.com/web/fundamentals/performance/navigation-and-resource-timing#listen_for_performance_entries_using_performanceobserver\n\n\t\tvar transferred = performance.getEntriesByType(\"navigation\")[0].encodedBodySize;\n\t\t// console.log(transferred);\n\t\tfor ( var i=0; i < list.length; i++ ) {\n\t\t\t// console.log(\"== Resource[\" + i + \"] - \" + list[i].name);\n\t\t\tif ( \"transferSize\" in list[i] ) {\n\t\t\t\t// console.log(\"... transferSize[\" + i + \"] = \" + list[i].transferSize);\n\t\t\t\t// transferred += list[i].transferSize;\n\t\t\t\ttransferred += list[i].encodedBodySize;\n\t\t\t}\n\t\t}\n\n\t\treturn transferred;\n\t}\n};\n\nexport default Profiler;","/**\n * Implements the image previews.\n */\nclass ImagePreview {\n  constructor( image ) {\n\t\tthis.image = image;\n\t\tthis.listener = this.handleClick.bind( this );\n\t\timage.addEventListener( 'click', this.listener  );\n\t}\n\n\t/**\n\t * Handle preview image clicks.\n\t *\n\t * Loads original image.\n\t */\n\thandleClick( event ) {\n\t\tevent.preventDefault();\n\t\tthis.image.removeEventListener( 'click', this.listener  );\n\t\tthis.image.setAttribute(\n\t\t\t'srcset',\n\t\t\tthis.image.getAttribute( 'data-srcset' ) );\n\t\tthis.image.setAttribute(\n\t\t\t'src',\n\t\t\tthis.image.getAttribute( 'data-src' ) );\n\t\tthis.image.parentNode.classList.add( 'greenerwp-image-preview-wrap--loaded' );\n\t}\n};\n\nexport default ImagePreview;","var bundleURL = null;\nfunction getBundleURLCached() {\n  if (!bundleURL) {\n    bundleURL = getBundleURL();\n  }\n\n  return bundleURL;\n}\n\nfunction getBundleURL() {\n  // Attempt to find the URL of the current script and use that as the base URL\n  try {\n    throw new Error;\n  } catch (err) {\n    var matches = ('' + err.stack).match(/(https?|file|ftp|chrome-extension|moz-extension):\\/\\/[^)\\n]+/g);\n    if (matches) {\n      return getBaseURL(matches[0]);\n    }\n  }\n\n  return '/';\n}\n\nfunction getBaseURL(url) {\n  return ('' + url).replace(/^((?:https?|file|ftp|chrome-extension|moz-extension):\\/\\/.+)\\/[^/]+$/, '$1') + '/';\n}\n\nexports.getBundleURL = getBundleURLCached;\nexports.getBaseURL = getBaseURL;\n","var getBundleURL = require('./bundle-url').getBundleURL;\n\nfunction loadBundlesLazy(bundles) {\n  if (!Array.isArray(bundles)) {\n    bundles = [bundles]\n  }\n\n  var id = bundles[bundles.length - 1];\n\n  try {\n    return Promise.resolve(require(id));\n  } catch (err) {\n    if (err.code === 'MODULE_NOT_FOUND') {\n      return new LazyPromise(function (resolve, reject) {\n        loadBundles(bundles.slice(0, -1))\n          .then(function () {\n            return require(id);\n          })\n          .then(resolve, reject);\n      });\n    }\n\n    throw err;\n  }\n}\n\nfunction loadBundles(bundles) {\n  return Promise.all(bundles.map(loadBundle));\n}\n\nvar bundleLoaders = {};\nfunction registerBundleLoader(type, loader) {\n  bundleLoaders[type] = loader;\n}\n\nmodule.exports = exports = loadBundlesLazy;\nexports.load = loadBundles;\nexports.register = registerBundleLoader;\n\nvar bundles = {};\nfunction loadBundle(bundle) {\n  var id;\n  if (Array.isArray(bundle)) {\n    id = bundle[1];\n    bundle = bundle[0];\n  }\n\n  if (bundles[bundle]) {\n    return bundles[bundle];\n  }\n\n  var type = (bundle.substring(bundle.lastIndexOf('.') + 1, bundle.length) || bundle).toLowerCase();\n  var bundleLoader = bundleLoaders[type];\n  if (bundleLoader) {\n    return bundles[bundle] = bundleLoader(getBundleURL() + bundle)\n      .then(function (resolved) {\n        if (resolved) {\n          module.bundle.register(id, resolved);\n        }\n\n        return resolved;\n      }).catch(function(e) {\n        delete bundles[bundle];\n        \n        throw e;\n      });\n  }\n}\n\nfunction LazyPromise(executor) {\n  this.executor = executor;\n  this.promise = null;\n}\n\nLazyPromise.prototype.then = function (onSuccess, onError) {\n  if (this.promise === null) this.promise = new Promise(this.executor)\n  return this.promise.then(onSuccess, onError)\n};\n\nLazyPromise.prototype.catch = function (onError) {\n  if (this.promise === null) this.promise = new Promise(this.executor)\n  return this.promise.catch(onError)\n};\n","import ImagePreview from \"./image-preview.js\";\n\nif ( document.querySelector( 'img.lazyload' ) ) {\n\timport( 'lazysizes' ).then();\n}\n\ndocument.querySelectorAll( 'img.greenerwp-image-preview' ).forEach(\n\t(image) => new ImagePreview( image ) );","\"use strict\";\n\nimport Profiler from \"./stats/profiler.js\";\n\nif ( greenerwpVars.statisticsEnabled ) {\n\tvar profiler = new Profiler();\n}\n\nrequire( \"./media/index.js\" );","module.exports = function loadJSBundle(bundle) {\n  return new Promise(function (resolve, reject) {\n    var script = document.createElement('script');\n    script.async = true;\n    script.type = 'text/javascript';\n    script.charset = 'utf-8';\n    script.src = bundle;\n    script.onerror = function (e) {\n      script.onerror = script.onload = null;\n      reject(e);\n    };\n\n    script.onload = function () {\n      script.onerror = script.onload = null;\n      resolve();\n    };\n\n    document.getElementsByTagName('head')[0].appendChild(script);\n  });\n};\n"]}
     1{"version":3,"sources":["stats/profiler.js","media/image-preview.js","../../../node_modules/parcel-bundler/src/builtins/bundle-url.js","../../../node_modules/parcel-bundler/src/builtins/bundle-loader.js","media/index.js","widgets/awareness.js","widgets/index.js","index.js","../../../node_modules/parcel-bundler/src/builtins/loaders/browser/js-loader.js"],"names":["Profiler","opts","undefined","performance","window","sendProfile","navigator","addEventListener","sendBeacon","bind","initProfile","PerformanceObserver","update","observe","entryTypes","profile","get","url","greenerwpVars","root","document","location","pathname","JSON","stringify","transferredSize","getEntriesByType","transferSize","encodedBodySize","list","obj","entries","i","length","event","CustomEvent","detail","profiler","dispatchEvent","ImagePreview","image","listener","handleClick","preventDefault","removeEventListener","setAttribute","getAttribute","parentNode","classList","add","bundleURL","getBundleURLCached","getBundleURL","Error","err","matches","stack","match","getBaseURL","replace","exports","require","loadBundlesLazy","bundles","Array","isArray","id","Promise","resolve","code","LazyPromise","reject","loadBundles","slice","then","all","map","loadBundle","bundleLoaders","registerBundleLoader","type","loader","module","load","register","bundle","substring","lastIndexOf","toLowerCase","bundleLoader","resolved","catch","e","executor","promise","prototype","onSuccess","onError","querySelector","querySelectorAll","forEach","Awareness","element","widget","state","percentLess","transferKBValue","transferMBValue","label","description","style","display","Math","round","toFixed","refresh","Object","keys","key","elements","HTMLProgressElement","value","innerHTML","graph","percent","width","left","statisticsEnabled","script","createElement","async","charset","src","onerror","onload","getElementsByTagName","appendChild"],"mappings":"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","file":"frontend.js","sourceRoot":"../../js/frontend","sourcesContent":["/**\n * Statistics for bytes transferred.\n */\nclass Profiler {\n\tconstructor( opts ) {\n\t\t// Feature detection\n\t\tif (\n\t\t\tperformance === undefined\n\t\t\t\t|| ! ( 'PerformanceObserver' in window )\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t\tif ( opts.sendProfile && 'sendBeacon' in navigator ) {\n\t\t\twindow.addEventListener( \"unload\", this.sendBeacon.bind( this ) );\n\t\t}\n\n\t\tthis.initProfile();\n\t\tvar perfObserver = new PerformanceObserver( this.update.bind( this ) );\n\t\tperfObserver.observe( {\n\t\t\tentryTypes: [ \"navigation\", \"resource\" ],\n\t\t} );\n\t}\n\n\t// Sends the profile data to greenerWP.\n\tsendBeacon() {\n\t\tvar profile = this.get();\n\t\tif ( ! profile ) {\n\t\t\treturn;\n\t\t}\n\t\tvar url = greenerwpVars.root + 'greenerwp/v1/profiler';\n\t\tprofile['path'] = document.location.pathname;\n\t\tnavigator.sendBeacon( url, JSON.stringify( profile ) );\n\t}\n\n\tinitProfile() {\n\t\tthis.profile = {};\n\t\tthis.profile.transferredSize = performance.getEntriesByType( \"navigation\" )[0].transferSize;\n\t\tthis.profile.encodedBodySize = performance.getEntriesByType( \"navigation\" )[0].encodedBodySize;\n\t\tthis.update( performance, null );\n\t}\n\n\t// Updates the profile.\n\tupdate( list, obj ) {\n\t\tvar entries = list.getEntriesByType( \"resource\" );\n\t\tif ( entries === undefined ) {\n\t\t\treturn;\n\t\t}\n\t\tfor ( var i=0; i < entries.length; i++ ) {\n\t\t\tif ( \"transferSize\" in entries[i] ) {\n\t\t\t\tthis.profile.transferredSize += entries[i].transferSize;\n\t\t\t\tthis.profile.encodedBodySize += entries[i].encodedBodySize;\n\t\t\t}\n\t\t}\n\t\tvar event = new CustomEvent( 'greenerwp:profiler-update', { detail: { profiler: this } });\n\t\tdocument.dispatchEvent( event );\n\t};\n\n\t// Returns the profile.\n\tget() {\n\t\treturn this.profile;\n\t};\n};\n\nexport default Profiler;","/**\n * Implements the image previews.\n */\nclass ImagePreview {\n  constructor( image ) {\n\t\tthis.image = image;\n\t\tthis.listener = this.handleClick.bind( this );\n\t\timage.addEventListener( 'click', this.listener  );\n\t}\n\n\t/**\n\t * Handle preview image clicks.\n\t *\n\t * Loads original image.\n\t */\n\thandleClick( event ) {\n\t\tevent.preventDefault();\n\t\tthis.image.removeEventListener( 'click', this.listener  );\n\t\tthis.image.setAttribute(\n\t\t\t'srcset',\n\t\t\tthis.image.getAttribute( 'data-srcset' ) );\n\t\tthis.image.setAttribute(\n\t\t\t'src',\n\t\t\tthis.image.getAttribute( 'data-src' ) );\n\t\tthis.image.parentNode.classList.add( 'greenerwp-image-preview-wrap--loaded' );\n\t}\n};\n\nexport default ImagePreview;","var bundleURL = null;\nfunction getBundleURLCached() {\n  if (!bundleURL) {\n    bundleURL = getBundleURL();\n  }\n\n  return bundleURL;\n}\n\nfunction getBundleURL() {\n  // Attempt to find the URL of the current script and use that as the base URL\n  try {\n    throw new Error;\n  } catch (err) {\n    var matches = ('' + err.stack).match(/(https?|file|ftp|chrome-extension|moz-extension):\\/\\/[^)\\n]+/g);\n    if (matches) {\n      return getBaseURL(matches[0]);\n    }\n  }\n\n  return '/';\n}\n\nfunction getBaseURL(url) {\n  return ('' + url).replace(/^((?:https?|file|ftp|chrome-extension|moz-extension):\\/\\/.+)\\/[^/]+$/, '$1') + '/';\n}\n\nexports.getBundleURL = getBundleURLCached;\nexports.getBaseURL = getBaseURL;\n","var getBundleURL = require('./bundle-url').getBundleURL;\n\nfunction loadBundlesLazy(bundles) {\n  if (!Array.isArray(bundles)) {\n    bundles = [bundles]\n  }\n\n  var id = bundles[bundles.length - 1];\n\n  try {\n    return Promise.resolve(require(id));\n  } catch (err) {\n    if (err.code === 'MODULE_NOT_FOUND') {\n      return new LazyPromise(function (resolve, reject) {\n        loadBundles(bundles.slice(0, -1))\n          .then(function () {\n            return require(id);\n          })\n          .then(resolve, reject);\n      });\n    }\n\n    throw err;\n  }\n}\n\nfunction loadBundles(bundles) {\n  return Promise.all(bundles.map(loadBundle));\n}\n\nvar bundleLoaders = {};\nfunction registerBundleLoader(type, loader) {\n  bundleLoaders[type] = loader;\n}\n\nmodule.exports = exports = loadBundlesLazy;\nexports.load = loadBundles;\nexports.register = registerBundleLoader;\n\nvar bundles = {};\nfunction loadBundle(bundle) {\n  var id;\n  if (Array.isArray(bundle)) {\n    id = bundle[1];\n    bundle = bundle[0];\n  }\n\n  if (bundles[bundle]) {\n    return bundles[bundle];\n  }\n\n  var type = (bundle.substring(bundle.lastIndexOf('.') + 1, bundle.length) || bundle).toLowerCase();\n  var bundleLoader = bundleLoaders[type];\n  if (bundleLoader) {\n    return bundles[bundle] = bundleLoader(getBundleURL() + bundle)\n      .then(function (resolved) {\n        if (resolved) {\n          module.bundle.register(id, resolved);\n        }\n\n        return resolved;\n      }).catch(function(e) {\n        delete bundles[bundle];\n        \n        throw e;\n      });\n  }\n}\n\nfunction LazyPromise(executor) {\n  this.executor = executor;\n  this.promise = null;\n}\n\nLazyPromise.prototype.then = function (onSuccess, onError) {\n  if (this.promise === null) this.promise = new Promise(this.executor)\n  return this.promise.then(onSuccess, onError)\n};\n\nLazyPromise.prototype.catch = function (onError) {\n  if (this.promise === null) this.promise = new Promise(this.executor)\n  return this.promise.catch(onError)\n};\n","import ImagePreview from \"./image-preview.js\";\n\nif ( document.querySelector( 'img.lazyload' ) ) {\n\timport( 'lazysizes' ).then();\n}\n\n[...document.querySelectorAll( 'img.greenerwp-image-preview' )].forEach(\n\t(image) => new ImagePreview( image ) );","/**\n * Implements awareness widgets.\n */\nclass Awareness {\n\tconstructor( element ) {\n\t\tthis.widget = element;\n\n\t\tthis.state = {\n\t\t\tpercentLess: 0,\n\t\t\ttransferKBValue: 0,\n\t\t\ttransferMBValue: 0,\n\t\t};\n\n\t\tvar label = this.widget.querySelector( '.greenerwp-awareness-widget__transfer-graph-label' );\n\t\tvar description = this.widget.querySelector( '.greenerwp-awareness-widget__description' );\n\t\tlabel.addEventListener( 'click', ( event ) => {\n\t\t\tevent.preventDefault();\n\t\t\tdescription.style.display = 'block';\n\t\t} );\n\n\t\tdescription.querySelector( '.greenerwp-awareness-widget__description-close' )\n\t\t\t.addEventListener( 'click', ( event ) => {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tdescription.style.display = 'none';\n\t\t\t} );\n\n\t\tdocument.addEventListener(\n\t\t\t'greenerwp:profiler-update',\n\t\t\t( event ) => {\n\t\t\t\tthis.widget.style.display = 'block';\n\t\t\t\tvar profile = event.detail.profiler.get();\n\n\t\t\t\tthis.state = {\n\t\t\t\t\tpercentLess: 10,\n\t\t\t\t\ttransferKBValue: Math.round( profile.encodedBodySize / 1024 ),\n\t\t\t\t\ttransferMBValue: ( profile.encodedBodySize / 1024 / 1024 ).toFixed(2),\n\t\t\t\t};\n\n\t\t\t\t// \ttransferredSize,\n\t\t\t\t// \tencodedBodySize,\n\n\t\t\t\tthis.refresh();\n\t\t\t}\n\t\t);\n\n\t\tthis.refresh();\n\t};\n\n\trefresh() {\n\t\tObject.keys( this.state ).forEach( ( key ) => {\n\t\t\tvar elements = this.widget.querySelectorAll(\n\t\t\t\t'.greenerwp-awareness-widget__' + key );\n\t\t\t[...elements].forEach( ( element ) => {\n\t\t\t\tif ( element instanceof HTMLProgressElement ) {\n\t\t\t\t\telement.value = this.state[key];\n\t\t\t\t}\n\t\t\t\telement.innerHTML = this.state[key];\n\t\t\t} );\n\t\t} );\n\t\tvar graph = this.widget.querySelector( '.greenerwp-awareness-widget__transfer-graph-actual' );\n\t\tvar label = this.widget.querySelector( '.greenerwp-awareness-widget__transfer-graph-label' );\n\t\tif ( graph && label ) {\n\t\t\tvar percent = 75 * this.state.transferKBValue / ( 4 * 1024 );\n\t\t\tgraph.style.width = percent + '%';\n\t\t\tlabel.style.left = percent + '%';\n\t\t}\n\t};\n};\n\nexport default Awareness;","import Awareness from \"./awareness.js\";\n[...document.querySelectorAll( '.greenerwp-awareness-widget' )].forEach(\n\t( widget ) => {\n\t\tnew Awareness( widget );\n\t}\n);\n","\"use strict\";\n\nimport Profiler from \"./stats/profiler.js\";\n\nvar profiler = new Profiler( {\n\tsendProfile: greenerwpVars.statisticsEnabled,\n} );\n\nrequire( \"./media/index.js\" );\nrequire( './widgets/index.js' );","module.exports = function loadJSBundle(bundle) {\n  return new Promise(function (resolve, reject) {\n    var script = document.createElement('script');\n    script.async = true;\n    script.type = 'text/javascript';\n    script.charset = 'utf-8';\n    script.src = bundle;\n    script.onerror = function (e) {\n      script.onerror = script.onload = null;\n      reject(e);\n    };\n\n    script.onload = function () {\n      script.onerror = script.onload = null;\n      resolve();\n    };\n\n    document.getElementsByTagName('head')[0].appendChild(script);\n  });\n};\n"]}
  • greenerwp/trunk/dist/js/ui/admin/page.js

    r2228423 r2246211  
    55},{"./bundle-url":"Bdj8"}],"UOPm":[function(require,module,exports) {
    66document.getElementById("greenerwp-recipes")&&require("_bundle_loader")(require.resolve("../recipe/recipes")).then(function(e){wp.element.render(React.createElement("div",{className:"wrap"},React.createElement(e,null)),document.getElementById("greenerwp-recipes"))}),document.getElementById("greenerwp-settings")&&require("_bundle_loader")(require.resolve("../settings/settings")).then(function(e){wp.element.render(React.createElement("div",{className:"wrap"},React.createElement(e,null)),document.getElementById("greenerwp-settings"))}),document.getElementById("greenerwp-statistics")&&require("_bundle_loader")(require.resolve("../statistics/statistics")).then(function(e){wp.element.render(React.createElement("div",{className:"wrap"},React.createElement(e,null)),document.getElementById("greenerwp-statistics"))});
    7 },{"_bundle_loader":"U3OY","../recipe/recipes":[["recipes.f7feb29d.js","V1V3"],"recipes.f7feb29d.js.map","V1V3"],"../settings/settings":[["settings.d529786b.js","IKwB"],"settings.d529786b.js.map","IKwB"],"../statistics/statistics":[["statistics.b5b3b456.js","BBX2"],"statistics.b5b3b456.js.map",["react => React.a71cbda2.external","FF3K"],"BBX2"]}],"DsSw":[function(require,module,exports) {
    8 "use strict";function e(e,t,r,n,s,i,c){try{var a=e[i](c),o=a.value}catch(u){return void r(u)}a.done?t(o):Promise.resolve(o).then(n,s)}function t(t){return function(){var r=this,n=arguments;return new Promise(function(s,i){var c=t.apply(r,n);function a(t){e(c,s,i,a,o,"next",t)}function o(t){e(c,s,i,a,o,"throw",t)}a(void 0)})}}function r(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function n(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach(function(t){s(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function s(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.clearStatistics=_,exports.saveRecipeStates=I,exports.retrieveAnalysis=A,exports.retrieveRecipeStates=x,exports.retrieveStatistics=O,exports.saveSettings=F,exports.retrieveSettings=P,exports.withDispatch=exports.withSelect=exports.default=void 0;var i=wp.data,c=i.applyMiddleware,a=i.withSelect,o=i.withDispatch,u=i.registerStore,p=i.combineReducers;exports.withDispatch=o,exports.withSelect=a;var g=wp.reduxRoutine,S={toggleStep:function(e){return{type:"TOGGLE_STEP",recipe:e,step:arguments.length>1&&void 0!==arguments[1]?arguments[1]:null}},requestAnalysis:function(){return{type:"FETCH_ANALYSIS"}},receiveAnalysis:function(e){return{type:"FETCH_ANALYSIS",status:"success",response:e}},receiveAnalysisError:function(e){return{type:"FETCH_ANALYSIS",status:"error"}},requestRecipeStates:function(){return{type:"FETCH_RECIPESTATES"}},receiveRecipeStates:function(e){return{type:"FETCH_RECIPESTATES",status:"success",response:e}},receiveRecipeStatesError:function(e){return{type:"FETCH_RECIPESTATES",status:"error"}},savingSettings:function(){return{type:"SAVING_SETTINGS",saving:arguments.length>0&&void 0!==arguments[0]&&arguments[0]}},updateSetting:function(e){return{type:"UPDATE_SETTING",key:e,value:arguments.length>1&&void 0!==arguments[1]?arguments[1]:null}},requestSettings:function(){return{type:"FETCH_SETTINGS"}},receiveSettings:function(e){return{type:"FETCH_SETTINGS",status:"success",response:e}},receiveSettingsError:function(e){return{type:"FETCH_SETTINGS",status:"error"}},requestStatistics:function(){return{type:"FETCH_STATISTICS"}},receiveStatistics:function(e){return{type:"FETCH_STATISTICS",status:"success",response:e}},receiveStatisticsError:function(e){return{type:"FETCH_STATISTICS",status:"error"}}};function h(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"FETCH_ANALYSIS":switch(t.status){case"success":return t.response}}return e}function f(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0,r=t.step?t.recipe+"."+t.step:t.recipe;switch(t.type){case"TOGGLE_STEP":return n({},e,s({},r,!e[r]));case"FETCH_RECIPESTATES":switch(t.status){case"success":return t.response}}return e}function v(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"UPDATE_SETTING":return n({},e,s({},t.key,t.value));case"FETCH_SETTINGS":switch(t.status){case"success":return t.response}}return e}function d(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"FETCH_STATISTICS":switch(t.status){case"success":return t.response}}return e}function l(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{isLoading:!1},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"FETCH_ANALYSIS":switch(t.status){case void 0:return n({},e,{isLoading:!0});case"success":return n({},e,{isLoading:!1});case"error":return n({},e,{error:!0,isLoading:!1})}}return e}function T(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{isLoading:!1},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"FETCH_RECIPESTATES":switch(t.status){case void 0:return n({},e,{isLoading:!0});case"success":return n({},e,{isLoading:!1});case"error":return n({},e,{error:!0,isLoading:!1})}}return e}function y(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{isLoading:!1},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"SAVING_SETTINGS":return n({},e,{isSaving:t.saving});case"FETCH_SETTINGS":switch(t.status){case void 0:return n({},e,{isLoading:!0});case"success":return n({},e,{isLoading:!1});case"error":return n({},e,{error:!0,isLoading:!1})}}return e}function w(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{isLoading:!1},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"FETCH_STATISTICS":switch(t.status){case void 0:return n({},e,{isLoading:!0});case"success":return n({},e,{isLoading:!1});case"error":return n({},e,{error:!0,isLoading:!1})}}return e}var E=u("greenerwp",{reducer:p({fetchAnalysis:l,fetchRecipeStates:T,fetchStatistics:w,analysis:h,stepToggled:f,settings:v,statistics:d,fetchSettings:y}),actions:S,selectors:{getAnalysis:function(e){return e.analysis},getRecipes:function(e){return e.recipes},getSettings:function(e){return e.settings},getStatistics:function(e){return e.statistics},getStepToggled:function(e){return e.stepToggled||{}},isSaving:function(e){return e.fetchSettings&&e.fetchSettings.isSaving},isLoading:function(e){return e.fetchRecipeStates&&e.fetchRecipeStates.isLoading||e.fetchAnalysis&&e.fetchAnalysis.isLoading||e.fetchSettings&&e.fetchSettings.isLoading||e.fetchStatistics&&e.fetchStatistics.isLoading},hasError:function(e){return e.fetchRecipeStates&&e.fetchRecipeStates.error||e.fetchAnalysis&&e.fetchAnalysis.error||e.fetchSettings&&e.fetchSettings.error||e.fetchStatistics&&e.fetchStatistics.error}}});function A(){return R.apply(this,arguments)}function R(){return(R=t(regeneratorRuntime.mark(function e(){var t,r,n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return E.dispatch(S.requestAnalysis()),t={headers:{"X-WP-Nonce":wpApiSettings.nonce}},e.next=4,fetch(wpApiSettings.root+"greenerwp/v1/analysis",t);case 4:return r=e.sent,e.next=7,r.json();case 7:n=e.sent,r.ok&&n?E.dispatch(S.receiveAnalysis(n)):E.dispatch(S.receiveAnalysisError());case 9:case"end":return e.stop()}},e)}))).apply(this,arguments)}function x(){return m.apply(this,arguments)}function m(){return(m=t(regeneratorRuntime.mark(function e(){var t,r,n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return E.dispatch(S.requestRecipeStates()),t={headers:{"X-WP-Nonce":wpApiSettings.nonce}},e.next=4,fetch(wpApiSettings.root+"greenerwp/v1/recipes",t);case 4:return r=e.sent,e.next=7,r.json();case 7:n=e.sent,r.ok&&n?E.dispatch(S.receiveRecipeStates(n)):E.dispatch(S.receiveRecipeStatesError());case 9:case"end":return e.stop()}},e)}))).apply(this,arguments)}function I(){return C.apply(this,arguments)}function C(){return(C=t(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:t={headers:{"X-WP-Nonce":wpApiSettings.nonce},method:"POST",body:JSON.stringify(E.getState().stepToggled)},fetch(wpApiSettings.root+"greenerwp/v1/recipes",t);case 2:case"end":return e.stop()}},e)}))).apply(this,arguments)}function P(){return L.apply(this,arguments)}function L(){return(L=t(regeneratorRuntime.mark(function e(){var t,r,n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return E.dispatch(S.requestSettings()),t={headers:{"X-WP-Nonce":wpApiSettings.nonce}},e.next=4,fetch(wpApiSettings.root+"greenerwp/v1/settings",t);case 4:return r=e.sent,e.next=7,r.json();case 7:n=e.sent,r.ok&&n?E.dispatch(S.receiveSettings(n)):E.dispatch(S.receiveSettingsError());case 9:case"end":return e.stop()}},e)}))).apply(this,arguments)}function _(){return N.apply(this,arguments)}function N(){return(N=t(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return E.dispatch(S.requestStatistics()),t={headers:{"X-WP-Nonce":wpApiSettings.nonce},method:"DELETE"},e.next=4,fetch(wpApiSettings.root+"greenerwp/v1/statistics",t);case 4:e.sent,O();case 6:case"end":return e.stop()}},e)}))).apply(this,arguments)}function O(){return b.apply(this,arguments)}function b(){return(b=t(regeneratorRuntime.mark(function e(){var t,r,n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return E.dispatch(S.requestStatistics()),t={headers:{"X-WP-Nonce":wpApiSettings.nonce}},e.next=4,fetch(wpApiSettings.root+"greenerwp/v1/statistics",t);case 4:return r=e.sent,e.next=7,r.json();case 7:n=e.sent,r.ok&&n?E.dispatch(S.receiveStatistics(n)):E.dispatch(S.receiveStatisticsError());case 9:case"end":return e.stop()}},e)}))).apply(this,arguments)}function F(){return H.apply(this,arguments)}function H(){return(H=t(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return E.dispatch(S.savingSettings(!0)),t={headers:{"X-WP-Nonce":wpApiSettings.nonce},method:"POST",body:JSON.stringify(E.getState().settings)},e.next=4,fetch(wpApiSettings.root+"greenerwp/v1/settings",t);case 4:e.sent,E.dispatch(S.savingSettings(!1));case 6:case"end":return e.stop()}},e)}))).apply(this,arguments)}exports.default=E;
     7},{"_bundle_loader":"U3OY","../recipe/recipes":[["recipes.f7feb29d.js","V1V3"],"recipes.f7feb29d.js.map","V1V3"],"../settings/settings":[["settings.d529786b.js","IKwB"],"settings.d529786b.js.map","IKwB"],"../statistics/statistics":[["statistics.b98c1b62.js","BBX2"],"statistics.b98c1b62.js.map",["react => React.a71cbda2.external","FF3K"],"BBX2"]}],"DsSw":[function(require,module,exports) {
     8"use strict";function e(e,t,r,n,s,i,c){try{var a=e[i](c),o=a.value}catch(u){return void r(u)}a.done?t(o):Promise.resolve(o).then(n,s)}function t(t){return function(){var r=this,n=arguments;return new Promise(function(s,i){var c=t.apply(r,n);function a(t){e(c,s,i,a,o,"next",t)}function o(t){e(c,s,i,a,o,"throw",t)}a(void 0)})}}function r(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function n(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach(function(t){s(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function s(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.clearStatistics=_,exports.saveRecipeStates=I,exports.retrieveAnalysis=A,exports.retrieveRecipeStates=x,exports.retrieveStatistics=O,exports.saveSettings=F,exports.retrieveSettings=P,exports.withDispatch=exports.withSelect=exports.default=void 0;var i=wp.data,c=i.applyMiddleware,a=i.withSelect,o=i.withDispatch,u=i.registerStore,p=i.combineReducers;exports.withDispatch=o,exports.withSelect=a;var g=wp.reduxRoutine,S={toggleStep:function(e){return{type:"TOGGLE_STEP",recipe:e,step:arguments.length>1&&void 0!==arguments[1]?arguments[1]:null}},requestAnalysis:function(){return{type:"FETCH_ANALYSIS"}},receiveAnalysis:function(e){return{type:"FETCH_ANALYSIS",status:"success",response:e}},receiveAnalysisError:function(e){return{type:"FETCH_ANALYSIS",status:"error"}},requestRecipeStates:function(){return{type:"FETCH_RECIPESTATES"}},receiveRecipeStates:function(e){return{type:"FETCH_RECIPESTATES",status:"success",response:e}},receiveRecipeStatesError:function(e){return{type:"FETCH_RECIPESTATES",status:"error"}},savingSettings:function(){return{type:"SAVING_SETTINGS",saving:arguments.length>0&&void 0!==arguments[0]&&arguments[0]}},updateSetting:function(e){return{type:"UPDATE_SETTING",key:e,value:arguments.length>1&&void 0!==arguments[1]?arguments[1]:null}},requestSettings:function(){return{type:"FETCH_SETTINGS"}},receiveSettings:function(e){return{type:"FETCH_SETTINGS",status:"success",response:e}},receiveSettingsError:function(e){return{type:"FETCH_SETTINGS",status:"error"}},requestStatistics:function(){return{type:"FETCH_STATISTICS"}},receiveStatistics:function(e){return{type:"FETCH_STATISTICS",status:"success",response:e}},receiveStatisticsError:function(e){return{type:"FETCH_STATISTICS",status:"error"}}};function h(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"FETCH_ANALYSIS":switch(t.status){case"success":return t.response}}return e}function f(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0,r=t.step?t.recipe+"."+t.step:t.recipe;switch(t.type){case"TOGGLE_STEP":return n({},e,s({},r,!e[r]));case"FETCH_RECIPESTATES":switch(t.status){case"success":return t.response}}return e}function v(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"UPDATE_SETTING":return n({},e,s({},t.key,t.value));case"FETCH_SETTINGS":switch(t.status){case"success":return t.response}}return e}function d(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{pages:[],views:0},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"FETCH_STATISTICS":switch(t.status){case"success":return t.response}}return e}function l(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{isLoading:!1},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"FETCH_ANALYSIS":switch(t.status){case void 0:return n({},e,{isLoading:!0});case"success":return n({},e,{isLoading:!1});case"error":return n({},e,{error:!0,isLoading:!1})}}return e}function T(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{isLoading:!1},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"FETCH_RECIPESTATES":switch(t.status){case void 0:return n({},e,{isLoading:!0});case"success":return n({},e,{isLoading:!1});case"error":return n({},e,{error:!0,isLoading:!1})}}return e}function y(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{isLoading:!1},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"SAVING_SETTINGS":return n({},e,{isSaving:t.saving});case"FETCH_SETTINGS":switch(t.status){case void 0:return n({},e,{isLoading:!0});case"success":return n({},e,{isLoading:!1});case"error":return n({},e,{error:!0,isLoading:!1})}}return e}function w(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{isLoading:!1},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"FETCH_STATISTICS":switch(t.status){case void 0:return n({},e,{isLoading:!0});case"success":return n({},e,{isLoading:!1});case"error":return n({},e,{error:!0,isLoading:!1})}}return e}var E=u("greenerwp",{reducer:p({fetchAnalysis:l,fetchRecipeStates:T,fetchStatistics:w,analysis:h,stepToggled:f,settings:v,statistics:d,fetchSettings:y}),actions:S,selectors:{getAnalysis:function(e){return e.analysis},getRecipes:function(e){return e.recipes},getSettings:function(e){return e.settings},getStatistics:function(e){return e.statistics},getStepToggled:function(e){return e.stepToggled||{}},isSaving:function(e){return e.fetchSettings&&e.fetchSettings.isSaving},isLoading:function(e){return e.fetchRecipeStates&&e.fetchRecipeStates.isLoading||e.fetchAnalysis&&e.fetchAnalysis.isLoading||e.fetchSettings&&e.fetchSettings.isLoading||e.fetchStatistics&&e.fetchStatistics.isLoading},hasError:function(e){return e.fetchRecipeStates&&e.fetchRecipeStates.error||e.fetchAnalysis&&e.fetchAnalysis.error||e.fetchSettings&&e.fetchSettings.error||e.fetchStatistics&&e.fetchStatistics.error}}});function A(){return R.apply(this,arguments)}function R(){return(R=t(regeneratorRuntime.mark(function e(){var t,r,n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return E.dispatch(S.requestAnalysis()),t={headers:{"X-WP-Nonce":wpApiSettings.nonce}},e.next=4,fetch(wpApiSettings.root+"greenerwp/v1/analysis",t);case 4:return r=e.sent,e.next=7,r.json();case 7:n=e.sent,r.ok&&n?E.dispatch(S.receiveAnalysis(n)):E.dispatch(S.receiveAnalysisError());case 9:case"end":return e.stop()}},e)}))).apply(this,arguments)}function x(){return m.apply(this,arguments)}function m(){return(m=t(regeneratorRuntime.mark(function e(){var t,r,n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return E.dispatch(S.requestRecipeStates()),t={headers:{"X-WP-Nonce":wpApiSettings.nonce}},e.next=4,fetch(wpApiSettings.root+"greenerwp/v1/recipes",t);case 4:return r=e.sent,e.next=7,r.json();case 7:n=e.sent,r.ok&&n?E.dispatch(S.receiveRecipeStates(n)):E.dispatch(S.receiveRecipeStatesError());case 9:case"end":return e.stop()}},e)}))).apply(this,arguments)}function I(){return C.apply(this,arguments)}function C(){return(C=t(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:t={headers:{"X-WP-Nonce":wpApiSettings.nonce},method:"POST",body:JSON.stringify(E.getState().stepToggled)},fetch(wpApiSettings.root+"greenerwp/v1/recipes",t);case 2:case"end":return e.stop()}},e)}))).apply(this,arguments)}function P(){return L.apply(this,arguments)}function L(){return(L=t(regeneratorRuntime.mark(function e(){var t,r,n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return E.dispatch(S.requestSettings()),t={headers:{"X-WP-Nonce":wpApiSettings.nonce}},e.next=4,fetch(wpApiSettings.root+"greenerwp/v1/settings",t);case 4:return r=e.sent,e.next=7,r.json();case 7:n=e.sent,r.ok&&n?E.dispatch(S.receiveSettings(n)):E.dispatch(S.receiveSettingsError());case 9:case"end":return e.stop()}},e)}))).apply(this,arguments)}function _(){return N.apply(this,arguments)}function N(){return(N=t(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return E.dispatch(S.requestStatistics()),t={headers:{"X-WP-Nonce":wpApiSettings.nonce},method:"DELETE"},e.next=4,fetch(wpApiSettings.root+"greenerwp/v1/statistics",t);case 4:e.sent,O();case 6:case"end":return e.stop()}},e)}))).apply(this,arguments)}function O(){return b.apply(this,arguments)}function b(){return(b=t(regeneratorRuntime.mark(function e(){var t,r,n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return E.dispatch(S.requestStatistics()),t={headers:{"X-WP-Nonce":wpApiSettings.nonce}},e.next=4,fetch(wpApiSettings.root+"greenerwp/v1/statistics",t);case 4:return r=e.sent,e.next=7,r.json();case 7:n=e.sent,r.ok&&n?E.dispatch(S.receiveStatistics(n)):E.dispatch(S.receiveStatisticsError());case 9:case"end":return e.stop()}},e)}))).apply(this,arguments)}function F(){return H.apply(this,arguments)}function H(){return(H=t(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return E.dispatch(S.savingSettings(!0)),t={headers:{"X-WP-Nonce":wpApiSettings.nonce},method:"POST",body:JSON.stringify(E.getState().settings)},e.next=4,fetch(wpApiSettings.root+"greenerwp/v1/settings",t);case 4:e.sent,E.dispatch(S.savingSettings(!1));case 6:case"end":return e.stop()}},e)}))).apply(this,arguments)}exports.default=E;
    99},{}],"C1LB":[function(require,module,exports) {
    1010module.exports=function(n){return new Promise(function(e,o){var r=document.createElement("script");r.async=!0,r.type="text/javascript",r.charset="utf-8",r.src=n,r.onerror=function(n){r.onerror=r.onload=null,o(n)},r.onload=function(){r.onerror=r.onload=null,e()},document.getElementsByTagName("head")[0].appendChild(r)})};
  • greenerwp/trunk/dist/js/ui/admin/page.js.map

    r2228423 r2246211  
    1 {"version":3,"sources":["../../../node_modules/parcel-bundler/src/builtins/bundle-url.js","../../../node_modules/parcel-bundler/src/builtins/bundle-loader.js","page.js","../store.js","../../../node_modules/parcel-bundler/src/builtins/loaders/browser/js-loader.js"],"names":["bundleURL","getBundleURLCached","getBundleURL","Error","err","matches","stack","match","getBaseURL","url","replace","exports","require","loadBundlesLazy","bundles","Array","isArray","id","length","Promise","resolve","code","LazyPromise","reject","loadBundles","slice","then","all","map","loadBundle","bundleLoaders","registerBundleLoader","type","loader","module","load","register","bundle","substring","lastIndexOf","toLowerCase","bundleLoader","resolved","catch","e","executor","promise","prototype","onSuccess","onError","document","getElementById","Recipes","wp","element","render","SettingsTabs","Statistics","data","applyMiddleware","withSelect","withDispatch","registerStore","combineReducers","createMiddleware","reduxRoutine","actions","toggleStep","recipe","step","requestAnalysis","receiveAnalysis","state","status","response","receiveAnalysisError","requestRecipeStates","receiveRecipeStates","receiveRecipeStatesError","savingSettings","saving","updateSetting","key","value","requestSettings","receiveSettings","receiveSettingsError","requestStatistics","receiveStatistics","receiveStatisticsError","analysis","action","stepToggled","settings","statistics","fetchAnalysis","isLoading","undefined","error","fetchRecipeStates","fetchSettings","isSaving","fetchStatistics","Store","reducer","selectors","getAnalysis","getRecipes","recipes","getSettings","getStatistics","getStepToggled","hasError","retrieveAnalysis","fetch","dispatch","opts","headers","wpApiSettings","nonce","root","json","ok","retrieveRecipeStates","saveRecipeStates","method","body","JSON","stringify","getState","retrieveSettings","clearStatistics","retrieveStatistics","saveSettings","script","createElement","async","charset","src","onerror","onload","getElementsByTagName","appendChild"],"mappings":"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","file":"page.js","sourceRoot":"../../../../js/ui/admin","sourcesContent":["var bundleURL = null;\nfunction getBundleURLCached() {\n  if (!bundleURL) {\n    bundleURL = getBundleURL();\n  }\n\n  return bundleURL;\n}\n\nfunction getBundleURL() {\n  // Attempt to find the URL of the current script and use that as the base URL\n  try {\n    throw new Error;\n  } catch (err) {\n    var matches = ('' + err.stack).match(/(https?|file|ftp|chrome-extension|moz-extension):\\/\\/[^)\\n]+/g);\n    if (matches) {\n      return getBaseURL(matches[0]);\n    }\n  }\n\n  return '/';\n}\n\nfunction getBaseURL(url) {\n  return ('' + url).replace(/^((?:https?|file|ftp|chrome-extension|moz-extension):\\/\\/.+)\\/[^/]+$/, '$1') + '/';\n}\n\nexports.getBundleURL = getBundleURLCached;\nexports.getBaseURL = getBaseURL;\n","var getBundleURL = require('./bundle-url').getBundleURL;\n\nfunction loadBundlesLazy(bundles) {\n  if (!Array.isArray(bundles)) {\n    bundles = [bundles]\n  }\n\n  var id = bundles[bundles.length - 1];\n\n  try {\n    return Promise.resolve(require(id));\n  } catch (err) {\n    if (err.code === 'MODULE_NOT_FOUND') {\n      return new LazyPromise(function (resolve, reject) {\n        loadBundles(bundles.slice(0, -1))\n          .then(function () {\n            return require(id);\n          })\n          .then(resolve, reject);\n      });\n    }\n\n    throw err;\n  }\n}\n\nfunction loadBundles(bundles) {\n  return Promise.all(bundles.map(loadBundle));\n}\n\nvar bundleLoaders = {};\nfunction registerBundleLoader(type, loader) {\n  bundleLoaders[type] = loader;\n}\n\nmodule.exports = exports = loadBundlesLazy;\nexports.load = loadBundles;\nexports.register = registerBundleLoader;\n\nvar bundles = {};\nfunction loadBundle(bundle) {\n  var id;\n  if (Array.isArray(bundle)) {\n    id = bundle[1];\n    bundle = bundle[0];\n  }\n\n  if (bundles[bundle]) {\n    return bundles[bundle];\n  }\n\n  var type = (bundle.substring(bundle.lastIndexOf('.') + 1, bundle.length) || bundle).toLowerCase();\n  var bundleLoader = bundleLoaders[type];\n  if (bundleLoader) {\n    return bundles[bundle] = bundleLoader(getBundleURL() + bundle)\n      .then(function (resolved) {\n        if (resolved) {\n          module.bundle.register(id, resolved);\n        }\n\n        return resolved;\n      }).catch(function(e) {\n        delete bundles[bundle];\n        \n        throw e;\n      });\n  }\n}\n\nfunction LazyPromise(executor) {\n  this.executor = executor;\n  this.promise = null;\n}\n\nLazyPromise.prototype.then = function (onSuccess, onError) {\n  if (this.promise === null) this.promise = new Promise(this.executor)\n  return this.promise.then(onSuccess, onError)\n};\n\nLazyPromise.prototype.catch = function (onError) {\n  if (this.promise === null) this.promise = new Promise(this.executor)\n  return this.promise.catch(onError)\n};\n","if ( document.getElementById( 'greenerwp-recipes' ) ) {\n\timport( '../recipe/recipes' ).then(\n\t\t(Recipes) => {\n\t\t\twp.element.render( <div className=\"wrap\"><Recipes/></div>, document.getElementById( 'greenerwp-recipes' ) );\n\t\t} );\n}\n\nif ( document.getElementById( 'greenerwp-settings' ) ) {\n\timport( '../settings/settings' ).then(\n\t\t(SettingsTabs) => {\n\t\t\twp.element.render( <div className=\"wrap\"><SettingsTabs/></div>, document.getElementById( 'greenerwp-settings' ) );\n\t\t} );\n}\n\nif ( document.getElementById( 'greenerwp-statistics' ) ) {\n\timport( '../statistics/statistics' ).then(\n\t\t(Statistics) => {\n\t\t\twp.element.render( <div className=\"wrap\"><Statistics/></div>, document.getElementById( 'greenerwp-statistics' ) );\n\t\t} );\n}\n","const { applyMiddleware, withSelect, withDispatch, registerStore, combineReducers } = wp.data;\nconst createMiddleware = wp.reduxRoutine;\n\nconst actions = {\n\ttoggleStep( recipe, step=null ) {\n\t\treturn {\n\t\t\ttype: 'TOGGLE_STEP',\n\t\t\trecipe,\n\t\t\tstep,\n\t\t};\n\t},\n\trequestAnalysis() {\n\t\treturn {\n\t\t\ttype: 'FETCH_ANALYSIS',\n\t\t};\n\t},\n\treceiveAnalysis( state ) {\n\t\treturn {\n\t\t\ttype: 'FETCH_ANALYSIS',\n\t\t\tstatus: 'success',\n\t\t\tresponse: state,\n\t\t};\n\t},\n\treceiveAnalysisError( state ) {\n\t\treturn {\n\t\t\ttype: 'FETCH_ANALYSIS',\n\t\t\tstatus: 'error',\n\t\t};\n\t},\n\trequestRecipeStates() {\n\t\treturn {\n\t\t\ttype: 'FETCH_RECIPESTATES',\n\t\t};\n\t},\n\treceiveRecipeStates( state ) {\n\t\treturn {\n\t\t\ttype: 'FETCH_RECIPESTATES',\n\t\t\tstatus: 'success',\n\t\t\tresponse: state,\n\t\t};\n\t},\n\treceiveRecipeStatesError( state ) {\n\t\treturn {\n\t\t\ttype: 'FETCH_RECIPESTATES',\n\t\t\tstatus: 'error',\n\t\t};\n\t},\n\tsavingSettings( saving=false ) {\n\t\treturn {\n\t\t\ttype: 'SAVING_SETTINGS',\n\t\t\tsaving: saving,\n\t\t};\n\t},\n\tupdateSetting( key, value=null ) {\n\t\treturn {\n\t\t\ttype: 'UPDATE_SETTING',\n\t\t\tkey,\n\t\t\tvalue,\n\t\t};\n\t},\n\trequestSettings() {\n\t\treturn {\n\t\t\ttype: 'FETCH_SETTINGS',\n\t\t};\n\t},\n\treceiveSettings( state ) {\n\t\treturn {\n\t\t\ttype: 'FETCH_SETTINGS',\n\t\t\tstatus: 'success',\n\t\t\tresponse: state,\n\t\t};\n\t},\n\treceiveSettingsError( state ) {\n\t\treturn {\n\t\t\ttype: 'FETCH_SETTINGS',\n\t\t\tstatus: 'error',\n\t\t};\n\t},\n\trequestStatistics() {\n\t\treturn {\n\t\t\ttype: 'FETCH_STATISTICS',\n\t\t};\n\t},\n\treceiveStatistics( state ) {\n\t\treturn {\n\t\t\ttype: 'FETCH_STATISTICS',\n\t\t\tstatus: 'success',\n\t\t\tresponse: state,\n\t\t};\n\t},\n\treceiveStatisticsError( state ) {\n\t\treturn {\n\t\t\ttype: 'FETCH_STATISTICS',\n\t\t\tstatus: 'error',\n\t\t};\n\t},\n};\n\n// Reducer for analysis.\nfunction analysis( state = { }, action ) {\n\tswitch ( action.type ) {\n\tcase 'FETCH_ANALYSIS':\n\t\tswitch ( action.status ) {\n\t\tcase 'success':\n\t\t\treturn action.response;\n\t\t}\n\t}\n\treturn state;\n};\n\n\n// Reducer for step toggling.\nfunction stepToggled( state = {}, action ) {\n\tconst key = action.step ? action.recipe + '.' + action.step : action.recipe;\n\tswitch ( action.type ) {\n\tcase 'TOGGLE_STEP':\n\t\treturn {\n\t\t\t...state,\n\t\t\t[key]: ! state[key],\n\t\t};\n\tcase 'FETCH_RECIPESTATES':\n\t\tswitch ( action.status ) {\n\t\tcase 'success':\n\t\t\treturn action.response;\n\t\t}\n\t}\n\treturn state;\n};\n\n// Reducer for setting update.\nfunction settings( state = { }, action ) {\n\tswitch ( action.type ) {\n\tcase 'UPDATE_SETTING':\n\t\treturn {\n\t\t\t...state,\n\t\t\t[action.key]: action.value,\n\t\t};\n\tcase 'FETCH_SETTINGS':\n\t\tswitch ( action.status ) {\n\t\tcase 'success':\n\t\t\treturn action.response;\n\t\t}\n\t}\n\treturn state;\n};\n\n// Reducer for statistics.\nfunction statistics( state = [], action ) {\n\tswitch ( action.type ) {\n\tcase 'FETCH_STATISTICS':\n\t\tswitch ( action.status ) {\n\t\tcase 'success':\n\t\t\treturn action.response;\n\t\t}\n\t}\n\treturn state;\n};\n\n// Reducer for analysis fetching.\nfunction fetchAnalysis( state = { isLoading: false }, action ) {\n\tswitch ( action.type ) {\n\tcase 'FETCH_ANALYSIS':\n\t\tswitch ( action.status ) {\n\t\tcase undefined:\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLoading: true,\n\t\t\t};\n\t\tcase 'success':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLoading: false,\n\t\t\t};\n\t\tcase 'error':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\terror: true,\n\t\t\t\tisLoading: false,\n\t\t\t};\n\t\t}\n\t}\n\treturn state;\n};\n\n// Reducer for recipeStates fetching.\nfunction fetchRecipeStates( state = { isLoading: false }, action ) {\n\tswitch ( action.type ) {\n\tcase 'FETCH_RECIPESTATES':\n\t\tswitch ( action.status ) {\n\t\tcase undefined:\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLoading: true,\n\t\t\t};\n\t\tcase 'success':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLoading: false,\n\t\t\t};\n\t\tcase 'error':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\terror: true,\n\t\t\t\tisLoading: false,\n\t\t\t};\n\t\t}\n\t}\n\treturn state;\n};\n\n// Reducer for settings fetching.\nfunction fetchSettings( state = { isLoading: false }, action ) {\n\tswitch ( action.type ) {\n\tcase 'SAVING_SETTINGS':\n\t\treturn {\n\t\t\t...state,\n\t\t\tisSaving: action.saving,\n\t\t};\n\tcase 'FETCH_SETTINGS':\n\t\tswitch ( action.status ) {\n\t\tcase undefined:\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLoading: true,\n\t\t\t};\n\t\tcase 'success':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLoading: false,\n\t\t\t};\n\t\tcase 'error':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\terror: true,\n\t\t\t\tisLoading: false,\n\t\t\t};\n\t\t}\n\t}\n\treturn state;\n};\n\n// Reducer for statistics fetching.\nfunction fetchStatistics( state = { isLoading: false }, action ) {\n\tswitch ( action.type ) {\n\tcase 'FETCH_STATISTICS':\n\t\tswitch ( action.status ) {\n\t\tcase undefined:\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLoading: true,\n\t\t\t};\n\t\tcase 'success':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLoading: false,\n\t\t\t};\n\t\tcase 'error':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\terror: true,\n\t\t\t\tisLoading: false,\n\t\t\t};\n\t\t}\n\t}\n\treturn state;\n};\n\nconst Store = registerStore( 'greenerwp', {\n\treducer: combineReducers( {\n\t\tfetchAnalysis,\n\t\tfetchRecipeStates,\n\t\tfetchStatistics,\n\t\tanalysis,\n\t\tstepToggled,\n\t\tsettings,\n\t\tstatistics,\n\t\tfetchSettings,\n\t} ),\n\tactions,\n\n\tselectors: {\n\t\tgetAnalysis( state ) {\n\t\t\treturn state.analysis;\n\t\t},\n\t\tgetRecipes( state ) {\n\t\t\treturn state.recipes;\n\t\t},\n\t\tgetSettings( state ) {\n\t\t\treturn state.settings;\n\t\t},\n\t\tgetStatistics( state ) {\n\t\t\treturn state.statistics;\n\t\t},\n\t\tgetStepToggled( state ) {\n\t\t\treturn state.stepToggled || {};\n\t\t},\n\t\tisSaving( state ) {\n\t\t\treturn state.fetchSettings && state.fetchSettings.isSaving;\n\t\t},\n\t\tisLoading( state ) {\n\t\t\treturn state.fetchRecipeStates && state.fetchRecipeStates.isLoading\n\t\t\t\t|| state.fetchAnalysis && state.fetchAnalysis.isLoading\n\t\t\t\t|| state.fetchSettings && state.fetchSettings.isLoading\n\t\t\t\t|| state.fetchStatistics && state.fetchStatistics.isLoading;\n\t\t},\n\t\thasError( state ) {\n\t\t\treturn state.fetchRecipeStates && state.fetchRecipeStates.error\n\t\t\t\t|| state.fetchAnalysis && state.fetchAnalysis.error\n\t\t\t\t|| state.fetchSettings && state.fetchSettings.error\n\t\t\t\t|| state.fetchStatistics && state.fetchStatistics.error;\n\t\t},\n\t},\n} );\n\nasync function retrieveAnalysis() {\n\tStore.dispatch( actions.requestAnalysis() );\n\tconst opts = {\n\t\theaders: {\n\t\t\t'X-WP-Nonce': wpApiSettings.nonce,\n\t\t},\n\t};\n\tvar response = await fetch( wpApiSettings.root + 'greenerwp/v1/analysis', opts );\n\tvar json = await response.json();\n\tif ( response.ok && json ) {\n\t\tStore.dispatch( actions.receiveAnalysis( json ) );\n\t} else {\n\t\tStore.dispatch( actions.receiveAnalysisError() );\n\t}\n}\n\nasync function retrieveRecipeStates() {\n\tStore.dispatch( actions.requestRecipeStates() );\n\tconst opts = {\n\t\theaders: {\n\t\t\t'X-WP-Nonce': wpApiSettings.nonce,\n\t\t},\n\t};\n\tvar response = await fetch( wpApiSettings.root + 'greenerwp/v1/recipes', opts );\n\tvar json = await response.json();\n\tif ( response.ok && json ) {\n\t\tStore.dispatch( actions.receiveRecipeStates( json ) );\n\t} else {\n\t\tStore.dispatch( actions.receiveRecipeStatesError() );\n\t}\n}\n\nasync function saveRecipeStates() {\n\tconst opts = {\n\t\theaders: {\n\t\t\t'X-WP-Nonce': wpApiSettings.nonce,\n\t\t},\n\t\tmethod: 'POST',\n\t\tbody: JSON.stringify( Store.getState().stepToggled ),\n\t};\n\tfetch( wpApiSettings.root + 'greenerwp/v1/recipes', opts );\n}\n\nasync function retrieveSettings() {\n\tStore.dispatch( actions.requestSettings() );\n\tconst opts = {\n\t\theaders: {\n\t\t\t'X-WP-Nonce': wpApiSettings.nonce,\n\t\t},\n\t};\n\tvar response = await fetch( wpApiSettings.root + 'greenerwp/v1/settings', opts );\n\tvar json = await response.json();\n\tif ( response.ok && json ) {\n\t\tStore.dispatch( actions.receiveSettings( json ) );\n\t} else {\n\t\tStore.dispatch( actions.receiveSettingsError() );\n\t}\n}\n\nasync function clearStatistics() {\n\tStore.dispatch( actions.requestStatistics() );\n\tconst opts = {\n\t\theaders: {\n\t\t\t'X-WP-Nonce': wpApiSettings.nonce,\n\t\t},\n\t\tmethod: 'DELETE',\n\t};\n\tvar response = await fetch( wpApiSettings.root + 'greenerwp/v1/statistics', opts );\n\tretrieveStatistics();\n}\n\nasync function retrieveStatistics() {\n\tStore.dispatch( actions.requestStatistics() );\n\tconst opts = {\n\t\theaders: {\n\t\t\t'X-WP-Nonce': wpApiSettings.nonce,\n\t\t},\n\t};\n\tvar response = await fetch( wpApiSettings.root + 'greenerwp/v1/statistics', opts );\n\tvar json = await response.json();\n\tif ( response.ok && json ) {\n\t\tStore.dispatch( actions.receiveStatistics( json ) );\n\t} else {\n\t\tStore.dispatch( actions.receiveStatisticsError() );\n\t}\n}\n\nasync function saveSettings() {\n\tStore.dispatch( actions.savingSettings( true ) );\n\tconst opts = {\n\t\theaders: {\n\t\t\t'X-WP-Nonce': wpApiSettings.nonce,\n\t\t},\n\t\tmethod: 'POST',\n\t\tbody: JSON.stringify( Store.getState().settings ),\n\t};\n\tvar response = await fetch( wpApiSettings.root + 'greenerwp/v1/settings', opts );\n\tStore.dispatch( actions.savingSettings( false ) );\n}\n\nexport {\n\tStore as default, withSelect, withDispatch,\n\tclearStatistics,\n\tsaveRecipeStates,\n\tretrieveAnalysis,\n\tretrieveRecipeStates,\n\tretrieveStatistics,\n\tsaveSettings,\n\tretrieveSettings,\n};","module.exports = function loadJSBundle(bundle) {\n  return new Promise(function (resolve, reject) {\n    var script = document.createElement('script');\n    script.async = true;\n    script.type = 'text/javascript';\n    script.charset = 'utf-8';\n    script.src = bundle;\n    script.onerror = function (e) {\n      script.onerror = script.onload = null;\n      reject(e);\n    };\n\n    script.onload = function () {\n      script.onerror = script.onload = null;\n      resolve();\n    };\n\n    document.getElementsByTagName('head')[0].appendChild(script);\n  });\n};\n"]}
     1{"version":3,"sources":["../../../node_modules/parcel-bundler/src/builtins/bundle-url.js","../../../node_modules/parcel-bundler/src/builtins/bundle-loader.js","page.js","../store.js","../../../node_modules/parcel-bundler/src/builtins/loaders/browser/js-loader.js"],"names":["bundleURL","getBundleURLCached","getBundleURL","Error","err","matches","stack","match","getBaseURL","url","replace","exports","require","loadBundlesLazy","bundles","Array","isArray","id","length","Promise","resolve","code","LazyPromise","reject","loadBundles","slice","then","all","map","loadBundle","bundleLoaders","registerBundleLoader","type","loader","module","load","register","bundle","substring","lastIndexOf","toLowerCase","bundleLoader","resolved","catch","e","executor","promise","prototype","onSuccess","onError","document","getElementById","Recipes","wp","element","render","SettingsTabs","Statistics","data","applyMiddleware","withSelect","withDispatch","registerStore","combineReducers","createMiddleware","reduxRoutine","actions","toggleStep","recipe","step","requestAnalysis","receiveAnalysis","state","status","response","receiveAnalysisError","requestRecipeStates","receiveRecipeStates","receiveRecipeStatesError","savingSettings","saving","updateSetting","key","value","requestSettings","receiveSettings","receiveSettingsError","requestStatistics","receiveStatistics","receiveStatisticsError","analysis","action","stepToggled","settings","statistics","pages","views","fetchAnalysis","isLoading","undefined","error","fetchRecipeStates","fetchSettings","isSaving","fetchStatistics","Store","reducer","selectors","getAnalysis","getRecipes","recipes","getSettings","getStatistics","getStepToggled","hasError","retrieveAnalysis","fetch","dispatch","opts","headers","wpApiSettings","nonce","root","json","ok","retrieveRecipeStates","saveRecipeStates","method","body","JSON","stringify","getState","retrieveSettings","clearStatistics","retrieveStatistics","saveSettings","script","createElement","async","charset","src","onerror","onload","getElementsByTagName","appendChild"],"mappings":"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","file":"page.js","sourceRoot":"../../../../js/ui/admin","sourcesContent":["var bundleURL = null;\nfunction getBundleURLCached() {\n  if (!bundleURL) {\n    bundleURL = getBundleURL();\n  }\n\n  return bundleURL;\n}\n\nfunction getBundleURL() {\n  // Attempt to find the URL of the current script and use that as the base URL\n  try {\n    throw new Error;\n  } catch (err) {\n    var matches = ('' + err.stack).match(/(https?|file|ftp|chrome-extension|moz-extension):\\/\\/[^)\\n]+/g);\n    if (matches) {\n      return getBaseURL(matches[0]);\n    }\n  }\n\n  return '/';\n}\n\nfunction getBaseURL(url) {\n  return ('' + url).replace(/^((?:https?|file|ftp|chrome-extension|moz-extension):\\/\\/.+)\\/[^/]+$/, '$1') + '/';\n}\n\nexports.getBundleURL = getBundleURLCached;\nexports.getBaseURL = getBaseURL;\n","var getBundleURL = require('./bundle-url').getBundleURL;\n\nfunction loadBundlesLazy(bundles) {\n  if (!Array.isArray(bundles)) {\n    bundles = [bundles]\n  }\n\n  var id = bundles[bundles.length - 1];\n\n  try {\n    return Promise.resolve(require(id));\n  } catch (err) {\n    if (err.code === 'MODULE_NOT_FOUND') {\n      return new LazyPromise(function (resolve, reject) {\n        loadBundles(bundles.slice(0, -1))\n          .then(function () {\n            return require(id);\n          })\n          .then(resolve, reject);\n      });\n    }\n\n    throw err;\n  }\n}\n\nfunction loadBundles(bundles) {\n  return Promise.all(bundles.map(loadBundle));\n}\n\nvar bundleLoaders = {};\nfunction registerBundleLoader(type, loader) {\n  bundleLoaders[type] = loader;\n}\n\nmodule.exports = exports = loadBundlesLazy;\nexports.load = loadBundles;\nexports.register = registerBundleLoader;\n\nvar bundles = {};\nfunction loadBundle(bundle) {\n  var id;\n  if (Array.isArray(bundle)) {\n    id = bundle[1];\n    bundle = bundle[0];\n  }\n\n  if (bundles[bundle]) {\n    return bundles[bundle];\n  }\n\n  var type = (bundle.substring(bundle.lastIndexOf('.') + 1, bundle.length) || bundle).toLowerCase();\n  var bundleLoader = bundleLoaders[type];\n  if (bundleLoader) {\n    return bundles[bundle] = bundleLoader(getBundleURL() + bundle)\n      .then(function (resolved) {\n        if (resolved) {\n          module.bundle.register(id, resolved);\n        }\n\n        return resolved;\n      }).catch(function(e) {\n        delete bundles[bundle];\n        \n        throw e;\n      });\n  }\n}\n\nfunction LazyPromise(executor) {\n  this.executor = executor;\n  this.promise = null;\n}\n\nLazyPromise.prototype.then = function (onSuccess, onError) {\n  if (this.promise === null) this.promise = new Promise(this.executor)\n  return this.promise.then(onSuccess, onError)\n};\n\nLazyPromise.prototype.catch = function (onError) {\n  if (this.promise === null) this.promise = new Promise(this.executor)\n  return this.promise.catch(onError)\n};\n","if ( document.getElementById( 'greenerwp-recipes' ) ) {\n\timport( '../recipe/recipes' ).then(\n\t\t(Recipes) => {\n\t\t\twp.element.render( <div className=\"wrap\"><Recipes/></div>, document.getElementById( 'greenerwp-recipes' ) );\n\t\t} );\n}\n\nif ( document.getElementById( 'greenerwp-settings' ) ) {\n\timport( '../settings/settings' ).then(\n\t\t(SettingsTabs) => {\n\t\t\twp.element.render( <div className=\"wrap\"><SettingsTabs/></div>, document.getElementById( 'greenerwp-settings' ) );\n\t\t} );\n}\n\nif ( document.getElementById( 'greenerwp-statistics' ) ) {\n\timport( '../statistics/statistics' ).then(\n\t\t(Statistics) => {\n\t\t\twp.element.render( <div className=\"wrap\"><Statistics/></div>, document.getElementById( 'greenerwp-statistics' ) );\n\t\t} );\n}\n","const { applyMiddleware, withSelect, withDispatch, registerStore, combineReducers } = wp.data;\nconst createMiddleware = wp.reduxRoutine;\n\nconst actions = {\n\ttoggleStep( recipe, step=null ) {\n\t\treturn {\n\t\t\ttype: 'TOGGLE_STEP',\n\t\t\trecipe,\n\t\t\tstep,\n\t\t};\n\t},\n\trequestAnalysis() {\n\t\treturn {\n\t\t\ttype: 'FETCH_ANALYSIS',\n\t\t};\n\t},\n\treceiveAnalysis( state ) {\n\t\treturn {\n\t\t\ttype: 'FETCH_ANALYSIS',\n\t\t\tstatus: 'success',\n\t\t\tresponse: state,\n\t\t};\n\t},\n\treceiveAnalysisError( state ) {\n\t\treturn {\n\t\t\ttype: 'FETCH_ANALYSIS',\n\t\t\tstatus: 'error',\n\t\t};\n\t},\n\trequestRecipeStates() {\n\t\treturn {\n\t\t\ttype: 'FETCH_RECIPESTATES',\n\t\t};\n\t},\n\treceiveRecipeStates( state ) {\n\t\treturn {\n\t\t\ttype: 'FETCH_RECIPESTATES',\n\t\t\tstatus: 'success',\n\t\t\tresponse: state,\n\t\t};\n\t},\n\treceiveRecipeStatesError( state ) {\n\t\treturn {\n\t\t\ttype: 'FETCH_RECIPESTATES',\n\t\t\tstatus: 'error',\n\t\t};\n\t},\n\tsavingSettings( saving=false ) {\n\t\treturn {\n\t\t\ttype: 'SAVING_SETTINGS',\n\t\t\tsaving: saving,\n\t\t};\n\t},\n\tupdateSetting( key, value=null ) {\n\t\treturn {\n\t\t\ttype: 'UPDATE_SETTING',\n\t\t\tkey,\n\t\t\tvalue,\n\t\t};\n\t},\n\trequestSettings() {\n\t\treturn {\n\t\t\ttype: 'FETCH_SETTINGS',\n\t\t};\n\t},\n\treceiveSettings( state ) {\n\t\treturn {\n\t\t\ttype: 'FETCH_SETTINGS',\n\t\t\tstatus: 'success',\n\t\t\tresponse: state,\n\t\t};\n\t},\n\treceiveSettingsError( state ) {\n\t\treturn {\n\t\t\ttype: 'FETCH_SETTINGS',\n\t\t\tstatus: 'error',\n\t\t};\n\t},\n\trequestStatistics() {\n\t\treturn {\n\t\t\ttype: 'FETCH_STATISTICS',\n\t\t};\n\t},\n\treceiveStatistics( state ) {\n\t\treturn {\n\t\t\ttype: 'FETCH_STATISTICS',\n\t\t\tstatus: 'success',\n\t\t\tresponse: state,\n\t\t};\n\t},\n\treceiveStatisticsError( state ) {\n\t\treturn {\n\t\t\ttype: 'FETCH_STATISTICS',\n\t\t\tstatus: 'error',\n\t\t};\n\t},\n};\n\n// Reducer for analysis.\nfunction analysis( state = { }, action ) {\n\tswitch ( action.type ) {\n\tcase 'FETCH_ANALYSIS':\n\t\tswitch ( action.status ) {\n\t\tcase 'success':\n\t\t\treturn action.response;\n\t\t}\n\t}\n\treturn state;\n};\n\n\n// Reducer for step toggling.\nfunction stepToggled( state = {}, action ) {\n\tconst key = action.step ? action.recipe + '.' + action.step : action.recipe;\n\tswitch ( action.type ) {\n\tcase 'TOGGLE_STEP':\n\t\treturn {\n\t\t\t...state,\n\t\t\t[key]: ! state[key],\n\t\t};\n\tcase 'FETCH_RECIPESTATES':\n\t\tswitch ( action.status ) {\n\t\tcase 'success':\n\t\t\treturn action.response;\n\t\t}\n\t}\n\treturn state;\n};\n\n// Reducer for setting update.\nfunction settings( state = { }, action ) {\n\tswitch ( action.type ) {\n\tcase 'UPDATE_SETTING':\n\t\treturn {\n\t\t\t...state,\n\t\t\t[action.key]: action.value,\n\t\t};\n\tcase 'FETCH_SETTINGS':\n\t\tswitch ( action.status ) {\n\t\tcase 'success':\n\t\t\treturn action.response;\n\t\t}\n\t}\n\treturn state;\n};\n\n// Reducer for statistics.\nfunction statistics( state = { pages: [], views: 0 }, action ) {\n\tswitch ( action.type ) {\n\tcase 'FETCH_STATISTICS':\n\t\tswitch ( action.status ) {\n\t\tcase 'success':\n\t\t\treturn action.response;\n\t\t}\n\t}\n\treturn state;\n};\n\n// Reducer for analysis fetching.\nfunction fetchAnalysis( state = { isLoading: false }, action ) {\n\tswitch ( action.type ) {\n\tcase 'FETCH_ANALYSIS':\n\t\tswitch ( action.status ) {\n\t\tcase undefined:\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLoading: true,\n\t\t\t};\n\t\tcase 'success':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLoading: false,\n\t\t\t};\n\t\tcase 'error':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\terror: true,\n\t\t\t\tisLoading: false,\n\t\t\t};\n\t\t}\n\t}\n\treturn state;\n};\n\n// Reducer for recipeStates fetching.\nfunction fetchRecipeStates( state = { isLoading: false }, action ) {\n\tswitch ( action.type ) {\n\tcase 'FETCH_RECIPESTATES':\n\t\tswitch ( action.status ) {\n\t\tcase undefined:\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLoading: true,\n\t\t\t};\n\t\tcase 'success':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLoading: false,\n\t\t\t};\n\t\tcase 'error':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\terror: true,\n\t\t\t\tisLoading: false,\n\t\t\t};\n\t\t}\n\t}\n\treturn state;\n};\n\n// Reducer for settings fetching.\nfunction fetchSettings( state = { isLoading: false }, action ) {\n\tswitch ( action.type ) {\n\tcase 'SAVING_SETTINGS':\n\t\treturn {\n\t\t\t...state,\n\t\t\tisSaving: action.saving,\n\t\t};\n\tcase 'FETCH_SETTINGS':\n\t\tswitch ( action.status ) {\n\t\tcase undefined:\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLoading: true,\n\t\t\t};\n\t\tcase 'success':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLoading: false,\n\t\t\t};\n\t\tcase 'error':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\terror: true,\n\t\t\t\tisLoading: false,\n\t\t\t};\n\t\t}\n\t}\n\treturn state;\n};\n\n// Reducer for statistics fetching.\nfunction fetchStatistics( state = { isLoading: false }, action ) {\n\tswitch ( action.type ) {\n\tcase 'FETCH_STATISTICS':\n\t\tswitch ( action.status ) {\n\t\tcase undefined:\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLoading: true,\n\t\t\t};\n\t\tcase 'success':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLoading: false,\n\t\t\t};\n\t\tcase 'error':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\terror: true,\n\t\t\t\tisLoading: false,\n\t\t\t};\n\t\t}\n\t}\n\treturn state;\n};\n\nconst Store = registerStore( 'greenerwp', {\n\treducer: combineReducers( {\n\t\tfetchAnalysis,\n\t\tfetchRecipeStates,\n\t\tfetchStatistics,\n\t\tanalysis,\n\t\tstepToggled,\n\t\tsettings,\n\t\tstatistics,\n\t\tfetchSettings,\n\t} ),\n\tactions,\n\n\tselectors: {\n\t\tgetAnalysis( state ) {\n\t\t\treturn state.analysis;\n\t\t},\n\t\tgetRecipes( state ) {\n\t\t\treturn state.recipes;\n\t\t},\n\t\tgetSettings( state ) {\n\t\t\treturn state.settings;\n\t\t},\n\t\tgetStatistics( state ) {\n\t\t\treturn state.statistics;\n\t\t},\n\t\tgetStepToggled( state ) {\n\t\t\treturn state.stepToggled || {};\n\t\t},\n\t\tisSaving( state ) {\n\t\t\treturn state.fetchSettings && state.fetchSettings.isSaving;\n\t\t},\n\t\tisLoading( state ) {\n\t\t\treturn state.fetchRecipeStates && state.fetchRecipeStates.isLoading\n\t\t\t\t|| state.fetchAnalysis && state.fetchAnalysis.isLoading\n\t\t\t\t|| state.fetchSettings && state.fetchSettings.isLoading\n\t\t\t\t|| state.fetchStatistics && state.fetchStatistics.isLoading;\n\t\t},\n\t\thasError( state ) {\n\t\t\treturn state.fetchRecipeStates && state.fetchRecipeStates.error\n\t\t\t\t|| state.fetchAnalysis && state.fetchAnalysis.error\n\t\t\t\t|| state.fetchSettings && state.fetchSettings.error\n\t\t\t\t|| state.fetchStatistics && state.fetchStatistics.error;\n\t\t},\n\t},\n} );\n\nasync function retrieveAnalysis() {\n\tStore.dispatch( actions.requestAnalysis() );\n\tconst opts = {\n\t\theaders: {\n\t\t\t'X-WP-Nonce': wpApiSettings.nonce,\n\t\t},\n\t};\n\tvar response = await fetch( wpApiSettings.root + 'greenerwp/v1/analysis', opts );\n\tvar json = await response.json();\n\tif ( response.ok && json ) {\n\t\tStore.dispatch( actions.receiveAnalysis( json ) );\n\t} else {\n\t\tStore.dispatch( actions.receiveAnalysisError() );\n\t}\n}\n\nasync function retrieveRecipeStates() {\n\tStore.dispatch( actions.requestRecipeStates() );\n\tconst opts = {\n\t\theaders: {\n\t\t\t'X-WP-Nonce': wpApiSettings.nonce,\n\t\t},\n\t};\n\tvar response = await fetch( wpApiSettings.root + 'greenerwp/v1/recipes', opts );\n\tvar json = await response.json();\n\tif ( response.ok && json ) {\n\t\tStore.dispatch( actions.receiveRecipeStates( json ) );\n\t} else {\n\t\tStore.dispatch( actions.receiveRecipeStatesError() );\n\t}\n}\n\nasync function saveRecipeStates() {\n\tconst opts = {\n\t\theaders: {\n\t\t\t'X-WP-Nonce': wpApiSettings.nonce,\n\t\t},\n\t\tmethod: 'POST',\n\t\tbody: JSON.stringify( Store.getState().stepToggled ),\n\t};\n\tfetch( wpApiSettings.root + 'greenerwp/v1/recipes', opts );\n}\n\nasync function retrieveSettings() {\n\tStore.dispatch( actions.requestSettings() );\n\tconst opts = {\n\t\theaders: {\n\t\t\t'X-WP-Nonce': wpApiSettings.nonce,\n\t\t},\n\t};\n\tvar response = await fetch( wpApiSettings.root + 'greenerwp/v1/settings', opts );\n\tvar json = await response.json();\n\tif ( response.ok && json ) {\n\t\tStore.dispatch( actions.receiveSettings( json ) );\n\t} else {\n\t\tStore.dispatch( actions.receiveSettingsError() );\n\t}\n}\n\nasync function clearStatistics() {\n\tStore.dispatch( actions.requestStatistics() );\n\tconst opts = {\n\t\theaders: {\n\t\t\t'X-WP-Nonce': wpApiSettings.nonce,\n\t\t},\n\t\tmethod: 'DELETE',\n\t};\n\tvar response = await fetch( wpApiSettings.root + 'greenerwp/v1/statistics', opts );\n\tretrieveStatistics();\n}\n\nasync function retrieveStatistics() {\n\tStore.dispatch( actions.requestStatistics() );\n\tconst opts = {\n\t\theaders: {\n\t\t\t'X-WP-Nonce': wpApiSettings.nonce,\n\t\t},\n\t};\n\tvar response = await fetch( wpApiSettings.root + 'greenerwp/v1/statistics', opts );\n\tvar json = await response.json();\n\tif ( response.ok && json ) {\n\t\tStore.dispatch( actions.receiveStatistics( json ) );\n\t} else {\n\t\tStore.dispatch( actions.receiveStatisticsError() );\n\t}\n}\n\nasync function saveSettings() {\n\tStore.dispatch( actions.savingSettings( true ) );\n\tconst opts = {\n\t\theaders: {\n\t\t\t'X-WP-Nonce': wpApiSettings.nonce,\n\t\t},\n\t\tmethod: 'POST',\n\t\tbody: JSON.stringify( Store.getState().settings ),\n\t};\n\tvar response = await fetch( wpApiSettings.root + 'greenerwp/v1/settings', opts );\n\tStore.dispatch( actions.savingSettings( false ) );\n}\n\nexport {\n\tStore as default, withSelect, withDispatch,\n\tclearStatistics,\n\tsaveRecipeStates,\n\tretrieveAnalysis,\n\tretrieveRecipeStates,\n\tretrieveStatistics,\n\tsaveSettings,\n\tretrieveSettings,\n};","module.exports = function loadJSBundle(bundle) {\n  return new Promise(function (resolve, reject) {\n    var script = document.createElement('script');\n    script.async = true;\n    script.type = 'text/javascript';\n    script.charset = 'utf-8';\n    script.src = bundle;\n    script.onerror = function (e) {\n      script.onerror = script.onload = null;\n      reject(e);\n    };\n\n    script.onload = function () {\n      script.onerror = script.onload = null;\n      resolve();\n    };\n\n    document.getElementsByTagName('head')[0].appendChild(script);\n  });\n};\n"]}
  • greenerwp/trunk/greenerwp-ui-frontend.php

    r2228423 r2246211  
    1818  return new Tweaks\Plugins\WPCF7();
    1919};
     20
     21$plugin['ui_frontend_widgets_awareness'] = function ( $plugin ) {
     22  return new Widgets\Awareness(
     23        $plugin['template_renderer']
     24  );
     25};
  • greenerwp/trunk/greenerwp.php

    r2228423 r2246211  
    44 * Plugin URI: https://greenerwp.net
    55 * Description: Assists you in creating environmentally sustainable WordPress websites.
    6  * Version: 0.1.0
     6 * Version: 0.2.1
    77 * Requires at least: 5.2.3
    88 * Requires PHP: 7.0
  • greenerwp/trunk/readme.txt

    r2228423 r2246211  
    44Requires at least: 5.2.3
    55Tested up to: 5.3.2
    6 Stable tag: 0.1.0
     6Stable tag: 0.2.1
    77Requires PHP: 7.0
    88License: GPLv2 or later
     
    2222
    2323* **Page size analysier**: Find the pages in your website that contribute most to your site's overall network traffic
     24* **Byte Transfer Graph**: Show your visitors how big your pages are compared to the average
    2425* Use greenerWP's **[website scanner](https://scan.greenerwp.net)** to get details about one of your pages' climate-friendliness
    2526* **Recipes**: Follow step by step instructions to improve your site
     
    5960
    6061== Changelog ==
     62
     63= 0.2.1 (2020-02-18) =
     64
     65* Fix: Positioning of widget dialog.
     66
     67= 0.2.0 (2020-02-18) =
     68
     69* Enhancement: Show more details in statistics.
     70* Feature: Added Bytes Graph widget.
    6171
    6272= 0.1.0 (2020-01-16) =
  • greenerwp/trunk/src/Profiling/PageViews.php

    r2228423 r2246211  
    122122                $sql, apply_filters( 'greenerwp_page_views_statistics_limit', 50 ) ),
    123123            ARRAY_A );
     124        if ( ! $total['transferred'] || ! $total['views'] ) {
     125            return [];
     126        }
    124127        foreach ( $rows as &$row ) {
    125128            $row['total_transferred'] = ( $row['avg_total'] ) / $total['transferred'];
    126129            $row['views'] = $row['views'] / $total['views'];
    127130        }
    128         return $rows;
     131        return [
     132            'pages' => $rows,
     133            'views' => $total['views'],
     134        ];
    129135    }
    130136}
  • greenerwp/trunk/src/UI/Admin/StatisticsController.php

    r2228423 r2246211  
    5555        $base_url = "{$scheme}{$_SERVER['HTTP_HOST']}";
    5656        $results = [];
    57         foreach( $statistic as $entry ) {
     57        foreach( $statistic['pages'] as $entry ) {
    5858            $result = [
    5959                'views' => $entry['views'],
     
    7272            $results[] = $result;
    7373        }
    74         return $results;
     74        return [
     75            'pages' => $results,
     76            'views' => $statistic['views'],
     77        ];
    7578    }
    7679}
  • greenerwp/trunk/src/UI/Frontend/ProfilerController.php

    r2228423 r2246211  
    4545    public function receive_profile( $request ) {
    4646    $profile = (array) json_decode( $request->get_body() );
    47         $this->page_views->save( $profile );
     47        if ( ! is_numeric( $profile['transferredSize'] ?? null )
     48            || ! is_numeric( $profile['encodedBodySize'] ?? null )
     49            || ! is_string( $profile['path'] ?? null ) ) {
     50            return new \WP_Error( 'missing_arguments', 'Missing/wrong arguments' );
     51        }
     52        $this->page_views->save( [
     53            'path' => $profile['path'],
     54            'transferred' => $profile['transferredSize'],
     55        ] );
    4856        $this->page_views->prune();
    4957    }
  • greenerwp/trunk/views/admin/page.php

    r2209071 r2246211  
    44 */
    55?>
    6 <h1><?php esc_html_e( 'greenerWP', 'greenerwp' ) ?></h1>
     6<div class="wrap">
     7    <h1 class="wp-heading-inline"><?php esc_html_e( 'greenerWP', 'greenerwp' ) ?></h1>
    78
    8 <p>
    9   <?php esc_html_e( 'Welcome to greenerWP. This plugin helps you making your website more environmentally sustainable.', 'greenerwp' ) ?>
    10 </p>
    11 <p>
    12   🛈 <?php echo str_replace( '<a>', '<a href="'.admin_url( 'admin.php?page=greenerwp_recipes' ).'">',
    13                             __( 'To get started, have a look at the <a>recipes</a>! ', 'greenerwp' ) ) ?>
    14   <?php echo str_replace( '<a>', '<a target="_blank" href="https://greenerwp.net/guides">',
    15                             __( 'Also have a look at <a>our guides</a> to get an overview of the possible optimizations. ', 'greenerwp' ) ) ?>
    16 </p>
     9    <p>
     10        <?php esc_html_e( 'Welcome to greenerWP. This plugin helps you making your website more environmentally sustainable.', 'greenerwp' ) ?>
     11    </p>
     12    <p>
     13        🛈 <?php echo str_replace( '<a>', '<a href="'.admin_url( 'admin.php?page=greenerwp_recipes' ).'">',
     14                                                            __( 'To get started, have a look at the <a>recipes</a>! ', 'greenerwp' ) ) ?>
     15        <?php echo str_replace( '<a>', '<a target="_blank" href="https://greenerwp.net/guides">',
     16                                                        __( 'Also have a look at <a>our guides</a> to get an overview of the possible optimizations. ', 'greenerwp' ) ) ?>
     17    </p>
     18</div>
  • greenerwp/trunk/views/admin/recipes.php

    r2209071 r2246211  
    44 */
    55?>
    6 <h1><?php esc_html_e( 'Recipes', 'greenerwp' ) ?></h1>
    7 <div id="greenerwp-recipes"></div>
     6<div class="wrap">
     7    <h1 class="wp-heading-inline"><?php esc_html_e( 'Recipes', 'greenerwp' ) ?></h1>
     8    <div id="greenerwp-recipes"></div>
     9</div>
  • greenerwp/trunk/views/admin/settings.php

    r2209071 r2246211  
    44 */
    55?>
    6 <h1><?php esc_html_e( 'Settings', 'greenerwp' ) ?></h1>
    7 <div id="greenerwp-settings"></div>
     6<div class="wrap">
     7    <h1 class="wp-heading-inline"><?php esc_html_e( 'Settings', 'greenerwp' ) ?></h1>
     8    <div id="greenerwp-settings"></div>
     9</div>
  • greenerwp/trunk/views/admin/statistics.php

    r2228423 r2246211  
    88
    99    <p>
    10         <?php esc_html_e( 'For technical reasons, only visits from users with modern browsers are collected. In practice, this should not be a problem, as these statistic are only meant to help you identify big pages in your website.', 'greenerwp' ) ?>
     10        <?php esc_html_e( 'For technical reasons, only visits from users with modern browsers are collected. Also, transfer sizes for embedded elements from other domains (e.g. images, scripts or videos) are normally not counted.', 'greenerwp' ) ?>
    1111    </p>
    1212
    1313    <p>
    14         <?php esc_html_e( 'To lessen the burden on your server, only the last 1000 views are considered and only the top 50 entries will be shown.', 'greenerwp' ) ?>
     14        🛈 <?php esc_html_e( 'To lessen the burden on your server, only the last 1000 views are considered (and kept in database) and only the top 50 entries will be shown.', 'greenerwp' ) ?>
    1515    </p>
    1616
Note: See TracChangeset for help on using the changeset viewer.