@gylautorun/dev-proxy-cookie 1.0.0-beta.1 → 1.0.0
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.
- package/README.md +2 -214
- package/dist/index.d.mts +5 -108
- package/dist/index.d.ts +5 -108
- package/dist/index.js +21 -174
- package/dist/index.min.js +4 -4
- package/dist/index.min.mjs +4 -4
- package/dist/index.mjs +21 -171
- package/package.json +1 -1
- package/src/proxy/core.ts +6 -36
- package/src/proxy/vite-adapter.ts +0 -21
- package/src/proxy/vite-cookie-plugin.ts +14 -48
- package/src/proxy/vite-plugin.ts +0 -11
- package/src/proxy/vue-proxy-config.ts +7 -48
- package/src/utils/index.ts +1 -2
- package/src/utils/env-detector.ts +0 -155
package/README.md
CHANGED
|
@@ -239,32 +239,11 @@ export default defineConfig({
|
|
|
239
239
|
|
|
240
240
|
```javascript
|
|
241
241
|
const getCookie = createFileCookieGetter('./cookie.txt', {
|
|
242
|
-
watch: true, // 是否监听文件变化,默认
|
|
242
|
+
watch: true, // 是否监听文件变化,默认 false
|
|
243
243
|
debug: true, // 是否输出调试日志,默认 false
|
|
244
|
-
isDev: process.env.NODE_ENV === 'development', // 是否为开发环境(优先级最高)
|
|
245
244
|
});
|
|
246
245
|
```
|
|
247
246
|
|
|
248
|
-
**选项:**
|
|
249
|
-
|
|
250
|
-
- `cookieFile` (string): Cookie 文件路径(必需)
|
|
251
|
-
- `watch` (boolean | 'auto'): 是否监听文件变化,默认 `'auto'`
|
|
252
|
-
- `true`: 始终监听
|
|
253
|
-
- `false`: 从不监听
|
|
254
|
-
- `'auto'`: 根据环境自动判断(默认)
|
|
255
|
-
- `debug` (boolean): 是否输出调试日志,默认 `false`
|
|
256
|
-
- `productionEnvs` (string[]): 自定义生产环境变量列表,用于判断是否禁用监听
|
|
257
|
-
- `isDev` (boolean): 是否为开发环境(优先级最高)
|
|
258
|
-
- 设置此参数后,将直接决定是否启用文件监听
|
|
259
|
-
- `true`: 启用监听(开发模式)
|
|
260
|
-
- `false`: 禁用监听(生产模式)
|
|
261
|
-
|
|
262
|
-
**参数优先级:**
|
|
263
|
-
|
|
264
|
-
```
|
|
265
|
-
isDev (最高) → watch (中等) → 智能检测 (最低)
|
|
266
|
-
```
|
|
267
|
-
|
|
268
247
|
### Vite 相关
|
|
269
248
|
|
|
270
249
|
#### viteAutoProxyCookie(options)
|
|
@@ -286,10 +265,6 @@ Vite 插件,自动配置代理和 Cookie 注入。
|
|
|
286
265
|
- `includePaths` (string[]): 只代理这些路径
|
|
287
266
|
- `ignorePaths` (array): 忽略的路径
|
|
288
267
|
- `hooks` (object): 钩子函数配置
|
|
289
|
-
- `isDev` (boolean): 是否为开发环境(优先级最高)
|
|
290
|
-
- 设置此参数后,将直接决定是否启用文件监听
|
|
291
|
-
- `true`: 启用监听(开发模式)
|
|
292
|
-
- `false`: 禁用监听(生产模式)
|
|
293
268
|
|
|
294
269
|
#### viteDevProxyCookie(options)
|
|
295
270
|
|
|
@@ -300,14 +275,6 @@ Vite 插件,基础 Cookie 注入功能。
|
|
|
300
275
|
- `cookieFile` (string): Cookie 文件路径(必需)
|
|
301
276
|
- `debug` (boolean): 是否开启调试日志,默认 `false`
|
|
302
277
|
- `onCookieChange` ((cookie: string) => void): Cookie 变化回调
|
|
303
|
-
- `watch` (boolean | 'auto'): 是否监听文件变化,默认 `'auto'`
|
|
304
|
-
- `true`: 始终监听
|
|
305
|
-
- `false`: 从不监听
|
|
306
|
-
- `'auto'`: 根据环境自动判断(默认)
|
|
307
|
-
- `isDev` (boolean): 是否为开发环境(优先级最高)
|
|
308
|
-
- 设置此参数后,将直接决定是否启用文件监听
|
|
309
|
-
- `true`: 启用监听(开发模式)
|
|
310
|
-
- `false`: 禁用监听(生产模式)
|
|
311
278
|
|
|
312
279
|
### 工具类
|
|
313
280
|
|
|
@@ -491,8 +458,6 @@ src/
|
|
|
491
458
|
|
|
492
459
|
## 最佳实践
|
|
493
460
|
|
|
494
|
-
### 推荐配置
|
|
495
|
-
|
|
496
461
|
```javascript
|
|
497
462
|
// cookie.txt - 存放登录后的 Cookie
|
|
498
463
|
session-id=abc123
|
|
@@ -510,10 +475,7 @@ module.exports = {
|
|
|
510
475
|
devServer: {
|
|
511
476
|
proxy: createAutoProxyConfig({
|
|
512
477
|
target: 'http://localhost:3000',
|
|
513
|
-
getCookie: createFileCookieGetter('./cookie.txt', {
|
|
514
|
-
watch: 'auto', // 自动判断环境
|
|
515
|
-
debug: true,
|
|
516
|
-
}),
|
|
478
|
+
getCookie: createFileCookieGetter('./cookie.txt', { watch: true }),
|
|
517
479
|
ignorePaths: ['/assets/', '/public/'],
|
|
518
480
|
}),
|
|
519
481
|
},
|
|
@@ -527,51 +489,12 @@ export default defineConfig({
|
|
|
527
489
|
viteAutoProxyCookie({
|
|
528
490
|
cookieFile: './cookie.txt',
|
|
529
491
|
target: 'http://localhost:3000',
|
|
530
|
-
isDev: process.env.NODE_ENV === 'development', // 显式指定环境
|
|
531
492
|
ignorePaths: ['/assets/', '/public/'],
|
|
532
493
|
}),
|
|
533
494
|
],
|
|
534
495
|
});
|
|
535
496
|
```
|
|
536
497
|
|
|
537
|
-
### 环境配置建议
|
|
538
|
-
|
|
539
|
-
**开发环境(推荐使用 `isDev`)**
|
|
540
|
-
|
|
541
|
-
```javascript
|
|
542
|
-
const getCookie = createFileCookieGetter('./cookie.txt', {
|
|
543
|
-
isDev: process.env.NODE_ENV === 'development',
|
|
544
|
-
debug: true,
|
|
545
|
-
});
|
|
546
|
-
```
|
|
547
|
-
|
|
548
|
-
**预发布环境(需要调试)**
|
|
549
|
-
|
|
550
|
-
```javascript
|
|
551
|
-
const getCookie = createFileCookieGetter('./cookie.txt', {
|
|
552
|
-
isDev: true, // 强制启用监听
|
|
553
|
-
debug: true,
|
|
554
|
-
});
|
|
555
|
-
```
|
|
556
|
-
|
|
557
|
-
**生产环境(禁用监听)**
|
|
558
|
-
|
|
559
|
-
```javascript
|
|
560
|
-
const getCookie = createFileCookieGetter('./cookie.txt', {
|
|
561
|
-
isDev: false, // 强制禁用监听
|
|
562
|
-
debug: false,
|
|
563
|
-
});
|
|
564
|
-
```
|
|
565
|
-
|
|
566
|
-
**自动检测(默认行为)**
|
|
567
|
-
|
|
568
|
-
```javascript
|
|
569
|
-
const getCookie = createFileCookieGetter('./cookie.txt', {
|
|
570
|
-
watch: 'auto', // 默认值,自动判断环境
|
|
571
|
-
debug: true,
|
|
572
|
-
});
|
|
573
|
-
```
|
|
574
|
-
|
|
575
498
|
## 常见问题
|
|
576
499
|
|
|
577
500
|
### Q: Cookie 文件修改后没有生效?
|
|
@@ -599,145 +522,10 @@ A: Cookie 值会被自动处理,支持包含 `/`、`+`、`=` 等特殊字符
|
|
|
599
522
|
|
|
600
523
|
A: 启用 `debug: true` 选项,控制台会输出详细的代理日志。也可以在 `hooks.onProxyReq` 中添加自定义日志。
|
|
601
524
|
|
|
602
|
-
### Q: 构建完成后进程不退出,一直挂起?
|
|
603
|
-
|
|
604
|
-
A: 这是由于文件监听器在生产环境下仍然运行导致的。解决方案:
|
|
605
|
-
|
|
606
|
-
**方案一:使用 `isDev` 参数(推荐)**
|
|
607
|
-
|
|
608
|
-
```javascript
|
|
609
|
-
// Vue CLI 项目
|
|
610
|
-
const getCookie = createFileCookieGetter('./cookie.txt', {
|
|
611
|
-
isDev: process.env.NODE_ENV === 'development',
|
|
612
|
-
debug: true,
|
|
613
|
-
});
|
|
614
|
-
|
|
615
|
-
// Vite 项目
|
|
616
|
-
export default defineConfig({
|
|
617
|
-
plugins: [
|
|
618
|
-
viteDevProxyCookie({
|
|
619
|
-
cookieFile: './cookie.txt',
|
|
620
|
-
isDev: process.env.NODE_ENV === 'development',
|
|
621
|
-
}),
|
|
622
|
-
],
|
|
623
|
-
});
|
|
624
|
-
```
|
|
625
|
-
|
|
626
|
-
**方案二:设置 `watch: false`**
|
|
627
|
-
|
|
628
|
-
```javascript
|
|
629
|
-
const getCookie = createFileCookieGetter('./cookie.txt', {
|
|
630
|
-
watch: false, // 禁用文件监听
|
|
631
|
-
});
|
|
632
|
-
```
|
|
633
|
-
|
|
634
|
-
**方案三:使用智能检测(默认行为)**
|
|
635
|
-
|
|
636
|
-
```javascript
|
|
637
|
-
const getCookie = createFileCookieGetter('./cookie.txt', {
|
|
638
|
-
watch: 'auto', // 默认值,自动判断环境
|
|
639
|
-
});
|
|
640
|
-
```
|
|
641
|
-
|
|
642
|
-
智能检测会检查以下环境变量:
|
|
643
|
-
|
|
644
|
-
- `NODE_ENV`、`BUILD_MODE`、`VUE_APP_ENV`、`VITE_NODE_ENV` 等
|
|
645
|
-
- CI/CD 环境标识(`CI`)
|
|
646
|
-
- npm 生命周期事件(如 `build`)
|
|
647
|
-
- 进程参数(如 `--mode=production`)
|
|
648
|
-
|
|
649
|
-
### Q: 如何在预发布环境(staging/uat)启用文件监听?
|
|
650
|
-
|
|
651
|
-
A: 预发布环境通常需要调试,建议显式设置 `isDev: true`:
|
|
652
|
-
|
|
653
|
-
```javascript
|
|
654
|
-
const getCookie = createFileCookieGetter('./cookie.txt', {
|
|
655
|
-
isDev: true, // 强制启用监听
|
|
656
|
-
debug: true,
|
|
657
|
-
});
|
|
658
|
-
```
|
|
659
|
-
|
|
660
|
-
或者使用 `watch: true`:
|
|
661
|
-
|
|
662
|
-
```javascript
|
|
663
|
-
const getCookie = createFileCookieGetter('./cookie.txt', {
|
|
664
|
-
watch: true, // 始终监听
|
|
665
|
-
debug: true,
|
|
666
|
-
});
|
|
667
|
-
```
|
|
668
|
-
|
|
669
|
-
### Q: `isDev`、`watch` 和智能检测的优先级是什么?
|
|
670
|
-
|
|
671
|
-
A: 优先级从高到低:
|
|
672
|
-
|
|
673
|
-
```
|
|
674
|
-
isDev (最高) → watch (中等) → 智能检测 (最低)
|
|
675
|
-
```
|
|
676
|
-
|
|
677
|
-
- 如果设置了 `isDev`,直接使用该值
|
|
678
|
-
- 如果 `isDev` 未设置但 `watch` 为 `true` 或 `false`,使用 `watch` 值
|
|
679
|
-
- 如果都未设置或 `watch` 为 `'auto'`,使用智能检测
|
|
680
|
-
|
|
681
|
-
### Q: 如何自定义生产环境检测?
|
|
682
|
-
|
|
683
|
-
A: 使用 `productionEnvs` 参数:
|
|
684
|
-
|
|
685
|
-
```javascript
|
|
686
|
-
const getCookie = createFileCookieGetter('./cookie.txt', {
|
|
687
|
-
productionEnvs: ['MY_APP_ENV', 'BUILD_TYPE'], // 自定义环境变量
|
|
688
|
-
debug: true,
|
|
689
|
-
});
|
|
690
|
-
```
|
|
691
|
-
|
|
692
|
-
### Q: ESLint 报错 `import/no-extraneous-dependencies`?
|
|
693
|
-
|
|
694
|
-
A: 确保在 `.eslintrc.js` 中正确配置:
|
|
695
|
-
|
|
696
|
-
```javascript
|
|
697
|
-
module.exports = {
|
|
698
|
-
// ...
|
|
699
|
-
rules: {
|
|
700
|
-
'import/no-extraneous-dependencies': ['error', {
|
|
701
|
-
devDependencies: true,
|
|
702
|
-
optionalDependencies: false,
|
|
703
|
-
}],
|
|
704
|
-
},
|
|
705
|
-
};
|
|
706
|
-
```
|
|
707
|
-
|
|
708
|
-
### Q: 如何查看当前环境检测的详细信息?
|
|
709
|
-
|
|
710
|
-
A: 启用 `debug: true` 选项:
|
|
711
|
-
|
|
712
|
-
```javascript
|
|
713
|
-
const getCookie = createFileCookieGetter('./cookie.txt', {
|
|
714
|
-
watch: 'auto',
|
|
715
|
-
debug: true, // 输出环境检测日志
|
|
716
|
-
});
|
|
717
|
-
```
|
|
718
|
-
|
|
719
|
-
控制台会输出类似信息:
|
|
720
|
-
|
|
721
|
-
```
|
|
722
|
-
[env-detector] Auto-detected production mode - disabling watch
|
|
723
|
-
```
|
|
724
|
-
|
|
725
|
-
或
|
|
726
|
-
|
|
727
|
-
```
|
|
728
|
-
[env-detector] Auto-detected development mode - enabling watch
|
|
729
|
-
```
|
|
730
|
-
|
|
731
525
|
## 发布流程
|
|
732
526
|
|
|
733
527
|
完整的发布流程文档请查看:[docs/release.md](docs/release.md)
|
|
734
528
|
|
|
735
|
-
## 问题排查
|
|
736
|
-
|
|
737
|
-
### 构建进程不退出问题
|
|
738
|
-
|
|
739
|
-
如果遇到构建完成后进程不退出的问题,请查看详细解决方案:[docs/build-hang-issue.md](docs/build-hang-issue.md)
|
|
740
|
-
|
|
741
529
|
## License
|
|
742
530
|
|
|
743
531
|
MIT License
|
package/dist/index.d.mts
CHANGED
|
@@ -34,15 +34,6 @@ interface AutoProxyCookieOptions {
|
|
|
34
34
|
[header: string]: string;
|
|
35
35
|
};
|
|
36
36
|
hooks?: ProxyHooks;
|
|
37
|
-
/**
|
|
38
|
-
* 是否为开发环境(优先级最高)
|
|
39
|
-
* 设置此参数后,将直接决定是否启用文件监听:
|
|
40
|
-
* - true: 启用监听(开发模式)
|
|
41
|
-
* - false: 禁用监听(生产模式)
|
|
42
|
-
*
|
|
43
|
-
* 使用示例: isDev: process.env.NODE_ENV === 'development'
|
|
44
|
-
*/
|
|
45
|
-
isDev?: boolean;
|
|
46
37
|
}
|
|
47
38
|
declare class AutoProxyCookie {
|
|
48
39
|
private options;
|
|
@@ -70,15 +61,6 @@ declare function createAutoProxyCookie(options: AutoProxyCookieOptions): AutoPro
|
|
|
70
61
|
|
|
71
62
|
interface ViteAutoProxyCookiePluginOptions extends AutoProxyCookieOptions {
|
|
72
63
|
name?: string;
|
|
73
|
-
/**
|
|
74
|
-
* 是否为开发环境(优先级最高)
|
|
75
|
-
* 设置此参数后,将直接决定是否启用文件监听:
|
|
76
|
-
* - true: 启用监听(开发模式)
|
|
77
|
-
* - false: 禁用监听(生产模式)
|
|
78
|
-
*
|
|
79
|
-
* 使用示例: isDev: process.env.NODE_ENV === 'development'
|
|
80
|
-
*/
|
|
81
|
-
isDev?: boolean;
|
|
82
64
|
}
|
|
83
65
|
declare function viteAutoProxyCookie(options: ViteAutoProxyCookiePluginOptions): Plugin;
|
|
84
66
|
|
|
@@ -86,55 +68,19 @@ interface ViteDevProxyCookieOptions {
|
|
|
86
68
|
cookieFile: string;
|
|
87
69
|
debug?: boolean;
|
|
88
70
|
onCookieChange?: (cookie: string) => void;
|
|
89
|
-
/**
|
|
90
|
-
* 是否监听文件变化
|
|
91
|
-
* - true: 始终监听
|
|
92
|
-
* - false: 从不监听
|
|
93
|
-
* - 'auto': 根据环境自动判断(默认)
|
|
94
|
-
* @default 'auto'
|
|
95
|
-
*/
|
|
96
|
-
watch?: boolean | 'auto';
|
|
97
|
-
/**
|
|
98
|
-
* 是否为开发环境(优先级最高)
|
|
99
|
-
* 设置此参数后,将直接决定是否启用文件监听:
|
|
100
|
-
* - true: 启用监听(开发模式)
|
|
101
|
-
* - false: 禁用监听(生产模式)
|
|
102
|
-
*
|
|
103
|
-
* 使用示例: isDev: process.env.NODE_ENV === 'development'
|
|
104
|
-
*/
|
|
105
|
-
isDev?: boolean;
|
|
106
71
|
}
|
|
107
72
|
declare function viteDevProxyCookie(options: ViteDevProxyCookieOptions): Plugin;
|
|
108
73
|
|
|
109
74
|
/** Options for {@link createFileCookieGetter}. */
|
|
110
75
|
interface CreateFileCookieGetterOptions {
|
|
111
76
|
/**
|
|
112
|
-
*
|
|
113
|
-
* -
|
|
114
|
-
*
|
|
115
|
-
* - 'auto': 根据环境自动判断(默认)
|
|
116
|
-
*
|
|
117
|
-
* Cookie 值每次代理请求时都会从磁盘读取,因此即使 watch 为 false,
|
|
118
|
-
* 修改 cookie 文件后也不需要重启开发服务器。
|
|
119
|
-
* @default 'auto'
|
|
77
|
+
* Watch the file for logging when it changes. Cookie value is always read from disk on each proxy request,
|
|
78
|
+
* so you do not need a dev-server restart when this is false.
|
|
79
|
+
* @default true
|
|
120
80
|
*/
|
|
121
|
-
watch?: boolean
|
|
81
|
+
watch?: boolean;
|
|
122
82
|
/** Log when the cookie file changes (only if `watch` is true). @default false */
|
|
123
83
|
debug?: boolean;
|
|
124
|
-
/**
|
|
125
|
-
* 自定义生产环境变量名称列表,用于判断是否禁用监听
|
|
126
|
-
* 例如: ['MY_APP_ENV', 'BUILD_TYPE']
|
|
127
|
-
*/
|
|
128
|
-
productionEnvs?: string[];
|
|
129
|
-
/**
|
|
130
|
-
* 是否为开发环境(优先级最高)
|
|
131
|
-
* 设置此参数后,将直接决定是否启用文件监听:
|
|
132
|
-
* - true: 启用监听(开发模式)
|
|
133
|
-
* - false: 禁用监听(生产模式)
|
|
134
|
-
*
|
|
135
|
-
* 使用示例: isDev: process.env.NODE_ENV === 'development'
|
|
136
|
-
*/
|
|
137
|
-
isDev?: boolean;
|
|
138
84
|
}
|
|
139
85
|
interface VueProxyConfigOptions {
|
|
140
86
|
getCookie?: () => string;
|
|
@@ -176,23 +122,6 @@ interface UnifiedProxyCookieOptions {
|
|
|
176
122
|
includePaths?: string[];
|
|
177
123
|
onCookieChange?: (cookie: string) => void;
|
|
178
124
|
mode?: 'auto' | 'proxy' | 'cookie';
|
|
179
|
-
/**
|
|
180
|
-
* 是否监听文件变化
|
|
181
|
-
* - true: 始终监听
|
|
182
|
-
* - false: 从不监听
|
|
183
|
-
* - 'auto': 根据环境自动判断(默认)
|
|
184
|
-
* @default 'auto'
|
|
185
|
-
*/
|
|
186
|
-
watch?: boolean | 'auto';
|
|
187
|
-
/**
|
|
188
|
-
* 是否为开发环境(优先级最高)
|
|
189
|
-
* 设置此参数后,将直接决定是否启用文件监听:
|
|
190
|
-
* - true: 启用监听(开发模式)
|
|
191
|
-
* - false: 禁用监听(生产模式)
|
|
192
|
-
*
|
|
193
|
-
* 使用示例: isDev: process.env.NODE_ENV === 'development'
|
|
194
|
-
*/
|
|
195
|
-
isDev?: boolean;
|
|
196
125
|
}
|
|
197
126
|
declare function createDevProxyCookie(options: UnifiedProxyCookieOptions): Plugin;
|
|
198
127
|
declare function getViteVersion(): string | null;
|
|
@@ -229,36 +158,4 @@ declare class CookieWatcher {
|
|
|
229
158
|
}
|
|
230
159
|
declare function watchCookieFile(cookieFile: string, onCookieChange: (cookie: string) => void, onError?: (error: Error) => void): CookieWatcher;
|
|
231
160
|
|
|
232
|
-
|
|
233
|
-
* 环境检测工具函数
|
|
234
|
-
* 用于智能判断当前是否为生产构建环境
|
|
235
|
-
*/
|
|
236
|
-
/**
|
|
237
|
-
* 判断环境变量值是否表示生产环境
|
|
238
|
-
*/
|
|
239
|
-
declare function isProductionValue(value: string): boolean;
|
|
240
|
-
/**
|
|
241
|
-
* 智能检测当前是否为生产构建环境
|
|
242
|
-
* 通过多种方式综合判断,避免依赖单一环境变量
|
|
243
|
-
*
|
|
244
|
-
* @param customEnvs 用户自定义的环境变量名称列表
|
|
245
|
-
* @param debug 是否输出调试日志
|
|
246
|
-
* @param loggerPrefix 日志前缀,用于区分不同模块
|
|
247
|
-
* @returns 是否为生产环境
|
|
248
|
-
*/
|
|
249
|
-
declare function detectProductionEnvironment(customEnvs?: string[], debug?: boolean, loggerPrefix?: string): boolean;
|
|
250
|
-
/**
|
|
251
|
-
* 判断是否应该启用文件监听
|
|
252
|
-
*
|
|
253
|
-
* 注意:此函数仅在 isDev 参数未设置时调用,用于智能判断环境
|
|
254
|
-
* 如果用户已通过 isDev 参数明确指定环境,则不会调用此函数
|
|
255
|
-
*
|
|
256
|
-
* @param watch 用户设置的 watch 选项
|
|
257
|
-
* @param customEnvs 用户自定义的环境变量列表
|
|
258
|
-
* @param debug 是否输出调试日志
|
|
259
|
-
* @param loggerPrefix 日志前缀
|
|
260
|
-
* @returns 是否应该启用监听
|
|
261
|
-
*/
|
|
262
|
-
declare function shouldEnableWatch(watch: boolean | 'auto', customEnvs?: string[], debug?: boolean, loggerPrefix?: string): boolean;
|
|
263
|
-
|
|
264
|
-
export { type AutoProxyConfigOptions, AutoProxyCookie, type AutoProxyCookieOptions, CookieReader, type CookieReaderOptions, CookieWatcher, type CookieWatcherOptions, type CreateFileCookieGetterOptions, type ErrorCallback, type ProxyConfig, type ProxyHooks, type UnifiedProxyCookieOptions, type ViteAutoProxyCookiePluginOptions, type ViteDevProxyCookieOptions, type VueProxyConfigOptions, createAutoProxyConfig, createAutoProxyCookie, createCookieGetter, createDevProxyCookie, createFileCookieGetter, createVueProxyConfig, detectProductionEnvironment, getViteMajorVersion, getViteVersion, isProductionValue, shouldEnableWatch, viteAutoProxyCookie, viteDevProxyCookie, watchCookieFile };
|
|
161
|
+
export { type AutoProxyConfigOptions, AutoProxyCookie, type AutoProxyCookieOptions, CookieReader, type CookieReaderOptions, CookieWatcher, type CookieWatcherOptions, type CreateFileCookieGetterOptions, type ErrorCallback, type ProxyConfig, type ProxyHooks, type UnifiedProxyCookieOptions, type ViteAutoProxyCookiePluginOptions, type ViteDevProxyCookieOptions, type VueProxyConfigOptions, createAutoProxyConfig, createAutoProxyCookie, createCookieGetter, createDevProxyCookie, createFileCookieGetter, createVueProxyConfig, getViteMajorVersion, getViteVersion, viteAutoProxyCookie, viteDevProxyCookie, watchCookieFile };
|
package/dist/index.d.ts
CHANGED
|
@@ -34,15 +34,6 @@ interface AutoProxyCookieOptions {
|
|
|
34
34
|
[header: string]: string;
|
|
35
35
|
};
|
|
36
36
|
hooks?: ProxyHooks;
|
|
37
|
-
/**
|
|
38
|
-
* 是否为开发环境(优先级最高)
|
|
39
|
-
* 设置此参数后,将直接决定是否启用文件监听:
|
|
40
|
-
* - true: 启用监听(开发模式)
|
|
41
|
-
* - false: 禁用监听(生产模式)
|
|
42
|
-
*
|
|
43
|
-
* 使用示例: isDev: process.env.NODE_ENV === 'development'
|
|
44
|
-
*/
|
|
45
|
-
isDev?: boolean;
|
|
46
37
|
}
|
|
47
38
|
declare class AutoProxyCookie {
|
|
48
39
|
private options;
|
|
@@ -70,15 +61,6 @@ declare function createAutoProxyCookie(options: AutoProxyCookieOptions): AutoPro
|
|
|
70
61
|
|
|
71
62
|
interface ViteAutoProxyCookiePluginOptions extends AutoProxyCookieOptions {
|
|
72
63
|
name?: string;
|
|
73
|
-
/**
|
|
74
|
-
* 是否为开发环境(优先级最高)
|
|
75
|
-
* 设置此参数后,将直接决定是否启用文件监听:
|
|
76
|
-
* - true: 启用监听(开发模式)
|
|
77
|
-
* - false: 禁用监听(生产模式)
|
|
78
|
-
*
|
|
79
|
-
* 使用示例: isDev: process.env.NODE_ENV === 'development'
|
|
80
|
-
*/
|
|
81
|
-
isDev?: boolean;
|
|
82
64
|
}
|
|
83
65
|
declare function viteAutoProxyCookie(options: ViteAutoProxyCookiePluginOptions): Plugin;
|
|
84
66
|
|
|
@@ -86,55 +68,19 @@ interface ViteDevProxyCookieOptions {
|
|
|
86
68
|
cookieFile: string;
|
|
87
69
|
debug?: boolean;
|
|
88
70
|
onCookieChange?: (cookie: string) => void;
|
|
89
|
-
/**
|
|
90
|
-
* 是否监听文件变化
|
|
91
|
-
* - true: 始终监听
|
|
92
|
-
* - false: 从不监听
|
|
93
|
-
* - 'auto': 根据环境自动判断(默认)
|
|
94
|
-
* @default 'auto'
|
|
95
|
-
*/
|
|
96
|
-
watch?: boolean | 'auto';
|
|
97
|
-
/**
|
|
98
|
-
* 是否为开发环境(优先级最高)
|
|
99
|
-
* 设置此参数后,将直接决定是否启用文件监听:
|
|
100
|
-
* - true: 启用监听(开发模式)
|
|
101
|
-
* - false: 禁用监听(生产模式)
|
|
102
|
-
*
|
|
103
|
-
* 使用示例: isDev: process.env.NODE_ENV === 'development'
|
|
104
|
-
*/
|
|
105
|
-
isDev?: boolean;
|
|
106
71
|
}
|
|
107
72
|
declare function viteDevProxyCookie(options: ViteDevProxyCookieOptions): Plugin;
|
|
108
73
|
|
|
109
74
|
/** Options for {@link createFileCookieGetter}. */
|
|
110
75
|
interface CreateFileCookieGetterOptions {
|
|
111
76
|
/**
|
|
112
|
-
*
|
|
113
|
-
* -
|
|
114
|
-
*
|
|
115
|
-
* - 'auto': 根据环境自动判断(默认)
|
|
116
|
-
*
|
|
117
|
-
* Cookie 值每次代理请求时都会从磁盘读取,因此即使 watch 为 false,
|
|
118
|
-
* 修改 cookie 文件后也不需要重启开发服务器。
|
|
119
|
-
* @default 'auto'
|
|
77
|
+
* Watch the file for logging when it changes. Cookie value is always read from disk on each proxy request,
|
|
78
|
+
* so you do not need a dev-server restart when this is false.
|
|
79
|
+
* @default true
|
|
120
80
|
*/
|
|
121
|
-
watch?: boolean
|
|
81
|
+
watch?: boolean;
|
|
122
82
|
/** Log when the cookie file changes (only if `watch` is true). @default false */
|
|
123
83
|
debug?: boolean;
|
|
124
|
-
/**
|
|
125
|
-
* 自定义生产环境变量名称列表,用于判断是否禁用监听
|
|
126
|
-
* 例如: ['MY_APP_ENV', 'BUILD_TYPE']
|
|
127
|
-
*/
|
|
128
|
-
productionEnvs?: string[];
|
|
129
|
-
/**
|
|
130
|
-
* 是否为开发环境(优先级最高)
|
|
131
|
-
* 设置此参数后,将直接决定是否启用文件监听:
|
|
132
|
-
* - true: 启用监听(开发模式)
|
|
133
|
-
* - false: 禁用监听(生产模式)
|
|
134
|
-
*
|
|
135
|
-
* 使用示例: isDev: process.env.NODE_ENV === 'development'
|
|
136
|
-
*/
|
|
137
|
-
isDev?: boolean;
|
|
138
84
|
}
|
|
139
85
|
interface VueProxyConfigOptions {
|
|
140
86
|
getCookie?: () => string;
|
|
@@ -176,23 +122,6 @@ interface UnifiedProxyCookieOptions {
|
|
|
176
122
|
includePaths?: string[];
|
|
177
123
|
onCookieChange?: (cookie: string) => void;
|
|
178
124
|
mode?: 'auto' | 'proxy' | 'cookie';
|
|
179
|
-
/**
|
|
180
|
-
* 是否监听文件变化
|
|
181
|
-
* - true: 始终监听
|
|
182
|
-
* - false: 从不监听
|
|
183
|
-
* - 'auto': 根据环境自动判断(默认)
|
|
184
|
-
* @default 'auto'
|
|
185
|
-
*/
|
|
186
|
-
watch?: boolean | 'auto';
|
|
187
|
-
/**
|
|
188
|
-
* 是否为开发环境(优先级最高)
|
|
189
|
-
* 设置此参数后,将直接决定是否启用文件监听:
|
|
190
|
-
* - true: 启用监听(开发模式)
|
|
191
|
-
* - false: 禁用监听(生产模式)
|
|
192
|
-
*
|
|
193
|
-
* 使用示例: isDev: process.env.NODE_ENV === 'development'
|
|
194
|
-
*/
|
|
195
|
-
isDev?: boolean;
|
|
196
125
|
}
|
|
197
126
|
declare function createDevProxyCookie(options: UnifiedProxyCookieOptions): Plugin;
|
|
198
127
|
declare function getViteVersion(): string | null;
|
|
@@ -229,36 +158,4 @@ declare class CookieWatcher {
|
|
|
229
158
|
}
|
|
230
159
|
declare function watchCookieFile(cookieFile: string, onCookieChange: (cookie: string) => void, onError?: (error: Error) => void): CookieWatcher;
|
|
231
160
|
|
|
232
|
-
|
|
233
|
-
* 环境检测工具函数
|
|
234
|
-
* 用于智能判断当前是否为生产构建环境
|
|
235
|
-
*/
|
|
236
|
-
/**
|
|
237
|
-
* 判断环境变量值是否表示生产环境
|
|
238
|
-
*/
|
|
239
|
-
declare function isProductionValue(value: string): boolean;
|
|
240
|
-
/**
|
|
241
|
-
* 智能检测当前是否为生产构建环境
|
|
242
|
-
* 通过多种方式综合判断,避免依赖单一环境变量
|
|
243
|
-
*
|
|
244
|
-
* @param customEnvs 用户自定义的环境变量名称列表
|
|
245
|
-
* @param debug 是否输出调试日志
|
|
246
|
-
* @param loggerPrefix 日志前缀,用于区分不同模块
|
|
247
|
-
* @returns 是否为生产环境
|
|
248
|
-
*/
|
|
249
|
-
declare function detectProductionEnvironment(customEnvs?: string[], debug?: boolean, loggerPrefix?: string): boolean;
|
|
250
|
-
/**
|
|
251
|
-
* 判断是否应该启用文件监听
|
|
252
|
-
*
|
|
253
|
-
* 注意:此函数仅在 isDev 参数未设置时调用,用于智能判断环境
|
|
254
|
-
* 如果用户已通过 isDev 参数明确指定环境,则不会调用此函数
|
|
255
|
-
*
|
|
256
|
-
* @param watch 用户设置的 watch 选项
|
|
257
|
-
* @param customEnvs 用户自定义的环境变量列表
|
|
258
|
-
* @param debug 是否输出调试日志
|
|
259
|
-
* @param loggerPrefix 日志前缀
|
|
260
|
-
* @returns 是否应该启用监听
|
|
261
|
-
*/
|
|
262
|
-
declare function shouldEnableWatch(watch: boolean | 'auto', customEnvs?: string[], debug?: boolean, loggerPrefix?: string): boolean;
|
|
263
|
-
|
|
264
|
-
export { type AutoProxyConfigOptions, AutoProxyCookie, type AutoProxyCookieOptions, CookieReader, type CookieReaderOptions, CookieWatcher, type CookieWatcherOptions, type CreateFileCookieGetterOptions, type ErrorCallback, type ProxyConfig, type ProxyHooks, type UnifiedProxyCookieOptions, type ViteAutoProxyCookiePluginOptions, type ViteDevProxyCookieOptions, type VueProxyConfigOptions, createAutoProxyConfig, createAutoProxyCookie, createCookieGetter, createDevProxyCookie, createFileCookieGetter, createVueProxyConfig, detectProductionEnvironment, getViteMajorVersion, getViteVersion, isProductionValue, shouldEnableWatch, viteAutoProxyCookie, viteDevProxyCookie, watchCookieFile };
|
|
161
|
+
export { type AutoProxyConfigOptions, AutoProxyCookie, type AutoProxyCookieOptions, CookieReader, type CookieReaderOptions, CookieWatcher, type CookieWatcherOptions, type CreateFileCookieGetterOptions, type ErrorCallback, type ProxyConfig, type ProxyHooks, type UnifiedProxyCookieOptions, type ViteAutoProxyCookiePluginOptions, type ViteDevProxyCookieOptions, type VueProxyConfigOptions, createAutoProxyConfig, createAutoProxyCookie, createCookieGetter, createDevProxyCookie, createFileCookieGetter, createVueProxyConfig, getViteMajorVersion, getViteVersion, viteAutoProxyCookie, viteDevProxyCookie, watchCookieFile };
|