AlaskaAirlines / auro-menu

Custom element that provides a list of options for the user to choose from
https://auro.alaskaair.com/components/auro/menu
Apache License 2.0
2 stars 3 forks source link

feat(api): add register static method #218 #219

Closed sun-mota closed 1 month ago

sun-mota commented 1 month ago

Alaska Airlines Pull Request

Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.

Resolves: #218

Summary:

AuroMenu.register and AuroMenuOption.register are to easily register the element without extra importing import "@aurodesignsystem/auro-menu" will still register this element to <auro-menu> import { AuroMenu } from '@aurodesignsystem/auro-menu/src/auro-menu.js wont register this element until AuroMenu.register gets called

Type of change:

Please delete options that are not relevant.

Checklist:

By submitting this Pull Request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Pull Requests will be evaluated by their quality of update and whether it is consistent with the goals and values of this project. Any submission is to be considered a conversation between the submitter and the maintainers of this project and may require changes to your submission.

Thank you for your submission!
-- Auro Design System Team

Summary by Sourcery

Add static register methods to AuroMenu and AuroMenuOption for manual element registration, update query selectors to support attribute selectors, and revise documentation to guide users on the new registration process.

New Features:

Enhancements:

Documentation:

sourcery-ai[bot] commented 1 month ago

Reviewer's Guide by Sourcery

This pull request adds a static register method to both AuroMenu and AuroMenuOption classes, allowing for easier registration of custom elements. It also updates the component to support custom element names and modifies the documentation and examples accordingly.

Class diagram for AuroMenu and AuroMenuOption with register method

classDiagram
    class AuroMenu {
        +static register(name="auro-menu")
        +handleNoCheckmarkAttr()
        +initItems()
        +handleNestedMenus(menu)
        +handleSlotItems()
    }
    class AuroMenuOption {
        +static register(name="auro-menuoption")
        +firstUpdated()
    }
    note for AuroMenu "Added static register method to register custom element names"
    note for AuroMenuOption "Added static register method to register custom element names"

File-Level Changes

Change Details Files
Added static register method to AuroMenu and AuroMenuOption classes
  • Implemented AuroMenu.register() method
  • Implemented AuroMenuOption.register() method
  • Removed automatic registration of custom elements
  • Updated documentation to use new register methods
src/auro-menu.js
src/auro-menuoption.js
demo/index.md
docs/partials/index.md
demo/index.js
Updated component to support custom element names
  • Modified querySelectorAll calls to include custom element selectors
  • Updated CSS selectors to target custom elements
  • Changed examples to use custom element names
src/auro-menu.js
src/style-menu.scss
demo/index.md
apiExamples/custom.html
Refactored component registration process
  • Removed RuntimeUtils import and usage
  • Updated demo files to use new registration methods
  • Modified documentation to reflect new registration process
demo/index.js
demo/index.html
docs/partials/index.md

Tips and commands #### Interacting with Sourcery - **Trigger a new review:** Comment `@sourcery-ai review` on the pull request. - **Continue discussions:** Reply directly to Sourcery's review comments. - **Generate a GitHub issue from a review comment:** Ask Sourcery to create an issue from a review comment by replying to it. - **Generate a pull request title:** Write `@sourcery-ai` anywhere in the pull request title to generate a title at any time. - **Generate a pull request summary:** Write `@sourcery-ai summary` anywhere in the pull request body to generate a PR summary at any time. You can also use this command to specify where the summary should be inserted. #### Customizing Your Experience Access your [dashboard](https://app.sourcery.ai) to: - Enable or disable review features such as the Sourcery-generated pull request summary, the reviewer's guide, and others. - Change the review language. - Add, remove or edit custom review instructions. - Adjust other review settings. #### Getting Help - [Contact our support team](mailto:support@sourcery.ai) for questions or feedback. - Visit our [documentation](https://docs.sourcery.ai) for detailed guides and information. - Keep in touch with the Sourcery team by following us on [X/Twitter](https://x.com/SourceryAI), [LinkedIn](https://www.linkedin.com/company/sourcery-ai/) or [GitHub](https://github.com/sourcery-ai).
blackfalcon commented 1 month ago

:tada: This PR is included in version 4.1.0 :tada:

The release is available on:

Your semantic-release bot :package::rocket: