組み込み JS ライブラリ
Proxyman Scripting に同梱されている lodash、crypto-js、hashes などの JavaScript ライブラリを確認し、require() で独自のライブラリをインポートする方法を紹介します。
1. 概要
Proxyman には、よくある処理を簡単に行えるように、便利な JavaScript ライブラリがいくつか同梱されています。
備考
ライブラリの場所は ~/Library/Application\ Support/com.proxyman.NSProxy/addons/libs です。
ヒント
Proxyman macOS 6.10.0 以降では、ネイティブの `npm install` を使ってサードパーティのライブラリをインストールできます。use-npm-install.md を参照してください。
2. 組み込みライブラリ
| 名前 | 説明 | ソース |
|---|---|---|
| base64.js | 基本的な Base64 のエンコード/デコードを含みます | - |
| atob.js | window.atob() | https://github.com/jsdom/abab |
| btoa.js | window.btoa() | https://github.com/jsdom/abab |
| hashes.js | MD5、RIPEMD-160、SHA1、SHA256、SHA512、HMAC などのさまざまなハッシュ関数を含みます | https://github.com/h2non/jshashes |
| lodash.js | さまざまなテキスト変換関数を含みます | https://lodash.com |
| vkBeautify.js | XML、JSON、CSS、SQL 形式のテキストを整形または圧縮します | https://github.com/kayhadrin/vkBeautify/ |
| crypto-js.min.js | DES、AES、Rabbit などの標準的で安全な暗号アルゴリズムを JavaScript で実装したライブラリです(バージョン 3.3.0) | https://cryptojs.gitbook.io/docs/ |
| pako.js | Deflate/Inflate と GZip/UnGZip に対応した zlib の移植版です(バージョン 1.0.11) | https://github.com/nodeca/pako |
3. 独自の JS ライブラリをインポートするには
- 独自の JS ライブラリを用意できますが、Browserify または WebPack を使って、すべての依存関係を 1 つの JS ファイルにまとめてください。
- 関数を正しくエクスポートしてください。
- ファイルを ~/Library/Application\ Support/com.proxyman.NSProxy/addons/libs/your-lib.js に配置します。
- 次のようにして、ファイルをインポートします。
require('@libs/your-lib.js');
たとえば、次のようになります。
const Hashes = require('@libs/hashes.js');
const { cssmin } = require('@libs/vkBeautify.js');
const Lodash = require('@libs/lodash.js');
const { atob } = require('@libs/atob.js')
備考
組み込みライブラリの参考として、~/Library/Application\ Support/com.proxyman.NSProxy/addons/libs/ を確認できます。
4. 注意事項
備考
Proxyman の組み込みアドオンの実現につながった Boop アプリを開発した Ivan Mathy 氏に感謝します。