Отладка в Safari Web Inspector при использовании загрузчика модуля, такого как SystemJS

Я создаю приложение Ionic с использованием es6 modules, TypeScript и SystemJS в качестве загрузчика модуля. Это моя настройка:

tsconfig.json:

{
  "compilerOptions": {
    ...
    "target": "es5",
    "module": "system",
    ...
  }
}

index.html:

<script src="lib/system.js"></script>
<script src="systemjs.config.js"></script>
<script>System.import('js/app.js')</script>

пример скрипта (TypeScript):

import {IConfig} from "./app-config";

export class ConfigLoader {
    ...
}

Все отлично работает в Chrome. Однако при отладке с помощью Safari Web Inspector я не могу разместить точки останова в сценариях, потому что Web Inspector показывает только сценарии, загружаемые непосредственно из HTML (через теги скриптов), а не скрипты, загруженные XHR (в моем случае, SystemJS), Это означает, что я не могу отлаживать собственные сценарии, что, конечно, неприемлемо.

Я попытался обойти это, используя SystemJS, как раньше, но также помещая теги сценария в html, например:

<script src="lib/system.js"></script>
<script src="systemjs.config.js"></script>
<script src="js/app-config.js"></script>
... other app scripts
<script>System.import('js/app.js')</script>

Однако это не сработает, поскольку SystemJS не выглядит счастливым по этому поводу:

Недействительный вызов System.register. Анонимные вызовы System.register могут выполняться только модулями, загружаемыми SystemJS.import, а не через теги скриптов.

Как использовать SystemJS и в то же время иметь возможность отладки в Safari? Я ищу решение немного сложнее, чем "поставить инструкцию отладчика в каждый скрипт"...

Ответы