sigame-packs-api
v1.2.3
Published
API wrapper for sigame.ru which displays info about SiGame packs
Downloads
1
Readme
SiGame.ru API wrapper
Враппер апи для сайта sigame.ru
Установка
$ npm i sigame-packs-api
Использование
Пример
Примеры вы можете найти в папке examples
import SIGamePacksAPI from 'sigame-packs-api'
const api = new SIGamePacksAPI()
const packs = await api.query()
.newest()
.page(1)
console.log(packs[0].getName())
API библиотеки
Каждый запрос начинается с .query() и заканчиватеся .page(n) где n — номер страницы результатов, с которой нужно вывести паки.
Между этими методами вы можете цепочкой добавить сортировку, ограничения, поиск по словам и тегам.
Метод возвращает promise, который возвращает массив вида
[
Array,
next: f(),
prev: f()
]
Таким образом вы можете использовать результат как массив паков и перемещаться по страницам с помощью асинхронных методов .next() и .prev()
search(term, ?options) : фильтр
Используется для поиска по слову. Объект options
необязательный, он указывается для того, чтобы искать только в некоторых полях.
Формат объекта options
:
{
name: Boolean, // Искать в названии пака
themes: Boolean, // Искать в названиях тем пака
rounds: Boolean, // Искать в названиях раундов пака
questions: Boolean, // Искать в вопросах пака
answers: Boolean, // Искать в ответах пака
comments: Boolean, // Искать в комментариях пака
authors: Boolean, // Искать в авторах пака
posterID: Boolean, // Искать в VK ID автора пака
date: Boolean // Искать в дате публикации пака
}
По умолчанию все значения равны false, все неизвестные свойства игнорируются
tags(tags<Array[String]>) : фильтр
Используется для поиска по тегам
newest() : сортировка
Сортировать по дате публикации по убыванию
oldest() : сортировка
Сортировать по дате публикации по возрастанию
mostPopular() : сортировка
Сортировать по загрузкам по убыванию
leastDownloaded() : сортировка
Сортировать по загрузкам по возрастанию
mostQuestions() : сортировка
Сортировать по количеству вопросов по убыванию
leastQuestions() : сортировка
Сортировать по количеству вопросов по возрастанию
biggest() : сортировка
Сортировать по размеру по убыванию
smallest() : сортировка
Сортировать по размеру по возрастанию
maxMB(mb) : фильтр
Отфильтровать паки, размер больше mb
notContains(options) : фильтр
Используется для того, чтобы отфильтровать паки, где в сценариях есть особые события
Формат объекта options
:
{
audio: Boolean, // Искать паки, где нет аудио
video: Boolean, // Искать паки, где нет видео
images: Boolean, // Искать паки, где нет изображений
text: Boolean // Искать паки, где нет текста
}
По умолчанию все значения равны false, все неизвестные свойства игнорируются
Экземпляр класса Pack
getId() : string
ID пака на сайте sigame.ru
getName() : string
Название пака
getAuthors() : Array[string]
Авторы пака
getDate() : Date
Дата в content.xml пака
getDifficulty() : number
Сложность в content.xml пака
getPublishDate() : Date
Дата публикации в вк
getAuthorVKId() : number
Автор поста в вк
getFile() : string
Объект вида
{
size: Number // Размер в байтах
downloads: Number, // Скачивания
url: String // Ссылка на скачивание файла
}
getRounds() : Array[Object]
Массив раундов
async getContentXML() : string
❗️ Асинхронный метод ❗️
Получает с сервера content.xml в сыром формате в виде строки
Все права на SiGame принадлежат Владимиру Хилю, все права на паки принадлежат их авторам, я не владелец sigame.ru и sigame.xyz