UNPKG

@flyyer/flyyer-lite

Version:

Flyyer.io helper classes and methods to generate smart URL to render images.

48 lines (47 loc) 2.16 kB
import type { FlyyerExtension } from "./ext"; import type { FlyyerMetaVariables } from "./meta"; import type { FlyyerVariables } from "./variables"; export interface FlyyerCommonParams<T extends FlyyerVariables> { /** * Optional. Leave empty `""` or as `_` to always grab the latest version. */ version?: string | number | undefined | null; /** * Supported extensions are: `"jpeg" | "jpg" | "png" | "webp"` */ extension?: FlyyerExtension | undefined | null; /** * JS serializable variables. * @example * const flyyerRender = new FlyyerRender({ variables: { title: "Hello world", image: "https://example.com/logo.png" } }) * console.log(flyyerRender.href()) * // https://cdn.flyyer.io/r/v2/TENANT/DECK/TEMPLATE.jpeg?title=Hello+world&image=https%3A%2F%2Fexample.com%2Flogo.png * @example * const flyyer = new Flyyer({ variables: { title: "Hello world", image: "https://example.com/logo.png" } }) * console.log(flyyer.href()) * // https://cdn.flyyer.io/v2/flyyer-com/_/title=Hello+world&image=https%3A%2F%2Fexample.com%2Flogo.png/ */ variables?: T | undefined | null; /** * Meta variables usually have values assigned by Flyyer depending on how and where images are rendered. * * You can force these values here. * @example * const meta: FlyyerMetaVariables ={ * width: 1080, // in pixels * height: 1080, // in pixels * v: null, // disable cache-burst * id: "my-id", // analytics id * } * const flyyerRender = new FlyyerRender({ meta }); * const flyyer = new Flyyer({ meta }); * @example * `https://cdn.flyyer.io/r/v2/flyyer/default/main.jpeg?__v=disabled` * `https://cdn.flyyer.io/r/v2/flyyer/default/main.jpeg?_w=1080&_h=1080` * `https://cdn.flyyer.io/v2/flyyer-com/_/_/?__v=disabled` * `https://cdn.flyyer.io/v2/flyyer-com/_/_w=1080&_h=1080/marketplace` */ meta?: FlyyerMetaVariables | undefined | null; secret?: string | undefined | undefined | null; strategy?: "JWT" | "HMAC" | undefined | null; }