@moluoxixi/vite-config 0.0.37

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.
Files changed (50) hide show
  1. package/DESIGN.md +70 -0
  2. package/README.md +71 -0
  3. package/dist/addons/auto-import.d.ts +9 -0
  4. package/dist/addons/auto-import.js +6 -0
  5. package/dist/addons/components.d.ts +9 -0
  6. package/dist/addons/components.js +6 -0
  7. package/dist/addons/devtools.d.ts +9 -0
  8. package/dist/addons/devtools.js +6 -0
  9. package/dist/addons/i18n.d.ts +9 -0
  10. package/dist/addons/i18n.js +6 -0
  11. package/dist/addons/index.d.ts +28 -0
  12. package/dist/addons/index.js +59 -0
  13. package/dist/addons/layouts.d.ts +9 -0
  14. package/dist/addons/layouts.js +6 -0
  15. package/dist/addons/markdown.d.ts +9 -0
  16. package/dist/addons/markdown.js +6 -0
  17. package/dist/addons/pwa.d.ts +9 -0
  18. package/dist/addons/pwa.js +6 -0
  19. package/dist/addons/react.d.ts +9 -0
  20. package/dist/addons/react.js +6 -0
  21. package/dist/addons/tailwindcss.d.ts +9 -0
  22. package/dist/addons/tailwindcss.js +6 -0
  23. package/dist/addons/unocss.d.ts +9 -0
  24. package/dist/addons/unocss.js +6 -0
  25. package/dist/addons/vite-ssg.d.ts +18 -0
  26. package/dist/addons/vite-ssg.js +6 -0
  27. package/dist/addons/vitest.d.ts +9 -0
  28. package/dist/addons/vitest.js +6 -0
  29. package/dist/addons/vue-router.d.ts +9 -0
  30. package/dist/addons/vue-router.js +6 -0
  31. package/dist/addons/vue.d.ts +9 -0
  32. package/dist/addons/vue.js +6 -0
  33. package/dist/chunk-2BMF52EY.js +8 -0
  34. package/dist/chunk-7CLRGPQQ.js +8 -0
  35. package/dist/chunk-CG74BJ6T.js +8 -0
  36. package/dist/chunk-GKIEBF73.js +8 -0
  37. package/dist/chunk-GUIZM2YS.js +8 -0
  38. package/dist/chunk-HKGBYIAA.js +8 -0
  39. package/dist/chunk-IBJFH5NC.js +8 -0
  40. package/dist/chunk-M2ZFVZSN.js +8 -0
  41. package/dist/chunk-NQPL76JU.js +8 -0
  42. package/dist/chunk-OEBLHHRC.js +8 -0
  43. package/dist/chunk-PBJLIQ2R.js +8 -0
  44. package/dist/chunk-T5FUYGUC.js +0 -0
  45. package/dist/chunk-UXLJ2PKX.js +8 -0
  46. package/dist/chunk-WYQMKXD6.js +8 -0
  47. package/dist/chunk-YMSTBWUP.js +8 -0
  48. package/dist/index.d.ts +138 -0
  49. package/dist/index.js +815 -0
  50. package/package.json +183 -0
@@ -0,0 +1,138 @@
1
+ import { AutoImportAddonOptions } from './addons/auto-import.js';
2
+ export { defineAutoImportAddonOptions } from './addons/auto-import.js';
3
+ import { ComponentsAddonOptions } from './addons/components.js';
4
+ export { defineComponentsAddonOptions } from './addons/components.js';
5
+ import { DevtoolsAddonOptions } from './addons/devtools.js';
6
+ export { defineDevtoolsAddonOptions } from './addons/devtools.js';
7
+ import { I18nAddonOptions } from './addons/i18n.js';
8
+ export { defineI18nAddonOptions } from './addons/i18n.js';
9
+ import { VueLayoutsAddonOptions } from './addons/layouts.js';
10
+ export { defineVueLayoutsAddonOptions } from './addons/layouts.js';
11
+ import { MarkdownAddonOptions } from './addons/markdown.js';
12
+ export { defineMarkdownAddonOptions } from './addons/markdown.js';
13
+ import { PwaAddonOptions } from './addons/pwa.js';
14
+ export { definePwaAddonOptions } from './addons/pwa.js';
15
+ import { ReactAddonOptions } from './addons/react.js';
16
+ export { defineReactAddonOptions } from './addons/react.js';
17
+ import { TailwindCssAddonOptions } from './addons/tailwindcss.js';
18
+ export { defineTailwindCssAddonOptions } from './addons/tailwindcss.js';
19
+ import { UnoCssAddonOptions } from './addons/unocss.js';
20
+ export { defineUnoCssAddonOptions } from './addons/unocss.js';
21
+ import { ViteSsgAddonOptions } from './addons/vite-ssg.js';
22
+ export { defineViteSsgAddonOptions } from './addons/vite-ssg.js';
23
+ import { VitestAddonOptions } from './addons/vitest.js';
24
+ export { defineVitestAddonOptions } from './addons/vitest.js';
25
+ import { VueAddonOptions } from './addons/vue.js';
26
+ export { defineVueAddonOptions } from './addons/vue.js';
27
+ import { VueRouterAddonOptions } from './addons/vue-router.js';
28
+ export { defineVueRouterAddonOptions } from './addons/vue-router.js';
29
+ import { LibraryOptions, UserConfig, ConfigEnv, UserConfigExport } from 'vite';
30
+ import 'unplugin-auto-import/types';
31
+ import 'unplugin-vue-components/types';
32
+ import 'vite-plugin-vue-devtools';
33
+ import '@intlify/unplugin-vue-i18n';
34
+ import 'vite-plugin-vue-layouts';
35
+ import 'unplugin-vue-markdown/types';
36
+ import 'vite-plugin-pwa';
37
+ import '@vitejs/plugin-react';
38
+ import '@tailwindcss/vite';
39
+ import 'unocss/vite';
40
+ import 'vitest';
41
+ import '@vitejs/plugin-vue';
42
+ import 'unplugin-vue-router/types';
43
+
44
+ /**
45
+ * All supported addon identifiers (camelCase, matches ViteConfigOptions keys)
46
+ */
47
+ type AddonName = 'vue' | 'react' | 'unocss' | 'tailwindcss' | 'vueRouter' | 'vueLayouts' | 'autoImport' | 'components' | 'i18n' | 'devtools' | 'pwa' | 'markdown' | 'vitest' | 'viteSsg';
48
+ type AddonConfig<TOptions> = TOptions | boolean;
49
+ /**
50
+ * Addon 配置映射。
51
+ * 对象使用对应 addon 的真实配置类型,`true` 表示显式启用,`false` 表示显式关闭。
52
+ */
53
+ interface ViteConfigOptions {
54
+ /** Library mode entry used by createLibConfig; relative paths resolve from viteConfig.root. */
55
+ entry?: LibraryOptions['entry'];
56
+ viteConfig?: UserConfig;
57
+ vue?: AddonConfig<VueAddonOptions>;
58
+ react?: AddonConfig<ReactAddonOptions>;
59
+ unocss?: AddonConfig<UnoCssAddonOptions>;
60
+ /** Tailwind CSS 只自动接入官方 Vite/PostCSS 集成包,不把裸 tailwindcss 包当作插件入口。 */
61
+ tailwindcss?: AddonConfig<TailwindCssAddonOptions>;
62
+ vueRouter?: AddonConfig<VueRouterAddonOptions>;
63
+ /** Layouts 插件保持 optional peer,不在本仓库绑定其过期 Vite peer 范围。 */
64
+ vueLayouts?: AddonConfig<VueLayoutsAddonOptions>;
65
+ autoImport?: AddonConfig<AutoImportAddonOptions>;
66
+ components?: AddonConfig<ComponentsAddonOptions>;
67
+ i18n?: AddonConfig<I18nAddonOptions>;
68
+ devtools?: AddonConfig<DevtoolsAddonOptions>;
69
+ /** PWA 运行时仍由调用方项目安装;本包 devDependency 只服务源码类型检查和声明文件构建。 */
70
+ pwa?: AddonConfig<PwaAddonOptions>;
71
+ markdown?: AddonConfig<MarkdownAddonOptions>;
72
+ vitest?: AddonConfig<VitestAddonOptions>;
73
+ viteSsg?: AddonConfig<ViteSsgAddonOptions>;
74
+ }
75
+ /**
76
+ * 与 defineConfig 对齐的配置导出类型
77
+ * - 对象形式:直接传入 ViteConfigOptions
78
+ * - 函数形式:接收 Vite 的 ConfigEnv,返回 ViteConfigOptions
79
+ */
80
+ type ViteConfigExport = ViteConfigOptions | ((env: ConfigEnv) => ViteConfigOptions | Promise<ViteConfigOptions>);
81
+
82
+ /**
83
+ * 构建 Web App 应用专用的 Vite 配置文件
84
+ *
85
+ * @example
86
+ * // 对象形式
87
+ * export default createAppConfig({ vue: true })
88
+ *
89
+ * export default createAppConfig(({ mode }) => ({
90
+ * vue: true,
91
+ * viteConfig: {
92
+ * base: mode === 'development' ? '/' : '/app/',
93
+ * }
94
+ * }))
95
+ */
96
+ declare function createAppConfig(config?: ViteConfigExport): UserConfigExport;
97
+
98
+ type ViteFeatureEnableReason = 'dependency-detected' | 'explicit-disabled' | 'explicit-enabled' | 'dependency-missing';
99
+ interface ViteFeatureInspection {
100
+ name: AddonName;
101
+ enabled: boolean;
102
+ reason: ViteFeatureEnableReason;
103
+ triggers: string[];
104
+ matchedTriggers: string[];
105
+ requires: string[];
106
+ missingRequires: string[];
107
+ }
108
+ interface ViteFeatureInspectionResult {
109
+ root: string;
110
+ features: ViteFeatureInspection[];
111
+ }
112
+
113
+ /**
114
+ * 基于目标 root 输出 addon 决策报告;只做依赖图检查,不加载插件模块。
115
+ */
116
+ declare function inspectViteFeatures(options?: ViteConfigOptions): ViteFeatureInspectionResult;
117
+
118
+ /**
119
+ * 获取全局通用基础配置
120
+ */
121
+ declare function getBaseConfig(options?: ViteConfigOptions): Promise<UserConfig>;
122
+
123
+ /**
124
+ * 构建 Library(库项目)专用的 Vite 配置文件
125
+ *
126
+ * @example
127
+ * // 对象形式
128
+ * export default createLibConfig()
129
+ *
130
+ * export default createLibConfig(({ mode }) => ({
131
+ * viteConfig: {
132
+ * build: { sourcemap: mode !== 'production' },
133
+ * }
134
+ * }))
135
+ */
136
+ declare function createLibConfig(config?: ViteConfigExport): UserConfigExport;
137
+
138
+ export { type AddonName, AutoImportAddonOptions, ComponentsAddonOptions, DevtoolsAddonOptions, I18nAddonOptions, MarkdownAddonOptions, PwaAddonOptions, ReactAddonOptions, TailwindCssAddonOptions, UnoCssAddonOptions, type ViteConfigExport, type ViteConfigOptions, type ViteFeatureInspection, type ViteFeatureInspectionResult, ViteSsgAddonOptions, VitestAddonOptions, VueAddonOptions, VueLayoutsAddonOptions, VueRouterAddonOptions, createAppConfig, createLibConfig, getBaseConfig, inspectViteFeatures };