From f84f37db36f6e44a1412c1542effb3cbea97c01a Mon Sep 17 00:00:00 2001 From: barbapapazes Date: Sun, 5 Nov 2023 22:18:27 +0100 Subject: [PATCH 1/5] docs: add examples --- examples/README.md | 13 +++++++ examples/folder-entry/build.config.ts | 23 ++++++++++++ examples/folder-entry/package.json | 37 ++++++++++++++++++++ examples/folder-entry/src/index.ts | 3 ++ examples/folder-entry/src/plugins/vite.ts | 3 ++ examples/folder-entry/src/plugins/webpack.ts | 3 ++ examples/html-to-esm/build.config.ts | 12 +++++++ examples/html-to-esm/package.json | 18 ++++++++++ examples/html-to-esm/src/index.html | 13 +++++++ examples/inferring-cjs/package.json | 19 ++++++++++ examples/inferring-cjs/src/index.ts | 3 ++ examples/inferring-dts/package.json | 26 ++++++++++++++ examples/inferring-dts/src/index.ts | 3 ++ examples/inferring-esm/package.json | 18 ++++++++++ examples/inferring-esm/src/index.ts | 3 ++ examples/json-to-esm/build.config.ts | 14 ++++++++ examples/json-to-esm/package.json | 18 ++++++++++ examples/json-to-esm/src/data.json | 3 ++ examples/multiples-entries/build.config.ts | 12 +++++++ examples/multiples-entries/package.json | 27 ++++++++++++++ examples/multiples-entries/src/cli.ts | 4 +++ examples/multiples-entries/src/index.ts | 3 ++ examples/untyped/build.config.ts | 17 +++++++++ examples/untyped/package.json | 27 ++++++++++++++ examples/untyped/src/index.ts | 3 ++ 25 files changed, 325 insertions(+) create mode 100644 examples/README.md create mode 100644 examples/folder-entry/build.config.ts create mode 100644 examples/folder-entry/package.json create mode 100644 examples/folder-entry/src/index.ts create mode 100644 examples/folder-entry/src/plugins/vite.ts create mode 100644 examples/folder-entry/src/plugins/webpack.ts create mode 100644 examples/html-to-esm/build.config.ts create mode 100644 examples/html-to-esm/package.json create mode 100644 examples/html-to-esm/src/index.html create mode 100644 examples/inferring-cjs/package.json create mode 100644 examples/inferring-cjs/src/index.ts create mode 100644 examples/inferring-dts/package.json create mode 100644 examples/inferring-dts/src/index.ts create mode 100644 examples/inferring-esm/package.json create mode 100644 examples/inferring-esm/src/index.ts create mode 100644 examples/json-to-esm/build.config.ts create mode 100644 examples/json-to-esm/package.json create mode 100644 examples/json-to-esm/src/data.json create mode 100644 examples/multiples-entries/build.config.ts create mode 100644 examples/multiples-entries/package.json create mode 100644 examples/multiples-entries/src/cli.ts create mode 100644 examples/multiples-entries/src/index.ts create mode 100644 examples/untyped/build.config.ts create mode 100644 examples/untyped/package.json create mode 100644 examples/untyped/src/index.ts diff --git a/examples/README.md b/examples/README.md new file mode 100644 index 00000000..11c77c1f --- /dev/null +++ b/examples/README.md @@ -0,0 +1,13 @@ +# unbuild examples + +In this directory you can find some examples of how to use unbuild. + +- [Inferring ESM](./inferring-esm/) - A simple example of how to generate ESM from TypeScript by inferring `package.json`. +- [Inferring CJS](./inferring-cjs/) - A simple example of how to generate CJS and ESM from TypeScript by inferring `package.json`. +- [Inferring DTS](./inferring-dts/) - A simple example of how to generate ESM, CJS and DTS from TypeScript by inferring `package.json`. +- [Multiple Entries](./multiple-entries/) - A simple example of how to generate ESM, CJS and DTS from TypeScript using multiple entry points. +- [Folder Entry](./folder-entry/) - A simple example of how to generate ESM, CJS and DTS from TypeScript using a folder as entry point. +- [JSON to ESM](./json-to-esm/) - A simple example of how to generate ESM from JSON. +- [Untyped](./untyped/) - A simple example of how to generate types and markdown from TypeScript. + + diff --git a/examples/folder-entry/build.config.ts b/examples/folder-entry/build.config.ts new file mode 100644 index 00000000..d4761fe2 --- /dev/null +++ b/examples/folder-entry/build.config.ts @@ -0,0 +1,23 @@ +import { defineBuildConfig } from 'unbuild' + +export default defineBuildConfig({ + entries: [ + 'src/index.ts', + { + input: 'src/plugins/', + outDir: 'dist/plugins/', + format: 'esm', + }, + { + input: 'src/plugins/', + outDir: 'dist/plugins/', + format: 'cjs', + ext: "cjs", + declaration: false + } + ], + declaration: true, + rollup: { + emitCJS: true, + } +}) diff --git a/examples/folder-entry/package.json b/examples/folder-entry/package.json new file mode 100644 index 00000000..33677b93 --- /dev/null +++ b/examples/folder-entry/package.json @@ -0,0 +1,37 @@ +{ + "type": "module", + "bin": "./dist/index.mjs", + "exports": { + ".": { + "import": { + "types": "./dist/index.d.mts", + "default": "./dist/index.mjs" + }, + "require": { + "types": "./dist/index.d.cts", + "default": "./dist/index.cjs" + } + }, + "./plugins/*": { + "import": { + "types": "./dist/plugins/*.d.mts", + "default": "./dist/plugins/*.mjs" + }, + "require": { + "types": "./dist/plugins/*.d.cts", + "default": "./dist/plugins/*.cjs" + } + } + }, + "types": "./dist/index.d.ts", + "main": "./dist/index.cjs", + "files": [ + "dist" + ], + "scripts": { + "build": "unbuild" + }, + "devDependencies": { + "unbuild": "^2.0.0" + } +} diff --git a/examples/folder-entry/src/index.ts b/examples/folder-entry/src/index.ts new file mode 100644 index 00000000..692e1b83 --- /dev/null +++ b/examples/folder-entry/src/index.ts @@ -0,0 +1,3 @@ +export function main(data: string): string { + return `Hello ${data}!` +} diff --git a/examples/folder-entry/src/plugins/vite.ts b/examples/folder-entry/src/plugins/vite.ts new file mode 100644 index 00000000..a97ad28c --- /dev/null +++ b/examples/folder-entry/src/plugins/vite.ts @@ -0,0 +1,3 @@ +export default function vitePlugin(): string { + return 'Hello Vite!' +} diff --git a/examples/folder-entry/src/plugins/webpack.ts b/examples/folder-entry/src/plugins/webpack.ts new file mode 100644 index 00000000..f62b61db --- /dev/null +++ b/examples/folder-entry/src/plugins/webpack.ts @@ -0,0 +1,3 @@ +export default function webpackPlugin(): string { + return 'Hello Webpack!' +} diff --git a/examples/html-to-esm/build.config.ts b/examples/html-to-esm/build.config.ts new file mode 100644 index 00000000..9ef5d28c --- /dev/null +++ b/examples/html-to-esm/build.config.ts @@ -0,0 +1,12 @@ +import { defineBuildConfig } from 'unbuild' + +export default defineBuildConfig({ + entries: [ + 'src/index.html' + ], + rollup: { + output: { + exports: 'named', + } + }, +}) diff --git a/examples/html-to-esm/package.json b/examples/html-to-esm/package.json new file mode 100644 index 00000000..6e9b544f --- /dev/null +++ b/examples/html-to-esm/package.json @@ -0,0 +1,18 @@ +{ + "type": "module", + "exports": { + ".": { + "import": "./dist/index.html.mjs" + } + }, + "main": "./dist/index.html.mjs", + "files": [ + "dist" + ], + "scripts": { + "build": "unbuild" + }, + "devDependencies": { + "unbuild": "^2.0.0" + } +} diff --git a/examples/html-to-esm/src/index.html b/examples/html-to-esm/src/index.html new file mode 100644 index 00000000..31caf6e3 --- /dev/null +++ b/examples/html-to-esm/src/index.html @@ -0,0 +1,13 @@ + + + + + + unbuild - unjs + + +

