Revolugo Elements Vue 2
@revolugo/elements-vue provides a set of Vue.js 2 components wrapping the Official Revolugo Elements.
Build your pixel-perfect accommodation booking experience
Revolugo Elements is a complete and ready-to-use library of UI components providing everything you need to build a seamless accommodation booking experience for your customers. It brings together industry state-of-the-art building blocks to integrate accommodation products in your ticket selling/registering funnel .
Revolugo Elements Components are tightly connected to Revolugo Booking API.
Revolugo Booking API is the official RESTful API from Revolugo exposing all the necessary endpoints in order to perform each step required to make a complete accommodation booking flow based on Revolugo large accommodation inventory anywhere in the world, from price/availability checking to booking confirmation.
We strongly encourage users of Revolugo Elements to read the Revolugo Booking API documentation in order to have a deeper understanding of Revolugo booking flow : https://booking-api.revolugo.com/v1/documentation which we are going to discuss further in this documentation, within the scope of the use of Revolugo Elements library.
Getting Started
Installation
Using NPM:
npm install -S @revolugo/elements-vue
Using Yarn:
yarn add -S @revolugo/elements-vue
Using PNPM:
pnpm add -P @revolugo/elements-vue
Basic Usage
You need an API Key. Reach out to us to get one: contact@revolugo.com
Configure Vue to use the Components
Initialize the plugin in your main.js
:
import Vue from 'vue'
import RevolugoElementsPlugin from '@revolugo/elements-vue'
import App from './App.vue'
const pluginConfigurationOptions = {
apiEnvironment: 'LIVE',
apiKey: [YOUR_API_KEY],
currency: 'EUR',
installComponents: false,
lang: 'fr-FR',
theme: { primary: '#009688' },
}
Vue.use(RevolugoElementsPlugin, pluginConfigurationOptions)
new Vue({
render (h) {
return h(App)
},
})
.$mount('#app')
Use it anywhere in your components
<template>
<revolugo-vue-hotel-offer-list
address=""
:adultCount="1"
checkInDate="${dayjs().add(1, 'day').format('YYYY-MM-DD')}"
checkOutDate="${dayjs().add(3, 'day').format('YYYY-MM-DD')}"
:latitude="48.8508305"
:longitude="2.2844643"
:roomCount="1"
sourceMarket="FR"
:spacing="12"
:hotelRoomOffersLimit="6"
/>
</template>
<script>
import { components } from '@revolugo/elements-vue'
const { RevolugoVueHotelOfferList } = components
export default {
name: 'App',
components: {
RevolugoVueHotelOfferList,
},
}
</script>
Plugin Configuration options
Name | Type | Requirement | Default | Description |
---|
apiEnvironment | string | Optional | LIVE | The Revolugo environment to use. Valid values: LIVE , SANDBOX |
apiKey | string | Required | undefined | Your Revolugo Publishable API Key. 🛑 Make sure to put your Publishable API key here. Do not put your Secret API key, it would be exposed publicly. Secret API key is supposed to be used exclusively for server-side calls. |
currency | string | Required | undefined | The currency you need to display prices in. |
installComponents | boolean | Required | false | If you want to manually install components, e.g.
import { RevolugoVueHotelOfferList } from '@revolugo/elements-vue'
Vue.component('RevolugoVueHotelOfferList', RevolugoVueHotelOfferList) then set installComponents to 'false'. If you want to automatically install all the components this property must be set to 'true' |
lang | string | Optional | en-US | The language used in components. Valid values: en-US , fr-FR |
theme | object | Optional | { primary: '#007fff', secondary: '#64B5F6', success: '#4CAF50' } | Color theme for the components. All keys are optional |