@gafreax/cssparser
Advanced tools
Comparing version 1.0.9 to 1.0.10
@@ -10,3 +10,13 @@ "use strict"; | ||
const cleanCssInstance = new clean_css_1.default({ level: 2 }); | ||
// todo: remove empty rules | ||
// const css = `div {color:red}div{float:left}a{color:yellow; /* comment */ background: #aaff00;} p{color:#fffff}div{padding:4px;margin:0px} | ||
// .row-7 td.column.first .border { | ||
// border: 0; | ||
// padding: 0 30px 0 0; | ||
// } | ||
// .row-5 td.column.first .border { | ||
// border: 0; | ||
// padding: 0 30px 0 0; | ||
// } | ||
// ` | ||
const css = ` | ||
@@ -36,4 +46,3 @@ body { | ||
table, | ||
.column { | ||
table, .column { | ||
mso-table-lspace: 0pt; | ||
@@ -64,13 +73,8 @@ mso-table-rspace: 0pt; | ||
overflow: hidden; | ||
} | ||
.divider_inner { | ||
}.divider_inner { | ||
font-size: 1px; | ||
line-height: 1px; | ||
} | ||
.icons_block td { | ||
}.icons_block td { | ||
vertical-align: middle; | ||
} | ||
.icons_block td img { | ||
@@ -80,3 +84,2 @@ border: 0; | ||
} | ||
.icons_block td a { | ||
@@ -88,25 +91,18 @@ text-decoration: none; | ||
.desktop_hide table.icons-inner { | ||
display: inline-block !important; | ||
display: inline-block !important; | ||
} | ||
.icons-inner { | ||
text-align: center; | ||
text-align: center; | ||
} | ||
.icons-inner td { | ||
margin: 0 auto; | ||
margin: 0 auto; | ||
} | ||
} | ||
@media (max-width: 520px) { | ||
}@media (max-width: 520px) { | ||
.image_block div.fullWidth { | ||
max-width: 100% !important; | ||
max-width: 100% !important; | ||
} | ||
} | ||
.image_block div img { | ||
border: 0; | ||
} | ||
.menu_block.desktop_hide .menu-links span { | ||
}.menu_block.desktop_hide .menu-links span { | ||
mso-hide: all; | ||
@@ -116,39 +112,31 @@ } | ||
@media (max-width: 520px) { | ||
.menu-checkbox[type=checkbox]~.menu-links { | ||
display: none !important; | ||
padding: 5px 0; | ||
.menu-checkbox[type=checkbox] ~ .menu-links { | ||
display: none !important; | ||
padding: 5px 0; | ||
} | ||
.menu-checkbox[type=checkbox]~.menu-links span.sep { | ||
display: none !important; | ||
.menu-checkbox[type=checkbox] ~ .menu-links span.sep { | ||
display: none !important; | ||
} | ||
.menu-checkbox[type=checkbox]:checked~.menu-links, | ||
.menu-checkbox[type=checkbox]~.menu-trigger { | ||
display: block !important; | ||
max-width: none !important; | ||
max-height: none !important; | ||
font-size: inherit !important; | ||
.menu-checkbox[type=checkbox]:checked ~ .menu-links, | ||
.menu-checkbox[type=checkbox] ~ .menu-trigger { | ||
display: block !important; | ||
max-width: none !important; | ||
max-height: none !important; | ||
font-size: inherit !important; | ||
} | ||
.menu-checkbox[type=checkbox]~.menu-links>a, | ||
.menu-checkbox[type=checkbox]~.menu-links>span.label { | ||
display: block !important; | ||
text-align: center; | ||
.menu-checkbox[type=checkbox] ~ .menu-links > a, | ||
.menu-checkbox[type=checkbox] ~ .menu-links > span.label { | ||
display: block !important; | ||
text-align: center; | ||
} | ||
.menu-checkbox[type=checkbox]:checked~.menu-trigger .menu-close { | ||
display: block !important; | ||
.menu-checkbox[type=checkbox]:checked ~ .menu-trigger .menu-close { | ||
display: block !important; | ||
} | ||
.menu-checkbox[type=checkbox]:checked~.menu-trigger .menu-open { | ||
display: none !important; | ||
.menu-checkbox[type=checkbox]:checked ~ .menu-trigger .menu-open { | ||
display: none !important; | ||
} | ||
.menu-specific { | ||
display: none; | ||
display: none; | ||
} | ||
} | ||
.social-table img { | ||
}.social-table img { | ||
border: 0; | ||
@@ -159,36 +147,21 @@ } | ||
.social_block.desktop_hide .social-table { | ||
display: inline-block !important; | ||
display: inline-block !important; | ||
} | ||
} | ||
.text_block { | ||
}.text_block { | ||
word-break: break-word; | ||
} | ||
@media (max-width: 520px) { | ||
}@media (max-width: 520px) { | ||
.video_block .sizer { | ||
max-width: none !important; | ||
max-width: none !important; | ||
} | ||
} | ||
.video_block * { | ||
box-sizing: content-box; | ||
} | ||
h1, | ||
h2, | ||
h3 { | ||
}h1, h2, h3 { | ||
margin: 0; | ||
} | ||
.paragraph_block { | ||
}.paragraph_block { | ||
word-break: break-word; | ||
} | ||
.list_block { | ||
}.list_block { | ||
word-break: break-word; | ||
} | ||
.list_block ul, | ||
.list_block ol { | ||
.list_block ul, .list_block ol { | ||
margin-top: 0; | ||
@@ -198,154 +171,387 @@ margin-bottom: 0; | ||
} | ||
.list_block ul.leftList, | ||
.list_block ol.leftList { | ||
.list_block ul.leftList, .list_block ol.leftList { | ||
padding-left: 20px; | ||
} | ||
@media (max-width: 520px) { | ||
}@media (max-width: 520px) { | ||
/* TODO: check if .row is removable */ | ||
/* .row { \twidth: 100%; \theight: auto; } */ | ||
/* | ||
.row { | ||
width: 100%; | ||
height: auto; | ||
} | ||
*/ | ||
.row .side { | ||
display: none; | ||
display: none; | ||
} | ||
.row-content { | ||
width: 100% !important; | ||
width: 100% !important; | ||
} | ||
.stack .column { | ||
width: 100%; | ||
display: block; | ||
width: 100%; | ||
display: block; | ||
} | ||
.mobile_hide { | ||
min-height: 0px; | ||
max-height: 0px; | ||
max-width: 0px; | ||
display: none; | ||
overflow: hidden; | ||
font-size: 0px; | ||
min-height: 0px; | ||
max-height: 0px; | ||
max-width: 0px; | ||
display: none; | ||
overflow: hidden; | ||
font-size: 0px; | ||
} | ||
.desktop_hide, | ||
.desktop_hide table { | ||
display: table !important; | ||
max-height: none !important; | ||
display: table !important; | ||
max-height: none !important; | ||
} | ||
.reverse { | ||
display: table; | ||
width: 100%; | ||
display: table; | ||
width: 100%; | ||
} | ||
.reverse .column.first { | ||
display: table-footer-group !important; | ||
display: table-footer-group !important; | ||
} | ||
.reverse .column.last { | ||
display: table-header-group !important; | ||
display: table-header-group !important; | ||
} | ||
} | ||
.row-1 {} | ||
.row-1 .row-content { | ||
color: #000000; | ||
} | ||
.row-1 .col-1 { | ||
padding-bottom: 5px; | ||
padding-top: 5px; | ||
vertical-align: top; | ||
border-top: 0px; | ||
border-right: 0px; | ||
border-bottom: 0px; | ||
border-left: 0px; | ||
} | ||
.row-1 .col-1 .block-1 { | ||
width: 100%; | ||
} | ||
.row-2 {} | ||
.row-2 .row-content { | ||
border-radius: 0px; | ||
color: #000000; | ||
} | ||
.row-2 .col-1 .border { | ||
padding-bottom: 5px; | ||
padding-top: 5px; | ||
vertical-align: top; | ||
border-top: 0px; | ||
border-right: 0px; | ||
border-bottom: 0px; | ||
border-left: 0px; | ||
} | ||
.row-2 .col-1 .block-1 { | ||
color: #000000; | ||
font-family: inherit; | ||
font-size: 14px; | ||
font-weight: 400; | ||
text-align: center; | ||
} | ||
.row-2 .col-2 .border { | ||
padding-bottom: 5px; | ||
padding-top: 5px; | ||
vertical-align: top; | ||
border-top: 0px; | ||
border-right: 0px; | ||
border-bottom: 0px; | ||
border-left: 0px; | ||
} | ||
.row-2 .col-2 .block-1 { | ||
color: #000000; | ||
font-family: inherit; | ||
font-size: 14px; | ||
font-weight: 400; | ||
text-align: center; | ||
} | ||
@media (max-width: 520px) { | ||
.row-2 td.column.first .border { | ||
padding-left: 0px; | ||
padding-right: 0px; | ||
padding-top: 5px; | ||
padding-bottom: 5px; | ||
} | ||
} | ||
@media (max-width: 520px) { | ||
.row-2 td.column.first .border { | ||
border-top: 0px; | ||
border-right: 0px; | ||
border-bottom: 0px; | ||
border-left: 0px; | ||
} | ||
} | ||
@media (max-width: 520px) { | ||
.row-2 td.column.last .border { | ||
padding-left: 0px; | ||
padding-right: 0px; | ||
padding-top: 5px; | ||
padding-bottom: 5px | ||
} | ||
} | ||
@media (max-width: 520px) { | ||
.row-2 td.column.last .border { | ||
border-top: 0px; | ||
border-right: 0px; | ||
border-bottom: 0px; | ||
border-left: 0px; | ||
} | ||
} | ||
}.row-1{}.row-1 .row-content{color: #000000;}.row-1 .col-1 {padding-bottom: 5px;padding-top: 5px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-1 .col-1 .block-1{width: 100%;}.row-2{}.row-2 .row-content{border-radius: 0px;color: #000000;}.row-2 .col-1 .border{padding-bottom: 5px;padding-top: 5px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-2 .col-1 .block-1{color: #000000;font-family: inherit;font-size: 14px;font-weight: 400;text-align: center;}.row-2 .col-2 .border{padding-bottom: 5px;padding-top: 5px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-2 .col-2 .block-1{color: #000000;font-family: inherit;font-size: 14px;font-weight: 400;text-align: center;}@media (max-width: 520px) {.row-2 td.column.first .border {padding-left: 0px; padding-right:0px; padding-top: 5px; padding-bottom: 5px;}} @media (max-width: 520px) {.row-2 td.column.first .border{border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}} @media (max-width: 520px) {.row-2 td.column.last .border {padding-left: 0px;padding-right:0px; padding-top: 5px; padding-bottom:5px}} @media (max-width: 520px) {.row-2 td.column.last .border{border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}} | ||
`; | ||
// const _css = ` | ||
// body { | ||
// margin: 0; | ||
// padding: 0; | ||
// -webkit-text-size-adjust: none; | ||
// text-size-adjust: none; | ||
// background-color: #FFFFFF; | ||
// } | ||
// .nl-container { | ||
// background-color: #FFFFFF; | ||
// } | ||
// table, .column { | ||
// mso-table-lspace: 0pt; | ||
// mso-table-rspace: 0pt; | ||
// } | ||
// .column { | ||
// font-weight: 400; | ||
// text-align: left; | ||
// vertical-align: top; | ||
// } | ||
// p { | ||
// margin: 0; | ||
// } | ||
// img {1 | ||
// display: block; | ||
// height: auto; | ||
// } | ||
// .desktop_hide, | ||
// .desktop_hide table { | ||
// mso-hide: all; | ||
// display: none; | ||
// max-height: 0px; | ||
// overflow: hidden; | ||
// }.divider_inner { | ||
// font-size: 1px; | ||
// line-height: 1px; | ||
// }.icons_block td { | ||
// vertical-align: middle; | ||
// } | ||
// .icons_block td img { | ||
// border: 0; | ||
// margin: 0 auto; | ||
// } | ||
// .icons_block td a { | ||
// text-decoration: none; | ||
// } | ||
// @media (max-width: 660px) { | ||
// .desktop_hide table.icons-inner { | ||
// display: inline-block !important; | ||
// } | ||
// .icons-inner { | ||
// text-align: center; | ||
// } | ||
// .icons-inner td { | ||
// margin: 0 auto; | ||
// } | ||
// }@media (max-width: 660px) { | ||
// .image_block img.fullWidth { | ||
// max-width: 100% !important; | ||
// } | ||
// } | ||
// .image_block img { | ||
// border: 0; | ||
// }.menu_block.desktop_hide .menu-links span { | ||
// mso-hide: all; | ||
// } | ||
// @media (max-width: 660px) { | ||
// .menu-checkbox[type=checkbox] ~ .menu-links { | ||
// display: none !important; | ||
// padding: 5px 0; | ||
// } | ||
// .menu-checkbox[type=checkbox] ~ .menu-links span.sep { | ||
// display: none !important; | ||
// } | ||
// .menu-checkbox[type=checkbox]:checked ~ .menu-links, | ||
// .menu-checkbox[type=checkbox] ~ .menu-trigger { | ||
// display: block !important; | ||
// max-width: none !important; | ||
// max-height: none !important; | ||
// font-size: inherit !important; | ||
// } | ||
// .menu-checkbox[type=checkbox] ~ .menu-links > a, | ||
// .menu-checkbox[type=checkbox] ~ .menu-links > span.label { | ||
// display: block !important; | ||
// text-align: center; | ||
// } | ||
// .menu-checkbox[type=checkbox]:checked ~ .menu-trigger .menu-close { | ||
// display: block !important; | ||
// } | ||
// .menu-checkbox[type=checkbox]:checked ~ .menu-trigger .menu-open { | ||
// display: none !important; | ||
// } | ||
// .menu-specific { | ||
// display: none; | ||
// } | ||
// }.social-table img { | ||
// border: 0; | ||
// } | ||
// @media (max-width: 660px) { | ||
// .social_block.desktop_hide .social-table { | ||
// display: inline-block !important; | ||
// } | ||
// }.text_block { | ||
// word-break: break-word; | ||
// }@media (max-width: 660px) { | ||
// .video_block .sizer { | ||
// max-width: none !important; | ||
// } | ||
// } | ||
// .video_block * { | ||
// box-sizing: content-box; | ||
// }h1, h2, h3 { | ||
// margin: 0; | ||
// }.paragraph_block { | ||
// word-break: break-word; | ||
// }.list_block { | ||
// word-break: break-word; | ||
// } | ||
// .list_block ul, .list_block ol { | ||
// margin-top: 0; | ||
// margin-bottom: 0; | ||
// padding: 0; | ||
// } | ||
// .list_block ul.leftList, .list_block ol.leftList { | ||
// padding-left: 20px; | ||
// }@media (max-width: 660px) { | ||
// /* TODO: check if .row is removable */ | ||
// /* | ||
// .row { | ||
// width: 100%; | ||
// height: auto; | ||
// } | ||
// */ | ||
// .row .side { | ||
// display: none; | ||
// } | ||
// .row-content { | ||
// width: 100% !important; | ||
// } | ||
// .stack .column { | ||
// width: 100%; | ||
// display: block; | ||
// } | ||
// .mobile_hide { | ||
// min-height: 0px; | ||
// max-height: 0px; | ||
// max-width: 0px; | ||
// display: none; | ||
// overflow: hidden; | ||
// font-size: 0px; | ||
// } | ||
// .desktop_hide, | ||
// .desktop_hide table { | ||
// display: table !important; | ||
// max-height: none !important; | ||
// } | ||
// .reverse { | ||
// display: table; | ||
// width: 100%; | ||
// } | ||
// .reverse .column.first { | ||
// display: table-footer-group !important; | ||
// } | ||
// .reverse .column.last { | ||
// display: table-header-group !important; | ||
// } | ||
// }.row-1{}.row-1 .row-content{color: #000000;}.row-1 .col-1 {padding-bottom: 20px;padding-top: 20px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-1 .col-1 .block-1{width: 100%;}.row-2{background-color: #d70595;}.row-2 .row-content{background-color: #d70595;color: #000000;}.row-2 .col-1 {padding-bottom: 30px;padding-top: 30px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-2 .col-1 .block-1{padding-bottom: 5px;padding-left: 10px;padding-right: 10px;padding-top: 10px;}.row-2 .col-1 .block-2{padding-bottom: 10px;padding-left: 40px;padding-right: 40px;padding-top: 5px;}.row-3{background-color: #d70595;}.row-3 .row-content{background-color: #d70595;color: #000000;}.row-3 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-3 .col-1 .block-1{width: 100%;}.row-4{background-color: #ffffff;}.row-4 .row-content{background-color: #f7f7f5;color: #000000;}.row-4 .col-1 {padding-bottom: 20px;padding-top: 20px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-4 .col-1 .block-1{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;padding-top: 10px;}.row-4 .col-1 .block-2{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;padding-top: 5px;}.row-4 .col-1 .block-3{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;padding-top: 10px;text-align: center;}.row-5{}.row-5 .row-content{background-color: #d70595;color: #000000;}.row-5 .col-1 {border-top: 18px solid #FFFFFF;vertical-align: top;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-5 .col-1 .block-1{padding-bottom: 20px;padding-left: 10px;padding-right: 10px;padding-top: 15px;}.row-6{}.row-6 .row-content{background-color: #f7f7f5;color: #000000;}.row-6 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-6 .col-1 .block-1{width: 100%;}.row-7{}.row-7 .row-content{background-color: #f7f7f5;color: #000000;}.row-7 .col-1 {padding-bottom: 5px;padding-left: 20px;padding-right: 20px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-7 .col-1 .block-1{width: 100%;}.row-7 .col-1 .block-2{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;padding-top: 20px;}.row-7 .col-1 .block-3{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;}.row-7 .col-1 .block-4{padding-left: 10px;width: 100%;}.row-7 .col-1 .block-5{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;padding-top: 10px;}.row-7 .col-1 .block-6{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;padding-top: 10px;text-align: left;}.row-7 .col-2 {padding-bottom: 5px;padding-left: 20px;padding-right: 20px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-7 .col-2 .block-1{width: 100%;}.row-7 .col-2 .block-2{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;padding-top: 20px;}.row-7 .col-2 .block-3{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;}.row-7 .col-2 .block-4{padding-left: 10px;width: 100%;}.row-7 .col-2 .block-5{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;padding-top: 10px;}.row-7 .col-2 .block-6{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;padding-top: 10px;text-align: left;}.row-8{}.row-8 .row-content{background-color: #f7f7f5;color: #000000;}.row-8 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-9{}.row-9 .row-content{background-color: #d70595;color: #000000;}.row-9 .col-1 {padding-bottom: 5px;padding-top: 5px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-9 .col-1 .block-1{width: 100%;}.row-9 .col-1 .block-2{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;padding-top: 10px;}.row-9 .col-2 {padding-bottom: 5px;padding-top: 5px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-9 .col-2 .block-1{width: 100%;}.row-9 .col-2 .block-2{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;padding-top: 10px;}.row-9 .col-3 {padding-bottom: 5px;padding-top: 5px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-9 .col-3 .block-1{width: 100%;}.row-9 .col-3 .block-2{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;padding-top: 10px;}.row-10{}.row-10 .row-content{background-color: #ffffff;color: #000000;}.row-10 .col-1 {padding-bottom: 20px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-10 .col-1 .block-1{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;padding-top: 10px;}.row-11{background-color: #d70595;}.row-11 .row-content{background-color: #d70595;color: #000000;}.row-11 .col-1 {padding-bottom: 25px;padding-top: 25px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-11 .col-1 .block-1{padding-bottom: 5px;padding-left: 10px;padding-right: 10px;padding-top: 10px;}.row-11 .col-1 .block-2{padding-bottom: 10px;padding-left: 40px;padding-right: 40px;padding-top: 5px;}.row-11 .col-1 .block-3{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;padding-top: 10px;text-align: center;}.row-12{background-color: #f7f7f5;}.row-12 .row-content{color: #000000;}.row-12 .col-1 {padding-bottom: 20px;padding-top: 5px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-12 .col-1 .block-1{padding-bottom: 10px;padding-left: 10px;padding-right: 10px;padding-top: 20px;} | ||
// ` | ||
// const css_new = 'body {\n margin: 0;\n padding: 0;\n -webkit-text-size-adjust: none;\n text-size-adjust: none;\n background-color: #fff1ff;\n}\n\n.nl-container {\n background-color: #fff1ff;\n}\n\ntable, .column {\n mso-table-lspace: 0pt;\n mso-table-rspace: 0pt;\n}\n\n.column {\n font-weight: 400;\n text-align: left;\n vertical-align: top;\n}\n\np {\n margin: 0;\n}\n\nimg {\n display: block;\n height: auto;\n}\n\n.desktop_hide,\n.desktop_hide table {\n mso-hide: all;\n display: none;\n max-height: 0px;\n overflow: hidden;\n}.divider_inner {\n font-size: 1px;\n line-height: 1px;\n}.icons_block td {\n vertical-align: middle;\n}\n.icons_block td img {\n border: 0;\n margin: 0 auto;\n}\n.icons_block td a {\n text-decoration: none;\n}\n\n@media (max-width: 670px) {\n .desktop_hide table.icons-inner {\n display: inline-block !important;\n }\n .icons-inner {\n text-align: center;\n }\n .icons-inner td {\n margin: 0 auto;\n }\n}@media (max-width: 670px) {\n .image_block img.fullWidth {\n max-width: 100% !important;\n }\n}\n.image_block img {\n border: 0;\n}.menu_block.desktop_hide .menu-links span {\n mso-hide: all;\n}\n\n@media (max-width: 670px) {\n .menu-checkbox[type=checkbox] ~ .menu-links {\n display: none !important;\n padding: 5px 0;\n }\n .menu-checkbox[type=checkbox] ~ .menu-links span.sep {\n display: none !important;\n }\n .menu-checkbox[type=checkbox]:checked ~ .menu-links,\n .menu-checkbox[type=checkbox] ~ .menu-trigger {\n display: block !important;\n max-width: none !important;\n max-height: none !important;\n font-size: inherit !important;\n }\n .menu-checkbox[type=checkbox] ~ .menu-links > a,\n .menu-checkbox[type=checkbox] ~ .menu-links > span.label {\n display: block !important;\n text-align: center;\n }\n .menu-checkbox[type=checkbox]:checked ~ .menu-trigger .menu-close {\n display: block !important;\n }\n .menu-checkbox[type=checkbox]:checked ~ .menu-trigger .menu-open {\n display: none !important;\n }\n .menu-specific {\n display: none;\n }\n}.social-table img {\n border: 0;\n}\n\n@media (max-width: 670px) {\n .social_block.desktop_hide .social-table {\n display: inline-block !important;\n }\n}.text_block {\n word-break: break-word;\n}@media (max-width: 670px) {\n .video_block .sizer {\n max-width: none !important;\n }\n}\n.video_block * {\n box-sizing: content-box;\n}h1, h2, h3 {\n margin: 0;\n}.paragraph_block {\n word-break: break-word;\n}.list_block {\n word-break: break-word;\n}\n.list_block ul, .list_block ol {\n margin-top: 0;\n margin-bottom: 0;\n padding: 0;\n}\n.list_block ul.leftList, .list_block ol.leftList {\n padding-left: 20px;\n}@media (max-width: 670px) {\n /* TODO: check if .row is removable */\n /*\n .row {\n \twidth: 100%;\n \theight: auto;\n }\n */\n .row .side {\n display: none;\n }\n .row-content {\n width: 100% !important;\n }\n .stack .column {\n width: 100%;\n display: block;\n }\n .mobile_hide {\n min-height: 0px;\n max-height: 0px;\n max-width: 0px;\n display: none;\n overflow: hidden;\n font-size: 0px;\n }\n .desktop_hide,\n .desktop_hide table {\n display: table !important;\n max-height: none !important;\n }\n .reverse {\n display: table;\n width: 100%;\n }\n .reverse .column.first {\n display: table-footer-group !important;\n }\n .reverse .column.last {\n display: table-header-group !important;\n }\n}.row-1{background-color: #ffffff;}.row-1 .row-content{background-color: #ffffff;color: #000000;}.row-1 .col-1 {padding-bottom: 10px;padding-top: 10px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-1 .col-1 .block-1{}.row-2{background-color: #ffffff;}.row-2 .row-content{background-color: #bf8c41;color: #000000;}.row-2 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-2 .col-1 .block-1{width: 100%;}.row-3{background-color: #ffffff;}.row-3 .row-content{background-color: #FFFFFF;color: #000000;}.row-3 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-3 .col-1 .block-1{width: 100%;}.row-4{}.row-4 .row-content{background-color: #ffffff;color: #000000;}.row-4 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-4 .col-1 .block-1{width: 100%;}.row-4 .col-2 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-4 .col-2 .block-1{width: 100%;}.row-4 .col-3 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-4 .col-3 .block-1{width: 100%;}.row-4 .col-4 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-4 .col-4 .block-1{width: 100%;}.row-5{background-color: #ffffff;}.row-5 .row-content{background-color: #f9f7ea;color: #000000;}.row-5 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-5 .col-1 .block-1{width: 100%;}.row-5 .col-1 .block-2{width: 100%;}.row-6{background-color: #ffffff;}.row-6 .row-content{background-color: #f3dfdb;color: #000000;}.row-6 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-6 .col-1 .block-1{width: 100%;}.row-7{background-color: #ffffff;}.row-7 .row-content{background-color: #f3dfdb;color: #000000;}.row-7 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-7 .col-1 .block-1{}.row-8{background-color: #ffffff;}.row-8 .row-content{background-color: #f3dfdb;color: #000000;}.row-8 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-8 .col-1 .block-1{width: 100%;}.row-9{background-color: #ffffff;}.row-9 .row-content{background-color: #ffffff;color: #000000;}.row-9 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-9 .col-1 .block-1{width: 100%;}.row-10{background-color: #ffffff;}.row-10 .row-content{background-color: #ffffff;color: #000000;}.row-10 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-10 .col-1 .block-1{width: 100%;}.row-10 .col-2 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-10 .col-2 .block-1{width: 100%;}.row-11{}.row-11 .row-content{background-color: #ffffff;color: #000000;}.row-11 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-11 .col-1 .block-1{width: 100%;}.row-12{background-color: #ffffff;}.row-12 .row-content{background-color: #e2e4e9;color: #000000;}.row-12 .col-1 {padding-bottom: 10px;padding-top: 22px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-12 .col-1 .block-1{width: 100%;}.row-13{background-color: #ffffff;}.row-13 .row-content{background-color: #e2e4e9;color: #000000;}.row-13 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-13 .col-2 {padding-bottom: 5px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-13 .col-2 .block-1{color: #000000;font-family: inherit;font-size: 14px;text-align: center;}.row-13 .col-3 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-14{background-color: #ffffff;}.row-14 .row-content{background-color: #e2e4e9;color: #000000;}.row-14 .col-1 {padding-bottom: 30px;padding-left: 15px;padding-right: 15px;padding-top: 20px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-14 .col-1 .block-1{}' | ||
// const css = ` | ||
// body { | ||
// margin: 0; | ||
// padding: 0; | ||
// -webkit-text-size-adjust: none; | ||
// text-size-adjust: none; | ||
// background-color: #fff1ff; | ||
// } | ||
// .nl-container { | ||
// background-color: #fff1ff; | ||
// } | ||
// table, .column { | ||
// mso-table-lspace: 0pt; | ||
// mso-table-rspace: 0pt; | ||
// } | ||
// .column { | ||
// font-weight: 400; | ||
// text-align: left; | ||
// vertical-align: top; | ||
// } | ||
// p { | ||
// margin: 0; | ||
// } | ||
// img { | ||
// display: block; | ||
// height: auto; | ||
// } | ||
// .desktop_hide, | ||
// .desktop_hide table { | ||
// mso-hide: all; | ||
// display: none; | ||
// max-height: 0px; | ||
// overflow: hidden; | ||
// }.divider_inner { | ||
// font-size: 1px; | ||
// line-height: 1px; | ||
// }.icons_block td { | ||
// vertical-align: middle; | ||
// } | ||
// .icons_block td img { | ||
// border: 0; | ||
// margin: 0 auto; | ||
// } | ||
// .icons_block td a { | ||
// text-decoration: none; | ||
// } | ||
// @media (max-width: 670px) { | ||
// .desktop_hide table.icons-inner { | ||
// display: inline-block !important; | ||
// } | ||
// .icons-inner { | ||
// text-align: center; | ||
// } | ||
// .icons-inner td { | ||
// margin: 0 auto; | ||
// } | ||
// }@media (max-width: 670px) { | ||
// .image_block img.fullWidth { | ||
// max-width: 100% !important; | ||
// } | ||
// } | ||
// .image_block img { | ||
// border: 0; | ||
// }.menu_block.desktop_hide .menu-links span { | ||
// mso-hide: all; | ||
// } | ||
// @media (max-width: 670px) { | ||
// .menu-checkbox[type=checkbox] ~ .menu-links { | ||
// display: none !important; | ||
// padding: 5px 0; | ||
// } | ||
// .menu-checkbox[type=checkbox] ~ .menu-links span.sep { | ||
// display: none !important; | ||
// } | ||
// .menu-checkbox[type=checkbox]:checked ~ .menu-links, | ||
// .menu-checkbox[type=checkbox] ~ .menu-trigger { | ||
// display: block !important; | ||
// max-width: none !important; | ||
// max-height: none !important; | ||
// font-size: inherit !important; | ||
// } | ||
// .menu-checkbox[type=checkbox] ~ .menu-links > a, | ||
// .menu-checkbox[type=checkbox] ~ .menu-links > span.label { | ||
// display: block !important; | ||
// text-align: center; | ||
// } | ||
// .menu-checkbox[type=checkbox]:checked ~ .menu-trigger .menu-close { | ||
// display: block !important; | ||
// } | ||
// .menu-checkbox[type=checkbox]:checked ~ .menu-trigger .menu-open { | ||
// display: none !important; | ||
// } | ||
// .menu-specific { | ||
// display: none; | ||
// } | ||
// }.social-table img { | ||
// border: 0; | ||
// } | ||
// @media (max-width: 670px) { | ||
// .social_block.desktop_hide .social-table { | ||
// display: inline-block !important; | ||
// } | ||
// }.text_block { | ||
// word-break: break-word; | ||
// }@media (max-width: 670px) { | ||
// .video_block .sizer { | ||
// max-width: none !important; | ||
// } | ||
// } | ||
// .video_block * { | ||
// box-sizing: content-box; | ||
// }h1, h2, h3 { | ||
// margin: 0; | ||
// }.paragraph_block { | ||
// word-break: break-word; | ||
// }.list_block { | ||
// word-break: break-word; | ||
// } | ||
// .list_block ul { | ||
// list-style-position: inside; | ||
// } | ||
// .list_block ul, .list_block ol { | ||
// margin-top: 0; | ||
// margin-bottom: 0; | ||
// padding: 0; | ||
// } | ||
// .list_block ul.leftList, .list_block ol.leftList { | ||
// padding-left: 20px; | ||
// }@media (max-width: 670px) { | ||
// /* TODO: check if .row is removable */ | ||
// /* | ||
// .row { | ||
// width: 100%; | ||
// height: auto; | ||
// } | ||
// */ | ||
// .row .side { | ||
// display: none; | ||
// } | ||
// .row-content { | ||
// width: 100% !important; | ||
// } | ||
// .stack .column { | ||
// width: 100%; | ||
// display: block; | ||
// } | ||
// .mobile_hide { | ||
// min-height: 0px; | ||
// max-height: 0px; | ||
// max-width: 0px; | ||
// display: none; | ||
// overflow: hidden; | ||
// font-size: 0px; | ||
// } | ||
// .desktop_hide, | ||
// .desktop_hide table { | ||
// display: table !important; | ||
// max-height: none !important; | ||
// } | ||
// .reverse { | ||
// display: table; | ||
// width: 100%; | ||
// } | ||
// .reverse .column.first { | ||
// display: table-footer-group !important; | ||
// } | ||
// .reverse .column.last { | ||
// display: table-header-group !important; | ||
// } | ||
// }.row-1{background-color: #ffffff;}.row-1 .row-content{background-color: #ffffff;color: #000000;}.row-1 .col-1 {padding-bottom: 10px;padding-top: 10px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-1 .col-1 .block-1{}.row-2{background-color: #ffffff;}.row-2 .row-content{background-color: #bf8c41;color: #000000;}.row-2 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-2 .col-1 .block-1{width: 100%;}.row-3{background-color: #ffffff;}.row-3 .row-content{background-color: #FFFFFF;color: #000000;}.row-3 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-3 .col-1 .block-1{width: 100%;}.row-4{}.row-4 .row-content{background-color: #ffffff;color: #000000;}.row-4 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-4 .col-1 .block-1{width: 100%;}.row-4 .col-2 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-4 .col-2 .block-1{width: 100%;}.row-4 .col-3 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-4 .col-3 .block-1{width: 100%;}.row-4 .col-4 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-4 .col-4 .block-1{width: 100%;}.row-5{background-color: #ffffff;}.row-5 .row-content{background-color: #f9f7ea;color: #000000;}.row-5 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-5 .col-1 .block-1{width: 100%;}.row-5 .col-1 .block-2{width: 100%;}.row-6{background-color: #ffffff;}.row-6 .row-content{background-color: #f3dfdb;color: #000000;}.row-6 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-6 .col-1 .block-1{width: 100%;}.row-7{background-color: #ffffff;}.row-7 .row-content{background-color: #f3dfdb;color: #000000;}.row-7 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-7 .col-1 .block-1{}.row-8{background-color: #ffffff;}.row-8 .row-content{background-color: #f3dfdb;color: #000000;}.row-8 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-8 .col-1 .block-1{width: 100%;}.row-9{background-color: #ffffff;}.row-9 .row-content{background-color: #ffffff;color: #000000;}.row-9 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-9 .col-1 .block-1{width: 100%;}.row-10{background-color: #ffffff;}.row-10 .row-content{background-color: #ffffff;color: #000000;}.row-10 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-10 .col-1 .block-1{width: 100%;}.row-10 .col-2 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-10 .col-2 .block-1{width: 100%;}.row-11{}.row-11 .row-content{background-color: #ffffff;color: #000000;}.row-11 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-11 .col-1 .block-1{width: 100%;}.row-12{background-color: #ffffff;}.row-12 .row-content{background-color: #e2e4e9;color: #000000;}.row-12 .col-1 {padding-bottom: 10px;padding-top: 22px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-12 .col-1 .block-1{width: 100%;}.row-13{background-color: #ffffff;}.row-13 .row-content{background-color: #e2e4e9;color: #000000;}.row-13 .col-1 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-13 .col-2 {padding-bottom: 5px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-13 .col-2 .block-1{color: #000000;font-family: inherit;font-size: 14px;text-align: center;}.row-13 .col-3 {vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-14{background-color: #ffffff;}.row-14 .row-content{background-color: #e2e4e9;color: #000000;}.row-14 .col-1 {padding-bottom: 30px;padding-left: 15px;padding-right: 15px;padding-top: 20px;vertical-align: top;border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px;}.row-14 .col-1 .block-1{}' | ||
// ` | ||
console.log('css ', css); | ||
@@ -352,0 +558,0 @@ const perf = []; |
@@ -17,6 +17,2 @@ "use strict"; | ||
const indexList = (0, exports.findIndexOfMediaQueries)(css); | ||
console.log('css'); | ||
console.log(css); | ||
console.log('indexList'); | ||
console.dir(indexList); | ||
const mediaQueries = []; | ||
@@ -45,12 +41,6 @@ for (const index of indexList) { | ||
mediaQueries.push({ rule, val, start: index, end: i }); | ||
console.log(); | ||
console.log('add to mediaquery ', { rule, val, start: index, end: i }); | ||
console.log(); | ||
} | ||
} | ||
console.log('media query'); | ||
console.log(mediaQueries); | ||
console.log(); | ||
return mediaQueries.replaceAll('\n',''); | ||
return mediaQueries; | ||
}; | ||
exports.getMediaQueries = getMediaQueries; |
@@ -43,5 +43,6 @@ "use strict"; | ||
/** | ||
* | ||
* @param css build media queries tokens | ||
* @param object | ||
* build media queries tokens | ||
* todo: merge same media query rules | ||
* @param css the css string | ||
* @param object media query | ||
* @returns {Tokerns} media tokens | ||
@@ -57,3 +58,9 @@ */ | ||
const value = css.slice(mediaQueryFirstParenthesis + 1, mediaQueryEnd - 1); | ||
mediaTokens[rule] = value.replaceAll('\n', '').replaceAll('\t', '').replaceAll(' ', ''); | ||
// add new rule and little size optimization | ||
if (mediaTokens[rule] !== undefined) { | ||
mediaTokens[rule] = mediaTokens[rule] + value.replaceAll('\n', '').replaceAll('\t', '').replaceAll(' ', ''); | ||
} | ||
else { | ||
mediaTokens[rule] = value.replaceAll('\n', '').replaceAll('\t', '').replaceAll(' ', ''); | ||
} | ||
} | ||
@@ -118,5 +125,7 @@ return mediaTokens; | ||
index = css.indexOf('*/', index) + 2; // NOSONAR | ||
oldChar = ''; // reset old char to avoid error | ||
continue; | ||
} | ||
if ((0, exports.isSkippable)(char, oldChar, nextChar)) { | ||
oldChar = ''; // reset old char to avoid error | ||
continue; | ||
@@ -127,2 +136,3 @@ } | ||
mediaQueryParsed++; | ||
oldChar = ''; // reset old char to avoid error | ||
continue; | ||
@@ -129,0 +139,0 @@ } |
@@ -15,5 +15,4 @@ "use strict"; | ||
const res = (0, tokenize_1.tokenize)(css); | ||
console.log(res); | ||
expect(res).toBeDefined(); | ||
}); | ||
}); |
{ | ||
"name": "@gafreax/cssparser", | ||
"version": "1.0.9", | ||
"version": "1.0.10", | ||
"description": "Simple CSS Parser to tokenize CSS, merge rules, and optimize it", | ||
"main": "dist/src/index.js", | ||
"scripts": { | ||
"prepublish": "npm run build", | ||
"prepare": "npm run build", | ||
"prebuild": "rimraf dist/ && ts-standard --fix src/**/*.ts", | ||
@@ -9,0 +9,0 @@ "lint": "ts-standard --fix", |
928104
25837