Giter Club home page Giter Club logo

Comments (4)

govza avatar govza commented on May 14, 2024 2

Coming across the issue, it looks like web-extension polyfill is not needed anymore for manifest v3.
Firefox support though, achievable by small edition of manifest-parser (there is some small differences).

static convertManifestToString(manifest: Manifest): string {
    if (process.env.__FIREFOX__) {
      manifest = this.convertToFirefoxCompatibleManifest(manifest);
    }
    return JSON.stringify(manifest, null, 2);
  }

  static convertToFirefoxCompatibleManifest(manifest: Manifest) {
    const manifestCopy = {
      ...manifest,
    } as { [key: string]: unknown };

    manifestCopy.background = {
      scripts: [manifest.background?.service_worker],
      type: "module",
    };
    manifestCopy.options_ui = {
      page: manifest.options_page,
      browser_style: false,
    };
    manifestCopy.content_security_policy = {
      extension_pages: "script-src 'self'; object-src 'self'",
    };
    delete manifestCopy.options_page;
    return manifestCopy as Manifest;
  }

and

export default function customDynamicImport(): PluginOption {
  return {
    name: "custom-dynamic-import",
    renderDynamicImport() {
      if (process.env.__FIREFOX__) {
        return {
          left: `
        {
          const dynamicImport = (path) => import(path);
          dynamicImport(browser.runtime.getURL('./') + 
          `,
          // eslint-disable-next-line prettier/prettier
          right: ".split('../').join(''))}",
        };
      } ...

let me know if we want this as PR.

from chrome-extension-boilerplate-react-vite.

Jonghakseo avatar Jonghakseo commented on May 14, 2024

Unfortunately, Firefox compatibility is not considered.
Because I personally don't use Firefox. 😞

from chrome-extension-boilerplate-react-vite.

Jonghakseo avatar Jonghakseo commented on May 14, 2024

Although it's a bit cumbersome, it looks like you'll have to add the polyfill yourself.

from chrome-extension-boilerplate-react-vite.

Jonghakseo avatar Jonghakseo commented on May 14, 2024

@govza

I'm not a big fan of firefox, but I think this will help a lot of other people who are looking forward to firefox support.

If you could post a PR, I would be so grateful!

from chrome-extension-boilerplate-react-vite.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.