+ welcome to unbuild +

+ + diff --git a/examples/inferring-cjs/package.json b/examples/inferring-cjs/package.json new file mode 100644 index 00000000..43391995 --- /dev/null +++ b/examples/inferring-cjs/package.json @@ -0,0 +1,19 @@ +{ + "type": "module", + "exports": { + ".": { + "import": "./dist/index.mjs", + "require": "./dist/index.cjs" + } + }, + "main": "./dist/index.cjs", + "files": [ + "dist" + ], + "scripts": { + "build": "unbuild" + }, + "devDependencies": { + "unbuild": "^2.0.0" + } +} diff --git a/examples/inferring-cjs/src/index.ts b/examples/inferring-cjs/src/index.ts new file mode 100644 index 00000000..692e1b83 --- /dev/null +++ b/examples/inferring-cjs/src/index.ts @@ -0,0 +1,3 @@ +export function main(data: string): string { + return `Hello ${data}!` +} diff --git a/examples/inferring-dts/package.json b/examples/inferring-dts/package.json new file mode 100644 index 00000000..a7c5677b --- /dev/null +++ b/examples/inferring-dts/package.json @@ -0,0 +1,26 @@ +{ + "type": "module", + "exports": { + ".": { + "import": { + "types": "./dist/index.d.mts", + "default": "./dist/index.mjs" + }, + "require": { + "types": "./dist/index.d.cts", + "default": "./dist/index.cjs" + } + } + }, + "types": "./dist/index.d.ts", + "main": "./dist/index.cjs", + "files": [ + "dist" + ], + "scripts": { + "build": "unbuild" + }, + "devDependencies": { + "unbuild": "^2.0.0" + } +} diff --git a/examples/inferring-dts/src/index.ts b/examples/inferring-dts/src/index.ts new file mode 100644 index 00000000..692e1b83 --- /dev/null +++ b/examples/inferring-dts/src/index.ts @@ -0,0 +1,3 @@ +export function main(data: string): string { + return `Hello ${data}!` +} diff --git a/examples/inferring-esm/package.json b/examples/inferring-esm/package.json new file mode 100644 index 00000000..e627db5a --- /dev/null +++ b/examples/inferring-esm/package.json @@ -0,0 +1,18 @@ +{ + "type": "module", + "exports": { + ".": { + "import": "./dist/index.mjs" + } + }, + "main": "./dist/index.mjs", + "files": [ + "dist" + ], + "scripts": { + "build": "unbuild" + }, + "devDependencies": { + "unbuild": "^2.0.0" + } +} diff --git a/examples/inferring-esm/src/index.ts b/examples/inferring-esm/src/index.ts new file mode 100644 index 00000000..692e1b83 --- /dev/null +++ b/examples/inferring-esm/src/index.ts @@ -0,0 +1,3 @@ +export function main(data: string): string { + return `Hello ${data}!` +} diff --git a/examples/json-to-esm/build.config.ts b/examples/json-to-esm/build.config.ts new file mode 100644 index 00000000..b7e19fdf --- /dev/null +++ b/examples/json-to-esm/build.config.ts @@ -0,0 +1,14 @@ +import { defineBuildConfig } from 'unbuild' + +export default defineBuildConfig({ + entries: [ + { + input: 'src/data.json', + } + ], + rollup: { + output: { + exports: 'named' + } + } +}) diff --git a/examples/json-to-esm/package.json b/examples/json-to-esm/package.json new file mode 100644 index 00000000..feee86ae --- /dev/null +++ b/examples/json-to-esm/package.json @@ -0,0 +1,18 @@ +{ + "type": "module", + "exports": { + ".": { + "import": "./dist/data.mjs" + } + }, + "main": "./dist/data.mjs", + "files": [ + "dist" + ], + "scripts": { + "build": "unbuild" + }, + "devDependencies": { + "unbuild": "^2.0.0" + } +} diff --git a/examples/json-to-esm/src/data.json b/examples/json-to-esm/src/data.json new file mode 100644 index 00000000..2c153c4a --- /dev/null +++ b/examples/json-to-esm/src/data.json @@ -0,0 +1,3 @@ +{ + "name": "unjs" +} diff --git a/examples/multiples-entries/build.config.ts b/examples/multiples-entries/build.config.ts new file mode 100644 index 00000000..f9b80f9f --- /dev/null +++ b/examples/multiples-entries/build.config.ts @@ -0,0 +1,12 @@ +import { defineBuildConfig } from 'unbuild' + +export default defineBuildConfig({ + entries: [ + './src/index.ts', + './src/cli.ts' + ], + declaration: true, + rollup: { + emitCJS: true, + }, +}) diff --git a/examples/multiples-entries/package.json b/examples/multiples-entries/package.json new file mode 100644 index 00000000..89e31799 --- /dev/null +++ b/examples/multiples-entries/package.json @@ -0,0 +1,27 @@ +{ + "type": "module", + "bin": "./dist/index.mjs", + "exports": { + ".": { + "import": { + "types": "./dist/index.d.mts", + "default": "./dist/index.mjs" + }, + "require": { + "types": "./dist/index.d.cts", + "default": "./dist/index.cjs" + } + } + }, + "types": "./dist/index.d.ts", + "main": "./dist/index.cjs", + "files": [ + "dist" + ], + "scripts": { + "build": "unbuild" + }, + "devDependencies": { + "unbuild": "^2.0.0" + } +} diff --git a/examples/multiples-entries/src/cli.ts b/examples/multiples-entries/src/cli.ts new file mode 100644 index 00000000..268c87da --- /dev/null +++ b/examples/multiples-entries/src/cli.ts @@ -0,0 +1,4 @@ +export default function cli(args: string[]) { + const name = args[0] || 'world' + console.log(`Hello ${name}!`) +} diff --git a/examples/multiples-entries/src/index.ts b/examples/multiples-entries/src/index.ts new file mode 100644 index 00000000..692e1b83 --- /dev/null +++ b/examples/multiples-entries/src/index.ts @@ -0,0 +1,3 @@ +export function main(data: string): string { + return `Hello ${data}!` +} diff --git a/examples/untyped/build.config.ts b/examples/untyped/build.config.ts new file mode 100644 index 00000000..b22a54eb --- /dev/null +++ b/examples/untyped/build.config.ts @@ -0,0 +1,17 @@ +import { defineBuildConfig } from 'unbuild' + +export default defineBuildConfig({ + entries: [ + 'src/index.ts', + { + builder: 'untyped', + input: 'src/index.ts', + outDir: 'docs', + name: 'examples', + } + ], + declaration: true, + rollup: { + emitCJS: true, + } +}) diff --git a/examples/untyped/package.json b/examples/untyped/package.json new file mode 100644 index 00000000..89e31799 --- /dev/null +++ b/examples/untyped/package.json @@ -0,0 +1,27 @@ +{ + "type": "module", + "bin": "./dist/index.mjs", + "exports": { + ".": { + "import": { + "types": "./dist/index.d.mts", + "default": "./dist/index.mjs" + }, + "require": { + "types": "./dist/index.d.cts", + "default": "./dist/index.cjs" + } + } + }, + "types": "./dist/index.d.ts", + "main": "./dist/index.cjs", + "files": [ + "dist" + ], + "scripts": { + "build": "unbuild" + }, + "devDependencies": { + "unbuild": "^2.0.0" + } +} diff --git a/examples/untyped/src/index.ts b/examples/untyped/src/index.ts new file mode 100644 index 00000000..692e1b83 --- /dev/null +++ b/examples/untyped/src/index.ts @@ -0,0 +1,3 @@ +export function main(data: string): string { + return `Hello ${data}!` +} From 5d3a90780ba33f8102e92bce7bed7d05cfd7770a Mon Sep 17 00:00:00 2001 From: barbapapazes Date: Sun, 5 Nov 2023 22:21:38 +0100 Subject: [PATCH 2/5] docs: add example for stub --- examples/README.md | 1 + examples/stub/package.json | 19 +++++++++++++++++++ examples/stub/src/index.ts | 3 +++ 3 files changed, 23 insertions(+) create mode 100644 examples/stub/package.json create mode 100644 examples/stub/src/index.ts diff --git a/examples/README.md b/examples/README.md index 11c77c1f..ace9deaa 100644 --- a/examples/README.md +++ b/examples/README.md @@ -5,6 +5,7 @@ In this directory you can find some examples of how to use unbuild. - [Inferring ESM](./inferring-esm/) - A simple example of how to generate ESM from TypeScript by inferring `package.json`. - [Inferring CJS](./inferring-cjs/) - A simple example of how to generate CJS and ESM from TypeScript by inferring `package.json`. - [Inferring DTS](./inferring-dts/) - A simple example of how to generate ESM, CJS and DTS from TypeScript by inferring `package.json`. +- [Stub](./stub/) - A simple example of how to generate a stub (passive watcher) from TypeScript. - [Multiple Entries](./multiple-entries/) - A simple example of how to generate ESM, CJS and DTS from TypeScript using multiple entry points. - [Folder Entry](./folder-entry/) - A simple example of how to generate ESM, CJS and DTS from TypeScript using a folder as entry point. - [JSON to ESM](./json-to-esm/) - A simple example of how to generate ESM from JSON. diff --git a/examples/stub/package.json b/examples/stub/package.json new file mode 100644 index 00000000..97d7761e --- /dev/null +++ b/examples/stub/package.json @@ -0,0 +1,19 @@ +{ + "type": "module", + "exports": { + ".": { + "import": "./dist/index.mjs" + } + }, + "main": "./dist/index.mjs", + "files": [ + "dist" + ], + "scripts": { + "build": "unbuild", + "build:stub": "unbuild --stub" + }, + "devDependencies": { + "unbuild": "^2.0.0" + } +} diff --git a/examples/stub/src/index.ts b/examples/stub/src/index.ts new file mode 100644 index 00000000..692e1b83 --- /dev/null +++ b/examples/stub/src/index.ts @@ -0,0 +1,3 @@ +export function main(data: string): string { + return `Hello ${data}!` +} From e91c540785b47ae9330c0b7b7e43bd071a0a2735 Mon Sep 17 00:00:00 2001 From: Pooya Parsa Date: Tue, 4 Jun 2024 22:51:09 +0200 Subject: [PATCH 3/5] chore: lint --- examples/folder-entry/build.config.ts | 24 +++---- examples/folder-entry/package.json | 70 ++++++++++---------- examples/folder-entry/src/index.ts | 2 +- examples/folder-entry/src/plugins/vite.ts | 2 +- examples/folder-entry/src/plugins/webpack.ts | 2 +- examples/html-to-esm/build.config.ts | 12 ++-- examples/html-to-esm/package.json | 32 ++++----- examples/html-to-esm/src/index.html | 20 +++--- examples/inferring-cjs/package.json | 34 +++++----- examples/inferring-cjs/src/index.ts | 2 +- examples/inferring-dts/package.json | 48 +++++++------- examples/inferring-dts/src/index.ts | 2 +- examples/inferring-esm/src/index.ts | 2 +- examples/json-to-esm/build.config.ts | 14 ++-- examples/json-to-esm/package.json | 32 ++++----- examples/multiples-entries/build.config.ts | 9 +-- examples/multiples-entries/package.json | 50 +++++++------- examples/multiples-entries/src/cli.ts | 4 +- examples/multiples-entries/src/index.ts | 2 +- examples/stub/src/index.ts | 2 +- examples/untyped/build.config.ts | 18 ++--- examples/untyped/package.json | 50 +++++++------- examples/untyped/src/index.ts | 2 +- package.json | 4 +- 24 files changed, 216 insertions(+), 223 deletions(-) diff --git a/examples/folder-entry/build.config.ts b/examples/folder-entry/build.config.ts index d4761fe2..44017349 100644 --- a/examples/folder-entry/build.config.ts +++ b/examples/folder-entry/build.config.ts @@ -1,23 +1,23 @@ -import { defineBuildConfig } from 'unbuild' +import { defineBuildConfig } from "unbuild"; export default defineBuildConfig({ entries: [ - 'src/index.ts', + "src/index.ts", { - input: 'src/plugins/', - outDir: 'dist/plugins/', - format: 'esm', + input: "src/plugins/", + outDir: "dist/plugins/", + format: "esm", }, { - input: 'src/plugins/', - outDir: 'dist/plugins/', - format: 'cjs', + input: "src/plugins/", + outDir: "dist/plugins/", + format: "cjs", ext: "cjs", - declaration: false - } + declaration: false, + }, ], declaration: true, rollup: { emitCJS: true, - } -}) + }, +}); diff --git a/examples/folder-entry/package.json b/examples/folder-entry/package.json index 33677b93..f4eed705 100644 --- a/examples/folder-entry/package.json +++ b/examples/folder-entry/package.json @@ -1,37 +1,37 @@ { - "type": "module", - "bin": "./dist/index.mjs", - "exports": { - ".": { - "import": { - "types": "./dist/index.d.mts", - "default": "./dist/index.mjs" - }, - "require": { - "types": "./dist/index.d.cts", - "default": "./dist/index.cjs" - } - }, - "./plugins/*": { - "import": { - "types": "./dist/plugins/*.d.mts", - "default": "./dist/plugins/*.mjs" - }, - "require": { - "types": "./dist/plugins/*.d.cts", - "default": "./dist/plugins/*.cjs" - } - } - }, - "types": "./dist/index.d.ts", - "main": "./dist/index.cjs", - "files": [ - "dist" - ], - "scripts": { - "build": "unbuild" - }, - "devDependencies": { - "unbuild": "^2.0.0" - } + "type": "module", + "bin": "./dist/index.mjs", + "exports": { + ".": { + "import": { + "types": "./dist/index.d.mts", + "default": "./dist/index.mjs" + }, + "require": { + "types": "./dist/index.d.cts", + "default": "./dist/index.cjs" + } + }, + "./plugins/*": { + "import": { + "types": "./dist/plugins/*.d.mts", + "default": "./dist/plugins/*.mjs" + }, + "require": { + "types": "./dist/plugins/*.d.cts", + "default": "./dist/plugins/*.cjs" + } + } + }, + "types": "./dist/index.d.ts", + "main": "./dist/index.cjs", + "files": [ + "dist" + ], + "scripts": { + "build": "unbuild" + }, + "devDependencies": { + "unbuild": "^2.0.0" + } } diff --git a/examples/folder-entry/src/index.ts b/examples/folder-entry/src/index.ts index 692e1b83..81ddefc4 100644 --- a/examples/folder-entry/src/index.ts +++ b/examples/folder-entry/src/index.ts @@ -1,3 +1,3 @@ export function main(data: string): string { - return `Hello ${data}!` + return `Hello ${data}!`; } diff --git a/examples/folder-entry/src/plugins/vite.ts b/examples/folder-entry/src/plugins/vite.ts index a97ad28c..9565e6e6 100644 --- a/examples/folder-entry/src/plugins/vite.ts +++ b/examples/folder-entry/src/plugins/vite.ts @@ -1,3 +1,3 @@ export default function vitePlugin(): string { - return 'Hello Vite!' + return "Hello Vite!"; } diff --git a/examples/folder-entry/src/plugins/webpack.ts b/examples/folder-entry/src/plugins/webpack.ts index f62b61db..b8f43790 100644 --- a/examples/folder-entry/src/plugins/webpack.ts +++ b/examples/folder-entry/src/plugins/webpack.ts @@ -1,3 +1,3 @@ export default function webpackPlugin(): string { - return 'Hello Webpack!' + return "Hello Webpack!"; } diff --git a/examples/html-to-esm/build.config.ts b/examples/html-to-esm/build.config.ts index 9ef5d28c..9782fbc2 100644 --- a/examples/html-to-esm/build.config.ts +++ b/examples/html-to-esm/build.config.ts @@ -1,12 +1,10 @@ -import { defineBuildConfig } from 'unbuild' +import { defineBuildConfig } from "unbuild"; export default defineBuildConfig({ - entries: [ - 'src/index.html' - ], + entries: ["src/index.html"], rollup: { output: { - exports: 'named', - } + exports: "named", + }, }, -}) +}); diff --git a/examples/html-to-esm/package.json b/examples/html-to-esm/package.json index 6e9b544f..83c070e2 100644 --- a/examples/html-to-esm/package.json +++ b/examples/html-to-esm/package.json @@ -1,18 +1,18 @@ { - "type": "module", - "exports": { - ".": { - "import": "./dist/index.html.mjs" - } - }, - "main": "./dist/index.html.mjs", - "files": [ - "dist" - ], - "scripts": { - "build": "unbuild" - }, - "devDependencies": { - "unbuild": "^2.0.0" - } + "type": "module", + "exports": { + ".": { + "import": "./dist/index.html.mjs" + } + }, + "main": "./dist/index.html.mjs", + "files": [ + "dist" + ], + "scripts": { + "build": "unbuild" + }, + "devDependencies": { + "unbuild": "^2.0.0" + } } diff --git a/examples/html-to-esm/src/index.html b/examples/html-to-esm/src/index.html index 31caf6e3..62294eca 100644 --- a/examples/html-to-esm/src/index.html +++ b/examples/html-to-esm/src/index.html @@ -1,13 +1,11 @@ - + - - - - unbuild - unjs - - -

