jiek 1.1.13 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,91 @@
1
+ import * as _rollup_plugin_terser from '@rollup/plugin-terser';
2
+ import * as rollup_plugin_swc3 from 'rollup-plugin-swc3';
3
+ import * as rollup_plugin_esbuild from 'rollup-plugin-esbuild';
4
+ import { InputPluginOption, OutputOptions } from 'rollup';
5
+
6
+ type Mapping2ROO<K extends keyof OutputOptions> = OutputOptions[K] | {
7
+ js?: OutputOptions[K];
8
+ dts?: OutputOptions[K];
9
+ };
10
+ interface ConfigGenerateContext {
11
+ path: string;
12
+ name: string;
13
+ input: string;
14
+ output: string;
15
+ external: (string | RegExp)[];
16
+ pkgIsModule: boolean;
17
+ conditionals: string[];
18
+ }
19
+ type OutputControl = boolean | ((context: ConfigGenerateContext) => boolean);
20
+ declare const BUILDER_TYPES: readonly ["esbuild", "swc"];
21
+ interface TemplateOptions {
22
+ /**
23
+ * When the user configures type: module, the generated output from entry points that don't
24
+ * have cts as a suffix will automatically include the CJS version.
25
+ * if it is not configured, and the generated output from entry points that do not have mts
26
+ * as a suffix will automatically include the ESM version.
27
+ *
28
+ * @default true
29
+ */
30
+ crossModuleConvertor?: boolean;
31
+ /**
32
+ * Auto-detect the builder from the installed dependencies.
33
+ * If the builder is not installed, it will prompt the user to install it.
34
+ * If exists multiple builders, it will fall back to the 'esbuild'.
35
+ *
36
+ * @default 'esbuild'
37
+ */
38
+ builder?: typeof BUILDER_TYPES[number] | ({
39
+ type: 'esbuild';
40
+ } & rollup_plugin_esbuild.Options) | ({
41
+ type: 'swc';
42
+ } & rollup_plugin_swc3.PluginOptions);
43
+ output?: {
44
+ /**
45
+ * @default true
46
+ *
47
+ * When minify is set to true, the output will with minified files.
48
+ * When minify is set to 'only-minify', the output will direct output minified files.
49
+ */
50
+ minify?: boolean | 'only-minify';
51
+ minifyOptions?: typeof BUILDER_TYPES[number] | 'terser' | ({
52
+ type: 'terser';
53
+ } & _rollup_plugin_terser.Options) | ({
54
+ type: 'esbuild';
55
+ } & Parameters<typeof rollup_plugin_esbuild.minify>[0]) | ({
56
+ type: 'swc';
57
+ } & Parameters<typeof rollup_plugin_swc3.minify>[0]);
58
+ /**
59
+ * @default 'dist'
60
+ */
61
+ dir?: Mapping2ROO<'dir'>;
62
+ sourcemap?: Mapping2ROO<'sourcemap'>;
63
+ strict?: Mapping2ROO<'strict'>;
64
+ js?: OutputControl;
65
+ dts?: OutputControl;
66
+ };
67
+ /**
68
+ * Set the external dependencies of the package.
69
+ */
70
+ external?: (string | RegExp)[];
71
+ plugins?: InputPluginOption | ((type: 'js' | 'dts', context: ConfigGenerateContext) => InputPluginOption) | {
72
+ js: InputPluginOption;
73
+ dts?: InputPluginOption;
74
+ } | {
75
+ js?: InputPluginOption;
76
+ dts: InputPluginOption;
77
+ };
78
+ }
79
+
80
+ declare module 'jiek' {
81
+ interface Config {
82
+ build?: TemplateOptions & {
83
+ /**
84
+ * Whether to run in silent mode, only active when configured in the workspace root or cwd.
85
+ *
86
+ * @default false
87
+ */
88
+ silent?: boolean;
89
+ };
90
+ }
91
+ }
@@ -0,0 +1,91 @@
1
+ import * as _rollup_plugin_terser from '@rollup/plugin-terser';
2
+ import * as rollup_plugin_swc3 from 'rollup-plugin-swc3';
3
+ import * as rollup_plugin_esbuild from 'rollup-plugin-esbuild';
4
+ import { InputPluginOption, OutputOptions } from 'rollup';
5
+
6
+ type Mapping2ROO<K extends keyof OutputOptions> = OutputOptions[K] | {
7
+ js?: OutputOptions[K];
8
+ dts?: OutputOptions[K];
9
+ };
10
+ interface ConfigGenerateContext {
11
+ path: string;
12
+ name: string;
13
+ input: string;
14
+ output: string;
15
+ external: (string | RegExp)[];
16
+ pkgIsModule: boolean;
17
+ conditionals: string[];
18
+ }
19
+ type OutputControl = boolean | ((context: ConfigGenerateContext) => boolean);
20
+ declare const BUILDER_TYPES: readonly ["esbuild", "swc"];
21
+ interface TemplateOptions {
22
+ /**
23
+ * When the user configures type: module, the generated output from entry points that don't
24
+ * have cts as a suffix will automatically include the CJS version.
25
+ * if it is not configured, and the generated output from entry points that do not have mts
26
+ * as a suffix will automatically include the ESM version.
27
+ *
28
+ * @default true
29
+ */
30
+ crossModuleConvertor?: boolean;
31
+ /**
32
+ * Auto-detect the builder from the installed dependencies.
33
+ * If the builder is not installed, it will prompt the user to install it.
34
+ * If exists multiple builders, it will fall back to the 'esbuild'.
35
+ *
36
+ * @default 'esbuild'
37
+ */
38
+ builder?: typeof BUILDER_TYPES[number] | ({
39
+ type: 'esbuild';
40
+ } & rollup_plugin_esbuild.Options) | ({
41
+ type: 'swc';
42
+ } & rollup_plugin_swc3.PluginOptions);
43
+ output?: {
44
+ /**
45
+ * @default true
46
+ *
47
+ * When minify is set to true, the output will with minified files.
48
+ * When minify is set to 'only-minify', the output will direct output minified files.
49
+ */
50
+ minify?: boolean | 'only-minify';
51
+ minifyOptions?: typeof BUILDER_TYPES[number] | 'terser' | ({
52
+ type: 'terser';
53
+ } & _rollup_plugin_terser.Options) | ({
54
+ type: 'esbuild';
55
+ } & Parameters<typeof rollup_plugin_esbuild.minify>[0]) | ({
56
+ type: 'swc';
57
+ } & Parameters<typeof rollup_plugin_swc3.minify>[0]);
58
+ /**
59
+ * @default 'dist'
60
+ */
61
+ dir?: Mapping2ROO<'dir'>;
62
+ sourcemap?: Mapping2ROO<'sourcemap'>;
63
+ strict?: Mapping2ROO<'strict'>;
64
+ js?: OutputControl;
65
+ dts?: OutputControl;
66
+ };
67
+ /**
68
+ * Set the external dependencies of the package.
69
+ */
70
+ external?: (string | RegExp)[];
71
+ plugins?: InputPluginOption | ((type: 'js' | 'dts', context: ConfigGenerateContext) => InputPluginOption) | {
72
+ js: InputPluginOption;
73
+ dts?: InputPluginOption;
74
+ } | {
75
+ js?: InputPluginOption;
76
+ dts: InputPluginOption;
77
+ };
78
+ }
79
+
80
+ declare module 'jiek' {
81
+ interface Config {
82
+ build?: TemplateOptions & {
83
+ /**
84
+ * Whether to run in silent mode, only active when configured in the workspace root or cwd.
85
+ *
86
+ * @default false
87
+ */
88
+ silent?: boolean;
89
+ };
90
+ }
91
+ }