vite-plugin-react-native-web 2.7.1 → 3.0.0-rc.1

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,75 @@
1
+ require("./chunk-DyKKrNZQ.js");
2
+ let node_module = require("node:module");
3
+ //#region node_modules/vite/dist/node/chunks/chunk.js
4
+ var __create = Object.create;
5
+ var __defProp = Object.defineProperty;
6
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
7
+ var __getOwnPropNames = Object.getOwnPropertyNames;
8
+ var __getProtoOf = Object.getPrototypeOf;
9
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
10
+ var __esmMin = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
11
+ var __commonJSMin = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
12
+ var __exportAll = (all, no_symbols) => {
13
+ let target = {};
14
+ for (var name in all) __defProp(target, name, {
15
+ get: all[name],
16
+ enumerable: true
17
+ });
18
+ if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
19
+ return target;
20
+ };
21
+ var __copyProps = (to, from, except, desc) => {
22
+ if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
23
+ key = keys[i];
24
+ if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
25
+ get: ((k) => from[k]).bind(null, key),
26
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
27
+ });
28
+ }
29
+ return to;
30
+ };
31
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
32
+ value: mod,
33
+ enumerable: true
34
+ }) : target, mod));
35
+ var __toCommonJS = (mod) => __hasOwnProp.call(mod, "module.exports") ? mod["module.exports"] : __copyProps(__defProp({}, "__esModule", { value: true }), mod);
36
+ var __require = /* @__PURE__ */ (0, node_module.createRequire)(require("url").pathToFileURL(__filename).href);
37
+ //#endregion
38
+ Object.defineProperty(exports, "__commonJSMin", {
39
+ enumerable: true,
40
+ get: function() {
41
+ return __commonJSMin;
42
+ }
43
+ });
44
+ Object.defineProperty(exports, "__esmMin", {
45
+ enumerable: true,
46
+ get: function() {
47
+ return __esmMin;
48
+ }
49
+ });
50
+ Object.defineProperty(exports, "__exportAll", {
51
+ enumerable: true,
52
+ get: function() {
53
+ return __exportAll;
54
+ }
55
+ });
56
+ Object.defineProperty(exports, "__require", {
57
+ enumerable: true,
58
+ get: function() {
59
+ return __require;
60
+ }
61
+ });
62
+ Object.defineProperty(exports, "__toCommonJS", {
63
+ enumerable: true,
64
+ get: function() {
65
+ return __toCommonJS;
66
+ }
67
+ });
68
+ Object.defineProperty(exports, "__toESM", {
69
+ enumerable: true,
70
+ get: function() {
71
+ return __toESM;
72
+ }
73
+ });
74
+
75
+ //# sourceMappingURL=chunk-D0RAK71K.js.map
@@ -0,0 +1,35 @@
1
+ //#region \0rolldown/runtime.js
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __commonJSMin = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
11
+ key = keys[i];
12
+ if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
13
+ get: ((k) => from[k]).bind(null, key),
14
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
+ });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
20
+ value: mod,
21
+ enumerable: true
22
+ }) : target, mod));
23
+ //#endregion
24
+ Object.defineProperty(exports, "__commonJSMin", {
25
+ enumerable: true,
26
+ get: function() {
27
+ return __commonJSMin;
28
+ }
29
+ });
30
+ Object.defineProperty(exports, "__toESM", {
31
+ enumerable: true,
32
+ get: function() {
33
+ return __toESM;
34
+ }
35
+ });
package/dist/cjs/index.js CHANGED
@@ -1,113 +1,134 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var fs = require('node:fs/promises');
6
- var flowRemoveTypes = require('flow-remove-types');
7
- var vite = require('vite');
8
-
9
- const development = process.env.NODE_ENV === 'development';
10
- const extensions = [
11
- '.web.mjs',
12
- '.mjs',
13
- '.web.js',
14
- '.js',
15
- '.web.mts',
16
- '.mts',
17
- '.web.ts',
18
- '.ts',
19
- '.web.jsx',
20
- '.jsx',
21
- '.web.tsx',
22
- '.tsx',
23
- '.json',
24
- ];
1
+ Object.defineProperties(exports, {
2
+ __esModule: { value: true },
3
+ [Symbol.toStringTag]: { value: "Module" }
4
+ });
5
+ //#region \0rolldown/runtime.js
6
+ var __create = Object.create;
7
+ var __defProp = Object.defineProperty;
8
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
9
+ var __getOwnPropNames = Object.getOwnPropertyNames;
10
+ var __getProtoOf = Object.getPrototypeOf;
11
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
14
+ key = keys[i];
15
+ if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: ((k) => from[k]).bind(null, key),
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
23
+ value: mod,
24
+ enumerable: true
25
+ }) : target, mod));
26
+ //#endregion
27
+ let flow_remove_types = require("flow-remove-types");
28
+ flow_remove_types = __toESM(flow_remove_types);
29
+ //#region src/plugins/flow-remove-types-plugin.ts
25
30
  const reactNativeFlowJsxPathPattern = /\.(js|flow)$/;
26
- const reactNativeFlowJsxLoader = 'jsx';
27
- const flowPragmaPattern = /@flow\b/;
28
- const esbuildPlugin = () => ({
29
- name: 'react-native-web',
30
- setup: (build) => {
31
- build.onLoad({ filter: reactNativeFlowJsxPathPattern }, async (args) => {
32
- let contents = await fs.readFile(args.path, 'utf-8');
33
- if (flowPragmaPattern.test(contents)) {
34
- const transformed = flowRemoveTypes(contents);
35
- contents = transformed.toString();
36
- }
37
- return {
38
- contents,
39
- loader: reactNativeFlowJsxLoader,
40
- };
41
- });
42
- },
31
+ const flowRemoveTypesPlugin = () => ({
32
+ name: "flow-remove-types",
33
+ transform: {
34
+ filter: { id: reactNativeFlowJsxPathPattern },
35
+ handler: async (code) => {
36
+ code = (0, flow_remove_types.default)(code).toString();
37
+ return code;
38
+ }
39
+ }
43
40
  });
44
- const reactNativeWeb = (options) => ({
45
- enforce: 'pre',
46
- name: 'react-native-web',
47
- config: () => ({
48
- define: {
49
- global: 'globalThis',
50
- __DEV__: JSON.stringify(development),
51
- 'process.env.NODE_ENV': JSON.stringify(process.env.NODE_ENV),
52
- 'process.env.EXPO_OS': JSON.stringify('web'),
53
- },
54
- build: {
55
- commonjsOptions: {
56
- extensions,
57
- transformMixedEsModules: true,
58
- },
59
- rollupOptions: (options === null || options === void 0 ? void 0 : options.enableExpoManualChunk)
60
- ? {
61
- output: {
62
- manualChunks(id) {
63
- if (id.includes('expo-modules-core')) {
64
- return 'expo-modules-core';
65
- }
66
- },
67
- entryFileNames: (chunk) => {
68
- if (chunk.name === 'expo-modules-core') {
69
- return '0-expo-modules-core.js';
70
- }
71
- return '[name].js';
72
- },
73
- },
74
- }
75
- : undefined,
76
- },
77
- resolve: {
78
- extensions,
79
- alias: [{ find: 'react-native', replacement: 'react-native-web' }],
80
- },
81
- optimizeDeps: {
82
- esbuildOptions: {
83
- plugins: [esbuildPlugin()],
84
- resolveExtensions: extensions,
85
- },
86
- },
87
- }),
88
- async transform(code, id) {
89
- id = id.split('?')[0];
90
- if (!reactNativeFlowJsxPathPattern.test(id)) {
91
- return;
92
- }
93
- let map = null;
94
- const transformed = flowRemoveTypes(code);
95
- code = transformed.toString();
96
- map = {
97
- file: id,
98
- toUrl: () => id,
99
- ...transformed.generateMap(),
100
- };
101
- const result = await vite.transformWithEsbuild(code, id, {
102
- loader: reactNativeFlowJsxLoader,
103
- jsx: 'automatic',
104
- });
105
- code = result.code;
106
- map = result.map;
107
- return { code, map };
108
- },
41
+ //#endregion
42
+ //#region src/plugins/treeshake-fix-plugin.ts
43
+ const treeshakeFixPlugin = () => ({
44
+ name: "treeshake-fix",
45
+ transform: {
46
+ filter: { id: "expo-modules-core" },
47
+ handler: () => {
48
+ return { moduleSideEffects: "no-treeshake" };
49
+ }
50
+ }
109
51
  });
110
-
52
+ //#endregion
53
+ //#region src/plugins/type-exports-fix.ts
54
+ const typeExportsFixPlugin = () => ({
55
+ name: "type-exports-fix",
56
+ load: {
57
+ filter: { id: /expo-modules-core.*ts-declarations.*\.ts$/ },
58
+ handler: () => ({
59
+ code: "export {}",
60
+ moduleType: "js"
61
+ })
62
+ }
63
+ });
64
+ //#endregion
65
+ //#region src/index.ts
66
+ const development = process.env.NODE_ENV === "development";
67
+ const extensions = [
68
+ ".web.mjs",
69
+ ".mjs",
70
+ ".web.js",
71
+ ".js",
72
+ ".web.mts",
73
+ ".mts",
74
+ ".web.ts",
75
+ ".ts",
76
+ ".web.jsx",
77
+ ".jsx",
78
+ ".web.tsx",
79
+ ".tsx",
80
+ ".json"
81
+ ];
82
+ const moduleTypes = {
83
+ ".js": "jsx",
84
+ ".flow": "jsx"
85
+ };
86
+ const optimizeDepsInclude = [
87
+ "expo",
88
+ "expo-modules-core",
89
+ "react-native"
90
+ ];
91
+ const reactNativeWeb = (_options) => ({
92
+ enforce: "pre",
93
+ name: "react-native-web",
94
+ config: () => ({
95
+ define: {
96
+ global: "globalThis",
97
+ __DEV__: JSON.stringify(development),
98
+ "process.env.NODE_ENV": JSON.stringify(process.env.NODE_ENV),
99
+ "process.env.EXPO_OS": JSON.stringify("web")
100
+ },
101
+ resolve: {
102
+ extensions,
103
+ alias: [{
104
+ find: "react-native",
105
+ replacement: "react-native-web"
106
+ }]
107
+ },
108
+ build: { rolldownOptions: {
109
+ resolve: { extensions },
110
+ moduleTypes,
111
+ plugins: [
112
+ flowRemoveTypesPlugin(),
113
+ treeshakeFixPlugin(),
114
+ typeExportsFixPlugin()
115
+ ]
116
+ } },
117
+ optimizeDeps: {
118
+ include: optimizeDepsInclude,
119
+ rolldownOptions: {
120
+ resolve: { extensions },
121
+ moduleTypes,
122
+ plugins: [
123
+ flowRemoveTypesPlugin(),
124
+ treeshakeFixPlugin(),
125
+ typeExportsFixPlugin()
126
+ ]
127
+ }
128
+ }
129
+ })
130
+ });
131
+ //#endregion
111
132
  exports.default = reactNativeWeb;
112
- module.exports = Object.assign(exports.default, exports);
113
- //# sourceMappingURL=index.js.map
133
+
134
+ //# sourceMappingURL=index.js.map