0.2.4 • Published 2 years ago

firecws v0.2.4

Weekly downloads
-
License
-
Repository
-
Last release
2 years ago

image

FireCws

FireCws は、Chrome用に書かれた拡張機能(.crx)をFirefox用拡張機能(.xpi)にコンパイルするライブラリです。 また、それを用いたChrome WebStoreからFirefoxでインストールできるようにする拡張機能も含まれていました。

なんのために?

Firefoxの欠点として、世界最大のブラウザ拡張機能プラットフォームである、Chrome Web Storeが使えない点がありました。それを解決します。

つかいかた

デフォルトのプラグインを用いてコンパイラを作成:

import { Compiler, defaultPlugins } from 'https://firecws.deno.dev/x'

const compiler = new Compiler({
  plugins: [
    ...defaultPlugins()
  ]
})

Crx FileをChrome Web Storeから読み込み:

import { loadFromChromeWebStore } from 'https://firecws.deno.dev/x'

const extensionId = 'ophjlpahpchlmihnnnihgmmeilfjmjjc' // LINE
const crxData = await loadFromChromeWebStore(extensionId) // Uint8Array

Crx FileからExtensionを作成:

const extension = compiler.fromUint8Array(crxData, {
  extensionId: extensionId // Optional, これがないと動かない場合がある
})

Extensionをxpiにコンパイル:

const xpiData = await extension.compile().compiled // Uint8Array

サポート一覧表

  • 💯 - 完全に動作することが証明済み
  • ✅ - 不自然な点なし
  • ⭕ - 不自然な点があるが、大体の機能は使える
  • 🤔 - エラーがでたりして、完全に機能が使えない。不便。
  • ❌ - インストールができない
名前チェック時拡張機能バージョンチェック時FireCwsバージョンStatus
LINE3.1.20.2.0🤔

問題点

コンパイル構造が肥大化していて、かなりコンパイルが遅いです。

Special Thanks

  • @EdamAme-x
    • LINE が origin を判定している事実とその解決策のアドバイス

ライセンス

特にファイルに明記してない限り、MIT LICENSEとします。

貢献

CONTRIBUTING.mdを読んでみてください

0.2.4

2 years ago

0.2.3

2 years ago

0.2.2

2 years ago

0.2.1

2 years ago

0.2.0

2 years ago