diff --git a/assets/css/style.css b/assets/css/style.css index b37df41..f1e7da5 100644 --- a/assets/css/style.css +++ b/assets/css/style.css @@ -1,3 +1,3 @@ -#wpcontent{padding-left:0 !important;position:relative}@media (max-width: 600px){#wpcontent{padding-top:46px}}@media (max-width: 600px){#wpbody{padding-top:0}}#file-upload-types-header{border-top:3px solid #df7739;padding:16px 20px 17px}#file-upload-types-header img{display:block;margin:0;width:319px;height:75px}#file-upload-types{margin:0}#file-upload-types .file-upload-types-notice{margin-left:20px;margin-right:20px}#file-upload-types .file-upload-types-nav{background-color:#fff;margin:0 0 20px 0;padding:15px 20px;display:flex;align-items:center}#file-upload-types .file-upload-types-nav .file-upload-types-nav-title p{margin:0;font-size:23px;font-weight:400;line-height:1.3;color:#2d3235}#file-upload-types .file-upload-types-nav .fie-upload-types-docs{margin-left:auto}#file-upload-types .file-upload-types-nav .fie-upload-types-docs p{margin:0;font-size:14px;line-height:1;color:#777}#file-upload-types .file-upload-types-nav .fie-upload-types-docs p a{margin-left:20px}#file-upload-types .file-upload-types-nav .fie-upload-types-docs button{color:#fff;background:#e2772f}#file-upload-types .file-upload-types-nav .fie-upload-types-docs button:hover,#file-upload-types .file-upload-types-nav .fie-upload-types-docs button:active,#file-upload-types .file-upload-types-nav .fie-upload-types-docs button:focus{color:#fff;background:#658699}#file-upload-types .file-upload-types-content{margin:0 0 20px 0;padding:0 20px;display:flex}#file-upload-types .file-upload-types-content .file-upload-types-heading h3{margin:14px 0 10px;font-size:20px;font-weight:700;color:#444}#file-upload-types .file-upload-types-content .file-upload-types-heading p{margin-top:0;font-size:14px;color:#444}#file-upload-types .file-upload-types-content .file-upload-types-table{padding-right:30px}#file-upload-types .file-upload-types-content .file-upload-types-table .before-table{display:flex;align-items:flex-end;margin-bottom:10px}#file-upload-types .file-upload-types-content .file-upload-types-table .search-box{margin-left:auto;padding:20px 0 15px 40px}#file-upload-types .file-upload-types-content .file-upload-types-table .search-box input{width:200px;padding:10px 10px 10px 35px;line-height:1;color:#777;background:#fff url("../images/search-regular.svg") no-repeat 10px 50%;background-size:16px 16px;border:1px solid #ddd;border-radius:4px}#file-upload-types .file-upload-types-content .file-upload-types-table .search-box input:focus{color:#444;border:1px solid #638699;box-shadow:0 0 0 1px #638699}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container table{width:100%;font-family:arial, sans-serif;border-collapse:collapse;border:1px solid #ccd0d4}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container table img{width:14px;height:14px;margin-bottom:-2px}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container tr{border-top:1px solid #e1e1e1;border:1px solid #ccd0d4}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container tr.heading{border:none}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container tr.heading td{font-size:14px;font-weight:700;background:#7d8992;border-color:#7d8992;color:#ffffff}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container tr.heading td:first-child{border-radius:4px 0px 0px 0px}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container tr.heading td:last-child{border-radius:0px 4px 0px 0px}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container tr.section td{padding:10px 20px;font-size:11px;font-weight:700;text-transform:uppercase;color:#444444;background:#e7e8e7}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container td{text-align:left;padding:15px 20px;background:#fff;max-width:100px;vertical-align:top}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container tr.repetitive-fields td{vertical-align:middle}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container tr.repetitive-fields td.icons{white-space:nowrap;text-align:right}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container input{padding:10px;font-size:14px;font-weight:400;line-height:1;color:#777777;background:#fff;border:1px solid #999999;border-radius:4px}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container input[type="text"]{width:100%}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container input:focus{color:#444444;background:#fff;border:1px solid #638699;box-shadow:0 0 0 1px #638699;outline:none}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container .file-upload-types-table-main{border-bottom:1px solid #fff}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container .file-upload-types-table-main tr.section:nth-of-type(1){border-top:1px solid #f8f8f8}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container:nth-of-type(2) table{position:relative;border:none;box-shadow:0 2px 4px rgba(0,0,0,0.15);margin-bottom:-1px}#file-upload-types .file-upload-types-content .file-upload-types-products{min-width:300px;max-width:300px}#file-upload-types .file-upload-types-content .file-upload-types-products h3{margin:15px 0 -5px;font-size:16px;color:#444}#file-upload-types .file-upload-types-content .file-upload-types-products p{margin-bottom:30px;font-size:14px;color:#444}#file-upload-types .file-upload-types-content .file-upload-types-products .file-upload-types-recommended-plugins .plugins-container .plugin-container{float:left}#file-upload-types .file-upload-types-content .file-upload-types-products .file-upload-types-recommended-plugins .plugins-container .plugin-item{border-top:1px solid #e4e4e4}#file-upload-types .file-upload-types-content .file-upload-types-products .file-upload-types-recommended-plugins .plugins-container .plugin-item img{float:left;max-width:70px;height:auto}#file-upload-types .file-upload-types-content .file-upload-types-products .file-upload-types-recommended-plugins .plugins-container .plugin-item h5{margin:0 0 0 90px;font-size:14px}#file-upload-types .file-upload-types-content .file-upload-types-products .file-upload-types-recommended-plugins .plugins-container .plugin-item p{margin:0 0 0 90px;color:#777}#file-upload-types .file-upload-types-content .file-upload-types-products .file-upload-types-recommended-plugins .plugins-container .plugin-item .details{padding:30px 0}#file-upload-types .file-upload-types-content .file-upload-types-products .file-upload-types-recommended-plugins .plugins-container h5{font-size:17px;font-weight:700}#file-upload-types .file-upload-types-content .file-upload-types-products .file-upload-types-recommended-plugins .plugins-container a[target="_blank"]{background:url("../images/external-link-solid.svg") no-repeat 100% 50%;background-size:16px 16px;padding:0 21px 0 0}@media (max-width: 600px){#file-upload-types .file-upload-types-content .file-upload-types-products{display:none}}#file-upload-types p.file-upload-types-submit{padding:0 20px}#file-upload-types .file-upload-types-btn.file-upload-types-btn-orange{background-color:#e17730;border-color:#ccd0d4;color:#fff}#file-upload-types .file-upload-types-btn.file-upload-types-btn-orange:hover,#file-upload-types .file-upload-types-btn.file-upload-types-btn-orange:active,#file-upload-types .file-upload-types-btn.file-upload-types-btn-orange:focus{background-color:#c45e1b;border-color:#ccd0d4}#file-upload-types .file-upload-types-btn.file-upload-types-btn-orange:focus{box-shadow:0 0 0 1px #fff, 0 0 0 3px #c45e1b}#file-upload-types .file-upload-types-btn.file-upload-types-btn-blue{background-color:#809eb0;border-color:#ccd0d4;color:#fff}#file-upload-types .file-upload-types-btn.file-upload-types-btn-blue:hover,#file-upload-types .file-upload-types-btn.file-upload-types-btn-blue:active,#file-upload-types .file-upload-types-btn.file-upload-types-btn-blue:focus{background-color:#658699;border-color:#ccd0d4}#file-upload-types .file-upload-types-btn.file-upload-types-btn-blue:focus{box-shadow:0 0 0 1px #fff, 0 0 0 3px #658699}.file-upload-types-btn{border:0;border-radius:3px;cursor:pointer;margin:0;text-decoration:none;text-align:center;vertical-align:middle;white-space:nowrap;text-shadow:none;box-shadow:none;outline:none}.file-upload-types-btn.file-upload-types-btn-md{font-size:13px;font-weight:600;padding:8px 12px;min-height:35px}.file-upload-types-info{position:relative;display:inline-block;margin:0 0 -3px 5px}.file-upload-types-info .tooltiptext{visibility:hidden;width:150px;background:#21282c;color:#fff;text-align:center;text-transform:none;border-radius:4px;padding:10px;position:absolute;z-index:1;margin:-19px 0 0 10px;font-size:13px;font-weight:400;box-shadow:0 5px 15px rgba(0,0,0,0.2)}.file-upload-types-info .tooltiptext::after{position:absolute;top:23px;left:-5px;content:'';width:0;height:0;border-right:solid 5px rgba(0,0,0,0.8);border-bottom:solid 5px transparent;border-top:solid 5px transparent}.file-upload-types-info:hover .tooltiptext{visibility:visible}.file-upload-types-plus,.file-upload-types-minus{cursor:pointer}.file-upload-types-plus:hover,.file-upload-types-minus:hover{opacity:.75}.file-upload-types-minus{margin-left:5px} +#wpcontent{padding-left:0 !important;position:relative}@media (max-width: 600px){#wpcontent{padding-top:46px}}@media (max-width: 600px){#wpbody{padding-top:0}}#file-upload-types-header{border-top:3px solid #df7739;padding:16px 20px 17px}#file-upload-types-header img{display:block;margin:0;width:319px;height:75px}#file-upload-types{margin:0}#file-upload-types .file-upload-types-notice{margin-left:20px;margin-right:20px}#file-upload-types .file-upload-types-nav{background-color:#fff;margin:0 0 20px 0;padding:15px 20px;display:flex;align-items:center}#file-upload-types .file-upload-types-nav .file-upload-types-nav-title p{margin:0;font-size:23px;font-weight:400;line-height:1.3;color:#2d3235}#file-upload-types .file-upload-types-nav .fie-upload-types-docs{margin-left:auto}#file-upload-types .file-upload-types-nav .fie-upload-types-docs p{margin:0;font-size:14px;line-height:1;color:#777}#file-upload-types .file-upload-types-nav .fie-upload-types-docs p a{margin-left:20px}#file-upload-types .file-upload-types-nav .fie-upload-types-docs button{color:#fff;background:#e2772f}#file-upload-types .file-upload-types-nav .fie-upload-types-docs button:hover,#file-upload-types .file-upload-types-nav .fie-upload-types-docs button:active,#file-upload-types .file-upload-types-nav .fie-upload-types-docs button:focus{color:#fff;background:#658699}#file-upload-types .file-upload-types-content{margin:0 0 20px 0;padding:0 20px;display:flex}#file-upload-types .file-upload-types-content .file-upload-types-heading h3{margin:14px 0 10px;font-size:20px;font-weight:700;color:#444}#file-upload-types .file-upload-types-content .file-upload-types-heading p{margin-top:0;font-size:14px;color:#444}#file-upload-types .file-upload-types-content .file-upload-types-table{padding-right:30px;width:100%}#file-upload-types .file-upload-types-content .file-upload-types-table .before-table{display:flex;align-items:flex-end;margin-bottom:10px}#file-upload-types .file-upload-types-content .file-upload-types-table .search-box{margin-left:auto;padding:20px 0 15px 40px}#file-upload-types .file-upload-types-content .file-upload-types-table .search-box input{width:200px;padding:10px 10px 10px 35px;line-height:1;color:#777;background:#fff url("../images/search-regular.svg") no-repeat 10px 50%;background-size:16px 16px;border:1px solid #ddd;border-radius:4px}#file-upload-types .file-upload-types-content .file-upload-types-table .search-box input:focus{color:#444;border:1px solid #638699;box-shadow:0 0 0 1px #638699}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container table{width:100%;font-family:arial, sans-serif;border-collapse:collapse;border:1px solid #ccd0d4}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container table img{width:14px;height:14px;margin-bottom:-2px}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container tr{border-top:1px solid #e1e1e1;border:1px solid #ccd0d4}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container tr.heading{border:none}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container tr.heading td{font-size:14px;font-weight:700;background:#7d8992;border-color:#7d8992;color:#ffffff}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container tr.heading td:first-child{border-radius:4px 0px 0px 0px}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container tr.heading td:last-child{border-radius:0px 4px 0px 0px}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container tr.section td{padding:10px 20px;font-size:11px;font-weight:700;text-transform:uppercase;color:#444444;background:#e7e8e7}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container td{text-align:left;padding:15px 20px;background:#fff;max-width:100px;vertical-align:top}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container tr.repetitive-fields td{vertical-align:middle}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container tr.repetitive-fields td.icons{white-space:nowrap;text-align:right}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container input{padding:10px;font-size:14px;font-weight:400;line-height:1;color:#777777;background:#fff;border:1px solid #999999;border-radius:4px}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container input[type="text"]{width:100%}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container input:focus{color:#444444;background:#fff;border:1px solid #638699;box-shadow:0 0 0 1px #638699;outline:none}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container .file-upload-types-table-main{border-bottom:1px solid #fff}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container .file-upload-types-table-main tr.section:nth-of-type(1){border-top:1px solid #f8f8f8}#file-upload-types .file-upload-types-content .file-upload-types-table .table-container:nth-of-type(2) table{position:relative;border:none;box-shadow:0 2px 4px rgba(0,0,0,0.15);margin-bottom:-1px}#file-upload-types .file-upload-types-content .file-upload-types-products{min-width:300px;max-width:300px}#file-upload-types .file-upload-types-content .file-upload-types-products h3{margin:15px 0 -5px;font-size:16px;color:#444}#file-upload-types .file-upload-types-content .file-upload-types-products p{margin-bottom:30px;font-size:14px;color:#444}#file-upload-types .file-upload-types-content .file-upload-types-products .file-upload-types-recommended-plugins .plugins-container .plugin-container{float:left}#file-upload-types .file-upload-types-content .file-upload-types-products .file-upload-types-recommended-plugins .plugins-container .plugin-item{border-top:1px solid #e4e4e4}#file-upload-types .file-upload-types-content .file-upload-types-products .file-upload-types-recommended-plugins .plugins-container .plugin-item img{float:left;max-width:70px;height:auto}#file-upload-types .file-upload-types-content .file-upload-types-products .file-upload-types-recommended-plugins .plugins-container .plugin-item h5{margin:0 0 0 90px;font-size:14px}#file-upload-types .file-upload-types-content .file-upload-types-products .file-upload-types-recommended-plugins .plugins-container .plugin-item p{margin:0 0 0 90px;color:#777}#file-upload-types .file-upload-types-content .file-upload-types-products .file-upload-types-recommended-plugins .plugins-container .plugin-item .details{padding:30px 0}#file-upload-types .file-upload-types-content .file-upload-types-products .file-upload-types-recommended-plugins .plugins-container h5{font-size:17px;font-weight:700}#file-upload-types .file-upload-types-content .file-upload-types-products .file-upload-types-recommended-plugins .plugins-container a[target="_blank"]{background:url("../images/external-link-solid.svg") no-repeat 100% 50%;background-size:16px 16px;padding:0 21px 0 0}@media (max-width: 600px){#file-upload-types .file-upload-types-content .file-upload-types-products{display:none}}#file-upload-types p.file-upload-types-submit{padding:0 20px}#file-upload-types .file-upload-types-btn.file-upload-types-btn-orange{background-color:#e17730;border-color:#ccd0d4;color:#fff}#file-upload-types .file-upload-types-btn.file-upload-types-btn-orange:hover,#file-upload-types .file-upload-types-btn.file-upload-types-btn-orange:active,#file-upload-types .file-upload-types-btn.file-upload-types-btn-orange:focus{background-color:#c45e1b;border-color:#ccd0d4}#file-upload-types .file-upload-types-btn.file-upload-types-btn-orange:focus{box-shadow:0 0 0 1px #fff, 0 0 0 3px #c45e1b}#file-upload-types .file-upload-types-btn.file-upload-types-btn-blue{background-color:#809eb0;border-color:#ccd0d4;color:#fff}#file-upload-types .file-upload-types-btn.file-upload-types-btn-blue:hover,#file-upload-types .file-upload-types-btn.file-upload-types-btn-blue:active,#file-upload-types .file-upload-types-btn.file-upload-types-btn-blue:focus{background-color:#658699;border-color:#ccd0d4}#file-upload-types .file-upload-types-btn.file-upload-types-btn-blue:focus{box-shadow:0 0 0 1px #fff, 0 0 0 3px #658699}.file-upload-types-btn{border:0;border-radius:3px;cursor:pointer;margin:0;text-decoration:none;text-align:center;vertical-align:middle;white-space:nowrap;text-shadow:none;box-shadow:none;outline:none}.file-upload-types-btn.file-upload-types-btn-md{font-size:13px;font-weight:600;padding:8px 12px;min-height:35px}.file-upload-types-info{position:relative;display:inline-block;margin:0 0 -3px 5px}.file-upload-types-info .tooltiptext{visibility:hidden;width:150px;background:#21282c;color:#fff;text-align:center;text-transform:none;border-radius:4px;padding:10px;position:absolute;z-index:1;margin:-19px 0 0 10px;font-size:13px;font-weight:400;box-shadow:0 5px 15px rgba(0,0,0,0.2)}.file-upload-types-info .tooltiptext::after{position:absolute;top:23px;left:-5px;content:'';width:0;height:0;border-right:solid 5px rgba(0,0,0,0.8);border-bottom:solid 5px transparent;border-top:solid 5px transparent}.file-upload-types-info:hover .tooltiptext{visibility:visible}.file-upload-types-plus,.file-upload-types-minus{cursor:pointer}.file-upload-types-plus:hover,.file-upload-types-minus:hover{opacity:.75}.file-upload-types-minus{margin-left:5px} /*# sourceMappingURL=style.css.map */ diff --git a/assets/css/style.css.map b/assets/css/style.css.map index 1bd9828..44dc0b6 100644 --- a/assets/css/style.css.map +++ b/assets/css/style.css.map @@ -1 +1 @@ -{"version":3,"file":"style.css","sources":["style.scss"],"sourcesContent":["$primary-color: #fff;\r\n$secondary-color: #e17730;\r\n$border-color: #ccd0d4;\r\n\r\n#wpcontent {\r\n padding-left: 0 !important;\r\n position: relative\r\n}\r\n\r\n@media (max-width: 600px) {\r\n #wpcontent {\r\n padding-top: 46px\r\n }\r\n}\r\n\r\n@media (max-width: 600px) {\r\n #wpbody {\r\n padding-top: 0\r\n }\r\n}\r\n\r\n#file-upload-types-header {\r\n border-top: 3px solid #df7739;\r\n padding: 16px 20px 17px;\r\n\r\n\timg {\r\n\t\tdisplay: block;\r\n\t\tmargin: 0;\r\n\t\twidth: 319px;\r\n\t\theight: 75px;\r\n }\r\n}\r\n\r\n#file-upload-types {\r\n margin: 0;\r\n\r\n .file-upload-types-notice {\r\n\t\tmargin-left: 20px;\r\n\t\tmargin-right: 20px;\r\n }\r\n\r\n\t.file-upload-types-nav {\r\n\t background-color: $primary-color;\r\n\t margin: 0 0 20px 0;\r\n\t padding: 15px 20px;\r\n\t\tdisplay: flex;\r\n\t\talign-items: center;\r\n\r\n\t .file-upload-types-nav-title p {\r\n\t \tmargin: 0;\r\n\t\t\tfont-size: 23px;\r\n\t\t\tfont-weight: 400;\r\n\t\t\tline-height: 1.3;\r\n\t\t\tcolor: #2d3235;\r\n\t }\r\n\r\n\t .fie-upload-types-docs {\r\n\t\t\tmargin-left: auto;\r\n\r\n\t\t\tp {\r\n\t\t\t\tmargin: 0;\r\n\t\t\t\tfont-size: 14px;\r\n\t\t\t\tline-height: 1;\r\n\t\t\t\tcolor: #777;\r\n\t\t\t}\r\n\r\n\t\t\tp a {\r\n\t\t\t\tmargin-left: 20px;\r\n\t\t\t}\r\n\r\n\t\t\tbutton {\r\n\t\t\t\tcolor:#fff;\r\n\t\t\t\tbackground:#e2772f;\r\n\t\t\t}\r\n\r\n\t\t\tbutton:hover,\r\n\t\t\tbutton:active,\r\n\t\t\tbutton:focus {\r\n\t\t\t\tcolor:#fff;\r\n\t\t\t\tbackground:#658699;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t.file-upload-types-content {\r\n\t\tmargin: 0 0 20px 0;\r\n\t\tpadding: 0 20px;\r\n\t\tdisplay: flex;\r\n\r\n\t\t.file-upload-types-heading {\r\n\t\t\t\r\n\t\t\th3 {\r\n\t\t\t\tmargin: 14px 0 10px;\r\n\t\t\t\tfont-size: 20px;\r\n\t\t\t\tfont-weight: 700;\r\n\t\t\t\tcolor: #444;\r\n\t\t\t}\r\n\r\n\t\t\tp {\r\n\t\t\t\tmargin-top: 0;\r\n\t\t\t\tfont-size: 14px;\r\n\t\t\t\tcolor: #444;\r\n\t\t\t}\r\n\r\n\t\t}\r\n\r\n\t\t.file-upload-types-table {\r\n\t\t\tpadding-right: 30px;\r\n\r\n\t\t\t.before-table {\r\n\t\t\t\tdisplay: flex;\r\n\t\t\t\talign-items: flex-end;\r\n\t\t\t\tmargin-bottom: 10px;\r\n\t\t\t}\r\n\r\n\t\t\t.search-box {\r\n\t\t\t\tmargin-left: auto;\r\n\t\t\t\tpadding: 20px 0 15px 40px;\r\n\t\t\t}\r\n\r\n\t\t\t.search-box input {\r\n\t\t\t\twidth: 200px;\r\n\t\t\t\tpadding: 10px 10px 10px 35px;\r\n\t\t\t\tline-height: 1;\r\n\t\t\t\tcolor: #777;\r\n\t\t\t\tbackground: #fff url('../images/search-regular.svg') no-repeat 10px 50%;\r\n\t\t\t\tbackground-size: 16px 16px;\r\n\t\t\t\tborder: 1px solid #ddd;\r\n\t\t\t\tborder-radius: 4px;\r\n\t\t\t}\r\n\r\n\t\t\t.search-box input:focus {\r\n\t\t\t\tcolor: #444;\r\n\t\t\t\tborder: 1px solid #638699;\r\n\t\t\t\tbox-shadow: 0 0 0 1px #638699;\r\n\t\t\t}\r\n\r\n\t\t\t.table-container {\r\n\r\n\t\t\t\ttable {\r\n\t\t\t\t\twidth: 100%;\r\n\t\t\t\t\tfont-family: arial, sans-serif;\r\n\t\t\t\t\tborder-collapse: collapse;\r\n\t\t\t\t\tborder: 1px solid $border-color;\r\n\r\n\t\t\t\t\timg {\r\n\t\t\t\t\t\twidth: 14px;\r\n\t\t\t\t\t\theight: 14px;\r\n\t\t\t\t\t\tmargin-bottom: -2px;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttr {\r\n\t\t\t\t\tborder-top: 1px solid #e1e1e1;\r\n\t\t\t\t\tborder: 1px solid $border-color;\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttr.heading {\r\n\t\t\t\t\tborder: none;\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttr.heading td {\r\n\t\t\t\t\tfont-size: 14px;\r\n\t\t\t\t\tfont-weight: 700;\r\n\t\t\t\t\tbackground: #7d8992;\r\n\t\t\t\t\tborder-color: #7d8992;\r\n\t\t\t\t\tcolor: #ffffff;\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttr.heading td:first-child {\r\n\t\t\t\t\tborder-radius: 4px 0px 0px 0px;\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttr.heading td:last-child {\r\n\t\t\t\t\tborder-radius: 0px 4px 0px 0px;\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttr.section td {\r\n\t\t\t\t\tpadding: 10px 20px;\r\n\t\t\t\t\tfont-size: 11px;\r\n\t\t\t\t\tfont-weight: 700;\r\n\t\t\t\t\ttext-transform: uppercase;\r\n\t\t\t\t\tcolor: #444444;\r\n\t\t\t\t\tbackground: #e7e8e7;\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttd {\r\n\t\t\t\t\ttext-align: left;\r\n\t\t\t\t\tpadding: 15px 20px;\r\n\t\t\t\t\tbackground: $primary-color;\r\n\t\t\t\t\tmax-width: 100px;\r\n\t\t\t\t\tvertical-align: top;\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttr.repetitive-fields {\r\n\t\t\t\t\ttd {\t\r\n\t\t\t\t\t\tvertical-align: middle;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\ttd.icons {\r\n\t\t\t\t\t\twhite-space: nowrap;\r\n\t\t\t\t\t\ttext-align: right;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tinput {\r\n\t\t\t\t\tpadding: 10px;\r\n\t\t\t\t\tfont-size: 14px;\r\n\t\t\t\t\tfont-weight: 400;\r\n\t\t\t\t\tline-height: 1;\r\n\t\t\t\t\tcolor: #777777;\r\n\t\t\t\t\tbackground: #fff;\r\n\t\t\t\t\tborder: 1px solid #999999;\r\n\t\t\t\t\tborder-radius: 4px;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tinput[type=\"text\"] {\r\n\t\t\t\t\twidth: 100%;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tinput:focus {\r\n\t\t\t\t\tcolor: #444444;\r\n\t\t\t\t\tbackground: #fff;\r\n\t\t\t\t\tborder: 1px solid #638699;\r\n\t\t\t\t\tbox-shadow: 0 0 0 1px #638699;\r\n\t\t\t\t\toutline: none;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t.file-upload-types-table-main {\r\n\t\t\t\t\tborder-bottom: 1px solid #fff;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t.file-upload-types-table-main tr.section:nth-of-type(1) {\r\n\t\t\t\t\tborder-top: 1px solid #f8f8f8;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t.table-container:nth-of-type(2) table {\r\n\t\t\t\tposition: relative;\r\n\t\t\t\tborder: none;\r\n\t\t\t\tbox-shadow: 0 2px 4px rgba(0,0,0,0.15);\r\n\t\t\t\tmargin-bottom: -1px;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t.file-upload-types-products {\r\n\t\t\tmin-width: 300px;\r\n\t\t\tmax-width: 300px;\r\n\r\n\t\t\th3 {\r\n\t\t\t\tmargin: 15px 0 -5px;\r\n\t\t\t\tfont-size: 16px;\r\n\t\t\t\tcolor: #444;\r\n\t\t\t}\r\n\r\n\t\t\tp {\r\n\t\t\t\tmargin-bottom: 30px;\r\n\t\t\t\tfont-size: 14px;\r\n\t\t\t\tcolor: #444;\r\n\t\t\t}\r\n\r\n\t\t\t.file-upload-types-recommended-plugins {\r\n\r\n\t\t\t\t.plugins-container {\r\n\r\n\t\t\t\t .plugin-container {\r\n\t\t\t\t\t\tfloat: left;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t.plugin-item {\r\n\t\t\t\t\t\tborder-top: 1px solid #e4e4e4;\r\n\r\n\t\t\t\t\t\timg {\r\n\t\t\t\t\t\t float: left;\r\n\t\t\t\t\t\t max-width: 70px;\r\n\t\t\t\t\t\t height: auto;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\th5 {\r\n\t\t\t\t\t\t margin: 0 0 0 90px;\r\n\t\t\t\t\t\t font-size: 14px\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tp {\r\n\t\t\t\t\t\t margin: 0 0 0 90px;\r\n\t\t\t\t\t\t color: #777;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t.details {\r\n\t\t\t\t\t\t\tpadding: 30px 0;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\th5 {\r\n\t\t\t\t\t\tfont-size: 17px;\r\n\t\t\t\t\t\tfont-weight: 700;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\ta[target=\"_blank\"] {\r\n\t\t\t\t\t background: url('../images/external-link-solid.svg') no-repeat 100% 50%;\r\n\t\t\t\t\t background-size: 16px 16px;\r\n\t\t\t\t\t padding: 0 21px 0 0;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t@media (max-width: 600px) {\r\n\t\t\t.file-upload-types-products {\r\n\t\t display: none;\r\n\t\t }\r\n\t\t}\r\n\t}\r\n\r\n\tp.file-upload-types-submit {\r\n\t\tpadding: 0 20px;\r\n\t}\r\n\r\n\t.file-upload-types-btn.file-upload-types-btn-orange {\r\n\t\tbackground-color: $secondary-color;\r\n\t\tborder-color: $border-color;\r\n\t\tcolor: $primary-color;\r\n\t}\r\n\r\n\t.file-upload-types-btn.file-upload-types-btn-orange:hover,\r\n\t.file-upload-types-btn.file-upload-types-btn-orange:active,\r\n\t.file-upload-types-btn.file-upload-types-btn-orange:focus {\r\n\t background-color: #c45e1b;\r\n\t border-color: $border-color;\r\n\t}\r\n\r\n\t.file-upload-types-btn.file-upload-types-btn-orange:focus {\r\n\t\tbox-shadow: 0 0 0 1px #fff, 0 0 0 3px #c45e1b;\r\n\t}\r\n\r\n\t.file-upload-types-btn.file-upload-types-btn-blue {\r\n\t\tbackground-color: #809eb0;\r\n\t\tborder-color: $border-color;\r\n\t\tcolor: $primary-color;\r\n\t}\r\n\r\n\t.file-upload-types-btn.file-upload-types-btn-blue:hover,\r\n\t.file-upload-types-btn.file-upload-types-btn-blue:active,\r\n\t.file-upload-types-btn.file-upload-types-btn-blue:focus {\r\n\t background-color: #658699;\r\n\t border-color: $border-color;\r\n\t}\r\n\r\n\t.file-upload-types-btn.file-upload-types-btn-blue:focus {\r\n\t\tbox-shadow: 0 0 0 1px #fff, 0 0 0 3px #658699;\r\n\t}\r\n}\r\n\r\n.file-upload-types-btn {\r\n border: 0;\r\n border-radius: 3px;\r\n cursor: pointer;\r\n margin: 0;\r\n text-decoration: none;\r\n text-align: center;\r\n vertical-align: middle;\r\n white-space: nowrap;\r\n text-shadow: none;\r\n box-shadow: none;\r\n outline: none;\r\n}\r\n\r\n.file-upload-types-btn.file-upload-types-btn-md {\r\n\tfont-size: 13px;\r\n\tfont-weight: 600;\r\n\tpadding: 8px 12px;\r\n\tmin-height: 35px;\r\n}\r\n\r\n.file-upload-types-info {\r\n\tposition: relative;\r\n\tdisplay: inline-block;\r\n\tmargin: 0 0 -3px 5px;\r\n\r\n \t.tooltiptext {\r\n\t\tvisibility: hidden;\r\n\t\twidth: 150px;\r\n\t\tbackground: #21282c;\r\n\t\tcolor: #fff;\r\n\t\ttext-align: center;\r\n\t\ttext-transform: none;\r\n\t\tborder-radius: 4px;\r\n\t\tpadding: 10px;\r\n\t\tposition: absolute;\r\n\t\tz-index: 1;\r\n\t\tmargin: -19px 0 0 10px;\r\n\t\tfont-size: 13px;\r\n\t\tfont-weight: 400;\r\n\t\tbox-shadow: 0 5px 15px rgba(0, 0, 0, .2);\r\n\t}\r\n\r\n\t.tooltiptext::after{\r\n\t\tposition: absolute;\r\n\t\ttop: 23px;\r\n\t\tleft: -5px;\r\n\t\tcontent: '';\r\n\t\twidth: 0;\r\n\t\theight: 0;\r\n\t\tborder-right: solid 5px rgba(0,0,0,.8);\r\n\t\tborder-bottom: solid 5px transparent;\r\n\t\tborder-top: solid 5px transparent;\r\n\t}\r\n}\r\n\r\n.file-upload-types-info:hover .tooltiptext {\r\n\tvisibility: visible;\r\n}\r\n\r\n.file-upload-types-plus,\r\n.file-upload-types-minus {\r\n\tcursor: pointer;\r\n}\r\n\r\n.file-upload-types-plus:hover,\r\n.file-upload-types-minus:hover {\r\n\topacity: .75;\r\n}\r\n\r\n.file-upload-types-minus {\r\n\tmargin-left: 5px;\r\n}\r\n"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"style.css","sources":["style.scss"],"sourcesContent":["$primary-color: #fff;\n$secondary-color: #e17730;\n$border-color: #ccd0d4;\n\n#wpcontent {\n padding-left: 0 !important;\n position: relative\n}\n\n@media (max-width: 600px) {\n #wpcontent {\n padding-top: 46px\n }\n}\n\n@media (max-width: 600px) {\n #wpbody {\n padding-top: 0\n }\n}\n\n#file-upload-types-header {\n border-top: 3px solid #df7739;\n padding: 16px 20px 17px;\n\n\timg {\n\t\tdisplay: block;\n\t\tmargin: 0;\n\t\twidth: 319px;\n\t\theight: 75px;\n }\n}\n\n#file-upload-types {\n margin: 0;\n\n .file-upload-types-notice {\n\t\tmargin-left: 20px;\n\t\tmargin-right: 20px;\n }\n\n\t.file-upload-types-nav {\n\t background-color: $primary-color;\n\t margin: 0 0 20px 0;\n\t padding: 15px 20px;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\n\t .file-upload-types-nav-title p {\n\t \tmargin: 0;\n\t\t\tfont-size: 23px;\n\t\t\tfont-weight: 400;\n\t\t\tline-height: 1.3;\n\t\t\tcolor: #2d3235;\n\t }\n\n\t .fie-upload-types-docs {\n\t\t\tmargin-left: auto;\n\n\t\t\tp {\n\t\t\t\tmargin: 0;\n\t\t\t\tfont-size: 14px;\n\t\t\t\tline-height: 1;\n\t\t\t\tcolor: #777;\n\t\t\t}\n\n\t\t\tp a {\n\t\t\t\tmargin-left: 20px;\n\t\t\t}\n\n\t\t\tbutton {\n\t\t\t\tcolor:#fff;\n\t\t\t\tbackground:#e2772f;\n\t\t\t}\n\n\t\t\tbutton:hover,\n\t\t\tbutton:active,\n\t\t\tbutton:focus {\n\t\t\t\tcolor:#fff;\n\t\t\t\tbackground:#658699;\n\t\t\t}\n\t\t}\n\t}\n\n\t.file-upload-types-content {\n\t\tmargin: 0 0 20px 0;\n\t\tpadding: 0 20px;\n\t\tdisplay: flex;\n\n\t\t.file-upload-types-heading {\n\t\t\t\n\t\t\th3 {\n\t\t\t\tmargin: 14px 0 10px;\n\t\t\t\tfont-size: 20px;\n\t\t\t\tfont-weight: 700;\n\t\t\t\tcolor: #444;\n\t\t\t}\n\n\t\t\tp {\n\t\t\t\tmargin-top: 0;\n\t\t\t\tfont-size: 14px;\n\t\t\t\tcolor: #444;\n\t\t\t}\n\n\t\t}\n\n\t\t.file-upload-types-table {\n\t\t\tpadding-right: 30px;\n\t\t\twidth: 100%;\n\n\t\t\t.before-table {\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: flex-end;\n\t\t\t\tmargin-bottom: 10px;\n\t\t\t}\n\n\t\t\t.search-box {\n\t\t\t\tmargin-left: auto;\n\t\t\t\tpadding: 20px 0 15px 40px;\n\t\t\t}\n\n\t\t\t.search-box input {\n\t\t\t\twidth: 200px;\n\t\t\t\tpadding: 10px 10px 10px 35px;\n\t\t\t\tline-height: 1;\n\t\t\t\tcolor: #777;\n\t\t\t\tbackground: #fff url('../images/search-regular.svg') no-repeat 10px 50%;\n\t\t\t\tbackground-size: 16px 16px;\n\t\t\t\tborder: 1px solid #ddd;\n\t\t\t\tborder-radius: 4px;\n\t\t\t}\n\n\t\t\t.search-box input:focus {\n\t\t\t\tcolor: #444;\n\t\t\t\tborder: 1px solid #638699;\n\t\t\t\tbox-shadow: 0 0 0 1px #638699;\n\t\t\t}\n\n\t\t\t.table-container {\n\n\t\t\t\ttable {\n\t\t\t\t\twidth: 100%;\n\t\t\t\t\tfont-family: arial, sans-serif;\n\t\t\t\t\tborder-collapse: collapse;\n\t\t\t\t\tborder: 1px solid $border-color;\n\n\t\t\t\t\timg {\n\t\t\t\t\t\twidth: 14px;\n\t\t\t\t\t\theight: 14px;\n\t\t\t\t\t\tmargin-bottom: -2px;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\ttr {\n\t\t\t\t\tborder-top: 1px solid #e1e1e1;\n\t\t\t\t\tborder: 1px solid $border-color;\n\t\t\t\t}\n\n\t\t\t\ttr.heading {\n\t\t\t\t\tborder: none;\n\t\t\t\t}\n\n\t\t\t\ttr.heading td {\n\t\t\t\t\tfont-size: 14px;\n\t\t\t\t\tfont-weight: 700;\n\t\t\t\t\tbackground: #7d8992;\n\t\t\t\t\tborder-color: #7d8992;\n\t\t\t\t\tcolor: #ffffff;\n\t\t\t\t}\n\n\t\t\t\ttr.heading td:first-child {\n\t\t\t\t\tborder-radius: 4px 0px 0px 0px;\n\t\t\t\t}\n\n\t\t\t\ttr.heading td:last-child {\n\t\t\t\t\tborder-radius: 0px 4px 0px 0px;\n\t\t\t\t}\n\n\t\t\t\ttr.section td {\n\t\t\t\t\tpadding: 10px 20px;\n\t\t\t\t\tfont-size: 11px;\n\t\t\t\t\tfont-weight: 700;\n\t\t\t\t\ttext-transform: uppercase;\n\t\t\t\t\tcolor: #444444;\n\t\t\t\t\tbackground: #e7e8e7;\n\t\t\t\t}\n\n\t\t\t\ttd {\n\t\t\t\t\ttext-align: left;\n\t\t\t\t\tpadding: 15px 20px;\n\t\t\t\t\tbackground: $primary-color;\n\t\t\t\t\tmax-width: 100px;\n\t\t\t\t\tvertical-align: top;\n\t\t\t\t}\n\n\t\t\t\ttr.repetitive-fields {\n\t\t\t\t\ttd {\t\n\t\t\t\t\t\tvertical-align: middle;\n\t\t\t\t\t}\n\n\t\t\t\t\ttd.icons {\n\t\t\t\t\t\twhite-space: nowrap;\n\t\t\t\t\t\ttext-align: right;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tinput {\n\t\t\t\t\tpadding: 10px;\n\t\t\t\t\tfont-size: 14px;\n\t\t\t\t\tfont-weight: 400;\n\t\t\t\t\tline-height: 1;\n\t\t\t\t\tcolor: #777777;\n\t\t\t\t\tbackground: #fff;\n\t\t\t\t\tborder: 1px solid #999999;\n\t\t\t\t\tborder-radius: 4px;\n\t\t\t\t}\n\n\t\t\t\tinput[type=\"text\"] {\n\t\t\t\t\twidth: 100%;\n\t\t\t\t}\n\n\t\t\t\tinput:focus {\n\t\t\t\t\tcolor: #444444;\n\t\t\t\t\tbackground: #fff;\n\t\t\t\t\tborder: 1px solid #638699;\n\t\t\t\t\tbox-shadow: 0 0 0 1px #638699;\n\t\t\t\t\toutline: none;\n\t\t\t\t}\n\n\t\t\t\t.file-upload-types-table-main {\n\t\t\t\t\tborder-bottom: 1px solid #fff;\n\t\t\t\t}\n\n\t\t\t\t.file-upload-types-table-main tr.section:nth-of-type(1) {\n\t\t\t\t\tborder-top: 1px solid #f8f8f8;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t.table-container:nth-of-type(2) table {\n\t\t\t\tposition: relative;\n\t\t\t\tborder: none;\n\t\t\t\tbox-shadow: 0 2px 4px rgba(0,0,0,0.15);\n\t\t\t\tmargin-bottom: -1px;\n\t\t\t}\n\t\t}\n\n\t\t.file-upload-types-products {\n\t\t\tmin-width: 300px;\n\t\t\tmax-width: 300px;\n\n\t\t\th3 {\n\t\t\t\tmargin: 15px 0 -5px;\n\t\t\t\tfont-size: 16px;\n\t\t\t\tcolor: #444;\n\t\t\t}\n\n\t\t\tp {\n\t\t\t\tmargin-bottom: 30px;\n\t\t\t\tfont-size: 14px;\n\t\t\t\tcolor: #444;\n\t\t\t}\n\n\t\t\t.file-upload-types-recommended-plugins {\n\n\t\t\t\t.plugins-container {\n\n\t\t\t\t .plugin-container {\n\t\t\t\t\t\tfloat: left;\n\t\t\t\t\t}\n\n\t\t\t\t\t.plugin-item {\n\t\t\t\t\t\tborder-top: 1px solid #e4e4e4;\n\n\t\t\t\t\t\timg {\n\t\t\t\t\t\t float: left;\n\t\t\t\t\t\t max-width: 70px;\n\t\t\t\t\t\t height: auto;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\th5 {\n\t\t\t\t\t\t margin: 0 0 0 90px;\n\t\t\t\t\t\t font-size: 14px\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tp {\n\t\t\t\t\t\t margin: 0 0 0 90px;\n\t\t\t\t\t\t color: #777;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t.details {\n\t\t\t\t\t\t\tpadding: 30px 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\th5 {\n\t\t\t\t\t\tfont-size: 17px;\n\t\t\t\t\t\tfont-weight: 700;\n\t\t\t\t\t}\n\n\t\t\t\t\ta[target=\"_blank\"] {\n\t\t\t\t\t background: url('../images/external-link-solid.svg') no-repeat 100% 50%;\n\t\t\t\t\t background-size: 16px 16px;\n\t\t\t\t\t padding: 0 21px 0 0;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t@media (max-width: 600px) {\n\t\t\t.file-upload-types-products {\n\t\t display: none;\n\t\t }\n\t\t}\n\t}\n\n\tp.file-upload-types-submit {\n\t\tpadding: 0 20px;\n\t}\n\n\t.file-upload-types-btn.file-upload-types-btn-orange {\n\t\tbackground-color: $secondary-color;\n\t\tborder-color: $border-color;\n\t\tcolor: $primary-color;\n\t}\n\n\t.file-upload-types-btn.file-upload-types-btn-orange:hover,\n\t.file-upload-types-btn.file-upload-types-btn-orange:active,\n\t.file-upload-types-btn.file-upload-types-btn-orange:focus {\n\t background-color: #c45e1b;\n\t border-color: $border-color;\n\t}\n\n\t.file-upload-types-btn.file-upload-types-btn-orange:focus {\n\t\tbox-shadow: 0 0 0 1px #fff, 0 0 0 3px #c45e1b;\n\t}\n\n\t.file-upload-types-btn.file-upload-types-btn-blue {\n\t\tbackground-color: #809eb0;\n\t\tborder-color: $border-color;\n\t\tcolor: $primary-color;\n\t}\n\n\t.file-upload-types-btn.file-upload-types-btn-blue:hover,\n\t.file-upload-types-btn.file-upload-types-btn-blue:active,\n\t.file-upload-types-btn.file-upload-types-btn-blue:focus {\n\t background-color: #658699;\n\t border-color: $border-color;\n\t}\n\n\t.file-upload-types-btn.file-upload-types-btn-blue:focus {\n\t\tbox-shadow: 0 0 0 1px #fff, 0 0 0 3px #658699;\n\t}\n}\n\n.file-upload-types-btn {\n border: 0;\n border-radius: 3px;\n cursor: pointer;\n margin: 0;\n text-decoration: none;\n text-align: center;\n vertical-align: middle;\n white-space: nowrap;\n text-shadow: none;\n box-shadow: none;\n outline: none;\n}\n\n.file-upload-types-btn.file-upload-types-btn-md {\n\tfont-size: 13px;\n\tfont-weight: 600;\n\tpadding: 8px 12px;\n\tmin-height: 35px;\n}\n\n.file-upload-types-info {\n\tposition: relative;\n\tdisplay: inline-block;\n\tmargin: 0 0 -3px 5px;\n\n \t.tooltiptext {\n\t\tvisibility: hidden;\n\t\twidth: 150px;\n\t\tbackground: #21282c;\n\t\tcolor: #fff;\n\t\ttext-align: center;\n\t\ttext-transform: none;\n\t\tborder-radius: 4px;\n\t\tpadding: 10px;\n\t\tposition: absolute;\n\t\tz-index: 1;\n\t\tmargin: -19px 0 0 10px;\n\t\tfont-size: 13px;\n\t\tfont-weight: 400;\n\t\tbox-shadow: 0 5px 15px rgba(0, 0, 0, .2);\n\t}\n\n\t.tooltiptext::after{\n\t\tposition: absolute;\n\t\ttop: 23px;\n\t\tleft: -5px;\n\t\tcontent: '';\n\t\twidth: 0;\n\t\theight: 0;\n\t\tborder-right: solid 5px rgba(0,0,0,.8);\n\t\tborder-bottom: solid 5px transparent;\n\t\tborder-top: solid 5px transparent;\n\t}\n}\n\n.file-upload-types-info:hover .tooltiptext {\n\tvisibility: visible;\n}\n\n.file-upload-types-plus,\n.file-upload-types-minus {\n\tcursor: pointer;\n}\n\n.file-upload-types-plus:hover,\n.file-upload-types-minus:hover {\n\topacity: .75;\n}\n\n.file-upload-types-minus {\n\tmargin-left: 5px;\n}\n"],"names":[],"mappings":"AAIA,AAAA,UAAU,AAAC,CACP,YAAY,CAAE,YAAY,CAC1B,QAAQ,CAAE,QACd,CAAC,AAED,MAAM,EAAE,SAAS,EAAE,KAAK,EACpB,AAAA,UAAU,AAAC,CACP,WAAW,CAAE,IACjB,CAAC,CAGL,MAAM,EAAE,SAAS,EAAE,KAAK,EACpB,AAAA,OAAO,AAAC,CACJ,WAAW,CAAE,CACjB,CAAC,CAGL,AAAA,yBAAyB,AAAC,CACtB,UAAU,CAAE,iBAAiB,CAC7B,OAAO,CAAE,cAAc,CAQ1B,AAVD,AAIC,yBAJwB,CAIxB,GAAG,AAAC,CACH,OAAO,CAAE,KAAK,CACd,MAAM,CAAE,CAAC,CACT,KAAK,CAAE,KAAK,CACZ,MAAM,CAAE,IAAI,CACT,AAGL,AAAA,kBAAkB,AAAC,CACf,MAAM,CAAE,CAAC,CA8TZ,AA/TD,AAGI,kBAHc,CAGd,yBAAyB,AAAC,CAC5B,WAAW,CAAE,IAAI,CACjB,YAAY,CAAE,IAAI,CACf,AANL,AAQC,kBARiB,CAQjB,sBAAsB,AAAC,CACnB,gBAAgB,CA1CL,IAAI,CA2Cf,MAAM,CAAE,UAAU,CAClB,OAAO,CAAE,SAAS,CACrB,OAAO,CAAE,IAAI,CACb,WAAW,CAAE,MAAM,CAoCnB,AAjDF,AAeK,kBAfa,CAQjB,sBAAsB,CAOlB,4BAA4B,CAAC,CAAC,AAAC,CAC9B,MAAM,CAAE,CAAC,CACZ,SAAS,CAAE,IAAI,CACf,WAAW,CAAE,GAAG,CAChB,WAAW,CAAE,GAAG,CAChB,KAAK,CAAE,OAAO,CACX,AArBN,AAuBK,kBAvBa,CAQjB,sBAAsB,CAelB,sBAAsB,AAAC,CACzB,WAAW,CAAE,IAAI,CAwBjB,AAhDH,AA0BG,kBA1Be,CAQjB,sBAAsB,CAelB,sBAAsB,CAGxB,CAAC,AAAC,CACD,MAAM,CAAE,CAAC,CACT,SAAS,CAAE,IAAI,CACf,WAAW,CAAE,CAAC,CACd,KAAK,CAAE,IAAI,CACX,AA/BJ,AAiCG,kBAjCe,CAQjB,sBAAsB,CAelB,sBAAsB,CAUxB,CAAC,CAAC,CAAC,AAAC,CACH,WAAW,CAAE,IAAI,CACjB,AAnCJ,AAqCG,kBArCe,CAQjB,sBAAsB,CAelB,sBAAsB,CAcxB,MAAM,AAAC,CACN,KAAK,CAAC,IAAI,CACV,UAAU,CAAC,OAAO,CAClB,AAxCJ,AA0CG,kBA1Ce,CAQjB,sBAAsB,CAelB,sBAAsB,CAmBxB,MAAM,AAAA,MAAM,CA1Cf,kBAAkB,CAQjB,sBAAsB,CAelB,sBAAsB,CAoBxB,MAAM,AAAA,OAAO,CA3ChB,kBAAkB,CAQjB,sBAAsB,CAelB,sBAAsB,CAqBxB,MAAM,AAAA,MAAM,AAAC,CACZ,KAAK,CAAC,IAAI,CACV,UAAU,CAAC,OAAO,CAClB,AA/CJ,AAmDC,kBAnDiB,CAmDjB,0BAA0B,AAAC,CAC1B,MAAM,CAAE,UAAU,CAClB,OAAO,CAAE,MAAM,CACf,OAAO,CAAE,IAAI,CAkOb,AAxRF,AA0DG,kBA1De,CAmDjB,0BAA0B,CAKzB,0BAA0B,CAEzB,EAAE,AAAC,CACF,MAAM,CAAE,WAAW,CACnB,SAAS,CAAE,IAAI,CACf,WAAW,CAAE,GAAG,CAChB,KAAK,CAAE,IAAI,CACX,AA/DJ,AAiEG,kBAjEe,CAmDjB,0BAA0B,CAKzB,0BAA0B,CASzB,CAAC,AAAC,CACD,UAAU,CAAE,CAAC,CACb,SAAS,CAAE,IAAI,CACf,KAAK,CAAE,IAAI,CACX,AArEJ,AAyEE,kBAzEgB,CAmDjB,0BAA0B,CAsBzB,wBAAwB,AAAC,CACxB,aAAa,CAAE,IAAI,CACnB,KAAK,CAAE,IAAI,CAwIX,AAnNH,AA6EG,kBA7Ee,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAIvB,aAAa,AAAC,CACb,OAAO,CAAE,IAAI,CACb,WAAW,CAAE,QAAQ,CACrB,aAAa,CAAE,IAAI,CACnB,AAjFJ,AAmFG,kBAnFe,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAUvB,WAAW,AAAC,CACX,WAAW,CAAE,IAAI,CACjB,OAAO,CAAE,gBAAgB,CACzB,AAtFJ,AAwFG,kBAxFe,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAevB,WAAW,CAAC,KAAK,AAAC,CACjB,KAAK,CAAE,KAAK,CACZ,OAAO,CAAE,mBAAmB,CAC5B,WAAW,CAAE,CAAC,CACd,KAAK,CAAE,IAAI,CACX,UAAU,CAAE,IAAI,CAAC,mCAAmC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CACvE,eAAe,CAAE,SAAS,CAC1B,MAAM,CAAE,cAAc,CACtB,aAAa,CAAE,GAAG,CAClB,AAjGJ,AAmGG,kBAnGe,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CA0BvB,WAAW,CAAC,KAAK,AAAA,MAAM,AAAC,CACvB,KAAK,CAAE,IAAI,CACX,MAAM,CAAE,iBAAiB,CACzB,UAAU,CAAE,iBAAiB,CAC7B,AAvGJ,AA2GI,kBA3Gc,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAgCvB,gBAAgB,CAEf,KAAK,AAAC,CACL,KAAK,CAAE,IAAI,CACX,WAAW,CAAE,iBAAiB,CAC9B,eAAe,CAAE,QAAQ,CACzB,MAAM,CAAE,GAAG,CAAC,KAAK,CA9IP,OAAO,CAqJjB,AAtHL,AAiHK,kBAjHa,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAgCvB,gBAAgB,CAEf,KAAK,CAMJ,GAAG,AAAC,CACH,KAAK,CAAE,IAAI,CACX,MAAM,CAAE,IAAI,CACZ,aAAa,CAAE,IAAI,CACnB,AArHN,AAwHI,kBAxHc,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAgCvB,gBAAgB,CAef,EAAE,AAAC,CACF,UAAU,CAAE,iBAAiB,CAC7B,MAAM,CAAE,GAAG,CAAC,KAAK,CAzJP,OAAO,CA0JjB,AA3HL,AA6HI,kBA7Hc,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAgCvB,gBAAgB,CAoBf,EAAE,AAAA,QAAQ,AAAC,CACV,MAAM,CAAE,IAAI,CACZ,AA/HL,AAiII,kBAjIc,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAgCvB,gBAAgB,CAwBf,EAAE,AAAA,QAAQ,CAAC,EAAE,AAAC,CACb,SAAS,CAAE,IAAI,CACf,WAAW,CAAE,GAAG,CAChB,UAAU,CAAE,OAAO,CACnB,YAAY,CAAE,OAAO,CACrB,KAAK,CAAE,OAAO,CACd,AAvIL,AAyII,kBAzIc,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAgCvB,gBAAgB,CAgCf,EAAE,AAAA,QAAQ,CAAC,EAAE,AAAA,YAAY,AAAC,CACzB,aAAa,CAAE,eAAe,CAC9B,AA3IL,AA6II,kBA7Ic,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAgCvB,gBAAgB,CAoCf,EAAE,AAAA,QAAQ,CAAC,EAAE,AAAA,WAAW,AAAC,CACxB,aAAa,CAAE,eAAe,CAC9B,AA/IL,AAiJI,kBAjJc,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAgCvB,gBAAgB,CAwCf,EAAE,AAAA,QAAQ,CAAC,EAAE,AAAC,CACb,OAAO,CAAE,SAAS,CAClB,SAAS,CAAE,IAAI,CACf,WAAW,CAAE,GAAG,CAChB,cAAc,CAAE,SAAS,CACzB,KAAK,CAAE,OAAO,CACd,UAAU,CAAE,OAAO,CACnB,AAxJL,AA0JI,kBA1Jc,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAgCvB,gBAAgB,CAiDf,EAAE,AAAC,CACF,UAAU,CAAE,IAAI,CAChB,OAAO,CAAE,SAAS,CAClB,UAAU,CA9LC,IAAI,CA+Lf,SAAS,CAAE,KAAK,CAChB,cAAc,CAAE,GAAG,CACnB,AAhKL,AAmKK,kBAnKa,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAgCvB,gBAAgB,CAyDf,EAAE,AAAA,kBAAkB,CACnB,EAAE,AAAC,CACF,cAAc,CAAE,MAAM,CACtB,AArKN,AAuKK,kBAvKa,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAgCvB,gBAAgB,CAyDf,EAAE,AAAA,kBAAkB,CAKnB,EAAE,AAAA,MAAM,AAAC,CACR,WAAW,CAAE,MAAM,CACnB,UAAU,CAAE,KAAK,CACjB,AA1KN,AA6KI,kBA7Kc,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAgCvB,gBAAgB,CAoEf,KAAK,AAAC,CACL,OAAO,CAAE,IAAI,CACb,SAAS,CAAE,IAAI,CACf,WAAW,CAAE,GAAG,CAChB,WAAW,CAAE,CAAC,CACd,KAAK,CAAE,OAAO,CACd,UAAU,CAAE,IAAI,CAChB,MAAM,CAAE,iBAAiB,CACzB,aAAa,CAAE,GAAG,CAClB,AAtLL,AAwLI,kBAxLc,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAgCvB,gBAAgB,CA+Ef,KAAK,CAAA,AAAA,IAAC,CAAK,MAAM,AAAX,CAAa,CAClB,KAAK,CAAE,IAAI,CACX,AA1LL,AA4LI,kBA5Lc,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAgCvB,gBAAgB,CAmFf,KAAK,AAAA,MAAM,AAAC,CACX,KAAK,CAAE,OAAO,CACd,UAAU,CAAE,IAAI,CAChB,MAAM,CAAE,iBAAiB,CACzB,UAAU,CAAE,iBAAiB,CAC7B,OAAO,CAAE,IAAI,CACb,AAlML,AAoMI,kBApMc,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAgCvB,gBAAgB,CA2Ff,6BAA6B,AAAC,CAC7B,aAAa,CAAE,cAAc,CAC7B,AAtML,AAwMI,kBAxMc,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAgCvB,gBAAgB,CA+Ff,6BAA6B,CAAC,EAAE,AAAA,QAAQ,AAAA,YAAa,CAAA,CAAC,CAAE,CACvD,UAAU,CAAE,iBAAiB,CAC7B,AA1ML,AA6MG,kBA7Me,CAmDjB,0BAA0B,CAsBzB,wBAAwB,CAoIvB,gBAAgB,AAAA,YAAa,CAAA,CAAC,EAAE,KAAK,AAAC,CACrC,QAAQ,CAAE,QAAQ,CAClB,MAAM,CAAE,IAAI,CACZ,UAAU,CAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,gBAAgB,CACtC,aAAa,CAAE,IAAI,CACnB,AAlNJ,AAqNE,kBArNgB,CAmDjB,0BAA0B,CAkKzB,2BAA2B,AAAC,CAC3B,SAAS,CAAE,KAAK,CAChB,SAAS,CAAE,KAAK,CA0DhB,AAjRH,AAyNG,kBAzNe,CAmDjB,0BAA0B,CAkKzB,2BAA2B,CAI1B,EAAE,AAAC,CACF,MAAM,CAAE,WAAW,CACnB,SAAS,CAAE,IAAI,CACf,KAAK,CAAE,IAAI,CACX,AA7NJ,AA+NG,kBA/Ne,CAmDjB,0BAA0B,CAkKzB,2BAA2B,CAU1B,CAAC,AAAC,CACD,aAAa,CAAE,IAAI,CACnB,SAAS,CAAE,IAAI,CACf,KAAK,CAAE,IAAI,CACX,AAnOJ,AAyOQ,kBAzOU,CAmDjB,0BAA0B,CAkKzB,2BAA2B,CAgB1B,sCAAsC,CAErC,kBAAkB,CAEd,iBAAiB,AAAC,CACpB,KAAK,CAAE,IAAI,CACX,AA3ON,AA6OK,kBA7Oa,CAmDjB,0BAA0B,CAkKzB,2BAA2B,CAgB1B,sCAAsC,CAErC,kBAAkB,CAMjB,YAAY,AAAC,CACZ,UAAU,CAAE,iBAAiB,CAqB7B,AAnQN,AAgPM,kBAhPY,CAmDjB,0BAA0B,CAkKzB,2BAA2B,CAgB1B,sCAAsC,CAErC,kBAAkB,CAMjB,YAAY,CAGX,GAAG,AAAC,CACA,KAAK,CAAE,IAAI,CACX,SAAS,CAAE,IAAI,CACf,MAAM,CAAE,IAAI,CACf,AApPP,AAsPM,kBAtPY,CAmDjB,0BAA0B,CAkKzB,2BAA2B,CAgB1B,sCAAsC,CAErC,kBAAkB,CAMjB,YAAY,CASX,EAAE,AAAC,CACC,MAAM,CAAE,UAAU,CAClB,SAAS,CAAE,IACf,CAAC,AAzPP,AA2PM,kBA3PY,CAmDjB,0BAA0B,CAkKzB,2BAA2B,CAgB1B,sCAAsC,CAErC,kBAAkB,CAMjB,YAAY,CAcX,CAAC,AAAC,CACE,MAAM,CAAE,UAAU,CAClB,KAAK,CAAE,IAAI,CACd,AA9PP,AAgQM,kBAhQY,CAmDjB,0BAA0B,CAkKzB,2BAA2B,CAgB1B,sCAAsC,CAErC,kBAAkB,CAMjB,YAAY,CAmBX,QAAQ,AAAC,CACR,OAAO,CAAE,MAAM,CACf,AAlQP,AAqQK,kBArQa,CAmDjB,0BAA0B,CAkKzB,2BAA2B,CAgB1B,sCAAsC,CAErC,kBAAkB,CA8BjB,EAAE,AAAC,CACF,SAAS,CAAE,IAAI,CACf,WAAW,CAAE,GAAG,CAChB,AAxQN,AA0QK,kBA1Qa,CAmDjB,0BAA0B,CAkKzB,2BAA2B,CAgB1B,sCAAsC,CAErC,kBAAkB,CAmCjB,CAAC,CAAA,AAAA,MAAC,CAAO,QAAQ,AAAf,CAAiB,CACjB,UAAU,CAAE,wCAAwC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CACvE,eAAe,CAAE,SAAS,CAC1B,OAAO,CAAE,UAAU,CACpB,AAKJ,MAAM,EAAE,SAAS,EAAE,KAAK,EAnR1B,AAoRG,kBApRe,CAmDjB,0BAA0B,CAiOxB,2BAA2B,AAAC,CACrB,OAAO,CAAE,IAAI,CAChB,CAtRP,AA0RC,kBA1RiB,CA0RjB,CAAC,AAAA,yBAAyB,AAAC,CAC1B,OAAO,CAAE,MAAM,CACf,AA5RF,AA8RC,kBA9RiB,CA8RjB,sBAAsB,AAAA,6BAA6B,AAAC,CACnD,gBAAgB,CA/TA,OAAO,CAgUvB,YAAY,CA/TC,OAAO,CAgUpB,KAAK,CAlUS,IAAI,CAmUlB,AAlSF,AAoSC,kBApSiB,CAoSjB,sBAAsB,AAAA,6BAA6B,AAAA,MAAM,CApS1D,kBAAkB,CAqSjB,sBAAsB,AAAA,6BAA6B,AAAA,OAAO,CArS3D,kBAAkB,CAsSjB,sBAAsB,AAAA,6BAA6B,AAAA,MAAM,AAAC,CACtD,gBAAgB,CAAE,OAAO,CACzB,YAAY,CAvUF,OAAO,CAwUpB,AAzSF,AA2SC,kBA3SiB,CA2SjB,sBAAsB,AAAA,6BAA6B,AAAA,MAAM,AAAC,CACzD,UAAU,CAAE,iCAAiC,CAC7C,AA7SF,AA+SC,kBA/SiB,CA+SjB,sBAAsB,AAAA,2BAA2B,AAAC,CACjD,gBAAgB,CAAE,OAAO,CACzB,YAAY,CAhVC,OAAO,CAiVpB,KAAK,CAnVS,IAAI,CAoVlB,AAnTF,AAqTC,kBArTiB,CAqTjB,sBAAsB,AAAA,2BAA2B,AAAA,MAAM,CArTxD,kBAAkB,CAsTjB,sBAAsB,AAAA,2BAA2B,AAAA,OAAO,CAtTzD,kBAAkB,CAuTjB,sBAAsB,AAAA,2BAA2B,AAAA,MAAM,AAAC,CACpD,gBAAgB,CAAE,OAAO,CACzB,YAAY,CAxVF,OAAO,CAyVpB,AA1TF,AA4TC,kBA5TiB,CA4TjB,sBAAsB,AAAA,2BAA2B,AAAA,MAAM,AAAC,CACvD,UAAU,CAAE,iCAAiC,CAC7C,AAGF,AAAA,sBAAsB,AAAC,CACnB,MAAM,CAAE,CAAC,CACT,aAAa,CAAE,GAAG,CAClB,MAAM,CAAE,OAAO,CACf,MAAM,CAAE,CAAC,CACT,eAAe,CAAE,IAAI,CACrB,UAAU,CAAE,MAAM,CAClB,cAAc,CAAE,MAAM,CACtB,WAAW,CAAE,MAAM,CACnB,WAAW,CAAE,IAAI,CACjB,UAAU,CAAE,IAAI,CAChB,OAAO,CAAE,IAAI,CAChB,AAED,AAAA,sBAAsB,AAAA,yBAAyB,AAAC,CAC/C,SAAS,CAAE,IAAI,CACf,WAAW,CAAE,GAAG,CAChB,OAAO,CAAE,QAAQ,CACjB,UAAU,CAAE,IAAI,CAChB,AAED,AAAA,uBAAuB,AAAC,CACvB,QAAQ,CAAE,QAAQ,CAClB,OAAO,CAAE,YAAY,CACrB,MAAM,CAAE,YAAY,CA8BpB,AAjCD,AAKE,uBALqB,CAKrB,YAAY,AAAC,CACb,UAAU,CAAE,MAAM,CAClB,KAAK,CAAE,KAAK,CACZ,UAAU,CAAE,OAAO,CACnB,KAAK,CAAE,IAAI,CACX,UAAU,CAAE,MAAM,CAClB,cAAc,CAAE,IAAI,CACpB,aAAa,CAAE,GAAG,CAClB,OAAO,CAAE,IAAI,CACb,QAAQ,CAAE,QAAQ,CAClB,OAAO,CAAE,CAAC,CACV,MAAM,CAAE,cAAc,CACtB,SAAS,CAAE,IAAI,CACf,WAAW,CAAE,GAAG,CAChB,UAAU,CAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,eAAiB,CACxC,AApBF,AAsBC,uBAtBsB,CAsBtB,YAAY,AAAA,OAAO,AAAA,CAClB,QAAQ,CAAE,QAAQ,CAClB,GAAG,CAAE,IAAI,CACT,IAAI,CAAE,IAAI,CACV,OAAO,CAAE,EAAE,CACX,KAAK,CAAE,CAAC,CACR,MAAM,CAAE,CAAC,CACT,YAAY,CAAE,KAAK,CAAC,GAAG,CAAC,eAAc,CACtC,aAAa,CAAE,qBAAqB,CACpC,UAAU,CAAE,qBAAqB,CACjC,AAGF,AAAA,uBAAuB,AAAA,MAAM,CAAC,YAAY,AAAC,CAC1C,UAAU,CAAE,OAAO,CACnB,AAED,AAAA,uBAAuB,CACvB,wBAAwB,AAAC,CACxB,MAAM,CAAE,OAAO,CACf,AAED,AAAA,uBAAuB,AAAA,MAAM,CAC7B,wBAAwB,AAAA,MAAM,AAAC,CAC9B,OAAO,CAAE,GAAG,CACZ,AAED,AAAA,wBAAwB,AAAC,CACxB,WAAW,CAAE,GAAG,CAChB"} \ No newline at end of file diff --git a/assets/css/style.scss b/assets/css/style.scss index 200dcda..33db14e 100644 --- a/assets/css/style.scss +++ b/assets/css/style.scss @@ -106,6 +106,7 @@ $border-color: #ccd0d4; .file-upload-types-table { padding-right: 30px; + width: 100%; .before-table { display: flex; diff --git a/file-upload-types.php b/file-upload-types.php index 4833839..1889096 100644 --- a/file-upload-types.php +++ b/file-upload-types.php @@ -11,7 +11,7 @@ * Domain Path: /languages/ */ -use FileUploadTypes\Plugin as PluginAlias; +use FileUploadTypes\Plugin; // Exit if accessed directly. defined( 'ABSPATH' ) || exit; @@ -135,11 +135,11 @@ function file_upload_types_wp_notice() { * * @since 1.0.0 * - * @return PluginAlias + * @return Plugin */ function file_upload_types() { - $instance = PluginAlias::get_instance(); + $instance = Plugin::get_instance(); $instance->init(); diff --git a/src/Allowed.php b/src/Allowed.php new file mode 100644 index 0000000..1415ce1 --- /dev/null +++ b/src/Allowed.php @@ -0,0 +1,131 @@ + $mime ) { + $extensions_array = explode( '|', $extensions ); + $mime_types = count( $extensions_array ) === 1 + ? $this->remove_single_extension( $extensions, $mime_types ) + : $this->process_multiple_extensions( $extensions_array, $mime_types ); + } + + return $mime_types; + } + + /** + * Maybe remove single extension. + * + * @since {VERSION} + * + * @param string $extension File extension. + * @param array $mime_types WordPress allowed types. + * + * @return array + */ + private function remove_single_extension( $extension, $mime_types ) { + + if ( ! array_key_exists( $extension, $this->get_enabled_types() ) ) { + unset( $mime_types[ $extension ] ); + } + + return $mime_types; + } + + /** + * Process each extension from pipeline separated extensions. + * + * If extension is not allowed, remove it from mime types. + * + * @since {VERSION} + * + * @param array $extensions Allowed extensions, exploded on | sign. + * @param array $mime_types WordPress allowed mime types. + * + * @return array Filtered WordPress allowed mime types. + */ + private function process_multiple_extensions( $extensions, $mime_types ) { + + $concatenated_extensions = implode( '|', $extensions ); + $mime = $mime_types[ $concatenated_extensions ]; + + unset( $mime_types[ $concatenated_extensions ] ); + + foreach ( $extensions as $index => $extension ) { + if ( ! array_key_exists( $extension, $this->get_enabled_types() ) ) { + unset( $extensions[ $index ] ); + } + } + if ( ! empty( $extensions ) ) { + $mime_types[ implode( '|', $extensions ) ] = $mime; + } + + return $mime_types; + } + + /** + * Get stored FUT enabled types. + * + * @since {VERSION} + * + * @return array|string[] + */ + private function get_enabled_types() { + + if ( ! $this->enabled_types ) { + + $plugin = Plugin::get_instance(); + + // Only add first mime type to the allowed list. Aliases will be dynamically added when required. + $this->enabled_types = array_map( + static function( $enabled_types ) { + + return sanitize_mime_type( ! is_array( $enabled_types ) ? $enabled_types : $enabled_types[0] ); + }, + $plugin->enabled_types() + ); + } + + return $this->enabled_types; + } +} diff --git a/src/Migrations/Dispatcher.php b/src/Migrations/Dispatcher.php new file mode 100644 index 0000000..3c99320 --- /dev/null +++ b/src/Migrations/Dispatcher.php @@ -0,0 +1,67 @@ +get_migrations_list() as $name => $callback ) { + + if ( ! isset( $already_run[ $name ] ) && is_callable( $callback ) && $callback() ) { + $already_run[ $name ] = 1; + $option_changed = true; + } + } + + if ( $option_changed ) { + update_option( 'file_upload_types_migrations_done', $already_run ); + } + } + + /** + * Get available migrations. + * + * @since {VERSION} + * + * @return array[] + */ + private function get_migrations_list() { + + // phpcs:disable WPForms.PHP.ValidateHooks.InvalidHookName + return [ + /** + * Get callback method for add_native_file_upload_types migration. + * + * @since {VERSION} + * + * @param callable $callback Callback. + */ + 'add_native_file_upload_types' => apply_filters( 'file_upload_types_migrations_dispatcher_add_native_file_upload_types_callback', null ), + ]; + // phpcs:enable WPForms.PHP.ValidateHooks.InvalidHookName + } +} diff --git a/src/Plugin.php b/src/Plugin.php index 6be6a84..caa5884 100644 --- a/src/Plugin.php +++ b/src/Plugin.php @@ -2,6 +2,9 @@ namespace FileUploadTypes; +use FileUploadTypes\Restrict\Native\Admin; +use FileUploadTypes\Migrations\Dispatcher; + /** * Main Plugin Class. * @@ -18,6 +21,33 @@ final class Plugin { */ protected static $instance; + /** + * Allowed object reference. + * + * @since {VERSION} + * + * @var Allowed; + */ + private $allowed; + + /** + * Admin object. + * + * @since {VERSION} + * + * @var Admin + */ + private $admin; + + /** + * Dispatcher object. + * + * @since {VERSION} + * + * @var Dispatcher + */ + private $dispatcher; + /** * Main Plugin Instance. * @@ -42,9 +72,29 @@ public static function get_instance() { */ public function init() { + $this->allowed = new Allowed(); + $this->admin = new Admin( $this->allowed ); + $this->dispatcher = new Dispatcher(); + + $this->admin->hooks(); + $this->allowed->hooks(); + $this->dispatcher->hooks(); + $this->hooks(); } + /** + * Get WordPress allowed mime types. + * + * @since {VERSION} + * + * @return string[] + */ + public function get_native_types() { + + return $this->admin->get_types(); + } + /** * Register hooks. * @@ -55,7 +105,6 @@ private function hooks() { add_action( 'init', [ $this, 'load_plugin_textdomain' ] ); add_action( 'init', [ $this, 'register_admin_area' ] ); add_filter( 'plugin_action_links_' . plugin_basename( FILE_UPLOAD_TYPES_PLUGIN_FILE ), [ $this, 'plugin_action_links' ], 10, 4 ); - add_filter( 'upload_mimes', [ $this, 'allowed_types' ] ); add_filter( 'wp_check_filetype_and_ext', [ $this, 'real_file_type' ], 999, 5 ); } @@ -114,13 +163,11 @@ public function plugin_action_links( $actions, $plugin_file, $plugin_data, $cont */ public function enabled_types() { - $stored_types = get_option( 'file_upload_types', [] ); - $enabled_types = isset( $stored_types['enabled'] ) ? (array) $stored_types['enabled'] : []; - $custom_types_raw = isset( $stored_types['custom'] ) ? (array) $stored_types['custom'] : []; - $available_types = fut_get_available_file_types(); - $return_types = $this->add_available_types( $available_types, $enabled_types ); + $stored_types = new StoredTypes(); + $available_types = array_merge( fut_get_available_file_types(), fut_get_native_file_types() ); + $return_types = $this->add_available_types( $available_types, $stored_types->enabled ); - foreach ( $custom_types_raw as $type ) { + foreach ( $stored_types->custom as $type ) { if ( empty( $type['ext'] ) || empty( $type['mime'] ) ) { continue; @@ -168,6 +215,7 @@ private function add_available_types( $available_types, $enabled_types ) { * @link https://developer.wordpress.org/reference/functions/wp_get_mime_types/ * * @since 1.0.0 + * @deprecated {VERSION} * * @param array $mime_types List of all allowed in WordPress mime types. * @@ -175,16 +223,9 @@ private function add_available_types( $available_types, $enabled_types ) { */ public function allowed_types( $mime_types ) { - // Only add first mime type to the allowed list. Aliases will be dynamically added when required. - $enabled_types = array_map( - static function( $enabled_types ) { - - return sanitize_mime_type( ! is_array( $enabled_types ) ? $enabled_types : $enabled_types[0] ); - }, - $this->enabled_types() - ); + _deprecated_function( __METHOD__, '{VERSION}', '\FileUploadTypes\Allowed::allowed_types' ); - return array_replace( $mime_types, $enabled_types ); + return $this->allowed->allowed_types( $mime_types ); } // phpcs:disable WPForms.PHP.HooksMethod.InvalidPlaceForAddingHooks diff --git a/src/Restrict/Native/Admin.php b/src/Restrict/Native/Admin.php new file mode 100644 index 0000000..f7483a8 --- /dev/null +++ b/src/Restrict/Native/Admin.php @@ -0,0 +1,213 @@ +allowed = $allowed; + } + + /** + * Register hooks. + * + * @since {VERSION} + * + * @return void + */ + public function hooks() { + + add_action( 'file_upload_types_settings_display_types_table_after_enabled_types', [ $this, 'table_rows_with_native_types' ] ); + add_filter( 'file_upload_types_migrations_dispatcher_add_native_file_upload_types_callback', [ $this, 'dispatcher_get_migrations_list' ] ); + add_filter( 'file_upload_types_settings_transform_native_type', [ $this, 'get_upload_type' ] ); + } + + // phpcs:disable Generic.Metrics.CyclomaticComplexity.TooHigh + /** + * Display table rows with native types which are not enabled. + * + * @since {VERSION} + * + * @return void + */ + public function table_rows_with_native_types() { + + $stored_types = new StoredTypes(); + + if ( ! empty( $stored_types->native ) ) : + + ?> + + + + native as $type ) { + + if ( + in_array( $type, $stored_types->enabled, true ) + ) { + continue; + } + + echo ''; + echo '' . wp_kses( fut_get_native_file_description(), [] ) . ''; + echo '' . wp_kses( $this->get_mime_for_type( $type ), [ 'br' => [] ] ) . ''; + echo '' . esc_html( $type ) . ''; + echo ' '; + echo ''; + } + endif; + } + // phpcs:enable Generic.Metrics.CyclomaticComplexity.TooHigh + + /** + * Get mime type for extension. + * + * @since {VERSION} + * + * @param string $ext Extension. + * + * @return string + */ + private function get_mime_for_type( $ext ) { + + $wp_native_types = $this->get_types(); + + foreach ( $wp_native_types as $extensions => $mime ) { + $extensions = explode( '|', $extensions ); + + if ( in_array( ltrim( $ext, '.' ), $extensions, true ) ) { + return $mime; + } + } + + return ''; + } + + /** + * Get upload type in array format. + * + * Fields are 'ext', 'mime' and 'desc'. + * + * @since {VERSION} + * + * @param string $ext Extension. + * + * @return array + */ + public function get_upload_type( $ext ) { + + return [ + 'ext' => $ext, + 'mime' => $this->get_mime_for_type( $ext ), + 'desc' => fut_get_native_file_description(), + ]; + } + + /** + * Return callback function to run migration. + * + * @since {VERSION} + * + * @param mixed $callback Callback. + * + * @return array + */ + public function dispatcher_get_migrations_list( $callback ) { + + return [ $this, 'register_native_file_upload_types' ]; + } + + /** + * Migration logic applied when registering native WP file types into `file_upload_types` option. + * + * @since {VERSION} + * + * @return bool + */ + public function register_native_file_upload_types() { + + $already_run = get_option( 'file_upload_types_migrations_done', [] ); + + if ( isset( $already_run[ __FUNCTION__ ] ) ) { + return false; + } + + $stored_types = get_option( 'file_upload_types', [] ); + $native_types = $this->get_types(); + + foreach ( $native_types as $extensions => $mime_type ) { + $extensions = explode( '|', $extensions ); + + foreach ( $extensions as $extension ) { + $stored_types['native'][] = sprintf( '.%s', $extension ); + $stored_types['enabled'][] = sprintf( '.%s', $extension ); + } + } + + $stored_types['native'] = array_unique( $stored_types['native'] ); + $stored_types['enabled'] = array_unique( $stored_types['enabled'] ); + + return update_option( 'file_upload_types', $stored_types ); + + } + + // phpcs:disable WPForms.PHP.HooksMethod.InvalidPlaceForAddingHooks + /** + * Get WordPress allowed mime types. + * + * Bypasses FUT plugin own filters. + * + * @since {VERSION} + * + * @return string[] + */ + public function get_types() { + + if ( ! self::$unfiltered_types ) { + + remove_filter( 'upload_mimes', [ $this->allowed, 'allowed_types' ] ); + + self::$unfiltered_types = get_allowed_mime_types(); + + add_filter( 'upload_mimes', [ $this->allowed, 'allowed_types' ] ); + } + + return self::$unfiltered_types; + } + // phpcs:enable WPForms.PHP.HooksMethod.InvalidPlaceForAddingHooks +} diff --git a/src/Settings.php b/src/Settings.php index 78a7602..7677a3f 100644 --- a/src/Settings.php +++ b/src/Settings.php @@ -214,15 +214,16 @@ public function display_types_table() { // phpcs:ignore Generic.Metrics.NestingL