- welcome to unbuild -

- + + + + unbuild - unjs + + +

welcome to unbuild

+ diff --git a/examples/inferring-cjs/package.json b/examples/inferring-cjs/package.json index 43391995..7f367b27 100644 --- a/examples/inferring-cjs/package.json +++ b/examples/inferring-cjs/package.json @@ -1,19 +1,19 @@ { - "type": "module", - "exports": { - ".": { - "import": "./dist/index.mjs", - "require": "./dist/index.cjs" - } - }, - "main": "./dist/index.cjs", - "files": [ - "dist" - ], - "scripts": { - "build": "unbuild" - }, - "devDependencies": { - "unbuild": "^2.0.0" - } + "type": "module", + "exports": { + ".": { + "import": "./dist/index.mjs", + "require": "./dist/index.cjs" + } + }, + "main": "./dist/index.cjs", + "files": [ + "dist" + ], + "scripts": { + "build": "unbuild" + }, + "devDependencies": { + "unbuild": "^2.0.0" + } } diff --git a/examples/inferring-cjs/src/index.ts b/examples/inferring-cjs/src/index.ts index 692e1b83..81ddefc4 100644 --- a/examples/inferring-cjs/src/index.ts +++ b/examples/inferring-cjs/src/index.ts @@ -1,3 +1,3 @@ export function main(data: string): string { - return `Hello ${data}!` + return `Hello ${data}!`; } diff --git a/examples/inferring-dts/package.json b/examples/inferring-dts/package.json index a7c5677b..b60793cd 100644 --- a/examples/inferring-dts/package.json +++ b/examples/inferring-dts/package.json @@ -1,26 +1,26 @@ { - "type": "module", - "exports": { - ".": { - "import": { - "types": "./dist/index.d.mts", - "default": "./dist/index.mjs" - }, - "require": { - "types": "./dist/index.d.cts", - "default": "./dist/index.cjs" - } - } - }, - "types": "./dist/index.d.ts", - "main": "./dist/index.cjs", - "files": [ - "dist" - ], - "scripts": { - "build": "unbuild" - }, - "devDependencies": { - "unbuild": "^2.0.0" - } + "type": "module", + "exports": { + ".": { + "import": { + "types": "./dist/index.d.mts", + "default": "./dist/index.mjs" + }, + "require": { + "types": "./dist/index.d.cts", + "default": "./dist/index.cjs" + } + } + }, + "types": "./dist/index.d.ts", + "main": "./dist/index.cjs", + "files": [ + "dist" + ], + "scripts": { + "build": "unbuild" + }, + "devDependencies": { + "unbuild": "^2.0.0" + } } diff --git a/examples/inferring-dts/src/index.ts b/examples/inferring-dts/src/index.ts index 692e1b83..81ddefc4 100644 --- a/examples/inferring-dts/src/index.ts +++ b/examples/inferring-dts/src/index.ts @@ -1,3 +1,3 @@ export function main(data: string): string { - return `Hello ${data}!` + return `Hello ${data}!`; } diff --git a/examples/inferring-esm/src/index.ts b/examples/inferring-esm/src/index.ts index 692e1b83..81ddefc4 100644 --- a/examples/inferring-esm/src/index.ts +++ b/examples/inferring-esm/src/index.ts @@ -1,3 +1,3 @@ export function main(data: string): string { - return `Hello ${data}!` + return `Hello ${data}!`; } diff --git a/examples/json-to-esm/build.config.ts b/examples/json-to-esm/build.config.ts index b7e19fdf..1d0351a6 100644 --- a/examples/json-to-esm/build.config.ts +++ b/examples/json-to-esm/build.config.ts @@ -1,14 +1,14 @@ -import { defineBuildConfig } from 'unbuild' +import { defineBuildConfig } from "unbuild"; export default defineBuildConfig({ entries: [ { - input: 'src/data.json', - } + input: "src/data.json", + }, ], rollup: { output: { - exports: 'named' - } - } -}) + exports: "named", + }, + }, +}); diff --git a/examples/json-to-esm/package.json b/examples/json-to-esm/package.json index feee86ae..bfc877d7 100644 --- a/examples/json-to-esm/package.json +++ b/examples/json-to-esm/package.json @@ -1,18 +1,18 @@ { - "type": "module", - "exports": { - ".": { - "import": "./dist/data.mjs" - } - }, - "main": "./dist/data.mjs", - "files": [ - "dist" - ], - "scripts": { - "build": "unbuild" - }, - "devDependencies": { - "unbuild": "^2.0.0" - } + "type": "module", + "exports": { + ".": { + "import": "./dist/data.mjs" + } + }, + "main": "./dist/data.mjs", + "files": [ + "dist" + ], + "scripts": { + "build": "unbuild" + }, + "devDependencies": { + "unbuild": "^2.0.0" + } } diff --git a/examples/multiples-entries/build.config.ts b/examples/multiples-entries/build.config.ts index f9b80f9f..7aae4c21 100644 --- a/examples/multiples-entries/build.config.ts +++ b/examples/multiples-entries/build.config.ts @@ -1,12 +1,9 @@ -import { defineBuildConfig } from 'unbuild' +import { defineBuildConfig } from "unbuild"; export default defineBuildConfig({ - entries: [ - './src/index.ts', - './src/cli.ts' - ], + entries: ["./src/index.ts", "./src/cli.ts"], declaration: true, rollup: { emitCJS: true, }, -}) +}); diff --git a/examples/multiples-entries/package.json b/examples/multiples-entries/package.json index 89e31799..aeaf00f1 100644 --- a/examples/multiples-entries/package.json +++ b/examples/multiples-entries/package.json @@ -1,27 +1,27 @@ { - "type": "module", - "bin": "./dist/index.mjs", - "exports": { - ".": { - "import": { - "types": "./dist/index.d.mts", - "default": "./dist/index.mjs" - }, - "require": { - "types": "./dist/index.d.cts", - "default": "./dist/index.cjs" - } - } - }, - "types": "./dist/index.d.ts", - "main": "./dist/index.cjs", - "files": [ - "dist" - ], - "scripts": { - "build": "unbuild" - }, - "devDependencies": { - "unbuild": "^2.0.0" - } + "type": "module", + "bin": "./dist/index.mjs", + "exports": { + ".": { + "import": { + "types": "./dist/index.d.mts", + "default": "./dist/index.mjs" + }, + "require": { + "types": "./dist/index.d.cts", + "default": "./dist/index.cjs" + } + } + }, + "types": "./dist/index.d.ts", + "main": "./dist/index.cjs", + "files": [ + "dist" + ], + "scripts": { + "build": "unbuild" + }, + "devDependencies": { + "unbuild": "^2.0.0" + } } diff --git a/examples/multiples-entries/src/cli.ts b/examples/multiples-entries/src/cli.ts index 268c87da..1ca2996b 100644 --- a/examples/multiples-entries/src/cli.ts +++ b/examples/multiples-entries/src/cli.ts @@ -1,4 +1,4 @@ export default function cli(args: string[]) { - const name = args[0] || 'world' - console.log(`Hello ${name}!`) + const name = args[0] || "world"; + console.log(`Hello ${name}!`); } diff --git a/examples/multiples-entries/src/index.ts b/examples/multiples-entries/src/index.ts index 692e1b83..81ddefc4 100644 --- a/examples/multiples-entries/src/index.ts +++ b/examples/multiples-entries/src/index.ts @@ -1,3 +1,3 @@ export function main(data: string): string { - return `Hello ${data}!` + return `Hello ${data}!`; } diff --git a/examples/stub/src/index.ts b/examples/stub/src/index.ts index 692e1b83..81ddefc4 100644 --- a/examples/stub/src/index.ts +++ b/examples/stub/src/index.ts @@ -1,3 +1,3 @@ export function main(data: string): string { - return `Hello ${data}!` + return `Hello ${data}!`; } diff --git a/examples/untyped/build.config.ts b/examples/untyped/build.config.ts index b22a54eb..dfec1cd9 100644 --- a/examples/untyped/build.config.ts +++ b/examples/untyped/build.config.ts @@ -1,17 +1,17 @@ -import { defineBuildConfig } from 'unbuild' +import { defineBuildConfig } from "unbuild"; export default defineBuildConfig({ entries: [ - 'src/index.ts', + "src/index.ts", { - builder: 'untyped', - input: 'src/index.ts', - outDir: 'docs', - name: 'examples', - } + builder: "untyped", + input: "src/index.ts", + outDir: "docs", + name: "examples", + }, ], declaration: true, rollup: { emitCJS: true, - } -}) + }, +}); diff --git a/examples/untyped/package.json b/examples/untyped/package.json index 89e31799..aeaf00f1 100644 --- a/examples/untyped/package.json +++ b/examples/untyped/package.json @@ -1,27 +1,27 @@ { - "type": "module", - "bin": "./dist/index.mjs", - "exports": { - ".": { - "import": { - "types": "./dist/index.d.mts", - "default": "./dist/index.mjs" - }, - "require": { - "types": "./dist/index.d.cts", - "default": "./dist/index.cjs" - } - } - }, - "types": "./dist/index.d.ts", - "main": "./dist/index.cjs", - "files": [ - "dist" - ], - "scripts": { - "build": "unbuild" - }, - "devDependencies": { - "unbuild": "^2.0.0" - } + "type": "module", + "bin": "./dist/index.mjs", + "exports": { + ".": { + "import": { + "types": "./dist/index.d.mts", + "default": "./dist/index.mjs" + }, + "require": { + "types": "./dist/index.d.cts", + "default": "./dist/index.cjs" + } + } + }, + "types": "./dist/index.d.ts", + "main": "./dist/index.cjs", + "files": [ + "dist" + ], + "scripts": { + "build": "unbuild" + }, + "devDependencies": { + "unbuild": "^2.0.0" + } } diff --git a/examples/untyped/src/index.ts b/examples/untyped/src/index.ts index 692e1b83..81ddefc4 100644 --- a/examples/untyped/src/index.ts +++ b/examples/untyped/src/index.ts @@ -1,3 +1,3 @@ export function main(data: string): string { - return `Hello ${data}!` + return `Hello ${data}!`; } diff --git a/package.json b/package.json index 4a93a269..a4d1a008 100644 --- a/package.json +++ b/package.json @@ -19,8 +19,8 @@ "scripts": { "build": "pnpm unbuild", "dev": "pnpm unbuild test/fixture", - "lint": "eslint . && prettier -c src test", - "lint:fix": "eslint --fix . && prettier -w src test", + "lint": "eslint . && prettier -c src test examples", + "lint:fix": "eslint --fix . && prettier -w src test examples", "prepack": "pnpm unbuild", "release": "pnpm test && changelogen --release && git push --follow-tags && npm publish", "prerelease": "pnpm test && changelogen --prerelease --release && git push --follow-tags && npm publish --tag rc", From 6bef8d5aab0af37015c6f6bcac76fcf40e7b46d2 Mon Sep 17 00:00:00 2001 From: Pooya Parsa Date: Tue, 4 Jun 2024 23:12:45 +0200 Subject: [PATCH 4/5] update and simplify --- examples/1.zero-config/README.md | 7 +++++ .../package.json | 18 ++++++++++--- .../src/index.ts | 0 examples/1.zero-config/src/utils.ts | 3 +++ examples/2.mkdist/README.md | 3 +++ .../build.config.ts | 0 .../{folder-entry => 2.mkdist}/package.json | 8 +++--- .../{inferring-cjs => 2.mkdist}/src/index.ts | 0 .../src/plugins/vite.ts | 0 .../src/plugins/webpack.ts | 0 examples/3.untyped/.gitignore | 1 + examples/3.untyped/README.md | 3 +++ .../{untyped => 3.untyped}/build.config.ts | 4 +-- .../{inferring-dts => 3.untyped}/package.json | 4 +-- examples/3.untyped/src/index.ts | 21 +++++++++++++++ examples/README.md | 13 +++------ examples/html-to-esm/build.config.ts | 10 ------- examples/html-to-esm/package.json | 18 ------------- examples/html-to-esm/src/index.html | 11 -------- examples/inferring-cjs/package.json | 19 ------------- examples/inferring-dts/src/index.ts | 3 --- examples/inferring-esm/package.json | 18 ------------- examples/inferring-esm/src/index.ts | 3 --- examples/json-to-esm/build.config.ts | 14 ---------- examples/json-to-esm/package.json | 18 ------------- examples/json-to-esm/src/data.json | 3 --- examples/multiples-entries/build.config.ts | 9 ------- examples/multiples-entries/src/cli.ts | 4 --- examples/multiples-entries/src/index.ts | 3 --- examples/stub/package.json | 19 ------------- examples/stub/src/index.ts | 3 --- examples/untyped/package.json | 27 ------------------- examples/untyped/src/index.ts | 3 --- package.json | 3 ++- pnpm-lock.yaml | 3 +++ 35 files changed, 68 insertions(+), 208 deletions(-) create mode 100644 examples/1.zero-config/README.md rename examples/{multiples-entries => 1.zero-config}/package.json (51%) rename examples/{folder-entry => 1.zero-config}/src/index.ts (100%) create mode 100644 examples/1.zero-config/src/utils.ts create mode 100644 examples/2.mkdist/README.md rename examples/{folder-entry => 2.mkdist}/build.config.ts (100%) rename examples/{folder-entry => 2.mkdist}/package.json (84%) rename examples/{inferring-cjs => 2.mkdist}/src/index.ts (100%) rename examples/{folder-entry => 2.mkdist}/src/plugins/vite.ts (100%) rename examples/{folder-entry => 2.mkdist}/src/plugins/webpack.ts (100%) create mode 100644 examples/3.untyped/.gitignore create mode 100644 examples/3.untyped/README.md rename examples/{untyped => 3.untyped}/build.config.ts (84%) rename examples/{inferring-dts => 3.untyped}/package.json (86%) create mode 100644 examples/3.untyped/src/index.ts delete mode 100644 examples/html-to-esm/build.config.ts delete mode 100644 examples/html-to-esm/package.json delete mode 100644 examples/html-to-esm/src/index.html delete mode 100644 examples/inferring-cjs/package.json delete mode 100644 examples/inferring-dts/src/index.ts delete mode 100644 examples/inferring-esm/package.json delete mode 100644 examples/inferring-esm/src/index.ts delete mode 100644 examples/json-to-esm/build.config.ts delete mode 100644 examples/json-to-esm/package.json delete mode 100644 examples/json-to-esm/src/data.json delete mode 100644 examples/multiples-entries/build.config.ts delete mode 100644 examples/multiples-entries/src/cli.ts delete mode 100644 examples/multiples-entries/src/index.ts delete mode 100644 examples/stub/package.json delete mode 100644 examples/stub/src/index.ts delete mode 100644 examples/untyped/package.json delete mode 100644 examples/untyped/src/index.ts diff --git a/examples/1.zero-config/README.md b/examples/1.zero-config/README.md new file mode 100644 index 00000000..392dafea --- /dev/null +++ b/examples/1.zero-config/README.md @@ -0,0 +1,7 @@ +# Unbuild zero config example + +Unbuild automatically infers the build configuration from `exports` field in [`package.json`](./package.json). + +Since 3 `types`, `import` and `require` fields are set, build automatically includes them. + +Unbuild also supports building multiple entries. diff --git a/examples/multiples-entries/package.json b/examples/1.zero-config/package.json similarity index 51% rename from examples/multiples-entries/package.json rename to examples/1.zero-config/package.json index aeaf00f1..52a36ad4 100644 --- a/examples/multiples-entries/package.json +++ b/examples/1.zero-config/package.json @@ -1,6 +1,7 @@ { + "name": "unbuild-example-zero-config", + "version": "1.0.0", "type": "module", - "bin": "./dist/index.mjs", "exports": { ".": { "import": { @@ -11,15 +12,24 @@ "types": "./dist/index.d.cts", "default": "./dist/index.cjs" } + }, + "./utils": { + "import": { + "types": "./dist/utils.d.mts", + "default": "./dist/utils.mjs" + }, + "require": { + "types": "./dist/utils.d.cts", + "default": "./dist/utils.cjs" + } } }, - "types": "./dist/index.d.ts", - "main": "./dist/index.cjs", "files": [ "dist" ], "scripts": { - "build": "unbuild" + "build": "unbuild", + "build:stub": "unbuild --stub" }, "devDependencies": { "unbuild": "^2.0.0" diff --git a/examples/folder-entry/src/index.ts b/examples/1.zero-config/src/index.ts similarity index 100% rename from examples/folder-entry/src/index.ts rename to examples/1.zero-config/src/index.ts diff --git a/examples/1.zero-config/src/utils.ts b/examples/1.zero-config/src/utils.ts new file mode 100644 index 00000000..892a974b --- /dev/null +++ b/examples/1.zero-config/src/utils.ts @@ -0,0 +1,3 @@ +export default function sum(a: number, b: number) { + return a + b; +} diff --git a/examples/2.mkdist/README.md b/examples/2.mkdist/README.md new file mode 100644 index 00000000..c6084a2d --- /dev/null +++ b/examples/2.mkdist/README.md @@ -0,0 +1,3 @@ +# Unbuild mkdist example + +A simple example of how to generate ESM, CJS and DTS from TypeScript using a folder as entry point. diff --git a/examples/folder-entry/build.config.ts b/examples/2.mkdist/build.config.ts similarity index 100% rename from examples/folder-entry/build.config.ts rename to examples/2.mkdist/build.config.ts diff --git a/examples/folder-entry/package.json b/examples/2.mkdist/package.json similarity index 84% rename from examples/folder-entry/package.json rename to examples/2.mkdist/package.json index f4eed705..0a61b351 100644 --- a/examples/folder-entry/package.json +++ b/examples/2.mkdist/package.json @@ -1,6 +1,7 @@ { + "name": "unbuild-example-mkdist", + "version": "1.0.0", "type": "module", - "bin": "./dist/index.mjs", "exports": { ".": { "import": { @@ -23,13 +24,12 @@ } } }, - "types": "./dist/index.d.ts", - "main": "./dist/index.cjs", "files": [ "dist" ], "scripts": { - "build": "unbuild" + "build": "unbuild", + "build:stub": "unbuild --stub" }, "devDependencies": { "unbuild": "^2.0.0" diff --git a/examples/inferring-cjs/src/index.ts b/examples/2.mkdist/src/index.ts similarity index 100% rename from examples/inferring-cjs/src/index.ts rename to examples/2.mkdist/src/index.ts diff --git a/examples/folder-entry/src/plugins/vite.ts b/examples/2.mkdist/src/plugins/vite.ts similarity index 100% rename from examples/folder-entry/src/plugins/vite.ts rename to examples/2.mkdist/src/plugins/vite.ts diff --git a/examples/folder-entry/src/plugins/webpack.ts b/examples/2.mkdist/src/plugins/webpack.ts similarity index 100% rename from examples/folder-entry/src/plugins/webpack.ts rename to examples/2.mkdist/src/plugins/webpack.ts diff --git a/examples/3.untyped/.gitignore b/examples/3.untyped/.gitignore new file mode 100644 index 00000000..1c12cf9b --- /dev/null +++ b/examples/3.untyped/.gitignore @@ -0,0 +1 @@ +schema diff --git a/examples/3.untyped/README.md b/examples/3.untyped/README.md new file mode 100644 index 00000000..2fed3c93 --- /dev/null +++ b/examples/3.untyped/README.md @@ -0,0 +1,3 @@ +# Unbuild untyped example + + diff --git a/examples/untyped/build.config.ts b/examples/3.untyped/build.config.ts similarity index 84% rename from examples/untyped/build.config.ts rename to examples/3.untyped/build.config.ts index dfec1cd9..b56763a2 100644 --- a/examples/untyped/build.config.ts +++ b/examples/3.untyped/build.config.ts @@ -6,8 +6,8 @@ export default defineBuildConfig({ { builder: "untyped", input: "src/index.ts", - outDir: "docs", - name: "examples", + outDir: "schema", + name: "schema", }, ], declaration: true, diff --git a/examples/inferring-dts/package.json b/examples/3.untyped/package.json similarity index 86% rename from examples/inferring-dts/package.json rename to examples/3.untyped/package.json index b60793cd..e02ed523 100644 --- a/examples/inferring-dts/package.json +++ b/examples/3.untyped/package.json @@ -1,4 +1,6 @@ { + "name": "unbuild-example-untyped", + "version": "1.0.0", "type": "module", "exports": { ".": { @@ -12,8 +14,6 @@ } } }, - "types": "./dist/index.d.ts", - "main": "./dist/index.cjs", "files": [ "dist" ], diff --git a/examples/3.untyped/src/index.ts b/examples/3.untyped/src/index.ts new file mode 100644 index 00000000..66f27ad9 --- /dev/null +++ b/examples/3.untyped/src/index.ts @@ -0,0 +1,21 @@ +export function sendMessage (message: string, date = new Date(), flash?: boolean): string { + return 'OK' +} + +export const config = { + name: 'default', + price: 12.5, + /** + * checked state + */ + checked: false, + dimensions: { + /** width in px */ + width: 10, + /** height in px */ + height: 10 + }, + tags: { + $resolve: (val?: string[]) => ['tag1', ...val || []].filter(Boolean) + } +} diff --git a/examples/README.md b/examples/README.md index ace9deaa..b5a5f906 100644 --- a/examples/README.md +++ b/examples/README.md @@ -2,13 +2,6 @@ In this directory you can find some examples of how to use unbuild. -- [Inferring ESM](./inferring-esm/) - A simple example of how to generate ESM from TypeScript by inferring `package.json`. -- [Inferring CJS](./inferring-cjs/) - A simple example of how to generate CJS and ESM from TypeScript by inferring `package.json`. -- [Inferring DTS](./inferring-dts/) - A simple example of how to generate ESM, CJS and DTS from TypeScript by inferring `package.json`. -- [Stub](./stub/) - A simple example of how to generate a stub (passive watcher) from TypeScript. -- [Multiple Entries](./multiple-entries/) - A simple example of how to generate ESM, CJS and DTS from TypeScript using multiple entry points. -- [Folder Entry](./folder-entry/) - A simple example of how to generate ESM, CJS and DTS from TypeScript using a folder as entry point. -- [JSON to ESM](./json-to-esm/) - A simple example of how to generate ESM from JSON. -- [Untyped](./untyped/) - A simple example of how to generate types and markdown from TypeScript. - - +- [Zero Config](./1.zero-config/) +- [mkdist](./2.mkdist/) +- [untyped](./3.untyped/) diff --git a/examples/html-to-esm/build.config.ts b/examples/html-to-esm/build.config.ts deleted file mode 100644 index 9782fbc2..00000000 --- a/examples/html-to-esm/build.config.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { defineBuildConfig } from "unbuild"; - -export default defineBuildConfig({ - entries: ["src/index.html"], - rollup: { - output: { - exports: "named", - }, - }, -}); diff --git a/examples/html-to-esm/package.json b/examples/html-to-esm/package.json deleted file mode 100644 index 83c070e2..00000000 --- a/examples/html-to-esm/package.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "module", - "exports": { - ".": { - "import": "./dist/index.html.mjs" - } - }, - "main": "./dist/index.html.mjs", - "files": [ - "dist" - ], - "scripts": { - "build": "unbuild" - }, - "devDependencies": { - "unbuild": "^2.0.0" - } -} diff --git a/examples/html-to-esm/src/index.html b/examples/html-to-esm/src/index.html deleted file mode 100644 index 62294eca..00000000 --- a/examples/html-to-esm/src/index.html +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - unbuild - unjs - - -

welcome to unbuild

- - diff --git a/examples/inferring-cjs/package.json b/examples/inferring-cjs/package.json deleted file mode 100644 index 7f367b27..00000000 --- a/examples/inferring-cjs/package.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "module", - "exports": { - ".": { - "import": "./dist/index.mjs", - "require": "./dist/index.cjs" - } - }, - "main": "./dist/index.cjs", - "files": [ - "dist" - ], - "scripts": { - "build": "unbuild" - }, - "devDependencies": { - "unbuild": "^2.0.0" - } -} diff --git a/examples/inferring-dts/src/index.ts b/examples/inferring-dts/src/index.ts deleted file mode 100644 index 81ddefc4..00000000 --- a/examples/inferring-dts/src/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export function main(data: string): string { - return `Hello ${data}!`; -} diff --git a/examples/inferring-esm/package.json b/examples/inferring-esm/package.json deleted file mode 100644 index e627db5a..00000000 --- a/examples/inferring-esm/package.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "module", - "exports": { - ".": { - "import": "./dist/index.mjs" - } - }, - "main": "./dist/index.mjs", - "files": [ - "dist" - ], - "scripts": { - "build": "unbuild" - }, - "devDependencies": { - "unbuild": "^2.0.0" - } -} diff --git a/examples/inferring-esm/src/index.ts b/examples/inferring-esm/src/index.ts deleted file mode 100644 index 81ddefc4..00000000 --- a/examples/inferring-esm/src/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export function main(data: string): string { - return `Hello ${data}!`; -} diff --git a/examples/json-to-esm/build.config.ts b/examples/json-to-esm/build.config.ts deleted file mode 100644 index 1d0351a6..00000000 --- a/examples/json-to-esm/build.config.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { defineBuildConfig } from "unbuild"; - -export default defineBuildConfig({ - entries: [ - { - input: "src/data.json", - }, - ], - rollup: { - output: { - exports: "named", - }, - }, -}); diff --git a/examples/json-to-esm/package.json b/examples/json-to-esm/package.json deleted file mode 100644 index bfc877d7..00000000 --- a/examples/json-to-esm/package.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "module", - "exports": { - ".": { - "import": "./dist/data.mjs" - } - }, - "main": "./dist/data.mjs", - "files": [ - "dist" - ], - "scripts": { - "build": "unbuild" - }, - "devDependencies": { - "unbuild": "^2.0.0" - } -} diff --git a/examples/json-to-esm/src/data.json b/examples/json-to-esm/src/data.json deleted file mode 100644 index 2c153c4a..00000000 --- a/examples/json-to-esm/src/data.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "name": "unjs" -} diff --git a/examples/multiples-entries/build.config.ts b/examples/multiples-entries/build.config.ts deleted file mode 100644 index 7aae4c21..00000000 --- a/examples/multiples-entries/build.config.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { defineBuildConfig } from "unbuild"; - -export default defineBuildConfig({ - entries: ["./src/index.ts", "./src/cli.ts"], - declaration: true, - rollup: { - emitCJS: true, - }, -}); diff --git a/examples/multiples-entries/src/cli.ts b/examples/multiples-entries/src/cli.ts deleted file mode 100644 index 1ca2996b..00000000 --- a/examples/multiples-entries/src/cli.ts +++ /dev/null @@ -1,4 +0,0 @@ -export default function cli(args: string[]) { - const name = args[0] || "world"; - console.log(`Hello ${name}!`); -} diff --git a/examples/multiples-entries/src/index.ts b/examples/multiples-entries/src/index.ts deleted file mode 100644 index 81ddefc4..00000000 --- a/examples/multiples-entries/src/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export function main(data: string): string { - return `Hello ${data}!`; -} diff --git a/examples/stub/package.json b/examples/stub/package.json deleted file mode 100644 index 97d7761e..00000000 --- a/examples/stub/package.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "module", - "exports": { - ".": { - "import": "./dist/index.mjs" - } - }, - "main": "./dist/index.mjs", - "files": [ - "dist" - ], - "scripts": { - "build": "unbuild", - "build:stub": "unbuild --stub" - }, - "devDependencies": { - "unbuild": "^2.0.0" - } -} diff --git a/examples/stub/src/index.ts b/examples/stub/src/index.ts deleted file mode 100644 index 81ddefc4..00000000 --- a/examples/stub/src/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export function main(data: string): string { - return `Hello ${data}!`; -} diff --git a/examples/untyped/package.json b/examples/untyped/package.json deleted file mode 100644 index aeaf00f1..00000000 --- a/examples/untyped/package.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "module", - "bin": "./dist/index.mjs", - "exports": { - ".": { - "import": { - "types": "./dist/index.d.mts", - "default": "./dist/index.mjs" - }, - "require": { - "types": "./dist/index.d.cts", - "default": "./dist/index.cjs" - } - } - }, - "types": "./dist/index.d.ts", - "main": "./dist/index.cjs", - "files": [ - "dist" - ], - "scripts": { - "build": "unbuild" - }, - "devDependencies": { - "unbuild": "^2.0.0" - } -} diff --git a/examples/untyped/src/index.ts b/examples/untyped/src/index.ts deleted file mode 100644 index 81ddefc4..00000000 --- a/examples/untyped/src/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export function main(data: string): string { - return `Hello ${data}!`; -} diff --git a/package.json b/package.json index a4d1a008..f71c263b 100644 --- a/package.json +++ b/package.json @@ -63,7 +63,8 @@ "eslint-config-unjs": "^0.3.2", "prettier": "^3.3.0", "typescript": "^5.4.5", - "vitest": "^1.6.0" + "vitest": "^1.6.0", + "unbuild": "workspace:." }, "peerDependencies": { "typescript": "^5.4.5" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f1ea54b0..b3d7032c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -105,6 +105,9 @@ importers: typescript: specifier: ^5.4.5 version: 5.4.5 + unbuild: + specifier: workspace:. + version: 'link:' vitest: specifier: ^1.6.0 version: 1.6.0(@types/node@20.14.1) From 52f5e9264cb156c811587f72c500c90aac31e67b Mon Sep 17 00:00:00 2001 From: Pooya Parsa Date: Tue, 4 Jun 2024 23:12:59 +0200 Subject: [PATCH 5/5] lint --- examples/3.untyped/README.md | 2 -- examples/3.untyped/src/index.ts | 40 ++++++++++++++++++--------------- 2 files changed, 22 insertions(+), 20 deletions(-) diff --git a/examples/3.untyped/README.md b/examples/3.untyped/README.md index 2fed3c93..3466aaf5 100644 --- a/examples/3.untyped/README.md +++ b/examples/3.untyped/README.md @@ -1,3 +1 @@ # Unbuild untyped example - - diff --git a/examples/3.untyped/src/index.ts b/examples/3.untyped/src/index.ts index 66f27ad9..5cbf2aa5 100644 --- a/examples/3.untyped/src/index.ts +++ b/examples/3.untyped/src/index.ts @@ -1,21 +1,25 @@ -export function sendMessage (message: string, date = new Date(), flash?: boolean): string { - return 'OK' +export function sendMessage( + message: string, + date = new Date(), + flash?: boolean, +): string { + return "OK"; } export const config = { - name: 'default', - price: 12.5, - /** - * checked state - */ - checked: false, - dimensions: { - /** width in px */ - width: 10, - /** height in px */ - height: 10 - }, - tags: { - $resolve: (val?: string[]) => ['tag1', ...val || []].filter(Boolean) - } -} + name: "default", + price: 12.5, + /** + * checked state + */ + checked: false, + dimensions: { + /** width in px */ + width: 10, + /** height in px */ + height: 10, + }, + tags: { + $resolve: (val?: string[]) => ["tag1", ...(val || [])].filter(Boolean), + }, +};