GHHG10/CodeServer / opencode /packages /ui /src /components /progress-circle.stories.tsx
GHHG10's picture
download
raw
1.42 kB
// @ts-nocheck
import * as mod from "./progress-circle"
import { create } from "../storybook/scaffold"
const docs = `### Overview
Circular progress indicator for compact loading states.
Pair with labels for clarity in dashboards.
### API
- Required: \`percentage\` (0-100).
- Optional: \`size\`, \`strokeWidth\`.
### Variants and states
- Single visual style; size and stroke width adjust appearance.
### Behavior
- Percentage is clamped between 0 and 100.
### Accessibility
- Use alongside text or aria-live messaging for progress context.
### Theming/tokens
- Uses \`data-component="progress-circle"\` with background/progress slots.
`
const story = create({ title: "UI/ProgressCircle", mod, args: { percentage: 65, size: 48 } })
export default {
title: "UI/ProgressCircle",
id: "components-progress-circle",
component: story.meta.component,
tags: ["autodocs"],
parameters: {
docs: {
description: {
component: docs,
},
},
},
argTypes: {
percentage: {
control: { type: "range", min: 0, max: 100, step: 1 },
},
},
}
export const Basic = story.Basic
export const States = {
render: () => (
<div style={{ display: "flex", gap: "16px", "align-items": "center" }}>
<mod.ProgressCircle percentage={0} size={32} />
<mod.ProgressCircle percentage={50} size={32} />
<mod.ProgressCircle percentage={100} size={32} />
</div>
),
}

Xet Storage Details

Size:
1.42 kB
·
Xet hash:
5bed89e03db98343c36e20bfcbb9efb00d2d0c73e37ce12af9572ceda0e0e6b7

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.