add wp-rocket
25
wp-content/plugins/wp-rocket/assets/css/wpr-admin-common.css
Normal file
@@ -0,0 +1,25 @@
|
||||
.rocket-plugins-error{overflow:hidden; padding-left:20px; list-style-type:disc}
|
||||
.rocket-plugins-error li{line-height:25px}
|
||||
#wp-admin-bar-purge-all-all .dashicons{font:normal 1.5em/1 'dashicons'; -webkit-font-smoothing:antialiased; vertical-align:middle; padding-right:3px; display:inline-block}
|
||||
.rocket-purchase, .dashicons.dashicons-update.rocket-dashicons:before{color:#D54E21}
|
||||
.rocket-purchase{font-weight:900}
|
||||
.rocket-renew{font-weight:400}
|
||||
.rkt-disabled{color:#CCC}
|
||||
.rkt-note{font-style:italic; font-weight:bold; font-size:smaller}
|
||||
#wp-admin-bar-wp-rocket #wp-admin-bar-purge-all .ab-item>img, #wp-admin-bar-wp-rocket #wp-admin-bar-preload-cache .ab-item>img{max-width: 16px; max-height: 11px}
|
||||
.rocket-promo-bubble {
|
||||
display: inline-block;
|
||||
vertical-align: top;
|
||||
box-sizing: border-box;
|
||||
margin: 1px 0 -1px 2px;
|
||||
padding: 0 5px;
|
||||
min-width: 18px;
|
||||
height: 18px;
|
||||
border-radius: 9px;
|
||||
background-color: #00A66B;
|
||||
color: #fff;
|
||||
font-size: 11px;
|
||||
line-height: 1.6;
|
||||
text-align: center;
|
||||
z-index: 26;
|
||||
}
|
@@ -0,0 +1 @@
|
||||
.wpr-wrap{margin:0 -20px 0 0}#hs-beacon iframe:nth-child(1){right:inherit !important;left:18px !important}#hs-beacon iframe:nth-child(2){right:inherit !important;left:6px !important}.wpr-Page-col--fixed{margin-left:0;margin-right:24px}@media (max-width: 1239px){.wpr-Page-col--fixed{margin-right:0}}.wpr-Content{border:1px solid #E0E4E9;border-right:none}.wpr-Content-tips{right:unset;left:24px}.wpr-Sidebar-notice{border:1px solid #E8EBEE;border-right:2px solid #1EADBF}.wpr-Sidebar .wpr-Sidebar-info h4{padding-left:inherit;padding-right:56px}.wpr-menuItem{padding:16px 20px 18px 44px}.wpr-menuItem:before{right:inherit !important;left:18px !important}.wpr-menuItem:after{border-width:12px 0 12px 10px;border-color:transparent transparent transparent #fff;left:0;right:inherit;transform:translateX(-12px)}.wpr-menuItem:hover{transform:translateX(0)}.wpr-menuItem.wpr-subMenuItem{padding:10px 25px 8px 20px}.wpr-sectionHeader:before{left:inherit;right:0}.wpr-sectionHeader .wpr-title1:before{margin-left:24px;margin-right:0}.wpr-optionHeader .wpr-title2{padding-right:0;padding-left:40px}.wpr-infoAction:before{right:-26px}.wpr-fieldWarning{padding:16px 56px 24px 16px}.wpr-fieldWarning:after{left:inherit;right:20px}.wpr-fieldWarning:before{left:inherit;right:-16px}.wpr-fieldWarning-title:before{left:inherit;right:-40px}.wpr-checkbox{padding-left:0;padding-right:32px}.wpr-checkbox [type="checkbox"]:not(:checked),.wpr-checkbox [type="checkbox"]:checked{right:-9999px}.wpr-checkbox [type="checkbox"]:not(:checked)+label:before,.wpr-checkbox [type="checkbox"]:checked+label:before{left:inherit;right:0}.wpr-checkbox [type="checkbox"]:not(:checked)+label:after,.wpr-checkbox [type="checkbox"]:checked+label:after{left:inherit;right:2px}.wpr-radio{padding-left:0;padding-right:88px}.wpr-radio [type="checkbox"]:not(:checked),.wpr-radio [type="checkbox"]:checked{right:-9999px}.wpr-radio [type="checkbox"]:not(:checked)+label:before,.wpr-radio [type="checkbox"]:checked+label:before{left:inherit;right:0}.wpr-radio [type="checkbox"]:not(:checked)+label:after,.wpr-radio [type="checkbox"]:checked+label:after{left:inherit;right:3px}.wpr-radio [type="checkbox"]:checked+label:after{right:33px}.wpr-radio [type="checkbox"]:checked+label .wpr-radio-ui,.wpr-radio [type="checkbox"]:not(:checked)+label .wpr-radio-ui:before,.wpr-radio [type="checkbox"]:checked+label .wpr-radio-ui:after{right:4px}.wpr-radio [type="checkbox"]:not(:checked)+label .wpr-radio-ui:before{right:27px}.wpr-radio--reverse{padding-left:0;padding-right:72px}.wpr-radio--reverse [type="checkbox"]:not(:checked)+label:before,.wpr-radio--reverse [type="checkbox"]:checked+label:before{right:0;left:inherit}.wpr-radio--reverse [type="checkbox"]:not(:checked)+label:after,.wpr-radio--reverse [type="checkbox"]:checked+label:after{right:33px;left:inherit}.wpr-radio--reverse [type="checkbox"]:checked+label:after{right:3px;left:inherit}.wpr-radio--reverse [type="checkbox"]:checked+label .wpr-radio-ui,.wpr-radio--reverse [type="checkbox"]:not(:checked)+label .wpr-radio-ui:before,.wpr-radio--reverse [type="checkbox"]:checked+label .wpr-radio-ui:after{right:15px;left:inherit}.wpr-radio--reverse [type="checkbox"]:not(:checked)+label .wpr-radio-ui:before{right:6px;left:inherit}.wpr-multiple .wpr-button{margin-right:16px;margin-left:0}.wpr-multiple-close{margin-right:0;margin-left:16px}.wpr-addon .wpr-flex>div{text-align:right}.wpr-addon .wpr-addon-text{margin-left:inherit;margin-right:32px}@media (max-width: 1239px){.wpr-addon .wpr-addon-text{margin-right:16px}}@media (max-width: 1083px){.wpr-addon .wpr-addon-text{margin-right:32px}}@media (max-width: 783px){.wpr-addon .wpr-addon-text{margin-right:0}}.wpr-tools-col:first-child{padding-right:72px;padding-left:24px}.wpr-tools-col:last-child{text-align:left}@media (max-width: 783px){.wpr-tools-col:last-child{text-align:right}}.wpr-tools-label:before{left:inherit;right:0}.wpr-field .wpr-flex--egal>div:last-child{text-align:left}.wpr-field-list li:before{display:inline-block;margin-right:0;margin-left:8px}.wpr-field--split{padding-right:0}.wpr-field--split+.wpr-field--split{padding-left:0;padding-right:16px}.wpr-field--children{padding-left:0;padding-right:32px}.wpr-field--children.wpr-field--textarea{padding-left:80px;padding-right:32px}@media (max-width: 1239px){.wpr-field--children.wpr-field--textarea{padding-left:32px;padding-right:0}}@media (max-width: 783px){.wpr-field--children.wpr-field--textarea{padding-left:0}}.wpr-field--checkbox .wpr-field-description{margin-left:0;margin-right:32px}.wpr-field--radio .wpr-field-description{margin-left:0;margin-right:88px}.wpr-adblock img{margin-right:0;margin-left:16px}.wpr-adblock-close{right:inherit;left:24px}.wpr-notice{background-position:10% bottom}.wpr-notice-container{padding:24px 40px 24px 25%}.wpr-notice-close{right:inherit;left:24px}
|
1
wp-content/plugins/wp-rocket/assets/css/wpr-admin.css
Normal file
1
wp-content/plugins/wp-rocket/assets/css/wpr-modal.css
Normal file
BIN
wp-content/plugins/wp-rocket/assets/fonts/icomoon.eot
Normal file
39
wp-content/plugins/wp-rocket/assets/fonts/icomoon.svg
Normal file
@@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<metadata>Generated by IcoMoon</metadata>
|
||||
<defs>
|
||||
<font id="icomoon" horiz-adv-x="1024">
|
||||
<font-face units-per-em="1024" ascent="960" descent="-64" />
|
||||
<missing-glyph horiz-adv-x="1024" />
|
||||
<glyph unicode=" " horiz-adv-x="512" d="" />
|
||||
<glyph unicode="" glyph-name="chevron-right" horiz-adv-x="695" d="M632.571 449.714l-424-424c-14.286-14.286-37.143-14.286-51.429 0l-94.857 94.857c-14.286 14.286-14.286 37.143 0 51.429l303.429 303.429-303.429 303.429c-14.286 14.286-14.286 37.143 0 51.429l94.857 94.857c14.286 14.286 37.143 14.286 51.429 0l424-424c14.286-14.286 14.286-37.143 0-51.429z" />
|
||||
<glyph unicode="" glyph-name="chevron-down" d="M961.714 489.143l-424-423.429c-14.286-14.286-37.143-14.286-51.429 0l-424 423.429c-14.286 14.286-14.286 37.714 0 52l94.857 94.286c14.286 14.286 37.143 14.286 51.429 0l303.429-303.429 303.429 303.429c14.286 14.286 37.143 14.286 51.429 0l94.857-94.286c14.286-14.286 14.286-37.714 0-52z" />
|
||||
<glyph unicode="" glyph-name="chevron-up" d="M961.714 190.286l-94.857-94.286c-14.286-14.286-37.143-14.286-51.429 0l-303.429 303.429-303.429-303.429c-14.286-14.286-37.143-14.286-51.429 0l-94.857 94.286c-14.286 14.286-14.286 37.714 0 52l424 423.429c14.286 14.286 37.143 14.286 51.429 0l424-423.429c14.286-14.286 14.286-37.714 0-52z" />
|
||||
<glyph unicode="" glyph-name="rollback" d="M559.639 917.333c256.018 0 464.312-208.294 464.361-464.312 0-256.018-208.294-464.312-464.312-464.312-13.413 0-24.299 10.886-24.299 24.299s10.886 24.299 24.299 24.299c229.24 0 415.713 186.473 415.713 415.713s-186.473 415.713-415.713 415.713c-210.821 0-385.048-159.841-411.242-365.851l76.349 61.283c10.497 8.408 25.806 6.707 34.116-3.694 8.408-10.449 6.707-25.757-3.742-34.165l-119.65-96.031c-0.389-0.34-0.923-0.194-1.361-0.486-3.985-2.819-8.553-4.86-13.802-4.86-0.049 0-0.049 0-0.049 0-3.548 0-6.852 0.826-9.914 2.187-0.778 0.34-1.409 0.972-2.138 1.409-2.236 1.312-4.277 2.77-5.978 4.714-0.243 0.292-0.68 0.389-0.923 0.729l-96.031 119.65c-8.359 10.449-6.707 25.757 3.791 34.165 10.4 8.408 25.709 6.707 34.165-3.742l57.492-71.634c30.714 228.268 224.526 404.924 458.869 404.924zM631.41 328.761l-76.683 76.808-76.803-76.808c-5.88-5.821-13.561-8.761-21.241-8.761s-15.361 2.88-21.241 8.761c-11.7 11.701-11.7 30.723 0 42.424l76.803 76.808-76.803 76.808c-11.7 11.701-11.7 30.723 0 42.424s30.721 11.701 42.422 0l76.803-76.807 76.803 76.807c11.7 11.701 30.721 11.701 42.422 0s11.7-30.723 0-42.424l-76.803-76.808 76.803-76.808c11.7-11.701 11.7-30.723 0-42.424-5.88-5.821-13.561-8.761-21.241-8.761s-15.361 2.88-21.241 8.761z" />
|
||||
<glyph unicode="" glyph-name="addon" horiz-adv-x="896" d="M444.42 960l-444.42-256.597v-512.427l444.42-254.976 444.25 254.976v512.427l-444.25 256.597zM79.915 688.128l364.501 210.432 364.373-210.432-364.373-210.133-364.501 210.133zM470.997 431.787l364.544 210.389v-420.395l-364.544-209.237v419.243zM53.205 221.781v420.395l364.629-210.389v-419.243l-364.629 209.237z" />
|
||||
<glyph unicode="" glyph-name="addons" d="M1022.417 418.505c0 0.085-0.043 0.128-0.043 0.171-0.043 3.883-1.323 7.509-3.285 10.752-0.64 1.024-1.621 1.749-2.432 2.645-1.237 1.451-2.133 3.072-3.712 4.139-0.725 0.469-1.579 0.469-2.347 0.853-0.555 0.256-0.811 0.896-1.408 1.152l-241.323 98.944v301.739c0 0.043 0 0 0 0 0 0.043-0.043 0.085-0.043 0.213-0.043 3.883-1.28 7.467-3.243 10.667-0.64 1.067-1.621 1.707-2.432 2.688-1.237 1.451-2.219 3.115-3.84 4.224-0.64 0.427-1.451 0.384-2.091 0.725-0.512 0.213-0.768 0.853-1.323 1.109l-235.349 99.797c-5.333 2.261-11.392 2.261-16.725-0.043l-233.131-99.797c-0.555-0.213-0.768-0.853-1.28-1.067-0.683-0.341-1.408-0.299-2.048-0.725-1.664-1.067-2.603-2.773-3.883-4.224-0.811-0.981-1.792-1.621-2.432-2.688-1.963-3.2-3.157-6.784-3.243-10.667 0-0.128-0.085-0.171-0.085-0.213v-301.696l-243.456-98.987c-0.597-0.256-0.853-0.896-1.408-1.152-0.768-0.384-1.707-0.384-2.432-0.853-1.579-1.067-2.475-2.688-3.712-4.139-0.811-0.896-1.749-1.579-2.389-2.603-2.005-3.243-3.243-6.869-3.285-10.752 0-0.085-0.043-0.128-0.043-0.171v-334.336c0-8.661 5.248-16.512 13.227-19.712l256.725-105.643c2.645-1.067 5.376-1.664 8.107-1.664 2.987 0 6.016 0.683 8.832 1.92l224.384 101.632 226.517-101.675c2.773-1.195 5.803-1.877 8.747-1.877 2.731 0 5.547 0.597 8.149 1.664l254.549 105.643c7.979 3.243 13.184 11.093 13.184 19.712v334.293c0-0.043 0-0.043 0 0zM454.353 739.273l35.541-15.445v-272.427l-190.464 85.333v269.653l154.923-67.115zM725.201 536.777l-192.64-85.461v272.512l192.64 82.688v-269.739zM746.876 336.030l-183.339 82.347 183.339 81.323 198.272-81.323-198.272-82.347zM511.27 915.443l180.907-76.672-180.907-77.611-179.2 77.611 179.2 76.672zM277.67 499.699l181.589-81.323-181.632-82.347-199.979 82.347 200.021 81.323zM42.662 386.59l214.059-88.107v-288.128l-214.059 88.064v288.171zM299.43 299.038l190.464 86.315v-287.488l-190.464-86.229v287.403zM532.561 385.481l192.64-86.528v-287.488l-192.64 86.4v287.616zM979.75 98.419l-211.883-87.936v288.043l211.883 88.021v-288.128z" />
|
||||
<glyph unicode="" glyph-name="book" d="M1001.942 893.98c-4.193 3.902-9.797 5.687-15.526 5.563 0 0-24.41-1.578-62.519-5.687v21.67c0 5.729-2.366 11.209-6.518 15.111s-9.507 5.812-15.485 5.604c-57.123-3.487-312.97-23.746-390.393-111.505-74.973 87.427-334.557 107.977-392.095 111.505-5.604 0.291-11.292-1.661-15.485-5.604-4.151-3.944-6.518-9.382-6.518-15.111v-21.961c-38.898 4.317-62.436 5.978-62.436 5.978-5.687 0.249-11.375-1.619-15.609-5.521-4.193-3.944-6.559-9.424-6.559-15.194v-803.453c0-5.853 2.449-11.375 6.767-15.318 4.276-3.902 10.046-5.895 15.858-5.355 169.085 14.986 442.16 6.476 454.698-80.868 0.083-0.415 0.332-0.789 0.415-1.204 0.249-1.162 0.664-2.159 1.079-3.238 0.54-1.37 1.079-2.657 1.868-3.819 0.623-0.955 1.328-1.744 2.117-2.574 0.955-1.038 1.951-1.993 3.114-2.823 0.913-0.664 1.868-1.204 2.906-1.744 1.328-0.664 2.74-1.121 4.193-1.494 0.664-0.166 1.245-0.581 1.951-0.706 0.996-0.125 1.951-0.208 2.906-0.208 0 0 0 0 0.042 0 0 0 0 0 0.042 0 0 0 0 0 0 0s0 0 0 0c0.498 0 0.955 0 1.453 0.042 0.955 0.083 1.744 0.54 2.657 0.706 1.37 0.291 2.74 0.54 3.985 1.079 1.121 0.498 2.034 1.162 3.030 1.827 1.079 0.706 2.159 1.37 3.072 2.283 0.872 0.83 1.494 1.744 2.2 2.698 0.789 1.079 1.536 2.117 2.117 3.321 0.498 1.079 0.83 2.2 1.121 3.363 0.249 0.872 0.706 1.619 0.83 2.532 12.579 87.344 285.696 95.938 454.698 80.868 6.061-0.374 11.582 1.453 15.9 5.355 4.317 3.944 6.725 9.507 6.725 15.318v803.411c-0.042 5.729-2.449 11.209-6.601 15.152zM882.384 893.232v-689.124c-77.381 5.397-266.475 12.039-350.997-41.43l-0.208 615.313c9.216 62.312 203.873 103.576 351.204 115.242zM138.918 893.232c147.331-11.665 341.988-52.805 350.997-112.211v-618.302c-57.745 36.449-164.269 44.918-250.617 44.918-40.061 0-75.845-1.827-100.338-3.529v689.124h-0.042zM54.314 97.834v758.41c10.877-0.996 25.489-2.449 43.091-4.442v-670.111c0-5.812 2.449-11.333 6.725-15.277s9.797-5.687 15.817-5.397c147.539 12.869 359.216 2.408 369.927-60.61v-58.202c-100.629 72.524-352.408 61.565-435.56 55.628zM966.988 97.834c-83.276 5.895-335.097 16.813-435.601-55.794v58.41c10.752 62.934 222.263 73.437 369.968 60.61 5.48-0.415 11.499 1.453 15.817 5.397s6.725 9.507 6.725 15.277v670.36c17.394 1.91 32.090 3.321 43.091 4.276v-758.535z" />
|
||||
<glyph unicode="" glyph-name="cdn" d="M999.667 194.295c-15.061 33.451-53.973 56.661-99.285 36.395l-165.291-74.496c-9.045 10.411-21.376 18.133-36.139 22.4l-234.496 68.011c-105.429 30.507-288.597-0.171-376.619-14.976l-25.941-4.309c-30.933-4.907-54.912-27.947-61.099-58.667-3.456-17.067 4.523-49.28 20.437-102.656l3.84-13.056c10.667-38.315 50.944-61.611 89.557-51.627 18.432 4.608 36.224 9.472 53.12 14.165 56.107 15.317 109.184 29.781 132.224 19.669 99.627-44.075 194.005-65.451 288.469-65.451 95.659 0 98.645 1.408 254.293 72.747 32.512 14.933 71.893 32.939 120.405 54.869 43.307 19.584 51.115 64.597 36.523 96.981zM945.609 136.269c-48.683-21.973-88.064-40.064-120.661-54.955-150.144-68.907-150.144-68.907-236.501-68.907-88.405 0-177.109 20.224-271.232 61.781-11.136 4.864-23.851 6.997-38.059 6.997-33.067 0-74.325-11.349-122.667-24.576-16.64-4.523-34.133-9.344-52.309-13.952-16.213-4.011-33.493 5.547-38.016 21.803l-4.053 13.739c-5.163 17.408-20.907 70.144-19.499 82.091 2.645 13.099 12.8 22.827 25.899 24.917l26.368 4.437c84.907 14.251 261.547 43.819 357.675 16.043l234.453-68.096c8.661-2.517 14.891-6.869 18.56-13.056 0.299-1.493 0.811-2.987 1.408-4.437 0.427-0.939 0.896-1.835 1.451-2.688 0-0.043 0-0.085 0.043-0.171 2.773-11.349-1.195-24.96-9.728-33.109-7.637-7.381-17.493-9.387-29.397-5.845l-246.357 71.467c-11.349 3.328-23.168-3.243-26.411-14.549-3.285-11.307 3.243-23.168 14.549-26.453l246.315-71.467c26.453-7.637 52.267-1.877 70.869 16.043 16.939 16.299 25.6 40.363 23.381 63.573l166.187 74.795c28.416 12.8 40.704-10.155 42.923-14.976 5.803-12.885 5.333-31.232-15.189-40.448zM651.379 314.786c171.989 0 311.936 139.904 311.936 311.936s-139.904 311.936-311.936 311.936c-172.032 0-311.936-139.989-311.936-311.979s139.904-311.893 311.936-311.893zM651.379 895.949c148.437 0 269.269-120.789 269.269-269.269s-120.789-269.269-269.269-269.269c-148.48 0-269.269 120.789-269.269 269.269s120.789 269.269 269.269 269.269zM486.387 696.866c16.171 5.717 27.136 12.288 34.56 18.56 0.768-2.091 1.408-3.243 1.92-4.139 2.56-4.523 16.939-26.795 38.101-23.509 9.429 1.451 21.675 7.979 26.539 30.592l1.877 8.832c4.011 18.773 7.765 36.48 8.192 38.4 4.096 0 8.96 0.512 14.208 1.152 6.4 0.811 18.347 2.219 21.461-0.299 1.152-0.939 2.773-4.523 3.371-11.435 0.128-1.493 0.256-2.816 0.341-4.053-4.821-0.64-10.411-2.091-16.427-4.992-25.088-11.989-35.968-40.875-33.493-61.909 2.133-18.261 13.781-31.829 30.379-35.456 15.232-3.328 48.555-15.915 64.853-22.315l18.432-20.565c10.837-42.24 10.837-45.653 10.709-75.392l-0.043-12.672c0.384-24.576 4.949-56.021 24.533-66.432 4.309-2.261 8.917-3.413 13.568-3.413 6.144 0 12.331 1.92 18.176 5.717 25.387 16.555 96.896 120.747 79.317 170.624-2.773 7.936-6.144 17.493-7.253 22.528 1.365 0.896 3.541 2.176 6.997 4.053 34.517 18.688 51.328 40.789 49.963 65.579-0.64 11.733-10.325 20.949-22.443 20.139-11.733-0.64-20.779-10.667-20.139-22.443 0.213-3.84-5.376-13.611-27.691-25.728-39.637-21.461-32.128-42.837-19.669-78.251 6.272-17.92-28.331-82.133-51.115-109.611-0.896 5.589-1.493 11.989-1.579 17.664l0.043 12.16c0.128 34.475-0.341 40.832-13.312 91.264-0.896 3.328-2.517 6.357-4.779 8.917l-25.259 28.16c-2.176 2.432-4.864 4.309-7.893 5.547-5.376 2.133-52.864 21.205-73.173 23.893-1.451 3.541 1.664 15.915 9.387 19.584 3.2 1.579 4.736 1.408 8.448 0.939 4.651-0.555 15.488-1.792 24.192 6.656 9.856 9.643 9.301 22.827 7.467 43.563-1.579 18.133-7.979 31.915-18.987 40.875-17.024 13.867-38.827 11.264-53.419 9.557-3.371-0.427-6.485-0.853-9.131-0.853-24.021 0-34.176-13.141-41.344-36.267-0.128 1.877-0.256 3.755-0.384 5.589-0.597 9.429-7.253 17.323-16.469 19.456-9.173 2.133-18.688-2.005-23.339-10.197l-20.523-36.523c0-0.043-2.944-4.395-16.256-10.112 1.792 10.027 6.272 24.619 11.776 37.291 4.693 10.795-0.256 23.339-11.051 28.075s-23.381-0.213-28.075-11.051c-13.227-30.336-25.045-70.656-6.443-90.667 5.589-6.144 18.304-14.976 40.875-7.083zM503.539 562.295c1.451-0.555 3.115-1.195 4.864-1.877-14.336-13.611-24.789-30.507-45.397-90.923-3.797-11.179 2.133-23.296 13.312-27.093 2.304-0.811 4.608-1.152 6.912-1.152 8.875 0 17.152 5.589 20.181 14.421 21.504 63.019 28.288 68.779 40.619 79.232l6.869 5.973c11.648 10.496 11.605 21.845 10.539 27.605-3.456 18.688-22.485 25.899-42.624 33.621-6.357 2.432-17.024 6.485-19.541 8.533-9.685 9.685-17.152 14.165-23.765 18.091-3.968 2.389-8.32 4.949-14.037 9.472-7.851 6.229-17.835 7.68-26.624 3.84-7.125-3.072-23.723-10.24-30.208-83.456-1.024-11.733 7.637-22.101 19.371-23.125 11.947-1.408 22.101 7.637 23.125 19.371 1.152 13.099 3.371 27.264 5.675 37.717 0.256-0.128 0.512-0.299 0.768-0.469 5.76-3.456 9.557-5.717 15.488-11.648 8.192-8.107 20.949-12.971 34.475-18.133z" />
|
||||
<glyph unicode="" glyph-name="database" d="M935.522 830.851c0.045 0.178 0.134 0.356 0.134 0.534 0.445 3.517-0.223 6.901-1.336 10.151-15.36 86.995-173.19 118.472-309.649 118.472-136.37 0-294.2-31.477-309.649-118.428-0.89-2.36-1.514-4.897-1.514-7.524 0-0.846 0.267-1.914 0.401-2.938-0.045-1.202-0.401-2.315-0.401-3.517v-9.261c-124.883-9.261-246.739-46.614-246.739-129.959v-618.362c0-5.654 1.024-11.219 2.271-14.202 20.703-84.057 179.378-113.931 308.936-113.931s288.189 29.919 308.090 111.482c2.003 5.298 3.027 10.908 3.027 16.696v13.401c70.879 5.343 223.455 26.579 243.801 109.301 1.959 5.432 2.938 10.908 2.938 16.429v618.407c0.045 1.113-0.267 2.137-0.312 3.25zM376.507 579.927c122.791 0 217.311 28.761 268.911 61.752l-0.223-152.531c-8.771-16.429-95.588-74.396-268.644-74.396-171.453 0-256.757 56.543-266.062 75.286v150.083c49.864-32.056 141.267-60.193 266.017-60.193zM892.158 782.011l-0.223-155.114c-7.435-13.223-71.591-57.299-202.797-69.498v130.983c0 1.113-0.312 2.093-0.356 3.206 0.045 0.178 0.134 0.401 0.178 0.623 0.445 3.517-0.223 6.945-1.336 10.24-1.336 7.302-3.473 14.336-6.678 20.836 90.379 7.613 166.333 31.076 211.211 58.724zM110.445 431.402c49.909-32.1 141.312-60.238 266.062-60.238 122.524 0 216.91 28.672 268.6 61.574l-0.223-152.754c-9.795-16.874-96.479-73.995-268.377-73.995-171.542 0-256.89 56.676-266.106 75.42l0.045 149.994zM689.139 513.634c88.153 7.747 159.878 30.319 202.707 57.077l-0.267-153.11c-8.326-13.713-72.348-57.077-202.44-69.053v165.087zM624.671 916.378c141.267 0 253.462-34.593 266.195-80.228-12.021-16.384-93.273-66.426-248.877-71.324-59.971 40.114-167.357 55.964-263.969 55.964-6.901 0-13.891-0.178-20.881-0.312v5.209c0.045 0.534 0.045 1.069 0.045 1.603 0 0.49 0 0.89-0.045 1.38 1.736 49.286 118.65 87.708 267.531 87.708zM377.976 777.203c141.446 0 253.863-34.727 266.24-80.451-11.754-17.72-98.126-73.238-267.709-73.238-167.046 0-251.904 53.515-264.726 73.55 12.778 45.546 125.017 80.139 266.195 80.139zM377.976-14.527c-140.644 0-255.243 34.727-267.576 84.547v152.576c49.909-32.056 141.312-60.238 266.106-60.238 122.257 0 216.509 28.494 268.288 61.395l-0.267-157.518c-11.309-46.035-125.907-80.762-266.552-80.762zM689.139 127.408v177.419c87.93 7.702 159.521 30.141 202.351 56.81l-0.267-156.138c-9.617-39.135-89.978-69.498-202.084-78.091z" />
|
||||
<glyph unicode="" glyph-name="export" d="M1002.101 804.352l-141.312 139.477c-6.912 6.827-16.427 16.171-34.261 16.171h-521.131c-30.293 0-54.912-24.96-54.912-55.68v-327.936c0-11.776 9.557-21.333 21.333-21.333s21.333 9.557 21.333 21.333v327.936c0 7.083 5.589 13.013 12.245 13.013l499.755 0.299v-149.632c0-11.776 9.557-21.333 21.333-21.333h149.333v-755.2c0-6.912-5.717-12.8-12.459-12.8h-657.963c-6.656 0-12.245 5.888-12.245 12.8v284.203c0 11.776-9.557 21.333-21.333 21.333s-21.333-9.557-21.333-21.333v-284.203c0-30.592 24.619-55.467 54.912-55.467h657.963c30.379 0 55.125 24.875 55.125 55.467v776.533c0 17.835-8.789 28.8-16.384 36.352zM847.819 896.597l108.715-107.264h-108.715v107.264zM71.285 404.053l95.616-99.712c8.149-8.491 7.851-22.016-0.64-30.165-4.139-3.968-9.429-5.931-14.763-5.931-5.632 0-11.221 2.176-15.403 6.571l-130.219 135.808c-0.853 0.853-1.237 1.963-1.877 2.901-0.853 1.237-1.835 2.347-2.432 3.797-2.091 5.163-2.091 10.923 0 16.085 0.597 1.408 1.579 2.56 2.432 3.797 0.64 0.981 1.024 2.091 1.877 2.944l130.219 135.808c8.149 8.533 21.632 8.747 30.165 0.64 8.533-8.149 8.789-21.675 0.64-30.165l-95.616-99.712h501.973c11.776 0 21.333-9.557 21.333-21.333s-9.557-21.333-21.333-21.333h-501.973z" />
|
||||
<glyph unicode="" glyph-name="files" horiz-adv-x="811" d="M778.935 796.523c0 3.328-0.981 6.315-2.389 9.088-2.133 8.704-5.845 17.024-12.416 23.339l-119.893 116.821c-5.76 5.632-14.507 14.251-30.635 14.251h-442.325c-27.008 0-48.981-22.144-48.981-49.28v-764.885c0-27.093 21.973-49.109 48.981-49.109h558.507c27.093 0 49.152 22.016 49.152 49.109v648.149c0 0.427-0.256 0.853-0.256 1.237 0 0.469 0.256 0.853 0.256 1.28zM717.751 817.003h-83.712v81.536l83.712-81.536zM729.783 137.664h-558.507c-4.309 0-8.021 3.755-8.021 8.149v764.928c0 4.437 3.712 8.32 8.021 8.32l421.845 0.555v-123.093c0-11.307 9.131-20.48 20.48-20.48h124.373v-630.187c0-4.437-3.755-8.192-8.192-8.192zM614.669 304.619h-327.68c-11.264 0-20.48-9.173-20.48-20.437 0-11.349 9.216-20.523 20.48-20.523h327.68c11.349 0 20.48 9.173 20.48 20.523 0 11.264-9.131 20.437-20.48 20.437zM614.669 427.499h-327.68c-11.264 0-20.48-9.173-20.48-20.437 0-11.307 9.216-20.523 20.48-20.523h327.68c11.349 0 20.48 9.216 20.48 20.523 0 11.264-9.131 20.437-20.48 20.437zM614.669 550.379h-327.68c-11.264 0-20.48-9.173-20.48-20.48 0-11.264 9.216-20.48 20.48-20.48h327.68c11.349 0 20.48 9.216 20.48 20.48 0 11.307-9.131 20.48-20.48 20.48zM286.989 632.341h204.843c11.264 0 20.437 9.173 20.437 20.437 0 11.307-9.173 20.523-20.437 20.523h-204.843c-11.264 0-20.48-9.216-20.48-20.523 0-11.264 9.216-20.437 20.48-20.437zM677.773 46.571c11.307 0 20.48-9.131 20.48-20.437 0-27.733-22.528-50.261-50.219-50.261h-597.845c-27.691 0-50.176 22.528-50.176 50.261v761.6c0 27.691 22.485 50.219 50.176 50.219 11.349 0 20.48-9.216 20.48-20.48 0-11.307-9.131-20.48-20.48-20.48-5.077 0-9.216-4.139-9.216-9.259v-761.6c0-5.077 4.139-9.301 9.216-9.301h597.845c5.077 0 9.259 4.224 9.259 9.301 0 11.264 9.173 20.437 20.48 20.437z" />
|
||||
<glyph unicode="" glyph-name="help" d="M887.475 101.089c84.426 91.337 136.525 212.989 136.525 346.889s-52.055 255.552-136.525 346.889c-0.831 1.225-1.356 2.625-2.45 3.718-0.656 0.656-1.531 0.962-2.275 1.531-93.349 98.249-224.843 159.884-370.729 159.884-133.812 0-255.42-52.011-346.758-136.393-1.312-0.919-2.712-1.487-3.849-2.625-0.7-0.7-1.006-1.575-1.575-2.362-98.205-93.349-159.84-224.8-159.84-370.685 0-145.842 61.591-277.292 159.753-370.598 0.612-0.787 0.919-1.75 1.619-2.45 1.181-1.181 2.625-1.793 3.981-2.668 91.293-84.251 212.814-136.218 346.583-136.218 145.886 0 277.38 61.635 370.729 159.884 0.744 0.569 1.619 0.831 2.275 1.531 1.137 1.050 1.706 2.406 2.537 3.674zM868.316 144.964l-154.897 154.897c30.621 41.557 48.949 92.649 48.949 148.073s-18.329 106.56-48.949 148.073l154.853 154.897c69.596-81.757 111.897-187.442 111.897-302.97s-42.213-221.213-111.853-302.97zM305.288 447.934c0 113.953 92.737 206.69 206.69 206.69s206.69-92.737 206.69-206.69c0-113.953-92.693-206.69-206.69-206.69-113.953 0-206.69 92.737-206.69 206.69zM838.482 782.925l-153.935-153.935c-44.969 42.869-105.685 69.422-172.57 69.422-55.423 0-106.56-18.329-148.073-48.949l-154.853 154.897c81.757 69.596 187.442 111.853 302.97 111.853 126.901-0.044 242.035-51.005 326.46-133.288zM43.744 447.934c0 126.945 50.962 242.079 133.288 326.504l153.935-153.935c-42.869-44.969-69.378-105.641-69.378-172.57 0-66.884 26.509-127.601 69.422-172.57l-153.935-153.935c-82.37 84.426-133.331 199.559-133.331 326.504zM209.052 91.597l154.853 154.897c41.513-30.621 92.649-48.949 148.073-48.949 66.884 0 127.601 26.509 172.57 69.422l153.935-153.935c-84.426-82.282-199.559-133.244-326.504-133.244-115.528-0.044-221.213 42.213-302.926 111.809z" />
|
||||
<glyph unicode="" glyph-name="home" d="M992.166 544.546l-433.963 375.936c-1.451 1.237-3.2 2.304-5.163 3.115-27.776 21.035-66.133 20.053-92.928-3.115l-433.963-375.893c-31.104-26.965-35.029-74.709-8.704-106.539 16.64-20.181 44.245-19.883 65.408-15.616v-404.096c0-30.549 24.491-55.381 54.613-55.381h261.419c11.776 0 21.333 9.6 21.333 21.333v352.469h177.92v-352.469c0-11.733 9.557-21.333 21.333-21.333h261.419c30.123 0 54.613 24.832 54.613 55.381v404.096c21.248-4.181 48.768-4.523 65.408 15.616 26.283 31.829 22.357 79.659-8.747 106.496zM968.017 465.271c-4.395-5.163-27.136-2.347-45.312 5.547-6.613 2.944-14.293 2.219-20.224-1.707-6.016-3.883-9.685-10.667-9.685-17.835v-432.896c0-6.997-5.376-12.672-11.947-12.672h-240.085v352.427c0 11.733-9.557 21.333-21.333 21.333h-220.587c-11.776 0-21.333-9.6-21.333-21.333v-352.427h-240.085c-6.571 0-11.947 5.675-11.947 12.672v432.896c0 7.211-3.627 13.995-9.685 17.877-6.016 3.883-13.653 4.523-20.267 1.664-16.128-7.125-40.661-11.093-45.269-5.504-11.648 14.080-9.984 35.157 3.755 47.061l433.963 375.936c11.861 10.197 29.056 10.197 40.917 0 1.536-1.408 3.285-2.475 5.12-3.328l430.208-372.736c13.781-11.819 15.445-32.896 3.797-46.976z" />
|
||||
<glyph unicode="" glyph-name="import" d="M1012.736 804.352l-141.312 139.477c-6.912 6.827-16.427 16.171-34.261 16.171h-521.088c-30.293 0-54.912-24.96-54.912-55.68v-327.936c0-11.776 9.557-21.333 21.333-21.333s21.333 9.557 21.333 21.333v327.936c0 7.083 5.589 13.013 12.245 13.013l499.755 0.299v-149.632c0-11.776 9.557-21.333 21.333-21.333h149.333v-755.2c0-6.912-5.717-12.8-12.459-12.8h-657.963c-6.656 0-12.245 5.888-12.245 12.8v284.203c0 11.776-9.557 21.333-21.333 21.333s-21.333-9.557-21.333-21.333v-284.203c0-30.592 24.619-55.467 54.912-55.467h657.963c30.379 0 55.125 24.875 55.125 55.467v776.533c-0.043 17.835-8.832 28.8-16.427 36.352zM858.453 896.597l108.715-107.264h-108.715v107.264zM433.109 298.88l100.736 105.173h-512.512c-11.776 0-21.333 9.557-21.333 21.333s9.557 21.333 21.333 21.333h512.555l-100.779 105.088c-8.192 8.491-7.893 22.016 0.683 30.208 8.533 8.107 22.016 7.808 30.165-0.64l135.424-141.227c0.896-0.981 1.323-2.176 2.048-3.243 0.768-1.152 1.707-2.176 2.219-3.499 0.939-2.347 1.365-4.779 1.451-7.253 0.043-0.299 0.171-0.512 0.171-0.811s-0.171-0.512-0.171-0.811c-0.085-2.475-0.512-4.949-1.451-7.253-0.555-1.28-1.493-2.347-2.261-3.499-0.683-1.067-1.152-2.261-2.048-3.2l-135.424-141.227c-4.181-4.352-9.813-6.571-15.403-6.571-5.291 0-10.624 1.963-14.763 5.931-8.533 8.149-8.789 21.675-0.64 30.165z" />
|
||||
<glyph unicode="" glyph-name="important" d="M512-64c-282.77 0-512 229.23-512 512s229.23 512 512 512c282.77 0 512-229.23 512-512s-229.23-512-512-512zM438.857 740.571h146.286l-12.343-365.714h-122.057l-11.886 365.714zM512 155.429c-45.011 0-73.143 27.884-73.143 72.928 0 45.473 28.132 73.357 73.143 73.357 45.413 0 73.143-27.884 73.143-73.357 0-45.044-27.73-72.928-73.143-72.928zM512-3.765c249.503 0 451.765 202.262 451.765 451.765s-202.262 451.765-451.765 451.765c-249.503 0-451.765-202.262-451.765-451.765s202.262-451.765 451.765-451.765z" />
|
||||
<glyph unicode="" glyph-name="information" d="M512-64c-282.77 0-512 229.23-512 512s229.23 512 512 512c282.77 0 512-229.23 512-512s-229.23-512-512-512zM512-3.765c249.503 0 451.765 202.262 451.765 451.765s-202.262 451.765-451.765 451.765c-249.503 0-451.765-202.262-451.765-451.765s202.262-451.765 451.765-451.765zM558.439 294.75c-11.43-20.574-34.29-48.768-47.244-48.768-3.81 0-9.906 3.048-9.906 9.144 0 4.572 6.096 19.812 10.668 32.766l41.91 115.823c7.62 22.098 16.002 41.91 16.002 60.959 0 32.766-21.336 56.387-65.531 56.387-16.002 0-87.629 0-135.635-102.869h35.814c11.43 19.812 30.48 48.006 44.196 48.006 3.048 0 9.144-2.286 9.144-9.144 0-3.81-2.286-9.906-6.096-21.336l-43.434-125.729c-9.906-28.194-15.24-42.672-15.24-58.673 0-57.149 55.625-57.911 70.103-57.911 81.533 0 122.681 77.723 133.349 101.345h-38.1zM620.923 662.031c0 32.004-25.908 57.911-57.911 57.911s-57.911-25.908-57.911-57.911c0-32.004 25.908-57.911 57.911-57.911s57.911 25.908 57.911 57.911z" />
|
||||
<glyph unicode="" glyph-name="information2" d="M628.209 159.639c-21.515-38.727-64.545-91.798-88.929-91.798-7.172 0-18.646 5.737-18.646 17.212 0 8.606 11.475 37.293 20.081 61.677l78.889 218.019c14.343 41.596 30.121 78.889 30.121 114.747 0 61.677-40.161 106.141-123.353 106.141-30.121 0-164.949 0-255.312-193.636h67.414c21.515 37.293 57.374 90.363 83.192 90.363 5.737 0 17.212-4.303 17.212-17.212 0-7.172-4.303-18.646-11.475-40.161l-81.757-236.666c-18.646-53.071-28.687-80.323-28.687-110.444 0-107.575 104.707-109.010 131.959-109.010 153.474 0 230.929 146.303 251.009 190.767h-71.717zM745.825 850.99c0 60.242-48.768 109.010-109.010 109.010s-109.010-48.768-109.010-109.010c0-60.242 48.768-109.010 109.010-109.010s109.010 48.768 109.010 109.010z" />
|
||||
<glyph unicode="" glyph-name="interrogation" d="M512-64c-282.77 0-512 229.23-512 512s229.23 512 512 512c282.77 0 512-229.23 512-512s-229.23-512-512-512zM512-3.765c249.503 0 451.765 202.262 451.765 451.765s-202.262 451.765-451.765 451.765c-249.503 0-451.765-202.262-451.765-451.765s202.262-451.765 451.765-451.765zM439.979 342.869c-2.418 25.145-1.209 46.542 3.627 64.192s11.484 32.882 19.947 45.696c8.462 12.814 18.133 23.936 29.013 33.365s21.035 18.496 30.464 27.2c9.429 8.704 17.287 17.771 23.573 27.2s9.429 20.672 9.429 33.728c0 16.925-4.715 30.464-14.144 40.619s-26.233 15.232-50.411 15.232c-7.737 0-15.957-0.846-24.661-2.539s-17.408-4.11-26.112-7.253c-8.704-3.143-17.045-6.77-25.024-10.88s-15.111-8.341-21.397-12.693l-36.267 69.632c18.375 12.573 39.531 22.969 63.467 31.189s52.828 12.331 86.677 12.331c45.454 0 80.995-11.001 106.624-33.003s38.443-51.619 38.443-88.853c0-24.661-3.264-45.091-9.792-61.291s-14.628-29.98-24.299-41.344c-9.671-11.364-20.309-21.397-31.915-30.101s-22.244-18.012-31.915-27.925c-9.671-9.913-17.892-21.397-24.661-34.453s-10.155-29.739-10.155-50.048h-80.512zM425.472 239.872c0 16.925 5.319 30.343 15.957 40.256s24.661 14.869 42.069 14.869c18.375 0 32.882-4.956 43.52-14.869s15.957-23.331 15.957-40.256c0-16.925-5.319-30.464-15.957-40.619s-25.145-15.232-43.52-15.232c-17.408 0-31.431 5.077-42.069 15.232s-15.957 23.694-15.957 40.619z" />
|
||||
<glyph unicode="" glyph-name="media" d="M1009.062 673.877c-7.168 10.368-17.877 17.365-30.293 19.712l-199.765 37.291-29.312 89.301c-7.765 24.832-34.133 38.741-59.051 31.019l-211.029-64.469-177.92 33.152c-12.459 2.304-25.003-0.384-35.456-7.467-10.368-7.125-17.408-17.92-19.755-30.336l-14.037-75.477-199.296-61.141c-24.917-7.808-38.784-34.389-30.976-59.264l147.157-470.101c6.315-20.181 25.003-33.195 45.184-33.195 4.651 0 9.387 0.725 14.037 2.176l309.248 97.195 353.28-65.877c2.901-0.555 5.888-0.896 8.747-0.896 9.429 0 18.688 2.859 26.624 8.277 10.411 7.168 17.408 17.877 19.755 30.293l90.325 484.352c2.304 12.459-0.341 25.045-7.467 35.456zM703.356 810.027c2.261 0.683 4.48-0.597 5.248-3.029l21.973-67.115-159.445 29.739 132.224 40.405zM195.75 126.208c-2.219-0.725-4.565 0.512-5.291 2.731l-147.157 470.144c-0.683 2.219 0.555 4.565 2.645 5.205l177.579 54.485-67.328-361.003c-4.779-25.6 12.16-50.347 37.803-55.083l233.6-43.563-231.851-72.917zM883.836 162.048c-0.384-1.92-2.859-3.285-4.821-3.328l-510.72 95.232 231.808 217.984 55.211-113.365c3.115-6.357 9.173-10.795 16.171-11.819 7.040-1.024 14.165 1.365 18.944 6.571l129.109 138.368 88.917-197.504-24.619-132.139zM922.364 368.427l-76.757 170.496c-2.987 6.571-9.003 11.264-16.128 12.416-7.083 1.109-14.379-1.28-19.285-6.528l-129.835-139.179-54.315 111.445c-2.944 6.187-8.747 10.539-15.445 11.776-6.571 1.237-13.653-0.811-18.688-5.504l-276.096-259.584-113.877 21.248c-2.261 0.427-3.755 2.603-3.328 4.821l90.325 484.309c0.299 1.792 2.475 3.413 4.309 3.413 0.171 0 0.341 0 0.512-0.043l677.077-126.293c0 0 3.285-4.821 3.328-4.821l-51.797-277.973zM418.257 660.565c-50.005 0-90.624-40.661-90.624-90.624 0-49.92 40.619-90.624 90.624-90.624 49.963 0 90.624 40.704 90.624 90.624 0 49.963-40.661 90.624-90.624 90.624zM418.257 522.496c-26.197 0-47.488 21.291-47.488 47.488s21.291 47.488 47.488 47.488c26.155 0 47.488-21.291 47.488-47.488s-21.291-47.488-47.488-47.488z" />
|
||||
<glyph unicode="" glyph-name="plus" d="M548.571 137.681v620.638c0 20.198-16.374 36.571-36.571 36.571s-36.571-16.374-36.571-36.571v-620.638c0-20.198 16.374-36.571 36.571-36.571s36.571 16.374 36.571 36.571zM822.319 484.571h-620.638c-20.198 0-36.571-16.374-36.571-36.571s16.374-36.571 36.571-36.571h620.638c20.198 0 36.571 16.374 36.571 36.571s-16.374 36.571-36.571 36.571z" />
|
||||
<glyph unicode="" glyph-name="refresh" d="M1002.021 751.141c12.009-4.655 17.92-18.153 13.359-30.161l-61.021-157.044c-0.14-0.372-0.512-0.512-0.652-0.838-1.676-3.77-4.143-6.935-7.54-9.449-0.698-0.512-1.443-0.745-2.188-1.164-1.583-0.884-3.025-2.001-4.841-2.513-2.141-0.652-4.375-0.931-6.516-0.931-2.839 0-5.632 0.512-8.425 1.583l-151.599 58.88c-12.009 4.655-17.967 18.153-13.265 30.161 4.608 12.009 18.060 17.873 30.068 13.265l103.657-40.262c-65.164 151.738-217.321 254.231-386.281 254.231-184.599 0-349.603-123.811-401.315-301.009-3.584-12.381-16.337-19.456-28.858-15.825-12.335 3.537-19.409 16.477-15.825 28.812 57.437 196.98 240.873 334.569 445.999 334.569 185.158 0 352.163-110.871 426.17-275.875l39.005 100.305c4.608 12.009 18.060 17.92 30.068 13.265zM940.395 347.266c12.335-3.631 19.456-16.57 15.732-28.951-57.484-196.98-240.873-334.522-446.045-334.522-185.158 0-352.209 110.871-426.17 275.828l-38.959-100.259c-3.584-9.216-12.381-14.848-21.69-14.848-2.793 0-5.632 0.559-8.425 1.583-11.962 4.655-17.92 18.153-13.265 30.068l61.021 157.091c0.186 0.512 0.605 0.838 0.838 1.303 0.652 1.443 1.583 2.7 2.513 3.956 0.931 1.21 1.769 2.42 2.839 3.398 1.024 0.977 2.234 1.629 3.398 2.374 1.396 0.884 2.793 1.722 4.329 2.327 0.465 0.14 0.791 0.512 1.303 0.652 0.931 0.233 1.815 0.047 2.7 0.186 1.676 0.279 3.305 0.465 5.027 0.372 1.536-0.093 2.886-0.372 4.329-0.745 0.977-0.233 1.955-0.14 2.932-0.465l151.599-58.927c11.962-4.608 17.92-18.106 13.265-30.068s-18.199-17.92-30.115-13.265l-103.61 40.262c65.21-151.785 217.367-254.231 386.281-254.231 184.599 0 349.649 123.764 401.315 301.009 3.631 12.335 16.291 19.316 28.858 15.872z" />
|
||||
<glyph unicode="" glyph-name="rules" d="M299.284 945.375c-0.757 1.87-2.003 3.473-3.206 5.12-0.534 0.712-0.846 1.603-1.469 2.315-0.045 0.045-0.134 0.089-0.178 0.134-1.647 1.692-3.695 2.849-5.743 4.007-0.579 0.312-1.113 0.89-1.736 1.202-0.801 0.312-1.781 0.267-2.627 0.534-2.093 0.623-4.141 1.291-6.278 1.291-0.089 0-0.178 0.045-0.267 0.045h-232.27c-3.027 0-6.055-0.623-8.904-1.781-5.654-2.36-10.195-6.901-12.6-12.6-1.113-2.849-1.736-5.832-1.736-8.86v-232.314c0-12.822 10.418-23.196 23.24-23.196h232.27c3.027 0 6.055 0.579 8.86 1.736 5.699 2.404 10.24 6.901 12.6 12.6 1.158 2.849 1.781 5.832 1.781 8.86v232.314c0 1.202-0.534 2.226-0.712 3.339-0.223 1.781-0.312 3.562-1.024 5.254zM68.706 880.685l56.943-56.899-56.943-54.227v111.126zM101.563 913.542h118.205l-60.505-57.656-57.7 57.656zM158.462 790.973l63.221-63.265h-129.647l66.426 63.265zM192.12 823.029l62.464 59.57v-122.034l-62.464 62.464zM277.78 216.554c12.867 0 23.24-10.329 23.24-23.196v-232.27c0-12.822-10.418-23.24-23.24-23.24h-232.27c-12.822 0-23.24 10.418-23.24 23.24v232.27c0 12.822 10.418 23.196 23.24 23.196h232.27zM68.706-15.672h185.834v185.834h-185.834v-185.834zM277.78 588.266c12.867 0 23.24-10.329 23.24-23.196v-232.27c0-12.822-10.418-23.24-23.24-23.24h-232.27c-12.822 0-23.24 10.418-23.24 23.24v232.27c0 12.822 10.418 23.196 23.24 23.196h232.27zM68.706 355.996h185.834v185.834h-185.834v-185.834zM971.874 123.77c12.867 0 23.24-10.418 23.24-23.24s-10.374-23.24-23.24-23.24h-554.296c-12.822 0-23.24 10.418-23.24 23.24s10.418 23.24 23.24 23.24h554.296zM971.874 495.482c12.867 0 23.24-10.418 23.24-23.24s-10.374-23.24-23.24-23.24h-554.296c-12.822 0-23.24 10.418-23.24 23.24s10.418 23.24 23.24 23.24h554.296zM417.578 820.714c-12.822 0-23.24 10.418-23.24 23.24s10.418 23.24 23.24 23.24h554.296c12.867 0 23.24-10.418 23.24-23.24s-10.374-23.24-23.24-23.24h-554.296z" />
|
||||
<glyph unicode="" glyph-name="stack" horiz-adv-x="981" d="M480.977 395.085c3.285-1.92 6.997-2.816 10.667-2.816s7.381 0.896 10.667 2.816l470.4 272.469c6.656 3.883 10.752 11.051 10.624 18.773-0.128 7.765-4.437 14.805-11.264 18.475l-470.315 252.672c-6.315 3.371-13.867 3.371-20.224 0l-470.272-252.672c-6.827-3.669-11.093-10.709-11.221-18.475-0.128-7.723 3.925-14.891 10.624-18.773l470.315-272.469zM491.686 914.466l426.581-229.205-426.581-247.125-426.539 247.168 426.539 229.163zM855.334 554.871l117.291-68.011c6.571-3.84 10.624-10.88 10.624-18.475 0-7.637-4.053-14.677-10.624-18.475l-470.315-272.469c-3.285-1.92-6.997-2.816-10.667-2.816s-7.381 0.896-10.667 2.816l-470.315 272.469c-6.613 3.84-10.667 10.837-10.667 18.475 0 7.595 4.096 14.677 10.667 18.475l117.376 68.011c10.197 5.888 23.253 2.432 29.141-7.765 5.931-10.197 2.432-23.211-7.765-29.141l-85.504-49.579 427.776-247.765 427.776 247.765-85.547 49.579c-10.197 5.931-13.696 18.944-7.765 29.141 5.931 10.283 19.072 13.653 29.184 7.765zM855.334 330.317l117.291-67.925c6.571-3.84 10.624-10.837 10.624-18.475s-4.053-14.635-10.624-18.517l-470.315-272.427c-3.285-1.92-6.997-2.859-10.667-2.859s-7.381 0.939-10.667 2.859l-470.315 272.427c-6.613 3.883-10.667 10.88-10.667 18.517s4.096 14.635 10.667 18.475l117.376 67.968c10.197 5.931 23.253 2.475 29.141-7.723 5.931-10.24 2.432-23.253-7.765-29.184l-85.504-49.536 427.776-247.893 427.776 247.851-85.547 49.536c-10.197 5.931-13.696 18.987-7.765 29.184 5.931 10.325 19.072 13.696 29.184 7.723z" />
|
||||
<glyph unicode="" glyph-name="tools" horiz-adv-x="896" d="M874.044 810.586l-135.68 133.888c-6.613 6.571-15.744 15.531-32.896 15.531h-500.224c-29.056 0-52.736-23.979-52.736-53.461v-110.037c0-11.264 9.216-20.48 20.48-20.48 11.307 0 20.48 9.216 20.48 20.48v110.037c0 6.784 5.376 12.501 11.776 12.501l479.744 0.256v-143.616c0-11.307 9.216-20.48 20.48-20.48h143.403v-724.992c0-6.613-5.504-12.288-11.989-12.288h-631.637c-6.4 0-11.776 5.675-11.776 12.288v109.013c0 11.264-9.173 20.437-20.48 20.437-11.264 0-20.48-9.173-20.48-20.437v-109.013c0-29.397 23.68-53.248 52.736-53.248h631.637c29.184 0 52.949 23.851 52.949 53.248v745.472c0 17.109-8.448 27.648-15.787 34.901zM725.948 899.119l104.405-102.955h-104.405v102.955zM339.046 463.962c0 50.219-40.789 91.008-90.923 91.008-50.176 0-90.965-40.789-90.965-91.008 0-50.176 40.789-90.965 90.965-90.965 50.133-0.043 90.923 40.747 90.923 90.965zM198.118 463.962c0 27.563 22.4 50.048 50.005 50.048 27.563 0 49.963-22.443 49.963-50.048s-22.4-50.005-49.963-50.005c-27.605-0.043-50.005 22.4-50.005 50.005zM190.097 215.855c7.211 0 14.080 3.797 17.749 10.325l25.131 44.032c10.581-0.896 21.248-0.896 32 0.128l25.472-43.776c4.608-7.979 14.037-11.776 22.912-9.472 22.784 5.973 44.672 15.147 65.067 27.264 7.936 4.693 11.733 14.165 9.344 23.083l-13.355 48.811c8.107 6.955 15.573 14.507 22.485 22.699l48.939-12.928c8.875-2.304 18.304 1.536 22.912 9.472 12.075 20.736 20.821 42.069 26.752 65.323 2.304 8.917-1.664 18.304-9.643 22.869l-43.989 25.131c0.853 10.624 0.811 21.333-0.128 31.915l43.819 25.515c7.979 4.651 11.904 13.995 9.515 22.912-6.016 22.827-15.189 44.715-27.264 65.067-4.736 7.936-14.165 11.861-23.040 9.344l-48.853-13.397c-6.955 8.149-14.549 15.701-22.699 22.528l12.928 48.981c2.389 8.917-1.536 18.304-9.472 22.997-20.736 11.947-42.112 20.736-65.28 26.709-8.96 2.304-18.304-1.707-22.869-9.728l-25.131-43.947c-10.709 0.811-21.333 0.811-32.043-0.128l-25.557 43.819c-4.651 7.979-13.952 11.904-22.912 9.515-22.4-5.973-44.885-15.403-65.024-27.264-7.893-4.693-11.691-14.165-9.259-23.040l13.312-48.853c-8.192-6.955-15.701-14.592-22.656-22.741l-48.939 12.885c-8.917 2.389-18.347-1.536-22.955-9.515-11.861-20.437-20.821-42.325-26.709-65.237-2.304-8.917 1.664-18.261 9.643-22.869l43.989-25.131c-0.853-10.709-0.811-21.419 0.128-32.128l-43.691-25.429c-7.979-4.651-11.904-13.995-9.515-22.955 5.973-22.443 15.36-44.928 27.264-65.024 4.736-7.893 14.123-11.733 22.997-9.344l48.896 13.355c6.997-8.149 14.549-15.701 22.784-22.571l-12.928-48.981c-2.389-8.917 1.536-18.304 9.515-22.955 21.077-12.16 41.813-20.651 65.237-26.667 1.707-0.427 3.371-0.597 5.12-0.597zM153.958 271.279l12.245 46.421c2.176 8.192-0.939 16.896-7.808 21.845-12.971 9.387-24.405 20.608-33.835 33.536-5.077 6.827-13.696 9.813-21.931 7.68l-46.293-12.672c-4.224 8.448-7.893 17.323-11.008 26.24l41.472 24.149c7.339 4.224 11.264 12.587 9.899 20.992-2.56 15.829-2.645 31.829-0.213 47.701 1.323 8.363-2.688 16.725-10.069 20.864l-41.685 23.808c3.029 9.003 6.613 17.835 10.795 26.325l46.379-12.245c8.277-2.219 16.896 0.939 21.888 7.808 9.301 12.971 20.608 24.363 33.579 33.835 6.827 5.035 9.899 13.739 7.637 21.931l-12.672 46.293c8.533 4.224 17.365 7.893 26.283 11.008l24.192-41.472c4.224-7.339 12.416-11.264 20.949-9.941 15.744 2.56 31.872 2.645 47.616 0.213 8.533-1.323 16.725 2.731 20.907 10.112l23.808 41.685c9.088-3.029 17.749-6.571 26.368-10.837l-12.288-46.379c-2.176-8.235 0.939-16.939 7.851-21.888 12.843-9.344 24.192-20.608 33.707-33.579 4.992-6.827 13.653-9.899 21.888-7.68l46.336 12.672c4.267-8.533 7.893-17.28 11.008-26.283l-41.557-24.149c-7.339-4.309-11.221-12.629-9.899-21.035 2.56-15.744 2.603-31.744 0.213-47.531-1.28-8.405 2.688-16.683 10.069-20.864l41.728-23.851c-3.029-9.131-6.571-17.792-10.837-26.411l-46.421 12.288c-8.192 2.048-16.896-0.896-21.803-7.765-9.344-12.928-20.608-24.32-33.536-33.749-6.784-4.992-9.813-13.739-7.595-21.845l12.672-46.336c-8.533-4.309-17.323-7.936-26.325-11.093l-24.107 41.515c-4.267 7.381-12.587 11.477-20.992 9.899-15.872-2.517-31.957-2.56-47.573-0.213-8.32 1.237-16.683-2.688-20.907-10.069l-23.851-41.728c-9.003 3.029-17.707 6.613-26.283 10.795z" />
|
||||
<glyph unicode="" glyph-name="trash" d="M565.895 151.579h107.789v323.368h-107.789v-323.368zM350.316 151.579h107.789v323.368h-107.789v-323.368zM673.684 852.211h323.368v-107.789h-970.105v107.789h323.368v107.789h323.368v-107.789zM242.526 582.737h538.947l0.054-538.947h-539.001v538.947zM134.737 43.789c0-59.446 48.344-107.789 107.789-107.789h538.947c59.446 0 107.789 48.344 107.789 107.789v646.737h-754.526v-646.737z" />
|
||||
<glyph unicode="" glyph-name="user" d="M512 384c301.504 0 512-157.888 512-384v-64h-1024v64c0 226.112 210.56 384 512 384zM512 448c-141.12 0-256 114.88-256 256s114.816 256 256 256c141.184 0 256-114.88 256-256s-114.816-256-256-256z" />
|
||||
<glyph unicode="" glyph-name="check" d="M0 409.6l102.4 102.4 256-256 563.2 563.2 102.4-102.4-665.6-665.6z" />
|
||||
<glyph unicode="" glyph-name="check2" d="M424.653 89.702c-22.272 0-43.366 10.394-56.883 28.314l-182.938 241.715c-9.027 11.815-14.464 26.793-14.464 43.041 0 23.14 11.027 43.704 28.114 56.723l0.174 0.127c11.827 9.057 26.829 14.513 43.106 14.513 23.161 0 43.742-11.048 56.76-28.162l0.128-0.175 120.371-158.925 302.643 485.99c12.843 20.293 35.169 33.571 60.597 33.571 13.987 0 27.035-4.017 38.054-10.961l-0.296 0.174c33.434-20.787 43.725-64.819 22.835-98.304l-357.581-573.952c-12.217-19.466-33.149-32.488-57.189-33.582l-0.155-0.006c-1.126-0.102-2.15-0.102-3.277-0.102z" />
|
||||
<glyph unicode="" glyph-name="close" d="M626.784 447.968l195.072-195.072c12.672-12.672 12.672-33.248 0-45.92l-68.832-68.832c-12.672-12.672-33.216-12.672-45.92 0l-195.104 195.072-195.104-195.072c-12.672-12.672-33.216-12.672-45.888 0l-68.864 68.832c-12.672 12.672-12.672 33.216 0 45.92l195.104 195.072-195.104 195.104c-12.672 12.672-12.672 33.248 0 45.92l68.896 68.832c12.672 12.672 33.216 12.672 45.888 0l195.072-195.104 195.104 195.104c12.672 12.672 33.216 12.672 45.92 0l68.832-68.864c12.672-12.672 12.672-33.216 0-45.92l-195.072-195.072z" />
|
||||
</font></defs></svg>
|
After Width: | Height: | Size: 37 KiB |
BIN
wp-content/plugins/wp-rocket/assets/fonts/icomoon.ttf
Normal file
BIN
wp-content/plugins/wp-rocket/assets/fonts/icomoon.woff
Normal file
16
wp-content/plugins/wp-rocket/assets/img/automatic.svg
Normal file
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="24px" height="20px" viewBox="0 0 24 20" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!-- Generator: Sketch 59 (86127) - https://sketch.com -->
|
||||
<title>streamline-icon-fitness-biceps@24x24</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<g id="CDN" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round">
|
||||
<g id="CDN-(promo)Rocket-CDN-(full)-Copy" transform="translate(-470.000000, -491.000000)" stroke-width="1.5">
|
||||
<g id="streamline-icon-fitness-biceps@24x24" transform="translate(470.000000, 492.000000)">
|
||||
<path d="M8.25,6 C7.422,5.171 7.422,3.829 8.25,3" id="Path" stroke="#121116"></path>
|
||||
<path d="M22.005,13.754 C17.225,19.374 6.092,17.9999925 1.592,14.9999925 C-0.149,13.839 1.159,9.162 2.392,5.81 C3.02,4.093 3.936,2.495 5.1,1.085 C5.671,0.396 6.52,-0.002 7.415,-7.501704e-06 L10.5,-7.501704e-06 C12.157,-7.501704e-06 13.5,1.343 13.5,2.9999925 C13.5,4.657 12.157,5.9999925 10.5,5.9999925 L8.25,5.9999925 C7.13,7.217 6.584,8.855 6.75,10.4999925 C8.531,8.648 10.859,7.75 13.5,10.4999925 C13.497,7.808 15.677,5.622 18.369,5.619 C21.061,5.616 23.247,7.796 23.2500017,10.488 C23.251,11.694 22.806,12.857 22,13.753 L22.005,13.753 L22.005,13.754 Z" id="Path" stroke="#121116"></path>
|
||||
<line x1="18.75" y1="9" x2="18.75" y2="12" id="Path" stroke="#F56640"></line>
|
||||
<line x1="17.25" y1="10.5" x2="20.25" y2="10.5" id="Path" stroke="#F56640"></line>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 1.6 KiB |
17
wp-content/plugins/wp-rocket/assets/img/bandwidth.svg
Normal file
@@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="26px" height="25px" viewBox="0 0 26 25" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!-- Generator: Sketch 59 (86127) - https://sketch.com -->
|
||||
<title>streamline-icon-space-rocket-earth@24x24</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<g id="CDN" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round">
|
||||
<g id="CDN-(promo)Rocket-CDN-(full)-Copy" transform="translate(-468.000000, -371.000000)" stroke-width="1.5">
|
||||
<g id="streamline-icon-space-rocket-earth@24x24" transform="translate(469.000000, 372.000000)">
|
||||
<path d="M5.28225948,18 C1.18062941,14.1524984 0.88284559,7.60773459 4.6161918,3.38187911 C7.7760674,-0.193511179 12.9183625,-1.03803181 17,1.34809131" id="Path" stroke="#121116"></path>
|
||||
<path d="M1.35734283,18 C0.0567615773,20.2171445 -0.37855251,21.9376487 0.355905987,22.6533951 C1.47099626,23.7374483 4.95994217,22.2047494 9,19.0871833" id="Path" stroke="#121116"></path>
|
||||
<path d="M13.0060426,19 L9,14.9944247 L17.9039333,6.09153004 C18.6301684,5.36537966 19.5399206,4.85069679 20.5369552,4.60342525 L22.8275611,4.02832309 C23.333352,3.90189013 23.8458569,4.21069984 23.9723046,4.7164317 C24.0092318,4.86636106 24.0092318,5.02300367 23.9723046,5.17293302 L23.3993734,7.46439063 C23.150954,8.46019008 22.635092,9.3698361 21.9088569,10.0959865 L13.0060426,19 Z" id="Path" stroke="#F56640"></path>
|
||||
<path d="M9.63213116,15 L6.3262753,13.9408186 C6.07709585,13.8616781 5.94179479,13.6025744 6.02410294,13.3629847 C6.04778062,13.2946854 6.08724343,13.2328908 6.14023635,13.1819373 L7.29255036,12.0739707 C8.31407335,11.0917615 9.82493517,10.7491809 11.1959859,11.1882479 L13,11.7649976 L9.63213116,15 Z" id="Path" stroke="#F56640"></path>
|
||||
<path d="M14,18.3667413 L15.0591814,21.6737247 C15.1383219,21.9229041 15.3974256,22.0582052 15.6370153,21.9758971 C15.7053146,21.9522194 15.7671092,21.9127566 15.8180627,21.8597637 L16.9260293,20.7074496 C17.9082385,19.6859267 18.2508191,18.1750648 17.8117521,16.8040141 L17.2350024,15 L14,18.3667413 Z" id="Path" stroke="#F56640"></path>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 2.2 KiB |
12
wp-content/plugins/wp-rocket/assets/img/bg-activated.svg
Normal file
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg version="1.1" viewBox="0 0 329 168" xmlns="http://www.w3.org/2000/svg">
|
||||
<g transform="translate(-998 -262)" fill="none" fill-rule="evenodd">
|
||||
<g transform="translate(431 176)" fill="#C6F0DE">
|
||||
<g transform="translate(567 86)">
|
||||
<path d="m164.53 23.294c-77.642 0-140.86 63.227-140.86 140.87 0 6.6555-5.1761 11.832-11.831 11.832-6.655 0-11.831-5.1765-11.831-11.832 0-22.185 4.4367-43.63 12.94-63.966 8.1339-19.597 19.965-37.345 35.124-52.134 15.159-15.16 32.536-26.992 52.131-35.126 20.335-8.5042 41.779-12.941 63.962-12.941s43.627 4.437 63.962 12.941c9.2431 3.6975 17.747 8.5042 25.881 14.05l-25.511 12.571c-18.856-10.723-40.67-16.269-63.962-16.269z" fill-rule="nonzero"/>
|
||||
<path d="m126.05 114.71c4.8089-4.8128 10.358-8.5149 16.276-11.106l141.68-69.6-69.544 141.79c-2.5894 5.9234-6.2886 11.477-11.098 16.289-10.728 10.736-24.415 15.919-38.471 15.919-14.057 0-27.744-5.183-38.471-15.919-21.825-21.472-21.825-56.272-0.36992-77.374zm19.606 57.383c5.1788 5.183 12.207 7.7745 18.866 7.7745 6.6585 0 13.687-2.5915 18.866-7.7745 10.358-10.366 10.358-27.396 0-38.132-5.1788-5.183-12.207-7.7745-18.866-7.7745-7.0284 0-13.687 2.5915-18.866 7.7745-10.358 10.736-10.358 27.766 0 38.132z"/>
|
||||
<path d="m316.01 99.898c-6.3106-14.408-14.477-28.076-24.129-39.898l-11.879 24.013c15.962 22.904 25.242 50.242 25.242 80.166 0 6.6497 5.197 11.822 11.879 11.822s11.879-5.172 11.879-11.822c0-22.166-4.4545-43.962-12.992-64.28z"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 1.4 KiB |
20
wp-content/plugins/wp-rocket/assets/img/configuration.svg
Normal file
@@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="24px" height="26px" viewBox="0 0 24 26" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!-- Generator: Sketch 59 (86127) - https://sketch.com -->
|
||||
<title>streamline-icon-show-hat-magician@24x24</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<g id="CDN" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round">
|
||||
<g id="CDN-(promo)Rocket-CDN-(full)-Copy" transform="translate(-469.000000, -429.000000)" stroke-width="1.5">
|
||||
<g id="streamline-icon-show-hat-magician@24x24" transform="translate(470.000000, 430.000000)">
|
||||
<path d="M16.3194103,11.1449631 L17.5135135,22.1837838 C17.5718919,23.0615823 16.9085012,23.8194398 16.0307027,23.8788796 C15.9946143,23.8810025 15.9574644,23.8820686 15.9213759,23.8820686 L4.77641278,23.8820686 C3.89755283,23.8841867 3.18321376,23.1730319 3.18109091,22.2931106 C3.18109091,22.2570221 3.18215233,22.2198722 3.18427518,22.1837838 L4.3751941,11.1449631" id="Path" stroke="#121116"></path>
|
||||
<line x1="16.748226" y1="15.1253071" x2="3.94956265" y2="15.1253071" id="Path" stroke="#121116"></line>
|
||||
<line x1="-1.86517468e-13" y1="11.1449631" x2="20.6977887" y2="11.1449631" id="Path" stroke="#121116"></line>
|
||||
<line x1="22.2899263" y1="-2.13162821e-14" x2="11.1449631" y2="7.16461916" id="Path" stroke="#F56640"></line>
|
||||
<line x1="0.796068796" y1="1.59213759" x2="3.98034398" y2="1.59213759" id="Path" stroke="#F56640"></line>
|
||||
<line x1="2.38820639" y1="-7.23865412e-14" x2="2.38820639" y2="3.18427518" id="Path" stroke="#F56640"></line>
|
||||
<line x1="4.77641278" y1="6.36855037" x2="7.96068796" y2="6.36855037" id="Path" stroke="#F56640"></line>
|
||||
<line x1="6.36855037" y1="4.77641278" x2="6.36855037" y2="7.96068796" id="Path" stroke="#F56640"></line>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 2.0 KiB |
@@ -0,0 +1,5 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="23" height="23" viewBox="0 0 512 512"><path fill="#F56640" d="M320.2 243.8l-49.7 99.4c-6 12.1-23.4 11.7-28.9-.6l-56.9-126.3-30 71.7H60.6l182.5 186.5c7.1 7.3 18.6 7.3 25.7 0L451.4 288H342.3l-22.1-44.2zM473.7 73.9l-2.4-2.5c-51.5-52.6-135.8-52.6-187.4 0L256 100l-27.9-28.5c-51.5-52.7-135.9-52.7-187.4 0l-2.4 2.4C-10.4 123.7-12.5 203 31 256h102.4l35.9-86.2c5.4-12.9 23.6-13.2 29.4-.4l58.2 129.3 49-97.9c5.9-11.8 22.7-11.8 28.6 0l27.6 55.2H481c43.5-53 41.4-132.3-7.3-182.1z"/></svg>
|
||||
<!--
|
||||
Font Awesome Free 5.2.0 by @fontawesome - https://fontawesome.com
|
||||
License - https://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||||
-->
|
After Width: | Height: | Size: 699 B |
5
wp-content/plugins/wp-rocket/assets/img/heartbeat.svg
Normal file
@@ -0,0 +1,5 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="23" height="23" viewBox="0 0 512 512"><path fill="#121116" d="M320.2 243.8l-49.7 99.4c-6 12.1-23.4 11.7-28.9-.6l-56.9-126.3-30 71.7H60.6l182.5 186.5c7.1 7.3 18.6 7.3 25.7 0L451.4 288H342.3l-22.1-44.2zM473.7 73.9l-2.4-2.5c-51.5-52.6-135.8-52.6-187.4 0L256 100l-27.9-28.5c-51.5-52.7-135.9-52.7-187.4 0l-2.4 2.4C-10.4 123.7-12.5 203 31 256h102.4l35.9-86.2c5.4-12.9 23.6-13.2 29.4-.4l58.2 129.3 49-97.9c5.9-11.8 22.7-11.8 28.6 0l27.6 55.2H481c43.5-53 41.4-132.3-7.3-182.1z"/></svg>
|
||||
<!--
|
||||
Font Awesome Free 5.2.0 by @fontawesome - https://fontawesome.com
|
||||
License - https://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||||
-->
|
After Width: | Height: | Size: 699 B |
BIN
wp-content/plugins/wp-rocket/assets/img/icon-128x128.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
wp-content/plugins/wp-rocket/assets/img/icon-256x256.png
Normal file
After Width: | Height: | Size: 4.7 KiB |
31
wp-content/plugins/wp-rocket/assets/img/imagify-hover.svg
Normal file
@@ -0,0 +1,31 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="30" height="24" viewBox="0 0 30 24">
|
||||
<metadata><?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
|
||||
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.6-c138 79.159824, 2016/09/14-01:09:01 ">
|
||||
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
||||
<rdf:Description rdf:about=""/>
|
||||
</rdf:RDF>
|
||||
</x:xmpmeta>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<?xpacket end="w"?></metadata>
|
||||
<image id="logo_copie" data-name="logo copie" width="30" height="24" xlink:href="data:img/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAYCAMAAADat72NAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAACQ1BMVEX1ZkD////1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkD1ZkAAAADWj0A4AAAAv3RSTlMAAAsrXJi5KgZQi8Hj8ub4YSOEs+D06MmUXyexnU+m78+gaDYTRFN/y6n1dz8WFf3rD3HTcAUbBEDpu/zbaymHwyw8Dnk4n7D2Z9ByOSLZVdJe4aOob3MDSRQk51it6tjRQhJ48UWPEQfkOx0fUa83DIpbLQgyxuXVAnsQnrjHq3qbv2rNvjQ6IIlSGiGFzN+hAbp1zvD6lVq9pA3iCvc9MILzSrR9+4N+ZmAlHEvdF6fUXf7aM7WyjcrX3jXcZfT9uZ8AAAABYktHRMATYd/4AAAACXBIWXMAAAsSAAALEgHS3X78AAAAB3RJTUUH4goEDxkExbu14wAAAkVJREFUKM9d0Y8301EUAPD7NmbY2sZ8mbWkTWo1SzMzw+bHImx+rcRISmFiNJkViwhJoUil9bsk6ad+rR/3X+v7/c5xzD3nvXfO+7xz7z3vAuwIQjjciEheFGEj3PhR0TGxAuEunki8g/mS6Lh4aQKVmCRLJkS+O4wVe6QJKXtT9ylV9F3afpJ+IIwPqg8d1mzWztCiKu1I5nY+qmP2LDHD/JgkfbZQuY0NOcYM+sg1iSGUVJ+Xv8UFZkshVQRQLEBtCSHWNPo+/tgWl5Yd55RXAFQiHWabvayKkPTqLa6pBahzAJxgGI30Oll/KqVhkxttzibILwdoxlCcbjmjVIlaWT57ru38BR5Yje0dnTSZ8syurosSDinpZrnHVMN3t3X1OislUl7fJU//5b4BLzVY12pgOULYAL7yK6CrgKuZNuBHahGHzHSeYWYq4PNfAxhpgdHBvuvUmGYcUeTPSb5RhuicYFpTmiZhKsXT7bXcnO6IHc6SF+pvzfRzh27fmZ1iOp9LnIe7Q756aId7uFBMpi2L9+0uQpbQwXC2+gFUUdmKh4+WH+N4YISu+8SsIk+1KHrGfMtzLycgeCFYanyJ2D1Bt+Z3E6J59foNrjC83PkWVt+trXatYMLyKGKznu45VWegkMcOTKZ+D+stHz5+yvUYPiMWiL+Q9a/e3sm5DZZ9/uHSxbh2cOjGAguI35oUGgHWBqq+20Pzdml/cOmjBHHmJ+Ivt3UAUc5RY0+I5z2hV8EN2Vq1/XcwKLUHi/78nf33H5FHr0FmeEkkAAAAAElFTkSuQmCC"/>
|
||||
</svg>
|
After Width: | Height: | Size: 4.6 KiB |
31
wp-content/plugins/wp-rocket/assets/img/imagify.svg
Normal file
@@ -0,0 +1,31 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="30" height="24" viewBox="0 0 30 24">
|
||||
<metadata><?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
|
||||
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.6-c138 79.159824, 2016/09/14-01:09:01 ">
|
||||
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
||||
<rdf:Description rdf:about=""/>
|
||||
</rdf:RDF>
|
||||
</x:xmpmeta>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<?xpacket end="w"?></metadata>
|
||||
<image id="imagify-logo" class="imagify-icon" data-name="imagify logo" width="30" height="24" xlink:href="data:img/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAYCAYAAADtaU2/AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAAsSAAALEgHS3X78AAAAB3RJTUUH4goEDwUNWhBQGgAACQJJREFUSMeVlmuMnFUZx59z3vv77lx3Lrs7O53Otrvdbi+0obQUSkWFaACjQY3VAEa8YIxEsBIuEoOiVgH5oBIuogW8BAggiGIgEIRY2C502e2Wvba7Mzs7OzszOzvzzrzvvNdzjh9a7n7QJ/klJ+fLL/+Tf/IcdGRkFD48CAEsFsqAeA54QQRKGVDigiCIUCgUoCcZB9NjYOhrEE8kwPEoyDzWTMterxvWTtcn+xzbyu7Zsfl6VVEnKaMfcfDwPwxCCDDGwHEcYISAMiYSQjZajjdQLK+eb1rebtdx+xhjIZ7DBs+hCcv2PjafX94Tj4UnKfk/xPiMDCEkWraTdmxzm+c3d1Wb7bPWDHub75MYwrwhu05eEfk3MpneP3A8PywJMAOUwGx+5RnLcfYhSg8DYx8VE/reJcdxpxNiBC2z/dlas/Uly/HPcz0SA2AejyEX0JRxnud/oanKaIcqncIEaqIkQbI7CQu53EW1prm1L7v+yZBujjbq+mWIkwGh/5LY8d4Tr5ZWgAGAwPNQaxpf0S3nsv51qZ+A6w7XDHtqfbq7kuwMgGl5UKmtAcIIPMcDj1F4c/x4vFzTn/cJw5l0KhYNdRwprdS+a5mNEIeR/uHM/Ia+7OkTY7BULILW0QGhcAiibWvYrdSHYp2dv2w3GmC4BBijMJdbvk6RRJ1QdliVNEhEVQgFNeB5Tn9l+NjdbautiKLYVHlvCiiVOgKhTZFweIRS8kExpfR9T42BEAK5XJ4XRP4tz3USyPPi0Wi0KqkqEEphpbJ2qW4YH++MhiEZjx12fAJtywVKPDeVjN3QbOqAMYZgQKlIolCut91zAhF+hHwoMj5TIEAIgeeRzaVy5VC51ng51BFcBQCmG8Ymx/dAURVQFDloe94gBcRVVusPlqurN7uOC2bbgpML+XNFXr6opzcNhFFwGfM0TZ5u6voukWMgYPgAuN1ug+97QIkPhu0eWlmtfy/VlfiTpogLgiitNCx7t0N8wAygbVpbbM/vxQgBz/N4+mT+56fyS4cc1+krrzUffm1s+m9Ly+Uv9nQnQZFVkCTpTV1vnm0YJti2DZZtvQuempmFo8dGYX5xEdKprqdkUawObeq7PxKJmOGANmG0WrsZ9UDVJLAsezf1fUAInWk/hmpdv2l0Yur1VtsZoNRTZhaWHx+dmD4oCZiLR0MjjuenLduJ+YTA+8EMAOqNBhSLpY2RYPDfDJCYKxQOWJ4DsiIOW7YzKIsCUASw2mzuf0cKwACdKaXpsgQDAFVRqhzAzPHJk1fV1+pnC4iOeD5VLMfdDgiAMfYuPCE0arv+t4orizeHO9QvdMXCj87nV74W1LRHie8eY4T9yNDtCGVGWzfaexgAEEIBIwYUYSKL/EIqEnpClqW/R4OBxbW1OrZch2ccv2K2PTPZGfwx9ZyQKgaBUgaEEABgwBdL5d83ms5n+nqTV2uK+EosEmqWqmsvUODS0UjoRKFYox4lg2ZzreK5jh8NqC+oqjwOjI3HopHjvCDM8Rw3lC+WDhTLq/sQ4jK+73ONsZlaQJZGFVU4HA4GXlU1DVrNJvRmMsCLMvDdic4na/XGJ9M9qedkRXGJ4byBMF5YqzeuymbSP5tTi6s+ZXu7E7G7hxC/AyPEELDOcFCdF6QOcfTE9K9rdf2bhDJMiA/JWOiwoGnlpcraTS2rPYTW0BXVhvH8QNb7vufak4nMRuCkDsADA31/CYdDb+eWivdGIh0QjwRpbzL2eKG4ciWPACJBbXh2Pvf1mfnFO3KF5b9OzOVmHN//NBblxMjYideL5dVrfEoxxuBEIpFhQRQeScWjDwUV5WUR8xZjDPSm+anxydmXCKG7OIwBAQPu2usOMpHDE+PT83dpivxiNBIpmLZTWCpVDkYC6nOUeLWablzuEdqhatpwKhl9oH995rF/jYw9ixHWM6n4PcCYuyHdfUCVhbs0RbI1TUEih+9Pp+JPUEYVWVH/SRgk6vXGV9Pp3mdkSWqgI8feBkEQ4MjRYw+7rjt48f7zzl0ul9iJ2fkXApq21BMLf4MAQo5tEVkUI1sG++tjk3M3vDk+c0co0PHW4GDfhclosDl7Kn95oVy7nnj+NgpMFTC/kOnpvDqzrvuIbniQL1XuKSwVv9PbFXts+6YNB3DTaENdb8H6delb6k1z64mpmS/3dHVBJtXzu+VK7ZKG0e62LPuyU0vVl+aXyr/JL1cDU6cK12KBB594jEfYP5kr3jKdW3rSdrx9HmUhxhBJJjqfSiYT0+vSveC59gWlUvnboihDeVX/nOPRHTgWUiEakKCvN14c2rjuV7P55TsbTUPjEfwDGHhTudL01MLSb1WJnx7oW3dbrWle0LacNAOAwYHsT33XHZqcy9/OcwIwQkERxOH+3uSFZ23pv1nkcW1lpZpYLldv3LY5extQ6hNKpGq1/nksiAoIogqIl6B/Q/ZOBJRNTM0dTKd62mdtzt4+kI5fO5hNfUISpXEOIadRr+9lDEDksCkg+uJyuXoNYIyJTyCdSj61ddP6/aLEHSWeDSFVhOGxyTtatpeJh0OHNFmqUcqgYZq7se/Z4Hs2uLYJqiy0dm4Z+OFyZfXGVtvqjXfGHgAG1YWlyrN1w7rRsFx3vlDa2JOMvHjOUN9e2/Wtumnv5dDpHd6/Yf2tutm+otY0r6QIwWK5fmm5Wr/Ks61oPBqRN2Z7Lu+ORx/RW0YWS5ICp1GB40Xoy6z7Y6hDOT781okHj45NPj1fKP9ZxviJ7Zuyu0zbKgsch2zL7Zovli/gOEHkEbjvrDq9XlftdtsiDDdN20+cOLl0H8YYIcz5nKTQluWkLNuOcRgx7BEK7+B6BDAv0HN2bP+BabYvppTigWzq/GCHcisCqGd74tCf6R6v6cbW5dXmPcFgIBmPhV72fQqEUpidy90bCYUWkp3h8tjxmacNs90LAMDz/Njs3Em0XK49pLfal6iyPMmHQqGP/ChlSXptz05zB+bwRKupA2MMOFEGLGkQjPivqnJpmhDGVcqV/ZmervtKK6sXE0olh9LY2/P5hxCjwChTFJGbZUDpzi39d+oNfciyrBJGiItHw8/9BzG486F3Mjo3AAAAAElFTkSuQmCC"/>
|
||||
</svg>
|
After Width: | Height: | Size: 5.8 KiB |
5
wp-content/plugins/wp-rocket/assets/img/infinite.svg
Normal file
@@ -0,0 +1,5 @@
|
||||
<svg width="49" height="32" viewBox="0 0 49 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M15.6 27.95C8.77929 27.95 3.25 22.4207 3.25 15.6C3.25 8.77929 8.77929 3.25 15.6 3.25C22.4207 3.25 27.95 8.77929 27.95 15.6C27.95 22.4207 22.4207 27.95 15.6 27.95Z" fill="#FFD147"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M32.4984 27.95C25.6777 27.95 20.1484 22.4207 20.1484 15.6C20.1484 8.77929 25.6777 3.25 32.4984 3.25C39.3191 3.25 44.8484 8.77929 44.8484 15.6C44.8484 22.4207 39.3191 27.95 32.4984 27.95Z" fill="#F56F46"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M24.0484 6.59375C26.4489 8.84677 27.9484 12.0485 27.9484 15.6005C27.9484 19.1524 26.4489 22.3541 24.0484 24.6071C21.6479 22.3541 20.1484 19.1524 20.1484 15.6005C20.1484 12.0485 21.6479 8.84677 24.0484 6.59375Z" fill="#172153"/>
|
||||
</svg>
|
After Width: | Height: | Size: 864 B |
31
wp-content/plugins/wp-rocket/assets/img/logo-adblock.svg
Normal file
@@ -0,0 +1,31 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="51px" height="52px" viewBox="0 0 51 52" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!-- Generator: Sketch 49.2 (51160) - http://www.bohemiancoding.com/sketch -->
|
||||
<title>Group 15</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<defs>
|
||||
<filter x="-6.4%" y="-6.2%" width="112.8%" height="112.5%" filterUnits="objectBoundingBox" id="filter-1">
|
||||
<feOffset dx="0" dy="0" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
|
||||
<feGaussianBlur stdDeviation="1" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
|
||||
<feColorMatrix values="0 0 0 0 0.0549019608 0 0 0 0 0.105882353 0 0 0 0 0.137254902 0 0 0 0.2 0" type="matrix" in="shadowBlurOuter1" result="shadowMatrixOuter1"></feColorMatrix>
|
||||
<feMerge>
|
||||
<feMergeNode in="shadowMatrixOuter1"></feMergeNode>
|
||||
<feMergeNode in="SourceGraphic"></feMergeNode>
|
||||
</feMerge>
|
||||
</filter>
|
||||
<polygon id="path-2" points="0.807983683 14.5211701 14.1904548 0.159306609 32.2276986 0.159306609 46.1920163 14.5211701 46.1920163 33.4788299 32.2276986 47.8406934 14.1904548 47.8406934 0.807983683 33.4788299"></polygon>
|
||||
</defs>
|
||||
<g id="Dashboard-AdBlock" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||
<g id="Dashboard-Pop" transform="translate(-449.000000, -191.000000)">
|
||||
<g id="Group-15" filter="url(#filter-1)" transform="translate(451.000000, 193.000000)">
|
||||
<g id="Path-2">
|
||||
<use fill="#E2001E" fill-rule="evenodd" xlink:href="#path-2"></use>
|
||||
<path stroke="#FFFFFF" stroke-width="1.62253521" d="M1.61925129,14.8405591 L1.61925129,33.1594409 L14.543387,47.0294258 L31.8849718,47.0294258 L45.3807487,33.1494418 L45.3807487,14.8505582 L31.8849718,0.970574215 L14.543387,0.970574215 L1.61925129,14.8405591 Z"></path>
|
||||
</g>
|
||||
<g id="palm" transform="translate(12.051282, 7.200000)" fill="#FFFFFF" fill-rule="nonzero">
|
||||
<path d="M1.56666667,13.56 C0.964102564,13.56 0.602564103,13.92 0.602564103,14.52 L0.602564103,21.36 C0.602564103,24.6 1.92820513,27.6 4.33846154,29.88 L6.98974359,32.4 C7.83333333,33.12 8.91794872,33.6 10.0025641,33.6 L16.0282051,33.6 C20.125641,33.6 23.5,30.48 23.5,26.64 L23.5,7.68 C23.5,6.84 22.6564103,6 21.6923077,6 C20.7282051,6 19.8846154,6.72 19.8846154,7.68 L19.8846154,15 C19.8846154,15.36 19.6435897,15.6 19.2820513,15.6 C18.9205128,15.6 18.6794872,15.36 18.6794872,15 L18.6794872,4.68 C18.6794872,3.72 17.8358974,3 16.8717949,3 C15.9076923,3 15.0641026,3.72 15.0641026,4.68 L15.0641026,15 C15.0641026,15.36 14.8230769,15.6 14.4615385,15.6 C14.1,15.6 13.8589744,15.36 13.8589744,15 L13.8589744,1.68 C13.8589744,0.72 13.0153846,0 12.0512821,0 C11.0871795,0 10.2435897,0.72 10.2435897,1.68 L10.2435897,15 C10.2435897,15.36 10.0025641,15.6 9.64102564,15.6 C9.27948718,15.6 9.03846154,15.36 9.03846154,15 L9.03846154,4.68 C9.03846154,3.72 8.19487179,3 7.23076923,3 C6.26666667,3 5.42307692,3.72 5.42307692,4.68 L5.42307692,20.52 C5.42307692,20.88 5.18205128,21.12 4.82051282,21.12 C4.45897436,21.12 4.21794872,20.88 4.21794872,20.52 L4.21794872,15.96 C4.21794872,14.76 3.01282051,13.56 1.56666667,13.56 Z" id="Shape" transform="translate(12.051282, 16.800000) scale(-1, 1) translate(-12.051282, -16.800000) "></path>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 3.4 KiB |
24
wp-content/plugins/wp-rocket/assets/img/logo-cloudflare.svg
Normal file
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg version="1.1" viewBox="0 0 246 35" xmlns="http://www.w3.org/2000/svg">
|
||||
<title>Logo cloudflare</title>
|
||||
<g transform="translate(-433 -86)" fill="none" fill-rule="evenodd">
|
||||
<g transform="translate(433 86)" fill-rule="nonzero">
|
||||
<g transform="translate(83 21)" fill="#404041">
|
||||
<path d="m161.53 3.43c-0.76972 0-1.381-0.63-1.381-1.4233 0-0.77 0.61125-1.4233 1.381-1.4233 0.74708 0 1.381 0.63 1.381 1.4233 0 0.79333-0.63389 1.4233-1.381 1.4233zm0-2.5667c-0.61125 0-1.1093 0.51333-1.1093 1.1433s0.49806 1.1433 1.1093 1.1433 1.1093-0.51333 1.1093-1.1433-0.49806-1.1433-1.1093-1.1433zm0.70181 1.89h-0.31694l-0.27167-0.53667h-0.36222v0.53667h-0.2943v-1.5633h0.72444c0.31694 0 0.5207 0.21 0.5207 0.51333 0 0.23333-0.13583 0.39667-0.31694 0.46667l0.31694 0.58333zm-0.54333-0.81667c0.1132 0 0.22639-0.07 0.22639-0.23333 0-0.18667-0.090555-0.23333-0.22639-0.23333h-0.45278v0.46667h0.45278z"/>
|
||||
<polygon points="17.658 0.44333 21.19 0.44333 21.19 10.36 27.325 10.36 27.325 13.533 17.658 13.533"/>
|
||||
<path d="m30.97 7.0233v-0.023333c0-3.7567 2.9431-6.8133 6.8596-6.8133 3.9165 0 6.8143 3.01 6.8143 6.7667v0.046667c0 3.7567-2.9431 6.8133-6.8596 6.8133-3.8939-0.023333-6.8143-3.0333-6.8143-6.79m10.097 0v-0.023333c0-1.89-1.3131-3.5233-3.26-3.5233-1.9243 0-3.2147 1.61-3.2147 3.5v0.046667c0 1.89 1.3131 3.5233 3.2374 3.5233 1.9469-0.023333 3.2374-1.6333 3.2374-3.5233"/>
|
||||
<path d="m48.968 7.7933v-7.35h3.5769v7.28c0 1.89 0.92819 2.7767 2.3318 2.7767s2.3318-0.86333 2.3318-2.6833v-7.3733h3.5769v7.2567c0 4.2233-2.3318 6.0667-5.954 6.0667-3.5996 0.023333-5.8635-1.8667-5.8635-5.9733"/>
|
||||
<path d="m66.173 0.44333h4.9126c4.5278 0 7.1765 2.6833 7.1765 6.4633v0.046667c0 3.78-2.6714 6.58-7.2444 6.58h-4.8221l-0.022639-13.09zm4.9579 9.87c2.1054 0 3.509-1.19 3.509-3.3133v-0.046667c0-2.1-1.4036-3.3133-3.509-3.3133h-1.4262v6.65l1.4262 0.023333z"/>
|
||||
<polygon points="83.356 0.44333 93.521 0.44333 93.521 3.64 86.865 3.64 86.865 5.8567 92.887 5.8567 92.887 8.8667 86.865 8.8667 86.865 13.533 83.356 13.533"/>
|
||||
<polygon points="98.411 0.44333 101.92 0.44333 101.92 10.36 108.08 10.36 108.08 13.533 98.411 13.533"/>
|
||||
<path d="m117.27 0.35h3.3958l5.4107 13.183h-3.7807l-0.9282-2.3333h-4.89l-0.90556 2.3333h-3.6901l5.3881-13.183zm3.1015 8.0267l-1.4036-3.71-1.4262 3.71h2.8299z"/>
|
||||
<path d="m130.6 0.44333h5.9993c1.9469 0 3.2826 0.51333 4.1429 1.4233 0.74708 0.74667 1.1319 1.75 1.1319 3.0567v0.046667c0 2.0067-1.0414 3.3367-2.6035 4.0133l3.0336 4.5733h-4.075l-2.5582-3.9667h-1.5394v3.9667h-3.509l-0.022639-13.113zm5.8408 6.3c1.1999 0 1.879-0.60667 1.879-1.54v-0.07c0-1.0267-0.72444-1.54-1.9017-1.54h-2.3092v3.15h2.3318z"/>
|
||||
<polygon points="146.95 0.44333 157.16 0.44333 157.16 3.5467 150.44 3.5467 150.44 5.5067 156.53 5.5067 156.53 8.3767 150.44 8.3767 150.44 10.453 157.25 10.453 157.25 13.533 146.95 13.533"/>
|
||||
<path d="m9.9611 8.5633c-0.49806 1.1433-1.5394 1.96-2.8978 1.96-1.9243 0-3.2374-1.6567-3.2374-3.5233v-0.046667c0-1.89 1.2904-3.5 3.2147-3.5 1.4489 0 2.5582 0.91 3.011 2.17h3.7128c-0.58861-3.1267-3.26-5.4367-6.7011-5.4367-3.9165 0-6.8596 3.0567-6.8596 6.8133v0.046667c0 3.7567 2.8978 6.7667 6.8143 6.7667 3.3506 0 5.9767-2.24 6.6558-5.2267l-3.7128-0.023333z"/>
|
||||
</g>
|
||||
<polygon points="70.493 20.684 60.835 15.129 59.168 14.406 19.655 14.7 19.655 34.797 70.493 34.819" fill="#fff"/>
|
||||
<path d="m52.909 32.968c0.47281-1.6258 0.29269-3.1161-0.49532-4.2226-0.72047-1.0161-1.9363-1.6032-3.3997-1.671l-27.715-0.36129c-0.18012 0-0.33772-0.090323-0.42778-0.22581-0.090058-0.13548-0.11257-0.31613-0.067544-0.49677 0.090058-0.27097 0.36023-0.47419 0.65292-0.49677l27.963-0.36129c3.3096-0.15806 6.912-2.8452 8.1728-6.1419l1.5985-4.1774c0.067544-0.18065 0.090058-0.36129 0.045029-0.54194-1.8012-8.1742-9.0734-14.271-17.764-14.271-8.0152 0-14.815 5.1935-17.246 12.397-1.576-1.1742-3.5798-1.8065-5.7412-1.6032-3.85 0.38387-6.9345 3.4774-7.3173 7.3387-0.090058 0.99355-0.022515 1.9645 0.20263 2.8677-6.2816 0.18065-11.302 5.329-11.302 11.674 0 0.56452 0.045029 1.129 0.11257 1.6935 0.045029 0.27097 0.27018 0.47419 0.54035 0.47419h51.153c0.29269 0 0.56287-0.20323 0.65292-0.49677l0.38275-1.3774z" fill="#F38020"/>
|
||||
<path d="m61.735 15.106c-0.24766 0-0.51784 0-0.7655 0.022581-0.18012 0-0.33772 0.13548-0.40526 0.31613l-1.0807 3.771c-0.47281 1.6258-0.29269 3.1161 0.49532 4.2226 0.72047 1.0161 1.9363 1.6032 3.3997 1.671l5.8988 0.36129c0.18012 0 0.33772 0.090323 0.42778 0.22581 0.090058 0.13548 0.11257 0.33871 0.067544 0.49677-0.090058 0.27097-0.36023 0.47419-0.65292 0.49677l-6.1465 0.36129c-3.3322 0.15806-6.912 2.8452-8.1728 6.1419l-0.45029 1.1516c-0.090058 0.22581 0.067544 0.45161 0.3152 0.45161h21.119c0.24766 0 0.47281-0.15806 0.54035-0.40645 0.36023-1.3097 0.56287-2.6871 0.56287-4.1097 0-8.3774-6.7769-15.174-15.152-15.174" fill="#FAAE40"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 4.6 KiB |
24
wp-content/plugins/wp-rocket/assets/img/logo-cloudflare2.svg
Normal file
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg version="1.1" viewBox="0 0 153 51" xmlns="http://www.w3.org/2000/svg">
|
||||
<title>Logo cloudflare</title>
|
||||
<g fill="none" fill-rule="evenodd">
|
||||
<g fill-rule="nonzero">
|
||||
<path d="m151.5 42c-0.83607 0-1.5-0.66393-1.5-1.5 0-0.81148 0.66393-1.5 1.5-1.5 0.81148 0 1.5 0.66393 1.5 1.5 0 0.81148-0.68852 1.5-1.5 1.5zm0-2.7049c-0.66393 0-1.2049 0.54098-1.2049 1.2049s0.54098 1.2049 1.2049 1.2049 1.2049-0.54098 1.2049-1.2049-0.54098-1.2049-1.2049-1.2049zm0.7623 1.9918h-0.34426l-0.29508-0.56557h-0.39344v0.56557h-0.31967v-1.6475h0.78688c0.34426 0 0.56557 0.22131 0.56557 0.54098 0 0.2459-0.14754 0.41803-0.34426 0.4918l0.34426 0.61475zm-0.59016-0.86066c0.12295 0 0.2459-0.07377 0.2459-0.2459 0-0.19672-0.098361-0.2459-0.2459-0.2459h-0.4918v0.4918h0.4918z" fill="#404041"/>
|
||||
<polygon points="17 39 20.288 39 20.288 48.091 26 48.091 26 51 17 51" fill="#404041"/>
|
||||
<path d="m29 45.041v-0.041096c0-3.3082 2.798-6 6.5215-6 3.7235 0 6.4785 2.6507 6.4785 5.9589v0.041096c0 3.3082-2.798 6-6.5215 6-3.7235 0-6.4785-2.6507-6.4785-5.9589m9.5993 0v-0.041096c0-1.6644-1.2483-3.1027-3.0993-3.1027-1.8295 0-3.0563 1.4178-3.0563 3.0822v0.041096c0 1.6644 1.2483 3.1027 3.0778 3.1027 1.851 0 3.0778-1.4178 3.0778-3.0822" fill="#404041"/>
|
||||
<path d="m46 45.62v-6.62h3.3295v6.5569c0 1.7023 0.86398 2.5009 2.1705 2.5009s2.1705-0.77758 2.1705-2.4168v-6.641h3.3295v6.5359c0 3.8039-2.1705 5.4641-5.5421 5.4641-3.3506 0-5.4579-1.6813-5.4579-5.38" fill="#404041"/>
|
||||
<path d="m62 39h4.4578c4.1276 0 6.5422 2.4599 6.5422 5.9251v0.042781c0 3.4652-2.4353 6.0321-6.6041 6.0321h-4.3959v-12zm4.5197 9.0481c1.9193 0 3.1989-1.0909 3.1989-3.0374v-0.042781c0-1.9251-1.2795-3.0374-3.1989-3.0374h-1.3002v6.0963h1.3002v0.02139z" fill="#404041"/>
|
||||
<polygon points="78 39 88 39 88 41.909 81.452 41.909 81.452 43.963 87.376 43.963 87.376 46.722 81.452 46.722 81.452 51 78 51" fill="#404041"/>
|
||||
<polygon points="92 39 95.267 39 95.267 48.091 101 48.091 101 51 92 51" fill="#404041"/>
|
||||
<path d="m109.93 39h3.11l4.9553 12h-3.4625l-0.85008-2.1239h-4.4785l-0.82935 2.1239h-3.3796l4.9346-12zm2.8405 7.3062l-1.2855-3.377-1.3062 3.377h2.5917z" fill="#404041"/>
|
||||
<path d="m122 39h5.6383c1.8298 0 3.0851 0.46975 3.8936 1.3025 0.70213 0.68327 1.0638 1.6014 1.0638 2.7972v0.042705c0 1.8363-0.97872 3.0534-2.4468 3.6726l2.8511 4.1851h-3.8298l-2.4043-3.6299h-1.4468v3.6299h-3.3191v-12zm5.4894 5.7438c1.1277 0 1.766-0.55516 1.766-1.4093v-0.042705c0-0.9395-0.68085-1.4093-1.7872-1.4093h-2.1702v2.8612h2.1915z" fill="#404041"/>
|
||||
<polygon points="138 39 147.91 39 147.91 41.824 141.38 41.824 141.38 43.642 147.3 43.642 147.3 46.273 141.38 46.273 141.38 48.176 148 48.176 148 51 138 51" fill="#404041"/>
|
||||
<path d="m9.3539 46.377c-0.47746 1.0068-1.4758 1.726-2.778 1.726-1.8447 0-3.1035-1.4589-3.1035-3.1027v-0.041096c0-1.6644 1.2371-3.0822 3.0818-3.0822 1.389 0 2.4524 0.80137 2.8865 1.911h3.5593c-0.56427-2.7534-3.1252-4.7877-6.424-4.7877-3.7546 0-6.576 2.6918-6.576 6v0.041096c0 3.3082 2.778 5.9589 6.5326 5.9589 3.212 0 5.7295-1.9726 6.3806-4.6027l-3.5593-0.020548z" fill="#404041"/>
|
||||
<g transform="translate(77)">
|
||||
<polygon points="66.789 19.588 57.632 14.385 56.052 13.708 18.592 13.962 18.592 32.81 66.789 32.81" fill="#fff"/>
|
||||
<path d="m50.118 31.075c0.44825-1.5231 0.27749-2.9192-0.46959-3.9558-0.68304-0.95192-1.8357-1.5019-3.2231-1.5654l-26.276-0.33846c-0.17076 0-0.32018-0.084615-0.40556-0.21154-0.08538-0.12692-0.10673-0.29615-0.064035-0.46538 0.08538-0.25385 0.34152-0.44423 0.61901-0.46538l26.511-0.33846c3.1377-0.14808 6.5529-2.6654 7.7482-5.7538l1.5155-3.9135c0.064035-0.16923 0.08538-0.33846 0.04269-0.50769-1.7076-7.6577-8.602-13.369-16.841-13.369-7.5988 0-14.045 4.8654-16.35 11.613-1.4942-1.1-3.3939-1.6923-5.443-1.5019-3.65 0.35962-6.5743 3.2577-6.9371 6.875-0.08538 0.93077-0.021345 1.8404 0.19211 2.6865-5.9553 0.16923-10.715 4.9923-10.715 10.937 0 0.52885 0.04269 1.0577 0.10673 1.5865 0.04269 0.25385 0.25614 0.44423 0.51228 0.44423h48.496c0.27749 0 0.53363-0.19038 0.61901-0.46538l0.36287-1.2904z" fill="#F38020"/>
|
||||
<path d="m58.485 14.342c-0.2348 0-0.49094 0-0.72573 0.021154-0.17076 0-0.32018 0.12692-0.38421 0.29615l-1.0246 3.5327c-0.44825 1.5231-0.27749 2.9192 0.46959 3.9558 0.68304 0.95192 1.8357 1.5019 3.2231 1.5654l5.5924 0.33846c0.17076 0 0.32018 0.084615 0.40556 0.21154 0.08538 0.12692 0.10673 0.31731 0.064035 0.46538-0.08538 0.25385-0.34152 0.44423-0.61901 0.46538l-5.8272 0.33846c-3.1591 0.14808-6.5529 2.6654-7.7482 5.7538l-0.4269 1.0788c-0.08538 0.21154 0.064035 0.42308 0.29883 0.42308h20.022c0.2348 0 0.44825-0.14808 0.51228-0.38077 0.34152-1.2269 0.53363-2.5173 0.53363-3.85 0-7.8269-6.4462-14.215-14.365-14.215" fill="#FAAE40"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 4.5 KiB |
@@ -0,0 +1 @@
|
||||
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 114 114"><defs><style>.cls-1{fill:#4267b2;}.cls-2{fill:#fff;}</style></defs><title>flogo_RGB_HEX-114</title><path class="cls-1" d="M107.71,0H6.29A6.29,6.29,0,0,0,0,6.29V107.71A6.29,6.29,0,0,0,6.29,114H60.9V69.91H46.09V52.66H60.9V40c0-14.73,9-22.74,22.12-22.74a125.3,125.3,0,0,1,13.28.67V33.28H87.24c-7.15,0-8.53,3.39-8.53,8.38v11H95.8L93.57,69.91H78.71V114h29a6.29,6.29,0,0,0,6.29-6.29V6.29A6.29,6.29,0,0,0,107.71,0Z"/><path id="f" class="cls-2" d="M78.71,114V69.91H93.57L95.8,52.66H78.71v-11c0-5,1.38-8.38,8.53-8.38H96.3V17.89A125.3,125.3,0,0,0,83,17.22c-13.13,0-22.12,8-22.12,22.74v12.7H46.09V69.91H60.9V114Z"/></svg>
|
After Width: | Height: | Size: 705 B |
@@ -0,0 +1,166 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.1"
|
||||
id="Layer_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="26 -29 256 186.35493"
|
||||
xml:space="preserve"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="google_analytics-official.svg"
|
||||
width="256"
|
||||
height="186.35493"><metadata
|
||||
id="metadata4396"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs4394" /><sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1562"
|
||||
inkscape:window-height="789"
|
||||
id="namedview4392"
|
||||
showgrid="false"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0"
|
||||
inkscape:zoom="1.6164384"
|
||||
inkscape:cx="69.999996"
|
||||
inkscape:cy="73.000001"
|
||||
inkscape:window-x="65"
|
||||
inkscape:window-y="24"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="Layer_1" /><style
|
||||
type="text/css"
|
||||
id="style4345">
|
||||
.st0{fill:#F9F9F9;stroke:#EAEAEA;stroke-width:3.9933;stroke-miterlimit:10;}
|
||||
.st1{fill:#757575;}
|
||||
.st2{fill-rule:evenodd;clip-rule:evenodd;fill:#757575;}
|
||||
.st3{fill-rule:evenodd;clip-rule:evenodd;fill:#FFC517;}
|
||||
.st4{fill-rule:evenodd;clip-rule:evenodd;fill:#F57E02;}
|
||||
.st5{fill-rule:evenodd;clip-rule:evenodd;fill:url(#SVGID_1_);}
|
||||
</style><linearGradient
|
||||
id="SVGID_1_"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
x1="103.2525"
|
||||
y1="39.1007"
|
||||
x2="119.0151"
|
||||
y2="39.1007"><stop
|
||||
offset="0"
|
||||
style="stop-color:#E96F0B"
|
||||
id="stop4386" /><stop
|
||||
offset="1"
|
||||
style="stop-color:#F37901"
|
||||
id="stop4388" /></linearGradient><g
|
||||
id="g4398"
|
||||
transform="matrix(2.7205101,0,0,2.7205101,-107.03294,-52.668438)"><path
|
||||
id="path4349"
|
||||
d="m 97.5,66.4 0,0 1.6,4.2 -3.1,0 1.5,-4.2 z m -0.6,-1.4 -3.5,9.2 1.3,0 0.9,-2.5 3.9,0 0.9,2.5 1.3,0 -3.5,-9.2 -1.3,0 z"
|
||||
class="st1"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#757575" /><path
|
||||
id="path4351"
|
||||
d="m 115.8,74.2 1.2,0 0,-9.2 -1.2,0 0,9.2 z"
|
||||
class="st1"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#757575" /><path
|
||||
id="path4353"
|
||||
d="m 103.5,68.8 0,0 c 0.4,-0.6 1.2,-1.1 2,-1.1 1.6,0 2.4,1.1 2.4,2.7 l 0,3.9 -1.2,0 0,-3.7 c 0,-1.3 -0.7,-1.8 -1.6,-1.8 -1,0 -1.7,1 -1.7,1.9 l 0,3.5 -1.2,0 0,-6.4 1.2,0 0.1,1 z"
|
||||
class="st1"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#757575" /><path
|
||||
id="path4355"
|
||||
d="m 108.9,72.3 c 0,-1.4 1.3,-2.2 2.8,-2.2 0.9,0 1.5,0.2 1.7,0.4 l 0,-0.2 c 0,-1 -0.8,-1.5 -1.6,-1.5 -0.7,0 -1.3,0.3 -1.5,0.9 l -1.1,-0.5 c 0.2,-0.6 1,-1.5 2.6,-1.5 1.5,0 2.8,0.9 2.8,2.7 l 0,3.8 -1.1,0 0,-0.9 -0.1,0 c -0.3,0.5 -1,1.1 -2.1,1.1 -1.3,0 -2.4,-0.8 -2.4,-2.1 m 4.5,-0.8 c 0,0 -0.5,-0.4 -1.5,-0.4 -1.2,0 -1.7,0.7 -1.7,1.2 0,0.7 0.7,1 1.3,1 0.9,0 1.9,-0.8 1.9,-1.8"
|
||||
class="st1"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#757575" /><path
|
||||
id="path4357"
|
||||
d="m 118.7,77 0,0 1.4,-3.3 -2.5,-5.8 1.2,0 1.9,4.4 1.9,-4.4 1.2,0 -3.9,9.1 -1.2,0 0,0 z"
|
||||
class="st2"
|
||||
inkscape:connector-curvature="0"
|
||||
style="clip-rule:evenodd;fill:#757575;fill-rule:evenodd" /><path
|
||||
id="path4359"
|
||||
d="m 136.3,70 c -0.3,-0.8 -1,-1.3 -1.7,-1.3 -1,0 -1.9,0.9 -1.9,2.2 0,1.3 0.9,2.2 1.9,2.2 0.7,0 1.4,-0.5 1.7,-1.2 l 1,0.6 c -0.5,1.1 -1.5,1.8 -2.7,1.8 -1.7,0 -3.1,-1.5 -3.1,-3.4 0,-2 1.4,-3.4 3.1,-3.4 1.2,0 2.2,0.7 2.7,1.8 l -1,0.7 z"
|
||||
class="st2"
|
||||
inkscape:connector-curvature="0"
|
||||
style="clip-rule:evenodd;fill:#757575;fill-rule:evenodd" /><path
|
||||
id="path4361"
|
||||
d="m 140.6,74.4 c 1.6,0 2.4,-0.9 2.4,-2 0,-2.4 -3.5,-1.5 -3.5,-2.9 0,-0.5 0.4,-0.8 1.1,-0.8 0.7,0 1.4,0.3 1.7,0.8 l 0.7,-0.7 c -0.4,-0.5 -1.5,-1.2 -2.5,-1.2 -1.5,0 -2.3,0.9 -2.3,2 0,2.3 3.6,1.5 3.6,2.7 0,0.6 -0.4,1 -1.2,1 -0.8,0 -1.2,-0.5 -1.6,-1 l -0.9,0.7 c 0.6,0.6 1.5,1.4 2.5,1.4 z"
|
||||
class="st1"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#757575" /><path
|
||||
id="path4363"
|
||||
d="m 129.2,74.2 1.2,0 0,-6.4 -1.2,0 0,6.4 z"
|
||||
class="st1"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#757575" /><path
|
||||
id="path4365"
|
||||
d="m 129.7,64.7 c 0.5,0 0.8,0.4 0.8,0.8 0,0.5 -0.4,0.8 -0.8,0.8 -0.4,0 -0.8,-0.4 -0.8,-0.8 0,-0.4 0.4,-0.8 0.8,-0.8 z"
|
||||
class="st2"
|
||||
inkscape:connector-curvature="0"
|
||||
style="clip-rule:evenodd;fill:#757575;fill-rule:evenodd" /><path
|
||||
id="path4367"
|
||||
d="m 128,73.2 0.2,0.9 c -0.4,0 -0.8,0 -1.2,0 -1.1,0 -1.6,-0.8 -1.6,-2 l 0,-3.1 -1.2,0 0,-1.2 1.2,0 0,-1.9 1.2,0 0,1.9 1.4,0 0,1.2 -1.4,0 0,3.3 c 0,0.9 0.7,0.9 1.4,0.9 z"
|
||||
class="st2"
|
||||
inkscape:connector-curvature="0"
|
||||
style="clip-rule:evenodd;fill:#757575;fill-rule:evenodd" /><path
|
||||
id="path4369"
|
||||
d="m 54.3,68.7 0,1.5 3.5,0 C 57.7,71 57.4,71.6 57,72 c -0.5,0.5 -1.3,1.1 -2.7,1.1 -2.1,0 -3.8,-1.7 -3.8,-3.9 0,-2.1 1.7,-3.9 3.8,-3.9 1.2,0 2,0.5 2.6,1 l 1,-1 c -0.9,-0.8 -2,-1.5 -3.6,-1.5 -2.9,0 -5.4,2.4 -5.4,5.3 0,2.9 2.5,5.3 5.4,5.3 1.6,0 2.8,-0.5 3.7,-1.5 1,-1 1.3,-2.3 1.3,-3.4 0,-0.3 0,-0.7 -0.1,-0.9 l -4.9,0 z"
|
||||
class="st1"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#757575" /><path
|
||||
id="path4371"
|
||||
d="m 63.2,67.5 c -1.9,0 -3.4,1.4 -3.4,3.4 0,2 1.5,3.4 3.4,3.4 1.9,0 3.4,-1.5 3.4,-3.4 0,-2 -1.5,-3.4 -3.4,-3.4 z m 0,5.5 c -1,0 -1.9,-0.9 -1.9,-2.1 0,-1.2 0.9,-2.1 1.9,-2.1 1,0 1.9,0.8 1.9,2.1 0,1.3 -0.9,2.1 -1.9,2.1 z"
|
||||
class="st1"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#757575" /><path
|
||||
id="path4373"
|
||||
d="m 79.6,68.2 0,0 c -0.4,-0.4 -1,-0.8 -1.9,-0.8 -1.7,0 -3.2,1.5 -3.2,3.4 0,1.9 1.5,3.4 3.2,3.4 0.8,0 1.5,-0.4 1.8,-0.8 l 0.1,0 0,0.5 c 0,1.3 -0.7,2 -1.8,2 -0.9,0 -1.5,-0.7 -1.7,-1.2 l -1.3,0.5 c 0.4,0.9 1.4,2 3,2 1.8,0 3.3,-1 3.3,-3.6 l 0,-6.2 -1.4,0 0,0.8 z M 77.9,73 c -1,0 -1.8,-0.9 -1.8,-2.1 0,-1.2 0.8,-2.1 1.8,-2.1 1,0 1.8,0.9 1.8,2.1 0,1.2 -0.8,2.1 -1.8,2.1 z"
|
||||
class="st1"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#757575" /><path
|
||||
id="path4375"
|
||||
d="m 70.6,67.5 c -1.9,0 -3.4,1.4 -3.4,3.4 0,2 1.5,3.4 3.4,3.4 1.9,0 3.4,-1.5 3.4,-3.4 0.1,-2 -1.5,-3.4 -3.4,-3.4 z m 0,5.5 c -1,0 -1.9,-0.9 -1.9,-2.1 0,-1.2 0.9,-2.1 1.9,-2.1 1,0 1.9,0.8 1.9,2.1 0,1.3 -0.9,2.1 -1.9,2.1 z"
|
||||
class="st1"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#757575" /><path
|
||||
id="path4377"
|
||||
d="m 82.2,63.9 1.5,0 0,10.4 -1.5,0 0,-10.4 z"
|
||||
class="st1"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#757575" /><path
|
||||
id="path4379"
|
||||
d="M 87.8,73 C 87,73 86.5,72.6 86.1,72 l 4.6,-1.9 -0.2,-0.4 c -0.3,-0.8 -1.2,-2.2 -2.9,-2.2 -1.8,0 -3.2,1.4 -3.2,3.4 0,1.9 1.5,3.4 3.4,3.4 1.6,0 2.5,-1 2.9,-1.5 L 89.5,72 c -0.4,0.6 -0.9,1 -1.7,1 l 0,0 z m -0.1,-4.2 c 0.6,0 1.1,0.3 1.3,0.8 l -3.1,1.3 c 0,-1.5 1,-2.1 1.8,-2.1 z"
|
||||
class="st1"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#757575" /><path
|
||||
id="path4381"
|
||||
d="m 93.8,54.9 -2.6,0 -14.5,0 c -2.1,0 -3.8,-1.7 -3.8,-3.8 l 0,-8.2 c 0,-2.1 1.7,-3.8 3.8,-3.8 l 10.8,0 0,-12 c 0,-2.1 1.7,-3.8 3.8,-3.8 l 12,0 0,31.5 -9.5,0 z"
|
||||
class="st3"
|
||||
inkscape:connector-curvature="0"
|
||||
style="clip-rule:evenodd;fill:#ffc517;fill-rule:evenodd" /><path
|
||||
id="path4383"
|
||||
d="m 115.3,54.9 -12,0 0,-42.4 c 0,-2.1 1.7,-3.8 3.8,-3.8 l 8.2,0 c 2.1,0 3.8,1.7 3.8,3.8 l 0,38.6 c -0.1,2.1 -1.8,3.8 -3.8,3.8 z"
|
||||
class="st4"
|
||||
inkscape:connector-curvature="0"
|
||||
style="clip-rule:evenodd;fill:#f57e02;fill-rule:evenodd" /><path
|
||||
id="path4390"
|
||||
d="m 119,39.1 0,12 c 0,2.1 -1.7,3.8 -3.8,3.8 l -12,0 0,-31.6 15.8,15.8 z"
|
||||
class="st5"
|
||||
style="clip-rule:evenodd;fill:url(#SVGID_1_);fill-rule:evenodd"
|
||||
inkscape:connector-curvature="0" /></g></svg>
|
After Width: | Height: | Size: 8.4 KiB |
BIN
wp-content/plugins/wp-rocket/assets/img/logo-sucuri.png
Normal file
After Width: | Height: | Size: 21 KiB |
1
wp-content/plugins/wp-rocket/assets/img/logo-varnish.svg
Normal file
After Width: | Height: | Size: 25 KiB |
After Width: | Height: | Size: 17 KiB |
After Width: | Height: | Size: 20 KiB |
@@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="25px" height="45px" viewBox="0 0 25 45" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!-- Generator: Sketch 50.2 (55047) - http://www.bohemiancoding.com/sketch -->
|
||||
<title>Icons / WP Rocket / Light</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<defs>
|
||||
<linearGradient x1="50.1383841%" y1="100%" x2="50.1383841%" y2="32.5347067%" id="linearGradient-1">
|
||||
<stop stop-color="#F56640" offset="0%"></stop>
|
||||
<stop stop-color="#F57840" offset="24.3858064%"></stop>
|
||||
<stop stop-color="#FFBE54" offset="100%"></stop>
|
||||
</linearGradient>
|
||||
<linearGradient x1="50.0029445%" y1="98.3205782%" x2="50.0029445%" y2="18.9773025%" id="linearGradient-2">
|
||||
<stop stop-color="#F56640" offset="0%"></stop>
|
||||
<stop stop-color="#F57840" offset="18.1093204%"></stop>
|
||||
<stop stop-color="#FFBE54" offset="100%"></stop>
|
||||
</linearGradient>
|
||||
<linearGradient x1="50.000006%" y1="110.433207%" x2="50%" y2="-25.4443577%" id="linearGradient-3">
|
||||
<stop stop-color="#F56640" offset="0%"></stop>
|
||||
<stop stop-color="#F57840" offset="8.37881088%"></stop>
|
||||
<stop stop-color="#FFBE54" offset="100%"></stop>
|
||||
</linearGradient>
|
||||
<linearGradient x1="50.000006%" y1="84.3779533%" x2="50.000006%" y2="0%" id="linearGradient-4">
|
||||
<stop stop-color="#F56640" offset="0%"></stop>
|
||||
<stop stop-color="#F57840" offset="39.1082657%"></stop>
|
||||
<stop stop-color="#FFBE54" offset="100%"></stop>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||
<g id="Navigation-/-Header-Light-Mobile" transform="translate(-29.000000, -17.000000)">
|
||||
<g id="Icons-/-WP-Rocket-/-Light" transform="translate(29.000000, 17.000000)">
|
||||
<path d="M18.4447368,22.8371579 C17.6211579,22.8371579 16.8490526,22.3567368 16.4715789,21.6017895 L15.8195789,20.1433684 L9.35105263,20.1433684 L8.69905263,21.6017895 C8.32157895,22.3567368 7.54947368,22.8371579 6.72589474,22.8371579 L6.38273684,22.8371579 L9.14515789,43.8898947 C9.28242105,44.2845263 9.53978947,44.2845263 9.69421053,43.8898947 L12.4394737,37.164 L14.8244211,43.8727368 C14.9616842,44.2673684 15.2190526,44.2673684 15.3734737,43.8727368 L18.5648421,22.8543158 L18.4447368,22.8371579 L18.4447368,22.8371579 Z" id="Shape" fill="url(#linearGradient-1)"></path>
|
||||
<path d="M15.5622105,19.56 L9.62557895,19.56 L8.71621053,21.6017895 C8.40736842,22.2194737 7.80684211,22.6655789 7.15484211,22.7856842 L9.24810526,35.7742105 C9.38536842,36.0144211 9.64273684,36.0144211 9.79715789,35.7742105 L12.4737895,31.7077895 L14.9273684,35.7570526 C15.0817895,35.9972632 15.322,35.9972632 15.4764211,35.7570526 L17.8442105,22.7513684 C17.2608421,22.5797895 16.7461053,22.168 16.4715789,21.6017895 L15.5622105,19.56 Z" id="Shape" fill="url(#linearGradient-2)"></path>
|
||||
<path d="M16.4715789,21.6017895 L12.5767368,12.9027368 L8.69905263,21.6017895 C8.56178947,21.8591579 8.39021053,22.0822105 8.18431579,22.2709474 L9.79715789,30.9013684 C9.88294737,31.0214737 10.106,31.0557895 10.2604211,30.9013684 L12.4223158,28.036 L14.5842105,30.8842105 C14.7214737,31.0557895 14.9616842,31.0214737 15.0474737,30.8842105 L16.8318947,22.1508421 C16.6946316,21.9792632 16.5745263,21.8076842 16.4715789,21.6017895" id="Shape" fill="url(#linearGradient-3)"></path>
|
||||
<path d="M16.4715789,21.6017895 L12.5767368,12.9027368 L8.69905263,21.6017895 C8.56178947,21.8591579 8.39021053,22.0822105 8.18431579,22.2709474 L9.79715789,30.9013684 C9.88294737,31.0214737 10.106,31.0557895 10.2604211,30.9013684 L12.4223158,28.036 L14.5842105,30.8842105 C14.7214737,31.0557895 14.9616842,31.0214737 15.0474737,30.8842105 L16.8318947,22.1508421 C16.6946316,21.9792632 16.5745263,21.8076842 16.4715789,21.6017895" id="Shape" fill="url(#linearGradient-4)" opacity="0.5"></path>
|
||||
<path d="M0.154421053,1.06378947 C0.0343157895,0.652 0.274526316,0.360315789 0.686315789,0.360315789 L4.10073684,0.360315789 C4.34094737,0.360315789 4.564,0.566210526 4.63263158,0.772105263 L7.13768421,10.6378947 L7.25778947,10.6378947 L11.7703158,0.394631579 C11.8561053,0.223052632 12.0276842,0.0686315789 12.2678947,0.0686315789 L12.7997895,0.0686315789 C13.0571579,0.0686315789 13.2287368,0.205894737 13.2973684,0.394631579 L17.8098947,10.6378947 L17.93,10.6378947 L20.4350526,0.772105263 C20.4865263,0.566210526 20.7267368,0.360315789 20.9669474,0.360315789 L24.3813684,0.360315789 C24.7931579,0.360315789 25.0162105,0.652 24.9132632,1.06378947 L19.4055789,20.6237895 C19.3541053,20.864 19.1138947,21.0355789 18.8736842,21.0355789 L18.4104211,21.0355789 C18.2045263,21.0355789 17.9986316,20.8983158 17.9128421,20.7095789 L12.5767368,8.802 L12.4909474,8.802 L7.18915789,20.7095789 C7.10336842,20.8811579 6.89747368,21.0355789 6.69157895,21.0355789 L6.22831579,21.0355789 C5.98810526,21.0355789 5.76505263,20.864 5.69642105,20.6237895 L0.154421053,1.06378947" id="Shape" fill="#F56640"></path>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 5.1 KiB |
@@ -0,0 +1,47 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 18.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Calque_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="103.4 123.5 76 134.4" enable-background="new 103.4 123.5 76 134.4" xml:space="preserve">
|
||||
<g transform="translate(-29 -17)">
|
||||
<g transform="translate(29 17)">
|
||||
|
||||
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="3.2546" y1="0.1906" x2="3.2546" y2="-0.484" gradientTransform="matrix(37.3684 0 0 73.3058 19.5795 243.9274)">
|
||||
<stop offset="0" style="stop-color:#F56640"/>
|
||||
<stop offset="0.2439" style="stop-color:#F57840"/>
|
||||
<stop offset="1" style="stop-color:#FFBE54"/>
|
||||
</linearGradient>
|
||||
<path fill="url(#SVGID_1_)" d="M159.6,192.8c-2.5,0-4.9-1.5-6.1-3.8l-2-4.4h-19.8l-2,4.4c-1.2,2.3-3.5,3.8-6.1,3.8h-1.1L131,257
|
||||
c0.4,1.2,1.2,1.2,1.7,0l8.4-20.5l7.3,20.5c0.4,1.2,1.2,1.2,1.7,0l9.8-64.1L159.6,192.8L159.6,192.8z"/>
|
||||
|
||||
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="3.64" y1="-0.2038" x2="3.64" y2="-0.9973" gradientTransform="matrix(32.7896 0 0 49.9855 21.9466 242.1502)">
|
||||
<stop offset="0" style="stop-color:#F56640"/>
|
||||
<stop offset="0.1811" style="stop-color:#F57840"/>
|
||||
<stop offset="1" style="stop-color:#FFBE54"/>
|
||||
</linearGradient>
|
||||
<path fill="url(#SVGID_2_)" d="M150.7,182.8h-18.2l-2.8,6.2c-0.9,1.9-2.8,3.2-4.8,3.6l6.4,39.6c0.4,0.7,1.2,0.7,1.7,0l8.2-12.4
|
||||
l7.5,12.3c0.5,0.7,1.2,0.7,1.7,0l7.3-39.7c-1.8-0.5-3.4-1.8-4.2-3.5L150.7,182.8L150.7,182.8z"/>
|
||||
|
||||
<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="4.3803" y1="2.929688e-02" x2="4.3803" y2="-1.3295" gradientTransform="matrix(26.5261 0 0 55.1922 25.1065 221.8337)">
|
||||
<stop offset="0" style="stop-color:#F56640"/>
|
||||
<stop offset="8.378801e-02" style="stop-color:#F57840"/>
|
||||
<stop offset="1" style="stop-color:#FFBE54"/>
|
||||
</linearGradient>
|
||||
<path fill="url(#SVGID_3_)" d="M153.5,189l-11.9-26.5L129.7,189c-0.4,0.8-0.9,1.5-1.6,2l4.9,26.3c0.3,0.4,0.9,0.5,1.4,0l6.6-8.7
|
||||
l6.6,8.7c0.4,0.5,1.2,0.4,1.4,0l5.5-26.6C154.2,190.2,153.8,189.7,153.5,189"/>
|
||||
|
||||
<linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="4.3803" y1="-0.2313" x2="4.3803" y2="-1.075" gradientTransform="matrix(26.5261 0 0 55.1922 25.1065 221.8337)">
|
||||
<stop offset="0" style="stop-color:#F56640"/>
|
||||
<stop offset="0.3911" style="stop-color:#F57840"/>
|
||||
<stop offset="1" style="stop-color:#FFBE54"/>
|
||||
</linearGradient>
|
||||
<path opacity="0.5" fill="url(#SVGID_4_)" enable-background="new " d="M153.5,189l-11.9-26.5L129.7,189
|
||||
c-0.4,0.8-0.9,1.5-1.6,2l4.9,26.3c0.3,0.4,0.9,0.5,1.4,0l6.6-8.7l6.6,8.7c0.4,0.5,1.2,0.4,1.4,0l5.5-26.6
|
||||
C154.2,190.2,153.8,189.7,153.5,189"/>
|
||||
<path fill="#FFFFFF" d="M103.5,126.4c-0.4-1.3,0.4-2.1,1.6-2.1h10.5c0.7,0,1.4,0.6,1.6,1.3l7.7,30.1h0.4l13.8-31.2
|
||||
c0.3-0.5,0.8-1,1.5-1h1.6c0.8,0,1.3,0.4,1.5,1l13.8,31.2h0.4l7.7-30.1c0.2-0.6,0.9-1.3,1.6-1.3h10.5c1.3,0,1.9,0.9,1.6,2.1
|
||||
L162.4,186c-0.2,0.7-0.9,1.3-1.6,1.3h-1.4c-0.6,0-1.3-0.4-1.5-1L141.6,150h-0.3L125,186.3c-0.3,0.5-0.9,1-1.5,1h-1.4
|
||||
c-0.7,0-1.4-0.5-1.6-1.3L103.5,126.4"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 3.3 KiB |
2
wp-content/plugins/wp-rocket/assets/img/play-alt.svg
Normal file
@@ -0,0 +1,2 @@
|
||||
|
||||
<svg height="20" viewBox="0 0 20 20" width="20" xmlns="http://www.w3.org/2000/svg"><path stroke="#02707F" d="m7.5 15c-.076 0-.153-.017-.224-.053-.169-.085-.276-.258-.276-.447v-9c0-.189.107-.363.276-.447s.372-.066.524.047l6 4.5c.126.094.2.243.2.4s-.074.306-.2.4l-6 4.5c-.088.066-.194.1-.3.1zm.5-8.5v7l4.667-3.5z"/><path stroke="#02707F" d="m19.5 2h-19c-.276 0-.5.224-.5.5v15c0 .276.224.5.5.5h19c.276 0 .5-.224.5-.5v-15c0-.276-.224-.5-.5-.5zm-16.5 9h-2v-2h2zm0-3h-2v-2h2zm-2 4h2v2h-2zm3-9h12v14h-12zm13 6h2v2h-2zm0-1v-2h2v2zm0 4h2v2h-2zm2-7h-2v-2h2zm-16-2v2h-2v-2zm-2 12h2v2h-2zm16 2v-2h2v2z"/></svg>
|
After Width: | Height: | Size: 599 B |
2
wp-content/plugins/wp-rocket/assets/img/play-hover.svg
Normal file
@@ -0,0 +1,2 @@
|
||||
|
||||
<svg height="20" viewBox="0 0 20 20" width="20" xmlns="http://www.w3.org/2000/svg"><path stroke="#F56640" d="m7.5 15c-.076 0-.153-.017-.224-.053-.169-.085-.276-.258-.276-.447v-9c0-.189.107-.363.276-.447s.372-.066.524.047l6 4.5c.126.094.2.243.2.4s-.074.306-.2.4l-6 4.5c-.088.066-.194.1-.3.1zm.5-8.5v7l4.667-3.5z"/><path stroke="#F56640" d="m19.5 2h-19c-.276 0-.5.224-.5.5v15c0 .276.224.5.5.5h19c.276 0 .5-.224.5-.5v-15c0-.276-.224-.5-.5-.5zm-16.5 9h-2v-2h2zm0-3h-2v-2h2zm-2 4h2v2h-2zm3-9h12v14h-12zm13 6h2v2h-2zm0-1v-2h2v2zm0 4h2v2h-2zm2-7h-2v-2h2zm-16-2v2h-2v-2zm-2 12h2v2h-2zm16 2v-2h2v2z"/></svg>
|
After Width: | Height: | Size: 599 B |
2
wp-content/plugins/wp-rocket/assets/img/play.svg
Normal file
@@ -0,0 +1,2 @@
|
||||
|
||||
<svg height="20" viewBox="0 0 20 20" width="20" xmlns="http://www.w3.org/2000/svg"><path stroke="#121116" d="m7.5 15c-.076 0-.153-.017-.224-.053-.169-.085-.276-.258-.276-.447v-9c0-.189.107-.363.276-.447s.372-.066.524.047l6 4.5c.126.094.2.243.2.4s-.074.306-.2.4l-6 4.5c-.088.066-.194.1-.3.1zm.5-8.5v7l4.667-3.5z"/><path stroke="#121116" d="m19.5 2h-19c-.276 0-.5.224-.5.5v15c0 .276.224.5.5.5h19c.276 0 .5-.224.5-.5v-15c0-.276-.224-.5-.5-.5zm-16.5 9h-2v-2h2zm0-3h-2v-2h2zm-2 4h2v2h-2zm3-9h12v14h-12zm13 6h2v2h-2zm0-1v-2h2v2zm0 4h2v2h-2zm2-7h-2v-2h2zm-16-2v2h-2v-2zm-2 12h2v2h-2zm16 2v-2h2v2z"/></svg>
|
After Width: | Height: | Size: 599 B |
12
wp-content/plugins/wp-rocket/assets/img/plus.svg
Normal file
@@ -0,0 +1,12 @@
|
||||
<svg width="117" height="32" viewBox="0 0 117 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g clip-path="url(#clip0)">
|
||||
<path d="M15.6 2.59961L29.3915 26.4871H1.80859L15.6 2.59961Z" fill="#172153"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M58.4984 27.95C51.6777 27.95 46.1484 22.4207 46.1484 15.6C46.1484 8.77929 51.6777 3.25 58.4984 3.25C65.3191 3.25 70.8484 8.77929 70.8484 15.6C70.8484 22.4207 65.3191 27.95 58.4984 27.95Z" fill="#F56F46"/>
|
||||
<rect x="101.402" y="1.30078" width="20.2233" height="20.2233" rx="2.6" transform="rotate(45 101.402 1.30078)" fill="#FFD147"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0">
|
||||
<rect width="117" height="31.2" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 695 B |
14
wp-content/plugins/wp-rocket/assets/img/warning.svg
Normal file
@@ -0,0 +1,14 @@
|
||||
<svg width="63" height="48" viewBox="0 0 63 48" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g clip-path="url(#clip0)">
|
||||
<path d="M55.3556 46.0004H22.0048C18.4156 46.0004 16.2 42.0835 18.0489 39.0073L34.8315 11.0857C36.6308 8.0922 40.9743 8.10449 42.7565 11.1081L59.3248 39.0297C61.1504 42.1063 58.9331 46.0004 55.3556 46.0004Z" fill="#FFFFFF"/>
|
||||
<path d="M46.0883 46H8.1967C4.59945 46 2.38498 42.0672 4.25029 38.9914L23.3178 7.54943C25.1206 4.57673 29.4383 4.58899 31.2242 7.57188L50.0482 39.0138C51.89 42.0902 49.6738 46 46.0883 46Z" fill="#F56F46"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M22.0053 45.9997H46.0884C49.6739 45.9997 51.8901 42.0898 50.0483 39.0135L34.0784 12.3389L18.0495 39.0066C16.2005 42.0828 18.4162 45.9997 22.0053 45.9997Z" fill="#172153"/>
|
||||
<rect width="15.4682" height="4.13549" rx="2.06775" transform="matrix(1.31134e-07 -1 -1 -1.31134e-07 28.3662 32.6211)" fill="white"/>
|
||||
<rect width="4.15592" height="4.13549" rx="2.06775" transform="matrix(1.31134e-07 -1 -1 -1.31134e-07 28.3662 38.8672)" fill="white"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0">
|
||||
<rect width="63" height="48" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 1.1 KiB |
BIN
wp-content/plugins/wp-rocket/assets/img/youtube.png
Normal file
After Width: | Height: | Size: 662 B |
109
wp-content/plugins/wp-rocket/assets/js/browser-checker.js
Normal file
@@ -0,0 +1,109 @@
|
||||
class RocketBrowserCompatibilityChecker {
|
||||
|
||||
constructor( options ) {
|
||||
this.passiveSupported = false;
|
||||
|
||||
this._checkPassiveOption( this );
|
||||
this.options = this.passiveSupported ? options : false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Initializes browser check for addEventListener passive option.
|
||||
*
|
||||
* @link https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#Safely_detecting_option_support
|
||||
* @private
|
||||
*
|
||||
* @param self Instance of this object.
|
||||
* @returns {boolean}
|
||||
*/
|
||||
_checkPassiveOption( self ) {
|
||||
try {
|
||||
const options = {
|
||||
// This function will be called when the browser attempts to access the passive property.
|
||||
get passive() {
|
||||
self.passiveSupported = true;
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
window.addEventListener( 'test', null, options );
|
||||
window.removeEventListener( 'test', null, options );
|
||||
} catch ( err ) {
|
||||
self.passiveSupported = false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if the browser supports requestIdleCallback and cancelIdleCallback. If no, shims its behavior with a polyfills.
|
||||
*
|
||||
* @link @link https://developers.google.com/web/updates/2015/08/using-requestidlecallback
|
||||
*/
|
||||
initRequestIdleCallback() {
|
||||
if ( ! 'requestIdleCallback' in window ) {
|
||||
window.requestIdleCallback = ( cb ) => {
|
||||
const start = Date.now();
|
||||
return setTimeout( () => {
|
||||
cb( {
|
||||
didTimeout: false,
|
||||
timeRemaining: function timeRemaining() {
|
||||
return Math.max( 0, 50 - ( Date.now() - start ) );
|
||||
}
|
||||
} );
|
||||
}, 1 );
|
||||
};
|
||||
}
|
||||
|
||||
if ( ! 'cancelIdleCallback' in window ) {
|
||||
window.cancelIdleCallback = ( id ) => clearTimeout( id );
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Detects if data saver mode is on.
|
||||
*
|
||||
* @link https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/save-data/#detecting_the_save-data_setting
|
||||
*
|
||||
* @returns {boolean|boolean}
|
||||
*/
|
||||
isDataSaverModeOn() {
|
||||
return (
|
||||
'connection' in navigator
|
||||
&&
|
||||
true === navigator.connection.saveData
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if the browser supports link prefetch.
|
||||
*
|
||||
* @returns {boolean|boolean}
|
||||
*/
|
||||
supportsLinkPrefetch() {
|
||||
const elem = document.createElement( 'link' );
|
||||
return (
|
||||
elem.relList
|
||||
&&
|
||||
elem.relList.supports
|
||||
&&
|
||||
elem.relList.supports( 'prefetch' )
|
||||
&&
|
||||
window.IntersectionObserver
|
||||
&&
|
||||
'isIntersecting' in IntersectionObserverEntry.prototype
|
||||
);
|
||||
}
|
||||
|
||||
isSlowConnection() {
|
||||
return (
|
||||
'connection' in navigator
|
||||
&&
|
||||
'effectiveType' in navigator.connection
|
||||
&&
|
||||
(
|
||||
'2g' === navigator.connection.effectiveType
|
||||
||
|
||||
'slow-2g' === navigator.connection.effectiveType
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
1
wp-content/plugins/wp-rocket/assets/js/browser-checker.min.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";var _createClass=function(){function defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||!1,descriptor.configurable=!0,"value"in descriptor&&(descriptor.writable=!0),Object.defineProperty(target,descriptor.key,descriptor)}}return function(Constructor,protoProps,staticProps){return protoProps&&defineProperties(Constructor.prototype,protoProps),staticProps&&defineProperties(Constructor,staticProps),Constructor}}();function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor))throw new TypeError("Cannot call a class as a function")}var RocketBrowserCompatibilityChecker=function(){function RocketBrowserCompatibilityChecker(options){_classCallCheck(this,RocketBrowserCompatibilityChecker),this.passiveSupported=!1,this._checkPassiveOption(this),this.options=!!this.passiveSupported&&options}return _createClass(RocketBrowserCompatibilityChecker,[{key:"_checkPassiveOption",value:function(self){try{var options={get passive(){return!(self.passiveSupported=!0)}};window.addEventListener("test",null,options),window.removeEventListener("test",null,options)}catch(err){self.passiveSupported=!1}}},{key:"initRequestIdleCallback",value:function(){!1 in window&&(window.requestIdleCallback=function(cb){var start=Date.now();return setTimeout(function(){cb({didTimeout:!1,timeRemaining:function(){return Math.max(0,50-(Date.now()-start))}})},1)}),!1 in window&&(window.cancelIdleCallback=function(id){return clearTimeout(id)})}},{key:"isDataSaverModeOn",value:function(){return"connection"in navigator&&!0===navigator.connection.saveData}},{key:"supportsLinkPrefetch",value:function(){var elem=document.createElement("link");return elem.relList&&elem.relList.supports&&elem.relList.supports("prefetch")&&window.IntersectionObserver&&"isIntersecting"in IntersectionObserverEntry.prototype}},{key:"isSlowConnection",value:function(){return"connection"in navigator&&"effectiveType"in navigator.connection&&("2g"===navigator.connection.effectiveType||"slow-2g"===navigator.connection.effectiveType)}}]),RocketBrowserCompatibilityChecker}();
|
16
wp-content/plugins/wp-rocket/assets/js/cpcss-removal.js
Normal file
@@ -0,0 +1,16 @@
|
||||
const wprRemoveCPCSS = () => {
|
||||
if ( document.querySelector( 'link[data-rocket-async="style"][rel="preload"]' ) ) {
|
||||
setTimeout( wprRemoveCPCSS, 200 );
|
||||
} else {
|
||||
const elem = document.getElementById( 'rocket-critical-css' );
|
||||
if ( elem && 'remove' in elem ) {
|
||||
elem.remove();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
if ( window.addEventListener ) {
|
||||
window.addEventListener( 'load', wprRemoveCPCSS );
|
||||
} else if ( window.attachEvent ) {
|
||||
window.attachEvent( 'onload', wprRemoveCPCSS );
|
||||
}
|
1
wp-content/plugins/wp-rocket/assets/js/cpcss-removal.min.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";var wprRemoveCPCSS=function wprRemoveCPCSS(){var elem;document.querySelector('link[data-rocket-async="style"][rel="preload"]')?setTimeout(wprRemoveCPCSS,200):(elem=document.getElementById("rocket-critical-css"))&&"remove"in elem&&elem.remove()};window.addEventListener?window.addEventListener("load",wprRemoveCPCSS):window.attachEvent&&window.attachEvent("onload",wprRemoveCPCSS);
|
1
wp-content/plugins/wp-rocket/assets/js/editor/editor.js
Normal file
@@ -0,0 +1 @@
|
||||
this.DisableEmbeds=function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=2)}([function(e,t){!function(){e.exports=this.wp.blocks}()},function(e,t){!function(){e.exports=this.wp.domReady}()},function(e,t,n){"use strict";n.r(t);var r=n(0),o=n(1);n.n(o)()(function(){Object(r.unregisterBlockType)("core-embed/wordpress")})}]);
|
108
wp-content/plugins/wp-rocket/assets/js/lazyload-scripts.js
Normal file
@@ -0,0 +1,108 @@
|
||||
class RocketLazyLoadScripts {
|
||||
|
||||
constructor( triggerEvents, browser ) {
|
||||
this.attrName = 'data-rocketlazyloadscript';
|
||||
this.browser = browser;
|
||||
this.options = this.browser.options;
|
||||
this.triggerEvents = triggerEvents;
|
||||
this.userEventListener = this.triggerListener.bind( this );
|
||||
}
|
||||
|
||||
/**
|
||||
* Initializes the LazyLoad Scripts handler.
|
||||
*/
|
||||
init() {
|
||||
this._addEventListener( this );
|
||||
}
|
||||
|
||||
/**
|
||||
* Resets the handler.
|
||||
*/
|
||||
reset() {
|
||||
this._removeEventListener( this );
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds a listener for each of the configured user interactivity event type. When an even is triggered, it invokes
|
||||
* the triggerListener() method.
|
||||
*
|
||||
* @private
|
||||
*
|
||||
* @param self Instance of this object.
|
||||
*/
|
||||
_addEventListener( self ) {
|
||||
this.triggerEvents.forEach(
|
||||
eventName => window.addEventListener( eventName, self.userEventListener, self.options )
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes the listener for each of the configured user interactivity event type.
|
||||
*
|
||||
* @private
|
||||
*
|
||||
* @param self Instance of this object.
|
||||
*/
|
||||
_removeEventListener( self ) {
|
||||
this.triggerEvents.forEach(
|
||||
eventName => window.removeEventListener( eventName, self.userEventListener, self.options )
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Loads the script's src from the data attribute, which will then trigger the browser to request and
|
||||
* load the script.
|
||||
*/
|
||||
_loadScriptSrc() {
|
||||
const scripts = document.querySelectorAll( `script[${ this.attrName }]` );
|
||||
|
||||
if ( 0 === scripts.length ) {
|
||||
this.reset();
|
||||
return;
|
||||
}
|
||||
|
||||
Array.prototype.slice.call( scripts ).forEach( elem => {
|
||||
const scriptSrc = elem.getAttribute( this.attrName );
|
||||
|
||||
elem.setAttribute( 'src', scriptSrc );
|
||||
elem.removeAttribute( this.attrName );
|
||||
} );
|
||||
|
||||
this.reset();
|
||||
}
|
||||
|
||||
/**
|
||||
* Window event listener - when triggered, invokes the load script src handler and then resets.
|
||||
*/
|
||||
triggerListener() {
|
||||
this._loadScriptSrc();
|
||||
this._removeEventListener( this );
|
||||
}
|
||||
|
||||
/**
|
||||
* Named static constructor to encapsulate how to create the object.
|
||||
*/
|
||||
static run() {
|
||||
// Bail out if the browser checker does not exist.
|
||||
if ( ! RocketBrowserCompatibilityChecker ) {
|
||||
return;
|
||||
}
|
||||
|
||||
const options = {
|
||||
passive: true
|
||||
};
|
||||
const browser = new RocketBrowserCompatibilityChecker( options );
|
||||
const instance = new RocketLazyLoadScripts(
|
||||
[
|
||||
'keydown',
|
||||
'mouseover',
|
||||
'touchmove',
|
||||
'touchstart'
|
||||
],
|
||||
browser
|
||||
);
|
||||
instance.init();
|
||||
}
|
||||
}
|
||||
|
||||
RocketLazyLoadScripts.run();
|
3
wp-content/plugins/wp-rocket/assets/js/lazyload-scripts.min.js
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
(function() {
|
||||
"use strict";var e=function(){function n(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)}}return function(e,t,r){return t&&n(e.prototype,t),r&&n(e,r),e}}();function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var t=function(){function r(e,t){n(this,r),this.attrName="data-rocketlazyloadscript",this.browser=t,this.options=this.browser.options,this.triggerEvents=e,this.userEventListener=this.triggerListener.bind(this)}return e(r,[{key:"init",value:function(){this._addEventListener(this)}},{key:"reset",value:function(){this._removeEventListener(this)}},{key:"_addEventListener",value:function(t){this.triggerEvents.forEach(function(e){return window.addEventListener(e,t.userEventListener,t.options)})}},{key:"_removeEventListener",value:function(t){this.triggerEvents.forEach(function(e){return window.removeEventListener(e,t.userEventListener,t.options)})}},{key:"_loadScriptSrc",value:function(){var r=this,e=document.querySelectorAll("script["+this.attrName+"]");0!==e.length&&Array.prototype.slice.call(e).forEach(function(e){var t=e.getAttribute(r.attrName);e.setAttribute("src",t),e.removeAttribute(r.attrName)}),this.reset()}},{key:"triggerListener",value:function(){this._loadScriptSrc(),this._removeEventListener(this)}}],[{key:"run",value:function(){RocketBrowserCompatibilityChecker&&new r(["keydown","mouseover","touchmove","touchstart"],new RocketBrowserCompatibilityChecker({passive:!0})).init()}}]),r}();t.run();
|
||||
}());
|
@@ -0,0 +1,461 @@
|
||||
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
||||
|
||||
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
||||
|
||||
(function (global, factory) {
|
||||
(typeof exports === "undefined" ? "undefined" : _typeof(exports)) === 'object' && typeof module !== 'undefined' ? module.exports = factory() : typeof define === 'function' && define.amd ? define(factory) : global.LazyLoad = factory();
|
||||
})(this, function () {
|
||||
'use strict';
|
||||
|
||||
var runningOnBrowser = typeof window !== "undefined";
|
||||
var isBot = runningOnBrowser && !("onscroll" in window) || typeof navigator !== "undefined" && /(gle|ing|ro)bot|crawl|spider/i.test(navigator.userAgent);
|
||||
var supportsIntersectionObserver = runningOnBrowser && "IntersectionObserver" in window;
|
||||
var supportsClassList = runningOnBrowser && "classList" in document.createElement("p");
|
||||
var defaultSettings = {
|
||||
elements_selector: "img",
|
||||
container: isBot || runningOnBrowser ? document : null,
|
||||
threshold: 300,
|
||||
thresholds: null,
|
||||
data_src: "src",
|
||||
data_srcset: "srcset",
|
||||
data_sizes: "sizes",
|
||||
data_bg: "bg",
|
||||
class_loading: "loading",
|
||||
class_loaded: "loaded",
|
||||
class_error: "error",
|
||||
load_delay: 0,
|
||||
auto_unobserve: true,
|
||||
callback_enter: null,
|
||||
callback_exit: null,
|
||||
callback_reveal: null,
|
||||
callback_loaded: null,
|
||||
callback_error: null,
|
||||
callback_finish: null
|
||||
};
|
||||
|
||||
var getInstanceSettings = function getInstanceSettings(customSettings) {
|
||||
return _extends({}, defaultSettings, customSettings);
|
||||
};
|
||||
|
||||
var dataPrefix = "data-";
|
||||
var processedDataName = "was-processed";
|
||||
var timeoutDataName = "ll-timeout";
|
||||
var trueString = "true";
|
||||
|
||||
var getData = function getData(element, attribute) {
|
||||
return element.getAttribute(dataPrefix + attribute);
|
||||
};
|
||||
|
||||
var setData = function setData(element, attribute, value) {
|
||||
var attrName = dataPrefix + attribute;
|
||||
|
||||
if (value === null) {
|
||||
element.removeAttribute(attrName);
|
||||
return;
|
||||
}
|
||||
|
||||
element.setAttribute(attrName, value);
|
||||
};
|
||||
|
||||
var setWasProcessedData = function setWasProcessedData(element) {
|
||||
return setData(element, processedDataName, trueString);
|
||||
};
|
||||
|
||||
var getWasProcessedData = function getWasProcessedData(element) {
|
||||
return getData(element, processedDataName) === trueString;
|
||||
};
|
||||
|
||||
var setTimeoutData = function setTimeoutData(element, value) {
|
||||
return setData(element, timeoutDataName, value);
|
||||
};
|
||||
|
||||
var getTimeoutData = function getTimeoutData(element) {
|
||||
return getData(element, timeoutDataName);
|
||||
};
|
||||
|
||||
var purgeProcessedElements = function purgeProcessedElements(elements) {
|
||||
return elements.filter(function (element) {
|
||||
return !getWasProcessedData(element);
|
||||
});
|
||||
};
|
||||
|
||||
var purgeOneElement = function purgeOneElement(elements, elementToPurge) {
|
||||
return elements.filter(function (element) {
|
||||
return element !== elementToPurge;
|
||||
});
|
||||
};
|
||||
/* Creates instance and notifies it through the window element */
|
||||
|
||||
|
||||
var createInstance = function createInstance(classObj, options) {
|
||||
var event;
|
||||
var eventString = "LazyLoad::Initialized";
|
||||
var instance = new classObj(options);
|
||||
|
||||
try {
|
||||
// Works in modern browsers
|
||||
event = new CustomEvent(eventString, {
|
||||
detail: {
|
||||
instance: instance
|
||||
}
|
||||
});
|
||||
} catch (err) {
|
||||
// Works in Internet Explorer (all versions)
|
||||
event = document.createEvent("CustomEvent");
|
||||
event.initCustomEvent(eventString, false, false, {
|
||||
instance: instance
|
||||
});
|
||||
}
|
||||
|
||||
window.dispatchEvent(event);
|
||||
};
|
||||
/* Auto initialization of one or more instances of lazyload, depending on the
|
||||
options passed in (plain object or an array) */
|
||||
|
||||
|
||||
function autoInitialize(classObj, options) {
|
||||
if (!options) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!options.length) {
|
||||
// Plain object
|
||||
createInstance(classObj, options);
|
||||
} else {
|
||||
// Array of objects
|
||||
for (var i = 0, optionsItem; optionsItem = options[i]; i += 1) {
|
||||
createInstance(classObj, optionsItem);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var callbackIfSet = function callbackIfSet(callback, argument) {
|
||||
if (callback) {
|
||||
callback(argument);
|
||||
}
|
||||
};
|
||||
|
||||
var updateLoadingCount = function updateLoadingCount(instance, plusMinus) {
|
||||
instance._loadingCount += plusMinus;
|
||||
|
||||
if (instance._elements.length === 0 && instance._loadingCount === 0) {
|
||||
callbackIfSet(instance._settings.callback_finish);
|
||||
}
|
||||
};
|
||||
|
||||
var getSourceTags = function getSourceTags(parentTag) {
|
||||
var sourceTags = [];
|
||||
|
||||
for (var i = 0, childTag; childTag = parentTag.children[i]; i += 1) {
|
||||
if (childTag.tagName === "SOURCE") {
|
||||
sourceTags.push(childTag);
|
||||
}
|
||||
}
|
||||
|
||||
return sourceTags;
|
||||
};
|
||||
|
||||
var setAttributeIfValue = function setAttributeIfValue(element, attrName, value) {
|
||||
if (!value) {
|
||||
return;
|
||||
}
|
||||
|
||||
element.setAttribute(attrName, value);
|
||||
};
|
||||
|
||||
var setImageAttributes = function setImageAttributes(element, settings) {
|
||||
setAttributeIfValue(element, "sizes", getData(element, settings.data_sizes));
|
||||
setAttributeIfValue(element, "srcset", getData(element, settings.data_srcset));
|
||||
setAttributeIfValue(element, "src", getData(element, settings.data_src));
|
||||
};
|
||||
|
||||
var setSourcesImg = function setSourcesImg(element, settings) {
|
||||
var parent = element.parentNode;
|
||||
|
||||
if (parent && parent.tagName === "PICTURE") {
|
||||
var sourceTags = getSourceTags(parent);
|
||||
sourceTags.forEach(function (sourceTag) {
|
||||
setImageAttributes(sourceTag, settings);
|
||||
});
|
||||
}
|
||||
|
||||
setImageAttributes(element, settings);
|
||||
};
|
||||
|
||||
var setSourcesIframe = function setSourcesIframe(element, settings) {
|
||||
setAttributeIfValue(element, "src", getData(element, settings.data_src));
|
||||
};
|
||||
|
||||
var setSourcesVideo = function setSourcesVideo(element, settings) {
|
||||
var sourceTags = getSourceTags(element);
|
||||
sourceTags.forEach(function (sourceTag) {
|
||||
setAttributeIfValue(sourceTag, "src", getData(sourceTag, settings.data_src));
|
||||
});
|
||||
setAttributeIfValue(element, "src", getData(element, settings.data_src));
|
||||
element.load();
|
||||
};
|
||||
|
||||
var setSourcesBgImage = function setSourcesBgImage(element, settings) {
|
||||
var srcDataValue = getData(element, settings.data_src);
|
||||
var bgDataValue = getData(element, settings.data_bg);
|
||||
|
||||
if (srcDataValue) {
|
||||
element.style.backgroundImage = "url(\"".concat(srcDataValue, "\")");
|
||||
}
|
||||
|
||||
if (bgDataValue) {
|
||||
element.style.backgroundImage = bgDataValue;
|
||||
}
|
||||
};
|
||||
|
||||
var setSourcesFunctions = {
|
||||
IMG: setSourcesImg,
|
||||
IFRAME: setSourcesIframe,
|
||||
VIDEO: setSourcesVideo
|
||||
};
|
||||
|
||||
var setSources = function setSources(element, instance) {
|
||||
var settings = instance._settings;
|
||||
var tagName = element.tagName;
|
||||
var setSourcesFunction = setSourcesFunctions[tagName];
|
||||
|
||||
if (setSourcesFunction) {
|
||||
setSourcesFunction(element, settings);
|
||||
updateLoadingCount(instance, 1);
|
||||
instance._elements = purgeOneElement(instance._elements, element);
|
||||
return;
|
||||
}
|
||||
|
||||
setSourcesBgImage(element, settings);
|
||||
};
|
||||
|
||||
var addClass = function addClass(element, className) {
|
||||
if (supportsClassList) {
|
||||
element.classList.add(className);
|
||||
return;
|
||||
}
|
||||
|
||||
element.className += (element.className ? " " : "") + className;
|
||||
};
|
||||
|
||||
var removeClass = function removeClass(element, className) {
|
||||
if (supportsClassList) {
|
||||
element.classList.remove(className);
|
||||
return;
|
||||
}
|
||||
|
||||
element.className = element.className.replace(new RegExp("(^|\\s+)" + className + "(\\s+|$)"), " ").replace(/^\s+/, "").replace(/\s+$/, "");
|
||||
};
|
||||
|
||||
var genericLoadEventName = "load";
|
||||
var mediaLoadEventName = "loadeddata";
|
||||
var errorEventName = "error";
|
||||
|
||||
var addEventListener = function addEventListener(element, eventName, handler) {
|
||||
element.addEventListener(eventName, handler);
|
||||
};
|
||||
|
||||
var removeEventListener = function removeEventListener(element, eventName, handler) {
|
||||
element.removeEventListener(eventName, handler);
|
||||
};
|
||||
|
||||
var addEventListeners = function addEventListeners(element, loadHandler, errorHandler) {
|
||||
addEventListener(element, genericLoadEventName, loadHandler);
|
||||
addEventListener(element, mediaLoadEventName, loadHandler);
|
||||
addEventListener(element, errorEventName, errorHandler);
|
||||
};
|
||||
|
||||
var removeEventListeners = function removeEventListeners(element, loadHandler, errorHandler) {
|
||||
removeEventListener(element, genericLoadEventName, loadHandler);
|
||||
removeEventListener(element, mediaLoadEventName, loadHandler);
|
||||
removeEventListener(element, errorEventName, errorHandler);
|
||||
};
|
||||
|
||||
var eventHandler = function eventHandler(event, success, instance) {
|
||||
var settings = instance._settings;
|
||||
var className = success ? settings.class_loaded : settings.class_error;
|
||||
var callback = success ? settings.callback_loaded : settings.callback_error;
|
||||
var element = event.target;
|
||||
removeClass(element, settings.class_loading);
|
||||
addClass(element, className);
|
||||
callbackIfSet(callback, element);
|
||||
updateLoadingCount(instance, -1);
|
||||
};
|
||||
|
||||
var addOneShotEventListeners = function addOneShotEventListeners(element, instance) {
|
||||
var loadHandler = function loadHandler(event) {
|
||||
eventHandler(event, true, instance);
|
||||
removeEventListeners(element, loadHandler, errorHandler);
|
||||
};
|
||||
|
||||
var errorHandler = function errorHandler(event) {
|
||||
eventHandler(event, false, instance);
|
||||
removeEventListeners(element, loadHandler, errorHandler);
|
||||
};
|
||||
|
||||
addEventListeners(element, loadHandler, errorHandler);
|
||||
};
|
||||
|
||||
var managedTags = ["IMG", "IFRAME", "VIDEO"];
|
||||
|
||||
var onEnter = function onEnter(element, instance) {
|
||||
var settings = instance._settings;
|
||||
callbackIfSet(settings.callback_enter, element);
|
||||
|
||||
if (!settings.load_delay) {
|
||||
revealAndUnobserve(element, instance);
|
||||
return;
|
||||
}
|
||||
|
||||
delayLoad(element, instance);
|
||||
};
|
||||
|
||||
var revealAndUnobserve = function revealAndUnobserve(element, instance) {
|
||||
var observer = instance._observer;
|
||||
revealElement(element, instance);
|
||||
|
||||
if (observer && instance._settings.auto_unobserve) {
|
||||
observer.unobserve(element);
|
||||
}
|
||||
};
|
||||
|
||||
var onExit = function onExit(element, instance) {
|
||||
var settings = instance._settings;
|
||||
callbackIfSet(settings.callback_exit, element);
|
||||
|
||||
if (!settings.load_delay) {
|
||||
return;
|
||||
}
|
||||
|
||||
cancelDelayLoad(element);
|
||||
};
|
||||
|
||||
var cancelDelayLoad = function cancelDelayLoad(element) {
|
||||
var timeoutId = getTimeoutData(element);
|
||||
|
||||
if (!timeoutId) {
|
||||
return; // do nothing if timeout doesn't exist
|
||||
}
|
||||
|
||||
clearTimeout(timeoutId);
|
||||
setTimeoutData(element, null);
|
||||
};
|
||||
|
||||
var delayLoad = function delayLoad(element, instance) {
|
||||
var loadDelay = instance._settings.load_delay;
|
||||
var timeoutId = getTimeoutData(element);
|
||||
|
||||
if (timeoutId) {
|
||||
return; // do nothing if timeout already set
|
||||
}
|
||||
|
||||
timeoutId = setTimeout(function () {
|
||||
revealAndUnobserve(element, instance);
|
||||
cancelDelayLoad(element);
|
||||
}, loadDelay);
|
||||
setTimeoutData(element, timeoutId);
|
||||
};
|
||||
|
||||
var revealElement = function revealElement(element, instance, force) {
|
||||
var settings = instance._settings;
|
||||
|
||||
if (!force && getWasProcessedData(element)) {
|
||||
return; // element has already been processed and force wasn't true
|
||||
}
|
||||
|
||||
if (managedTags.indexOf(element.tagName) > -1) {
|
||||
addOneShotEventListeners(element, instance);
|
||||
addClass(element, settings.class_loading);
|
||||
}
|
||||
|
||||
setSources(element, instance);
|
||||
setWasProcessedData(element);
|
||||
callbackIfSet(settings.callback_reveal, element);
|
||||
callbackIfSet(settings.callback_set, element);
|
||||
};
|
||||
|
||||
var isIntersecting = function isIntersecting(entry) {
|
||||
return entry.isIntersecting || entry.intersectionRatio > 0;
|
||||
};
|
||||
|
||||
var getObserverSettings = function getObserverSettings(settings) {
|
||||
return {
|
||||
root: settings.container === document ? null : settings.container,
|
||||
rootMargin: settings.thresholds || settings.threshold + "px"
|
||||
};
|
||||
};
|
||||
|
||||
var setObserver = function setObserver(instance) {
|
||||
if (!supportsIntersectionObserver) {
|
||||
return false;
|
||||
}
|
||||
|
||||
instance._observer = new IntersectionObserver(function (entries) {
|
||||
entries.forEach(function (entry) {
|
||||
return isIntersecting(entry) ? onEnter(entry.target, instance) : onExit(entry.target, instance);
|
||||
});
|
||||
}, getObserverSettings(instance._settings));
|
||||
return true;
|
||||
};
|
||||
|
||||
var LazyLoad = function LazyLoad(customSettings, elements) {
|
||||
this._settings = getInstanceSettings(customSettings);
|
||||
this._loadingCount = 0;
|
||||
setObserver(this);
|
||||
this.update(elements);
|
||||
};
|
||||
|
||||
LazyLoad.prototype = {
|
||||
update: function update(elements) {
|
||||
var _this = this;
|
||||
|
||||
var settings = this._settings;
|
||||
|
||||
var _elements = elements || settings.container.querySelectorAll(settings.elements_selector);
|
||||
|
||||
this._elements = purgeProcessedElements(Array.prototype.slice.call(_elements) // NOTE: nodeset to array for IE compatibility
|
||||
);
|
||||
|
||||
if (isBot || !this._observer) {
|
||||
this.loadAll();
|
||||
return;
|
||||
}
|
||||
|
||||
this._elements.forEach(function (element) {
|
||||
_this._observer.observe(element);
|
||||
});
|
||||
},
|
||||
destroy: function destroy() {
|
||||
var _this2 = this;
|
||||
|
||||
if (this._observer) {
|
||||
this._elements.forEach(function (element) {
|
||||
_this2._observer.unobserve(element);
|
||||
});
|
||||
|
||||
this._observer = null;
|
||||
}
|
||||
|
||||
this._elements = null;
|
||||
this._settings = null;
|
||||
},
|
||||
load: function load(element, force) {
|
||||
revealElement(element, this, force);
|
||||
},
|
||||
loadAll: function loadAll() {
|
||||
var _this3 = this;
|
||||
|
||||
var elements = this._elements;
|
||||
elements.forEach(function (element) {
|
||||
revealAndUnobserve(element, _this3);
|
||||
});
|
||||
}
|
||||
};
|
||||
/* Automatic instances creation if required (useful for async script loading) */
|
||||
|
||||
if (runningOnBrowser) {
|
||||
autoInitialize(LazyLoad, window.lazyLoadOptions);
|
||||
}
|
||||
|
||||
return LazyLoad;
|
||||
});
|
2
wp-content/plugins/wp-rocket/assets/js/lazyload/11.0.6/lazyload.min.js
vendored
Normal file
491
wp-content/plugins/wp-rocket/assets/js/lazyload/12.0/lazyload.js
Normal file
@@ -0,0 +1,491 @@
|
||||
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
||||
|
||||
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
||||
|
||||
(function (global, factory) {
|
||||
(typeof exports === "undefined" ? "undefined" : _typeof(exports)) === 'object' && typeof module !== 'undefined' ? module.exports = factory() : typeof define === 'function' && define.amd ? define(factory) : global.LazyLoad = factory();
|
||||
})(this, function () {
|
||||
'use strict';
|
||||
|
||||
var runningOnBrowser = typeof window !== "undefined";
|
||||
var isBot = runningOnBrowser && !("onscroll" in window) || typeof navigator !== "undefined" && /(gle|ing|ro)bot|crawl|spider/i.test(navigator.userAgent);
|
||||
var supportsIntersectionObserver = runningOnBrowser && "IntersectionObserver" in window;
|
||||
var supportsClassList = runningOnBrowser && "classList" in document.createElement("p");
|
||||
var defaultSettings = {
|
||||
elements_selector: "img",
|
||||
container: isBot || runningOnBrowser ? document : null,
|
||||
threshold: 300,
|
||||
thresholds: null,
|
||||
data_src: "src",
|
||||
data_srcset: "srcset",
|
||||
data_sizes: "sizes",
|
||||
data_bg: "bg",
|
||||
class_loading: "loading",
|
||||
class_loaded: "loaded",
|
||||
class_error: "error",
|
||||
load_delay: 0,
|
||||
auto_unobserve: true,
|
||||
callback_enter: null,
|
||||
callback_exit: null,
|
||||
callback_reveal: null,
|
||||
callback_loaded: null,
|
||||
callback_error: null,
|
||||
callback_finish: null,
|
||||
use_native: false
|
||||
};
|
||||
|
||||
var getInstanceSettings = function getInstanceSettings(customSettings) {
|
||||
return _extends({}, defaultSettings, customSettings);
|
||||
};
|
||||
/* Creates instance and notifies it through the window element */
|
||||
|
||||
|
||||
var createInstance = function createInstance(classObj, options) {
|
||||
var event;
|
||||
var eventString = "LazyLoad::Initialized";
|
||||
var instance = new classObj(options);
|
||||
|
||||
try {
|
||||
// Works in modern browsers
|
||||
event = new CustomEvent(eventString, {
|
||||
detail: {
|
||||
instance: instance
|
||||
}
|
||||
});
|
||||
} catch (err) {
|
||||
// Works in Internet Explorer (all versions)
|
||||
event = document.createEvent("CustomEvent");
|
||||
event.initCustomEvent(eventString, false, false, {
|
||||
instance: instance
|
||||
});
|
||||
}
|
||||
|
||||
window.dispatchEvent(event);
|
||||
};
|
||||
/* Auto initialization of one or more instances of lazyload, depending on the
|
||||
options passed in (plain object or an array) */
|
||||
|
||||
|
||||
function autoInitialize(classObj, options) {
|
||||
if (!options) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!options.length) {
|
||||
// Plain object
|
||||
createInstance(classObj, options);
|
||||
} else {
|
||||
// Array of objects
|
||||
for (var i = 0, optionsItem; optionsItem = options[i]; i += 1) {
|
||||
createInstance(classObj, optionsItem);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var dataPrefix = "data-";
|
||||
var processedDataName = "was-processed";
|
||||
var timeoutDataName = "ll-timeout";
|
||||
var trueString = "true";
|
||||
|
||||
var getData = function getData(element, attribute) {
|
||||
return element.getAttribute(dataPrefix + attribute);
|
||||
};
|
||||
|
||||
var setData = function setData(element, attribute, value) {
|
||||
var attrName = dataPrefix + attribute;
|
||||
|
||||
if (value === null) {
|
||||
element.removeAttribute(attrName);
|
||||
return;
|
||||
}
|
||||
|
||||
element.setAttribute(attrName, value);
|
||||
};
|
||||
|
||||
var setWasProcessedData = function setWasProcessedData(element) {
|
||||
return setData(element, processedDataName, trueString);
|
||||
};
|
||||
|
||||
var getWasProcessedData = function getWasProcessedData(element) {
|
||||
return getData(element, processedDataName) === trueString;
|
||||
};
|
||||
|
||||
var setTimeoutData = function setTimeoutData(element, value) {
|
||||
return setData(element, timeoutDataName, value);
|
||||
};
|
||||
|
||||
var getTimeoutData = function getTimeoutData(element) {
|
||||
return getData(element, timeoutDataName);
|
||||
};
|
||||
|
||||
var purgeProcessedElements = function purgeProcessedElements(elements) {
|
||||
return elements.filter(function (element) {
|
||||
return !getWasProcessedData(element);
|
||||
});
|
||||
};
|
||||
|
||||
var purgeOneElement = function purgeOneElement(elements, elementToPurge) {
|
||||
return elements.filter(function (element) {
|
||||
return element !== elementToPurge;
|
||||
});
|
||||
};
|
||||
|
||||
var callbackIfSet = function callbackIfSet(callback, argument) {
|
||||
if (callback) {
|
||||
callback(argument);
|
||||
}
|
||||
};
|
||||
|
||||
var updateLoadingCount = function updateLoadingCount(instance, plusMinus) {
|
||||
instance._loadingCount += plusMinus;
|
||||
|
||||
if (instance._elements.length === 0 && instance._loadingCount === 0) {
|
||||
callbackIfSet(instance._settings.callback_finish);
|
||||
}
|
||||
};
|
||||
|
||||
var getSourceTags = function getSourceTags(parentTag) {
|
||||
var sourceTags = [];
|
||||
|
||||
for (var i = 0, childTag; childTag = parentTag.children[i]; i += 1) {
|
||||
if (childTag.tagName === "SOURCE") {
|
||||
sourceTags.push(childTag);
|
||||
}
|
||||
}
|
||||
|
||||
return sourceTags;
|
||||
};
|
||||
|
||||
var setAttributeIfValue = function setAttributeIfValue(element, attrName, value) {
|
||||
if (!value) {
|
||||
return;
|
||||
}
|
||||
|
||||
element.setAttribute(attrName, value);
|
||||
};
|
||||
|
||||
var setImageAttributes = function setImageAttributes(element, settings) {
|
||||
setAttributeIfValue(element, "sizes", getData(element, settings.data_sizes));
|
||||
setAttributeIfValue(element, "srcset", getData(element, settings.data_srcset));
|
||||
setAttributeIfValue(element, "src", getData(element, settings.data_src));
|
||||
};
|
||||
|
||||
var setSourcesImg = function setSourcesImg(element, settings) {
|
||||
var parent = element.parentNode;
|
||||
|
||||
if (parent && parent.tagName === "PICTURE") {
|
||||
var sourceTags = getSourceTags(parent);
|
||||
sourceTags.forEach(function (sourceTag) {
|
||||
setImageAttributes(sourceTag, settings);
|
||||
});
|
||||
}
|
||||
|
||||
setImageAttributes(element, settings);
|
||||
};
|
||||
|
||||
var setSourcesIframe = function setSourcesIframe(element, settings) {
|
||||
setAttributeIfValue(element, "src", getData(element, settings.data_src));
|
||||
};
|
||||
|
||||
var setSourcesVideo = function setSourcesVideo(element, settings) {
|
||||
var sourceTags = getSourceTags(element);
|
||||
sourceTags.forEach(function (sourceTag) {
|
||||
setAttributeIfValue(sourceTag, "src", getData(sourceTag, settings.data_src));
|
||||
});
|
||||
setAttributeIfValue(element, "src", getData(element, settings.data_src));
|
||||
element.load();
|
||||
};
|
||||
|
||||
var setSourcesBgImage = function setSourcesBgImage(element, settings) {
|
||||
var srcDataValue = getData(element, settings.data_src);
|
||||
var bgDataValue = getData(element, settings.data_bg);
|
||||
|
||||
if (srcDataValue) {
|
||||
element.style.backgroundImage = "url(\"".concat(srcDataValue, "\")");
|
||||
}
|
||||
|
||||
if (bgDataValue) {
|
||||
element.style.backgroundImage = bgDataValue;
|
||||
}
|
||||
};
|
||||
|
||||
var setSourcesFunctions = {
|
||||
IMG: setSourcesImg,
|
||||
IFRAME: setSourcesIframe,
|
||||
VIDEO: setSourcesVideo
|
||||
};
|
||||
|
||||
var setSources = function setSources(element, instance) {
|
||||
var settings = instance._settings;
|
||||
var tagName = element.tagName;
|
||||
var setSourcesFunction = setSourcesFunctions[tagName];
|
||||
|
||||
if (setSourcesFunction) {
|
||||
setSourcesFunction(element, settings);
|
||||
updateLoadingCount(instance, 1);
|
||||
instance._elements = purgeOneElement(instance._elements, element);
|
||||
return;
|
||||
}
|
||||
|
||||
setSourcesBgImage(element, settings);
|
||||
};
|
||||
|
||||
var addClass = function addClass(element, className) {
|
||||
if (supportsClassList) {
|
||||
element.classList.add(className);
|
||||
return;
|
||||
}
|
||||
|
||||
element.className += (element.className ? " " : "") + className;
|
||||
};
|
||||
|
||||
var removeClass = function removeClass(element, className) {
|
||||
if (supportsClassList) {
|
||||
element.classList.remove(className);
|
||||
return;
|
||||
}
|
||||
|
||||
element.className = element.className.replace(new RegExp("(^|\\s+)" + className + "(\\s+|$)"), " ").replace(/^\s+/, "").replace(/\s+$/, "");
|
||||
};
|
||||
|
||||
var genericLoadEventName = "load";
|
||||
var mediaLoadEventName = "loadeddata";
|
||||
var errorEventName = "error";
|
||||
|
||||
var addEventListener = function addEventListener(element, eventName, handler) {
|
||||
element.addEventListener(eventName, handler);
|
||||
};
|
||||
|
||||
var removeEventListener = function removeEventListener(element, eventName, handler) {
|
||||
element.removeEventListener(eventName, handler);
|
||||
};
|
||||
|
||||
var addEventListeners = function addEventListeners(element, loadHandler, errorHandler) {
|
||||
addEventListener(element, genericLoadEventName, loadHandler);
|
||||
addEventListener(element, mediaLoadEventName, loadHandler);
|
||||
addEventListener(element, errorEventName, errorHandler);
|
||||
};
|
||||
|
||||
var removeEventListeners = function removeEventListeners(element, loadHandler, errorHandler) {
|
||||
removeEventListener(element, genericLoadEventName, loadHandler);
|
||||
removeEventListener(element, mediaLoadEventName, loadHandler);
|
||||
removeEventListener(element, errorEventName, errorHandler);
|
||||
};
|
||||
|
||||
var eventHandler = function eventHandler(event, success, instance) {
|
||||
var settings = instance._settings;
|
||||
var className = success ? settings.class_loaded : settings.class_error;
|
||||
var callback = success ? settings.callback_loaded : settings.callback_error;
|
||||
var element = event.target;
|
||||
removeClass(element, settings.class_loading);
|
||||
addClass(element, className);
|
||||
callbackIfSet(callback, element);
|
||||
updateLoadingCount(instance, -1);
|
||||
};
|
||||
|
||||
var addOneShotEventListeners = function addOneShotEventListeners(element, instance) {
|
||||
var loadHandler = function loadHandler(event) {
|
||||
eventHandler(event, true, instance);
|
||||
removeEventListeners(element, loadHandler, errorHandler);
|
||||
};
|
||||
|
||||
var errorHandler = function errorHandler(event) {
|
||||
eventHandler(event, false, instance);
|
||||
removeEventListeners(element, loadHandler, errorHandler);
|
||||
};
|
||||
|
||||
addEventListeners(element, loadHandler, errorHandler);
|
||||
};
|
||||
|
||||
var managedTags = ["IMG", "IFRAME", "VIDEO"];
|
||||
|
||||
var onEnter = function onEnter(element, instance) {
|
||||
var settings = instance._settings;
|
||||
callbackIfSet(settings.callback_enter, element);
|
||||
|
||||
if (!settings.load_delay) {
|
||||
revealAndUnobserve(element, instance);
|
||||
return;
|
||||
}
|
||||
|
||||
delayLoad(element, instance);
|
||||
};
|
||||
|
||||
var revealAndUnobserve = function revealAndUnobserve(element, instance) {
|
||||
var observer = instance._observer;
|
||||
revealElement(element, instance);
|
||||
|
||||
if (observer && instance._settings.auto_unobserve) {
|
||||
observer.unobserve(element);
|
||||
}
|
||||
};
|
||||
|
||||
var onExit = function onExit(element, instance) {
|
||||
var settings = instance._settings;
|
||||
callbackIfSet(settings.callback_exit, element);
|
||||
|
||||
if (!settings.load_delay) {
|
||||
return;
|
||||
}
|
||||
|
||||
cancelDelayLoad(element);
|
||||
};
|
||||
|
||||
var cancelDelayLoad = function cancelDelayLoad(element) {
|
||||
var timeoutId = getTimeoutData(element);
|
||||
|
||||
if (!timeoutId) {
|
||||
return; // do nothing if timeout doesn't exist
|
||||
}
|
||||
|
||||
clearTimeout(timeoutId);
|
||||
setTimeoutData(element, null);
|
||||
};
|
||||
|
||||
var delayLoad = function delayLoad(element, instance) {
|
||||
var loadDelay = instance._settings.load_delay;
|
||||
var timeoutId = getTimeoutData(element);
|
||||
|
||||
if (timeoutId) {
|
||||
return; // do nothing if timeout already set
|
||||
}
|
||||
|
||||
timeoutId = setTimeout(function () {
|
||||
revealAndUnobserve(element, instance);
|
||||
cancelDelayLoad(element);
|
||||
}, loadDelay);
|
||||
setTimeoutData(element, timeoutId);
|
||||
};
|
||||
|
||||
var revealElement = function revealElement(element, instance, force) {
|
||||
var settings = instance._settings;
|
||||
|
||||
if (!force && getWasProcessedData(element)) {
|
||||
return; // element has already been processed and force wasn't true
|
||||
}
|
||||
|
||||
if (managedTags.indexOf(element.tagName) > -1) {
|
||||
addOneShotEventListeners(element, instance);
|
||||
addClass(element, settings.class_loading);
|
||||
}
|
||||
|
||||
setSources(element, instance);
|
||||
setWasProcessedData(element);
|
||||
callbackIfSet(settings.callback_reveal, element);
|
||||
callbackIfSet(settings.callback_set, element);
|
||||
};
|
||||
|
||||
var isIntersecting = function isIntersecting(entry) {
|
||||
return entry.isIntersecting || entry.intersectionRatio > 0;
|
||||
};
|
||||
|
||||
var getObserverSettings = function getObserverSettings(settings) {
|
||||
return {
|
||||
root: settings.container === document ? null : settings.container,
|
||||
rootMargin: settings.thresholds || settings.threshold + "px"
|
||||
};
|
||||
};
|
||||
|
||||
var setObserver = function setObserver(instance) {
|
||||
if (!supportsIntersectionObserver) {
|
||||
return false;
|
||||
}
|
||||
|
||||
instance._observer = new IntersectionObserver(function (entries) {
|
||||
entries.forEach(function (entry) {
|
||||
return isIntersecting(entry) ? onEnter(entry.target, instance) : onExit(entry.target, instance);
|
||||
});
|
||||
}, getObserverSettings(instance._settings));
|
||||
return true;
|
||||
};
|
||||
|
||||
var nativeLazyTags = ["IMG", "IFRAME"];
|
||||
|
||||
var shouldUseNative = function shouldUseNative(settings) {
|
||||
return settings.use_native && "loading" in HTMLImageElement.prototype;
|
||||
};
|
||||
|
||||
var loadAllNative = function loadAllNative(instance) {
|
||||
instance._elements.forEach(function (element) {
|
||||
if (nativeLazyTags.indexOf(element.tagName) === -1) {
|
||||
return;
|
||||
}
|
||||
|
||||
element.setAttribute("loading", "lazy");
|
||||
revealElement(element, instance);
|
||||
});
|
||||
};
|
||||
|
||||
var nodeSetToArray = function nodeSetToArray(nodeSet) {
|
||||
return Array.prototype.slice.call(nodeSet);
|
||||
};
|
||||
|
||||
var queryElements = function queryElements(settings) {
|
||||
return settings.container.querySelectorAll(settings.elements_selector);
|
||||
};
|
||||
|
||||
var getElements = function getElements(elements, settings) {
|
||||
return purgeProcessedElements(nodeSetToArray(elements || queryElements(settings)));
|
||||
};
|
||||
|
||||
var LazyLoad = function LazyLoad(customSettings, elements) {
|
||||
this._settings = getInstanceSettings(customSettings);
|
||||
this._loadingCount = 0;
|
||||
setObserver(this);
|
||||
this.update(elements);
|
||||
};
|
||||
|
||||
LazyLoad.prototype = {
|
||||
update: function update(elements) {
|
||||
var _this = this;
|
||||
|
||||
var settings = this._settings;
|
||||
this._elements = getElements(elements, settings);
|
||||
|
||||
if (isBot || !this._observer) {
|
||||
this.loadAll();
|
||||
return;
|
||||
}
|
||||
|
||||
if (shouldUseNative(settings)) {
|
||||
loadAllNative(this);
|
||||
this._elements = getElements(elements, settings);
|
||||
}
|
||||
|
||||
this._elements.forEach(function (element) {
|
||||
_this._observer.observe(element);
|
||||
});
|
||||
},
|
||||
destroy: function destroy() {
|
||||
var _this2 = this;
|
||||
|
||||
if (this._observer) {
|
||||
this._elements.forEach(function (element) {
|
||||
_this2._observer.unobserve(element);
|
||||
});
|
||||
|
||||
this._observer = null;
|
||||
}
|
||||
|
||||
this._elements = null;
|
||||
this._settings = null;
|
||||
},
|
||||
load: function load(element, force) {
|
||||
revealElement(element, this, force);
|
||||
},
|
||||
loadAll: function loadAll() {
|
||||
var _this3 = this;
|
||||
|
||||
this._elements.forEach(function (element) {
|
||||
revealAndUnobserve(element, _this3);
|
||||
});
|
||||
}
|
||||
};
|
||||
/* Automatic instances creation if required (useful for async script loading) */
|
||||
|
||||
if (runningOnBrowser) {
|
||||
autoInitialize(LazyLoad, window.lazyLoadOptions);
|
||||
}
|
||||
|
||||
return LazyLoad;
|
||||
});
|
2
wp-content/plugins/wp-rocket/assets/js/lazyload/12.0/lazyload.min.js
vendored
Normal file
733
wp-content/plugins/wp-rocket/assets/js/lazyload/16.1/lazyload.js
Normal file
@@ -0,0 +1,733 @@
|
||||
(function (global, factory) {
|
||||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
|
||||
typeof define === 'function' && define.amd ? define(factory) :
|
||||
(global = global || self, global.LazyLoad = factory());
|
||||
}(this, (function () { 'use strict';
|
||||
|
||||
function _extends() {
|
||||
_extends = Object.assign || function (target) {
|
||||
for (var i = 1; i < arguments.length; i++) {
|
||||
var source = arguments[i];
|
||||
|
||||
for (var key in source) {
|
||||
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
||||
target[key] = source[key];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return target;
|
||||
};
|
||||
|
||||
return _extends.apply(this, arguments);
|
||||
}
|
||||
|
||||
var runningOnBrowser = typeof window !== "undefined";
|
||||
var isBot = runningOnBrowser && !("onscroll" in window) || typeof navigator !== "undefined" && /(gle|ing|ro)bot|crawl|spider/i.test(navigator.userAgent);
|
||||
var supportsIntersectionObserver = runningOnBrowser && "IntersectionObserver" in window;
|
||||
var supportsClassList = runningOnBrowser && "classList" in document.createElement("p");
|
||||
var isHiDpi = runningOnBrowser && window.devicePixelRatio > 1;
|
||||
|
||||
var defaultSettings = {
|
||||
elements_selector: "IMG",
|
||||
container: isBot || runningOnBrowser ? document : null,
|
||||
threshold: 300,
|
||||
thresholds: null,
|
||||
data_src: "src",
|
||||
data_srcset: "srcset",
|
||||
data_sizes: "sizes",
|
||||
data_bg: "bg",
|
||||
data_bg_hidpi: "bg-hidpi",
|
||||
data_bg_multi: "bg-multi",
|
||||
data_bg_multi_hidpi: "bg-multi-hidpi",
|
||||
data_poster: "poster",
|
||||
class_applied: "applied",
|
||||
class_loading: "loading",
|
||||
class_loaded: "loaded",
|
||||
class_error: "error",
|
||||
unobserve_completed: true,
|
||||
unobserve_entered: false,
|
||||
cancel_on_exit: false,
|
||||
callback_enter: null,
|
||||
callback_exit: null,
|
||||
callback_applied: null,
|
||||
callback_loading: null,
|
||||
callback_loaded: null,
|
||||
callback_error: null,
|
||||
callback_finish: null,
|
||||
callback_cancel: null,
|
||||
use_native: false
|
||||
};
|
||||
var getExtendedSettings = function getExtendedSettings(customSettings) {
|
||||
return _extends({}, defaultSettings, customSettings);
|
||||
};
|
||||
|
||||
/* Creates instance and notifies it through the window element */
|
||||
var createInstance = function createInstance(classObj, options) {
|
||||
var event;
|
||||
var eventString = "LazyLoad::Initialized";
|
||||
var instance = new classObj(options);
|
||||
|
||||
try {
|
||||
// Works in modern browsers
|
||||
event = new CustomEvent(eventString, {
|
||||
detail: {
|
||||
instance: instance
|
||||
}
|
||||
});
|
||||
} catch (err) {
|
||||
// Works in Internet Explorer (all versions)
|
||||
event = document.createEvent("CustomEvent");
|
||||
event.initCustomEvent(eventString, false, false, {
|
||||
instance: instance
|
||||
});
|
||||
}
|
||||
|
||||
window.dispatchEvent(event);
|
||||
};
|
||||
/* Auto initialization of one or more instances of lazyload, depending on the
|
||||
options passed in (plain object or an array) */
|
||||
|
||||
|
||||
var autoInitialize = function autoInitialize(classObj, options) {
|
||||
if (!options) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!options.length) {
|
||||
// Plain object
|
||||
createInstance(classObj, options);
|
||||
} else {
|
||||
// Array of objects
|
||||
for (var i = 0, optionsItem; optionsItem = options[i]; i += 1) {
|
||||
createInstance(classObj, optionsItem);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
var statusLoading = "loading";
|
||||
var statusLoaded = "loaded";
|
||||
var statusApplied = "applied";
|
||||
var statusError = "error";
|
||||
var statusNative = "native";
|
||||
|
||||
var dataPrefix = "data-";
|
||||
var statusDataName = "ll-status";
|
||||
var getData = function getData(element, attribute) {
|
||||
return element.getAttribute(dataPrefix + attribute);
|
||||
};
|
||||
var setData = function setData(element, attribute, value) {
|
||||
var attrName = dataPrefix + attribute;
|
||||
|
||||
if (value === null) {
|
||||
element.removeAttribute(attrName);
|
||||
return;
|
||||
}
|
||||
|
||||
element.setAttribute(attrName, value);
|
||||
};
|
||||
var getStatus = function getStatus(element) {
|
||||
return getData(element, statusDataName);
|
||||
};
|
||||
var setStatus = function setStatus(element, status) {
|
||||
return setData(element, statusDataName, status);
|
||||
};
|
||||
var resetStatus = function resetStatus(element) {
|
||||
return setStatus(element, null);
|
||||
};
|
||||
var hasEmptyStatus = function hasEmptyStatus(element) {
|
||||
return getStatus(element) === null;
|
||||
};
|
||||
var hasStatusLoading = function hasStatusLoading(element) {
|
||||
return getStatus(element) === statusLoading;
|
||||
};
|
||||
var hasStatusError = function hasStatusError(element) {
|
||||
return getStatus(element) === statusError;
|
||||
};
|
||||
var hasStatusNative = function hasStatusNative(element) {
|
||||
return getStatus(element) === statusNative;
|
||||
};
|
||||
var hadStartedLoading = function hadStartedLoading(element) {
|
||||
return !hasEmptyStatus(element);
|
||||
};
|
||||
|
||||
var safeCallback = function safeCallback(callback, arg1, arg2, arg3) {
|
||||
if (!callback) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (arg3 !== undefined) {
|
||||
callback(arg1, arg2, arg3);
|
||||
return;
|
||||
}
|
||||
|
||||
if (arg2 !== undefined) {
|
||||
callback(arg1, arg2);
|
||||
return;
|
||||
}
|
||||
|
||||
callback(arg1);
|
||||
};
|
||||
|
||||
var addClass = function addClass(element, className) {
|
||||
if (supportsClassList) {
|
||||
element.classList.add(className);
|
||||
return;
|
||||
}
|
||||
|
||||
element.className += (element.className ? " " : "") + className;
|
||||
};
|
||||
var removeClass = function removeClass(element, className) {
|
||||
if (supportsClassList) {
|
||||
element.classList.remove(className);
|
||||
return;
|
||||
}
|
||||
|
||||
element.className = element.className.replace(new RegExp("(^|\\s+)" + className + "(\\s+|$)"), " ").replace(/^\s+/, "").replace(/\s+$/, "");
|
||||
};
|
||||
|
||||
var addTempImage = function addTempImage(element) {
|
||||
element.llTempImage = document.createElement("IMG");
|
||||
};
|
||||
var deleteTempImage = function deleteTempImage(element) {
|
||||
delete element.llTempImage;
|
||||
};
|
||||
var getTempImage = function getTempImage(element) {
|
||||
return element.llTempImage;
|
||||
};
|
||||
|
||||
var unobserve = function unobserve(element, instance) {
|
||||
if (!instance) return;
|
||||
var observer = instance._observer;
|
||||
if (!observer) return;
|
||||
observer.unobserve(element);
|
||||
};
|
||||
var resetObserver = function resetObserver(observer) {
|
||||
observer.disconnect();
|
||||
};
|
||||
var unobserveIfRequired = function unobserveIfRequired(element, settings, instance) {
|
||||
if (settings.unobserve_entered) unobserve(element, instance);
|
||||
};
|
||||
|
||||
var updateLoadingCount = function updateLoadingCount(instance, delta) {
|
||||
if (!instance) return;
|
||||
instance.loadingCount += delta;
|
||||
};
|
||||
var decreaseToLoadCount = function decreaseToLoadCount(instance) {
|
||||
if (!instance) return;
|
||||
instance.toLoadCount -= 1;
|
||||
};
|
||||
var setToLoadCount = function setToLoadCount(instance, value) {
|
||||
if (!instance) return;
|
||||
instance.toLoadCount = value;
|
||||
};
|
||||
var isSomethingLoading = function isSomethingLoading(instance) {
|
||||
return instance.loadingCount > 0;
|
||||
};
|
||||
var haveElementsToLoad = function haveElementsToLoad(instance) {
|
||||
return instance.toLoadCount > 0;
|
||||
};
|
||||
|
||||
var getSourceTags = function getSourceTags(parentTag) {
|
||||
var sourceTags = [];
|
||||
|
||||
for (var i = 0, childTag; childTag = parentTag.children[i]; i += 1) {
|
||||
if (childTag.tagName === "SOURCE") {
|
||||
sourceTags.push(childTag);
|
||||
}
|
||||
}
|
||||
|
||||
return sourceTags;
|
||||
};
|
||||
var setAttributeIfValue = function setAttributeIfValue(element, attrName, value) {
|
||||
if (!value) {
|
||||
return;
|
||||
}
|
||||
|
||||
element.setAttribute(attrName, value);
|
||||
};
|
||||
var resetAttribute = function resetAttribute(element, attrName) {
|
||||
element.removeAttribute(attrName);
|
||||
};
|
||||
var hasOriginalAttributes = function hasOriginalAttributes(element) {
|
||||
return !!element.llOriginalAttrs;
|
||||
};
|
||||
var saveOriginalImageAttributes = function saveOriginalImageAttributes(element) {
|
||||
if (hasOriginalAttributes(element)) {
|
||||
return;
|
||||
}
|
||||
|
||||
var originalAttributes = {};
|
||||
originalAttributes["src"] = element.getAttribute("src");
|
||||
originalAttributes["srcset"] = element.getAttribute("srcset");
|
||||
originalAttributes["sizes"] = element.getAttribute("sizes");
|
||||
element.llOriginalAttrs = originalAttributes;
|
||||
};
|
||||
var restoreOriginalImageAttributes = function restoreOriginalImageAttributes(element) {
|
||||
if (!hasOriginalAttributes(element)) {
|
||||
return;
|
||||
}
|
||||
|
||||
var originalAttributes = element.llOriginalAttrs;
|
||||
setAttributeIfValue(element, "src", originalAttributes["src"]);
|
||||
setAttributeIfValue(element, "srcset", originalAttributes["srcset"]);
|
||||
setAttributeIfValue(element, "sizes", originalAttributes["sizes"]);
|
||||
};
|
||||
var setImageAttributes = function setImageAttributes(element, settings) {
|
||||
setAttributeIfValue(element, "sizes", getData(element, settings.data_sizes));
|
||||
setAttributeIfValue(element, "srcset", getData(element, settings.data_srcset));
|
||||
setAttributeIfValue(element, "src", getData(element, settings.data_src));
|
||||
};
|
||||
var resetImageAttributes = function resetImageAttributes(element) {
|
||||
resetAttribute(element, "src");
|
||||
resetAttribute(element, "srcset");
|
||||
resetAttribute(element, "sizes");
|
||||
};
|
||||
var forEachPictureSource = function forEachPictureSource(element, fn) {
|
||||
var parent = element.parentNode;
|
||||
|
||||
if (!parent || parent.tagName !== "PICTURE") {
|
||||
return;
|
||||
}
|
||||
|
||||
var sourceTags = getSourceTags(parent);
|
||||
sourceTags.forEach(fn);
|
||||
};
|
||||
var forEachVideoSource = function forEachVideoSource(element, fn) {
|
||||
var sourceTags = getSourceTags(element);
|
||||
sourceTags.forEach(fn);
|
||||
};
|
||||
var restoreOriginalAttributesImg = function restoreOriginalAttributesImg(element) {
|
||||
forEachPictureSource(element, function (sourceTag) {
|
||||
restoreOriginalImageAttributes(sourceTag);
|
||||
});
|
||||
restoreOriginalImageAttributes(element);
|
||||
};
|
||||
var setSourcesImg = function setSourcesImg(element, settings) {
|
||||
forEachPictureSource(element, function (sourceTag) {
|
||||
saveOriginalImageAttributes(sourceTag);
|
||||
setImageAttributes(sourceTag, settings);
|
||||
});
|
||||
saveOriginalImageAttributes(element);
|
||||
setImageAttributes(element, settings);
|
||||
};
|
||||
var resetSourcesImg = function resetSourcesImg(element) {
|
||||
forEachPictureSource(element, function (sourceTag) {
|
||||
resetImageAttributes(sourceTag);
|
||||
});
|
||||
resetImageAttributes(element);
|
||||
};
|
||||
var setSourcesIframe = function setSourcesIframe(element, settings) {
|
||||
setAttributeIfValue(element, "src", getData(element, settings.data_src));
|
||||
};
|
||||
var setSourcesVideo = function setSourcesVideo(element, settings) {
|
||||
forEachVideoSource(element, function (sourceTag) {
|
||||
setAttributeIfValue(sourceTag, "src", getData(sourceTag, settings.data_src));
|
||||
});
|
||||
setAttributeIfValue(element, "poster", getData(element, settings.data_poster));
|
||||
setAttributeIfValue(element, "src", getData(element, settings.data_src));
|
||||
element.load();
|
||||
};
|
||||
var setSourcesFunctions = {
|
||||
IMG: setSourcesImg,
|
||||
IFRAME: setSourcesIframe,
|
||||
VIDEO: setSourcesVideo
|
||||
};
|
||||
var setBackground = function setBackground(element, settings, instance) {
|
||||
var bg1xValue = getData(element, settings.data_bg);
|
||||
var bgHiDpiValue = getData(element, settings.data_bg_hidpi);
|
||||
var bgDataValue = isHiDpi && bgHiDpiValue ? bgHiDpiValue : bg1xValue;
|
||||
if (!bgDataValue) return;
|
||||
element.style.backgroundImage = "url(\"".concat(bgDataValue, "\")");
|
||||
getTempImage(element).setAttribute("src", bgDataValue);
|
||||
manageLoading(element, settings, instance);
|
||||
}; // NOTE: THE TEMP IMAGE TRICK CANNOT BE DONE WITH data-multi-bg
|
||||
// BECAUSE INSIDE ITS VALUES MUST BE WRAPPED WITH URL() AND ONE OF THEM
|
||||
// COULD BE A GRADIENT BACKGROUND IMAGE
|
||||
|
||||
var setMultiBackground = function setMultiBackground(element, settings, instance) {
|
||||
var bg1xValue = getData(element, settings.data_bg_multi);
|
||||
var bgHiDpiValue = getData(element, settings.data_bg_multi_hidpi);
|
||||
var bgDataValue = isHiDpi && bgHiDpiValue ? bgHiDpiValue : bg1xValue;
|
||||
|
||||
if (!bgDataValue) {
|
||||
return;
|
||||
}
|
||||
|
||||
element.style.backgroundImage = bgDataValue;
|
||||
manageApplied(element, settings, instance);
|
||||
};
|
||||
var setSources = function setSources(element, settings) {
|
||||
var setSourcesFunction = setSourcesFunctions[element.tagName];
|
||||
|
||||
if (!setSourcesFunction) {
|
||||
return;
|
||||
}
|
||||
|
||||
setSourcesFunction(element, settings);
|
||||
};
|
||||
var manageApplied = function manageApplied(element, settings, instance) {
|
||||
addClass(element, settings.class_applied);
|
||||
setStatus(element, statusApplied);
|
||||
removeDataMultiBackground(element, settings);
|
||||
|
||||
if (settings.unobserve_completed) {
|
||||
// Unobserve now because we can't do it on load
|
||||
unobserve(element, settings);
|
||||
}
|
||||
|
||||
safeCallback(settings.callback_applied, element, instance);
|
||||
};
|
||||
var manageLoading = function manageLoading(element, settings, instance) {
|
||||
updateLoadingCount(instance, +1);
|
||||
addClass(element, settings.class_loading);
|
||||
setStatus(element, statusLoading);
|
||||
safeCallback(settings.callback_loading, element, instance);
|
||||
}; // REMOVE DATA ATTRIBUTES --------------
|
||||
|
||||
var removeDataImg = function removeDataImg(element, settings) {
|
||||
setData(element, settings.data_src, null);
|
||||
setData(element, settings.data_srcset, null);
|
||||
setData(element, settings.data_sizes, null);
|
||||
forEachPictureSource(element, function (sourceTag) {
|
||||
setData(sourceTag, settings.data_srcset, null);
|
||||
setData(sourceTag, settings.data_sizes, null);
|
||||
});
|
||||
};
|
||||
var removeDataIframe = function removeDataIframe(element, settings) {
|
||||
setData(element, settings.data_src, null);
|
||||
};
|
||||
var removeDataVideo = function removeDataVideo(element, settings) {
|
||||
setData(element, settings.data_src, null);
|
||||
setData(element, settings.data_poster, null);
|
||||
forEachVideoSource(element, function (sourceTag) {
|
||||
setData(sourceTag, settings.data_src, null);
|
||||
});
|
||||
};
|
||||
var removeDataFunctions = {
|
||||
IMG: removeDataImg,
|
||||
IFRAME: removeDataIframe,
|
||||
VIDEO: removeDataVideo
|
||||
};
|
||||
var removeDataBackground = function removeDataBackground(element, settings) {
|
||||
setData(element, settings.data_bg, null);
|
||||
setData(element, settings.data_bg_hidpi, null);
|
||||
};
|
||||
var removeDataMultiBackground = function removeDataMultiBackground(element, settings) {
|
||||
setData(element, settings.data_bg_multi, null);
|
||||
setData(element, settings.data_bg_multi_hidpi, null);
|
||||
};
|
||||
var removeDataAttributes = function removeDataAttributes(element, settings) {
|
||||
var removeDataFunction = removeDataFunctions[element.tagName];
|
||||
|
||||
if (removeDataFunction) {
|
||||
removeDataFunction(element, settings);
|
||||
return;
|
||||
}
|
||||
|
||||
removeDataBackground(element, settings);
|
||||
};
|
||||
|
||||
var elementsWithLoadEvent = ["IMG", "IFRAME", "VIDEO"];
|
||||
var hasLoadEvent = function hasLoadEvent(element) {
|
||||
return elementsWithLoadEvent.indexOf(element.tagName) > -1;
|
||||
};
|
||||
var checkFinish = function checkFinish(settings, instance) {
|
||||
if (instance && !isSomethingLoading(instance) && !haveElementsToLoad(instance)) {
|
||||
safeCallback(settings.callback_finish, instance);
|
||||
}
|
||||
};
|
||||
var addEventListener = function addEventListener(element, eventName, handler) {
|
||||
element.addEventListener(eventName, handler);
|
||||
element.llEvLisnrs[eventName] = handler;
|
||||
};
|
||||
var removeEventListener = function removeEventListener(element, eventName, handler) {
|
||||
element.removeEventListener(eventName, handler);
|
||||
};
|
||||
var hasEventListeners = function hasEventListeners(element) {
|
||||
return !!element.llEvLisnrs;
|
||||
};
|
||||
var addEventListeners = function addEventListeners(element, loadHandler, errorHandler) {
|
||||
if (!hasEventListeners(element)) element.llEvLisnrs = {};
|
||||
var loadEventName = element.tagName === "VIDEO" ? "loadeddata" : "load";
|
||||
addEventListener(element, loadEventName, loadHandler);
|
||||
addEventListener(element, "error", errorHandler);
|
||||
};
|
||||
var removeEventListeners = function removeEventListeners(element) {
|
||||
if (!hasEventListeners(element)) {
|
||||
return;
|
||||
}
|
||||
|
||||
var eventListeners = element.llEvLisnrs;
|
||||
|
||||
for (var eventName in eventListeners) {
|
||||
var handler = eventListeners[eventName];
|
||||
removeEventListener(element, eventName, handler);
|
||||
}
|
||||
|
||||
delete element.llEvLisnrs;
|
||||
};
|
||||
var doneHandler = function doneHandler(element, settings, instance) {
|
||||
deleteTempImage(element);
|
||||
updateLoadingCount(instance, -1);
|
||||
decreaseToLoadCount(instance);
|
||||
removeClass(element, settings.class_loading);
|
||||
|
||||
if (settings.unobserve_completed) {
|
||||
unobserve(element, instance);
|
||||
}
|
||||
};
|
||||
var loadHandler = function loadHandler(event, element, settings, instance) {
|
||||
var goingNative = hasStatusNative(element);
|
||||
doneHandler(element, settings, instance);
|
||||
addClass(element, settings.class_loaded);
|
||||
setStatus(element, statusLoaded);
|
||||
removeDataAttributes(element, settings);
|
||||
safeCallback(settings.callback_loaded, element, instance);
|
||||
if (!goingNative) checkFinish(settings, instance);
|
||||
};
|
||||
var errorHandler = function errorHandler(event, element, settings, instance) {
|
||||
var goingNative = hasStatusNative(element);
|
||||
doneHandler(element, settings, instance);
|
||||
addClass(element, settings.class_error);
|
||||
setStatus(element, statusError);
|
||||
safeCallback(settings.callback_error, element, instance);
|
||||
if (!goingNative) checkFinish(settings, instance);
|
||||
};
|
||||
var addOneShotEventListeners = function addOneShotEventListeners(element, settings, instance) {
|
||||
var elementToListenTo = getTempImage(element) || element;
|
||||
|
||||
if (hasEventListeners(elementToListenTo)) {
|
||||
// This happens when loading is retried twice
|
||||
return;
|
||||
}
|
||||
|
||||
var _loadHandler = function _loadHandler(event) {
|
||||
loadHandler(event, element, settings, instance);
|
||||
removeEventListeners(elementToListenTo);
|
||||
};
|
||||
|
||||
var _errorHandler = function _errorHandler(event) {
|
||||
errorHandler(event, element, settings, instance);
|
||||
removeEventListeners(elementToListenTo);
|
||||
};
|
||||
|
||||
addEventListeners(elementToListenTo, _loadHandler, _errorHandler);
|
||||
};
|
||||
|
||||
var loadBackground = function loadBackground(element, settings, instance) {
|
||||
addTempImage(element);
|
||||
addOneShotEventListeners(element, settings, instance);
|
||||
setBackground(element, settings, instance);
|
||||
setMultiBackground(element, settings, instance);
|
||||
};
|
||||
|
||||
var loadRegular = function loadRegular(element, settings, instance) {
|
||||
addOneShotEventListeners(element, settings, instance);
|
||||
setSources(element, settings);
|
||||
manageLoading(element, settings, instance);
|
||||
};
|
||||
|
||||
var load = function load(element, settings, instance) {
|
||||
if (hasLoadEvent(element)) {
|
||||
loadRegular(element, settings, instance);
|
||||
} else {
|
||||
loadBackground(element, settings, instance);
|
||||
}
|
||||
};
|
||||
var loadNative = function loadNative(element, settings, instance) {
|
||||
addOneShotEventListeners(element, settings, instance);
|
||||
setSources(element, settings);
|
||||
removeDataAttributes(element, settings);
|
||||
setStatus(element, statusNative);
|
||||
};
|
||||
|
||||
var cancelLoadingIfRequired = function cancelLoadingIfRequired(element, entry, settings, instance) {
|
||||
if (!settings.cancel_on_exit) return;
|
||||
if (!hasStatusLoading(element)) return;
|
||||
if (element.tagName !== "IMG") return; //Works only on images
|
||||
|
||||
removeEventListeners(element);
|
||||
resetSourcesImg(element);
|
||||
restoreOriginalAttributesImg(element);
|
||||
removeClass(element, settings.class_loading);
|
||||
updateLoadingCount(instance, -1);
|
||||
resetStatus(element);
|
||||
safeCallback(settings.callback_cancel, element, entry, instance);
|
||||
};
|
||||
|
||||
var onEnter = function onEnter(element, entry, settings, instance) {
|
||||
safeCallback(settings.callback_enter, element, entry, instance);
|
||||
unobserveIfRequired(element, settings, instance);
|
||||
if (hadStartedLoading(element)) return; //Prevent loading it again
|
||||
|
||||
load(element, settings, instance);
|
||||
};
|
||||
var onExit = function onExit(element, entry, settings, instance) {
|
||||
if (hasEmptyStatus(element)) return; //Ignore the first pass, at landing
|
||||
|
||||
cancelLoadingIfRequired(element, entry, settings, instance);
|
||||
safeCallback(settings.callback_exit, element, entry, instance);
|
||||
};
|
||||
|
||||
var tagsWithNativeLazy = ["IMG", "IFRAME"];
|
||||
var shouldUseNative = function shouldUseNative(settings) {
|
||||
return settings.use_native && "loading" in HTMLImageElement.prototype;
|
||||
};
|
||||
var loadAllNative = function loadAllNative(elements, settings, instance) {
|
||||
elements.forEach(function (element) {
|
||||
if (tagsWithNativeLazy.indexOf(element.tagName) === -1) {
|
||||
return;
|
||||
}
|
||||
|
||||
element.setAttribute("loading", "lazy"); //TODO: Move inside the loadNative method
|
||||
|
||||
loadNative(element, settings, instance);
|
||||
});
|
||||
setToLoadCount(instance, 0);
|
||||
};
|
||||
|
||||
var isIntersecting = function isIntersecting(entry) {
|
||||
return entry.isIntersecting || entry.intersectionRatio > 0;
|
||||
};
|
||||
|
||||
var getObserverSettings = function getObserverSettings(settings) {
|
||||
return {
|
||||
root: settings.container === document ? null : settings.container,
|
||||
rootMargin: settings.thresholds || settings.threshold + "px"
|
||||
};
|
||||
};
|
||||
|
||||
var intersectionHandler = function intersectionHandler(entries, settings, instance) {
|
||||
entries.forEach(function (entry) {
|
||||
return isIntersecting(entry) ? onEnter(entry.target, entry, settings, instance) : onExit(entry.target, entry, settings, instance);
|
||||
});
|
||||
};
|
||||
|
||||
var observeElements = function observeElements(observer, elements) {
|
||||
elements.forEach(function (element) {
|
||||
observer.observe(element);
|
||||
});
|
||||
};
|
||||
var updateObserver = function updateObserver(observer, elementsToObserve) {
|
||||
resetObserver(observer);
|
||||
observeElements(observer, elementsToObserve);
|
||||
};
|
||||
var setObserver = function setObserver(settings, instance) {
|
||||
if (!supportsIntersectionObserver || shouldUseNative(settings)) {
|
||||
return;
|
||||
}
|
||||
|
||||
instance._observer = new IntersectionObserver(function (entries) {
|
||||
intersectionHandler(entries, settings, instance);
|
||||
}, getObserverSettings(settings));
|
||||
};
|
||||
|
||||
var toArray = function toArray(nodeSet) {
|
||||
return Array.prototype.slice.call(nodeSet);
|
||||
};
|
||||
var queryElements = function queryElements(settings) {
|
||||
return settings.container.querySelectorAll(settings.elements_selector);
|
||||
};
|
||||
var excludeManagedElements = function excludeManagedElements(elements) {
|
||||
return toArray(elements).filter(hasEmptyStatus);
|
||||
};
|
||||
var hasError = function hasError(element) {
|
||||
return hasStatusError(element);
|
||||
};
|
||||
var filterErrorElements = function filterErrorElements(elements) {
|
||||
return toArray(elements).filter(hasError);
|
||||
};
|
||||
var getElementsToLoad = function getElementsToLoad(elements, settings) {
|
||||
return excludeManagedElements(elements || queryElements(settings));
|
||||
};
|
||||
|
||||
var retryLazyLoad = function retryLazyLoad(settings, instance) {
|
||||
var errorElements = filterErrorElements(queryElements(settings));
|
||||
errorElements.forEach(function (element) {
|
||||
removeClass(element, settings.class_error);
|
||||
resetStatus(element);
|
||||
});
|
||||
instance.update();
|
||||
};
|
||||
var setOnlineCheck = function setOnlineCheck(settings, instance) {
|
||||
if (!runningOnBrowser) {
|
||||
return;
|
||||
}
|
||||
|
||||
window.addEventListener("online", function () {
|
||||
retryLazyLoad(settings, instance);
|
||||
});
|
||||
};
|
||||
|
||||
var LazyLoad = function LazyLoad(customSettings, elements) {
|
||||
var settings = getExtendedSettings(customSettings);
|
||||
this._settings = settings;
|
||||
this.loadingCount = 0;
|
||||
setObserver(settings, this);
|
||||
setOnlineCheck(settings, this);
|
||||
this.update(elements);
|
||||
};
|
||||
|
||||
LazyLoad.prototype = {
|
||||
update: function update(givenNodeset) {
|
||||
var settings = this._settings;
|
||||
var elementsToLoad = getElementsToLoad(givenNodeset, settings);
|
||||
setToLoadCount(this, elementsToLoad.length);
|
||||
|
||||
if (isBot || !supportsIntersectionObserver) {
|
||||
this.loadAll(elementsToLoad);
|
||||
return;
|
||||
}
|
||||
|
||||
if (shouldUseNative(settings)) {
|
||||
loadAllNative(elementsToLoad, settings, this);
|
||||
return;
|
||||
}
|
||||
|
||||
updateObserver(this._observer, elementsToLoad);
|
||||
},
|
||||
destroy: function destroy() {
|
||||
// Observer
|
||||
if (this._observer) {
|
||||
this._observer.disconnect();
|
||||
} // Clean custom attributes on elements
|
||||
|
||||
|
||||
queryElements(this._settings).forEach(function (element) {
|
||||
delete element.llOriginalAttrs;
|
||||
}); // Delete all internal props
|
||||
|
||||
delete this._observer;
|
||||
delete this._settings;
|
||||
delete this.loadingCount;
|
||||
delete this.toLoadCount;
|
||||
},
|
||||
loadAll: function loadAll(elements) {
|
||||
var _this = this;
|
||||
|
||||
var settings = this._settings;
|
||||
var elementsToLoad = getElementsToLoad(elements, settings);
|
||||
elementsToLoad.forEach(function (element) {
|
||||
load(element, settings, _this);
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
LazyLoad.load = function (element, customSettings) {
|
||||
var settings = getExtendedSettings(customSettings);
|
||||
load(element, settings);
|
||||
};
|
||||
|
||||
LazyLoad.resetStatus = function (element) {
|
||||
resetStatus(element);
|
||||
}; // Automatic instances creation if required (useful for async script loading)
|
||||
|
||||
|
||||
if (runningOnBrowser) {
|
||||
autoInitialize(LazyLoad, window.lazyLoadOptions);
|
||||
}
|
||||
|
||||
return LazyLoad;
|
||||
|
||||
})));
|
1
wp-content/plugins/wp-rocket/assets/js/lazyload/16.1/lazyload.min.js
vendored
Normal file
1
wp-content/plugins/wp-rocket/assets/js/micromodal.min.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).MicroModal=t()}(this,function(){"use strict";return(()=>{const e=["a[href]","area[href]",'input:not([disabled]):not([type="hidden"]):not([aria-hidden])',"select:not([disabled]):not([aria-hidden])","textarea:not([disabled]):not([aria-hidden])","button:not([disabled]):not([aria-hidden])","iframe","object","embed","[contenteditable]",'[tabindex]:not([tabindex^="-"])'];class t{constructor({targetModal:e,triggers:t=[],onShow:o=(()=>{}),onClose:i=(()=>{}),openTrigger:n="data-micromodal-trigger",closeTrigger:s="data-micromodal-close",disableScroll:a=!1,disableFocus:l=!1,awaitCloseAnimation:d=!1,awaitOpenAnimation:r=!1,debugMode:c=!1}){this.modal=document.getElementById(e),this.config={debugMode:c,disableScroll:a,openTrigger:n,closeTrigger:s,onShow:o,onClose:i,awaitCloseAnimation:d,awaitOpenAnimation:r,disableFocus:l},t.length>0&&this.registerTriggers(...t),this.onClick=this.onClick.bind(this),this.onKeydown=this.onKeydown.bind(this)}registerTriggers(...e){e.filter(Boolean).forEach(e=>{e.addEventListener("click",e=>this.showModal(e))})}showModal(){if(this.activeElement=document.activeElement,this.modal.setAttribute("aria-hidden","false"),this.modal.classList.add("is-open"),this.scrollBehaviour("disable"),this.addEventListeners(),this.config.awaitOpenAnimation){const e=()=>{this.modal.removeEventListener("animationend",e,!1),this.setFocusToFirstNode()};this.modal.addEventListener("animationend",e,!1)}else this.setFocusToFirstNode();this.config.onShow(this.modal,this.activeElement)}closeModal(){const e=this.modal;this.modal.setAttribute("aria-hidden","true"),this.removeEventListeners(),this.scrollBehaviour("enable"),this.activeElement&&this.activeElement.focus(),this.config.onClose(this.modal),this.config.awaitCloseAnimation?this.modal.addEventListener("animationend",function t(){e.classList.remove("is-open"),e.removeEventListener("animationend",t,!1)},!1):e.classList.remove("is-open")}closeModalById(e){this.modal=document.getElementById(e),this.modal&&this.closeModal()}scrollBehaviour(e){if(!this.config.disableScroll)return;const t=document.querySelector("body");switch(e){case"enable":Object.assign(t.style,{overflow:"",height:""});break;case"disable":Object.assign(t.style,{overflow:"hidden",height:"100vh"})}}addEventListeners(){this.modal.addEventListener("touchstart",this.onClick),this.modal.addEventListener("click",this.onClick),document.addEventListener("keydown",this.onKeydown)}removeEventListeners(){this.modal.removeEventListener("touchstart",this.onClick),this.modal.removeEventListener("click",this.onClick),document.removeEventListener("keydown",this.onKeydown)}onClick(e){e.target.hasAttribute(this.config.closeTrigger)&&(this.closeModal(),e.preventDefault())}onKeydown(e){27===e.keyCode&&this.closeModal(e),9===e.keyCode&&this.maintainFocus(e)}getFocusableNodes(){const t=this.modal.querySelectorAll(e);return Array(...t)}setFocusToFirstNode(){if(this.config.disableFocus)return;const e=this.getFocusableNodes();e.length&&e[0].focus()}maintainFocus(e){const t=this.getFocusableNodes();if(this.modal.contains(document.activeElement)){const o=t.indexOf(document.activeElement);e.shiftKey&&0===o&&(t[t.length-1].focus(),e.preventDefault()),e.shiftKey||o!==t.length-1||(t[0].focus(),e.preventDefault())}else t[0].focus()}}let o=null;const i=e=>{if(!document.getElementById(e))return console.warn(`MicroModal: ❗Seems like you have missed %c'${e}'`,"background-color: #f8f9fa;color: #50596c;font-weight: bold;","ID somewhere in your code. Refer example below to resolve it."),console.warn("%cExample:","background-color: #f8f9fa;color: #50596c;font-weight: bold;",`<div class="modal" id="${e}"></div>`),!1},n=(e,t)=>{if((e=>{if(e.length<=0)console.warn("MicroModal: ❗Please specify at least one %c'micromodal-trigger'","background-color: #f8f9fa;color: #50596c;font-weight: bold;","data attribute."),console.warn("%cExample:","background-color: #f8f9fa;color: #50596c;font-weight: bold;",'<a href="#" data-micromodal-trigger="my-modal"></a>')})(e),!t)return!0;for(var o in t)i(o);return!0};return{init:e=>{const i=Object.assign({},{openTrigger:"data-micromodal-trigger"},e),s=[...document.querySelectorAll(`[${i.openTrigger}]`)],a=((e,t)=>{const o=[];return e.forEach(e=>{const i=e.attributes[t].value;void 0===o[i]&&(o[i]=[]),o[i].push(e)}),o})(s,i.openTrigger);if(!0!==i.debugMode||!1!==n(s,a))for(var l in a){let e=a[l];i.targetModal=l,i.triggers=[...e],o=new t(i)}},show:(e,n)=>{const s=n||{};s.targetModal=e,!0===s.debugMode&&!1===i(e)||(o=new t(s)).showModal()},close:e=>{e?o.closeModalById(e):o.closeModal()}}})()});
|
255
wp-content/plugins/wp-rocket/assets/js/preload-links.js
Normal file
@@ -0,0 +1,255 @@
|
||||
class RocketPreloadLinks {
|
||||
|
||||
constructor( browser, config ) {
|
||||
this.browser = browser;
|
||||
this.config = config;
|
||||
this.options = this.browser.options;
|
||||
|
||||
this.prefetched = new Set;
|
||||
this.eventTime = null;
|
||||
this.threshold = 1111;
|
||||
this.numOnHover = 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Initializes the handler.
|
||||
*/
|
||||
init() {
|
||||
if (
|
||||
! this.browser.supportsLinkPrefetch()
|
||||
||
|
||||
this.browser.isDataSaverModeOn()
|
||||
||
|
||||
this.browser.isSlowConnection()
|
||||
) {
|
||||
return;
|
||||
}
|
||||
|
||||
this.regex = {
|
||||
excludeUris: RegExp( this.config.excludeUris, 'i' ),
|
||||
images: RegExp( '.(' + this.config.imageExt + ')$', 'i' ),
|
||||
fileExt: RegExp( '.(' + this.config.fileExt + ')$', 'i' )
|
||||
};
|
||||
|
||||
this._initListeners( this );
|
||||
}
|
||||
|
||||
/**
|
||||
* Initializes the event listeners.
|
||||
*
|
||||
* @private
|
||||
*
|
||||
* @param self instance of this object, used for binding "this" to the listeners.
|
||||
*/
|
||||
_initListeners( self ) {
|
||||
// Setting onHoverDelay to -1 disables the "on-hover" feature.
|
||||
if ( this.config.onHoverDelay > -1 ) {
|
||||
document.addEventListener( 'mouseover', self.listener.bind( self ), self.listenerOptions );
|
||||
}
|
||||
|
||||
document.addEventListener( 'mousedown', self.listener.bind( self ), self.listenerOptions );
|
||||
document.addEventListener( 'touchstart', self.listener.bind( self ), self.listenerOptions );
|
||||
}
|
||||
|
||||
/**
|
||||
* Event listener. Processes when near or on a valid <a> hyperlink.
|
||||
*
|
||||
* @param Event event Event instance.
|
||||
*/
|
||||
listener( event ) {
|
||||
const linkElem = event.target.closest( 'a' );
|
||||
const url = this._prepareUrl( linkElem );
|
||||
if ( null === url ) {
|
||||
return;
|
||||
}
|
||||
|
||||
switch ( event.type ) {
|
||||
case 'mousedown':
|
||||
case 'touchstart':
|
||||
this._addPrefetchLink( url );
|
||||
break;
|
||||
case 'mouseover':
|
||||
this._earlyPrefetch( linkElem, url, 'mouseout' );
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @private
|
||||
*
|
||||
* @param Element|null linkElem
|
||||
* @param object url
|
||||
* @param string resetEvent
|
||||
*/
|
||||
_earlyPrefetch( linkElem, url, resetEvent ) {
|
||||
const doPrefetch = () => {
|
||||
falseTrigger = null;
|
||||
|
||||
// Start the rate throttle: 1 sec timeout.
|
||||
if ( 0 === this.numOnHover ) {
|
||||
setTimeout( () => this.numOnHover = 0, 1000 );
|
||||
}
|
||||
// Bail out when exceeding the rate throttle.
|
||||
else if ( this.numOnHover > this.config.rateThrottle ) {
|
||||
return;
|
||||
}
|
||||
|
||||
this.numOnHover++;
|
||||
this._addPrefetchLink( url );
|
||||
};
|
||||
|
||||
// Delay to avoid false triggers for hover/touch/tap.
|
||||
let falseTrigger = setTimeout( doPrefetch, this.config.onHoverDelay );
|
||||
|
||||
// On reset event, reset the false trigger timer.
|
||||
const reset = () => {
|
||||
linkElem.removeEventListener( resetEvent, reset, { passive: true } );
|
||||
if ( null === falseTrigger ) {
|
||||
return;
|
||||
}
|
||||
|
||||
clearTimeout( falseTrigger );
|
||||
falseTrigger = null;
|
||||
};
|
||||
linkElem.addEventListener( resetEvent, reset, { passive: true } );
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds a <link rel="prefetch" href="<url>"> for the given URL.
|
||||
*
|
||||
* @param string url The Given URL to prefetch.
|
||||
*/
|
||||
_addPrefetchLink( url ) {
|
||||
this.prefetched.add( url.href );
|
||||
|
||||
return new Promise( ( resolve, reject ) => {
|
||||
const elem = document.createElement( 'link' );
|
||||
elem.rel = 'prefetch';
|
||||
elem.href = url.href;
|
||||
elem.onload = resolve;
|
||||
elem.onerror = reject;
|
||||
|
||||
document.head.appendChild( elem );
|
||||
} ).catch(() => {
|
||||
// ignore and continue.
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Prepares the target link's URL.
|
||||
*
|
||||
* @private
|
||||
*
|
||||
* @param Element|null linkElem Instance of the link element.
|
||||
* @returns {null|*}
|
||||
*/
|
||||
_prepareUrl( linkElem ) {
|
||||
if (
|
||||
null === linkElem
|
||||
||
|
||||
typeof linkElem !== 'object'
|
||||
||
|
||||
! 'href' in linkElem
|
||||
||
|
||||
// Link prefetching only works on http/https protocol.
|
||||
[ 'http:', 'https:' ].indexOf( linkElem.protocol ) === -1
|
||||
) {
|
||||
return null;
|
||||
}
|
||||
|
||||
const origin = linkElem.href.substring( 0, this.config.siteUrl.length );
|
||||
const pathname = this._getPathname( linkElem.href, origin );
|
||||
const url = {
|
||||
original: linkElem.href,
|
||||
protocol: linkElem.protocol,
|
||||
origin: origin,
|
||||
pathname: pathname,
|
||||
href: origin + pathname
|
||||
};
|
||||
|
||||
return this._isLinkOk( url ) ? url : null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the URL's pathname. Note: ensures the pathname matches the permalink structure.
|
||||
*
|
||||
* @private
|
||||
*
|
||||
* @param object url Instance of the URL.
|
||||
* @param string origin The target link href's origin.
|
||||
* @returns {string}
|
||||
*/
|
||||
_getPathname( url, origin ) {
|
||||
let pathname = origin
|
||||
? url.substring( this.config.siteUrl.length )
|
||||
: url;
|
||||
|
||||
if ( ! pathname.startsWith( '/' ) ) {
|
||||
pathname = '/' + pathname;
|
||||
}
|
||||
|
||||
if ( this._shouldAddTrailingSlash( pathname ) ) {
|
||||
return pathname + '/';
|
||||
}
|
||||
|
||||
return pathname;
|
||||
}
|
||||
|
||||
_shouldAddTrailingSlash( pathname ) {
|
||||
return (
|
||||
this.config.usesTrailingSlash
|
||||
&&
|
||||
! pathname.endsWith( '/' )
|
||||
&&
|
||||
! this.regex.fileExt.test( pathname )
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if the given link element is okay to process.
|
||||
*
|
||||
* @private
|
||||
*
|
||||
* @param object url URL parts object.
|
||||
*
|
||||
* @returns {boolean}
|
||||
*/
|
||||
_isLinkOk( url ) {
|
||||
if ( null === url || typeof url !== 'object' ) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return (
|
||||
! this.prefetched.has( url.href )
|
||||
&&
|
||||
url.origin === this.config.siteUrl // is an internal document.
|
||||
&&
|
||||
url.href.indexOf( '?' ) === -1 // not a query string.
|
||||
&&
|
||||
url.href.indexOf( '#' ) === -1 // not an anchor.
|
||||
&&
|
||||
! this.regex.excludeUris.test( url.href ) // not excluded.
|
||||
&&
|
||||
! this.regex.images.test( url.href ) // not an image.
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Named static constructor to encapsulate how to create the object.
|
||||
*/
|
||||
static run() {
|
||||
// Bail out if the configuration not passed from the server.
|
||||
if ( typeof RocketPreloadLinksConfig === 'undefined' ) {
|
||||
return;
|
||||
}
|
||||
|
||||
const browser = new RocketBrowserCompatibilityChecker( {
|
||||
capture: true,
|
||||
passive: true
|
||||
} );
|
||||
const instance = new RocketPreloadLinks( browser, RocketPreloadLinksConfig );
|
||||
instance.init();
|
||||
}
|
||||
}
|
||||
|
||||
RocketPreloadLinks.run();
|
3
wp-content/plugins/wp-rocket/assets/js/preload-links.min.js
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
(function() {
|
||||
"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e=function(){function i(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(e,t,n){return t&&i(e.prototype,t),n&&i(e,n),e}}();function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var t=function(){function n(e,t){i(this,n),this.browser=e,this.config=t,this.options=this.browser.options,this.prefetched=new Set,this.eventTime=null,this.threshold=1111,this.numOnHover=0}return e(n,[{key:"init",value:function(){!this.browser.supportsLinkPrefetch()||this.browser.isDataSaverModeOn()||this.browser.isSlowConnection()||(this.regex={excludeUris:RegExp(this.config.excludeUris,"i"),images:RegExp(".("+this.config.imageExt+")$","i"),fileExt:RegExp(".("+this.config.fileExt+")$","i")},this._initListeners(this))}},{key:"_initListeners",value:function(e){-1<this.config.onHoverDelay&&document.addEventListener("mouseover",e.listener.bind(e),e.listenerOptions),document.addEventListener("mousedown",e.listener.bind(e),e.listenerOptions),document.addEventListener("touchstart",e.listener.bind(e),e.listenerOptions)}},{key:"listener",value:function(e){var t=e.target.closest("a"),n=this._prepareUrl(t);if(null!==n)switch(e.type){case"mousedown":case"touchstart":this._addPrefetchLink(n);break;case"mouseover":this._earlyPrefetch(t,n,"mouseout")}}},{key:"_earlyPrefetch",value:function(t,e,n){var i=this,r=setTimeout(function(){if(r=null,0===i.numOnHover)setTimeout(function(){return i.numOnHover=0},1e3);else if(i.numOnHover>i.config.rateThrottle)return;i.numOnHover++,i._addPrefetchLink(e)},this.config.onHoverDelay);t.addEventListener(n,function e(){t.removeEventListener(n,e,{passive:!0}),null!==r&&(clearTimeout(r),r=null)},{passive:!0})}},{key:"_addPrefetchLink",value:function(i){return this.prefetched.add(i.href),new Promise(function(e,t){var n=document.createElement("link");n.rel="prefetch",n.href=i.href,n.onload=e,n.onerror=t,document.head.appendChild(n)}).catch(function(){})}},{key:"_prepareUrl",value:function(e){if(null===e||"object"!==(void 0===e?"undefined":r(e))||!1 in e||-1===["http:","https:"].indexOf(e.protocol))return null;var t=e.href.substring(0,this.config.siteUrl.length),n=this._getPathname(e.href,t),i={original:e.href,protocol:e.protocol,origin:t,pathname:n,href:t+n};return this._isLinkOk(i)?i:null}},{key:"_getPathname",value:function(e,t){var n=t?e.substring(this.config.siteUrl.length):e;return n.startsWith("/")||(n="/"+n),this._shouldAddTrailingSlash(n)?n+"/":n}},{key:"_shouldAddTrailingSlash",value:function(e){return this.config.usesTrailingSlash&&!e.endsWith("/")&&!this.regex.fileExt.test(e)}},{key:"_isLinkOk",value:function(e){return null!==e&&"object"===(void 0===e?"undefined":r(e))&&(!this.prefetched.has(e.href)&&e.origin===this.config.siteUrl&&-1===e.href.indexOf("?")&&-1===e.href.indexOf("#")&&!this.regex.excludeUris.test(e.href)&&!this.regex.images.test(e.href))}}],[{key:"run",value:function(){"undefined"!=typeof RocketPreloadLinksConfig&&new n(new RocketBrowserCompatibilityChecker({capture:!0,passive:!0}),RocketPreloadLinksConfig).init()}}]),n}();t.run();
|
||||
}());
|
@@ -0,0 +1,7 @@
|
||||
jQuery( document ).ready( function( $ ){
|
||||
$( '.rocket-dismiss' ).on( 'click', function( e ) {
|
||||
e.preventDefault();
|
||||
var url = $( this ).attr( 'href' ).replace( 'admin-post', 'admin-ajax' );
|
||||
$.get( url ).done( $( this ).closest( '.notice' ).hide( 'slow' ) );
|
||||
});
|
||||
} );
|
2
wp-content/plugins/wp-rocket/assets/js/wpr-admin.js
Normal file
1
wp-content/plugins/wp-rocket/assets/js/wpr-admin.js.map
Normal file
@@ -0,0 +1,36 @@
|
||||
let cpcssHeartbeatCall;
|
||||
const cpcssHeartbeat = () => {
|
||||
const xhttp = new XMLHttpRequest();
|
||||
xhttp.onload = () => {
|
||||
if ( 200 !== xhttp.status ) {
|
||||
return;
|
||||
}
|
||||
|
||||
const cpcs_heartbeat_response = JSON.parse( xhttp.response );
|
||||
if ( false === cpcs_heartbeat_response.success ) {
|
||||
stopCPCSSHeartbeat();
|
||||
return;
|
||||
}
|
||||
|
||||
if ( cpcs_heartbeat_response.success &&
|
||||
'cpcss_complete' === cpcs_heartbeat_response.data.status ) {
|
||||
stopCPCSSHeartbeat();
|
||||
return;
|
||||
}
|
||||
|
||||
cpcssHeartbeatCall = setTimeout( () => {
|
||||
cpcssHeartbeat();
|
||||
}, 3000 );
|
||||
};
|
||||
|
||||
xhttp.open( 'POST', ajaxurl, true );
|
||||
xhttp.setRequestHeader( 'Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8' );
|
||||
xhttp.send( "action=rocket_cpcss_heartbeat&_nonce=" + rocket_cpcss_heartbeat.nonce );
|
||||
}
|
||||
|
||||
|
||||
const stopCPCSSHeartbeat = () => {
|
||||
clearTimeout( cpcssHeartbeatCall );
|
||||
}
|
||||
|
||||
cpcssHeartbeat();
|
146
wp-content/plugins/wp-rocket/assets/js/wpr-cpcss.js
Normal file
@@ -0,0 +1,146 @@
|
||||
let checkCPCSSGenerationCall;
|
||||
let checkCPCSSMobileGenerationCall;
|
||||
let cpcsssGenerationPending = 0;
|
||||
let cpcsssMobileGenerationPending = 0;
|
||||
const rocketDeleteCPCSSbtn = document.getElementById( 'rocket-delete-post-cpss' );
|
||||
const rocketGenerateCPCSSbtn = document.getElementById( 'rocket-generate-post-cpss' );
|
||||
const rocketCPCSSGenerate = document.querySelectorAll( '.cpcss_generate' );
|
||||
const rocketCPCSSReGenerate = document.querySelectorAll( '.cpcss_regenerate' );
|
||||
|
||||
rocketDeleteCPCSSbtn.addEventListener( 'click', e => {
|
||||
e.preventDefault();
|
||||
deleteCPCSS();
|
||||
} );
|
||||
|
||||
rocketGenerateCPCSSbtn.addEventListener( 'click', e => {
|
||||
e.preventDefault();
|
||||
rocketGenerateCPCSSbtn.disabled = true;
|
||||
checkCPCSSGeneration( null, false );
|
||||
if ( rocket_cpcss.wprMobileCpcssEnabled ) {
|
||||
checkCPCSSGeneration( null, true );
|
||||
}
|
||||
} );
|
||||
|
||||
const checkCPCSSGeneration = ( timeout = null, is_mobile = false ) => {
|
||||
const spinner = rocketGenerateCPCSSbtn.querySelector( '.spinner' );
|
||||
spinner.style.display = 'block';
|
||||
spinner.style.visibility = 'visible';
|
||||
|
||||
const xhttp = new XMLHttpRequest();
|
||||
xhttp.onload = () => {
|
||||
if ( 200 !== xhttp.status ) {
|
||||
return;
|
||||
}
|
||||
|
||||
const cpcss_response = JSON.parse( xhttp.response );
|
||||
if ( 200 !== cpcss_response.data.status ) {
|
||||
stopCPCSSGeneration( spinner );
|
||||
if ( ! is_mobile ) {
|
||||
cpcssNotice( cpcss_response.message, 'error' );
|
||||
}
|
||||
rocketGenerateCPCSSbtn.disabled = false;
|
||||
return;
|
||||
}
|
||||
|
||||
if ( 200 === cpcss_response.data.status &&
|
||||
'cpcss_generation_pending' !== cpcss_response.code ) {
|
||||
stopCPCSSGeneration( spinner, is_mobile );
|
||||
if ( ! is_mobile ) {
|
||||
cpcssNotice( cpcss_response.message, 'success' );
|
||||
}
|
||||
|
||||
// Revert view to Regenerate.
|
||||
rocketGenerateCPCSSbtn.querySelector( '.rocket-generate-post-cpss-btn-txt' ).innerHTML = rocket_cpcss.regenerate_btn;
|
||||
rocketDeleteCPCSSbtn.style.display = 'block';
|
||||
rocketGenerateCPCSSbtn.disabled = false;
|
||||
rocketCPCSSGenerate.forEach( item => item.style.display = 'none' );
|
||||
rocketCPCSSReGenerate.forEach( item => item.style.display = 'block' );
|
||||
return;
|
||||
}
|
||||
|
||||
if ( is_mobile ) {
|
||||
cpcsssMobileGenerationPending++;
|
||||
if ( cpcsssMobileGenerationPending > 10 ) {
|
||||
stopCPCSSGeneration( spinner, is_mobile );
|
||||
cpcsssMobileGenerationPending = 0;
|
||||
checkCPCSSGeneration( true, true );
|
||||
return;
|
||||
}
|
||||
checkCPCSSMobileGenerationCall = setTimeout( () => {
|
||||
checkCPCSSGeneration( null, true );
|
||||
}, 3000 );
|
||||
} else {
|
||||
cpcsssGenerationPending++;
|
||||
if ( cpcsssGenerationPending > 10 ) {
|
||||
stopCPCSSGeneration( spinner, is_mobile );
|
||||
cpcsssGenerationPending = 0;
|
||||
checkCPCSSGeneration( true, false );
|
||||
return;
|
||||
}
|
||||
|
||||
checkCPCSSGenerationCall = setTimeout( () => {
|
||||
checkCPCSSGeneration( null, false );
|
||||
}, 3000 );
|
||||
}
|
||||
};
|
||||
|
||||
xhttp.open( 'POST', rocket_cpcss.rest_url, true );
|
||||
xhttp.setRequestHeader( 'Content-Type', 'application/json;charset=UTF-8' );
|
||||
xhttp.setRequestHeader( 'X-WP-Nonce', rocket_cpcss.rest_nonce );
|
||||
xhttp.send( JSON.stringify( { timeout: timeout, is_mobile: is_mobile } ) );
|
||||
}
|
||||
|
||||
const stopCPCSSGeneration = ( spinner, is_mobile ) => {
|
||||
spinner.style.display = 'none';
|
||||
if ( is_mobile ) {
|
||||
clearTimeout( checkCPCSSMobileGenerationCall );
|
||||
} else {
|
||||
clearTimeout( checkCPCSSGenerationCall );
|
||||
}
|
||||
}
|
||||
|
||||
const deleteCPCSS = () => {
|
||||
rocketDeleteCPCSSbtn.disabled = true;
|
||||
|
||||
const xhttp = new XMLHttpRequest();
|
||||
xhttp.onload = () => {
|
||||
if ( 200 !== xhttp.status ) {
|
||||
return;
|
||||
}
|
||||
|
||||
rocketDeleteCPCSSbtn.disabled = false;
|
||||
const cpcss_response = JSON.parse( xhttp.response );
|
||||
|
||||
if ( 200 !== cpcss_response.data.status ) {
|
||||
cpcssNotice( cpcss_response.message, 'error' );
|
||||
return;
|
||||
}
|
||||
cpcssNotice( cpcss_response.message, 'success' );
|
||||
|
||||
// Revert view to Generate.
|
||||
rocketGenerateCPCSSbtn.querySelector( '.rocket-generate-post-cpss-btn-txt' ).innerHTML = rocket_cpcss.generate_btn;
|
||||
rocketDeleteCPCSSbtn.style.display = 'none';
|
||||
rocketCPCSSReGenerate.forEach( item => item.style.display = 'none' );
|
||||
rocketCPCSSGenerate.forEach( item => item.style.display = 'block' );
|
||||
};
|
||||
|
||||
xhttp.open( 'DELETE', rocket_cpcss.rest_url, true );
|
||||
xhttp.setRequestHeader( 'Content-Type', 'application/json;charset=UTF-8' );
|
||||
xhttp.setRequestHeader( 'X-WP-Nonce', rocket_cpcss.rest_nonce );
|
||||
xhttp.send();
|
||||
}
|
||||
|
||||
const cpcssNotice = ( msg, type ) => {
|
||||
/* Add notice class */
|
||||
const cpcssNotice = document.getElementById( 'cpcss_response_notice' );
|
||||
cpcssNotice.innerHTML = '';
|
||||
cpcssNotice.classList.remove( 'hidden', 'notice', 'is-warning', 'notice-error', 'notice-success', 'is-error', 'is-success' );
|
||||
cpcssNotice.classList.add( 'notice', 'notice-' + type, 'is-' + type );
|
||||
|
||||
/* create paragraph element to hold message */
|
||||
const p = document.createElement( 'p' );
|
||||
p.appendChild( document.createTextNode( msg ) );
|
||||
|
||||
/* Add the whole message to notice div */
|
||||
cpcssNotice.appendChild( p );
|
||||
}
|
202
wp-content/plugins/wp-rocket/assets/js/wpr-modal.js
Normal file
@@ -0,0 +1,202 @@
|
||||
var $ = jQuery;
|
||||
$(document).ready(function(){
|
||||
|
||||
var $wprModal = $(".wpr-Modal");
|
||||
if($wprModal){
|
||||
new ModalWpr($wprModal);
|
||||
}
|
||||
|
||||
/**
|
||||
* AJAX Safe mode action button
|
||||
*/
|
||||
$('#wpr-action-safe_mode').on('click', function(e) {
|
||||
var button = $(this);
|
||||
e.preventDefault();
|
||||
|
||||
$.post(
|
||||
ajaxurl,
|
||||
{
|
||||
action: 'rocket_safe_mode',
|
||||
nonce: rocket_ajax_data.nonce,
|
||||
},
|
||||
function(response) {
|
||||
if ( true === response.success ) {
|
||||
button.hide();
|
||||
$('.show-if-safe-mode').show();
|
||||
}
|
||||
}
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
/*-----------------------------------------------*\
|
||||
CLASS ModalWpr
|
||||
\*-----------------------------------------------*/
|
||||
/**
|
||||
* Manages the display of deactivation modal box
|
||||
*
|
||||
* Public method :
|
||||
open - Open the modal
|
||||
close - Close the modal
|
||||
change - Test if modal state change
|
||||
*
|
||||
*/
|
||||
|
||||
function ModalWpr(aElem) {
|
||||
|
||||
var refThis = this;
|
||||
|
||||
this.elem = aElem;
|
||||
this.overlay = $('.wpr-Modal-overlay');
|
||||
this.radio = $('input[name=reason]', aElem);
|
||||
this.closer = $('.wpr-Modal-close, .wpr-Modal-cancel', aElem);
|
||||
this.return = $('.wpr-Modal-return', aElem);
|
||||
this.opener = $('.plugins [data-slug="wp-rocket"] .deactivate');
|
||||
this.question = $('.wpr-Modal-question', aElem);
|
||||
this.button = $('.button-primary', aElem);
|
||||
this.title = $('.wpr-Modal-header h2', aElem);
|
||||
this.textFields = $('input[type=text], textarea',aElem);
|
||||
this.hiddenReason = $('#wpr-reason', aElem);
|
||||
this.hiddenDetails = $('#wpr-details', aElem);
|
||||
this.titleText = this.title.text();
|
||||
|
||||
// Open
|
||||
this.opener.click(function() {
|
||||
refThis.open();
|
||||
return false;
|
||||
});
|
||||
|
||||
// Close
|
||||
this.closer.click(function() {
|
||||
refThis.close();
|
||||
return false;
|
||||
});
|
||||
|
||||
aElem.bind('keyup', function(){
|
||||
if(event.keyCode == 27){ // ECHAP
|
||||
refThis.close();
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
// Back
|
||||
this.return.click(function() {
|
||||
refThis.returnToQuestion();
|
||||
return false;
|
||||
});
|
||||
|
||||
// Click on radio
|
||||
this.radio.change(function(){
|
||||
refThis.change($(this));
|
||||
});
|
||||
|
||||
// Write text
|
||||
this.textFields.keyup(function() {
|
||||
refThis.hiddenDetails.val($(this).val());
|
||||
if(refThis.hiddenDetails.val() != ''){
|
||||
refThis.button.removeClass('wpr-isDisabled');
|
||||
refThis.button.removeAttr("disabled");
|
||||
}
|
||||
else{
|
||||
refThis.button.addClass('wpr-isDisabled');
|
||||
refThis.button.attr("disabled", true);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Change modal state
|
||||
*/
|
||||
ModalWpr.prototype.change = function(aElem) {
|
||||
|
||||
var id = aElem.attr('id');
|
||||
var refThis = this;
|
||||
|
||||
// Reset values
|
||||
this.hiddenReason.val(aElem.val());
|
||||
this.hiddenDetails.val('');
|
||||
this.textFields.val('');
|
||||
|
||||
$('.wpr-Modal-fieldHidden').removeClass('wpr-isOpen');
|
||||
$('.wpr-Modal-hidden').removeClass('wpr-isOpen');
|
||||
this.button.removeClass('wpr-isDisabled');
|
||||
this.button.removeAttr("disabled");
|
||||
|
||||
switch(id){
|
||||
case 'reason-temporary':
|
||||
// Nothing to do
|
||||
break;
|
||||
|
||||
case 'reason-broke':
|
||||
case 'reason-score':
|
||||
case 'reason-loading':
|
||||
case 'reason-complicated':
|
||||
var $panel = $('#' + id + '-panel');
|
||||
refThis.question.removeClass('wpr-isOpen');
|
||||
refThis.return.addClass('wpr-isOpen');
|
||||
$panel.addClass('wpr-isOpen');
|
||||
|
||||
var titleText = $panel.find('h3').text();
|
||||
this.title.text(titleText);
|
||||
break;
|
||||
|
||||
case 'reason-host':
|
||||
case 'reason-other':
|
||||
var field = aElem.siblings('.wpr-Modal-fieldHidden');
|
||||
field.addClass('wpr-isOpen');
|
||||
field.find('input, textarea').focus();
|
||||
refThis.button.addClass('wpr-isDisabled');
|
||||
refThis.button.attr("disabled", true);
|
||||
break;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Return to the question
|
||||
*/
|
||||
ModalWpr.prototype.returnToQuestion = function() {
|
||||
|
||||
$('.wpr-Modal-fieldHidden').removeClass('wpr-isOpen');
|
||||
$('.wpr-Modal-hidden').removeClass('wpr-isOpen');
|
||||
this.question.addClass('wpr-isOpen');
|
||||
this.return.removeClass('wpr-isOpen');
|
||||
this.title.text(this.titleText);
|
||||
|
||||
// Reset values
|
||||
this.hiddenReason.val('');
|
||||
this.hiddenDetails.val('');
|
||||
|
||||
this.radio.attr('checked', false);
|
||||
this.button.addClass('wpr-isDisabled');
|
||||
this.button.attr("disabled", true);
|
||||
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* Open modal
|
||||
*/
|
||||
ModalWpr.prototype.open = function() {
|
||||
|
||||
this.elem.css('display','block');
|
||||
this.overlay.css('display','block');
|
||||
|
||||
// Reset current tab wp-rocket
|
||||
localStorage.setItem('wpr-hash', '');
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* Close modal
|
||||
*/
|
||||
ModalWpr.prototype.close = function() {
|
||||
|
||||
this.returnToQuestion();
|
||||
this.elem.css('display','none');
|
||||
this.overlay.css('display','none');
|
||||
|
||||
};
|
171
wp-content/plugins/wp-rocket/composer.json
Normal file
@@ -0,0 +1,171 @@
|
||||
{
|
||||
"name": "wp-media/wp-rocket",
|
||||
"description": "Performance optimization plugin for WordPress",
|
||||
"keywords": [
|
||||
"wordpress",
|
||||
"cache",
|
||||
"minification",
|
||||
"lazyload"
|
||||
],
|
||||
"homepage": "https://wp-rocket.me",
|
||||
"license": "GPL-2.0-or-later",
|
||||
"authors": [
|
||||
{
|
||||
"name": "WP Media",
|
||||
"email": "contact@wp-media.me",
|
||||
"homepage": "https://wp-media.me"
|
||||
}
|
||||
],
|
||||
"type": "wordpress-plugin",
|
||||
"config": {
|
||||
"sort-packages": true,
|
||||
"preferred-install": {
|
||||
"wp-media/phpunit": "source"
|
||||
}
|
||||
},
|
||||
"support": {
|
||||
"issues": "https://github.com/wp-media/wp-rocket/issues",
|
||||
"source": "https://github.com/wp-media/wp-rocket"
|
||||
},
|
||||
"repositories":[
|
||||
{
|
||||
"type": "composer",
|
||||
"url": "https://wpackagist.org"
|
||||
}
|
||||
],
|
||||
"require": {
|
||||
"php": ">=5.6.0",
|
||||
"composer/installers": "~1.0",
|
||||
"monolog/monolog": "^1.0",
|
||||
"psr/container": "^1.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"php": "^5.6 || ^7",
|
||||
"brain/monkey": "^2.0",
|
||||
"coenjacobs/mozart": "0.6.0-beta-3",
|
||||
"dealerdirect/phpcodesniffer-composer-installer": "^0.7.0",
|
||||
"mikey179/vfsstream": "^1.6",
|
||||
"mobiledetect/mobiledetectlib": "^2.8",
|
||||
"mnsami/composer-custom-directory-installer": "^2.0",
|
||||
"phpcompatibility/phpcompatibility-wp": "^2.0",
|
||||
"phpstan/phpstan": "^0.12.3",
|
||||
"phpunit/phpunit": "^5.7 || ^7",
|
||||
"roave/security-advisories": "dev-master",
|
||||
"szepeviktor/phpstan-wordpress": "^0.5.0",
|
||||
"woocommerce/woocommerce": "^3.9",
|
||||
"wp-coding-standards/wpcs": "^2",
|
||||
"wp-media/background-processing": "^1.3",
|
||||
"wp-media/cloudflare": "^1.0",
|
||||
"wp-media/module-rocketcdn": "^1.0",
|
||||
"wp-media/module-varnish": "^1.0",
|
||||
"wp-media/rocket-lazyload-common": "^2",
|
||||
"wp-media/phpunit": "^1.0",
|
||||
"wp-media/wp-imagify-partner": "^1.0",
|
||||
"wpackagist-plugin/amp": "^1.1.4",
|
||||
"wpackagist-plugin/hummingbird-performance": "2.0.1",
|
||||
"wpackagist-plugin/pdf-embedder": "^4.6",
|
||||
"wpackagist-plugin/simple-custom-css": "^4.0.3",
|
||||
"wpackagist-plugin/spinupwp": "^1.1",
|
||||
"wpackagist-plugin/wp-smushit": "^3.0"
|
||||
},
|
||||
"autoload": {
|
||||
"classmap": [
|
||||
"inc/classes",
|
||||
"inc/vendors/classes"
|
||||
],
|
||||
"exclude-from-classmap": [
|
||||
"inc/vendors/classes/class-rocket-mobile-detect.php",
|
||||
"inc/classes/class-wp-rocket-requirements-check.php"
|
||||
],
|
||||
"psr-4": {
|
||||
"WP_Rocket\\": "inc/",
|
||||
"WPMedia\\Cloudflare\\": "inc/Addon/Cloudflare/"
|
||||
}
|
||||
},
|
||||
"autoload-dev": {
|
||||
"psr-4": {
|
||||
"WP_Rocket\\Tests\\": "tests/"
|
||||
}
|
||||
},
|
||||
"extra": {
|
||||
"installer-paths": {
|
||||
"vendor/{$vendor}/{$name}/": ["type:wordpress-plugin"],
|
||||
"./inc/Addon/Cloudflare/": ["wp-media/cloudflare"],
|
||||
"./inc/Addon/Varnish/": ["wp-media/module-varnish"],
|
||||
"./inc/Engine/CDN/RocketCDN/": ["wp-media/module-rocketcdn"]
|
||||
},
|
||||
"mozart": {
|
||||
"dep_namespace": "WP_Rocket\\Dependencies\\",
|
||||
"dep_directory": "/inc/Dependencies/",
|
||||
"classmap_directory": "/inc/classes/dependencies/",
|
||||
"classmap_prefix": "WP_Rocket_",
|
||||
"packages": [
|
||||
"mobiledetect/mobiledetectlib",
|
||||
"wp-media/background-processing",
|
||||
"wp-media/rocket-lazyload-common",
|
||||
"wp-media/wp-imagify-partner"
|
||||
]
|
||||
}
|
||||
},
|
||||
"scripts": {
|
||||
"test-unit": "\"vendor/bin/phpunit\" --testsuite unit --colors=always --configuration tests/Unit/phpunit.xml.dist",
|
||||
"test-integration": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --exclude-group AdminOnly,BeaverBuilder,Elementor,Hummingbird,WithSmush,WithWoo,WithAmp,WithAmpAndCloudflare,WithSCCSS,Cloudways,Dreampress,DoCloudflare,Multisite,WPEngine,SpinUpWP,WordPressCom,O2Switch,PDFEmbedder,PDFEmbedderPremium,PDFEmbedderSecure",
|
||||
"test-integration-adminonly": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group AdminOnly",
|
||||
"test-integration-bb": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group BeaverBuilder",
|
||||
"test-integration-cloudflare": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group DoCloudflare",
|
||||
"test-integration-cloudways": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group Cloudways",
|
||||
"test-integration-elementor": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group Elementor",
|
||||
"test-integration-hummingbird": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group Hummingbird",
|
||||
"test-integration-multisite": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group Multisite",
|
||||
"test-integration-withsmush": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group WithSmush",
|
||||
"test-integration-withamp": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group WithAmp",
|
||||
"test-integration-withampcloudflare": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group WithAmpAndCloudflare",
|
||||
"test-integration-withsccss": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group WithSCCSS",
|
||||
"test-integration-withwoo": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group WithWoo",
|
||||
"test-integration-wpengine": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group WPEngine",
|
||||
"test-integration-spinupwp": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group SpinUpWP",
|
||||
"test-integration-wpcom": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group WordPressCom",
|
||||
"test-integration-pdfembedder": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group PDFEmbedder",
|
||||
"test-integration-pdfembedderpremium": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group PDFEmbedderPremium",
|
||||
"test-integration-pdfembeddersecure": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group PDFEmbedderSecure",
|
||||
"test-integration-o2switch": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group O2Switch",
|
||||
"test-integration-dreampress": "\"vendor/bin/phpunit\" --testsuite integration --colors=always --configuration tests/Integration/phpunit.xml.dist --group Dreampress",
|
||||
"run-tests": [
|
||||
"@test-unit",
|
||||
"@test-integration",
|
||||
"@test-integration-adminonly",
|
||||
"@test-integration-cloudflare",
|
||||
"@test-integration-bb",
|
||||
"@test-integration-elementor",
|
||||
"@test-integration-hummingbird",
|
||||
"@test-integration-withamp",
|
||||
"@test-integration-withampcloudflare",
|
||||
"@test-integration-withsccss",
|
||||
"@test-integration-withsmush",
|
||||
"@test-integration-withwoo",
|
||||
"@test-integration-pdfembedder",
|
||||
"@test-integration-pdfembedderpremium",
|
||||
"@test-integration-pdfembeddersecure",
|
||||
"@test-integration-multisite",
|
||||
"@test-integration-cloudways",
|
||||
"@test-integration-wpengine",
|
||||
"@test-integration-spinupwp",
|
||||
"@test-integration-wpcom",
|
||||
"@test-integration-o2switch",
|
||||
"@test-integration-dreampress"
|
||||
],
|
||||
"run-stan":"vendor/bin/phpstan analyze --memory-limit=2G --no-progress",
|
||||
"install-codestandards": "Dealerdirect\\Composer\\Plugin\\Installers\\PHPCodeSniffer\\Plugin::run",
|
||||
"phpcs": "phpcs --basepath=.",
|
||||
"phpcs-changed": "./bin/phpcs-changed.sh",
|
||||
"phpcs:fix": "phpcbf",
|
||||
"post-install-cmd": [
|
||||
"\"vendor/bin/mozart\" compose",
|
||||
"composer dump-autoload"
|
||||
],
|
||||
"post-update-cmd": [
|
||||
"\"vendor/bin/mozart\" compose",
|
||||
"composer dump-autoload"
|
||||
]
|
||||
}
|
||||
}
|
4551
wp-content/plugins/wp-rocket/composer.lock
generated
Normal file
21
wp-content/plugins/wp-rocket/contributors.txt
Normal file
@@ -0,0 +1,21 @@
|
||||
This file contains a list of people who have made large contributions to WP Rocket.
|
||||
|
||||
Developers:
|
||||
Jonathan Buttigieg <jonathan@wp-rocket.me>
|
||||
Remy Perona <remy@wp-rocket.me>
|
||||
Arun Basil Lal <arun@wp-rocket.me>
|
||||
Cristina Soponar <cristina@wp-media.me>
|
||||
Tonya Mork <tonya@wp-media.me>
|
||||
Ahmed Saeed <ahmed@wp-media.me>
|
||||
Caspar Green <caspar.g@wp-media.me>
|
||||
|
||||
QA:
|
||||
David Acuna <david@wp-media.me>
|
||||
|
||||
UX:
|
||||
Caspar Hübinger
|
||||
Thomas Geisen
|
||||
|
||||
Previous contributors:
|
||||
Julio Potier
|
||||
Gregory Viguier
|
89
wp-content/plugins/wp-rocket/inc/3rd-party/3rd-party.php
vendored
Normal file
@@ -0,0 +1,89 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( class_exists( 'FlywheelNginxCompat' ) ) {
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'hosting/flywheel.php';
|
||||
}
|
||||
|
||||
if ( defined( 'DB_HOST' ) && strpos( DB_HOST, '.wpserveur.net' ) !== false ) {
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'hosting/wp-serveur.php';
|
||||
}
|
||||
|
||||
if ( rocket_is_plugin_active( 'sg-cachepress/sg-cachepress.php' ) ) {
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'hosting/siteground.php';
|
||||
}
|
||||
|
||||
if ( class_exists( 'WPaaS\Plugin' ) ) {
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'hosting/godaddy.php';
|
||||
}
|
||||
|
||||
if ( isset( $_SERVER['KINSTA_CACHE_ZONE'] ) ) {
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'hosting/kinsta.php';
|
||||
}
|
||||
|
||||
if ( defined( 'PL_INSTANCE_REF' ) && class_exists( '\Presslabs\Cache\CacheHandler' ) && file_exists( WP_CONTENT_DIR . '/advanced-cache.php' ) ) {
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'hosting/presslabs.php';
|
||||
}
|
||||
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'hosting/pagely.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'hosting/nginx.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'hosting/pressidium.php';
|
||||
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/geotargetingwp.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/slider/layerslider.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/slider/meta-slider.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/slider/soliloquy.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/i18n/wpml.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/i18n/polylang.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/ecommerce/aelia-currencyswitcher.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/ecommerce/aelia-prices-by-country.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/ecommerce/aelia-tax-display-by-country.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/ecommerce/woocommerce-multilingual.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/ecommerce/woocommerce-currency-converter-widget.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/ecommerce/edd-software-licencing.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/ecommerce/easy-digital-downloads.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/ecommerce/ithemes-exchange.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/ecommerce/jigoshop.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/ecommerce/wpshop.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/ecommerce/give.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/age-verify.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/autoptimize.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/envira-gallery.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/cookies/cookie-notice.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/cookies/uk-cookie-consent.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/cookies/eu-cookie-law.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/cookies/weepie-cookie-allow.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/cookies/gdpr.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/rating/kk-star-ratings.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/rating/wp-postratings.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/wp-print.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/buddypress.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/disqus.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/custom-login.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/mobile/wp-appkit.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/seo/seopress.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/seo/rank-math-seo.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/seo/yoast-seo.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/seo/the-seo-framework.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/seo/all-in-one-seo-pack.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/seo/premium-seo-pack.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/wp-rest-api.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/page-builder/thrive-visual-editor.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/page-builder/visual-composer.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/security/secupress.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/security/sf-move-login.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/security/wps-hide-login.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/varnish-http-purge.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/thrive-leads.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/mailchimp.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/advanced-custom-fields.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/wp-offload-s3.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/wp-offload-s3-assets.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/s2member.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/sumome.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'plugins/nginx-helper.php';
|
||||
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'themes/avada.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'themes/studiopress.php';
|
||||
require WP_ROCKET_3RD_PARTY_PATH . 'themes/uncode.php';
|
80
wp-content/plugins/wp-rocket/inc/3rd-party/hosting/flywheel.php
vendored
Normal file
@@ -0,0 +1,80 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Changes the text on the Varnish one-click block.
|
||||
*
|
||||
* @since 3.0
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param array $settings Field settings data.
|
||||
*
|
||||
* @return array modified field settings data.
|
||||
*/
|
||||
function rocket_flywheel_varnish_field( $settings ) {
|
||||
$settings['varnish_auto_purge']['title'] = sprintf(
|
||||
// Translators: %s = Hosting name.
|
||||
__( 'Your site is hosted on %s, we have enabled Varnish auto-purge for compatibility.', 'rocket' ),
|
||||
'Flywheel'
|
||||
);
|
||||
|
||||
return $settings;
|
||||
}
|
||||
add_filter( 'rocket_varnish_field_settings', 'rocket_flywheel_varnish_field' );
|
||||
|
||||
add_filter( 'rocket_display_input_varnish_auto_purge', '__return_false' );
|
||||
|
||||
/**
|
||||
* Allow to purge Varnish on Flywheel websites
|
||||
*
|
||||
* @since 2.6.8
|
||||
*/
|
||||
add_filter( 'do_rocket_varnish_http_purge', '__return_true' );
|
||||
add_filter( 'do_rocket_generate_caching_files', '__return_false' );
|
||||
|
||||
// Prevent mandatory cookies on hosting with server cache.
|
||||
add_filter( 'rocket_cache_mandatory_cookies', '__return_empty_array', PHP_INT_MAX );
|
||||
|
||||
/**
|
||||
* Set up the right Varnish IP for Flywheel
|
||||
*
|
||||
* @since 2.6.8
|
||||
* @param array $varnish_ip Varnish IP.
|
||||
*/
|
||||
function rocket_varnish_ip_on_flywheel( $varnish_ip ) {
|
||||
$varnish_ip[] = '127.0.0.1';
|
||||
|
||||
return $varnish_ip;
|
||||
}
|
||||
add_filter( 'rocket_varnish_ip', 'rocket_varnish_ip_on_flywheel' );
|
||||
|
||||
/**
|
||||
* Remove WP Rocket functions on WP core action hooks to prevent triggering a double cache clear.
|
||||
*
|
||||
* @since 3.3.1
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function rocket_flywheel_remove_partial_purge_hooks() {
|
||||
// WP core action hooks rocket_clean_post() gets hooked into.
|
||||
$clean_post_hooks = [
|
||||
// Disables the refreshing of partial cache when content is edited.
|
||||
'wp_trash_post',
|
||||
'delete_post',
|
||||
'clean_post_cache',
|
||||
'wp_update_comment_count',
|
||||
];
|
||||
|
||||
// Remove rocket_clean_post() from core action hooks.
|
||||
array_map(
|
||||
function( $hook ) {
|
||||
remove_action( $hook, 'rocket_clean_post' );
|
||||
},
|
||||
$clean_post_hooks
|
||||
);
|
||||
|
||||
remove_filter( 'rocket_clean_files', 'rocket_clean_files_users' );
|
||||
}
|
||||
add_action( 'wp_rocket_loaded', 'rocket_flywheel_remove_partial_purge_hooks' );
|
130
wp-content/plugins/wp-rocket/inc/3rd-party/hosting/godaddy.php
vendored
Normal file
@@ -0,0 +1,130 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Changes the text on the Varnish one-click block.
|
||||
*
|
||||
* @since 3.0
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param array $settings Field settings data.
|
||||
*
|
||||
* @return array modified field settings data.
|
||||
*/
|
||||
function rocket_godaddy_varnish_field( $settings ) {
|
||||
$settings['varnish_auto_purge']['title'] = sprintf(
|
||||
// Translators: %s = Hosting name.
|
||||
__( 'Your site is hosted on %s, we have enabled Varnish auto-purge for compatibility.', 'rocket' ),
|
||||
'GoDaddy'
|
||||
);
|
||||
|
||||
return $settings;
|
||||
}
|
||||
add_filter( 'rocket_varnish_field_settings', 'rocket_godaddy_varnish_field' );
|
||||
|
||||
add_filter( 'rocket_display_input_varnish_auto_purge', '__return_false' );
|
||||
|
||||
add_filter( 'set_rocket_wp_cache_define', '__return_true' );
|
||||
// Prevent mandatory cookies on hosting with server cache.
|
||||
add_filter( 'rocket_cache_mandatory_cookies', '__return_empty_array', PHP_INT_MAX );
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false' );
|
||||
|
||||
/**
|
||||
* Remove expiration on HTML to prevent issue with Varnish cache.
|
||||
*
|
||||
* @since 2.9.5
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param string $rules htaccess rules.
|
||||
* @return string Updated htaccess rules.
|
||||
*/
|
||||
function rocket_remove_html_expire_goddady( $rules ) {
|
||||
$rules = preg_replace( '@\s*#\s*Your document html@', '', $rules );
|
||||
$rules = preg_replace( '@\s*ExpiresByType text/html\s*"access plus \d+ (seconds|minutes|hour|week|month|year)"@', '', $rules );
|
||||
|
||||
return $rules;
|
||||
}
|
||||
add_filter( 'rocket_htaccess_mod_expires', 'rocket_remove_html_expire_goddady', 5 );
|
||||
|
||||
/**
|
||||
* Call the Varnish server to purge the cache with GoDaddy.
|
||||
*
|
||||
* @since 2.9.5
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function rocket_clean_domain_godaddy() {
|
||||
rocket_godaddy_request( 'BAN' );
|
||||
}
|
||||
add_action( 'before_rocket_clean_domain', 'rocket_clean_domain_godaddy' );
|
||||
|
||||
/**
|
||||
* Call the Varnish server to purge a specific URL with GoDaddy.
|
||||
*
|
||||
* @since 2.9.5
|
||||
*
|
||||
* @param string $url URL to purge.
|
||||
* @return void
|
||||
*/
|
||||
function rocket_clean_file_godaddy( $url ) {
|
||||
rocket_godaddy_request( 'PURGE', home_url( $url ) );
|
||||
}
|
||||
add_action( 'before_rocket_clean_file', 'rocket_clean_file_godaddy' );
|
||||
|
||||
/**
|
||||
* Call the Varnish server to purge the home with GoDaddy.
|
||||
*
|
||||
* @since 2.9.5
|
||||
*
|
||||
* @param string $root root URL.
|
||||
* @param string $lang language code.
|
||||
* @return void
|
||||
*/
|
||||
function rocket_clean_home_godaddy( $root, $lang ) {
|
||||
$home_url = trailingslashit( get_rocket_i18n_home_url( $lang ) );
|
||||
$home_pagination_url = $home_url . trailingslashit( $GLOBALS['wp_rewrite']->pagination_base );
|
||||
|
||||
rocket_godaddy_request( 'PURGE', $home_url );
|
||||
rocket_godaddy_request( 'PURGE', $home_pagination_url );
|
||||
}
|
||||
add_action( 'before_rocket_clean_home', 'rocket_clean_home_godaddy', 10, 2 );
|
||||
|
||||
/**
|
||||
* Perform the call to the Varnish server to purge
|
||||
*
|
||||
* @since 2.9.5
|
||||
* @source WPaaS\Cache
|
||||
*
|
||||
* @param string $method can be BAN or PURGE.
|
||||
* @param string $url URL to purge.
|
||||
* @return void
|
||||
*/
|
||||
function rocket_godaddy_request( $method, $url = null ) {
|
||||
if ( ! method_exists( 'WPass\Plugin', 'vip' ) ) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ( empty( $url ) ) {
|
||||
$url = home_url();
|
||||
}
|
||||
|
||||
$host = rocket_extract_url_component( $url, PHP_URL_HOST );
|
||||
$url = set_url_scheme( str_replace( $host, WPaas\Plugin::vip(), $url ), 'http' );
|
||||
|
||||
wp_cache_flush();
|
||||
|
||||
// This forces the APC cache to flush across the server.
|
||||
update_option( 'gd_system_last_cache_flush', time() );
|
||||
|
||||
wp_remote_request(
|
||||
esc_url_raw( $url ),
|
||||
[
|
||||
'method' => $method,
|
||||
'blocking' => false,
|
||||
'headers' => [
|
||||
'Host' => $host,
|
||||
],
|
||||
]
|
||||
);
|
||||
}
|
166
wp-content/plugins/wp-rocket/inc/3rd-party/hosting/kinsta.php
vendored
Normal file
@@ -0,0 +1,166 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
add_filter( 'do_rocket_generate_caching_files', '__return_false', PHP_INT_MAX );
|
||||
add_filter( 'rocket_display_varnish_options_tab', '__return_false' );
|
||||
// Prevent mandatory cookies on hosting with server cache.
|
||||
add_filter( 'rocket_cache_mandatory_cookies', '__return_empty_array', PHP_INT_MAX );
|
||||
|
||||
global $kinsta_cache;
|
||||
|
||||
if ( isset( $kinsta_cache ) && class_exists( '\\Kinsta\\CDN_Enabler' ) ) {
|
||||
/**
|
||||
* Clear Kinsta cache when clearing WP Rocket cache
|
||||
*
|
||||
* @since 3.0
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function rocket_clean_kinsta_cache() {
|
||||
global $kinsta_cache;
|
||||
|
||||
if ( ! empty( $kinsta_cache->kinsta_cache_purge ) ) {
|
||||
$kinsta_cache->kinsta_cache_purge->purge_complete_caches();
|
||||
}
|
||||
}
|
||||
add_action( 'after_rocket_clean_domain', 'rocket_clean_kinsta_cache' );
|
||||
|
||||
/**
|
||||
* Partially clear Kinsta cache when partially clearing WP Rocket cache
|
||||
*
|
||||
* @since 3.0
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param object $post Post object.
|
||||
* @return void
|
||||
*/
|
||||
function rocket_clean_kinsta_post_cache( $post ) {
|
||||
global $kinsta_cache;
|
||||
$kinsta_cache->kinsta_cache_purge->initiate_purge( $post->ID, 'post' );
|
||||
}
|
||||
add_action( 'after_rocket_clean_post', 'rocket_clean_kinsta_post_cache' );
|
||||
|
||||
/**
|
||||
* Clears Kinsta cache for the homepage URL when using "Purge this URL" from the admin bar on the front end
|
||||
*
|
||||
* @since 3.0.4
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param string $root WP Rocket root cache path.
|
||||
* @param string $lang Current language.
|
||||
* @return void
|
||||
*/
|
||||
function rocket_clean_kinsta_cache_home( $root = '', $lang = '' ) {
|
||||
$url = get_rocket_i18n_home_url( $lang );
|
||||
$url = trailingslashit( $url ) . 'kinsta-clear-cache/';
|
||||
|
||||
wp_remote_get(
|
||||
$url,
|
||||
[
|
||||
'blocking' => false,
|
||||
'timeout' => 0.01,
|
||||
]
|
||||
);
|
||||
}
|
||||
add_action( 'after_rocket_clean_home', 'rocket_clean_kinsta_cache_home', 10, 2 );
|
||||
|
||||
/**
|
||||
* Clears Kinsta cache for a specific URL when using "Purge this URL" from the admin bar on the front end
|
||||
*
|
||||
* @since 3.0.4
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param string $url URL to purge.
|
||||
* @return void
|
||||
*/
|
||||
function rocket_clean_kinsta_cache_url( $url ) {
|
||||
$url = trailingslashit( $url ) . 'kinsta-clear-cache/';
|
||||
|
||||
wp_remote_get(
|
||||
$url,
|
||||
[
|
||||
'blocking' => false,
|
||||
'timeout' => 0.01,
|
||||
]
|
||||
);
|
||||
}
|
||||
add_action( 'after_rocket_clean_file', 'rocket_clean_kinsta_cache_url' );
|
||||
|
||||
/**
|
||||
* Remove WP Rocket functions on WP core action hooks to prevent triggering a double cache clear.
|
||||
*
|
||||
* @since 3.0
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function rocket_remove_partial_purge_hooks() {
|
||||
// WP core action hooks rocket_clean_post() gets hooked into.
|
||||
$clean_post_hooks = [
|
||||
// Disables the refreshing of partial cache when content is edited.
|
||||
'wp_trash_post',
|
||||
'delete_post',
|
||||
'clean_post_cache',
|
||||
'wp_update_comment_count',
|
||||
];
|
||||
|
||||
// Remove rocket_clean_post() from core action hooks.
|
||||
array_map(
|
||||
function( $hook ) {
|
||||
remove_action( $hook, 'rocket_clean_post' );
|
||||
},
|
||||
$clean_post_hooks
|
||||
);
|
||||
|
||||
remove_filter( 'rocket_clean_files', 'rocket_clean_files_users' );
|
||||
}
|
||||
add_action( 'wp_rocket_loaded', 'rocket_remove_partial_purge_hooks' );
|
||||
|
||||
if ( \Kinsta\CDN_Enabler::cdn_is_enabled() ) {
|
||||
/**
|
||||
* Add Kinsta CDN to WP Rocket CDN hosts list if enabled
|
||||
*
|
||||
* @since 3.0
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param Array $hosts Array of CDN hosts.
|
||||
* @return Array Updated array of CDN hosts
|
||||
*/
|
||||
function rocket_add_kinsta_cdn_cname( $hosts ) {
|
||||
if ( ! isset( $_SERVER['KINSTA_CDN_DOMAIN'] ) ) {
|
||||
return $hosts;
|
||||
}
|
||||
|
||||
$hosts[] = sanitize_text_field( wp_unslash( $_SERVER['KINSTA_CDN_DOMAIN'] ) );
|
||||
|
||||
return $hosts;
|
||||
}
|
||||
add_filter( 'rocket_cdn_cnames', 'rocket_add_kinsta_cdn_cname', 1 );
|
||||
}
|
||||
} else {
|
||||
add_action(
|
||||
'admin_notices',
|
||||
function() {
|
||||
if ( ! current_user_can( 'manage_options' ) ) {
|
||||
return;
|
||||
}
|
||||
|
||||
$screen = get_current_screen();
|
||||
|
||||
if ( 'settings_page_wprocket' !== $screen->id ) {
|
||||
return;
|
||||
}
|
||||
|
||||
rocket_notice_html(
|
||||
[
|
||||
'status' => 'error',
|
||||
'dismissible' => '',
|
||||
// translators: %1$s = opening link tag, %2$s = closing link tag.
|
||||
'message' => sprintf( __( 'Your installation seems to be missing core Kinsta files managing Cache clearing and CDN, which will prevent your Kinsta installation and WP Rocket from working correctly. Please get in touch with Kinsta support through your %1$sMyKinsta%2$s account to resolve this issue.', 'rocket' ), '<a href="https://my.kinsta.com/login/" target="_blank">', '</a>' ),
|
||||
]
|
||||
);
|
||||
}
|
||||
);
|
||||
}
|
24
wp-content/plugins/wp-rocket/inc/3rd-party/hosting/nginx.php
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Compatibility with an usual NGINX configuration which include:
|
||||
* try_files $uri $uri/ /index.php?q=$uri&$args
|
||||
*
|
||||
* @since 2.3.9
|
||||
*
|
||||
* @param array $query_strings Array of query strings to cache.
|
||||
*
|
||||
* @return array Updated array of query strings.
|
||||
*/
|
||||
function rocket_better_nginx_compatibility( $query_strings ) {
|
||||
global $is_nginx;
|
||||
|
||||
if ( $is_nginx ) {
|
||||
$query_strings[] = 'q';
|
||||
}
|
||||
|
||||
return $query_strings;
|
||||
}
|
||||
add_filter( 'rocket_cache_query_strings', 'rocket_better_nginx_compatibility' );
|
31
wp-content/plugins/wp-rocket/inc/3rd-party/hosting/pagely.php
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Clear WP Rocket cache after purged the Varnish cache via Pagely hosting.
|
||||
*
|
||||
* @since 2.5.7
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function rocket_clear_cache_after_pagely() {
|
||||
// Clear all caching files.
|
||||
rocket_clean_domain();
|
||||
}
|
||||
add_action( 'pagely_cache_purge_after', 'rocket_clear_cache_after_pagely' );
|
||||
|
||||
/**
|
||||
* Call the cache server to purge the cache with Pagely hosting.
|
||||
*
|
||||
* @since 2.5.7
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function rocket_clean_pagely() {
|
||||
if ( class_exists( 'PagelyCachePurge' ) ) {
|
||||
$purger = new PagelyCachePurge();
|
||||
$purger->purgeAll();
|
||||
}
|
||||
}
|
||||
add_action( 'after_rocket_clean_domain', 'rocket_clean_pagely' );
|
61
wp-content/plugins/wp-rocket/inc/3rd-party/hosting/pressidium.php
vendored
Normal file
@@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( defined( 'WP_NINUKIS_WP_NAME' ) ) {
|
||||
/**
|
||||
* Changes the text on the Varnish one-click block.
|
||||
*
|
||||
* @since 3.0
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param array $settings Field settings data.
|
||||
*
|
||||
* @return array modified field settings data.
|
||||
*/
|
||||
function rocket_pressidium_varnish_field( $settings ) {
|
||||
// Translators: %s = Hosting name.
|
||||
$settings['varnish_auto_purge']['title'] = sprintf( __( 'Your site is hosted on %s, we have enabled Varnish auto-purge for compatibility.', 'rocket' ), 'Pressidium' );
|
||||
|
||||
return $settings;
|
||||
}
|
||||
add_filter( 'rocket_varnish_field_settings', 'rocket_pressidium_varnish_field' );
|
||||
|
||||
add_filter( 'rocket_display_input_varnish_auto_purge', '__return_false' );
|
||||
// Prevent mandatory cookies on hosting with server cache.
|
||||
add_filter( 'rocket_cache_mandatory_cookies', '__return_empty_array', PHP_INT_MAX );
|
||||
|
||||
/**
|
||||
* Clear WP Rocket cache after purged the Varnish cache via Pressidium Hosting
|
||||
*
|
||||
* @since 2.5.11
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function rocket_clear_cache_after_pressidium() {
|
||||
if ( isset( $_POST['purge-all'] ) && current_user_can( 'manage_options' ) && check_admin_referer( WP_NINUKIS_WP_NAME . '-caching' ) ) {
|
||||
// Clear all caching files.
|
||||
rocket_clean_domain();
|
||||
|
||||
// Preload cache.
|
||||
run_rocket_bot();
|
||||
run_rocket_sitemap_preload();
|
||||
}
|
||||
}
|
||||
add_action( 'admin_init', 'rocket_clear_cache_after_pressidium' );
|
||||
}
|
||||
|
||||
if ( class_exists( 'Ninukis_Plugin' ) ) {
|
||||
/**
|
||||
* Call the cache server to purge the cache with Pressidium hosting.
|
||||
*
|
||||
* @since 2.6
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function rocket_clean_pressidium() {
|
||||
$plugin = Ninukis_Plugin::get_instance();
|
||||
$plugin->purgeAllCaches();
|
||||
}
|
||||
add_action( 'after_rocket_clean_domain', 'rocket_clean_pressidium' );
|
||||
}
|
98
wp-content/plugins/wp-rocket/inc/3rd-party/hosting/presslabs.php
vendored
Normal file
@@ -0,0 +1,98 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
require_once WP_CONTENT_DIR . '/advanced-cache.php';
|
||||
|
||||
add_action( 'pl_pre_cache_refresh', 'rocket_clean_files', 0 );
|
||||
add_filter( 'rocket_display_varnish_options_tab', '__return_false' );
|
||||
add_filter( 'do_rocket_generate_caching_files', '__return_false', PHP_INT_MAX );
|
||||
add_filter( 'rocket_cache_mandatory_cookies', '__return_empty_array', PHP_INT_MAX );
|
||||
add_action( 'after_rocket_clean_home', 'rocket_pl_clean_home', 10, 2 );
|
||||
add_action( 'after_rocket_clean_file', 'rocket_pl_clean_post', 2 );
|
||||
add_action( 'pl_pre_url_button_cache_refresh', 'rocket_clean_files' );
|
||||
add_action( 'wp_rocket_loaded', 'rocket_remove_partial_purge_hooks' );
|
||||
|
||||
/**
|
||||
* We clear the cache only on the post, homepage and listings when creating/updating/deleting posts.
|
||||
*
|
||||
* @since 3.3
|
||||
*
|
||||
* @param object $post The Post object itself for which the action occured.
|
||||
* @param array $permalink A list of permalinks to be flushed from cache.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function rocket_pl_clean_post( $post = false, $permalink = false ) {
|
||||
if ( ! $post || ! $permalink ) {
|
||||
return;
|
||||
}
|
||||
|
||||
$cache_handler = new \Presslabs\Cache\CacheHandler();
|
||||
|
||||
$cache_handler->invalidate_url( $permalink[0], true );
|
||||
$cache_handler->invalidate_url( home_url( '/' ), true );
|
||||
$cache_handler->purge_cache( 'listing' );
|
||||
}
|
||||
|
||||
/**
|
||||
* We clear the cache for the homepage URL when using "Purge this URL" from the admin bar on the front end.
|
||||
*
|
||||
* @since 3.3
|
||||
*
|
||||
* @param string $root WP Rocket root cache path.
|
||||
* @param string $lang Current language.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function rocket_pl_clean_home( $root = false, $lang = false ) {
|
||||
if ( ! $post || ! $permalink ) {
|
||||
return;
|
||||
}
|
||||
|
||||
$cache_handler = new \Presslabs\Cache\CacheHandler();
|
||||
$cache_handler->invalidate_url( home_url( '/' ), true );
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove WP Rocket functions on WP core action hooks to prevent triggering a double cache clear.
|
||||
*
|
||||
* @since 3.3
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function rocket_remove_partial_purge_hooks() {
|
||||
// WP core action hooks rocket_clean_post() gets hooked into.
|
||||
$clean_post_hooks = [
|
||||
// Disables the refreshing of partial cache when content is edited.
|
||||
'wp_trash_post',
|
||||
'delete_post',
|
||||
'clean_post_cache',
|
||||
'wp_update_comment_count',
|
||||
];
|
||||
// Remove rocket_clean_post() from core action hooks.
|
||||
array_map(
|
||||
function( $hook ) {
|
||||
remove_action( $hook, 'rocket_clean_post' );
|
||||
},
|
||||
$clean_post_hooks
|
||||
);
|
||||
remove_filter( 'rocket_clean_files', 'rocket_clean_files_users' );
|
||||
}
|
||||
|
||||
if ( ! defined( 'DISABLE_CDN_OFFLOAD' ) && defined( 'PL_CDN_HOST' ) ) {
|
||||
/**
|
||||
* If we have CDN enabled we'll add our HOST to the list.
|
||||
*
|
||||
* @since 3.3
|
||||
*
|
||||
* @param array $hosts Array of CDN hosts.
|
||||
*
|
||||
* @return array Updated array of CDN hosts
|
||||
*/
|
||||
function rocket_add_pl_cdn( $hosts ) {
|
||||
$hosts[] = constant( 'PL_CDN_HOST' );
|
||||
return $hosts;
|
||||
}
|
||||
add_filter( 'rocket_cdn_cnames', 'rocket_add_pl_cdn', 1 );
|
||||
}
|
87
wp-content/plugins/wp-rocket/inc/3rd-party/hosting/siteground.php
vendored
Normal file
@@ -0,0 +1,87 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Returns the current version of the SG Optimizer plugin.
|
||||
*
|
||||
* @since 3.2.3.1
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @return string version number.
|
||||
*/
|
||||
function rocket_get_sg_optimizer_version() {
|
||||
static $version;
|
||||
|
||||
if ( isset( $version ) ) {
|
||||
return $version;
|
||||
}
|
||||
|
||||
$sg_optimizer = get_file_data( WP_PLUGIN_DIR . '/sg-cachepress/sg-cachepress.php', [ 'Version' => 'Version' ] );
|
||||
$version = $sg_optimizer['Version'];
|
||||
|
||||
return $version;
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if SG Optimizer Supercache is active.
|
||||
*
|
||||
* @since 3.2.3.1
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
function rocket_is_supercacher_active() {
|
||||
if ( ! version_compare( rocket_get_sg_optimizer_version(), '5.0' ) < 0 ) {
|
||||
global $sg_cachepress_environment;
|
||||
|
||||
return isset( $sg_cachepress_environment ) && $sg_cachepress_environment instanceof SG_CachePress_Environment && $sg_cachepress_environment->cache_is_enabled();
|
||||
}
|
||||
|
||||
return (bool) get_option( 'siteground_optimizer_enable_cache', 0 );
|
||||
}
|
||||
|
||||
/**
|
||||
* Call the cache server to purge the cache with SuperCacher (SiteGround).
|
||||
*
|
||||
* @since 2.3
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function rocket_clean_supercacher() {
|
||||
if ( ! rocket_is_supercacher_active() ) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ( ! version_compare( rocket_get_sg_optimizer_version(), '5.0' ) < 0 ) {
|
||||
SiteGround_Optimizer\Supercacher\Supercacher::purge_cache();
|
||||
} elseif ( isset( $sg_cachepress_supercacher ) && $sg_cachepress_supercacher instanceof SG_CachePress_Supercacher ) {
|
||||
$sg_cachepress_supercacher->purge_cache();
|
||||
}
|
||||
}
|
||||
|
||||
if ( rocket_is_supercacher_active() ) {
|
||||
add_action( 'admin_post_sg-cachepress-purge', 'rocket_clean_domain', 0 );
|
||||
add_action( 'after_rocket_clean_domain', 'rocket_clean_supercacher' );
|
||||
add_filter( 'rocket_display_varnish_options_tab', '__return_false' );
|
||||
// Prevent mandatory cookies on hosting with server cache.
|
||||
add_filter( 'rocket_cache_mandatory_cookies', '__return_empty_array', PHP_INT_MAX );
|
||||
|
||||
/**
|
||||
* Force WP Rocket caching on SG Optimizer versions before 4.0.5.
|
||||
*
|
||||
* @since 3.0.4
|
||||
* @author Arun Basil Lal
|
||||
*
|
||||
* @link https://github.com/wp-media/wp-rocket/issues/925
|
||||
*/
|
||||
if ( version_compare( rocket_get_sg_optimizer_version(), '4.0.5' ) < 0 ) {
|
||||
add_filter( 'do_rocket_generate_caching_files', '__return_true', 11 );
|
||||
}
|
||||
|
||||
if ( version_compare( rocket_get_sg_optimizer_version(), '5.0' ) < 0 ) {
|
||||
add_action( 'wp_ajax_sg-cachepress-purge', 'rocket_clean_domain', 0 );
|
||||
} else {
|
||||
add_action( 'wp_ajax_admin_bar_purge_cache', 'rocket_clean_domain', 0 );
|
||||
}
|
||||
}
|
35
wp-content/plugins/wp-rocket/inc/3rd-party/hosting/wp-serveur.php
vendored
Normal file
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Allow to purge Varnish on WP Serveur websites.
|
||||
*
|
||||
* @since 2.6.11
|
||||
*/
|
||||
add_filter( 'do_rocket_varnish_http_purge', '__return_true' );
|
||||
// Prevent mandatory cookies on hosting with server cache.
|
||||
add_filter( 'rocket_cache_mandatory_cookies', '__return_empty_array', PHP_INT_MAX );
|
||||
|
||||
/**
|
||||
* Changes the text on the Varnish one-click block.
|
||||
*
|
||||
* @since 3.0
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param array $settings Field settings data.
|
||||
*
|
||||
* @return array modified field settings data.
|
||||
*/
|
||||
function rocket_wpserveur_varnish_field( $settings ) {
|
||||
$settings['varnish_auto_purge']['title'] = sprintf(
|
||||
// Translators: %s = Hosting name.
|
||||
__( 'Your site is hosted on %s, we have enabled Varnish auto-purge for compatibility.', 'rocket' ),
|
||||
'WP Serveur'
|
||||
);
|
||||
|
||||
return $settings;
|
||||
}
|
||||
add_filter( 'rocket_varnish_field_settings', 'rocket_wpserveur_varnish_field' );
|
||||
|
||||
add_filter( 'rocket_display_input_varnish_auto_purge', '__return_false' );
|
18
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/advanced-custom-fields.php
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Clear cache when ACF options page is updated.
|
||||
*
|
||||
* @since 2.10.7
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param string $post_id ACF options page ID is 'options'.
|
||||
*/
|
||||
function rocket_clear_cache_on_acf_options_save( $post_id ) {
|
||||
if ( 'options' === $post_id ) {
|
||||
rocket_clean_domain();
|
||||
}
|
||||
}
|
||||
add_action( 'acf/save_post', 'rocket_clear_cache_on_acf_options_save' );
|
59
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/age-verify.php
vendored
Normal file
@@ -0,0 +1,59 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Conflict with Age Verify: don't cache pages until the age-verified cookie is set
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
if ( class_exists( 'Age_Verify' ) && defined( 'Age_Verify::SLUG' ) ) :
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 18 );
|
||||
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_cache_mandatory_cookie_for_age_verify' );
|
||||
endif;
|
||||
|
||||
/**
|
||||
* Add age-verified to the list of mandatory cookies
|
||||
*
|
||||
* @since 2.7
|
||||
*
|
||||
* @param Array $cookies Array of mandatory cookies.
|
||||
* @return Array Updated array of mandatory cookies
|
||||
*/
|
||||
function rocket_add_cache_mandatory_cookie_for_age_verify( $cookies ) {
|
||||
$cookies[] = 'age-verified';
|
||||
return $cookies;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add age-verified cookie when we activate the plugin
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
function rocket_activate_age_verify() {
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 18 );
|
||||
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_cache_mandatory_cookie_for_age_verify' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'activate_age-verify/age-verify.php', 'rocket_activate_age_verify', 11 );
|
||||
|
||||
/**
|
||||
* Remove age-verified cookie when we deactivate the plugin
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
function rocket_deactivate_age_verify() {
|
||||
remove_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_cache_mandatory_cookie_for_age_verify' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'deactivate_age-verify/age-verify.php', 'rocket_deactivate_age_verify', 11 );
|
175
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/autoptimize.php
vendored
Normal file
@@ -0,0 +1,175 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( class_exists( 'autoptimizeCache' ) ) :
|
||||
/**
|
||||
* Improvement with Autoptimize: clear the cache when Autoptimize's cache is cleared
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
add_action( 'autoptimize_action_cachepurged', 'rocket_clean_domain' );
|
||||
endif;
|
||||
|
||||
if ( class_exists( 'autoptimizeConfig' ) ) :
|
||||
/**
|
||||
* Deactivate WP Rocket lazyload if Autoptimize lazyload is enabled
|
||||
*
|
||||
* @since 3.3.4
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param string $old_value Previous autoptimize option value.
|
||||
* @param string $value New autoptimize option value.
|
||||
* @return void
|
||||
*/
|
||||
function rocket_maybe_deactivate_lazyload( $old_value, $value ) {
|
||||
if ( empty( $old_value['autoptimize_imgopt_checkbox_field_3'] ) && ! empty( $value['autoptimize_imgopt_checkbox_field_3'] ) ) {
|
||||
update_rocket_option( 'lazyload', 0 );
|
||||
update_rocket_option( 'lazyload_iframes', 0 );
|
||||
update_rocket_option( 'lazyload_youtube', 0 );
|
||||
}
|
||||
}
|
||||
add_action( 'update_option_autoptimize_imgopt_settings', 'rocket_maybe_deactivate_lazyload', 10, 2 );
|
||||
|
||||
/**
|
||||
* Deactivate WP Rocket CSS Minification if Autoptimize CSS minification is enabled
|
||||
*
|
||||
* @since 2.9.5
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param string $old_value Previous autoptimize option value.
|
||||
* @param string $value New autoptimize option value.
|
||||
*/
|
||||
function rocket_maybe_deactivate_minify_css( $old_value, $value ) {
|
||||
if ( $value !== $old_value && 'on' === $value ) {
|
||||
update_rocket_option( 'minify_css', 0 );
|
||||
update_rocket_option( 'minify_concatenate_css', 0 );
|
||||
}
|
||||
}
|
||||
add_action( 'update_option_autoptimize_css', 'rocket_maybe_deactivate_minify_css', 10, 2 );
|
||||
|
||||
/**
|
||||
* Deactivate WP Rocket JS Minification if Autoptimize JS minification is enabled
|
||||
*
|
||||
* @since 2.9.5
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param string $old_value Previous autoptimize option value.
|
||||
* @param string $value New autoptimize option value.
|
||||
*/
|
||||
function rocket_maybe_deactivate_minify_js( $old_value, $value ) {
|
||||
if ( $value !== $old_value && 'on' === $value ) {
|
||||
update_rocket_option( 'minify_js', 0 );
|
||||
update_rocket_option( 'minify_concatenate_js', 0 );
|
||||
}
|
||||
}
|
||||
add_action( 'update_option_autoptimize_js', 'rocket_maybe_deactivate_minify_js', 10, 2 );
|
||||
|
||||
/**
|
||||
* Deactivate WP Rocket async CSS if Autoptimize async CSS is enabled
|
||||
*
|
||||
* @since 2.10
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param string $old_value Previous autoptimize option value.
|
||||
* @param string $value New autoptimize option value.
|
||||
*/
|
||||
function rocket_maybe_deactivate_css_defer( $old_value, $value ) {
|
||||
if ( $value !== $old_value && 'on' === $value ) {
|
||||
update_rocket_option( 'autoptimize_css_defer', 0 );
|
||||
}
|
||||
}
|
||||
add_action( 'update_option_autoptimize_css_defer', 'rocket_maybe_deactivate_css_defer', 10, 2 );
|
||||
|
||||
endif;
|
||||
|
||||
/**
|
||||
* Disable WP Rocket minification options when activating Autoptimize and values are already in the database.
|
||||
*
|
||||
* @since 2.9.5
|
||||
* @author Remy Perona
|
||||
*/
|
||||
function rocket_activate_autoptimize() {
|
||||
if ( 'on' === get_option( 'autoptimize_css' ) ) {
|
||||
update_rocket_option( 'minify_css', 0 );
|
||||
update_rocket_option( 'minify_concatenate_css', 0 );
|
||||
}
|
||||
|
||||
if ( 'on' === get_option( 'autoptimize_js' ) ) {
|
||||
update_rocket_option( 'minify_js', 0 );
|
||||
update_rocket_option( 'minify_concatenate_js', 0 );
|
||||
}
|
||||
|
||||
if ( 'on' === get_option( 'autoptimize_css_defer' ) ) {
|
||||
update_rocket_option( 'async_css', 0 );
|
||||
}
|
||||
|
||||
$lazyload = get_option( 'autoptimize_imgopt_settings' );
|
||||
|
||||
if ( ! empty( $lazyload['autoptimize_imgopt_checkbox_field_3'] ) ) {
|
||||
update_rocket_option( 'lazyload', 0 );
|
||||
update_rocket_option( 'lazyload_iframes', 0 );
|
||||
update_rocket_option( 'lazyload_youtube', 0 );
|
||||
}
|
||||
}
|
||||
add_action( 'activate_autoptimize/autoptimize.php', 'rocket_activate_autoptimize', 11 );
|
||||
|
||||
/**
|
||||
* Disable WP Rocket lazyload fields if Autoptimize lazyload is enabled
|
||||
*
|
||||
* @since 3.3.4
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
function rocket_maybe_disable_lazyload() {
|
||||
$lazyload = get_option( 'autoptimize_imgopt_settings' );
|
||||
|
||||
if ( is_plugin_active( 'autoptimize/autoptimize.php' ) && ! empty( $lazyload['autoptimize_imgopt_checkbox_field_3'] ) ) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Disable WP Rocket CSS minification field if Autoptimize CSS minification is enabled
|
||||
*
|
||||
* @since 2.9.5
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @return bool|null True if it is active
|
||||
*/
|
||||
function rocket_maybe_disable_minify_css() {
|
||||
if ( is_plugin_active( 'autoptimize/autoptimize.php' ) && 'on' === get_option( 'autoptimize_css' ) ) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Disable WP Rocket JS minification field if Autoptimize JS minification is enabled
|
||||
*
|
||||
* @since 2.9.5
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @return bool|null True if it is active
|
||||
*/
|
||||
function rocket_maybe_disable_minify_js() {
|
||||
if ( is_plugin_active( 'autoptimize/autoptimize.php' ) && 'on' === get_option( 'autoptimize_js' ) ) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Disable WP Rocket async CSS field if Autoptimize async CSS is enabled
|
||||
*
|
||||
* @since 2.10
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @return bool|null True if it is active
|
||||
*/
|
||||
function rocket_maybe_disable_async_css() {
|
||||
if ( is_plugin_active( 'autoptimize/autoptimize.php' ) && 'on' === get_option( 'autoptimize_css_defer' ) ) {
|
||||
return true;
|
||||
}
|
||||
}
|
47
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/buddypress.php
vendored
Normal file
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( class_exists( 'BuddyPress' ) ) :
|
||||
/**
|
||||
* Conflict with BuddyPress: don't apply LazyLoad on BuddyPress profil pages & group creation
|
||||
*
|
||||
* @since 2.8.15 Improve checks for user profile & disable for cover images
|
||||
* @since 2.6.9
|
||||
*/
|
||||
if ( function_exists( 'bp_is_user_profile' ) ) :
|
||||
/**
|
||||
* Prevent lazyload if on a BuddyPress profil page
|
||||
*
|
||||
* @param Bool $run_filter Do lazyload value.
|
||||
* @return Bool False if on a BuddyPress profil page, initial value otherwise
|
||||
*/
|
||||
function rocket_deactivate_lazyload_on_buddypress_profil_pages( $run_filter ) {
|
||||
if ( bp_is_user_profile() ) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return $run_filter;
|
||||
}
|
||||
add_filter( 'do_rocket_lazyload', 'rocket_deactivate_lazyload_on_buddypress_profil_pages' );
|
||||
add_filter( 'do_rocket_lazyload_iframes', 'rocket_deactivate_lazyload_on_buddypress_profil_pages' );
|
||||
endif;
|
||||
|
||||
if ( function_exists( 'bp_is_group_creation_step' ) && function_exists( 'bp_is_group_admin_screen' ) ) :
|
||||
/**
|
||||
* Prevent lazyload if on a BuddyPress group creation page
|
||||
*
|
||||
* @param Bool $run_filter Do lazyload value.
|
||||
* @return Bool False if on a BuddyPress profil page, initial value otherwise
|
||||
*/
|
||||
function rocket_deactivate_lazyload_on_buddypress_group_pages( $run_filter ) {
|
||||
if ( bp_is_group_creation_step( 'group-avatar' ) || bp_is_group_creation_step( 'group-cover-image' ) || bp_is_group_admin_screen( 'group-avatar' ) || bp_is_group_admin_screen( 'group-cover-image' ) ) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return $run_filter;
|
||||
}
|
||||
add_filter( 'do_rocket_lazyload', 'rocket_deactivate_lazyload_on_buddypress_group_pages' );
|
||||
add_filter( 'do_rocket_lazyload_iframes', 'rocket_deactivate_lazyload_on_buddypress_group_pages' );
|
||||
endif;
|
||||
endif;
|
81
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/cookies/cookie-notice.php
vendored
Normal file
@@ -0,0 +1,81 @@
|
||||
<?php
|
||||
/**
|
||||
* Compatibility with Cookie Notice by dFactory.
|
||||
*
|
||||
* @since 2.11.6
|
||||
* @author Arun Basil Lal
|
||||
* @link https://wordpress.org/plugins/cookie-notice/
|
||||
*/
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( class_exists( 'Cookie_Notice' ) ) {
|
||||
// Don't add the WP Rocket rewrite rules to avoid issues.
|
||||
if ( ! class_exists( 'CC4R_options' ) || ! CC4R_options::rewrite_enabled() ) {
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 56 );
|
||||
}
|
||||
// Create cache version based on value set in cookie_notice_accepted cookie.
|
||||
add_filter( 'rocket_cache_dynamic_cookies', 'rocket_get_cookie_notice_cookie' );
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the cookie name set by Cookie Notice plugin.
|
||||
*
|
||||
* @since 2.11.6
|
||||
* @author Arun Basil Lal
|
||||
*
|
||||
* @param array $cookies List of dynamic cookies.
|
||||
* @return array List of dynamic cookies with the Cookie Notice cookie appended.
|
||||
*/
|
||||
function rocket_get_cookie_notice_cookie( $cookies ) {
|
||||
$cookies[] = 'cookie_notice_accepted';
|
||||
return $cookies;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add dynamic cookie and mandatory cookie when Cookie Notice plugin is activated.
|
||||
*
|
||||
* @since 2.11.6
|
||||
* @author Arun Basil Lal
|
||||
*/
|
||||
function rocket_add_cookie_notice_dynamic_cookie() {
|
||||
// Don't add the WP Rocket rewrite rules to avoid issues.
|
||||
if ( ! class_exists( 'CC4R_options' ) || ! CC4R_options::rewrite_enabled() ) {
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 56 );
|
||||
}
|
||||
// Create cache version based on value set in cookie_notice_accepted cookie.
|
||||
add_filter( 'rocket_cache_dynamic_cookies', 'rocket_get_cookie_notice_cookie' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
|
||||
// Clear WP Rocket cache.
|
||||
rocket_clean_domain();
|
||||
}
|
||||
add_action( 'activate_cookie-notice/cookie-notice.php', 'rocket_add_cookie_notice_dynamic_cookie', 11 );
|
||||
|
||||
/**
|
||||
* Remove dynamic cookie when Cookie Notice plugin is deactivated.
|
||||
*
|
||||
* @since 2.11.6
|
||||
* @author Arun Basil Lal
|
||||
*/
|
||||
function rocket_remove_cookie_notice_dynamic_cookie() {
|
||||
if ( ! class_exists( 'CC4R_options' ) || ! CC4R_options::rewrite_enabled() ) {
|
||||
remove_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 56 );
|
||||
}
|
||||
remove_filter( 'rocket_cache_dynamic_cookies', 'rocket_get_cookie_notice_cookie' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
|
||||
// Clear WP Rocket cache.
|
||||
rocket_clean_domain();
|
||||
}
|
||||
add_action( 'deactivate_cookie-notice/cookie-notice.php', 'rocket_remove_cookie_notice_dynamic_cookie', 11 );
|
89
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/cookies/eu-cookie-law.php
vendored
Normal file
@@ -0,0 +1,89 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Compatibility with EU Cookie Law
|
||||
* https://wordpress.org/plugins/eu-cookie-law/
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
if ( function_exists( 'eucookie_start' ) ) :
|
||||
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_eu_cookie_law_mandatory_cookie' );
|
||||
|
||||
/**
|
||||
* Update .htaccess & config files when the "Activate" and "Autoblock" options are turned on
|
||||
*
|
||||
* @since 2.7
|
||||
*
|
||||
* @param Array $old_value Array of previous values.
|
||||
* @param Array $value Array of submitted values.
|
||||
*/
|
||||
function rocket_after_update_eu_cookie_law_options( $old_value, $value ) {
|
||||
if ( ( isset( $old_value['enabled'], $value['enabled'] ) && ( $old_value['enabled'] === $value['enabled'] ) ) && isset( $old_value['autoblock'], $value['autoblock'] ) && $old_value['autoblock'] === $value['autoblock'] ) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Update the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'update_option_peadig_eucookie', 'rocket_after_update_eu_cookie_law_options', 10, 2 );
|
||||
|
||||
// Don't add the WP Rocket rewrite rules to avoid issues.
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 58 );
|
||||
endif;
|
||||
|
||||
/**
|
||||
* Add mandatory cookie when we activate the plugin
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
function rocket_activate_eu_cookie_law() {
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 58 );
|
||||
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_eu_cookie_law_mandatory_cookie' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'activate_eu-cookie-law/eu-cookie-law.php', 'rocket_activate_eu_cookie_law', 11 );
|
||||
|
||||
/**
|
||||
* Remove mandatory cookie when we deactivate the plugin
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
function rocket_deactivate_eu_cookie_law() {
|
||||
remove_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 58 );
|
||||
remove_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_eu_cookie_law_mandatory_cookie' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'deactivate_eu-cookie-law/eu-cookie-law.php', 'rocket_deactivate_eu_cookie_law', 11 );
|
||||
|
||||
/**
|
||||
* Add the EU Cookie Law to the list of mandatory cookies before generating caching files.
|
||||
*
|
||||
* @since 2.7
|
||||
*
|
||||
* @param Array $cookies Array of mandatory cookies.
|
||||
* @return Array Updated array of mandatory cookies
|
||||
*/
|
||||
function rocket_add_eu_cookie_law_mandatory_cookie( $cookies ) {
|
||||
$options = get_option( 'peadig_eucookie' );
|
||||
|
||||
if ( ! empty( $options['enabled'] ) && ! empty( $options['autoblock'] ) ) {
|
||||
$cookies['eu-cookie-law'] = 'euCookie';
|
||||
}
|
||||
|
||||
return $cookies;
|
||||
}
|
87
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/cookies/gdpr.php
vendored
Normal file
@@ -0,0 +1,87 @@
|
||||
<?php
|
||||
/**
|
||||
* Compatibility with GDPR by Trew Knowledge
|
||||
*
|
||||
* @link https://github.com/trewknowledge/GDPR/
|
||||
* @link https://wordpress.org/plugins/gdpr/
|
||||
*/
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( class_exists( 'GDPR' ) ) {
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 60 );
|
||||
// Create cache version based on value set in gdpr[] cookies.
|
||||
add_filter( 'rocket_cache_dynamic_cookies', 'rocket_get_gdpr_dynamic_cookies' );
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the cookie names set by GDPR plugin
|
||||
*
|
||||
* @since 3.1.4
|
||||
* @author jorditarrida
|
||||
*
|
||||
* @param array $cookies array List of dynamic cookies.
|
||||
* @return array List of dynamic cookies with the GDPR cookie appended
|
||||
*/
|
||||
function rocket_get_gdpr_mandatory_cookies( $cookies ) {
|
||||
$cookies[] = 'allowed_cookies';
|
||||
$cookies[] = 'consent_types';
|
||||
return $cookies;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the cookie names set by GDPR plugin
|
||||
*
|
||||
* @since 3.1.4
|
||||
* @author jorditarrida
|
||||
*
|
||||
* @param array $cookies array List of dynamic cookies.
|
||||
* @return array List of dynamic cookies with the GDPR cookie appended
|
||||
*/
|
||||
function rocket_get_gdpr_dynamic_cookies( $cookies ) {
|
||||
$cookies['gdpr'] = [
|
||||
'allowed_cookies',
|
||||
'consent_types',
|
||||
];
|
||||
return $cookies;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add dynamic cookie when GDPR plugin is activated
|
||||
*
|
||||
* @since 3.1.4
|
||||
* @author jorditarrida
|
||||
*/
|
||||
function rocket_add_gdpr_mandatory_cookies() {
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 60 );
|
||||
|
||||
// Create cache version based on value set in GDPR cookies.
|
||||
add_filter( 'rocket_cache_dynamic_cookies', 'rocket_get_gdpr_dynamic_cookies' );
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
// Clear WP Rocket cache.
|
||||
rocket_clean_domain();
|
||||
}
|
||||
add_action( 'activate_gdpr/gdpr.php', 'rocket_add_gdpr_mandatory_cookies', 11 );
|
||||
|
||||
/**
|
||||
* Remove dynamic cookie when GDPR plugin is deactivated.
|
||||
*
|
||||
* @since 3.1.4
|
||||
* @author jorditarrida
|
||||
*/
|
||||
function rocket_remove_gdpr_mandatory_cookies() {
|
||||
remove_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 60 );
|
||||
|
||||
// Delete the dynamic cookie filter.
|
||||
remove_filter( 'rocket_cache_dynamic_cookies', 'rocket_get_gdpr_dynamic_cookies' );
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
// Clear WP Rocket cache.
|
||||
rocket_clean_domain();
|
||||
}
|
||||
add_action( 'deactivate_gdpr/gdpr.php', 'rocket_remove_gdpr_mandatory_cookies', 11 );
|
73
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/cookies/uk-cookie-consent.php
vendored
Normal file
@@ -0,0 +1,73 @@
|
||||
<?php
|
||||
/**
|
||||
* Compatibility with UK Cookie Consent.
|
||||
*
|
||||
* @since 3.2
|
||||
* @author TheZoker
|
||||
* @link https://wordpress.org/plugins/uk-cookie-consent/
|
||||
*/
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( class_exists( 'CTCC_Public' ) ) {
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 62 );
|
||||
// Create cache version based on value set in cookie_consent_accepted cookie.
|
||||
add_filter( 'rocket_cache_dynamic_cookies', 'rocket_get_cookie_uk_consent_cookie' );
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the cookie name set by UK Cookie Consent plugin.
|
||||
*
|
||||
* @since 3.2
|
||||
* @author TheZoker
|
||||
*
|
||||
* @param array $cookies List of dynamic cookies.
|
||||
* @return array List of dynamic cookies with the UK Cookie Consent cookie appended.
|
||||
*/
|
||||
function rocket_get_cookie_uk_consent_cookie( $cookies ) {
|
||||
$cookies[] = 'catAccCookies';
|
||||
return $cookies;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add dynamic cookie and mandatory cookie when UK Cookie Consent plugin is activated.
|
||||
*
|
||||
* @since 3.2
|
||||
* @author TheZoker
|
||||
*/
|
||||
function rocket_add_uk_cookie_consent_dynamic_cookie() {
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 62 );
|
||||
// Create cache version based on value set in cookie_consent_accepted cookie.
|
||||
add_filter( 'rocket_cache_dynamic_cookies', 'rocket_get_cookie_uk_consent_cookie' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
|
||||
// Clear WP Rocket cache.
|
||||
rocket_clean_domain();
|
||||
}
|
||||
add_action( 'activate_uk-cookie-consent/uk-cookie-consent.php', 'rocket_add_uk_cookie_consent_dynamic_cookie', 11 );
|
||||
|
||||
/**
|
||||
* Remove dynamic cookie when Cookie Consent plugin is deactivated.
|
||||
*
|
||||
* @since 3.2
|
||||
* @author TheZoker
|
||||
*/
|
||||
function rocket_remove_uk_cookie_consent_dynamic_cookie() {
|
||||
remove_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 62 );
|
||||
remove_filter( 'rocket_cache_dynamic_cookies', 'rocket_get_cookie_uk_consent_cookie' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
|
||||
// Clear WP Rocket cache.
|
||||
rocket_clean_domain();
|
||||
}
|
||||
add_action( 'deactivate_uk-cookie-consent/uk-cookie-consent.php', 'rocket_remove_uk_cookie_consent_dynamic_cookie', 11 );
|
53
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/cookies/weepie-cookie-allow.php
vendored
Normal file
@@ -0,0 +1,53 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Compatibility with WeePie Cookie Allow
|
||||
*
|
||||
* @since 2.9
|
||||
*/
|
||||
if ( class_exists( 'WpieCookieAllow' ) ) :
|
||||
add_action( 'update_option_wpca_settings_general', 'rocket_after_update_wp_cookie_allow_options', 10, 2 );
|
||||
add_action( 'update_option_wpca_settings_style', 'rocket_after_update_wp_cookie_allow_options', 10, 2 );
|
||||
add_action( 'update_option_wpca_settings_content', 'rocket_after_update_wp_cookie_allow_options', 10, 2 );
|
||||
add_action( 'update_option_wpca_settings_consent_log', 'rocket_after_update_wp_cookie_allow_options', 10, 2 );
|
||||
endif;
|
||||
|
||||
/**
|
||||
* Update .htaccess & config files when the "Enabled" and "Autoblock" options are turned on.
|
||||
*
|
||||
* @since 2.9
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param array $old_value Previous values for the plugin options.
|
||||
* @param array $value New values for the plugin options.
|
||||
*/
|
||||
function rocket_after_update_wp_cookie_allow_options( $old_value, $value ) {
|
||||
// clear the cache because WeePie Cookie Allow plugin settings might have been changed.
|
||||
rocket_clean_domain();
|
||||
}
|
||||
|
||||
/**
|
||||
* Add cookies when we activate the plugin.
|
||||
*
|
||||
* @since 2.9
|
||||
* @author Remy Perona
|
||||
*/
|
||||
function rocket_activate_wp_cookie_allow() {
|
||||
// clear the cache because plugin might be enabled already before.
|
||||
rocket_clean_domain();
|
||||
}
|
||||
add_action( 'activate_wp-cookie-allow/wp-cookie-allow.php', 'rocket_activate_wp_cookie_allow', 11 );
|
||||
|
||||
/**
|
||||
* Remove cookies when we deactivate the plugin
|
||||
*
|
||||
* @since 2.9
|
||||
* @author Remy Perona
|
||||
*/
|
||||
function rocket_deactivate_wp_cookie_allow() {
|
||||
// clear the cache because the bar/box and other WeePie Cookie Allow plugin frontend HTML is not needed anymore.
|
||||
rocket_clean_domain();
|
||||
}
|
||||
add_action( 'deactivate_wp-cookie-allow/wp-cookie-allow.php', 'rocket_deactivate_wp_cookie_allow', 11 );
|
63
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/custom-login.php
vendored
Normal file
@@ -0,0 +1,63 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Exclude plugin custom login page template from cache.
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
if ( class_exists( 'Custom_Login_Page_Template' ) ) {
|
||||
add_filter( 'rocket_cache_reject_uri', 'rocket_add_custom_login_exclude_pages' );
|
||||
add_action( 'update_option_custom_login_page_template', 'rocket_after_update_single_options', 10, 2 );
|
||||
}
|
||||
|
||||
/**
|
||||
* Add custom login page to excluded urls array
|
||||
*
|
||||
* @since 2.7
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param Array $urls Array of pages to exclude.
|
||||
* @return Array Updated array of pages to exclude
|
||||
*/
|
||||
function rocket_add_custom_login_exclude_pages( $urls ) {
|
||||
$clpt_options = get_option( 'custom_login_page_template' );
|
||||
$urls = array_merge( $urls, get_rocket_i18n_translated_post_urls( $clpt_options['login_page_id'], 'page' ) );
|
||||
|
||||
return $urls;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add custom login page to excluded urls array on plugin activation
|
||||
*
|
||||
* @since 2.7
|
||||
* @author Remy Perona
|
||||
*/
|
||||
function rocket_activate_custom_login_page_template() {
|
||||
add_filter( 'rocket_cache_reject_uri', 'rocket_add_custom_login_exclude_pages' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'activate_custom-login-page-template/custom-login-page-template.php', 'rocket_activate_custom_login_page_template', 11 );
|
||||
|
||||
/**
|
||||
* Remove custom login page from excluded urls array on plugin activation
|
||||
*
|
||||
* @since 2.7
|
||||
* @author Remy Perona
|
||||
*/
|
||||
function rocket_remove_custom_login_exclude_pages() {
|
||||
remove_filter( 'rocket_cache_reject_uri', 'rocket_add_custom_login_exclude_pages' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'deactivate_custom-login-page-template/custom-login-page-template.php', 'rocket_remove_custom_login_exclude_pages', 11 );
|
22
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/disqus.php
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( defined( 'DISQUS_VERSION' ) ) :
|
||||
/**
|
||||
* Excludes Disqus scripts from JS minification
|
||||
*
|
||||
* @since 2.9
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param Array $excluded_js An array of JS handles enqueued in WordPress.
|
||||
* @return Array the updated array of handles
|
||||
*/
|
||||
function rocket_exclude_js_disqus( $excluded_js ) {
|
||||
$excluded_js[] = str_replace( home_url(), '', plugins_url( '/disqus-comment-system/media/js/disqus.js' ) );
|
||||
$excluded_js[] = str_replace( home_url(), '', plugins_url( '/disqus-comment-system/media/js/count.js' ) );
|
||||
|
||||
return $excluded_js;
|
||||
}
|
||||
add_filter( 'rocket_exclude_js', 'rocket_exclude_js_disqus' );
|
||||
endif;
|
106
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/ecommerce/aelia-currencyswitcher.php
vendored
Normal file
@@ -0,0 +1,106 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Compatibility with Aelia Currency Switcher.
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
if ( class_exists( 'WC_Aelia_CurrencySwitcher' ) ) :
|
||||
/**
|
||||
* Update .htaccess & config files when the Geolocation option is updated
|
||||
*
|
||||
* @since 2.7
|
||||
*
|
||||
* @param array $old_value Previous setting values.
|
||||
* @param array $value Submitted settings values.
|
||||
*/
|
||||
function rocket_after_update_aelia_currencyswitcher_options( $old_value, $value ) {
|
||||
if ( ( ! isset( $old_value['ipgeolocation_enabled'] ) && isset( $value['ipgeolocation_enabled'] ) ) || ( isset( $old_value['ipgeolocation_enabled'], $value['ipgeolocation_enabled'] ) && $old_value['ipgeolocation_enabled'] !== $value['ipgeolocation_enabled'] )
|
||||
) {
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Update the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
}
|
||||
add_action( 'update_option_wc_aelia_currency_switcher', 'rocket_after_update_aelia_currencyswitcher_options', 10, 2 );
|
||||
|
||||
/**
|
||||
* Generate a caching file depending on the currency cookie value
|
||||
*/
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 64 );
|
||||
add_filter( 'rocket_cache_dynamic_cookies', 'rocket_add_aelia_currencyswitcher_dynamic_cookies' );
|
||||
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_aelia_currencyswitcher_mandatory_cookie' );
|
||||
endif;
|
||||
|
||||
/**
|
||||
* Add the Aelia Currency Switcher cookies when activating the plugin
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
function rocket_activate_aelia_currencyswitcher() {
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 64 );
|
||||
add_filter( 'rocket_cache_dynamic_cookies', 'rocket_add_aelia_currencyswitcher_dynamic_cookies' );
|
||||
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_aelia_currencyswitcher_mandatory_cookie' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'activate_woocommerce-aelia-currencyswitcher/woocommerce-aelia-currencyswitcher.php', 'rocket_activate_aelia_currencyswitcher', 11 );
|
||||
|
||||
/**
|
||||
* Remove the Aelia Currency Switcher cookies when deactivating the plugin
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
function rocket_deactivate_aelia_currencyswitcher() {
|
||||
remove_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 64 );
|
||||
remove_filter( 'rocket_cache_dynamic_cookies', 'rocket_add_aelia_currencyswitcher_dynamic_cookies' );
|
||||
remove_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_aelia_currencyswitcher_mandatory_cookie' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'deactivate_woocommerce-aelia-currencyswitcher/woocommerce-aelia-currencyswitcher.php', 'rocket_deactivate_aelia_currencyswitcher', 11 );
|
||||
|
||||
/**
|
||||
* Add the Aelia Currency Switcher cookies to the dynamic cookies list
|
||||
*
|
||||
* @since 2.7
|
||||
*
|
||||
* @param array $cookies Cookies to use for dynamic caching.
|
||||
* @return array Updated cookies list
|
||||
*/
|
||||
function rocket_add_aelia_currencyswitcher_dynamic_cookies( $cookies ) {
|
||||
$cookies[] = 'aelia_cs_recalculate_cart_totals';
|
||||
$cookies[] = 'aelia_cs_selected_currency';
|
||||
$cookies[] = 'aelia_customer_country';
|
||||
return $cookies;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the Aelia Currency Switcher to the list of mandatory cookies before generating caching files
|
||||
*
|
||||
* @since 2.7
|
||||
*
|
||||
* @param array $cookies Mandatory cookies to serve the cache.
|
||||
* @return array Updated cookies list
|
||||
*/
|
||||
function rocket_add_aelia_currencyswitcher_mandatory_cookie( $cookies ) {
|
||||
$acs_options = get_option( 'wc_aelia_currency_switcher' );
|
||||
|
||||
if ( ! empty( $acs_options['ipgeolocation_enabled'] ) ) {
|
||||
$cookies[] = 'aelia_cs_selected_currency';
|
||||
}
|
||||
|
||||
return $cookies;
|
||||
}
|
66
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/ecommerce/aelia-prices-by-country.php
vendored
Normal file
@@ -0,0 +1,66 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Compatibility with Aelia Prices by Country.
|
||||
*
|
||||
* @since 2.8.15
|
||||
*/
|
||||
if ( class_exists( 'Aelia\WC\PricesByCountry\WC_Aelia_Prices_By_Country' ) ) :
|
||||
/**
|
||||
* Generate a caching file depending on the country cookie value
|
||||
*/
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 66 );
|
||||
add_filter( 'rocket_cache_dynamic_cookies', 'rocket_add_aelia_prices_by_country_dynamic_cookies' );
|
||||
endif;
|
||||
|
||||
/**
|
||||
* Add cookie when we activate the plugin
|
||||
*
|
||||
* @since 2.8.15
|
||||
* @author Remy Perona
|
||||
*/
|
||||
function rocket_activate_aelia_prices_by_country() {
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 66 );
|
||||
add_filter( 'rocket_cache_dynamic_cookies', 'rocket_add_aelia_prices_by_country_dynamic_cookies' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'activate_woocommerce-prices-by-country/woocommerce-prices-by-country.php', 'rocket_activate_aelia_prices_by_country', 11 );
|
||||
|
||||
/**
|
||||
* Remove cookies when we deactivate the plugin
|
||||
*
|
||||
* @since 2.8.15
|
||||
* @author Remy Perona
|
||||
*/
|
||||
function rocket_deactivate_aelia_prices_by_country() {
|
||||
remove_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 66 );
|
||||
remove_filter( 'rocket_cache_dynamic_cookies', 'rocket_add_aelia_prices_by_country_dynamic_cookies' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'deactivate_woocommerce-prices-by-country/woocommerce-prices-by-country.php', 'rocket_deactivate_aelia_prices_by_country', 11 );
|
||||
|
||||
/**
|
||||
* Add the Aelia Prices by Country cookie to generate caching files depending on its value
|
||||
*
|
||||
* @since 2.8.15
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param array $cookies Cookies list to use for dynamic caching.
|
||||
* @return array Updated cookies list
|
||||
*/
|
||||
function rocket_add_aelia_prices_by_country_dynamic_cookies( $cookies ) {
|
||||
$cookies[] = 'aelia_customer_country';
|
||||
return $cookies;
|
||||
}
|
69
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/ecommerce/aelia-tax-display-by-country.php
vendored
Normal file
@@ -0,0 +1,69 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Compatibility with Aelia Tax Display by Country.
|
||||
*
|
||||
* @since 2.8.15
|
||||
*/
|
||||
if ( class_exists( 'Aelia\WC\TaxDisplayByCountry\WC_Aelia_Tax_Display_By_Country' ) ) :
|
||||
/**
|
||||
* Generate a caching file depending to the tax display cookie values
|
||||
*/
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 68 );
|
||||
add_filter( 'rocket_cache_dynamic_cookies', 'rocket_add_aelia_tax_display_by_country_dynamic_cookies' );
|
||||
endif;
|
||||
|
||||
/**
|
||||
* Add cookies when we activate the plugin
|
||||
*
|
||||
* @since 2.8.15
|
||||
* @author Remy Perona
|
||||
*/
|
||||
function rocket_activate_aelia_tax_display_by_country() {
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 68 );
|
||||
add_filter( 'rocket_cache_dynamic_cookies', 'rocket_add_aelia_tax_display_by_country_dynamic_cookies' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'activate_woocommerce-tax-display-by-country/woocommerce-tax-display-by-country.php', 'rocket_activate_aelia_tax_display_by_country', 11 );
|
||||
|
||||
/**
|
||||
* Remove cookies when we deactivate the plugin
|
||||
*
|
||||
* @since 2.8.15
|
||||
* @author Remy Perona
|
||||
*/
|
||||
function rocket_deactivate_aelia_tax_display_by_country() {
|
||||
remove_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 68 );
|
||||
remove_filter( 'rocket_cache_dynamic_cookies', 'rocket_add_aelia_tax_display_by_country_dynamic_cookies' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'deactivate_woocommerce-tax-display-by-country/woocommerce-tax-display-by-country.php', 'rocket_deactivate_aelia_tax_display_by_country', 11 );
|
||||
|
||||
/**
|
||||
* Add the Aelia Tax Display by Country cookies to generate caching files depending on their values
|
||||
*
|
||||
* @since 2.8.15
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param array $cookies Cookies list to use for dynamic caching.
|
||||
* @return array Updated cookies list
|
||||
*/
|
||||
function rocket_add_aelia_tax_display_by_country_dynamic_cookies( $cookies ) {
|
||||
$cookies[] = 'aelia_customer_country';
|
||||
$cookies[] = 'aelia_customer_state';
|
||||
$cookies[] = 'aelia_tax_exempt';
|
||||
|
||||
return $cookies;
|
||||
}
|
52
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/ecommerce/easy-digital-downloads.php
vendored
Normal file
@@ -0,0 +1,52 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( function_exists( 'EDD' ) ) :
|
||||
add_filter( 'rocket_cache_reject_uri', 'rocket_exclude_edd_pages' );
|
||||
add_action( 'update_option_edd_settings', 'rocket_after_update_array_options', 10, 2 );
|
||||
endif;
|
||||
|
||||
/**
|
||||
* Exclude EDD pages from cache
|
||||
*
|
||||
* @param array $urls Array of URLs to exclude from cache.
|
||||
* @return array Updated array of URLs
|
||||
*/
|
||||
function rocket_exclude_edd_pages( $urls ) {
|
||||
$edd_settings = get_option( 'edd_settings' );
|
||||
if ( isset( $edd_settings['purchase_page'] ) ) {
|
||||
$checkout_urls = get_rocket_i18n_translated_post_urls( $edd_settings['purchase_page'], 'page', '(.*)' );
|
||||
$urls = array_merge( $urls, $checkout_urls );
|
||||
}
|
||||
|
||||
return $urls;
|
||||
}
|
||||
|
||||
/**
|
||||
* Exclude EDD pages from cache on EDD activation.
|
||||
*/
|
||||
function rocket_activate_edd() {
|
||||
add_filter( 'rocket_cache_reject_uri', 'rocket_exclude_edd_pages' );
|
||||
|
||||
// Update .htaccess file rules.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'activate_easy-digital-downloads/easy-digital-downloads.php', 'rocket_activate_edd', 11 );
|
||||
|
||||
/**
|
||||
* Remove EDD pages from cache exclusion on EDD deactivation.
|
||||
*/
|
||||
function rocket_deactivate_edd() {
|
||||
remove_filter( 'rocket_cache_reject_uri', 'rocket_exclude_edd_pages' );
|
||||
|
||||
// Update .htaccess file rules.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'deactivate_easy-digital-downloads/easy-digital-downloads.php', 'rocket_deactivate_edd', 11 );
|
58
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/ecommerce/edd-software-licencing.php
vendored
Normal file
@@ -0,0 +1,58 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Compatibility with Easy Digital Downloads Software Licensing addon.
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
if ( class_exists( 'EDD_Software_Licensing' ) && defined( 'EDD_SL_VERSION' ) ) :
|
||||
// Exclude EDD SL endpoint from cache on WP Rocket activation.
|
||||
add_filter( 'rocket_cache_reject_uri', 'rocket_exclude_edd_sl_endpoint' );
|
||||
endif;
|
||||
|
||||
/**
|
||||
* Exclude EDD SL endpoint from cache when activating the plugin
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
function rocket_activate_edd_software_licensing() {
|
||||
add_filter( 'rocket_cache_reject_uri', 'rocket_exclude_edd_sl_endpoint' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'activate_edd-software-licensing/edd-software-licenses.php', 'rocket_activate_edd_software_licensing', 11 );
|
||||
|
||||
/**
|
||||
* Remove exclusion of EDD SL endpoint from cache when deactivating the plugin
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
function rocket_deactivate_edd_software_licensing() {
|
||||
remove_filter( 'rocket_cache_reject_uri', 'rocket_exclude_edd_sl_endpoint' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'deactivate_edd-software-licensing/edd-software-licenses.php', 'rocket_deactivate_edd_software_licensing', 11 );
|
||||
|
||||
/**
|
||||
* Exclude EDD SL endpoint from caching
|
||||
*
|
||||
* @since 2.7
|
||||
*
|
||||
* @param array $uri URLs to exclude from caching.
|
||||
* @return array Updated list of URLs to exclude
|
||||
*/
|
||||
function rocket_exclude_edd_sl_endpoint( $uri ) {
|
||||
$uri[] = '/edd-sl/(.*)';
|
||||
return $uri;
|
||||
}
|
65
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/ecommerce/give.php
vendored
Normal file
@@ -0,0 +1,65 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Exclude pages of Give plugin from cache.
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
if ( defined( 'GIVE_VERSION' ) && function_exists( 'give_get_settings' ) ) {
|
||||
add_filter( 'rocket_cache_reject_uri', 'rocket_add_give_exclude_pages' );
|
||||
|
||||
if ( is_admin() ) {
|
||||
add_action( 'update_option_give_settings', 'rocket_after_update_single_options', 10, 2 );
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Add give pages to the excluded pages
|
||||
*
|
||||
* @since 2.7
|
||||
*
|
||||
* @param Array $urls Array of excluded pages.
|
||||
* @return Array Updated array of excluded pages
|
||||
*/
|
||||
function rocket_add_give_exclude_pages( $urls ) {
|
||||
$give_options = give_get_settings();
|
||||
$urls = array_merge( $urls, get_rocket_i18n_translated_post_urls( $give_options['success_page'], 'page' ) );
|
||||
$urls = array_merge( $urls, get_rocket_i18n_translated_post_urls( $give_options['history_page'], 'page' ) );
|
||||
$urls = array_merge( $urls, get_rocket_i18n_translated_post_urls( $give_options['failure_page'], 'page' ) );
|
||||
|
||||
return $urls;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add give pages to the excluded pages when activating the plugin
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
function rocket_activate_give() {
|
||||
add_filter( 'rocket_cache_reject_uri', 'rocket_add_give_exclude_pages' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'activate_give/give.php', 'rocket_activate_give', 11 );
|
||||
|
||||
/**
|
||||
* Remove give pages from the excluded pages when activating the plugin
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
function rocket_remove_give_exclude_pages() {
|
||||
remove_filter( 'rocket_cache_reject_uri', 'rocket_add_give_exclude_pages' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'deactivate_give/give.php', 'rocket_remove_give_exclude_pages', 11 );
|
69
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/ecommerce/ithemes-exchange.php
vendored
Normal file
@@ -0,0 +1,69 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( function_exists( 'it_exchange_get_page_type' ) && function_exists( 'it_exchange_get_page_url' ) ) :
|
||||
add_filter( 'rocket_cache_reject_uri', 'rocket_exclude_ithemes_exchange_pages' );
|
||||
add_action( 'update_option_it-storage-exchange_settings_pages', 'rocket_after_update_single_options', 10, 2 );
|
||||
endif;
|
||||
|
||||
|
||||
/**
|
||||
* Exclude iThemes Exchange pages from cache.
|
||||
*
|
||||
* @param array $urls Array of URLs to exclude from cache.
|
||||
* @return array Updated array of URLs to exclude from cache
|
||||
*/
|
||||
function rocket_exclude_ithemes_exchange_pages( $urls ) {
|
||||
$pages = [
|
||||
'purchases',
|
||||
'confirmation',
|
||||
'account',
|
||||
'profile',
|
||||
'downloads',
|
||||
'purchases',
|
||||
'log-in',
|
||||
'log-out',
|
||||
];
|
||||
|
||||
foreach ( $pages as $page ) {
|
||||
if ( it_exchange_get_page_type( $page ) === 'WordPress' ) {
|
||||
$exchange_urls = get_rocket_i18n_translated_post_urls( it_exchange_get_page_wpid( $page ) );
|
||||
} else {
|
||||
$exchange_urls = [ rocket_extract_url_component( it_exchange_get_page_url( $page ), PHP_URL_PATH ) ];
|
||||
}
|
||||
|
||||
$urls = array_merge( $urls, $exchange_urls );
|
||||
}
|
||||
|
||||
return $urls;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Exclude iThemes Exchanges pages from cache on plugin activation.
|
||||
*/
|
||||
function rocket_activate_ithemes_exchange() {
|
||||
add_filter( 'rocket_cache_reject_uri', 'rocket_exclude_ithemes_exchange_pages' );
|
||||
|
||||
// Update .htaccess file rules.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'activate_ithemes-exchange/ithemes-exchange.php', 'rocket_activate_ithemes_exchange', 11 );
|
||||
|
||||
/**
|
||||
* Remove iThemes Exchanges pages from cache exclusion on plugin deactivation.
|
||||
*/
|
||||
function rocket_deactivate_ithemes_exchange() {
|
||||
remove_filter( 'rocket_cache_reject_uri', 'rocket_exclude_ithemes_exchange_pages' );
|
||||
|
||||
// Update .htaccess file rules.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'deactivate_ithemes-exchange/ithemes-exchange.php', 'rocket_deactivate_ithemes_exchange', 11 );
|
61
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/ecommerce/jigoshop.php
vendored
Normal file
@@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( defined( 'JIGOSHOP_VERSION' ) && function_exists( 'jigoshop_get_page_id' ) ) :
|
||||
add_filter( 'rocket_cache_reject_uri', 'rocket_exclude_jigoshop_pages' );
|
||||
add_action( 'update_option_jigoshop_options', 'rocket_after_update_array_options', 10, 2 );
|
||||
endif;
|
||||
|
||||
/**
|
||||
* Exclude Jigoshop pages from cache.
|
||||
*
|
||||
* @param array $urls Array of URLs to exclude from cache.
|
||||
* @return array Updated array of URLs to exclude from cache
|
||||
*/
|
||||
function rocket_exclude_jigoshop_pages( $urls ) {
|
||||
if ( jigoshop_get_page_id( 'checkout' ) && jigoshop_get_page_id( 'checkout' ) !== '-1' ) {
|
||||
$checkout_urls = get_rocket_i18n_translated_post_urls( jigoshop_get_page_id( 'checkout' ), 'page', '(.*)' );
|
||||
$urls = array_merge( $urls, $checkout_urls );
|
||||
}
|
||||
|
||||
if ( jigoshop_get_page_id( 'cart' ) && jigoshop_get_page_id( 'cart' ) !== '-1' ) {
|
||||
$cart_urls = get_rocket_i18n_translated_post_urls( jigoshop_get_page_id( 'cart' ) );
|
||||
$urls = array_merge( $urls, $cart_urls );
|
||||
}
|
||||
|
||||
if ( jigoshop_get_page_id( 'myaccount' ) && jigoshop_get_page_id( 'myaccount' ) !== '-1' ) {
|
||||
$cart_urls = get_rocket_i18n_translated_post_urls( jigoshop_get_page_id( 'myaccount' ), 'page', '(.*)' );
|
||||
$urls = array_merge( $urls, $cart_urls );
|
||||
}
|
||||
|
||||
return $urls;
|
||||
}
|
||||
|
||||
/**
|
||||
* Exclude Jigoshop pages from cache on plugin activation.
|
||||
*/
|
||||
function rocket_activate_jigoshop() {
|
||||
add_filter( 'rocket_cache_reject_uri', 'rocket_exclude_jigoshop_pages' );
|
||||
|
||||
// Update .htaccess file rules.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'activate_jigoshop/jigoshop.php', 'rocket_activate_jigoshop', 11 );
|
||||
|
||||
/**
|
||||
* Remove Jigoshop pages from cache exclusion on plugin deactivation.
|
||||
*/
|
||||
function rocket_deactivate_jigoshop() {
|
||||
remove_filter( 'rocket_cache_reject_uri', 'rocket_exclude_jigoshop_pages' );
|
||||
|
||||
// Update .htaccess file rules.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'deactivate_jigoshop/jigoshop.php', 'rocket_deactivate_jigoshop', 11 );
|
@@ -0,0 +1,83 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Compatibility with WooCommerce Currency Converter Widget.
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
if ( class_exists( 'WC_Currency_Converter' ) ) :
|
||||
// Add cookie to config file when WP Rocket is activated and WooCommerce Currency Converter Widget is already active.
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 70 );
|
||||
add_filter( 'rocket_cache_dynamic_cookies', 'rocket_add_woocommerce_currency_converter_dynamic_cookies', 11 );
|
||||
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_woocommerce_currency_converter_mandatory_cookie', 11 );
|
||||
add_action( 'update_option_woocommerce_default_customer_address', 'rocket_after_update_single_options', 10, 2 );
|
||||
endif;
|
||||
|
||||
/**
|
||||
* Add cookies when we activating the plugin
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
function rocket_activate_woocommerce_currency_converter() {
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 70 );
|
||||
add_filter( 'rocket_cache_dynamic_cookies', 'rocket_add_woocommerce_currency_converter_dynamic_cookies' );
|
||||
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_woocommerce_currency_converter_mandatory_cookie' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'activate_woocommerce-currency-converter-widget/currency-converter.php', 'rocket_activate_woocommerce_currency_converter', 11 );
|
||||
|
||||
/**
|
||||
* Remove cookies when deactivating the plugin
|
||||
*
|
||||
* @since 2.7
|
||||
*/
|
||||
function rocket_deactivate_woocommerce_currency_converter() {
|
||||
remove_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 70 );
|
||||
remove_filter( 'rocket_cache_dynamic_cookies', 'rocket_add_woocommerce_currency_converter_dynamic_cookies' );
|
||||
remove_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_woocommerce_currency_converter_mandatory_cookie' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'deactivate_woocommerce-currency-converter-widget/currency-converter.php', 'rocket_deactivate_woocommerce_currency_converter', 11 );
|
||||
|
||||
/**
|
||||
* Add the WC Currency Converter Widget cookie to generate caching files depending on its value
|
||||
*
|
||||
* @since 2.7
|
||||
*
|
||||
* @param array $cookies Cookies list to use for dynamic caching.
|
||||
* @return array Updated cookies list
|
||||
*/
|
||||
function rocket_add_woocommerce_currency_converter_dynamic_cookies( $cookies ) {
|
||||
$cookies[] = 'woocommerce_current_currency';
|
||||
return $cookies;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the WC Currency Converter Widget cookie to the list of mandatory cookies before generating the caching files
|
||||
*
|
||||
* @since 2.7
|
||||
*
|
||||
* @param array $cookies Mandatory cookies list.
|
||||
* @return array Updated cookies list
|
||||
*/
|
||||
function rocket_add_woocommerce_currency_converter_mandatory_cookie( $cookies ) {
|
||||
$widget_woocommerce_currency_converter = get_option( 'widget_woocommerce_currency_converter' );
|
||||
|
||||
if ( ! empty( $widget_woocommerce_currency_converter ) && 'geolocation_ajax' === get_option( 'woocommerce_default_customer_address' ) ) {
|
||||
$cookies[] = 'woocommerce_current_currency';
|
||||
}
|
||||
|
||||
return $cookies;
|
||||
}
|
8
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/ecommerce/woocommerce-multilingual.php
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
// Compatibility with the currency switcher in WooCommerce Multilingual plugin.
|
||||
if ( defined( 'WCML_VERSION' ) ) :
|
||||
add_action( 'wcml_switch_currency', 'rocket_clean_domain' );
|
||||
endif;
|
66
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/ecommerce/wpshop.php
vendored
Normal file
@@ -0,0 +1,66 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( defined( 'WPSHOP_VERSION' ) && class_exists( 'wpshop_tools' ) && method_exists( 'wpshop_tools', 'get_page_id' ) ) :
|
||||
add_filter( 'rocket_cache_reject_uri', 'rocket_exclude_wpshop_pages' );
|
||||
add_action( 'update_option_wpshop_cart_page_id', 'rocket_after_update_single_options', 10, 2 );
|
||||
add_action( 'update_option_wpshop_checkout_page_id', 'rocket_after_update_single_options', 10, 2 );
|
||||
add_action( 'update_option_wpshop_payment_return_page_id', 'rocket_after_update_single_options', 10, 2 );
|
||||
add_action( 'update_option_wpshop_payment_return_nok_page_id', 'rocket_after_update_single_options', 10, 2 );
|
||||
add_action( 'update_option_wpshop_myaccount_page_id', 'rocket_after_update_single_options', 10, 2 );
|
||||
endif;
|
||||
|
||||
|
||||
/**
|
||||
* Exclude WP Shop pages from cache.
|
||||
*
|
||||
* @param array $urls Array of URLs to exclude from cache.
|
||||
* @return array Updated array of URLs to exclude from cache
|
||||
*/
|
||||
function rocket_exclude_wpshop_pages( $urls ) {
|
||||
$pages = [
|
||||
'wpshop_cart_page_id',
|
||||
'wpshop_checkout_page_id',
|
||||
'wpshop_payment_return_page_id',
|
||||
'wpshop_payment_return_nok_page_id',
|
||||
'wpshop_myaccount_page_id',
|
||||
];
|
||||
|
||||
foreach ( $pages as $page ) {
|
||||
$page_id = wpshop_tools::get_page_id( get_option( $page ) );
|
||||
if ( $page_id ) {
|
||||
$urls = array_merge( $urls, get_rocket_i18n_translated_post_urls( $page_id ) );
|
||||
}
|
||||
}
|
||||
|
||||
return $urls;
|
||||
}
|
||||
|
||||
/**
|
||||
* Exclude WP Shop pages from cache on plugin activation.
|
||||
*/
|
||||
function rocket_activate_wpshop() {
|
||||
add_filter( 'rocket_cache_reject_uri', 'rocket_exclude_wpshop_pages' );
|
||||
|
||||
// Update .htaccess file rules.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'activate_wpshop/wpshop.php', 'rocket_activate_wpshop', 11 );
|
||||
|
||||
/**
|
||||
* Remove WP Shop pages from cache exclusion on plugin deactivation.
|
||||
*/
|
||||
function rocket_deactivate_wpshop() {
|
||||
remove_filter( 'rocket_cache_reject_uri', 'rocket_exclude_wpshop_pages' );
|
||||
|
||||
// Update .htaccess file rules.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'deactivate_wpshop/wpshop.php', 'rocket_deactivate_wpshop', 11 );
|
33
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/envira-gallery.php
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Conflict with Envira Gallery: don't apply LazyLoad on all images
|
||||
*
|
||||
* @since 2.3.10
|
||||
*
|
||||
* @param string $attr Envira gallery image attributes.
|
||||
* @return string Updated attributes
|
||||
*/
|
||||
function rocket_deactivate_lazyload_on_envira_gallery( $attr ) {
|
||||
return $attr . ' data-no-lazy="1" ';
|
||||
}
|
||||
add_filter( 'envira_gallery_output_image_attr', 'rocket_deactivate_lazyload_on_envira_gallery', PHP_INT_MAX );
|
||||
|
||||
/**
|
||||
* Conflict with Envira Gallery: don't apply LazyLoad on all images
|
||||
*
|
||||
* @since 2.3.10
|
||||
*
|
||||
* @param string $images Envira gallery images HTML code.
|
||||
* @return string Updated HTML code
|
||||
*/
|
||||
function rocket_deactivate_lazyload_on_envira_gallery_indexable_images( $images ) {
|
||||
$images = str_replace( '<img', '<img data-no-lazy="1" ', $images );
|
||||
|
||||
return $images;
|
||||
}
|
||||
add_filter( 'envira_gallery_indexable_images', 'rocket_deactivate_lazyload_on_envira_gallery_indexable_images', PHP_INT_MAX );
|
||||
|
||||
|
115
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/geotargetingwp.php
vendored
Normal file
@@ -0,0 +1,115 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Compatibility with GeotargetingWP Plugins
|
||||
*
|
||||
* @author Damian Logghe <info@timersys.com>
|
||||
*/
|
||||
if ( class_exists( 'GeotWP\GeotargetingWP' ) ) :
|
||||
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 72 );
|
||||
add_filter( 'rocket_cache_dynamic_cookies', 'rocket_add_geotargetingwp_dynamic_cookies' );
|
||||
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_geotargetingwp_mandatory_cookie' );
|
||||
|
||||
/**
|
||||
* If we recently deactivated a plugin of the family but
|
||||
* we still see the class it means another plugin is still active,
|
||||
* so flush rules once more to be safe
|
||||
*/
|
||||
if ( get_option( 'geotWP-deactivated' ) ) {
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
add_action( 'admin_init', 'flush_rocket_htaccess' );
|
||||
|
||||
// Regenerate the config file.
|
||||
add_action( 'admin_init', 'rocket_generate_config_file' );
|
||||
delete_option( 'geotWP-deactivated' );
|
||||
}
|
||||
endif;
|
||||
|
||||
/**
|
||||
* Add cookies when we activate any goetargetingWP plugin.
|
||||
*
|
||||
* @since 2.10.3
|
||||
* @author Damian Logghe
|
||||
*/
|
||||
function rocket_activate_geotargetingwp() {
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 72 );
|
||||
add_filter( 'rocket_cache_dynamic_cookies', 'rocket_add_geotargetingwp_dynamic_cookies' );
|
||||
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_geotargetingwp_mandatory_cookie' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'geotWP/activated', 'rocket_activate_geotargetingwp', 11 );
|
||||
|
||||
/**
|
||||
* Remove cookies when we deactivate the plugin.
|
||||
*
|
||||
* @since 2.10.3
|
||||
* @author Damian Logghe
|
||||
*/
|
||||
function rocket_deactivate_geotargetingwp() {
|
||||
// add into db a record saying we deactivated one of the family plugins.
|
||||
update_option( 'geotWP-deactivated', true );
|
||||
remove_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 72 );
|
||||
remove_filter( 'rocket_cache_dynamic_cookies', 'rocket_add_geotargetingwp_dynamic_cookies' );
|
||||
remove_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_geotargetingwp_mandatory_cookie' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
}
|
||||
add_action( 'geotWP/deactivated', 'rocket_deactivate_geotargetingwp', 11 );
|
||||
|
||||
/**
|
||||
* Add the GeotargetingWP cookies to generate caching files depending on their values.
|
||||
*
|
||||
* @since 2.10.3
|
||||
* @author Damian Logghe
|
||||
*
|
||||
* @param Array $cookies An array of cookies.
|
||||
* @return Array Updated array of cookies
|
||||
*/
|
||||
function rocket_add_geotargetingwp_dynamic_cookies( $cookies ) {
|
||||
return rocket_add_geot_cookies( $cookies );
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the GeotargetingWP cookies to the list of mandatory cookies before to generate caching files.
|
||||
*
|
||||
* @since 2.10.3
|
||||
* @author Damian Logghe
|
||||
*
|
||||
* @param Array $cookies An array of cookies.
|
||||
* @return Array Updated array of cookies
|
||||
*/
|
||||
function rocket_add_geotargetingwp_mandatory_cookie( $cookies ) {
|
||||
return rocket_add_geot_cookies( $cookies );
|
||||
}
|
||||
|
||||
/**
|
||||
* Let users modify cache level by default set to country.
|
||||
*
|
||||
* @since 2.10.3
|
||||
* @author Damian Logghe
|
||||
*
|
||||
* @param Array $cookies An array of cookies.
|
||||
* @return Array Updated array of cookies
|
||||
*/
|
||||
function rocket_add_geot_cookies( $cookies ) {
|
||||
// valid options are country, state, city.
|
||||
$enabled_cookies = apply_filters( 'rocket_geotargetingwp_enabled_cookies', [ 'country' ] );
|
||||
foreach ( $enabled_cookies as $enabled_cookie ) {
|
||||
if ( ! in_array( 'geot_rocket_' . $enabled_cookie, $cookies, true ) ) {
|
||||
$cookies[] = 'geot_rocket_' . $enabled_cookie;
|
||||
}
|
||||
}
|
||||
return $cookies;
|
||||
}
|
145
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/i18n/polylang.php
vendored
Normal file
@@ -0,0 +1,145 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( defined( 'POLYLANG_VERSION' ) && POLYLANG_VERSION ) :
|
||||
/**
|
||||
* Conflict with Polylang: Clear the whole cache when the "The language is set from content" option is activated.
|
||||
*
|
||||
* @since 2.6.8
|
||||
*/
|
||||
function rocket_force_clean_domain_on_polylang() {
|
||||
$pll = function_exists( 'PLL' ) ? PLL() : $GLOBALS['polylang'];
|
||||
|
||||
if ( isset( $pll ) && 0 === $pll->options['force_lang'] ) {
|
||||
rocket_clean_cache_dir();
|
||||
}
|
||||
}
|
||||
add_action( 'after_rocket_clean_domain', 'rocket_force_clean_domain_on_polylang' );
|
||||
|
||||
// Filter mandatory cookies and WP Rocket rewrite rules if Polylang module 'Detect browser language' is enabled.
|
||||
if ( function_exists( 'PLL' ) && PLL()->options['browser'] ) {
|
||||
|
||||
// Add Polylang's language cookie as a mandatory cookie.
|
||||
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_polylang_mandatory_cookie' );
|
||||
|
||||
// Remove WP Rocket rewrite rules from .htaccess file.
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 74 );
|
||||
}
|
||||
endif;
|
||||
|
||||
/**
|
||||
* Add Polylang's language cookie to the mandatory cookies of WP Rocket.
|
||||
*
|
||||
* Polylang saves the users preferred language in this cookie by detecting browser language or by user choice
|
||||
* Adding this as a mandatory cookie prevents WP Rocket from serving the cache when the cookie is not set.
|
||||
*
|
||||
* @param array $cookies Array with mandatory cookies.
|
||||
* @return (array) Array of mandatory cookies with the Polylang cookie appended
|
||||
*
|
||||
* @author Arun Basil Lal
|
||||
* @since 3.0.5
|
||||
*/
|
||||
function rocket_add_polylang_mandatory_cookie( $cookies ) {
|
||||
$cookies[] = defined( 'PLL_COOKIE' ) ? PLL_COOKIE : 'pll_language';
|
||||
|
||||
return $cookies;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add mandatory cookie to WP Rocket config and remove rewrite rules from .htaccess on Polylang activation.
|
||||
*
|
||||
* Add mandatory cookie only if the Polylang module 'Detect browser language' is active.
|
||||
* Also purge the homepage cache.
|
||||
*
|
||||
* @author Arun Basil Lal
|
||||
* @since 3.0.5
|
||||
*/
|
||||
function rocket_activate_polylang() {
|
||||
// Read Polylang settings from db.
|
||||
$polylang_settings = get_option( 'polylang' );
|
||||
|
||||
if ( isset( $polylang_settings['browser'] ) && ( 1 === (int) $polylang_settings['browser'] ) ) {
|
||||
// Add Polylang's language cookie as a mandatory cookie.
|
||||
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_polylang_mandatory_cookie' );
|
||||
|
||||
// Remove WP Rocket rewrite rules from .htaccess file.
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 74 );
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
|
||||
// Regenerate .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Purge homepage cache.
|
||||
rocket_clean_home();
|
||||
}
|
||||
}
|
||||
add_action( 'activate_polylang/polylang.php', 'rocket_activate_polylang', 11 );
|
||||
|
||||
/**
|
||||
* Remove mandatory cookie and add rewrite rules back to .htaccess when Polylang is deactivated.
|
||||
*
|
||||
* @author Arun Basil Lal
|
||||
* @since 3.0.5
|
||||
*/
|
||||
function rocket_deactivate_polylang() {
|
||||
// Remove Polylang's language cookie as a mandatory cookie.
|
||||
remove_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_polylang_mandatory_cookie' );
|
||||
|
||||
// Add back WP Rocket rewrite rules from .htaccess file.
|
||||
remove_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 74 );
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
|
||||
// Regenerate .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
}
|
||||
add_action( 'deactivate_polylang/polylang.php', 'rocket_deactivate_polylang', 11 );
|
||||
|
||||
/**
|
||||
* Update mandatory cookie in WP Rocket config file and remove rewrite rules from .htaccess
|
||||
* when Detect browser language module is enabled / disabled.
|
||||
*
|
||||
* @param array $value Array containing Polylang settings before its written to db.
|
||||
* @return array
|
||||
*
|
||||
* @author Arun Basil Lal
|
||||
* @since 3.0.5
|
||||
*/
|
||||
function rocket_detect_browser_language_status_change( $value ) {
|
||||
if ( function_exists( 'PLL' ) && PLL()->options['browser'] ) {
|
||||
|
||||
// Add Polylang's language cookie as a mandatory cookie.
|
||||
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_polylang_mandatory_cookie' );
|
||||
|
||||
// Remove WP Rocket rewrite rules from .htaccess file.
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 74 );
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
|
||||
// Regenerate .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Purge homepage cache.
|
||||
rocket_clean_home();
|
||||
} else {
|
||||
// Remove Polylang's language cookie as a mandatory cookie.
|
||||
remove_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_polylang_mandatory_cookie' );
|
||||
|
||||
// Add back WP Rocket rewrite rules from .htaccess file.
|
||||
remove_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 74 );
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
|
||||
// Regenerate .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
}
|
||||
|
||||
return $value;
|
||||
}
|
||||
add_filter( 'pre_update_option_polylang', 'rocket_detect_browser_language_status_change' );
|
11
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/i18n/wpml.php
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
<?php
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( defined( 'ICL_SITEPRESS_VERSION' ) && ICL_SITEPRESS_VERSION ) :
|
||||
/**
|
||||
* Tell WooCommerce Multilingual that we are caching.
|
||||
* This will add a URL param when switching currency to get the correct response.
|
||||
*/
|
||||
add_filter( 'wcml_is_cache_enabled_for_switching_currency', '__return_true' );
|
||||
endif;
|
187
wp-content/plugins/wp-rocket/inc/3rd-party/plugins/jetpack.php
vendored
Normal file
@@ -0,0 +1,187 @@
|
||||
<?php
|
||||
/**
|
||||
* Compatibility file with the Jetpack plugin.
|
||||
* https://wordpress.org/plugins/jetpack/
|
||||
*
|
||||
* @package WP Rocket
|
||||
*/
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
// Is Jetpack installed and active?
|
||||
if ( class_exists( 'Jetpack' ) ) :
|
||||
/**
|
||||
* Improvement with Jetpack: auto-detect the XML sitemaps for the preload option
|
||||
*
|
||||
* @since 2.8
|
||||
* @author Remy Perona
|
||||
*/
|
||||
if (
|
||||
Jetpack::is_module_active( 'sitemaps' )
|
||||
&& function_exists( 'jetpack_sitemap_uri' )
|
||||
) {
|
||||
/**
|
||||
* Add Jetpack option to WP Rocket options
|
||||
*
|
||||
* @since 2.8
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param Array $options WP Rocket options array.
|
||||
* @return Array Updated WP Rocket options array
|
||||
*/
|
||||
function rocket_add_jetpack_sitemap_option( $options ) {
|
||||
$options['jetpack_xml_sitemap'] = 0;
|
||||
|
||||
return $options;
|
||||
}
|
||||
add_filter( 'rocket_first_install_options', 'rocket_add_jetpack_sitemap_option' );
|
||||
|
||||
/**
|
||||
* Sanitize jetpack option value
|
||||
*
|
||||
* @since 2.8
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param Array $inputs Array of inputs values.
|
||||
* @return Array Array of inputs values
|
||||
*/
|
||||
function rocket_jetpack_sitemap_option_sanitize( $inputs ) {
|
||||
$inputs['jetpack_xml_sitemap'] = ! empty( $inputs['jetpack_xml_sitemap'] ) ? 1 : 0;
|
||||
|
||||
return $inputs;
|
||||
}
|
||||
add_filter( 'rocket_inputs_sanitize', 'rocket_jetpack_sitemap_option_sanitize' );
|
||||
|
||||
/**
|
||||
* Add Jetpack sitemap to preload list
|
||||
*
|
||||
* @since 2.8
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param Array $sitemaps Array of sitemaps to preload.
|
||||
* @return Array Updated Array of sitemaps to preload
|
||||
*/
|
||||
function rocket_add_jetpack_sitemap( $sitemaps ) {
|
||||
if ( get_rocket_option( 'jetpack_xml_sitemap', false ) ) {
|
||||
$sitemaps['jetpack'] = jetpack_sitemap_uri();
|
||||
}
|
||||
|
||||
return $sitemaps;
|
||||
}
|
||||
add_filter( 'rocket_sitemap_preload_list', 'rocket_add_jetpack_sitemap' );
|
||||
|
||||
/**
|
||||
* Add Jetpack sub-option to WP Rocket settings page
|
||||
*
|
||||
* @since 2.8
|
||||
* @author Remy Perona
|
||||
*
|
||||
* @param Array $options WP Rocket options array.
|
||||
* @return Array Updated WP Rocket options array
|
||||
*/
|
||||
function rocket_sitemap_preload_jetpack_option( $options ) {
|
||||
$options[] = [
|
||||
'parent' => 'sitemap_preload',
|
||||
'type' => 'checkbox',
|
||||
'label' => __( 'Jetpack XML Sitemaps', 'rocket' ),
|
||||
'label_for' => 'jetpack_xml_sitemap',
|
||||
'label_screen' => sprintf( __( 'Preload the sitemap from the Jetpack plugin', 'rocket' ), 'Jetpack' ),
|
||||
'default' => 0,
|
||||
];
|
||||
$options[] = [
|
||||
'parent' => 'sitemap_preload',
|
||||
'type' => 'helper_description',
|
||||
'name' => 'jetpack_xml_sitemap_desc',
|
||||
// translators: %s = plugin name, e.g. Yoast SEO.
|
||||
'description' => sprintf( __( 'We automatically detected the sitemap generated by the %s plugin. You can check the option to preload it.', 'rocket' ), 'Jetpack' ),
|
||||
];
|
||||
|
||||
return $options;
|
||||
}
|
||||
add_filter( 'rocket_sitemap_preload_options', 'rocket_sitemap_preload_jetpack_option' );
|
||||
} // End if().
|
||||
|
||||
/**
|
||||
* Support Jetpack's EU Cookie Law Widget.
|
||||
*
|
||||
* @see https://jetpack.com/support/extra-sidebar-widgets/eu-cookie-law-widget/
|
||||
*
|
||||
* @since 2.10.1
|
||||
* @author Jeremy Herve
|
||||
*/
|
||||
if ( Jetpack::is_module_active( 'widgets' ) ) :
|
||||
|
||||
/**
|
||||
* Add the EU Cookie Law to the list of mandatory cookies before generating caching files.
|
||||
*
|
||||
* @since 2.10.1
|
||||
* @author Jeremy Herve
|
||||
*
|
||||
* @param array $cookies List of mandatory cookies.
|
||||
*/
|
||||
function rocket_add_jetpack_cookie_law_mandatory_cookie( $cookies ) {
|
||||
$cookies['jetpack-eu-cookie-law'] = 'eucookielaw';
|
||||
|
||||
return $cookies;
|
||||
}
|
||||
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_jetpack_cookie_law_mandatory_cookie' );
|
||||
|
||||
// Don't add the WP Rocket rewrite rules to avoid issues.
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 76 );
|
||||
|
||||
/**
|
||||
* Add Jetpack cookie when:
|
||||
* - Jetpack is active.
|
||||
* - Jetpack's Extra Sidebar Widgets module is active.
|
||||
* - The widget is active.
|
||||
* - the rocket_jetpack_eu_cookie_widget option is empty or not set.
|
||||
*
|
||||
* @since 2.10.1
|
||||
* @author Jeremy Herve
|
||||
*/
|
||||
function rocket_activate_jetpack_cookie_law() {
|
||||
$rocket_jp_eu_cookie_widget = get_option( 'rocket_jetpack_eu_cookie_widget' );
|
||||
|
||||
if (
|
||||
is_active_widget( false, false, 'eu_cookie_law_widget' )
|
||||
&& empty( $rocket_jp_eu_cookie_widget )
|
||||
) {
|
||||
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 76 );
|
||||
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_jetpack_cookie_law_mandatory_cookie' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
|
||||
// Set the option, so this is not triggered again.
|
||||
update_option( 'rocket_jetpack_eu_cookie_widget', 1, true );
|
||||
}
|
||||
}
|
||||
add_action( 'admin_init', 'rocket_activate_jetpack_cookie_law' );
|
||||
|
||||
endif; // End if Widgets module is active check.
|
||||
|
||||
endif; // End if Jetpack is active check.
|
||||
|
||||
/**
|
||||
* Remove cookies if Jetpack gets deactivated.
|
||||
*
|
||||
* @since 2.10.1
|
||||
* @author Jeremy Herve
|
||||
*/
|
||||
function rocket_remove_jetpack_cookie_law_mandatory_cookie() {
|
||||
remove_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 76 );
|
||||
remove_filter( 'rocket_cache_mandatory_cookies', '_rocket_add_eu_cookie_law_mandatory_cookie' );
|
||||
|
||||
// Update the WP Rocket rules on the .htaccess file.
|
||||
flush_rocket_htaccess();
|
||||
|
||||
// Regenerate the config file.
|
||||
rocket_generate_config_file();
|
||||
|
||||
// Delete our option.
|
||||
delete_option( 'rocket_jetpack_eu_cookie_widget' );
|
||||
}
|
||||
add_action( 'deactivate_jetpack/jetpack.php', 'rocket_remove_jetpack_cookie_law_mandatory_cookie', 11 );
|