Skip to content

Conversation

@caseyisonit
Copy link
Contributor

Description

Motivation and context

Related issue(s)

  • fixes [Issue Number]

Screenshots (if appropriate)


Author's checklist

  • I have read the CONTRIBUTING and PULL_REQUESTS documents.
  • I have reviewed at the Accessibility Practices for this feature, see: Aria Practices
  • I have added automated tests to cover my changes.
  • I have included a well-written changeset if my change needs to be published.
  • I have included updated documentation if my change required it.

Reviewer's checklist

  • Includes a Github Issue with appropriate flag or Jira ticket number without a link
  • Includes thoughtfully written changeset if changes suggested include patch, minor, or major features
  • Automated tests cover all use cases and follow best practices for writing
  • Validated on all supported browsers
  • All VRTs are approved before the author can update Golden Hash

Manual review test cases

  • Descriptive Test Statement

    1. Go here
    2. Do this action
    3. Expect this result
  • Descriptive Test Statement

    1. Go here
    2. Do this action
    3. Expect this result

Device review

  • Did it pass in Desktop?
  • Did it pass in (emulated) Mobile?
  • Did it pass in (emulated) iPad?

@caseyisonit caseyisonit requested a review from a team as a code owner December 12, 2025 21:34
@changeset-bot
Copy link

changeset-bot bot commented Dec 12, 2025

⚠️ No Changeset found

Latest commit: de8be4b

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@caseyisonit caseyisonit changed the title chore: clean up patterns and add direction addon chore: clean up patterns Dec 16, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Dec 16, 2025

📚 Branch Preview Links

🔍 First Generation Visual Regression Test Results

When a visual regression test fails (or has previously failed while working on this branch), its results can be found in the following URLs:

Deployed to Azure Blob Storage: pr-5935

If the changes are expected, update the current_golden_images_cache hash in the circleci config to accept the new images. Instructions are included in that file.
If the changes are unexpected, you can investigate the cause of the differences and update the code accordingly.

</sp-table-row>
</sp-table-body>
</sp-table>
| Area | 1st-gen SWC | 2nd-gen SWC |
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s1 styles/variables arent loaded in 2nd gen so it was rendering odd, i switched to markdown table which has some nice borders and subtle color diff between rows. (we absolutely can revisit using our components in docs)


### You want built-in accessibility
<sp-accordion allow-multiple size="m" class="docs-accordion">
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i override the border color with this class so match the hr under the h2. same issue with s1 variables not mapping

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i modified this decorator to have some set flex styles to unlock its scalability. we can continue to add layout styles to this new pattern as we come across odd layouts

Providing the correct issue severity classification helps us adequately assess and prioritize your issue. We reserve the right to adjust the severity of your bug during triage.
Below is our issue severity classification criteria:

<sp-table size="m">
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same comment about the table as above


Create `stories/[component].usage.mdx` to display stories organized by section.

