@@ -12,7 +12,43 @@ const treeshake = {
1212 unknownGlobalSideEffects : false ,
1313} satisfies RollupOptions [ "treeshake" ] ;
1414
15- const classic = {
15+ const classicCJS = {
16+ input : "src/classic.ts" ,
17+
18+ output : [
19+ {
20+ file : pkg . exports [ "." ] . require ,
21+ format : "cjs" ,
22+ sourcemap : false ,
23+ } ,
24+ ] ,
25+
26+ plugins : [
27+ rollupPluginAutoExternal ( ) ,
28+ rollupPluginTs ( {
29+ transpileOnly : true ,
30+ tsconfig : {
31+ fileName : "tsconfig.build.json" ,
32+ hook : ( resolvedConfig ) => ( {
33+ ...resolvedConfig ,
34+ paths : {
35+ ...resolvedConfig . paths ,
36+ "#eslint-plugin-functional/conditional-imports/*" : [
37+ "src/utils/conditional-imports/cjs/*" ,
38+ ] ,
39+ } ,
40+ } ) ,
41+ } ,
42+ } ) ,
43+ rollupPluginDeassert ( {
44+ include : [ "**/*.{js,ts}" ] ,
45+ } ) ,
46+ ] ,
47+
48+ treeshake,
49+ } satisfies RollupOptions ;
50+
51+ const classicESM = {
1652 input : "src/classic.ts" ,
1753
1854 output : [
@@ -21,8 +57,39 @@ const classic = {
2157 format : "esm" ,
2258 sourcemap : false ,
2359 } ,
60+ ] ,
61+
62+ plugins : [
63+ rollupPluginAutoExternal ( ) ,
64+ rollupPluginTs ( {
65+ transpileOnly : true ,
66+ tsconfig : {
67+ fileName : "tsconfig.build.json" ,
68+ hook : ( resolvedConfig ) => ( {
69+ ...resolvedConfig ,
70+ paths : {
71+ ...resolvedConfig . paths ,
72+ "#eslint-plugin-functional/conditional-imports/*" : [
73+ "src/utils/conditional-imports/esm/*" ,
74+ ] ,
75+ } ,
76+ } ) ,
77+ } ,
78+ } ) ,
79+ rollupPluginDeassert ( {
80+ include : [ "**/*.{js,ts}" ] ,
81+ } ) ,
82+ ] ,
83+
84+ treeshake,
85+ } satisfies RollupOptions ;
86+
87+ const flatCJS = {
88+ input : "src/flat.ts" ,
89+
90+ output : [
2491 {
25- file : pkg . exports [ "." ] . require ,
92+ file : pkg . exports [ "./flat " ] . require ,
2693 format : "cjs" ,
2794 sourcemap : false ,
2895 } ,
@@ -32,7 +99,18 @@ const classic = {
3299 rollupPluginAutoExternal ( ) ,
33100 rollupPluginTs ( {
34101 transpileOnly : true ,
35- tsconfig : "tsconfig.build.json" ,
102+ tsconfig : {
103+ fileName : "tsconfig.build.json" ,
104+ hook : ( resolvedConfig ) => ( {
105+ ...resolvedConfig ,
106+ paths : {
107+ ...resolvedConfig . paths ,
108+ "#eslint-plugin-functional/conditional-imports/*" : [
109+ "src/utils/conditional-imports/cjs/*" ,
110+ ] ,
111+ } ,
112+ } ) ,
113+ } ,
36114 } ) ,
37115 rollupPluginDeassert ( {
38116 include : [ "**/*.{js,ts}" ] ,
@@ -42,7 +120,7 @@ const classic = {
42120 treeshake,
43121} satisfies RollupOptions ;
44122
45- const flat = {
123+ const flatESM = {
46124 input : "src/flat.ts" ,
47125
48126 output : [
@@ -51,18 +129,24 @@ const flat = {
51129 format : "esm" ,
52130 sourcemap : false ,
53131 } ,
54- {
55- file : pkg . exports [ "./flat" ] . require ,
56- format : "cjs" ,
57- sourcemap : false ,
58- } ,
59132 ] ,
60133
61134 plugins : [
62135 rollupPluginAutoExternal ( ) ,
63136 rollupPluginTs ( {
64137 transpileOnly : true ,
65- tsconfig : "tsconfig.build.json" ,
138+ tsconfig : {
139+ fileName : "tsconfig.build.json" ,
140+ hook : ( resolvedConfig ) => ( {
141+ ...resolvedConfig ,
142+ paths : {
143+ ...resolvedConfig . paths ,
144+ "#eslint-plugin-functional/conditional-imports/*" : [
145+ "src/utils/conditional-imports/esm/*" ,
146+ ] ,
147+ } ,
148+ } ) ,
149+ } ,
66150 } ) ,
67151 rollupPluginDeassert ( {
68152 include : [ "**/*.{js,ts}" ] ,
@@ -72,4 +156,4 @@ const flat = {
72156 treeshake,
73157} satisfies RollupOptions ;
74158
75- export default [ classic , flat ] ;
159+ export default [ classicCJS , classicESM , flatCJS , flatESM ] ;
0 commit comments