@bryan-hoang/aoc-client
v1.0.0
Published
An Advent of Code client library
Readme
@bryan-hoang/aoc-client
A TS library for Advent of Code.
It was primarily developed to build the
@bryan-hoang/aoc-cli
command-line tool, but it can also be integrated into other projects.
Table of Contents
Install
# ✨ Auto-detect
npx nypm install @bryan-hoang/aoc-client
# npm
npm install @bryan-hoang/aoc-client
# yarn
yarn add @bryan-hoang/aoc-client
# pnpm
pnpm install @bryan-hoang/aoc-client
# bun
bun install @bryan-hoang/aoc-client
# deno
deno install @bryan-hoang/aoc-clientUsage
Importing:
ESM (Node.js, Bun, Deno)
import { AocClientBuilder, AocClient } from "@bryan-hoang/aoc-client";CommonJS (Legacy Node.js)
const { AocClientBuilder, AocClient } = require("@bryan-hoang/aoc-client");CDN (Deno, Bun and Browsers)
import {
AocClientBuilder,
AocClient,
} from "https://esm.sh/@bryan-hoang/aoc-client";API:
:factory: AocClientBuilder
Methods
- buildClient
- #validateBuild
- getSessionCookieFromDefaultLocations
- getSessionCookieFromFile
- getDefaultSessionCookieFile
- sessionCookie
- year
- day
- latestPuzzleDay
- latestEventYear
- overwriteFiles
:gear: buildClient
| Method | Type |
| ---------- | ---------- |
| buildClient | () => AocClient |
:gear: #validateBuild
| Method | Type |
| ---------- | ---------- |
| #validateBuild | () => asserts this is this and { _sessionCookie: string; _year: number; _day: number; } |
:gear: getSessionCookieFromDefaultLocations
| Method | Type |
| ---------- | ---------- |
| getSessionCookieFromDefaultLocations | () => AocClientBuilder |
:gear: getSessionCookieFromFile
| Method | Type |
| ---------- | ---------- |
| getSessionCookieFromFile | (file: string) => AocClientBuilder |
:gear: getDefaultSessionCookieFile
| Method | Type |
| ---------- | ---------- |
| getDefaultSessionCookieFile | () => string |
:gear: sessionCookie
| Method | Type |
| ---------- | ---------- |
| sessionCookie | (sessionCookie: string) => AocClientBuilder |
:gear: year
| Method | Type |
| ---------- | ---------- |
| year | (year: number) => AocClientBuilder |
:gear: day
| Method | Type |
| ---------- | ---------- |
| day | (day: number) => AocClientBuilder |
:gear: latestPuzzleDay
| Method | Type |
| ---------- | ---------- |
| latestPuzzleDay | () => AocClientBuilder |
:gear: latestEventYear
| Method | Type |
| ---------- | ---------- |
| latestEventYear | () => AocClientBuilder |
:gear: overwriteFiles
| Method | Type |
| ---------- | ---------- |
| overwriteFiles | (overwriteFiles: boolean) => AocClientBuilder |
:factory: AocClient
Methods
:gear: getBuilder
| Method | Type |
| ---------- | ---------- |
| getBuilder | () => AocClientBuilder |
:gear: ensureDayUnlocked
| Method | Type |
| ---------- | ---------- |
| ensureDayUnlocked | () => void |
:gear: isDayUnlocked
| Method | Type |
| ---------- | ---------- |
| isDayUnlocked | () => boolean |
Maintainers
Contributing
PRs accepted.
Small note: if editing the README, please conform to the standard-readme specification.
License
MIT © 2024 Bryan Hoang
🤖 auto updated with automd
