<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: How to use react-pdf with Experience Builder developer edition in ArcGIS Experience Builder Questions</title>
    <link>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164313#M4182</link>
    <description>&lt;P&gt;Hi, You can edit the "getWidgetsWebpackConfig" method in "webpack-extensions.common.js"&lt;/P&gt;</description>
    <pubDate>Thu, 14 Apr 2022 08:49:13 GMT</pubDate>
    <dc:creator>Junshan_Liu</dc:creator>
    <dc:date>2022-04-14T08:49:13Z</dc:date>
    <item>
      <title>How to use react-pdf with Experience Builder developer edition</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164000#M4167</link>
      <description>&lt;P&gt;Working with&amp;nbsp;Experience Builder developer edition v1.6. Try to use react-pdf in customized widget to generate pdf file with the react component.&lt;/P&gt;&lt;P&gt;But when install the react-pdf as instructed in following link, got a lot errors.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://github.com/diegomura/react-pdf" target="_blank" rel="noopener"&gt;https://github.com/diegomura/react-pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Question is how to add following configuration into current webpack.config.js file under folder client?&lt;/P&gt;&lt;P&gt;Configuration:&lt;/P&gt;&lt;PRE&gt;&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;: &lt;SPAN class=""&gt;{&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;fallback&lt;/SPAN&gt;: &lt;SPAN class=""&gt;{&lt;/SPAN&gt;
      &lt;SPAN class=""&gt;process&lt;/SPAN&gt;: &lt;SPAN class=""&gt;require&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;"process/browser"&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
      &lt;SPAN class=""&gt;zlib&lt;/SPAN&gt;: &lt;SPAN class=""&gt;require&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;"browserify-zlib"&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
      &lt;SPAN class=""&gt;stream&lt;/SPAN&gt;: &lt;SPAN class=""&gt;require&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;"stream-browserify"&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
      &lt;SPAN class=""&gt;util&lt;/SPAN&gt;: &lt;SPAN class=""&gt;require&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;"util"&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
      &lt;SPAN class=""&gt;buffer&lt;/SPAN&gt;: &lt;SPAN class=""&gt;require&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;"buffer"&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
      &lt;SPAN class=""&gt;asset&lt;/SPAN&gt;: &lt;SPAN class=""&gt;require&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;"assert"&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;}&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;}&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;plugins&lt;/SPAN&gt;: &lt;SPAN class=""&gt;[&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;webpack&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;ProvidePlugin&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;{&lt;/SPAN&gt;
      &lt;SPAN class=""&gt;Buffer&lt;/SPAN&gt;: &lt;SPAN class=""&gt;[&lt;/SPAN&gt;&lt;SPAN class=""&gt;"buffer"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt; &lt;SPAN class=""&gt;"Buffer"&lt;/SPAN&gt;&lt;SPAN class=""&gt;]&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
      &lt;SPAN class=""&gt;process&lt;/SPAN&gt;: &lt;SPAN class=""&gt;"process/browser"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;}&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;]&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;Content of webpack.config.js under folder client:&lt;/P&gt;&lt;P&gt;const extensionsConfig = require('./webpack/webpack-extensions.config');&lt;/P&gt;&lt;P&gt;if(extensionsConfig.length === 0){&lt;BR /&gt;console.warn('You have to have at least one widget/theme.');&lt;BR /&gt;return;&lt;BR /&gt;}&lt;BR /&gt;module.exports = extensionsConfig;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 13 Apr 2022 16:46:50 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164000#M4167</guid>
      <dc:creator>Ming</dc:creator>
      <dc:date>2022-04-13T16:46:50Z</dc:date>
    </item>
    <item>
      <title>Re: How to use react-pdf with Experience Builder developer edition</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164020#M4168</link>
      <description>&lt;P&gt;The solution is quite involved.&amp;nbsp; In short, you need to use craco on top of webpack to get this to work.&lt;/P&gt;&lt;P&gt;here is my (working) configuration:&lt;/P&gt;&lt;P&gt;webpack.config.js&lt;/P&gt;&lt;LI-CODE lang="javascript"&gt;const webpack = require('webpack')
const path = require('path')

module.exports = {
	entry: './src/index.js',
	mode: 'development',
	module: {
		rules: [
			{
				test: /\.(js|jsx)$/,
				exclude: /(node_modules)/,
				loader: 'babel-loader',
				options: { presets: ['@babel/env', '@babel/preset-react'] },
			},
			{
				test: /\.(css)$/,
				use: ['style-loader', 'css-loader'],
			},
			{
				test: /\.scss$/,
				use: ['sass-loader'],
			},
		],
	},
	resolve: {
		extensions: ['*', '.js', '.jsx'],
		fallback: {
			module: 'empty',
			dgram: 'empty',
			dns: 'mock',
			fs: 'empty',
			http2: 'empty',
			net: 'empty',
			tls: 'empty',
			child_process: 'empty',
			process: require.resolve('process/browser'),
			zlib: require.resolve('browserify-zlib'),
			stream: require.resolve('stream-browserify'),
			util: require.resolve('util'),
			buffer: require.resolve('buffer'),
			asset: require.resolve('assert'),
		},
	},
	output: {
		path: path.resolve(__dirname, 'dist/'),
		publicPath: '/dist/',
		filename: 'bundle.js',
	},
	devServer: {
		static: path.join(__dirname, 'public/'),
		port: 3000,
		compress: true,
		historyApiFallback: true,
		hot: true,
	},
	plugins: [
		new webpack.ProvidePlugin({
			Buffer: ['buffer', 'Buffer'],
			process: 'process/browser',
		}),
	],
}
&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;craco.config.js&lt;/P&gt;&lt;LI-CODE lang="javascript"&gt;const NodePolyfillPlugin = require("node-polyfill-webpack-plugin");

module.exports = {
  webpack: {
    plugins: {
      add: [
        new NodePolyfillPlugin({
          excludeAliases: ["console"],
        }),
      ],
    },
  },
};&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;package.json dependencies (not all relevant to your case)&lt;/P&gt;&lt;LI-CODE lang="javascript"&gt;  "dependencies": {
    "@babel/cli": "^7.17.6",
    "@babel/core": "^7.17.8",
    "@babel/preset-env": "^7.16.11",
    "@babel/preset-react": "^7.16.7",
    "@craco/craco": "^6.4.3",
    "@devbookhq/splitter": "^1.3.2",
    "@material-ui/core": "^4.12.3",
    "@react-pdf/renderer": "^2.1.1",
    "@testing-library/jest-dom": "^5.14.1",
    "@testing-library/react": "^12.0.0",
    "@testing-library/user-event": "^13.2.1",
    "ag-grid-community": "^27.1.0",
    "ag-grid-react": "^27.1.0",
    "assert": "^2.0.0",
    "babel-loader": "^8.2.4",
    "bootstrap": "^5.1.3",
    "browserify-zlib": "^0.2.0",
    "buffer": "^6.0.3",
    "craco": "^0.0.3",
    "css-loader": "^6.7.1",
    "firebase": "^9.6.10",
    "node-polyfill-webpack-plugin": "^1.1.4",
    "process": "^0.11.10",
    "react": "^17.0.2",
    "react-apexcharts": "^1.4.0",
    "react-bootstrap": "^2.2.2",
    "react-dom": "^17.0.2",
    "react-hook-form": "^7.28.1",
    "react-icons": "^4.3.1",
    "react-router-dom": "^6.2.2",
    "react-scripts": "^5.0.0",
    "react-table": "^7.7.0",
    "sass": "^1.49.9",
    "sass-loader": "^12.6.0",
    "stream-browserify": "^3.0.0",
    "style-loader": "^3.3.1",
    "styled-components": "^5.3.5",
    "util": "^0.12.4",
    "web-vitals": "^2.1.4",
    "webpack": "^5.71.0",
    "webpack-cli": "^4.9.2",
    "webpack-dev-server": "^4.7.4"
  },&lt;/LI-CODE&gt;</description>
      <pubDate>Wed, 13 Apr 2022 17:29:55 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164020#M4168</guid>
      <dc:creator>ShaunLangley</dc:creator>
      <dc:date>2022-04-13T17:29:55Z</dc:date>
    </item>
    <item>
      <title>Re: How to use react-pdf with Experience Builder developer edition</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164021#M4169</link>
      <description>&lt;P&gt;you might consider html2pdf as a better alternative.&amp;nbsp; I found it a bit easier to setup but of course not as flexible to use.&amp;nbsp; So there's a tradeoff there&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 13 Apr 2022 17:32:51 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164021#M4169</guid>
      <dc:creator>ShaunLangley</dc:creator>
      <dc:date>2022-04-13T17:32:51Z</dc:date>
    </item>
    <item>
      <title>Re: How to use react-pdf with Experience Builder developer edition</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164033#M4170</link>
      <description>&lt;P&gt;Thank you very much for the help. Let me try react-pdf first, if still failed to setup, then switch to html2pdf :).&lt;/P&gt;&lt;P&gt;For the config "entry: './src/index.js'" in the webpack.config.js, the file index.js is you manually created? I mean by default the Experience Builder doesn't have that file, correct?&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 13 Apr 2022 17:46:03 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164033#M4170</guid>
      <dc:creator>Ming</dc:creator>
      <dc:date>2022-04-13T17:46:03Z</dc:date>
    </item>
    <item>
      <title>Re: How to use react-pdf with Experience Builder developer edition</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164037#M4172</link>
      <description>&lt;P&gt;you'll have to merge the webpack config code.&amp;nbsp; I didn't implement my solution in the context of exb.&amp;nbsp; Post your code if you can't get it to work and we can troubleshoot&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 13 Apr 2022 17:51:46 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164037#M4172</guid>
      <dc:creator>ShaunLangley</dc:creator>
      <dc:date>2022-04-13T17:51:46Z</dc:date>
    </item>
    <item>
      <title>Re: How to use react-pdf with Experience Builder developer edition</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164050#M4173</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.esri.com/t5/user/viewprofilepage/user-id/109676"&gt;@JunshanLiu&lt;/a&gt;, can you please help on this? How to merge following part&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;: &lt;SPAN class=""&gt;{&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;fallback&lt;/SPAN&gt;: &lt;SPAN class=""&gt;{&lt;/SPAN&gt;
      &lt;SPAN class=""&gt;process&lt;/SPAN&gt;: &lt;SPAN class=""&gt;require&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;"process/browser"&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
      &lt;SPAN class=""&gt;zlib&lt;/SPAN&gt;: &lt;SPAN class=""&gt;require&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;"browserify-zlib"&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
      &lt;SPAN class=""&gt;stream&lt;/SPAN&gt;: &lt;SPAN class=""&gt;require&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;"stream-browserify"&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
      &lt;SPAN class=""&gt;util&lt;/SPAN&gt;: &lt;SPAN class=""&gt;require&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;"util"&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
      &lt;SPAN class=""&gt;buffer&lt;/SPAN&gt;: &lt;SPAN class=""&gt;require&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;"buffer"&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
      &lt;SPAN class=""&gt;asset&lt;/SPAN&gt;: &lt;SPAN class=""&gt;require&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;resolve&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;"assert"&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;}&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;}&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;plugins&lt;/SPAN&gt;: &lt;SPAN class=""&gt;[&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;webpack&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;ProvidePlugin&lt;/SPAN&gt;&lt;SPAN class=""&gt;(&lt;/SPAN&gt;&lt;SPAN class=""&gt;{&lt;/SPAN&gt;
      &lt;SPAN class=""&gt;Buffer&lt;/SPAN&gt;: &lt;SPAN class=""&gt;[&lt;/SPAN&gt;&lt;SPAN class=""&gt;"buffer"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt; &lt;SPAN class=""&gt;"Buffer"&lt;/SPAN&gt;&lt;SPAN class=""&gt;]&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
      &lt;SPAN class=""&gt;process&lt;/SPAN&gt;: &lt;SPAN class=""&gt;"process/browser"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;}&lt;/SPAN&gt;&lt;SPAN class=""&gt;)&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;]&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;to default ArcGIS Experience builder webpack.config.js that has following content?:&lt;/P&gt;&lt;P&gt;const extensionsConfig = require('./webpack/webpack-extensions.config');&lt;/P&gt;&lt;P&gt;if(extensionsConfig.length === 0){&lt;BR /&gt;console.warn('You have to have at least one widget/theme.');&lt;BR /&gt;return;&lt;BR /&gt;}&lt;BR /&gt;module.exports = extensionsConfig;&lt;/P&gt;</description>
      <pubDate>Wed, 13 Apr 2022 18:13:31 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164050#M4173</guid>
      <dc:creator>Ming</dc:creator>
      <dc:date>2022-04-13T18:13:31Z</dc:date>
    </item>
    <item>
      <title>Re: How to use react-pdf with Experience Builder developer edition</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164057#M4174</link>
      <description>&lt;P&gt;you'll probably have to edit webpack-extensions.config.&amp;nbsp; I'm going to try on my end but post something if you get it working.&lt;/P&gt;</description>
      <pubDate>Wed, 13 Apr 2022 18:23:53 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164057#M4174</guid>
      <dc:creator>ShaunLangley</dc:creator>
      <dc:date>2022-04-13T18:23:53Z</dc:date>
    </item>
    <item>
      <title>Re: How to use react-pdf with Experience Builder developer edition</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164313#M4182</link>
      <description>&lt;P&gt;Hi, You can edit the "getWidgetsWebpackConfig" method in "webpack-extensions.common.js"&lt;/P&gt;</description>
      <pubDate>Thu, 14 Apr 2022 08:49:13 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164313#M4182</guid>
      <dc:creator>Junshan_Liu</dc:creator>
      <dc:date>2022-04-14T08:49:13Z</dc:date>
    </item>
    <item>
      <title>Re: How to use react-pdf with Experience Builder developer edition</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164650#M4192</link>
      <description>&lt;P&gt;Thank you very much&amp;nbsp;&lt;a href="https://community.esri.com/t5/user/viewprofilepage/user-id/454780"&gt;@Junshan_Liu&lt;/a&gt;&amp;nbsp; and&amp;nbsp;&lt;a href="https://community.esri.com/t5/user/viewprofilepage/user-id/342186"&gt;@ShaunLangley&lt;/a&gt;&amp;nbsp;. Finally installed it successfully, and here is the steps:&lt;/P&gt;&lt;P&gt;1. Open Command Prompt, go to Experience Builder folder /client, run following commands:&lt;/P&gt;&lt;P&gt;npm install @react-pdf/renderer -S&lt;BR /&gt;npm install process browserify-zlib stream-browserify util buffer assert -S&lt;BR /&gt;npm install iconv-lite -S&lt;BR /&gt;npm install https-browserify -S&lt;BR /&gt;npm install url -S&lt;BR /&gt;npm install stream-http -S&lt;/P&gt;&lt;P&gt;2. Open file&amp;nbsp;webpack-extensions.common.js under /client/wepack, modify function&amp;nbsp;getWidgetsWebpackConfig, add following part to "resolve":&lt;/P&gt;&lt;P&gt;fallback: {&lt;BR /&gt;process: require.resolve("process/browser"),&lt;BR /&gt;zlib: require.resolve("browserify-zlib"),&lt;BR /&gt;stream: require.resolve("stream-browserify"),&lt;BR /&gt;util: require.resolve("util"),&lt;BR /&gt;buffer: require.resolve("buffer"),&lt;BR /&gt;asset: require.resolve("assert"),&lt;BR /&gt;https: require.resolve("https-browserify"),&lt;BR /&gt;url: require.resolve("url/"),&lt;BR /&gt;http: require.resolve("stream-http")&lt;/P&gt;&lt;P&gt;add following part to plguins:&lt;/P&gt;&lt;P&gt;new webpack.ProvidePlugin({&lt;BR /&gt;Buffer: ["buffer", "Buffer"],&lt;BR /&gt;process: "process/browser",&lt;BR /&gt;}),&lt;/P&gt;&lt;P&gt;Here is the one works after modification:&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;function&lt;/SPAN&gt; &lt;SPAN&gt;getWidgetsWebpackConfig&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;entries&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;toBeCopiedFiles&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;toBeCleanFiles&lt;/SPAN&gt;&lt;SPAN&gt;) {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;return&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;entry&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;entries&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;output&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;filename&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;'[name].js'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;path&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;webpackCommon&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;outputPath&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;libraryTarget&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;"system"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;publicPath&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;''&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;chunkFilename&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;pathData&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;assetInfo&lt;/SPAN&gt;&lt;SPAN&gt;) &lt;/SPAN&gt;&lt;SPAN&gt;=&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;return&lt;/SPAN&gt; &lt;SPAN&gt;`&lt;/SPAN&gt;&lt;SPAN&gt;${&lt;/SPAN&gt;&lt;SPAN&gt;pathData&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;chunk&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;runtime&lt;/SPAN&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;SPAN&gt;/&lt;/SPAN&gt;&lt;SPAN&gt;${&lt;/SPAN&gt;&lt;SPAN&gt;pathData&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;chunk&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;hash&lt;/SPAN&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;SPAN&gt;.js`&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; },&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;devtool&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;webpackCommon&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;sourceMapOption&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;resolve&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;alias&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;webpackCommon&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;moduleAlias&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;extensions&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;webpackCommon&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;extensions&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;mainFields&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;webpackCommon&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;resolveMainFields&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;fallback&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;process&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;require&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;resolve&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"process/browser"&lt;/SPAN&gt;&lt;SPAN&gt;),&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;zlib&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;require&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;resolve&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"browserify-zlib"&lt;/SPAN&gt;&lt;SPAN&gt;),&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;stream&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;require&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;resolve&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"stream-browserify"&lt;/SPAN&gt;&lt;SPAN&gt;),&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;util&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;require&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;resolve&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"util"&lt;/SPAN&gt;&lt;SPAN&gt;),&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;buffer&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;require&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;resolve&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"buffer"&lt;/SPAN&gt;&lt;SPAN&gt;),&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;asset&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;require&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;resolve&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"assert"&lt;/SPAN&gt;&lt;SPAN&gt;),&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;https&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;require&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;resolve&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"https-browserify"&lt;/SPAN&gt;&lt;SPAN&gt;),&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;url&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;require&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;resolve&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"url/"&lt;/SPAN&gt;&lt;SPAN&gt;),&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;http&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;require&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;resolve&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"stream-http"&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; },&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;module&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;rules&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;webpackCommon&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;getModuleRules&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;path&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;resolve&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;__dirname&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;'../tsconfig/tsconfig-widgets.json'&lt;/SPAN&gt;&lt;SPAN&gt;))&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; },&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;plugins&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;webpackCommon&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;getPlugins&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;'widgets'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;toBeCopiedFiles&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;toBeCleanFiles&lt;/SPAN&gt;&lt;SPAN&gt;).&lt;/SPAN&gt;&lt;SPAN&gt;concat&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; [ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;new&lt;/SPAN&gt; &lt;SPAN&gt;webpack&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;ProvidePlugin&lt;/SPAN&gt;&lt;SPAN&gt;({&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;Buffer&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;SPAN&gt; [&lt;/SPAN&gt;&lt;SPAN&gt;"buffer"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;"Buffer"&lt;/SPAN&gt;&lt;SPAN&gt;],&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;process&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;"process/browser"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }),&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ]&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; ),&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;externals&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;SPAN&gt; [&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;webpackCommon&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;externalFunction&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; ],&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;stats&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;webpackCommon&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;stats&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;devServer&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;webpackCommon&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;devServer&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; };&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;3. Open file webpack.common under folder /client/wepack, add&amp;nbsp;'browser' to&amp;nbsp;exports.resolveMainFields and here is the one works after modification:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;exports.resolveMainFields = ['browser', 'module', 'main'];&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;----------------------&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;That's all, hope it can help, good luck!&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Thu, 14 Apr 2022 23:53:54 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1164650#M4192</guid>
      <dc:creator>Ming</dc:creator>
      <dc:date>2022-04-14T23:53:54Z</dc:date>
    </item>
    <item>
      <title>Re: How to use react-pdf with Experience Builder developer edition</title>
      <link>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1167088#M4239</link>
      <description>&lt;P&gt;Nice work!&amp;nbsp; Thanks for letting us know how you solved it.&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 22 Apr 2022 16:31:03 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-experience-builder-questions/how-to-use-react-pdf-with-experience-builder/m-p/1167088#M4239</guid>
      <dc:creator>ShaunLangley</dc:creator>
      <dc:date>2022-04-22T16:31:03Z</dc:date>
    </item>
  </channel>
</rss>

