@utoo/pack 1.4.8-alpha.0 → 1.4.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -95,10 +95,102 @@ function normalizeStyles(styles, isDev) {
95
95
  emotion: normalizeEmotionConfig(styles.emotion, isDev),
96
96
  };
97
97
  }
98
+ // Align with next.js turbopack default optimizePackageImports config:
99
+ // https://nextjs.org/docs/app/api-reference/config/next-config-js/optimizePackageImports
100
+ const DEFAULT_OPTIMIZE_PACKAGE_IMPORTS = [
101
+ "lucide-react",
102
+ "date-fns",
103
+ "lodash-es",
104
+ "ramda",
105
+ "antd",
106
+ "react-bootstrap",
107
+ "ahooks",
108
+ "@ant-design/icons",
109
+ "@headlessui/react",
110
+ "@headlessui-float/react",
111
+ "@heroicons/react/20/solid",
112
+ "@heroicons/react/24/solid",
113
+ "@heroicons/react/24/outline",
114
+ "@visx/visx",
115
+ "@tremor/react",
116
+ "rxjs",
117
+ "@mui/material",
118
+ "@mui/icons-material",
119
+ "recharts",
120
+ "react-use",
121
+ "effect",
122
+ "@effect/schema",
123
+ "@effect/platform",
124
+ "@effect/platform-node",
125
+ "@effect/platform-browser",
126
+ "@effect/platform-bun",
127
+ "@effect/sql",
128
+ "@effect/sql-mssql",
129
+ "@effect/sql-mysql2",
130
+ "@effect/sql-pg",
131
+ "@effect/sql-sqlite-node",
132
+ "@effect/sql-sqlite-bun",
133
+ "@effect/sql-sqlite-wasm",
134
+ "@effect/sql-sqlite-react-native",
135
+ "@effect/rpc",
136
+ "@effect/rpc-http",
137
+ "@effect/typeclass",
138
+ "@effect/experimental",
139
+ "@effect/opentelemetry",
140
+ "@material-ui/core",
141
+ "@material-ui/icons",
142
+ "@tabler/icons-react",
143
+ "mui-core",
144
+ "react-icons/ai",
145
+ "react-icons/bi",
146
+ "react-icons/bs",
147
+ "react-icons/cg",
148
+ "react-icons/ci",
149
+ "react-icons/di",
150
+ "react-icons/fa",
151
+ "react-icons/fa6",
152
+ "react-icons/fc",
153
+ "react-icons/fi",
154
+ "react-icons/gi",
155
+ "react-icons/go",
156
+ "react-icons/gr",
157
+ "react-icons/hi",
158
+ "react-icons/hi2",
159
+ "react-icons/im",
160
+ "react-icons/io",
161
+ "react-icons/io5",
162
+ "react-icons/lia",
163
+ "react-icons/lib",
164
+ "react-icons/lu",
165
+ "react-icons/md",
166
+ "react-icons/pi",
167
+ "react-icons/ri",
168
+ "react-icons/rx",
169
+ "react-icons/si",
170
+ "react-icons/sl",
171
+ "react-icons/tb",
172
+ "react-icons/tfi",
173
+ "react-icons/ti",
174
+ "react-icons/vsc",
175
+ "react-icons/wi",
176
+ ];
177
+ function mergePackageImports(packageImports) {
178
+ const defaultPackageImports = process.env.UTOO_DISABLE_DEFAULT_PACKAGE_IMPORTS === "1"
179
+ ? []
180
+ : DEFAULT_OPTIMIZE_PACKAGE_IMPORTS;
181
+ return [...new Set([...(packageImports !== null && packageImports !== void 0 ? packageImports : []), ...defaultPackageImports])];
182
+ }
183
+ function normalizeOptimization(optimization) {
184
+ return {
185
+ ...(optimization !== null && optimization !== void 0 ? optimization : {}),
186
+ packageImports: mergePackageImports(optimization === null || optimization === void 0 ? void 0 : optimization.packageImports),
187
+ };
188
+ }
98
189
  async function serializeConfig(config, isDev) {
99
190
  const configSerializable = {
100
191
  ...config,
101
192
  styles: normalizeStyles(config.styles, isDev),
193
+ optimization: normalizeOptimization(config.optimization),
102
194
  };
103
195
  if (configSerializable.entry) {
104
196
  configSerializable.entry = configSerializable.entry.map((entry) => {
@@ -106,8 +198,7 @@ async function serializeConfig(config, isDev) {
106
198
  return rest;
107
199
  });
108
200
  }
109
- if (configSerializable.optimization) {
110
- configSerializable.optimization = { ...configSerializable.optimization };
201
+ {
111
202
  const { modularizeImports } = configSerializable.optimization;
112
203
  if (modularizeImports) {
113
204
  configSerializable.optimization.modularizeImports = Object.fromEntries(Object.entries(modularizeImports).map(([mod, config]) => [
@@ -56,10 +56,102 @@ function normalizeStyles(styles, isDev) {
56
56
  emotion: normalizeEmotionConfig(styles.emotion, isDev),
57
57
  };
58
58
  }
59
+ // Align with next.js turbopack default optimizePackageImports config:
60
+ // https://nextjs.org/docs/app/api-reference/config/next-config-js/optimizePackageImports
61
+ const DEFAULT_OPTIMIZE_PACKAGE_IMPORTS = [
62
+ "lucide-react",
63
+ "date-fns",
64
+ "lodash-es",
65
+ "ramda",
66
+ "antd",
67
+ "react-bootstrap",
68
+ "ahooks",
69
+ "@ant-design/icons",
70
+ "@headlessui/react",
71
+ "@headlessui-float/react",
72
+ "@heroicons/react/20/solid",
73
+ "@heroicons/react/24/solid",
74
+ "@heroicons/react/24/outline",
75
+ "@visx/visx",
76
+ "@tremor/react",
77
+ "rxjs",
78
+ "@mui/material",
79
+ "@mui/icons-material",
80
+ "recharts",
81
+ "react-use",
82
+ "effect",
83
+ "@effect/schema",
84
+ "@effect/platform",
85
+ "@effect/platform-node",
86
+ "@effect/platform-browser",
87
+ "@effect/platform-bun",
88
+ "@effect/sql",
89
+ "@effect/sql-mssql",
90
+ "@effect/sql-mysql2",
91
+ "@effect/sql-pg",
92
+ "@effect/sql-sqlite-node",
93
+ "@effect/sql-sqlite-bun",
94
+ "@effect/sql-sqlite-wasm",
95
+ "@effect/sql-sqlite-react-native",
96
+ "@effect/rpc",
97
+ "@effect/rpc-http",
98
+ "@effect/typeclass",
99
+ "@effect/experimental",
100
+ "@effect/opentelemetry",
101
+ "@material-ui/core",
102
+ "@material-ui/icons",
103
+ "@tabler/icons-react",
104
+ "mui-core",
105
+ "react-icons/ai",
106
+ "react-icons/bi",
107
+ "react-icons/bs",
108
+ "react-icons/cg",
109
+ "react-icons/ci",
110
+ "react-icons/di",
111
+ "react-icons/fa",
112
+ "react-icons/fa6",
113
+ "react-icons/fc",
114
+ "react-icons/fi",
115
+ "react-icons/gi",
116
+ "react-icons/go",
117
+ "react-icons/gr",
118
+ "react-icons/hi",
119
+ "react-icons/hi2",
120
+ "react-icons/im",
121
+ "react-icons/io",
122
+ "react-icons/io5",
123
+ "react-icons/lia",
124
+ "react-icons/lib",
125
+ "react-icons/lu",
126
+ "react-icons/md",
127
+ "react-icons/pi",
128
+ "react-icons/ri",
129
+ "react-icons/rx",
130
+ "react-icons/si",
131
+ "react-icons/sl",
132
+ "react-icons/tb",
133
+ "react-icons/tfi",
134
+ "react-icons/ti",
135
+ "react-icons/vsc",
136
+ "react-icons/wi",
137
+ ];
138
+ function mergePackageImports(packageImports) {
139
+ const defaultPackageImports = process.env.UTOO_DISABLE_DEFAULT_PACKAGE_IMPORTS === "1"
140
+ ? []
141
+ : DEFAULT_OPTIMIZE_PACKAGE_IMPORTS;
142
+ return [...new Set([...(packageImports !== null && packageImports !== void 0 ? packageImports : []), ...defaultPackageImports])];
143
+ }
144
+ function normalizeOptimization(optimization) {
145
+ return {
146
+ ...(optimization !== null && optimization !== void 0 ? optimization : {}),
147
+ packageImports: mergePackageImports(optimization === null || optimization === void 0 ? void 0 : optimization.packageImports),
148
+ };
149
+ }
59
150
  export async function serializeConfig(config, isDev) {
60
151
  const configSerializable = {
61
152
  ...config,
62
153
  styles: normalizeStyles(config.styles, isDev),
154
+ optimization: normalizeOptimization(config.optimization),
63
155
  };
64
156
  if (configSerializable.entry) {
65
157
  configSerializable.entry = configSerializable.entry.map((entry) => {
@@ -67,8 +159,7 @@ export async function serializeConfig(config, isDev) {
67
159
  return rest;
68
160
  });
69
161
  }
70
- if (configSerializable.optimization) {
71
- configSerializable.optimization = { ...configSerializable.optimization };
162
+ {
72
163
  const { modularizeImports } = configSerializable.optimization;
73
164
  if (modularizeImports) {
74
165
  configSerializable.optimization.modularizeImports = Object.fromEntries(Object.entries(modularizeImports).map(([mod, config]) => [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@utoo/pack",
3
- "version": "1.4.8-alpha.0",
3
+ "version": "1.4.8",
4
4
  "main": "cjs/index.js",
5
5
  "module": "esm/index.js",
6
6
  "types": "esm/index.d.ts",
@@ -41,7 +41,7 @@
41
41
  "@hono/node-server": "^1.19.11",
42
42
  "@hono/node-ws": "^1.3.0",
43
43
  "@swc/helpers": "0.5.15",
44
- "@utoo/pack-shared": "1.4.8-alpha.0",
44
+ "@utoo/pack-shared": "1.4.8",
45
45
  "domparser-rs": "^0.0.7",
46
46
  "find-up": "4.1.0",
47
47
  "get-port": "5.1.1",
@@ -90,14 +90,18 @@
90
90
  "version": "napi version",
91
91
  "generate-features-list": "node ./scripts/generate-feature-list.js"
92
92
  },
93
- "repository": "git@github.com:utooland/utoo.git",
93
+ "repository": {
94
+ "type": "git",
95
+ "url": "https://github.com/utooland/utoo",
96
+ "directory": "packages/pack"
97
+ },
94
98
  "optionalDependencies": {
95
- "@utoo/pack-darwin-arm64": "1.4.8-alpha.0",
96
- "@utoo/pack-darwin-x64": "1.4.8-alpha.0",
97
- "@utoo/pack-linux-arm64-gnu": "1.4.8-alpha.0",
98
- "@utoo/pack-linux-arm64-musl": "1.4.8-alpha.0",
99
- "@utoo/pack-linux-x64-gnu": "1.4.8-alpha.0",
100
- "@utoo/pack-linux-x64-musl": "1.4.8-alpha.0",
101
- "@utoo/pack-win32-x64-msvc": "1.4.8-alpha.0"
99
+ "@utoo/pack-darwin-arm64": "1.4.8",
100
+ "@utoo/pack-darwin-x64": "1.4.8",
101
+ "@utoo/pack-linux-arm64-gnu": "1.4.8",
102
+ "@utoo/pack-linux-arm64-musl": "1.4.8",
103
+ "@utoo/pack-linux-x64-gnu": "1.4.8",
104
+ "@utoo/pack-linux-x64-musl": "1.4.8",
105
+ "@utoo/pack-win32-x64-msvc": "1.4.8"
102
106
  }
103
107
  }