Skip to main content

Theming API

Use the below variables to customize and theme the booking engine for your website.

Each of these variables has a defined default value which you can override by explicitly setting a variable in the style object. This object will be set as the value to the style parameter in the configuration object in the initSkipper function call.

type Style = {
// FONT CONFIGURATIONS
primaryFont?: StyleFont | string;
primaryFontBaseSize?: string;
primaryFontColor?: string;
secondaryFont?: StyleFont | string;
baseFontSize?: string;
secondaryFontColor?: string;

// MAIN COLOR CONFIGURATIONS
primaryColor?: string;
accentColor?: string;
accentFontColor?: string;
primaryBorderColor?: string;
primaryBackgroundColor?: string;
secondaryBackgroundColor?: string;
infoBackgroundColor?: string;
infoFontColor?: string;
overlay?: Overlay | string;

// ADDITIONAL COLOR CONFIGURATIONS
placeholderFontColor?: string;
alertBackgroundColor?: string;
successColor?: string;
errorColor?: string;
errorBackgroundColor?: string;
warningColor?: string;

// OPACITY
inactiveOpacity?: number;
disabledOpacity?: number;
highlightOpacity?: number;
stateOpacity?: number;
};

type StyleFont = {
family: string;
transform?: "uppercase" | "capitalize" | "lowercase" | "none";
letterSpacing?: string; // accepts any valid CSS value for the letter-spacing property
};

type Overlay = {
backgroundColor?: string;
opacity?: number;
};
FieldDescriptionFormatDefault Value
primaryFontThis is your brand's main header font type and will be applied broadly to header, and CTA text elements. You can either specify a font family as a string, or specify a StyleFont object if, in addition to the font family, you want transform the text in one of the specified ways. We expect this font family value to be already available in the environment of the website.OTF, TTF or StyleFont objectHelvetica
primaryFontBaseSizeThe base font size for your header text. Increase this if your primaryFont is small.absolute size in pixels16px
primaryFontColorThe color of your primaryFont text used for headers.HEX value#000000
secondaryFontThis is your brand's main body font type and will be applied broadly to body, link, subheading, and description text elements. You can either specify a font family as a string, or specify a StyleFont object if, in addition to the font family, you want transform the text in one of the specified ways. We expect this font family value to be already available in the environment of the website.OTF, TTF or a StyleFont objectHelvetica
baseFontSizeThe base font size for your main body text. Increase this if your secondaryFont is small.absolute size in pixels16px
secondaryFontColorThe color of your secondaryFont text used for the main body text.HEX value#767676
primaryColorThis is your brand's main color and will be used across all CTA types. Additionally, opacity variations of this color will be applied in limited use as visual highlights or to designate inactive elements.HEX value#000000
accentColorThis is your brand's secondary color and will be used in limited use for banner & message elements.HEX value#3E8791
accentFontColorThe color of additional text that will be displayed with the accentColor as the background.HEX value#FFFFFF
primaryBorderColorThe color for the calendar outline, form field border and loading placeholder animationHEX value#D9D9D9
primaryBackgroundColorThe main background color of the booking engineHEX value#FFFFFF
secondaryBackgroundColorThe background color for areas where there is secondary informationHEX value#F1F2F4
infoBackgroundColorThe background color for the filter/sort-by dropdown.HEX value#f3f3f3
infoFontColorThe text color that will be displayed with the infoBackgroundColor as the background.HEX value#1e293b
overlayThis allows you to configure the widget's overlay background color and opacity.HEX value or Overlay object
placeholderFontColorThe color for placeholder text in form fieldsHEX value#A9A9A9
alertBackgroundColorThe background color for areas that will display an alertHEX value#7e7e7e
successColorThe text color for success messagingHEX value#22c55e
errorColorThe text color for error messagingHEX value#b91c1c
errorBackgroundColorThe background color for error messagingHEX value#ef5151
warningColorThe text color for warning messagingHEX value#facc15
inactiveOpacityThe opacity for inactive statesHEX value0.5
disabledOpacityThe opacity for disabled statesHEX value0.3
stateOpacityThe opacity for focused, highlighted statesHEX value0.4

Examples

With StyleFont

window.initSkipper({
target: "skipper-target",
targetIds: ["main-reserve-button"],
targetClasses: ["other-reserve-buttons"],
hotelId: "HOTELID",
style: {
primaryColor: "#1B3A5C",
accentColor: "#7F9580",
primaryFont: {
family: "Comic Sans MS",
transform: "capitalize",
letterSpacing: "0.5px",
},
},
fallbackUrl: "https://<enter-fallback-CRS-or-PMS-site-here>",
});

Without StyleFont

window.initSkipper({
target: "skipper-target",
targetIds: ["main-reserve-button"],
targetClasses: ["other-reserve-buttons"],
hotelId: "HOTELID",
style: {
primaryColor: "#1B3A5C",
accentColor: "#7F9580",
primaryFont: "Comic Sans MS",
},
fallbackUrl: "https://<enter-fallback-CRS-or-PMS-site-here>",
});