Skip to content
New issue

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

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

Already on GitHub? # to your account

[🚩esl-share]: beta version of esl-share module #1327

Closed
ala-n opened this issue Nov 7, 2022 · 1 comment · Fixed by #1358 or #1664
Closed

[🚩esl-share]: beta version of esl-share module #1327

ala-n opened this issue Nov 7, 2022 · 1 comment · Fixed by #1358 or #1664
Assignees
Labels
feature New feature

Comments

@ala-n
Copy link
Collaborator

ala-n commented Nov 7, 2022

As an ESL consumer, I want a simple OOTB solution to create share popups/icons.

Scope of the epic:

  • esl-share custom element with the ability to provide Share API with configured UX
  • abstract implementation to configure share networks
    • abstract provider
    • support for in-memory provider
    • support for custom providers (e. g. async service)
    • support for a custom implementation
  • list view
    • the ability to show a provider-defined list of social networks as list/grid view
    • NTH: make sure simple animations so collapse the list applicable with pure CSS
  • popup view
    • the ability to show the networks list inside the popup associated with the esl-share component
  • Discuss: the ability to use a single share-button as a component
@ala-n ala-n added the feature New feature label Nov 7, 2022
@ala-n ala-n added this to the ESL 4.*.* Share BETA milestone Nov 7, 2022
@ala-n
Copy link
Collaborator Author

ala-n commented Mar 2, 2023

Implementation spec according to initial implementation and discussion ( #1358 ):
Beta MVP:

  • ESLShareButton (esl-share-button) - internal custom element with a manual configuration for sharing
    • provides shareTitle (resolved from own attribute or parent esl-share-list or document)
    • provides shareUrl (resolved from own attribute or parent esl-share-list or document current href)
    • implements Buttom UX and ARIA role
    • uses ESLShareAction object instance to execute sharing
  • ESLShareList (esl-share-button) - custom-element that renders an expected list of share options
    • have shareTitle and shareUrl base values for internal ESLShareButtons
    • container for ESLShareButtons
    • uses list atribute/param to define the list of ESLShareButton instances to render inside
    • list should support mixed syntax for groups and individual actions (e.g. list= 'copy group:default print')
    • holds the configuration and configuration provider as a static class
  • ESLShareActionRegistry static utility holds implementations of available ESLShareActions
    • allows to get, add, and redefine specific action
    • allows getting a list of available actions
  • ESLShareAction - base class to create exact share actions
    • the following ootb implementations are available:
      • copy
      • print
      • native
      • mail
      • social media by URL pattern

@ala-n ala-n linked a pull request Mar 2, 2023 that will close this issue
ala-n pushed a commit that referenced this issue Apr 24, 2023
# [4.5.0-beta.1](v4.4.0...v4.5.0-beta.1) (2023-04-24)

### Bug Fixes

* **esl-utils:** incorrect throttle behaviour ([918944d](918944d))
* **gh-pages:** add new favicon icons according to the favicons guide ([83d0ca4](83d0ca4))
* **gh-pages:** add `esl-share` component to site nav ([69726e4](69726e4))

### Features

* **esl-utils:** added URL utility with toAbsoluteUrl method ([ac5f7ed](ac5f7ed))

### Components

* **esl-share** (beta) ([2c67313](2c67313))
  Beta version of `esl-share` component available
  Story: #1327
  Milestone: https://github.com/exadel-inc/esl/milestone/26
ala-n pushed a commit that referenced this issue May 15, 2023
# [4.6.0-beta.1](v4.5.0...v4.6.0-beta.1) (2023-05-15)

Updated according v4.5.0

### Bug Fixes

* **esl-utils:** incorrect throttle behaviour ([918944d](918944d))
* **gh-pages:** add new favicon icons according to the favicons guide ([83d0ca4](83d0ca4))
* **gh-pages:** add `esl-share` component to site nav ([69726e4](69726e4))

### Features

* **esl-utils:** added URL utility with toAbsoluteUrl method ([ac5f7ed](ac5f7ed))

### Components

* **esl-share** (beta) ([2c67313](2c67313))
  Beta version of `esl-share` component available
  Story: #1327
  Milestone: https://github.com/exadel-inc/esl/milestone/26
@ala-n ala-n mentioned this issue May 18, 2023
ala-n pushed a commit that referenced this issue May 18, 2023
…#1660)

A new esl-share component was introduced according to spec [#1327)](#1327)
@ala-n ala-n linked a pull request May 19, 2023 that will close this issue
ala-n pushed a commit that referenced this issue May 22, 2023
# [4.6.0](v4.5.0...v4.6.0) (2023-05-22)

### Bug Fixes

* **esl-utils:** fix `unwrap` method signature types ([ee16641](ee16641))
* **esl-utils:** make ts decorators work with babel ([05462da](05462da))

### Features

* **🚩esl-share:** beta version of esl-share([#1327](#1327)) component released ([#1660](#1660)) ([be7aa83](be7aa83))
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
feature New feature
Projects
None yet
2 participants