Я создаю инструмент, который запускает сервер, получает контент с сервера и отображает его в браузере. Я пытаюсь интегрировать его с интерфейсными фреймворками. Один из таких фреймворков - Sapper / Svelte. Проблема в том, что мой пакет содержит импорт для встроенных модулей, которые не нужны браузеру, а также не разрешаются браузером, что, в свою очередь, вызывает ошибку.
Я думаю, что мне нужно сделать мой инструмент изоморфным и разделить его на две группы. Один для сервера (server.js) и один для браузера (client.js), который не содержит импорта для встроенных модулей. У меня есть хорошее представление о том, как я могу разделить код, используя разделение кода в Rollup, но я не знаю, как я говорю Sapper использовать server.js для сервера и client.js для клиента.
Как я могу связать свой модуль, чтобы, когда он используется другими приложениями, он знал, какой из них использовать для сервера, а какой - для браузера? Могу ли я это сделать в своем модуле или мне нужно также настроить это в рамках, в которых он используется?