Skip to content

Commit c6ff41f

Browse files
committed
feat: provide both minified and non-minified build
1 parent 01bc12f commit c6ff41f

File tree

3 files changed

+124
-15
lines changed

3 files changed

+124
-15
lines changed

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
"./packages/*"
2929
],
3030
"devDependencies": {
31+
"@rollup/plugin-terser": "^0.4.4",
3132
"stats.js": "^0.17.0",
3233
"vite": "5.1.6",
3334
"vite-plugin-dts": "3.7.3"

packages/fragments/vite.config.ts

Lines changed: 33 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import dts from "vite-plugin-dts";
33
import { defineConfig } from "vite";
44
import * as path from "path";
55
import * as fs from "fs";
6+
import pluginTerser from "@rollup/plugin-terser";
67
import * as packageJson from "./package.json";
78

89
const generateTSNamespace = (dts: Map<string, string>) => {
@@ -25,26 +26,44 @@ const generateTSNamespace = (dts: Map<string, string>) => {
2526
export default defineConfig({
2627
build: {
2728
outDir: "./dist",
29+
minify: false,
2830
lib: {
2931
entry: path.resolve(__dirname, "./src/index.ts"),
30-
formats: ["es", "cjs"],
31-
fileName: (format) => {
32-
const map = {
33-
cjs: "cjs",
34-
es: "mjs",
35-
};
36-
return `index.${map[format]}`;
37-
},
3832
},
3933
rollupOptions: {
4034
external: Object.keys(packageJson.peerDependencies),
41-
output: {
42-
globals: {
43-
three: "THREE",
44-
"bim-fragment": "FRAGS",
45-
"web-ifc": "WEB-IFC",
35+
output: [
36+
{
37+
entryFileNames: `index.mjs`,
38+
format: "es",
39+
globals: {
40+
three: "THREE",
41+
},
4642
},
47-
},
43+
{
44+
entryFileNames: `index.cjs`,
45+
format: "cjs",
46+
globals: {
47+
three: "THREE",
48+
},
49+
},
50+
{
51+
entryFileNames: `index.min.mjs`,
52+
plugins: [pluginTerser()],
53+
format: "es",
54+
globals: {
55+
three: "THREE",
56+
},
57+
},
58+
{
59+
entryFileNames: `index.min.cjs`,
60+
plugins: [pluginTerser()],
61+
format: "cjs",
62+
globals: {
63+
three: "THREE",
64+
},
65+
},
66+
],
4867
},
4968
},
5069
plugins: [

yarn.lock

Lines changed: 90 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -908,6 +908,16 @@ __metadata:
908908
languageName: node
909909
linkType: hard
910910

911+
"@jridgewell/source-map@npm:^0.3.3":
912+
version: 0.3.6
913+
resolution: "@jridgewell/source-map@npm:0.3.6"
914+
dependencies:
915+
"@jridgewell/gen-mapping": ^0.3.5
916+
"@jridgewell/trace-mapping": ^0.3.25
917+
checksum: c9dc7d899397df95e3c9ec287b93c0b56f8e4453cd20743e2b9c8e779b1949bc3cccf6c01bb302779e46560eb45f62ea38d19fedd25370d814734268450a9f30
918+
languageName: node
919+
linkType: hard
920+
911921
"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14":
912922
version: 1.4.15
913923
resolution: "@jridgewell/sourcemap-codec@npm:1.4.15"
@@ -1050,6 +1060,22 @@ __metadata:
10501060
languageName: node
10511061
linkType: hard
10521062

1063+
"@rollup/plugin-terser@npm:^0.4.4":
1064+
version: 0.4.4
1065+
resolution: "@rollup/plugin-terser@npm:0.4.4"
1066+
dependencies:
1067+
serialize-javascript: ^6.0.1
1068+
smob: ^1.0.0
1069+
terser: ^5.17.4
1070+
peerDependencies:
1071+
rollup: ^2.0.0||^3.0.0||^4.0.0
1072+
peerDependenciesMeta:
1073+
rollup:
1074+
optional: true
1075+
checksum: 5472f659fbb7034488df91eb01ecd2ddf6d2cf203d049aa486139225ad5566254c6ec24aad1f5d1167e35f480212ede5160df9cc80e149a28874f78ed6a7fd9a
1076+
languageName: node
1077+
linkType: hard
1078+
10531079
"@rollup/pluginutils@npm:^5.1.0":
10541080
version: 5.1.0
10551081
resolution: "@rollup/pluginutils@npm:5.1.0"
@@ -1781,6 +1807,15 @@ __metadata:
17811807
languageName: node
17821808
linkType: hard
17831809

1810+
"acorn@npm:^8.8.2":
1811+
version: 8.13.0
1812+
resolution: "acorn@npm:8.13.0"
1813+
bin:
1814+
acorn: bin/acorn
1815+
checksum: f1541f05eb5d6ff67990d1927290809b1ebb663ac96d9c7057c935cf29c5bcaba6d39f37bd007f4bb814f162f142b0f2b2dd4b14128b8fcfaf9f0508a6f05f1c
1816+
languageName: node
1817+
linkType: hard
1818+
17841819
"agent-base@npm:6":
17851820
version: 6.0.2
17861821
resolution: "agent-base@npm:6.0.2"
@@ -2365,6 +2400,13 @@ __metadata:
23652400
languageName: node
23662401
linkType: hard
23672402

2403+
"commander@npm:^2.20.0":
2404+
version: 2.20.3
2405+
resolution: "commander@npm:2.20.3"
2406+
checksum: ab8c07884e42c3a8dbc5dd9592c606176c7eb5c1ca5ff274bcf907039b2c41de3626f684ea75ccf4d361ba004bbaff1f577d5384c155f3871e456bdf27becf9e
2407+
languageName: node
2408+
linkType: hard
2409+
23682410
"commander@npm:^9.4.1":
23692411
version: 9.5.0
23702412
resolution: "commander@npm:9.5.0"
@@ -5681,6 +5723,15 @@ __metadata:
56815723
languageName: node
56825724
linkType: hard
56835725

5726+
"randombytes@npm:^2.1.0":
5727+
version: 2.1.0
5728+
resolution: "randombytes@npm:2.1.0"
5729+
dependencies:
5730+
safe-buffer: ^5.1.0
5731+
checksum: d779499376bd4cbb435ef3ab9a957006c8682f343f14089ed5f27764e4645114196e75b7f6abf1cbd84fd247c0cb0651698444df8c9bf30e62120fbbc52269d6
5732+
languageName: node
5733+
linkType: hard
5734+
56845735
"react-is@npm:^17.0.1":
56855736
version: 17.0.2
56865737
resolution: "react-is@npm:17.0.2"
@@ -5882,6 +5933,7 @@ __metadata:
58825933
version: 0.0.0-use.local
58835934
resolution: "root-workspace-0b6124@workspace:."
58845935
dependencies:
5936+
"@rollup/plugin-terser": ^0.4.4
58855937
stats.js: ^0.17.0
58865938
vite: 5.1.6
58875939
vite-plugin-dts: 3.7.3
@@ -5909,6 +5961,13 @@ __metadata:
59095961
languageName: node
59105962
linkType: hard
59115963

5964+
"safe-buffer@npm:^5.1.0":
5965+
version: 5.2.1
5966+
resolution: "safe-buffer@npm:5.2.1"
5967+
checksum: b99c4b41fdd67a6aaf280fcd05e9ffb0813654894223afb78a31f14a19ad220bba8aba1cb14eddce1fcfb037155fe6de4e861784eb434f7d11ed58d1e70dd491
5968+
languageName: node
5969+
linkType: hard
5970+
59125971
"safe-regex-test@npm:^1.0.3":
59135972
version: 1.0.3
59145973
resolution: "safe-regex-test@npm:1.0.3"
@@ -5967,6 +6026,15 @@ __metadata:
59676026
languageName: node
59686027
linkType: hard
59696028

6029+
"serialize-javascript@npm:^6.0.1":
6030+
version: 6.0.2
6031+
resolution: "serialize-javascript@npm:6.0.2"
6032+
dependencies:
6033+
randombytes: ^2.1.0
6034+
checksum: c4839c6206c1d143c0f80763997a361310305751171dd95e4b57efee69b8f6edd8960a0b7fbfc45042aadff98b206d55428aee0dc276efe54f100899c7fa8ab7
6035+
languageName: node
6036+
linkType: hard
6037+
59706038
"set-function-length@npm:^1.2.1":
59716039
version: 1.2.2
59726040
resolution: "set-function-length@npm:1.2.2"
@@ -6056,6 +6124,13 @@ __metadata:
60566124
languageName: node
60576125
linkType: hard
60586126

6127+
"smob@npm:^1.0.0":
6128+
version: 1.5.0
6129+
resolution: "smob@npm:1.5.0"
6130+
checksum: 436b99477ace208e44bd7cd7933532958acca507320724a8e57c730accc47c5d77e538fbc554ded145f1e3411ac0c4b55f6782bceaa5839671104fd68d4bdc7f
6131+
languageName: node
6132+
linkType: hard
6133+
60596134
"socks-proxy-agent@npm:^8.0.3":
60606135
version: 8.0.3
60616136
resolution: "socks-proxy-agent@npm:8.0.3"
@@ -6084,7 +6159,7 @@ __metadata:
60846159
languageName: node
60856160
linkType: hard
60866161

6087-
"source-map-support@npm:^0.5.6":
6162+
"source-map-support@npm:^0.5.6, source-map-support@npm:~0.5.20":
60886163
version: 0.5.21
60896164
resolution: "source-map-support@npm:0.5.21"
60906165
dependencies:
@@ -6351,6 +6426,20 @@ __metadata:
63516426
languageName: node
63526427
linkType: hard
63536428

6429+
"terser@npm:^5.17.4":
6430+
version: 5.36.0
6431+
resolution: "terser@npm:5.36.0"
6432+
dependencies:
6433+
"@jridgewell/source-map": ^0.3.3
6434+
acorn: ^8.8.2
6435+
commander: ^2.20.0
6436+
source-map-support: ~0.5.20
6437+
bin:
6438+
terser: bin/terser
6439+
checksum: 489afd31901a2b170f7766948a3aa0e25da0acb41e9e35bd9f9b4751dfa2fc846e485f6fb9d34f0839a96af77f675b5fbf0a20c9aa54e0b8d7c219cf0b55e508
6440+
languageName: node
6441+
linkType: hard
6442+
63546443
"test-exclude@npm:^6.0.0":
63556444
version: 6.0.0
63566445
resolution: "test-exclude@npm:6.0.0"

0 commit comments

Comments
 (0)