-
-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathgenerate_javadoc_stylesheet.js
37 lines (31 loc) · 10.8 KB
/
generate_javadoc_stylesheet.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
function download () {
var filename = 'javadoc_stylesheet.css'
var text
var parser = new less.Parser()
parser.parse(buildStyleData(), function (err, tree) {
if (!err) {
text = tree.toCSS()
}
})
var element = document.createElement('a')
element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text))
element.setAttribute('download', filename)
element.style.display = 'none'
document.body.appendChild(element)
element.click()
document.body.removeChild(element)
}
function buildStyleData () {
var color0 = '@color0: ' + document.querySelector('#cp0 > input').value + ';'
var color1 = '@color1: ' + document.querySelector('#cp1 > input').value + ';'
var color2 = '@color2: ' + document.querySelector('#cp2 > input').value + ';'
var color3 = '@color3: ' + document.querySelector('#cp3 > input').value + ';'
var color4 = '@color4: ' + document.querySelector('#cp4 > input').value + ';'
var color5 = '@color5: ' + document.querySelector('#cp5 > input').value + ';'
var color6 = '@color6: ' + document.querySelector('#cp6 > input').value + ';'
var color7 = '@color7: ' + document.querySelector('#cp7 > input').value + ';'
var color8 = '@color8: ' + document.querySelector('#cp8 > input').value + ';'
var restOfTheStyle = '@color9: #bb7a2a; @width1: 100%; @width2: 25%; @height0: 2.8em; body{background-color:@color1;color:@color5;font-family:Arial, Helvetica, sans-serif;font-size:76%;margin:0}a{&:link { color: @color8;text-decoration:none}&:visited{color:@color8;text-decoration:none}&:hover{color:@color4;font-weight:bold;text-decoration:none}&:focus{color:@color4;font-weight:bold;text-decoration:none}&:active{color:#4c6b87;text-decoration:none}} a[name]{color:@color5;&:hover { color: @color5;text-decoration:none}} pre{font-size:1.3em}h1{font-size:1.8em}h2{font-size:1.5em}h3{font-size:1.4em}h4{font-size:1.3em}h5{font-size:1.2em}h6{font-size:1.1em}ul{list-style-type:disc}code{font-size:1.2em}tt{font-size:1.2em}dt{code { font-size:1.2em}} table{tr { td { dt { code { font-size:1.2em;vertical-align:top}} dl{margin-bottom:1px;margin-top:0;dt { margin-bottom:1px;margin-top:0}dd{margin-bottom:1px;margin-top:0}} } } } sup{font-size:.6em}.clear{clear:both;height:0px;overflow:hidden}.aboutLanguage{float:right;font-size:.8em;margin-top:-7px;padding:0px 21px;z-index:200}.legalCopy{margin-left:.5em}.bar a,.bar a:link,.bar a:visited,.bar a:active{color:@color1;text-decoration:none}.bar{background-color:@color2;color:@color1;font-size:1em;height:1.8em;height:auto;margin:0;padding:.8em .5em .4em .8em;a { &:hover { color: @color9}&:focus{color:@color9}} } .tab{background-color:@color2;background-position:left top;background-repeat:no-repeat;color:@color1;font-weight:bold;padding:8px;width:5em}.topNav{background-color:@color2;clear:right;color:@color1;height:@height0;overflow:hidden;padding-top:10px;padding:0;width:@width1;a { &:hover { color: @color4;text-decoration:none}} } .bottomNav{background-color:@color2;clear:right;color:@color1;float:left;height:@height0;margin-top:10px;overflow:hidden;padding-top:10px;padding:0;width:@width1;a { &:hover { color: @color4;text-decoration:none}} } .subNav{background-color:@color3;border-bottom:1px solid @color0;float:left;overflow:hidden;width:@width1;div { clear:left;float:left;padding:0 0 5px 6px}} ul.navList{float:left;margin:0 25px 0 0;padding:0;li { float:left;font-weight:bold;list-style:none;padding:3px 6px}} ul.subNavList{float:left;margin:0 25px 0 0;padding:0;li { float:left;font-size:90%;font-weight:bold;list-style:none}} .topNav a:link,.topNav a:active,.topNav a:visited,.bottomNav a:link,.bottomNav a:active,.bottomNav a:visited{color:@color1;text-decoration:none}.navBarCell1Rev{background-color:@color7;border-radius:1px;color:@color1;font-weight:bold;margin:auto 5px}.header{clear:both;margin:0 20px;padding:5px 0 0 0;ul { margin:0 0 25px 0;padding:0;li { font-size:1.2em;list-style:none}} } .footer{clear:both;margin:0 20px;padding:5px 0 0 0;ul { margin:20px 0 5px 0;li { font-size:1.2em;list-style:none}} } .indexHeader{padding:10px;position:relative;h1 { font-size:1.3em}} .title{color:#2c4557;margin:10px 0}.subTitle{margin:5px 0 0 0}div.details{ul.blocklist { ul.blocklist { ul.blocklist { li.blocklist { h4 { background-color:@color3;border-bottom:1px solid @color0;border-top:1px solid @color0;margin:0 0 6px -8px;padding:2px 5px}} } ul.blockListLast{li.blocklist { h4 { background-color:@color3;border-bottom:1px solid @color0;border-top:1px solid @color0;margin:0 0 6px -8px;padding:2px 5px}} } } } } ul.blockList{margin:10px 0 10px 0;padding:0;ul.blocklist { ul.blocklist { li.blocklist { background-color:@color1;border-top:none;border:1px solid @color0;padding:0 0 5px 8px;h3 { background-color:@color3;border-bottom:1px solid @color0;border-top:1px solid @color0;margin:0 0 6px -8px;padding:2px 5px}} ul.blockList{li.blocklist { border-bottom:1px solid @color0;border:none;margin-left:0;padding-bottom:15px;padding-left:0}li.blockListLast{border-bottom:none;list-style:none;padding-bottom:0}} } li.blockList{background-color:@color7;border:1px solid @color0;padding:0px 20px 5px 10px;h3 { margin:15px 0;padding:0}table{margin:0 0 12px 0px;width:@width1}} ul.blockListLast{li.blocklist { background-color:@color1;border-top:none;border:1px solid @color0;padding:0 0 5px 8px}} } li.blockList{list-style:none;margin-bottom:25px;h2 { padding:0px 0 20px 0}} ul.blockListLast{li.blocklist { background-color:@color7;border:1px solid @color0;padding:0px 20px 5px 10px}} } .contentContainer,.sourceContainer,.classUseContainer,.serializedFormContainer,.constantValuesContainer{clear:both;padding:10px 20px;position:relative}.indexContainer{font-size:1.0em;position:relative;h2 { font-size:1.1em;padding:10px;background-color:@color8}ul{margin:0;padding:10px;li { list-style:none;padding:0.3em}} } .contentContainer{.description { dl { dt { color:@color6;font-size:1.1em;font-weight:bold;margin:10px 0 0 0}dd{margin:10px 0 10px 20px}} table{border-bottom:none}} .details{dl { dt { color:@color6;font-size:1.1em;font-weight:bold;margin:10px 0 0 0}dd{margin:10px 0 10px 20px}} table{border-bottom:none}} table{border-bottom:1px solid @color0;width:@width1}ul{li { table { width:@width1}} } } .serializedFormContainer{dl { dt { color:@color6;font-size:1.1em;font-weight:bold;margin:10px 0 0 0}dd{margin:10px 0 10px 20px}} dl.nameValue{dt { display:inline;font-size:1.1em;font-weight:bold;margin-left:1px}dd{display:inline;font-size:1.1em;margin:0 0 0 1px}} } ul.horizontal{li { display:inline;font-size:0.9em}} ul.inheritance{margin:0;padding:0;li { display:inline;list-style:none;ul.inheritance { margin-left:15px;padding-left:15px;padding-top:1px}} } ul.blockListLast{margin:10px 0 10px 0;padding:0;li.blocklist { list-style:none;margin-bottom:25px}} .classUseContainer{table { border-bottom:1px solid @color0;width:@width1}ul{li { table { width:@width1}} } } .constantValuesContainer{table { border-bottom:1px solid @color0;width:@width1}ul{li { table { width:@width1}} } } .contentContainer ul li table th.colOne,.contentContainer ul li table th.colFirst,.contentContainer ul li table th.colLast,.classUseContainer ul li table th,.constantValuesContainer ul li table th,.contentContainer ul li table td.colOne,.contentContainer ul li table td.colFirst,.contentContainer ul li table td.colLast,.classUseContainer ul li table td,.constantValuesContainer ul li table td{padding-right:20px;vertical-align:top}.contentContainer ul li table th.colLast,.classUseContainer ul li table th.colLast,.constantValuesContainer ul li table th.colLast,.contentContainer ul li table td.colLast,.classUseContainer ul li table td.colLast,.constantValuesContainer ul li table td.colLast,.contentContainer ul li table th.colOne,.classUseContainer ul li table th.colOne,.contentContainer ul li table td.colOne,.classUseContainer ul li table td.colOne{padding-right:3px}.overviewSummary caption,.packageSummary caption,.contentContainer ul.blockList li.blockList caption,.summary caption,.classUseContainer caption,.constantValuesContainer caption{background-repeat:no-repeat;clear:none;color:@color1;font-weight:bold;margin:0px;overflow:hidden;padding:0px;position:relative;text-align:left}caption a:link,caption a:hover,caption a:active,caption a:visited{color:@color1}.overviewSummary caption span,.packageSummary caption span,.contentContainer ul.blockList li.blockList caption span,.summary caption span,.classUseContainer caption span,.constantValuesContainer caption span{background-color:@color2;display:block;float:left;height:18px;padding-left:8px;padding-top:8px;white-space:nowrap}.overviewSummary .tabEnd,.packageSummary .tabEnd,.contentContainer ul.blockList li.blockList .tabEnd,.summary .tabEnd,.classUseContainer .tabEnd,.constantValuesContainer .tabEnd{background-color:@color2;background-position:top right;background-repeat:no-repeat;border-top-right-radius:6px;float:left;position:relative;width:10px}.tableSubHeadingColor{background-color:#EEEEFF}.altColor{background-color:#eeeeef}.rowColor{background-color:@color1}.overviewSummary td,.packageSummary td,.contentContainer ul.blockList li.blockList td,.summary td,.classUseContainer td,.constantValuesContainer td{padding:3px 3px 3px 7px;text-align:left}th.colFirst,th.colLast,th.colOne,.constantValuesContainer th{background:@color3;border-bottom:1px solid @color0;border-top:1px solid @color0;padding:3px 3px 3px 7px;text-align:left;color:@color1;}td.colOne a:link,td.colOne a:active,td.colOne a:visited,td.colOne a:hover,td.colFirst a:link,td.colFirst a:active,td.colFirst a:visited,td.colFirst a:hover,td.colLast a:link,td.colLast a:active,td.colLast a:visited,td.colLast a:hover,.constantValuesContainer td a:link,.constantValuesContainer td a:active,.constantValuesContainer td a:visited,.constantValuesContainer td a:hover{font-weight:bold}td.colFirst{border-left:1px solid @color0;white-space:nowrap}th.colFirst{border-left:1px solid @color0;white-space:nowrap}td.colLast{border-right:1px solid @color0}th.colLast{border-right:1px solid @color0}td.colOne{border-left:1px solid @color0;border-right:1px solid @color0}th.colOne{border-left:1px solid @color0;border-right:1px solid @color0}table.overviewSummary{margin-left:0px;padding:0px;th.colfirst { vertical-align:middle;width:@width2}} table.overviewSummary td.colFirst,table.overviewSummary th.colFirst,table.overviewSummary td.colOne,table.overviewSummary th.colOne{vertical-align:middle;width:@width2}table.packageSummary{td.colfirst { vertical-align:middle;width:@width2}} .description{pre { margin-top:0}} .deprecatedContent{margin:0;padding:10px 0}.docSummary{padding:0}.sourceLineNo{color:green;padding:0 30px 0 0}h1.hidden{font-size:.9em;overflow:hidden;visibility:hidden}.block{display:block;margin:3px 0 0 0}.strong{font-weight:bold}'
var headerText = '/* Created with Javadoc-Themer built by Nishant */'
return headerText + color0 + color1 + color2 + color3 + color4 + color5 + color6 + color7 + color8 + restOfTheStyle
}