@empjs/plugin-react 3.0.0-rc.8 → 3.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/dist/index.cjs ADDED
@@ -0,0 +1 @@
1
+ "use strict";var g=Object.create;var a=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var v=Object.getPrototypeOf,d=Object.prototype.hasOwnProperty;var R=(r,e)=>{for(var t in e)a(r,t,{get:e[t],enumerable:!0})},m=(r,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of y(e))!d.call(r,n)&&n!==t&&a(r,n,{get:()=>e[n],enumerable:!(i=f(e,n))||i.enumerable});return r};var p=(r,e,t)=>(t=r!=null?g(v(r)):{},m(e||!r||!r.__esModule?a(t,"default",{value:r,enumerable:!0}):t,r)),h=r=>m(a({},"__esModule",{value:!0}),r);var j={};R(j,{default:()=>b});module.exports=h(j);var b=(r={})=>({name:"@empjs/plugin-react",async rsConfig(e){let{chain:t,deepAssign:i}=e;r=i({hmr:!0,svgrQuery:"react"},r);let n=e.pkg.dependencies.react||e.pkg.devDependencies.react;if(!n)throw new Error("React must be installed!");function o(){return n?r.reactRuntime?r.reactRuntime:e.vCompare(n,"17")>-1?"automatic":"classic":r.reactRuntime}let l={react:{runtime:o(),development:e.isDev,refresh:e.isDev}},c=s=>(s.jsc.transform=i(s.jsc.transform,l),s);if(t.module.rule("javascript").use("swc").tap(c),t.module.rule("typescript").use("swc").tap(c),e.isDev&&r.hmr){let s={};e.empConfig.empShareLib.config.name&&(s.library=e.empConfig.empShareLib.config.name),e.chain.plugin("plugin-react-refresh").use(require.resolve("@rspack/plugin-react-refresh"),[s])}t.module.rule("svg").delete("type");let u=new RegExp(`${r.svgrQuery}`);e.chain.merge({module:{rule:{svg:{test:/\.svg$/,oneOf:[{issuer:/\.[jt]sx?$/,resourceQuery:u,use:[{loader:require.resolve("@svgr/webpack"),options:{}}]},{resourceQuery:{not:[u]},type:"asset/resource"}]}}}})}});
@@ -0,0 +1,26 @@
1
+ import { GlobalStore } from '@empjs/cli';
2
+
3
+ type PluginReactType = {
4
+ /**
5
+ * 是否启动 热更 默认为 true
6
+ */
7
+ hmr?: boolean;
8
+ /**
9
+ * 是否启动 Svg React Component
10
+ * @default ?react
11
+ */
12
+ svgrQuery?: string;
13
+ /**
14
+ * React Runtime 手动切换jsx模式
15
+ * 当 external react时需要设置
16
+ * 本地安装时会自动判断 不需要设置
17
+ * @default undefined
18
+ */
19
+ reactRuntime?: string;
20
+ };
21
+ declare const _default: (o?: PluginReactType) => {
22
+ name: string;
23
+ rsConfig(store: GlobalStore): Promise<void>;
24
+ };
25
+
26
+ export { type PluginReactType, _default as default };
package/dist/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
- import type { GlobalStore } from '@empjs/cli';
2
- export type PluginReactType = {
1
+ import { GlobalStore } from '@empjs/cli';
2
+
3
+ type PluginReactType = {
3
4
  /**
4
5
  * 是否启动 热更 默认为 true
5
6
  */
@@ -17,8 +18,9 @@ export type PluginReactType = {
17
18
  */
18
19
  reactRuntime?: string;
19
20
  };
20
- declare const _default: (o: PluginReactType) => {
21
+ declare const _default: (o?: PluginReactType) => {
21
22
  name: string;
22
23
  rsConfig(store: GlobalStore): Promise<void>;
23
24
  };
24
- export default _default;
25
+
26
+ export { type PluginReactType, _default as default };
package/dist/index.js CHANGED
@@ -1,87 +1 @@
1
- //
2
- export default (o) => {
3
- return {
4
- name: '@empjs/plugin-react',
5
- async rsConfig(store) {
6
- const { chain, deepAssign } = store;
7
- o = deepAssign({ hmr: true, svgrQuery: 'react' }, o);
8
- //
9
- const reactVersion = store.pkg.dependencies.react || store.pkg.devDependencies.react;
10
- if (!reactVersion) {
11
- throw new Error('React must be installed!');
12
- }
13
- //
14
- function getReactRuntime() {
15
- if (!reactVersion)
16
- return o.reactRuntime;
17
- return o.reactRuntime ? o.reactRuntime : store.vCompare(reactVersion, '17') > -1 ? 'automatic' : 'classic';
18
- }
19
- const reactRuntime = getReactRuntime();
20
- /** ======================
21
- * swc transform 配置
22
- * =======================
23
- */
24
- const transform = {
25
- react: {
26
- runtime: reactRuntime,
27
- development: store.isDev,
28
- refresh: store.isDev,
29
- },
30
- };
31
- const resetTransform = (op) => {
32
- op.jsc.transform = deepAssign(op.jsc.transform, transform);
33
- return op;
34
- };
35
- //
36
- chain.module.rule('javascript').use('swc').tap(resetTransform);
37
- chain.module.rule('typescript').use('swc').tap(resetTransform);
38
- /** ======================
39
- * swc hmr 配置
40
- * =======================
41
- */
42
- if (store.isDev && o.hmr) {
43
- const { default: ReactRefresh } = await import('@rspack/plugin-react-refresh');
44
- const op = {
45
- // overlay: false,
46
- };
47
- if (store.empConfig.empShareLib.config.name) {
48
- op.library = store.empConfig.empShareLib.config.name;
49
- }
50
- store.chain.plugin('plugin-react-refresh').use(ReactRefresh, [op]);
51
- }
52
- /** ======================
53
- * swc svgr 配置
54
- * =======================
55
- */
56
- chain.module.rule('svg').delete('type');
57
- //
58
- const exp = new RegExp(`${o.svgrQuery}`);
59
- store.chain.merge({
60
- module: {
61
- rule: {
62
- svg: {
63
- test: /\.svg$/,
64
- oneOf: [
65
- {
66
- issuer: /\.[jt]sx?$/,
67
- resourceQuery: exp,
68
- use: [
69
- {
70
- loader: store.importResolve('@svgr/webpack'),
71
- options: {},
72
- },
73
- ],
74
- },
75
- {
76
- resourceQuery: { not: [exp] },
77
- type: 'asset/resource',
78
- },
79
- ],
80
- },
81
- },
82
- },
83
- });
84
- //
85
- },
86
- };
87
- };
1
+ var a=(r=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(r,{get:(e,n)=>(typeof require<"u"?require:e)[n]}):r)(function(r){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+r+'" is not supported')});var v=(r={})=>({name:"@empjs/plugin-react",async rsConfig(e){let{chain:n,deepAssign:i}=e;r=i({hmr:!0,svgrQuery:"react"},r);let s=e.pkg.dependencies.react||e.pkg.devDependencies.react;if(!s)throw new Error("React must be installed!");function m(){return s?r.reactRuntime?r.reactRuntime:e.vCompare(s,"17")>-1?"automatic":"classic":r.reactRuntime}let p={react:{runtime:m(),development:e.isDev,refresh:e.isDev}},c=t=>(t.jsc.transform=i(t.jsc.transform,p),t);if(n.module.rule("javascript").use("swc").tap(c),n.module.rule("typescript").use("swc").tap(c),e.isDev&&r.hmr){let t={};e.empConfig.empShareLib.config.name&&(t.library=e.empConfig.empShareLib.config.name),e.chain.plugin("plugin-react-refresh").use(a.resolve("@rspack/plugin-react-refresh"),[t])}n.module.rule("svg").delete("type");let u=new RegExp(`${r.svgrQuery}`);e.chain.merge({module:{rule:{svg:{test:/\.svg$/,oneOf:[{issuer:/\.[jt]sx?$/,resourceQuery:u,use:[{loader:a.resolve("@svgr/webpack"),options:{}}]},{resourceQuery:{not:[u]},type:"asset/resource"}]}}}})}});export{v as default};
package/package.json CHANGED
@@ -1,11 +1,16 @@
1
1
  {
2
2
  "name": "@empjs/plugin-react",
3
- "version": "3.0.0-rc.8",
3
+ "version": "3.0.0",
4
4
  "description": "emp react plugin",
5
5
  "license": "MIT",
6
6
  "type": "module",
7
- "files": ["dist"],
8
- "maintainers": ["xuhongbin", "ckken"],
7
+ "files": [
8
+ "dist"
9
+ ],
10
+ "maintainers": [
11
+ "xuhongbin",
12
+ "ckken"
13
+ ],
9
14
  "repository": {
10
15
  "type": "git",
11
16
  "url": "git+https://github.com/empjs/emp.git",
@@ -14,32 +19,39 @@
14
19
  "publishConfig": {
15
20
  "access": "public"
16
21
  },
17
- "keywords": ["react"],
22
+ "keywords": [
23
+ "react"
24
+ ],
18
25
  "main": "dist/index.js",
19
26
  "types": "dist/index.d.ts",
20
27
  "exports": {
21
- ".": "./dist/index.js"
22
- },
23
- "scripts": {
24
- "dev": "rimraf dist && pnpm run /^dev:.*/",
25
- "dev:tsc": "tsc -w",
26
- "dev:tsc-alias": "tsc-alias -w",
27
- "build": "rimraf dist && pnpm run /^build:.*/",
28
- "build:ts": "tsc && tsc-alias"
28
+ ".": {
29
+ "import": {
30
+ "default": "./dist/index.js",
31
+ "types": "./dist/index.d.ts"
32
+ },
33
+ "require": {
34
+ "default": "./dist/index.cjs",
35
+ "types": "./dist/index.d.cts"
36
+ }
37
+ }
29
38
  },
30
39
  "engines": {
31
- "node": ">=20.0.0"
40
+ "node": ">=16.0.0"
32
41
  },
33
42
  "author": "Ken",
34
43
  "devDependencies": {
35
- "@empjs/cli": "workspace:*",
36
44
  "@types/react": "^18.2.30",
37
- "rimraf": "^5.0.5",
38
- "tsc-alias": "^1.8.8"
45
+ "tsup": "^8.1.0",
46
+ "@empjs/cli": "3.0.0"
39
47
  },
40
48
  "dependencies": {
41
- "react-refresh": "^0.14.2",
49
+ "@rspack/plugin-react-refresh": "0.7.0",
42
50
  "@svgr/webpack": "^8.1.0",
43
- "@rspack/plugin-react-refresh": "0.6.4"
51
+ "react-refresh": "^0.14.2"
52
+ },
53
+ "scripts": {
54
+ "build": "tsup",
55
+ "dev": "tsup --watch"
44
56
  }
45
- }
57
+ }