vite-plugin-jdists 1.0.1 → 1.0.3

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.
@@ -0,0 +1,48 @@
1
+ name: Node.js Package
2
+
3
+ on:
4
+ release:
5
+ types: [created]
6
+
7
+ jobs:
8
+ build:
9
+ runs-on: ubuntu-latest
10
+ steps:
11
+ - uses: actions/checkout@v4
12
+
13
+ # 1. 先设置 pnpm
14
+ - uses: pnpm/action-setup@v4
15
+ with:
16
+ version: 9.0.6 # 建议固定版本,避免意外变化
17
+
18
+ # 2. 再设置 Node.js 并配置 pnpm 缓存
19
+ - uses: actions/setup-node@v4
20
+ with:
21
+ node-version: 20
22
+ cache: 'pnpm' # 重要:启用 pnpm 缓存
23
+
24
+ - run: pnpm install
25
+ - run: pnpm build
26
+
27
+ publish-npm:
28
+ needs: build
29
+ runs-on: ubuntu-latest
30
+ steps:
31
+ - uses: actions/checkout@v4
32
+
33
+ # 1. 同样先设置 pnpm
34
+ - uses: pnpm/action-setup@v4
35
+ with:
36
+ version: 9.0.6 # 与 build 任务保持一致
37
+
38
+ # 2. 再设置 Node.js(包含 npm 注册表配置)
39
+ - uses: actions/setup-node@v4
40
+ with:
41
+ node-version: 20
42
+ registry-url: https://registry.npmjs.org/
43
+ cache: 'pnpm' # 发布任务也需要缓存
44
+
45
+ - run: pnpm install
46
+ - run: npm publish
47
+ env:
48
+ NODE_AUTH_TOKEN: ${{ secrets.NPM_SK }}
package/README.md CHANGED
@@ -5,6 +5,41 @@
5
5
 
6
6
  A vite plugin for [jdists](https://github.com/zswang/jdists).
7
7
 
8
+ 日常开发我们在代码中使用开发调试的一些代码,上线前需要手动删除保证不污染生产环境。比如密码或者调试代码,如果忘记这些操作,那么就会导致线上环境出现bug。为了解决这个问题,jdists 插件可以自动删除这些代码。
9
+
10
+ ## Features
11
+
12
+ ``` javascript
13
+
14
+ // 案例1:只在开发环境起作用的代码, 在生产环境会被自动删除
15
+
16
+ /* <dev> */
17
+ let password = '123456';
18
+ console.log('dev');
19
+ /* </dev> */
20
+
21
+ // 只在生产环境起作用的代码, 在开发环境会被自动删除
22
+
23
+ /* <prod> */
24
+ let password = '777777';
25
+ console.log('prod');
26
+ /* </prod> */
27
+
28
+
29
+ // 案例1:开发环境运行时使用的代码
30
+
31
+ let password = '123456';
32
+
33
+ /* <dev> */
34
+ let password = '777777';
35
+ console.log('prod');
36
+ /* </dev> */
37
+
38
+ ```
39
+
40
+ 这样做比判断process.env.NODE_ENV更方便,也更安全。build时,jdists会自动删除所有`<dev>`代码,只保留一份代码在运行时不会暴露任何给用户。
41
+
42
+
8
43
  ## Install
9
44
 
10
45
  ```bash
@@ -0,0 +1 @@
1
+ "use strict";const d=require("jdists"),m=require("@rollup/pluginutils");function p(c={}){const{include:f=/\.(js|ts|jsx|tsx|vue|svelte|astro|md)$/,exclude:g=[],remove:s=["debug","test"],trigger:i=["release"],config:n,...a}=c,o=m.createFilter(f,g),u=e=>Array.isArray(e)?e.join(","):e;return{name:"vite-plugin-jdists",enforce:"pre",transform(e,t){if(!o(t))return null;try{const r={fromString:!0,path:t,...a};return s&&(r.remove=u(s)),i&&(r.trigger=u(i)),n&&(r.config=n),{code:d.build(e,r),map:null}}catch{return{code:e,map:null}}},handleHotUpdate(e){const{file:t,server:r,modules:l}=e;if(o(t))return console.log(`[vite-plugin-jdists] 热更新文件: ${t}`),l}}}module.exports=p;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vite-plugin-jdists",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "description": "vite plugin jdists",
5
5
  "author": "neverland",
6
6
  "repository": "",
package/vite.config.js CHANGED
@@ -8,7 +8,7 @@ export default defineConfig({
8
8
  entry: path.resolve(__dirname, 'src/index.js'),
9
9
  name: 'vitePluginJdists',
10
10
  fileName: (format) => `index.${format}.js`,
11
- formats: ['es']
11
+ formats: ['es','cjs']
12
12
  },
13
13
  rollupOptions: {
14
14
  external: [