Czy TypeScript udostępnia jawny publiczny interfejs API dla dostępu do modułu NodeJS?
Z poziomu aplikacji węzłowej chciałbym zrobić:
var typeScript = require('typescript');
typeScript.compile('...')
Chcę zaimplementować kompilator w systemie kompilacji, ale bez dostępu do publicznego interfejsu API (typescript.compile itp.) Jest to niemożliwe.
Oto bardziej kompletny przykład tego, co chciałbym zrobić, chociaż poniżej znajduje się LiveScript, a nie TypeScript, wykorzystywany w wtyczce napisanej dla systemu kompilacji Brunch.io:
LiveScript = require 'LiveScript'
sysPath = require 'path'
module.exports = class LiveScriptCompiler
brunchPlugin: yes
type: 'javascript'
extension: 'ls'
constructor: (@config) ->
null
compile: (data, path, callback) ->
try
result = LiveScript.compile data, bare: yes
catch err
error = err
finally
callback error, result
include: [
(sysPath.join __dirname, '..', 'vendor', 'prelude-browser-0.6.0.js')
]
Ciekawy, czy ktoś znalazł obejście?
Aktualizacja
Skończyło się na wdrożeniu własnego rozwiązania wielu problemów wymienionych powyżej i gdzie indziej. Proszę zobaczyćhttps://github.com/damassi/TypeScript-Watcher aby uzyskać więcej informacji i użytkowania.