| 270 | } |
| 271 | |
| 272 | function prepareMonopackage(monopackage) { |
| 273 | let monopackageJSON = JSON.parse(fs.readFileSync(`packages/${monopackage}/package.json`, 'utf8')); |
| 274 | monopackageJSON.source = 'exports/index.ts'; |
| 275 | if (monopackageJSON.exports && !monopackageJSON.exports['.']) { |
| 276 | monopackageJSON.exports = { |
| 277 | '.': monopackageJSON.exports |
| 278 | }; |
| 279 | } |
| 280 | |
| 281 | Object.assign((monopackageJSON.exports ??= {}), { |
| 282 | '.': { |
| 283 | source: './exports/index.ts', |
| 284 | types: './dist/types/exports/index.d.ts', |
| 285 | import: './dist/exports/index.mjs', |
| 286 | require: './dist/exports/index.cjs' |
| 287 | }, |
| 288 | './package.json': './package.json', |
| 289 | './*': { |
| 290 | source: './exports/*.ts', |
| 291 | types: './dist/types/exports/*.d.ts', |
| 292 | import: './dist/exports/*.mjs', |
| 293 | require: './dist/exports/*.cjs' |
| 294 | } |
| 295 | }); |
| 296 | |
| 297 | let includeNodeModules = false; |
| 298 | if (monopackage === '@adobe/react-spectrum') { |
| 299 | includeNodeModules = ['@adobe/spectrum-css-temp']; |
| 300 | } |
| 301 | |
| 302 | monopackageJSON.targets = { |
| 303 | main: false, |
| 304 | module: false, |
| 305 | types: false, |
| 306 | 'exports-module': { |
| 307 | source: ['exports/**/*.ts'], |
| 308 | distDir: 'dist', |
| 309 | isLibrary: true, |
| 310 | outputFormat: 'esmodule', |
| 311 | includeNodeModules: includeNodeModules |
| 312 | }, |
| 313 | 'exports-main': { |
| 314 | source: ['exports/**/*.ts'], |
| 315 | distDir: 'dist', |
| 316 | isLibrary: true, |
| 317 | outputFormat: 'commonjs', |
| 318 | includeNodeModules: includeNodeModules |
| 319 | } |
| 320 | }; |
| 321 | |
| 322 | for (let dep in monopackageJSON.dependencies || {}) { |
| 323 | let depScope = dep.match(/@(react-aria|react-spectrum|react-stately)/); |
| 324 | if (depScope) { |
| 325 | let p = depScope[1] === 'react-spectrum' ? '@adobe/react-spectrum' : depScope[1]; |
| 326 | if (!monopackageJSON.dependencies[p]) { |
| 327 | monopackageJSON.dependencies[p] = JSON.parse( |
| 328 | fs.readFileSync(`packages/${p}/package.json`, 'utf8') |
| 329 | ).version; |