1+ // HTTPS Rewriter.
2+ //
3+ // Uses the rulesets from HTTPS to recursively rewrite URL references in a
4+ // given directory to HTTPS. Uses protocol-relative URLs wherever possible.
5+ // Makes a copy of each file at filename.bak.
6+ //
7+ // Usage:
8+ // (install node and npm)
9+ // cd https-everywhere
10+ // ./makecrx.sh
11+ // cd rewriter
12+ // js rewriter.js ~/path/to/my/webapp
13+
114var path = require ( "path" ) ,
215 fs = require ( "fs" ) ,
316 DOMParser = require ( 'xmldom' ) . DOMParser ,
417 readdirp = require ( 'readdirp' ) ,
518 es = require ( 'event-stream' ) ,
619
7- lrucache = require ( "./lru" ) ,
8- rules = require ( "./rules" ) ,
20+ lrucache = require ( "../chromium /lru" ) ,
21+ rules = require ( "../chromium /rules" ) ,
922
1023 URI = require ( "URIjs" ) ;
1124
@@ -14,7 +27,10 @@ var ruleSets = null;
1427function processDir ( dir ) {
1528 var stream = readdirp ( {
1629 root : dir ,
17- fileFilter : '*.html'
30+ fileFilter : [ '*.html' , '*.js' , '*.rb' , '*.erb' , '*.mustache' ,
31+ '*.scala' , '*.c' , '*.cc' , '*.cpp' , '*.cxx' ,
32+ '*.java' , '*.go' , '*.php' , '*.css' , '*.pl' , '*.py' ,
33+ '*.rhtml' , '*.sh' , '*.yaml' ]
1834 } ) ;
1935
2036 stream
@@ -58,7 +74,7 @@ function processFile(filename) {
5874}
5975
6076function loadRuleSets ( ) {
61- var fileContents = fs . readFileSync ( path . join ( __dirname , 'rules/default.rulesets' ) , { encoding : 'utf-8' } ) ;
77+ var fileContents = fs . readFileSync ( path . join ( __dirname , '../pkg/crx/ rules/default.rulesets' ) , { encoding : 'utf-8' } ) ;
6278 var xml = new DOMParser ( ) . parseFromString ( fileContents , 'text/xml' ) ;
6379 ruleSets = new rules . RuleSets ( "fake user agent" , lrucache . LRUCache , xml , { } ) ;
6480}
0 commit comments