DoubleDutch client library for building admin pages for extensions within the CMS.
The easiest way to get started is to install the DoubleDutch command line tool and run doubledutch init
.
See also @doubledutch/firebase-connector for an easy backend for your DoubleDutch extension.
import client from '@doubledutch/admin-client'
client.getToken().then(token => console.log(`${token} is a valid DoubleDutch CMS access token, usually used indirectly by other client libraries.`))
class App extends React.Component {
constructor(props) {
super(props)
this.state = {}
client.getCurrentUser()
.then(currentUser => this.setState({currentUser}))
}
render() {
const {currentUser} = this.state
return (
<div>
{currentUser && <div>Hello {currentUser.firstName}</div>}
</div>
)
}
}
Returns a Promise which resolves to a valid CMS access token. Normally used indirectly by other client libraries to access the DoubleDutch platform.
client.getToken().then(token => /* Use the token. */)
Returns a Promise which resolves to the attendee in the current event.
client.getAttendee(42).then(attendee => console.log(attendee))
Returns a Promise which resolves to all the attendees in the current event, or the top 200 filtered by a query string.
client.getAttendees().then(attendees => console.log(attendees))
client.getAttendees('John').then(attendees => console.log(attendees))
Returns a Promise which resolves to all the attendee groups in the current event
client.getAttendeeGroups().then(groups => console.log(groups))
Returns a Promise which resolves to information about the current event
client.getCurrentEventInfo().then(evt => console.log(evt))
{
"name": "SKO",
"id": "sample-event-id",
"timeZone": "America/Los_Angeles",
"startDate": "2018-04-26T00:00:00",
"endDate": "2018-04-27T00:00:00",
"canRegister": false,
}
Returns a Promise which resolves to all the attendee groups in the current event, for events with Content Visibility enabled.
client.getTiers().then(tiers => console.log(tiers))
Returns a Promise which resolves to the parsed response body for a successful CMS request for the current event.
client.cmsRequest('GET', '/api/users').then(users => console.log(users))
Instructs the parent CMS window to navigate to a relative URL.
client.navigateCms('/some/other/page')
Returns the base url of the parent CMS window.
client.getCmsBaseUrl()