UNPKG

@ethan-jones-vizio/sveld

Version:

Generate TypeScript definitions for your Svelte components.

35 lines (34 loc) 1.52 kB
"use strict"; exports.__esModule = true; exports.convertSvelteExt = exports.removeSvelteExt = exports.createExports = void 0; function createExports(parsed_exports, components) { var source = Object.entries(parsed_exports).map(function (_a) { var id = _a[0], exportee = _a[1]; var module_exports = []; if (components.has(id)) { module_exports = components.get(id).moduleExports.map(function (moduleExport) { return moduleExport.name; }); } var named_exports = ""; if (module_exports.length > 0) named_exports = ", " + module_exports.join(", "); if (id === "default" || exportee["default"]) { if (exportee.mixed) { return "export { default as ".concat(id).concat(named_exports, " } from \"").concat(exportee.source, "\";\nexport { default } from \"").concat(exportee.source, "\";"); } return "export { default".concat(named_exports, " } from \"").concat(exportee.source, "\";"); } return "export { default as ".concat(id).concat(named_exports, " } from \"").concat(exportee.source, "\";"); }); return source.join("\n"); } exports.createExports = createExports; function removeSvelteExt(filePath) { return filePath.replace(/\.svelte$/, ""); } exports.removeSvelteExt = removeSvelteExt; function convertSvelteExt(filePath) { return filePath.replace(/\.svelte$/, ".svelte.d.ts"); } exports.convertSvelteExt = convertSvelteExt;