Simulate Shiny "brush" in HighCharter with `hc_add_event_point` and/or `hc_add_event_series`

I have hotel reservation dataset which consists of "book_date", "check_in", "check_out" and "revenue". I would like to draw 2 charts - "revenue by booking date" vs "revenue by check-in date"; which I could highlight/zoom in particular booking period (says Jan 2018) to understand revenue for corresponding check-in period (says Feb - Apr 2018).

I achieved this by incorporating Shiny "brush" in R Flexdashboard. The idea is that, when nothing is "brush" on "revenue by booking date", "revenue by check-in date" will show a default chart (i.e. revenue for all check-in date). If user zoom in a period in "revenue by booking date", "revenue by check-in date" will react accordingly. 

Below are my codes:

> library(flexdashboard) 
> library(shiny)
> library(tidyverse)

Chart 1: revenue by booking date

> shiny::plotOutput(outputId = "revenue_book", brush = brushOpts(id = "brush", direction = "x"))

> output$revenue_book <- shiny::renderPlot(
> df %>% filter(book_year == 2018) %>%
> group_by(book_date) %>%
> summarise(revenue = sum(price)) %>%
> ungroup() %>%
> ggplot(aes(book_date, revenue)) + geom_line() + geom_point(color = "red") + theme_bw()
> )

Chart 2: 2. revenue by check-in date

> shiny::renderPlot({
> 
> if (is.null(input$brush$xmin)) {
> p <- df %>% filter(book_year == 2018) %>%
> group_by(check_in) %>% summarise(revenue = sum(price)) %>% ungroup()
> p %>% ggplot(aes(check_in, revenue)) + geom_line() + geom_point(color = "blue") + theme_bw()
> }
> else {
> q <- df %>% filter(between(book_date, input$brush$xmin, input$brush$xmax)) %>%
> group_by(check_in) %>% summarise(revenue = sum(price)) %>% ungroup()
> 
> q %>% ggplot(aes(check_in, revenue)) + geom_line() + geom_point(color = "blue") + theme_bw()
> 
> }
> })

However, I realize "brush" work best with ggplot2. 

Now I try to build interactive time series chart for booking revenue & check-in revenue that allows user to "zoom in" a period by highlighting a region on the booking revenue chart, then click on a point / brush the highlighted zone. A series of "book_date" will be captured then send to server. Check-In revenue chart will respond accordingly. 

I plan to achieve this with ***"HighCharter"*** package; specifically with `hc_add_event_point` and/or `hc_add_event_series`.

The best reference I could find is: [Shiny events demo](https://cran.r-project.org/web/packages/highcharter/vignettes/shiny-events-demo.html) and nothing else.

Would like to know anyone has experience using `hc_add_event_point` and/or `hc_add_event_series`?