files WordPress allows by default.
Don\'t see what you need? No problem, add your custom file types.', 'file-upload-types' ), + wp_kses( /* translators: %1$s - anchor link. */ + __( 'Below is the list of files types that can be enabled.
Don\'t see what you need? No problem, add your custom file types.', 'file-upload-types' ), [ - 'a' => [ + 'a' => [ 'href' => [], 'target' => [], 'rel' => [], 'id' => [], ], + 'br' => [], ] ), 'https://codex.wordpress.org/Uploading_Files#About_Uploading_Files_on_Dashboard', @@ -252,16 +253,15 @@ public function display_types_table() { // phpcs:ignore Generic.Metrics.NestingL

native ); $available_types = fut_get_available_file_types(); - $types = array_merge( $custom_types, $available_types ); + $types = array_merge( $stored_types->custom, $available_types, $native_types ); $temp_types = array_unique( array_column( $types, 'ext' ) ); $types = array_intersect_key( $types, $temp_types ); - if ( ! empty( $enabled_types ) || ! empty( $custom_types ) ) : + if ( ! empty( $stored_types->enabled ) || ! empty( $stored_types->custom ) ) : ?> @@ -271,8 +271,8 @@ public function display_types_table() { // phpcs:ignore Generic.Metrics.NestingL foreach ( $types as $type ) { if ( - ! in_array( $type['ext'], $enabled_types, true ) && - ! in_array( $type['ext'], array_column( $custom_types, 'ext' ), true ) + ! in_array( $type['ext'], $stored_types->enabled, true ) && + ! in_array( $type['ext'], array_column( $stored_types->custom, 'ext' ), true ) ) { continue; } @@ -290,19 +290,21 @@ public function display_types_table() { // phpcs:ignore Generic.Metrics.NestingL } endif; + + // phpcs:disable WPForms.Comments.PHPDocHooks.RequiredHookDocumentation, WPForms.PHP.ValidateHooks.InvalidHookName + do_action( 'file_upload_types_settings_display_types_table_after_enabled_types' ); + // phpcs:enable WPForms.Comments.PHPDocHooks.RequiredHookDocumentation, WPForms.PHP.ValidateHooks.InvalidHookName ?> enabled, true ) ) { continue; } @@ -360,6 +362,29 @@ public function display_types_table() { // phpcs:ignore Generic.Metrics.NestingL $enabled_types, 'custom' => array_merge( $custom_types, $stored_custom_types ), + 'native' => isset( $types['native'] ) ? $types['native'] : [], ]; update_option( 'file_upload_types', $file_upload_types ); diff --git a/src/StoredTypes.php b/src/StoredTypes.php new file mode 100644 index 0000000..e90fbf0 --- /dev/null +++ b/src/StoredTypes.php @@ -0,0 +1,73 @@ +get_stored_types(); + + return isset( $stored_types[ $name ] ) ? (array) $stored_types[ $name ] : []; + } + + /** + * Isset magic method. + * + * @since {VERSION} + * + * @param string $name Checked attribute. + * + * @return bool + */ + public function __isset( $name ) { + + $stored_types = $this->get_stored_types(); + + return isset( $stored_types[ $name ] ); + } + + /** + * Get stored types from wp_option. + * + * @since {VERSION} + * + * @return array Stored types. + */ + private function get_stored_types() { + + if ( ! $this->stored_types ) { + $this->stored_types = get_option( 'file_upload_types', [] ); + } + + return $this->stored_types; + } + +} diff --git a/src/functions.php b/src/functions.php index 99597c1..bb8f6ab 100644 --- a/src/functions.php +++ b/src/functions.php @@ -1,5 +1,7 @@ get_native_types(); + $natives = []; + + foreach ( $native as $extensions => $mime ) { + $extensions = explode( '|', $extensions ); + + foreach ( $extensions as $extension ) { + $natives[] = [ + 'desc' => fut_get_native_file_description(), + 'mime' => [ $mime ], + 'ext' => '.' . $extension, + ]; + } + } + + return $natives; +} + +/** + * Get file description for natively supported file types. + * + * @since {VERSION} + * + * @return string + */ +function fut_get_native_file_description() { + + return esc_html__( 'WordPress natively registered type', 'file-upload-types' ); +} + /** * Formats raw data of file types. *