Greasy Fork

atcoder-userscript-libs

AtCoderのページ上で動作するスクリプト用のライブラリです。

目前为 2019-07-07 提交的版本。查看 最新版本

此脚本不应直接安装,它是一个供其他脚本使用的外部库。如果您需要使用该库,请在脚本元属性加入:// @require https://update.greasyfork.icu/scripts/386712/715478/atcoder-userscript-libs.js

作者
keymoon
版本
0.0.1.20190705171646
创建于
2019-06-23
更新于
2019-07-07
大小
24.0 KB
许可证
暂无

## 概要
AtCoder上で動くUserScriptを補助するライブラリです。


## ソースについて
このライブラリは複数ファイルを1つにまとめたものです。ソースの詳細は[GitHub](https://github.com/key-moon/atcoder-userscript-libs)を参照してください。一行目以外同一のものをビルド可能なソースコードを公開しています。(一行目はグローバルへエクスポートするために改変を行っています。)

## 使い方
まず、UserScriptのHeaderに以下のような行を追加してください。
``` JS
// @require https://greasyfork.org/scripts/386712-atcoder-userscript-libs/code/atcoder-userscript-libs.js?version=715082
```
### 素のJavaScriptで開発する場合
ツールなどを用いずにこのライブラリを使用する場合は、グローバルに存在しているusLibsオブジェクトの中に格納されているライブラリ内にあるオブジェクトやクラスを用いることになります。
例えば、以下のようなコードを実行するとalertでdiverta2019-2のコンテスト情報を表示します。
``` JavaScript
var contestInformation = await usLibs.contestInformation.fetchContestInformation("diverta2019-2");
alert(JSON.stringify(contestInformation));
```

### モジュールバンドラを用いる場合
WebPack等のモジュールバンドラを用いる場合は、[公開しているパッケージ](https://www.npmjs.com/package/atcoder-userscript-libs)をプロジェクトにインストールすることをお勧めします。
インストールした後、`webpack.config.js`でexternalの記述を以下のようにしてください。:
``` JSON
externals: {
"atcoder-userscript-libs": "usLibs",
"atcoder-userscript-libs/src/libs/data": "usLibs.data",
"atcoder-userscript-libs/src/libs/rating": "usLibs.rating",
"atcoder-userscript-libs/src/libs/global": "usLibs.global",
"atcoder-userscript-libs/src/libs/contestInformation": "usLibs.contestInformation"
}
```
そうすることで依存関係の中にuserscript-libsを取り込め、
``` JavaScript
import { fetchContestInformation } from "atcoder-userscript-libs/src/libs/contestInformation";
var contestInformation = await fetchContestInformation("diverta2019-2");
alert(JSON.stringify(contestInformation));
```
と書けるようになります。