1.2.3 • Published 3 years ago

sigame-packs-api v1.2.3

Weekly downloads
-
License
MIT
Repository
github
Last release
3 years ago

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<ArrayString>) : фильтр

Используется для поиска по тегам

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() : Arraystring

Авторы пака

getDate() : Date

Дата в content.xml пака

getDifficulty() : number

Сложность в content.xml пака

getPublishDate() : Date

Дата публикации в вк

getAuthorVKId() : number

Автор поста в вк

getFile() : string

Объект вида

{
  size: Number // Размер в байтах
  downloads: Number, // Скачивания
  url: String // Ссылка на скачивание файла
}

getRounds() : ArrayObject

Массив раундов

async getContentXML() : string

❗️ Асинхронный метод ❗️

Получает с сервера content.xml в сыром формате в виде строки


Все права на SiGame принадлежат Владимиру Хилю, все права на паки принадлежат их авторам, я не владелец sigame.ru и sigame.xyz

1.2.3

3 years ago

1.2.2

3 years ago

1.2.1

3 years ago

1.2.0

3 years ago

1.1.2

3 years ago

1.1.1

3 years ago

1.1.0

3 years ago

1.0.0

3 years ago