UNPKG

@storm-software/build-tools

Version:

A comprehensive set of tools for building and managing projects within a Storm workspace. Includes builders such as rollup, rolldown, tsup, and unbuild, along with various utilities.

41 lines (37 loc) 1.38 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/plugins/type-definitions.ts var _devkit = require('@nx/devkit'); var _path = require('path'); function typeDefinitions(options) { return { name: "storm:dts-bundle", async generateBundle(_opts, bundle) { for (const [_, file] of Object.entries(bundle)) { if (file.type === "asset" || !file.isEntry || file.facadeModuleId == null) { continue; } const hasDefaultExport = file.exports.includes("default"); const entrySourceFileName = _path.relative.call(void 0, options.projectRoot, file.facadeModuleId ); const entrySourceDtsName = entrySourceFileName.replace( /\.[cm]?[jt]sx?$/, "" ); const dtsFileName = file.fileName.replace(/\.[cm]?js$/, ".d.ts"); const relativeSourceDtsName = JSON.stringify("./" + entrySourceDtsName); const dtsFileSource = hasDefaultExport ? _devkit.stripIndents` export * from ${relativeSourceDtsName}; export { default } from ${relativeSourceDtsName}; ` : `export * from ${relativeSourceDtsName}; `; this.emitFile({ type: "asset", fileName: dtsFileName, source: dtsFileSource }); } } }; } exports.typeDefinitions = typeDefinitions;