propr
v1.0.3
Published
A proper way to interface with prepr.io
Downloads
1
Readme
propr
A proper way to interface with the Prepr API. This package provides an easy-to-use interface for fetching data from Prepr and supports GraphQL queries.
Installation
To install the package, run:
pnpm install propr
Usage
To use propr, import the createPreprClient function from the package and call it with the options for your Prepr account:
import { createPreprClient } from "propr";
const client = createPreprClient({
token: "your_token_here",
});
Once you have created the client, you can use it to fetch data from Prepr:
const articles = await client.fetch("/articles");
You can also chain various methods to the client to specify additional options:
const articles = await client.sort("publishedAt").limit(10).fetch("/articles");
The client also supports GraphQL queries:
const query = `query ($slug: String!) {
article(slug: $slug) {
id
title
publishedAt
}
}`;
const variables = { slug: "your-article-slug" };
const article = await client
.graphqlQuery(query)
.graphqlVariables(variables)
.fetch();
API
createPreprClient(options: PreprClientOptions) => PreprClient
Creates a new instance of the Prepr client.
Options
- token (required): The access token for your Prepr account.
- baseUrl: The base URL for the Prepr API (default: https://cdn.prepr.io).
- timeout: The timeout for API requests, in milliseconds (default: 4000).
- userId: The user ID for A/B testing.
PreprClient
The Prepr client class.
Methods
userId(userId: string | number): PreprClient
Sets the user ID for A/B testing.
timeout(milliseconds: number): PreprClient
Sets the timeout for API requests, in milliseconds.
sort(field: string): PreprClient
Sets the field to sort the results by.
limit(limit: number): PreprClient
Sets the maximum number of results to return.
skip(skip: number): PreprClient
Sets the number of results to skip.
path(path: string): PreprClient
Sets the path for the API request.
token(token: string): PreprClient
Sets the access token for the Prepr account.
graphqlQuery(graphqlQuery: string): PreprClient
Sets the GraphQL query for the API request.
graphqlVariables(graphqlVariables: object): PreprClient
Sets the variables for the GraphQL query.
fetch<T = any>(request?: RequestInfo, options?: FetchOptions<"json">): Promise<T>
Fetches data from the Prepr API.
Properties
query: URLSearchParams
The URL search parameters for the API request.