Conversation
- Added @aurodesignsystem/auro-config. - Added new configs pointing to auro-config. - Replaced esLint and scssLint scripts with a unified lint command using biome and stylelint. AlaskaAirlines/auro-cli#107
BREAKING CHANGE: Package exports have changed. To access the component class add /class to the end of the import. See "exports" in the package.json for more details. AlaskaAirlines/auro-cli#108 AlaskaAirlines/auro-cli#109 AlaskaAirlines/auro-cli#110 AlaskaAirlines/auro-cli#111
Workflows added/updated: - add-project - check-commits - check-pr - codeql - dev-demo - pull-request - release - sync-tags AlaskaAirlines/auro-cli#106
Contributor
Reviewer's GuideThis PR overhauls the repo for the 2025 upgrade by migrating to the new Auro CLI build system, restructuring package and workflow configurations, standardizing code style, and updating component exports, demos, accessibility utilities, and documentation templates to align with the new project conventions. Class diagram for updated AuroButton and AuroElement structureclassDiagram
class AuroElement {
+layout: String
+shape: String
+size: String
+onDark: Boolean
+wrapper: HTMLElement
+attributeWatcher
+resetShapeClasses()
+resetLayoutClasses()
+updateComponentArchitecture()
+firstUpdated()
+disconnectedCallback()
+getLayout(layout: String)
+render()
}
class AuroButton {
+shape: String
+onDark: Boolean
+fluid: Boolean
+loadingText: String
+variant: String
+internals
+loaderTag
+runtimeUtils
+focus()
+surfaceSubmitEvent()
+get currentAriaLabelledBy
+getFontSize()
+firstUpdated()
+onPointerEvent(event)
+renderLayoutDefault()
+render()
+static get styles()
+static get properties()
}
AuroButton --|> AuroElement
Class diagram for accessibility utilities updateclassDiagram
class transportAttributes {
+transportAttributes({host, target, match, removeOriginal})
}
class a11yUtilities {
+transportAriaAttributes({host, target, removeOriginal})
+transportRoleAttributes({host, target, removeOriginal})
+transportAllA11yAttributes({host, target, removeOriginal})
}
a11yUtilities ..> transportAttributes
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
Contributor
There was a problem hiding this comment.
Hey there - I've reviewed your changes - here's some feedback:
- Double-check that replacing all custom build/dev/test scripts with the
auroCLI commands preserves the full developer workflow and CI builds. - Validate that the new exports map and updated
main/typesfields in package.json resolve correctly for both ESM and CJS consumers. - Ensure the version reset to
0.0.0is intentional for this breaking upgrade and plan the next semantic version bump before publishing.
Prompt for AI Agents
Please address the comments from this code review:
## Overall Comments
- Double-check that replacing all custom build/dev/test scripts with the `auro` CLI commands preserves the full developer workflow and CI builds.
- Validate that the new exports map and updated `main`/`types` fields in package.json resolve correctly for both ESM and CJS consumers.
- Ensure the version reset to `0.0.0` is intentional for this breaking upgrade and plan the next semantic version bump before publishing.
## Individual Comments
### Comment 1
<location> `src/layoutElement/transportAttributes.js:34-38` </location>
<code_context>
+ match,
+ removeOriginal = true,
+}) => {
// Guard Clause: Ensure host is valid HTMLElement instance
- if (typeof host !== 'object' || !(host instanceof HTMLElement)) {
- throw new TypeError('a11yUtilities.js | transportAttributes | The "host" parameter must be an instance of HTMLElement.');
+ if (typeof host !== "object" || !(host instanceof HTMLElement)) {
+ throw new TypeError(
+ 'a11yUtilities.js | transportAttributes | The "host" parameter must be an instance of HTMLElement.',
+ );
}
</code_context>
<issue_to_address>
**nitpick:** Error messages reference a11yUtilities.js instead of transportAttributes.js.
Referencing the incorrect file name in error messages may mislead developers during debugging.
</issue_to_address>
### Comment 2
<location> `src/layoutElement/a11yUtilities.js:5` </location>
<code_context>
import { transportAttributes } from "./transportAttributes.js";
const _matchers = {
- 'aria-': attr => attr.startsWith('aria-'),
- 'role': attr => attr.match(/^role$/)
+ "aria-": (attr) => attr.startsWith("aria-"),
+ role: (attr) => attr.match(/^role$/),
};
</code_context>
<issue_to_address>
**suggestion:** Using attr.match for exact string comparison is less efficient than ===.
Consider replacing attr.match(/^role$/) with attr === 'role' for better performance and readability.
```suggestion
role: (attr) => attr === "role",
```
</issue_to_address>
### Comment 3
<location> `src/layoutElement/auroElement.js:73-85` </location>
<code_context>
if (this.shape && this.size) {
if (this.wrapper) {
this.wrapper.classList.forEach((className) => {
if (className.startsWith("shape-")) {
this.wrapper.classList.remove(className);
}
});
this.wrapper.classList.add(
`shape-${this.shape.toLowerCase()}-${this.size.toLowerCase()}`,
);
}
}
</code_context>
<issue_to_address>
**suggestion (code-quality):** Merge nested if conditions ([`merge-nested-ifs`](https://docs.sourcery.ai/Reference/Rules-and-In-Line-Suggestions/JavaScript/Default-Rules/merge-nested-ifs))
```suggestion
if (this.shape && this.size && this.wrapper) {
this.wrapper.classList.forEach((className) => {
if (className.startsWith("shape-")) {
this.wrapper.classList.remove(className);
}
});
this.wrapper.classList.add(
`shape-${this.shape.toLowerCase()}-${this.size.toLowerCase()}`,
);
}
```
<br/><details><summary>Explanation</summary>Reading deeply nested conditional code is confusing, since you have to keep track of which
conditions relate to which levels. We therefore strive to reduce nesting where
possible, and the situation where two `if` conditions can be combined using
`and` is an easy win.
</details>
</issue_to_address>Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
🚨 Breaking Change Review PolicyThis PR contains breaking changes and requires at least Approvals: |
|
🎉 This PR is included in version 12.0.0-rc-1.1 🎉 The release is available on: Your semantic-release bot 📦🚀 |
rmenner
approved these changes
Oct 2, 2025
|
🎉 This PR is included in version 12.0.0 🎉 The release is available on: Your semantic-release bot 📦🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Alaska Airlines Pull Request
Resolves: AlaskaAirlines/auro-cli#157
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
Upgrade auro-button repository to 2025 standards by migrating to the auro-cli build system, simplifying package configuration, standardizing code style, refreshing documentation templates, and reusing shared GitHub workflows.
New Features:
Enhancements:
CI:
Documentation:
Tests:
Chores: