text: const HtmlWebpackInlineSourcePlugin = require('html-webpack-inline-source-plugin')
  const HtmlWebpackPlugin = require('html-webpack-plugin')
  const path = require('path')
  
  module.exports = (env, argv) => ({
      mode: argv.mode === 'production' ? 'production' : 'development',
  
      // This is necessary because Figma's 'eval' works differently than normal eval
      devtool: argv.mode === 'production' ? false : 'inline-source-map',
      // Tells Webpack to generate "ui.html" and to inline "ui.ts" into it
  
      entry: {
          ui: './src/ui.tsx', // The entry point for your UI code
          code: './src/code.ts', // The entry point for your plugin code
      },
  
      module: {
          rules: [
  
              // Allows you to use "<%= require('./file.svg') %>" in your HTML code to get a data URI
              { test: /\.(png|jpg|gif|webp|svg)$/, loader: 'url-loader' },
  
              // Converts TypeScript code to JavaScript
              {
                  test: /\.tsx?$/,
                  use: 'ts-loader',
                  exclude: /node_modules/,
              },
  
              // Enables including CSS by doing "import './file.css'" in your TypeScript code
              { test: /\.css$/, use: ['style-loader', { loader: 'css-loader' }] },
  
          ],
  
      },
  
      // Webpack tries these extensions for you if you omit the extension like "import './file'"
      resolve: { extensions: ['.tsx', '.ts', '.jsx', '.js'] },
  
      output: {
          filename: '[name].js',
          path: path.resolve(__dirname, 'dist'), // Compile into a folder called "dist"
          publicPath: '/'
      },
  
      plugins: [
          new HtmlWebpackPlugin({
              template: './src/ui.html',
              filename: 'ui.html',
              inlineSource: '.(js)$',
              chunks: ['ui'],
              inject: 'body', //script 标签位于html文件的 body 底部
          }),
  
          new HtmlWebpackInlineSourcePlugin(HtmlWebpackPlugin),
          // new HtmlWebpackInlineSourcePlugin()
      ],
  
  
  })