OLD | NEW |
1 # coding: utf-8 | 1 # coding: utf-8 |
2 | 2 |
3 # This Source Code Form is subject to the terms of the Mozilla Public | 3 # This Source Code Form is subject to the terms of the Mozilla Public |
4 # License, v. 2.0. If a copy of the MPL was not distributed with this | 4 # License, v. 2.0. If a copy of the MPL was not distributed with this |
5 # file, You can obtain one at http://mozilla.org/MPL/2.0/. | 5 # file, You can obtain one at http://mozilla.org/MPL/2.0/. |
6 | 6 |
7 import sys | 7 import sys |
8 import os | 8 import os |
9 import re | 9 import re |
10 import json | 10 import json |
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
104 if metadata.has_section('contentScripts'): | 104 if metadata.has_section('contentScripts'): |
105 contentScripts = [] | 105 contentScripts = [] |
106 for run_at, scripts in metadata.items('contentScripts'): | 106 for run_at, scripts in metadata.items('contentScripts'): |
107 if scripts == '': | 107 if scripts == '': |
108 continue | 108 continue |
109 contentScripts.append({ | 109 contentScripts.append({ |
110 'matches': ['http://*/*', 'https://*/*'], | 110 'matches': ['http://*/*', 'https://*/*'], |
111 'js': re.split(r'\s+', scripts), | 111 'js': re.split(r'\s+', scripts), |
112 'run_at': run_at, | 112 'run_at': run_at, |
113 'all_frames': True, | 113 'all_frames': True, |
| 114 'match_about_blank': True, |
114 }) | 115 }) |
115 templateData['contentScripts'] = contentScripts | 116 templateData['contentScripts'] = contentScripts |
116 | 117 |
117 manifest = template.render(templateData) | 118 manifest = template.render(templateData) |
118 | 119 |
119 # Normalize JSON structure | 120 # Normalize JSON structure |
120 licenseComment = re.compile(r'/\*.*?\*/', re.S) | 121 licenseComment = re.compile(r'/\*.*?\*/', re.S) |
121 data = json.loads(re.sub(licenseComment, '', manifest, 1)) | 122 data = json.loads(re.sub(licenseComment, '', manifest, 1)) |
122 if '_dummy' in data: | 123 if '_dummy' in data: |
123 del data['_dummy'] | 124 del data['_dummy'] |
(...skipping 247 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
371 'lib/info.js' not in files): | 372 'lib/info.js' not in files): |
372 files['lib/info.js'] = createInfoModule(params) | 373 files['lib/info.js'] = createInfoModule(params) |
373 | 374 |
374 zipdata = files.zipToString() | 375 zipdata = files.zipToString() |
375 signature = None | 376 signature = None |
376 pubkey = None | 377 pubkey = None |
377 if keyFile != None: | 378 if keyFile != None: |
378 signature = signBinary(zipdata, keyFile) | 379 signature = signBinary(zipdata, keyFile) |
379 pubkey = getPublicKey(keyFile) | 380 pubkey = getPublicKey(keyFile) |
380 writePackage(outFile, pubkey, signature, zipdata) | 381 writePackage(outFile, pubkey, signature, zipdata) |
OLD | NEW |