atcoder-userscript-libs

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

As of 07/07/2019. See the latest version.

This script should not be not be installed directly. It is a library for other scripts to include with the meta directive // @require https://updategreasyfork.deno.dev/scripts/386712/715478/atcoder-userscript-libs.js

Autor
keymoon
Verzija
0.0.1.20190705171646
Napravljeno
23/06/2019
Ažurirano
07/07/2019
Size
24 КБ
Licenca
Nije dostupno

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


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

## 使い方
まず、UserScriptのHeaderに以下のような行を追加してください。
``` JS
// @require https://gf.zukizuki.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));
```
と書けるようになります。