Chore: Remove rollup-plugin-dts (#106442)

* chore(packages): remove rollup dts plugin

* build(packages): add rollup copy plugin settings to copy ts declarations to esm and cjs builds

* build(packages): remove copy settings as result doesnt pass attw cli checks

* build(packages): use single types output in dist/types directory

* ci(packages): update prepare and validate scripts for single type builds

* fix(grafana-schema): copy raw types to dist/esm directory for grafana/scenes support
This commit is contained in:
Jack Westbrook
2025-06-12 15:25:16 +02:00
committed by GitHub
parent cf31954f2a
commit e33ef2885f
27 changed files with 50 additions and 134 deletions

View File

@ -1,6 +1,5 @@
import PackageJson from '@npmcli/package-json';
import { mkdir } from 'node:fs/promises';
import { join, dirname } from 'node:path';
const cwd = process.cwd();
@ -8,18 +7,17 @@ try {
const pkgJson = await PackageJson.load(cwd);
const cjsIndex = pkgJson.content.publishConfig?.main ?? pkgJson.content.main;
const esmIndex = pkgJson.content.publishConfig?.module ?? pkgJson.content.module;
const cjsTypes = pkgJson.content.publishConfig?.types ?? pkgJson.content.types;
const esmTypes = `./${join(dirname(esmIndex), 'index.d.mts')}`;
const typesIndex = pkgJson.content.publishConfig?.types ?? pkgJson.content.types;
const exports = {
'./package.json': './package.json',
'.': {
import: {
types: esmTypes,
types: typesIndex,
default: esmIndex,
},
require: {
types: cjsTypes,
types: typesIndex,
default: cjsIndex,
},
},
@ -43,7 +41,7 @@ try {
pkgJson.update({
main: cjsIndex,
types: cjsTypes,
types: typesIndex,
module: esmIndex,
exports,
});
@ -60,11 +58,11 @@ try {
...pkgJson.content.exports,
[`./${aliasName}`]: {
import: {
types: esmTypes.replace('index', aliasName),
types: typesIndex.replace('index', aliasName),
default: esmIndex.replace('index', aliasName),
},
require: {
types: cjsTypes.replace('index', aliasName),
types: typesIndex.replace('index', aliasName),
default: cjsIndex.replace('index', aliasName),
},
},
@ -88,7 +86,7 @@ async function createAliasPackageJsonFiles(packageJsonContent, aliasName) {
const pkgJson = await PackageJson.create(pkgJsonPath, {
data: {
name: pkgName,
types: `../dist/cjs/${aliasName}.d.cts`,
types: `../dist/types/${aliasName}.d.ts`,
main: `../dist/cjs/${aliasName}.cjs`,
module: `../dist/esm/${aliasName}.mjs`,
},