optimize repo

This commit is contained in:
Rene Haas
2022-10-28 16:33:01 +02:00
parent f76870b1d9
commit febeb126f2
12 changed files with 139 additions and 65 deletions
+1 -2
View File
@@ -20,8 +20,7 @@
"rollup-plugin-scss": "^3.0.0",
"rollup-plugin-serve": "^1.1.0",
"rollup-plugin-styles": "^4.0.0",
"rollup-plugin-summary": "^1.4.3",
"rollup-plugin-terser": "^7.0.2",
"@rollup/plugin-virtual": "^3.0.1",
"rollup-plugin-typescript2": "^0.32.1",
"sass": "^1.54.0"
},
+34 -7
View File
@@ -1,17 +1,44 @@
const path = require('path');
const { terser: rollupTerser } = require('rollup-plugin-terser');
const { rollupJson } = require('./plugins');
const { rollupVirtual } = require('./plugins');
module.exports = (resolve, options) => {
const { extractPackageJson, outDir, rollup } = options;
module.exports = (_, options) => {
const { extractPackageJson, outDir } = options;
const { input = './package.json', output = './package.json' } = extractPackageJson;
const {
input = './package.json',
output = './package.json',
json,
} = typeof extractPackageJson === 'object' ? extractPackageJson : {};
const resolvedInput = path.resolve(input);
const inputPackageJson = require(resolvedInput);
return {
input,
input: resolvedInput,
onwarn: (warning, warn) => {
if (warning.code !== 'EMPTY_BUNDLE') {
warn(warning);
}
},
output: {
file: path.resolve(outDir, output),
},
plugins: [rollupJson()],
plugins: [
rollupVirtual({
[resolvedInput]: '',
}),
{
generateBundle(__, bundle) {
const bundleKeys = Object.keys(bundle);
if (bundleKeys.length > 1) {
throw new Error('Unexpected entries length.');
}
bundle[bundleKeys[0]].code = JSON.stringify(
typeof json === 'function' ? json(inputPackageJson) : inputPackageJson,
null,
2
);
},
},
],
};
};
+2 -2
View File
@@ -9,7 +9,7 @@ const rollupPluginScss = require('rollup-plugin-scss');
const rollupPluginIgnoreImport = require('rollup-plugin-ignore-import');
const rollupPluginCommonjs = require('@rollup/plugin-commonjs');
const rollupPluginAlias = require('@rollup/plugin-alias');
const rollupPluginJson = require('@rollup/plugin-json');
const rollupPluginVirtual = require('@rollup/plugin-virtual');
const rollupPluginTs = require('rollup-plugin-typescript2');
const rollupPluginLicense = require('rollup-plugin-license');
const rollupPluginEsBuild = require('../plugins/esbuild');
@@ -128,5 +128,5 @@ module.exports = {
commentStyle: 'ignored',
},
}),
rollupJson: () => rollupPluginJson(),
rollupVirtual: (modules) => rollupPluginVirtual(modules),
};
+2 -2
View File
@@ -8,10 +8,10 @@ module.exports = (resolve, options, esbuild) => {
const { extractTypes, extractStyles, extractPackageJson } = options;
const bundleScript = esbuild ? bundleScriptEsbuild : bundleScriptDefault;
const pkgJson = extractPackageJson && bundlePackageJson(resolve, options);
const styles = extractStyles && bundleStyles(resolve, options);
const types = extractTypes && bundleTypes(resolve, options);
const js = bundleScript(resolve, options);
const pkgJson = extractPackageJson && bundlePackageJson(resolve, options);
return [styles, types, js, pkgJson].flat().filter((build) => !!build);
return [pkgJson, styles, types, js].flat().filter((build) => !!build);
};
+46 -21
View File
@@ -57,6 +57,9 @@
"playwright-webkit": "^1.22.2",
"prettier": "^2.6.2",
"rollup": "^2.75.5",
"rollup-plugin-esbuild-resolve": "^1.0.0",
"rollup-plugin-summary": "^1.4.3",
"rollup-plugin-terser": "^7.0.2",
"should": "^13.2.3",
"tslib": "^2.4.0",
"typescript": "^4.7.4",
@@ -109,6 +112,7 @@
"@rollup/plugin-commonjs": "^23.0.2",
"@rollup/plugin-html": "^1.0.1",
"@rollup/plugin-json": "^5.0.1",
"@rollup/plugin-virtual": "^3.0.1",
"autoprefixer": "^10.4.7",
"cssnano": "^5.1.12",
"glob": "^7.1.6",
@@ -122,8 +126,6 @@
"rollup-plugin-scss": "^3.0.0",
"rollup-plugin-serve": "^1.1.0",
"rollup-plugin-styles": "^4.0.0",
"rollup-plugin-summary": "^1.4.3",
"rollup-plugin-terser": "^7.0.2",
"rollup-plugin-typescript2": "^0.32.1",
"sass": "^1.54.0"
}
@@ -243,16 +245,6 @@
"typescript": "^4.1"
}
},
"local/rollup/node_modules/rollup-plugin-esbuild-resolve": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/rollup-plugin-esbuild-resolve/-/rollup-plugin-esbuild-resolve-1.1.0.tgz",
"integrity": "sha512-VTYcSYYwo1uHw2XoiO/G3RsvJE8uEuihBO2GW/0sc2IzupZSGiS2qpz1+Vg+l6sbuM6Mzy6p1HoE4gs+MqcwEA==",
"dev": true,
"peerDependencies": {
"esbuild": "^0.15.10",
"rollup": "^2.79.1"
}
},
"local/rollup/node_modules/rollup-plugin-license": {
"version": "2.9.0",
"resolved": "https://registry.npmjs.org/rollup-plugin-license/-/rollup-plugin-license-2.9.0.tgz",
@@ -4391,6 +4383,23 @@
}
}
},
"node_modules/@rollup/plugin-virtual": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/@rollup/plugin-virtual/-/plugin-virtual-3.0.1.tgz",
"integrity": "sha512-fK8O0IL5+q+GrsMLuACVNk2x21g3yaw+sG2qn16SnUd3IlBsQyvWxLMGHmCmXRMecPjGRSZ/1LmZB4rjQm68og==",
"dev": true,
"engines": {
"node": ">=14.0.0"
},
"peerDependencies": {
"rollup": "^1.20.0||^2.0.0||^3.0.0"
},
"peerDependenciesMeta": {
"rollup": {
"optional": true
}
}
},
"node_modules/@rollup/pluginutils": {
"version": "5.0.2",
"resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.0.2.tgz",
@@ -24706,6 +24715,16 @@
"fsevents": "~2.3.2"
}
},
"node_modules/rollup-plugin-esbuild-resolve": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/rollup-plugin-esbuild-resolve/-/rollup-plugin-esbuild-resolve-1.1.0.tgz",
"integrity": "sha512-VTYcSYYwo1uHw2XoiO/G3RsvJE8uEuihBO2GW/0sc2IzupZSGiS2qpz1+Vg+l6sbuM6Mzy6p1HoE4gs+MqcwEA==",
"dev": true,
"peerDependencies": {
"esbuild": "^0.15.10",
"rollup": "^2.79.1"
}
},
"node_modules/rollup-plugin-ignore-import": {
"version": "1.3.2",
"resolved": "https://registry.npmjs.org/rollup-plugin-ignore-import/-/rollup-plugin-ignore-import-1.3.2.tgz",
@@ -31724,6 +31743,7 @@
"@rollup/plugin-commonjs": "^23.0.2",
"@rollup/plugin-html": "^1.0.1",
"@rollup/plugin-json": "^5.0.1",
"@rollup/plugin-virtual": "^3.0.1",
"autoprefixer": "^10.4.7",
"cssnano": "^5.1.12",
"glob": "^7.1.6",
@@ -31737,8 +31757,6 @@
"rollup-plugin-scss": "^3.0.0",
"rollup-plugin-serve": "^1.1.0",
"rollup-plugin-styles": "^4.0.0",
"rollup-plugin-summary": "^1.4.3",
"rollup-plugin-terser": "^7.0.2",
"rollup-plugin-typescript2": "^0.32.1",
"sass": "^1.54.0"
},
@@ -31815,13 +31833,6 @@
"magic-string": "^0.26.6"
}
},
"rollup-plugin-esbuild-resolve": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/rollup-plugin-esbuild-resolve/-/rollup-plugin-esbuild-resolve-1.1.0.tgz",
"integrity": "sha512-VTYcSYYwo1uHw2XoiO/G3RsvJE8uEuihBO2GW/0sc2IzupZSGiS2qpz1+Vg+l6sbuM6Mzy6p1HoE4gs+MqcwEA==",
"dev": true,
"requires": {}
},
"rollup-plugin-license": {
"version": "2.9.0",
"resolved": "https://registry.npmjs.org/rollup-plugin-license/-/rollup-plugin-license-2.9.0.tgz",
@@ -34696,6 +34707,13 @@
"dev": true,
"requires": {}
},
"@rollup/plugin-virtual": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/@rollup/plugin-virtual/-/plugin-virtual-3.0.1.tgz",
"integrity": "sha512-fK8O0IL5+q+GrsMLuACVNk2x21g3yaw+sG2qn16SnUd3IlBsQyvWxLMGHmCmXRMecPjGRSZ/1LmZB4rjQm68og==",
"dev": true,
"requires": {}
},
"@rollup/pluginutils": {
"version": "5.0.2",
"resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.0.2.tgz",
@@ -51124,6 +51142,13 @@
"fsevents": "~2.3.2"
}
},
"rollup-plugin-esbuild-resolve": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/rollup-plugin-esbuild-resolve/-/rollup-plugin-esbuild-resolve-1.1.0.tgz",
"integrity": "sha512-VTYcSYYwo1uHw2XoiO/G3RsvJE8uEuihBO2GW/0sc2IzupZSGiS2qpz1+Vg+l6sbuM6Mzy6p1HoE4gs+MqcwEA==",
"dev": true,
"requires": {}
},
"rollup-plugin-ignore-import": {
"version": "1.3.2",
"resolved": "https://registry.npmjs.org/rollup-plugin-ignore-import/-/rollup-plugin-ignore-import-1.3.2.tgz",
+3
View File
@@ -53,6 +53,9 @@
"playwright-webkit": "^1.22.2",
"prettier": "^2.6.2",
"rollup": "^2.75.5",
"rollup-plugin-esbuild-resolve": "^1.0.0",
"rollup-plugin-summary": "^1.4.3",
"rollup-plugin-terser": "^7.0.2",
"should": "^13.2.3",
"tslib": "^2.4.0",
"typescript": "^4.7.4",
@@ -1,6 +1,6 @@
import { resolve } from 'node:path';
import { fileURLToPath, URL } from 'node:url';
import { defineConfig } from 'vite';
import { esbuildResolve } from 'rollup-plugin-esbuild-resolve';
import react from '@vitejs/plugin-react';
export default defineConfig({
@@ -21,10 +21,5 @@ export default defineConfig({
},
},
},
resolve: {
alias: {
'~': fileURLToPath(new URL('./src', import.meta.url)),
},
},
plugins: [react({ jsxRuntime: 'classic' })],
plugins: [esbuildResolve(), react({ jsxRuntime: 'classic' })],
});
@@ -1,13 +1,8 @@
import { fileURLToPath, URL } from 'node:url';
import { defineConfig } from 'vitest/config';
import { esbuildResolve } from 'rollup-plugin-esbuild-resolve';
import { svelte } from '@sveltejs/vite-plugin-svelte';
// only used for tests
export default defineConfig({
plugins: [svelte()],
resolve: {
alias: {
'~': fileURLToPath(new URL('./src', import.meta.url)),
},
},
plugins: [esbuildResolve(), svelte()],
});
@@ -1,6 +1,6 @@
import { resolve } from 'node:path';
import { fileURLToPath, URL } from 'node:url';
import { defineConfig } from 'vite';
import { esbuildResolve } from 'rollup-plugin-esbuild-resolve';
import vue from '@vitejs/plugin-vue';
export default defineConfig({
@@ -21,10 +21,5 @@ export default defineConfig({
},
},
},
resolve: {
alias: {
'~': fileURLToPath(new URL('./src', import.meta.url)),
},
},
plugins: [vue()],
plugins: [esbuildResolve(), vue()],
});
-2
View File
@@ -1,7 +1,5 @@
# Compiled output
/dist
/styles
/types
# Playwright output
.build/
+8 -7
View File
@@ -1,5 +1,6 @@
{
"name": "overlayscrollbars",
"private": true,
"version": "2.0.0-beta.3",
"description": "A scrollbar plugin that hides native scrollbars, provides custom styleable overlay scrollbars and keeps the native functionality and feeling.",
"author": "Rene Haas | KingSora",
@@ -28,16 +29,16 @@
"styles",
"README.md"
],
"main": "dist/overlayscrollbars.cjs.js",
"module": "dist/overlayscrollbars.esm.js",
"types": "types/overlayscrollbars.d.ts",
"main": "src/index.ts",
"module": "src/index.ts",
"types": "src/index.ts",
"exports": {
".": {
"require": "./dist/overlayscrollbars.cjs",
"import": "./dist/overlayscrollbars.mjs",
"types": "./types/overlayscrollbars.d.ts"
"require": "./src/index.ts",
"import": "./src/index.ts",
"types": "./src/index.ts"
},
"./overlayscrollbars.css": "./styles/overlayscrollbars.css"
"./overlayscrollbars.scss": "./src/index.scss"
},
"sideEffects": ["*.css", "*.scss", "*.sass"],
"scripts": {
+37 -1
View File
@@ -9,7 +9,43 @@ module.exports = createRollupConfig({
verbose: true,
extractStyles: true,
extractTypes: true,
extractPackageJson: false,
extractPackageJson: {
json: ({
name,
version: originalVersion,
description,
author,
license,
homepage,
bugs,
repository,
keywords,
}) => {
return {
name,
version: originalVersion,
description,
author,
license,
homepage,
bugs,
repository,
keywords,
main: 'overlayscrollbars.cjs.js',
module: 'overlayscrollbars.esm.js',
types: 'overlayscrollbars.d.ts',
exports: {
'.': {
require: './overlayscrollbars.cjs',
import: './overlayscrollbars.mjs',
types: './types/overlayscrollbars.d.ts',
},
'./overlayscrollbars.css': './styles/overlayscrollbars.css',
},
sideEffects: ['*.css', '*.scss', '*.sass'],
};
},
},
versions: [
{
format: 'cjs',