```mdx
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this section is dynamically generated with the GettingStarted doc block

subtitle: `Assets visually represent a file, folder or image in your application.`,
subtitle: `Visually represent files, folders, or images in your application`,
},
flexLayout: 'row-nowrap',
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

now we can set the most common flex layout in the meta and then overwrite it at the storylevel if you need. i found most stories lean in to row-wrap or column-stretch

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LOVE THIS!!!!


type StatusLightVariant = typeof StatusLight.prototype.variant;
type StatusLightSize = typeof StatusLight.prototype.size;
const semanticLabels = {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is the pattern for custom labeling when using type consts to generate templates in a story

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very nice

type: 'dynamic',
type: 'auto',
language: 'html',
transform: async (source: string) => {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SOURCE BLOCK LINTING....... SOOOOOO GOOOOODDDD

subtitle: `Assets visually represent a file, folder or image in your application.`,
subtitle: `Visually represent files, folders, or images in your application`,
},
flexLayout: 'row-nowrap',
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LOVE THIS!!!!

Comment on lines 89 to 90
* ### Visual structure
*
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* ### Visual structure
*

Comment on lines 91 to 104
* An asset consists of:
*
* 1. **Icon or image content** - Either a file/folder icon or custom slotted content
* 2. **Accessible label** - Provides context for assistive technologies
*
* The asset automatically centers its content both horizontally and vertically within the available space.
*
* ### Technical structure
*
* #### Slots
*
* - **Default slot**: Custom content to display (typically an image) when variant is not set
*
* #### Properties
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* An asset consists of:
*
* 1. **Icon or image content** - Either a file/folder icon or custom slotted content
* 2. **Accessible label** - Provides context for assistive technologies
*
* The asset automatically centers its content both horizontally and vertically within the available space.
*
* ### Technical structure
*
* #### Slots
*
* - **Default slot**: Custom content to display (typically an image) when variant is not set
*
* #### Properties
* An asset consists of:
*
* 1. **Icon or image content** - Either a file/folder icon or custom slotted content
* 2. **Accessible label** - Provides context for assistive technologies

Comment on lines 106 to 109
* Properties that control the asset's appearance:
*
* - [**Variant**](#variants): Controls which built-in icon to display (`file`, `folder`, or unset for custom content)
* - **Label**: Accessible label for screen readers (used as `aria-label` on the icon SVGs)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* Properties that control the asset's appearance:
*
* - [**Variant**](#variants): Controls which built-in icon to display (`file`, `folder`, or unset for custom content)
* - **Label**: Accessible label for screen readers (used as `aria-label` on the icon SVGs)

Comment on lines 105 to 123
* A progress circle consists of:
*
* 1. **Track** - Background ring showing the full progress range
* 2. **Fill** - Colored ring segment showing current progress
* 3. **Label** - Accessible text describing the operation (not visually rendered)
*
* ### Technical structure
*
* #### Slots
*
* - **Default slot**: Alternative way to provide an accessible label (the `label` attribute is preferred)
*
* #### Properties
*
* - [**Progress**](#progress-values): Numeric value from 0-100 controlling the fill amount
* - [**Label**](#progress-values): Accessible text describing what is loading or progressing
* - [**Indeterminate**](#indeterminate): Boolean controlling animated vs. determinate state
* - [**Size**](#sizes): Visual size (s, m, or l)
* - [**Static color**](#static-colors): Color variant for use on different backgrounds (white or black)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* A progress circle consists of:
*
* 1. **Track** - Background ring showing the full progress range
* 2. **Fill** - Colored ring segment showing current progress
* 3. **Label** - Accessible text describing the operation (not visually rendered)
*
* ### Technical structure
*
* #### Slots
*
* - **Default slot**: Alternative way to provide an accessible label (the `label` attribute is preferred)
*
* #### Properties
*
* - [**Progress**](#progress-values): Numeric value from 0-100 controlling the fill amount
* - [**Label**](#progress-values): Accessible text describing what is loading or progressing
* - [**Indeterminate**](#indeterminate): Boolean controlling animated vs. determinate state
* - [**Size**](#sizes): Visual size (s, m, or l)
* - [**Static color**](#static-colors): Color variant for use on different backgrounds (white or black)
* A progress circle consists of:
*
* 1. **Track** - Background ring showing the full progress range
* 2. **Fill** - Colored ring segment showing current progress, via `progress` attribute
* 3. **Label** - Accessible text, via `label` attribute, describing the operation (not visually rendered)

Comment on lines +127 to +144
${template({
...args,
progress: 0,
size: 'l',
label: 'Starting upload',
})}
${template({
...args,
progress: 50,
size: 'l',
label: 'Uploading document',
})}
${template({
...args,
progress: 100,
size: 'l',
label: 'Upload complete',
})}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Love this example!


type StatusLightVariant = typeof StatusLight.prototype.variant;
type StatusLightSize = typeof StatusLight.prototype.size;
const semanticLabels = {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very nice

Comment on lines 131 to 149
* ### Visual structure
*
* A status light consists of:
*
* 1. **Colored dot indicator** - Visual representation of status or category
* 2. **Text label** - Descriptive text providing context
*
* ### Technical structure
*
* #### Slots
*
* - **Default slot**: Text label describing the status (required)
*
* #### Properties
*
* Properties that control visual appearance:
*
* - **Variant**: Controls the color of the status dot ([semantic](#semantic-variants) or [non-semantic](#non-semantic-variants) variants)
* - [**Size**](#sizes): Controls the overall size of the component
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* ### Visual structure
*
* A status light consists of:
*
* 1. **Colored dot indicator** - Visual representation of status or category
* 2. **Text label** - Descriptive text providing context
*
* ### Technical structure
*
* #### Slots
*
* - **Default slot**: Text label describing the status (required)
*
* #### Properties
*
* Properties that control visual appearance:
*
* - **Variant**: Controls the color of the status dot ([semantic](#semantic-variants) or [non-semantic](#non-semantic-variants) variants)
* - [**Size**](#sizes): Controls the overall size of the component
* A status light consists of:
*
* 1. **Colored dot indicator** - Visual representation of status or category
* 2. **Text label** - Descriptive text providing context, via the default slot (required)

Comment on lines +172 to +175
* - **Small (`s`)**: Used for inline indicators or space-constrained areas
* - **Medium (`m`)**: Default size, used for typical use cases
* - **Large (`l`)**: Used for prominent displays or primary content areas
* - **Extra-large (`xl`)**: Maximum visibility for high-priority statuses
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LOVE THIS!

@caseyisonit caseyisonit merged commit 31f00f8 into garage-week/docs-rocks Dec 17, 2025
3 of 17 checks passed
@caseyisonit caseyisonit deleted the caseyisonit/addon-party branch December 17, 2025 15:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants