Merge branch 'main' into default-node

This commit is contained in:
Nick McCurdy 2023-09-22 04:07:45 -04:00
commit 01fe9cdc69
24 changed files with 191 additions and 100 deletions

View File

@ -1,5 +1,24 @@
# remotedev-redux-devtools-extension # remotedev-redux-devtools-extension
## 3.1.4
### Patch Changes
- Updated dependencies [e57bcb39]
- @redux-devtools/app@4.0.0
## 3.1.3
### Patch Changes
- bca76009: Fix missing CSS for code editor
## 3.1.2
### Patch Changes
- 64ed81b0: Fix extension in Firefox and Chrome Incognito
## 3.1.1 ## 3.1.1
### Patch Changes ### Patch Changes

View File

@ -1,5 +1,5 @@
{ {
"version": "3.1.1", "version": "3.1.3",
"name": "Redux DevTools", "name": "Redux DevTools",
"description": "Redux DevTools for debugging application's state changes.", "description": "Redux DevTools for debugging application's state changes.",
"homepage_url": "https://github.com/reduxjs/redux-devtools", "homepage_url": "https://github.com/reduxjs/redux-devtools",

View File

@ -1,5 +1,5 @@
{ {
"version": "3.1.1", "version": "3.1.3",
"name": "Redux DevTools", "name": "Redux DevTools",
"description": "Redux DevTools for debugging application's state changes.", "description": "Redux DevTools for debugging application's state changes.",
"homepage_url": "https://github.com/reduxjs/redux-devtools", "homepage_url": "https://github.com/reduxjs/redux-devtools",

View File

@ -1,5 +1,5 @@
{ {
"version": "3.1.1", "version": "3.1.3",
"name": "Redux DevTools", "name": "Redux DevTools",
"manifest_version": 2, "manifest_version": 2,
"description": "Redux Developer Tools for debugging application state changes.", "description": "Redux Developer Tools for debugging application state changes.",

View File

@ -1,7 +1,7 @@
{ {
"private": true, "private": true,
"name": "remotedev-redux-devtools-extension", "name": "remotedev-redux-devtools-extension",
"version": "3.1.1", "version": "3.1.4",
"description": "Redux Developer Tools for debugging application state changes.", "description": "Redux Developer Tools for debugging application state changes.",
"homepage": "https://github.com/reduxjs/redux-devtools/tree/master/extension", "homepage": "https://github.com/reduxjs/redux-devtools/tree/master/extension",
"license": "MIT", "license": "MIT",
@ -24,7 +24,7 @@
}, },
"dependencies": { "dependencies": {
"@babel/polyfill": "^7.12.1", "@babel/polyfill": "^7.12.1",
"@redux-devtools/app": "^3.0.0", "@redux-devtools/app": "^4.0.0",
"@redux-devtools/core": "^3.13.0", "@redux-devtools/core": "^3.13.0",
"@redux-devtools/instrument": "^2.1.0", "@redux-devtools/instrument": "^2.1.0",
"@redux-devtools/serialize": "^0.4.1", "@redux-devtools/serialize": "^0.4.1",

View File

@ -12,4 +12,5 @@ html
body body
#root #root
link(href='/devpanel.bundle.css', rel='stylesheet')
script(src='/devpanel.bundle.js') script(src='/devpanel.bundle.js')

View File

@ -12,6 +12,8 @@ import {
ReportsState, ReportsState,
section, section,
SectionState, SectionState,
StateTreeSettings,
stateTreeSettings,
StoreAction, StoreAction,
theme, theme,
ThemeState, ThemeState,
@ -25,6 +27,7 @@ export interface StoreStateWithoutSocket {
readonly instances: InstancesState; readonly instances: InstancesState;
readonly reports: ReportsState; readonly reports: ReportsState;
readonly notification: NotificationState; readonly notification: NotificationState;
readonly stateTreeSettings: StateTreeSettings;
} }
const rootReducer: Reducer<StoreStateWithoutSocket, StoreAction> = const rootReducer: Reducer<StoreStateWithoutSocket, StoreAction> =
@ -36,6 +39,7 @@ const rootReducer: Reducer<StoreStateWithoutSocket, StoreAction> =
section, section,
theme, theme,
connection, connection,
stateTreeSettings,
}); });
export default rootReducer; export default rootReducer;

View File

@ -8,4 +8,5 @@ html
body body
#root #root
link(href='/remote.bundle.css', rel='stylesheet')
script(src='/remote.bundle.js') script(src='/remote.bundle.js')

View File

@ -14,4 +14,5 @@ html
height=300, width=350, height=300, width=350,
style='position: absolute; top: 50%; left: 50%; margin-top: -175px; margin-left: -175px;' style='position: absolute; top: 50%; left: 50%; margin-top: -175px; margin-left: -175px;'
) )
link(href='/window.bundle.css', rel='stylesheet')
script(src='/window.bundle.js') script(src='/window.bundle.js')

View File

@ -1,5 +1,41 @@
# Change Log # Change Log
## 4.0.0
### Major Changes
- e57bcb39: The UMD bundle now exports the same thing as the library and includes the CSS in a sperate file. Therfore, the new usage is:
```diff
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title>Redux DevTools</title>
+ <link href="/redux-devtools-app.min.css" rel="stylesheet" />
</head>
<body>
<div id="root"></div>
<script src="/react.production.min.js"></script>
<script src="/react-dom.production.min.js"></script>
<script src="/redux-devtools-app.min.js"></script>
<script src="/port.js"></script>
<script>
const container = document.querySelector('#root');
- const element = React.createElement(ReduxDevToolsApp, {
+ const element = React.createElement(ReduxDevToolsApp.Root, {
socketOptions: {
hostname: location.hostname,
port: reduxDevToolsPort,
autoReconnect: true,
},
});
ReactDOM.createRoot(container).render(element);
</script>
</body>
</html>
```
## 3.0.0 ## 3.0.0
### Major Changes ### Major Changes

View File

@ -0,0 +1,67 @@
import * as esbuild from 'esbuild';
const args = process.argv.slice(2);
const prod = !args.includes('--dev');
await esbuild.build({
bundle: true,
logLevel: 'info',
format: 'iife',
globalName: 'ReduxDevToolsApp',
outfile: prod ? 'umd/redux-devtools-app.min.js' : 'umd/redux-devtools-app.js',
minify: prod,
sourcemap: true,
define: {
'process.env.NODE_ENV': prod ? '"production"' : '"development"',
},
entryPoints: ['src/index.tsx'],
loader: {
'.woff2': 'dataurl',
},
plugins: [
importAsGlobals({
react: 'React',
'react-dom': 'ReactDOM',
}),
],
});
// https://github.com/evanw/esbuild/issues/337#issuecomment-954633403
function importAsGlobals(mapping) {
// https://stackoverflow.com/a/3561711/153718
const escRe = (s) => s.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
const filter = new RegExp(
Object.keys(mapping)
.map((mod) => `^${escRe(mod)}$`)
.join('|'),
);
return {
name: 'global-imports',
setup(build) {
build.onResolve({ filter }, (args) => {
if (!mapping[args.path]) {
throw new Error('Unknown global: ' + args.path);
}
return {
path: args.path,
namespace: 'external-global',
};
});
build.onLoad(
{
filter,
namespace: 'external-global',
},
async (args) => {
const global = mapping[args.path];
return {
contents: `module.exports = ${global};`,
loader: 'js',
};
},
);
},
};
}

View File

@ -1,6 +1,6 @@
{ {
"name": "@redux-devtools/app", "name": "@redux-devtools/app",
"version": "3.0.0", "version": "4.0.0",
"description": "Redux DevTools app", "description": "Redux DevTools app",
"homepage": "https://github.com/reduxjs/redux-devtools/tree/master/packages/redux-devtools-app", "homepage": "https://github.com/reduxjs/redux-devtools/tree/master/packages/redux-devtools-app",
"bugs": { "bugs": {
@ -30,8 +30,8 @@
"build:esm": "babel src --config-file ./babel.config.esm.json --extensions \".ts,.tsx\" --out-dir lib/esm", "build:esm": "babel src --config-file ./babel.config.esm.json --extensions \".ts,.tsx\" --out-dir lib/esm",
"build:types": "tsc --emitDeclarationOnly", "build:types": "tsc --emitDeclarationOnly",
"build:web": "cross-env TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack --env platform=web", "build:web": "cross-env TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack --env platform=web",
"build:umd": "cross-env TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack --config webpack.config.umd.ts", "build:umd": "node buildUmd.mjs --dev",
"build:umd:min": "cross-env TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack --env production --config webpack.config.umd.ts", "build:umd:min": "node buildUmd.mjs",
"clean": "rimraf build lib umd", "clean": "rimraf build lib umd",
"test": "jest", "test": "jest",
"lint": "eslint . --ext .ts,.tsx", "lint": "eslint . --ext .ts,.tsx",
@ -93,6 +93,7 @@
"babel-loader": "^9.1.3", "babel-loader": "^9.1.3",
"cross-env": "^7.0.3", "cross-env": "^7.0.3",
"css-loader": "^6.8.1", "css-loader": "^6.8.1",
"esbuild": "^0.19.2",
"eslint": "^8.48.0", "eslint": "^8.48.0",
"eslint-config-prettier": "^9.0.0", "eslint-config-prettier": "^9.0.0",
"eslint-plugin-jest": "^27.2.3", "eslint-plugin-jest": "^27.2.3",

View File

@ -35,14 +35,6 @@ export default function configureStore(
} }
).__REDUX_DEVTOOLS_EXTENSION_COMPOSE__; ).__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;
} }
if (module.hot) {
// Enable Webpack hot module replacement for reducers
module.hot.accept('../reducers', () => {
// eslint-disable-next-line @typescript-eslint/no-var-requires
const nextReducer = require('../reducers'); // eslint-disable-line global-require
store.replaceReducer(nextReducer as Reducer<StoreState, StoreAction>);
});
}
} }
const store = createStore( const store = createStore(

View File

@ -2,7 +2,7 @@
"extends": "../../tsconfig.react.base.json", "extends": "../../tsconfig.react.base.json",
"compilerOptions": { "compilerOptions": {
"outDir": "lib/types", "outDir": "lib/types",
"types": ["webpack-env"] "types": []
}, },
"include": ["src"] "include": ["src"]
} }

View File

@ -3,5 +3,5 @@
"compilerOptions": { "compilerOptions": {
"types": ["node", "webpack-dev-server"] "types": ["node", "webpack-dev-server"]
}, },
"include": ["webpack.config.ts", "webpack.config.umd.ts"] "include": ["webpack.config.ts"]
} }

View File

@ -1,69 +0,0 @@
import * as path from 'path';
import * as webpack from 'webpack';
import ForkTsCheckerWebpackPlugin from 'fork-ts-checker-webpack-plugin';
export default (env: { production?: boolean } = {}): webpack.Configuration => ({
mode: env.production ? 'production' : 'development',
entry: {
app: ['./src/index'],
},
output: {
library: 'ReduxDevToolsApp',
libraryExport: 'Root',
libraryTarget: 'umd',
path: path.resolve(__dirname, 'umd'),
filename: env.production
? 'redux-devtools-app.min.js'
: 'redux-devtools-app.js',
},
module: {
rules: [
{
test: /\.(js|ts)x?$/,
loader: 'babel-loader',
exclude: /node_modules/,
},
{
test: /\.html$/,
loader: 'html-loader',
},
{
test: /\.css$/,
use: [{ loader: 'style-loader' }, { loader: 'css-loader' }],
},
{
test: /\.woff2$/,
type: 'asset/inline',
},
],
},
resolve: {
extensions: ['.js', '.jsx', '.ts', '.tsx'],
},
plugins: [
new webpack.DefinePlugin({
'process.env': {
PLATFORM: JSON.stringify('web'),
},
}),
new ForkTsCheckerWebpackPlugin({
typescript: {
configFile: 'tsconfig.json',
},
}),
],
externals: {
react: {
root: 'React',
commonjs2: 'react',
commonjs: 'react',
amd: 'react',
},
'react-dom': {
root: 'ReactDOM',
commonjs2: 'react-dom',
commonjs: 'react-dom',
amd: 'react-dom',
},
},
});

View File

@ -1,5 +1,12 @@
# Change Log # Change Log
## 3.0.2
### Patch Changes
- Updated dependencies [e57bcb39]
- @redux-devtools/app@4.0.0
## 3.0.1 ## 3.0.1
### Patch Changes ### Patch Changes

View File

@ -23,6 +23,7 @@
height: 100%; height: 100%;
} }
</style> </style>
<link href="/redux-devtools-app.min.css" rel="stylesheet" />
</head> </head>
<body> <body>
<div id="root"></div> <div id="root"></div>
@ -32,7 +33,7 @@
<script src="/port.js"></script> <script src="/port.js"></script>
<script> <script>
const container = document.querySelector('#root'); const container = document.querySelector('#root');
const element = React.createElement(ReduxDevToolsApp, { const element = React.createElement(ReduxDevToolsApp.Root, {
socketOptions: { socketOptions: {
hostname: location.hostname, hostname: location.hostname,
port: reduxDevToolsPort, port: reduxDevToolsPort,

View File

@ -1,6 +1,6 @@
{ {
"name": "@redux-devtools/cli", "name": "@redux-devtools/cli",
"version": "3.0.1", "version": "3.0.2",
"description": "CLI for remote debugging with Redux DevTools.", "description": "CLI for remote debugging with Redux DevTools.",
"homepage": "https://github.com/reduxjs/redux-devtools/tree/master/packages/redux-devtools-cli", "homepage": "https://github.com/reduxjs/redux-devtools/tree/master/packages/redux-devtools-cli",
"bugs": { "bugs": {
@ -42,7 +42,7 @@
}, },
"dependencies": { "dependencies": {
"@apollo/server": "^4.9.3", "@apollo/server": "^4.9.3",
"@redux-devtools/app": "^3.0.0", "@redux-devtools/app": "^4.0.0",
"@types/react": "^18.2.21", "@types/react": "^18.2.21",
"body-parser": "^1.20.2", "body-parser": "^1.20.2",
"chalk": "^5.3.0", "chalk": "^5.3.0",

View File

@ -1,5 +1,11 @@
# Change Log # Change Log
## 0.8.1
### Patch Changes
- 7e6d0438: Transform `for await...of` syntax for @redux-devtools/remote to support Hermes Engine
## 0.8.0 ## 0.8.0
### Minor Changes ### Minor Changes

View File

@ -1,6 +1,13 @@
{ {
"presets": [ "presets": [
["@babel/preset-env", { "targets": "defaults", "modules": false }], [
"@babel/preset-env",
{
"targets": "defaults",
"include": ["@babel/plugin-transform-async-generator-functions"],
"modules": false
}
],
"@babel/preset-typescript" "@babel/preset-typescript"
], ],
"plugins": ["@babel/plugin-transform-runtime"] "plugins": ["@babel/plugin-transform-runtime"]

View File

@ -1,6 +1,12 @@
{ {
"presets": [ "presets": [
["@babel/preset-env", { "targets": "defaults" }], [
"@babel/preset-env",
{
"targets": "defaults",
"include": ["@babel/plugin-transform-async-generator-functions"]
}
],
"@babel/preset-typescript" "@babel/preset-typescript"
], ],
"plugins": ["@babel/plugin-transform-runtime"] "plugins": ["@babel/plugin-transform-runtime"]

View File

@ -1,6 +1,6 @@
{ {
"name": "@redux-devtools/remote", "name": "@redux-devtools/remote",
"version": "0.8.0", "version": "0.8.1",
"description": "Relay Redux actions to remote Redux DevTools.", "description": "Relay Redux actions to remote Redux DevTools.",
"keywords": [ "keywords": [
"redux", "redux",

View File

@ -60,7 +60,7 @@ importers:
specifier: ^7.12.1 specifier: ^7.12.1
version: 7.12.1 version: 7.12.1
'@redux-devtools/app': '@redux-devtools/app':
specifier: ^3.0.0 specifier: ^4.0.0
version: link:../packages/redux-devtools-app version: link:../packages/redux-devtools-app
'@redux-devtools/core': '@redux-devtools/core':
specifier: ^3.13.0 specifier: ^3.13.0
@ -1163,6 +1163,9 @@ importers:
css-loader: css-loader:
specifier: ^6.8.1 specifier: ^6.8.1
version: 6.8.1(webpack@5.88.2) version: 6.8.1(webpack@5.88.2)
esbuild:
specifier: ^0.19.2
version: 0.19.2
eslint: eslint:
specifier: ^8.48.0 specifier: ^8.48.0
version: 8.48.0 version: 8.48.0
@ -1210,7 +1213,7 @@ importers:
version: 5.3.11(@babel/core@7.22.11)(react-dom@18.2.0)(react-is@18.2.0)(react@18.2.0) version: 5.3.11(@babel/core@7.22.11)(react-dom@18.2.0)(react-is@18.2.0)(react@18.2.0)
ts-jest: ts-jest:
specifier: ^29.1.1 specifier: ^29.1.1
version: 29.1.1(@babel/core@7.22.11)(esbuild@0.18.20)(jest@29.6.4)(typescript@5.2.2) version: 29.1.1(@babel/core@7.22.11)(esbuild@0.19.2)(jest@29.6.4)(typescript@5.2.2)
ts-node: ts-node:
specifier: ^10.9.1 specifier: ^10.9.1
version: 10.9.1(@types/node@18.17.14)(typescript@5.2.2) version: 10.9.1(@types/node@18.17.14)(typescript@5.2.2)
@ -1219,7 +1222,7 @@ importers:
version: 5.2.2 version: 5.2.2
webpack: webpack:
specifier: ^5.88.2 specifier: ^5.88.2
version: 5.88.2(webpack-cli@5.1.4) version: 5.88.2(esbuild@0.19.2)(webpack-cli@5.1.4)
webpack-cli: webpack-cli:
specifier: ^5.1.4 specifier: ^5.1.4
version: 5.1.4(webpack-dev-server@4.15.1)(webpack@5.88.2) version: 5.1.4(webpack-dev-server@4.15.1)(webpack@5.88.2)
@ -1309,7 +1312,7 @@ importers:
specifier: ^4.9.3 specifier: ^4.9.3
version: 4.9.3(graphql@16.8.0) version: 4.9.3(graphql@16.8.0)
'@redux-devtools/app': '@redux-devtools/app':
specifier: ^3.0.0 specifier: ^4.0.0
version: link:../redux-devtools-app version: link:../redux-devtools-app
'@types/react': '@types/react':
specifier: ^18.2.21 specifier: ^18.2.21
@ -10516,6 +10519,7 @@ packages:
/@types/ms@0.7.31: /@types/ms@0.7.31:
resolution: {integrity: sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==} resolution: {integrity: sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==}
requiresBuild: true
dev: false dev: false
/@types/node-fetch@2.6.4: /@types/node-fetch@2.6.4:
@ -12808,7 +12812,7 @@ packages:
postcss-modules-values: 4.0.0(postcss@8.4.28) postcss-modules-values: 4.0.0(postcss@8.4.28)
postcss-value-parser: 4.2.0 postcss-value-parser: 4.2.0
semver: 7.5.4 semver: 7.5.4
webpack: 5.88.2(webpack-cli@5.1.4) webpack: 5.88.2(esbuild@0.19.2)(webpack-cli@5.1.4)
dev: true dev: true
/css-select@4.3.0: /css-select@4.3.0:
@ -15205,6 +15209,12 @@ packages:
set-cookie-parser: 2.6.0 set-cookie-parser: 2.6.0
dev: false dev: false
/headers-polyfill@3.2.5:
resolution: {integrity: sha512-tUCGvt191vNSQgttSyJoibR+VO+I6+iCHIUdhzEMJKE+EAL8BwCN7fUOZlY4ofOelNHsK+gEjxB/B+9N3EWtdA==}
requiresBuild: true
dev: false
optional: true
/hex-rgba@1.0.2: /hex-rgba@1.0.2:
resolution: {integrity: sha512-MKla68wFGv+i7zU3Q4giWN74f+zWdkuf2Tk21fISV7aw55r8dH/noBbH5JsVlM4Z2WRTYCEmSxsoZ1QR/o68jg==} resolution: {integrity: sha512-MKla68wFGv+i7zU3Q4giWN74f+zWdkuf2Tk21fISV7aw55r8dH/noBbH5JsVlM4Z2WRTYCEmSxsoZ1QR/o68jg==}
dev: false dev: false
@ -15261,7 +15271,7 @@ packages:
dependencies: dependencies:
html-minifier-terser: 7.2.0 html-minifier-terser: 7.2.0
parse5: 7.1.2 parse5: 7.1.2
webpack: 5.88.2(webpack-cli@5.1.4) webpack: 5.88.2(esbuild@0.19.2)(webpack-cli@5.1.4)
dev: true dev: true
/html-minifier-terser@6.1.0: /html-minifier-terser@6.1.0:
@ -16830,6 +16840,7 @@ packages:
chalk: 3.0.0 chalk: 3.0.0
diff-match-patch: 1.0.5 diff-match-patch: 1.0.5
dev: false dev: false
bundledDependencies: []
/jsonfile@4.0.0: /jsonfile@4.0.0:
resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==}
@ -20519,7 +20530,7 @@ packages:
peerDependencies: peerDependencies:
webpack: ^5.0.0 webpack: ^5.0.0
dependencies: dependencies:
webpack: 5.88.2(webpack-cli@5.1.4) webpack: 5.88.2(esbuild@0.19.2)(webpack-cli@5.1.4)
dev: true dev: true
/style-search@0.1.0: /style-search@0.1.0: