Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Component Request - FTVA DropdownButton #554

Open
tinuola opened this issue Jul 10, 2024 · 1 comment
Open

Component Request - FTVA DropdownButton #554

tinuola opened this issue Jul 10, 2024 · 1 comment
Assignees
Labels
feature feature

Comments

@tinuola
Copy link
Contributor

tinuola commented Jul 10, 2024

Component Description

This component is a button with a dropdown modal, and will be used to create the Share button and the Add to Calendar button.

  • the former is used on article pages and shares the corresponding page link
  • the latter is used on event pages and triggers a user's selected calendar platform to create/add the corresponding event

Share-Dropdown

Calendar-Dropdown

Design

add-to-calendar-mobile

  • Share Button Collapsed:
share-mobile-collapsed
  • Share Button Expanded:
    share-mobile-expanded

Slots

No Slots

Props

Event data pending from UX

props: {
    eventDetail: { 
        type: Object,
        default: () => {}
    },
    socialList: {
        type: Array, // social objects?
        default: () => [] 
    },
    title: { // Button Text
        type: String,
        default: () => ""
    },
    hasIcon: { // Not the dropdown toggle icon
        type: Boolean,
        default: () => ""
    },
   ...
}

Developer Tips

  1. See annotations for styling details:
  1. Share APIs for social media links:
  1. Use useRoute to retrieve event detail page url for social media sharing

  2. Use Add to Calendar Button plugin for calendar configuration: https://add-to-calendar-button.com/

  1. Pass properties from the eventDetail object (or whatever that prop will be called...) to the add-to-calendar component ; See plugin configuration page for potential attributes that can be used / correlate with data we want to provide
<add-to-calendar-button
      name="Title"
      options="'Apple','Google'"
      location="World Wide Web"
      startDate="2023-02-03"
      endDate="2023-02-03"
      startTime="10:15"
      endTime="23:30"
      timeZone="America/Los_Angeles"
      debug
    ></add-to-calendar-button>

Events

  1. When button is clicked, a dropdown box/modal appears
  2. Social media and calendar links open to respective platform (login/auth) pages
  3. .ics link in calendar dropdown downloads an .ics file

Child components

  • iconWithLink
    • This component may need to be updated to include icons for calendars; the twitter-x and link icons in the Share dropdown
  • add-to-calendar-button component
@tinuola tinuola self-assigned this Jul 10, 2024
@jendiamond jendiamond changed the title WIP: Component Request - FTVA Dropdown Button WIP: Component Request - FTVA DropdownButton Jul 11, 2024
@tinuola tinuola changed the title WIP: Component Request - FTVA DropdownButton Component Request - FTVA DropdownButton Jul 12, 2024
@farosFreed
Copy link
Contributor

not sure if I'm the one implementing this, but looks good to me ✅
Appreciate all the legwork you did on the calendar implementation questions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature feature
Projects
None yet
Development

No branches or pull requests

2 participants