|
@@ -91,6 +91,7 @@ def main():
|
|
|
|
|
|
if PLATFORM != 'win32' and not args.no_api_docs:
|
|
|
create_api_json_schema()
|
|
|
+ create_typescript_definitions()
|
|
|
|
|
|
if PLATFORM == 'linux':
|
|
|
strip_binaries()
|
|
@@ -143,6 +144,16 @@ def create_api_json_schema():
|
|
|
'--version={}'.format(ELECTRON_VERSION.replace('v', ''))],
|
|
|
env=env)
|
|
|
|
|
|
+def create_typescript_definitions():
|
|
|
+ node_bin_dir = os.path.join(SOURCE_ROOT, 'node_modules', '.bin')
|
|
|
+ env = os.environ.copy()
|
|
|
+ env['PATH'] = os.path.pathsep.join([node_bin_dir, env['PATH']])
|
|
|
+ infile = os.path.relpath(os.path.join(DIST_DIR, 'electron-api.json'))
|
|
|
+ outfile = os.path.relpath(os.path.join(DIST_DIR, 'electron.d.ts'))
|
|
|
+ execute(['electron-typescript-definitions', '--in={0}'.format(infile),
|
|
|
+ '--out={0}'.format(outfile)], env=env)
|
|
|
+ execute(['tslint', outfile], env=env)
|
|
|
+
|
|
|
def strip_binaries():
|
|
|
for binary in TARGET_BINARIES[PLATFORM]:
|
|
|
if binary.endswith('.so') or '.' not in binary:
|