@wallarm-org/design-system 0.44.1 → 0.45.0-rc-feature-WDS-121-progress.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,15 @@
1
+ import type { FC, Ref } from 'react';
2
+ import type { TestableProps } from '../../utils/testId';
3
+ import type { ProgressColor, ProgressSize } from './types';
4
+ export interface ProgressProps extends TestableProps {
5
+ /** Progress value (0–max). Pass `null` for indeterminate state. */
6
+ value?: number | null;
7
+ min?: number;
8
+ max?: number;
9
+ size?: ProgressSize;
10
+ color?: ProgressColor;
11
+ showLabel?: boolean;
12
+ className?: string;
13
+ ref?: Ref<HTMLDivElement>;
14
+ }
15
+ export declare const Progress: FC<ProgressProps>;
@@ -0,0 +1,34 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { Progress } from "@ark-ui/react/progress";
3
+ import { cn } from "../../utils/cn.js";
4
+ import { progressRangeVariants, progressTrackVariants } from "./classes.js";
5
+ const Progress_Progress = ({ value = 0, min = 0, max = 100, size = 'md', color = 'w-orange', showLabel = false, className, 'data-testid': testId, ref })=>/*#__PURE__*/ jsxs(Progress.Root, {
6
+ ref: ref,
7
+ value: value,
8
+ min: min,
9
+ max: max,
10
+ "data-slot": "progress",
11
+ "data-testid": testId,
12
+ className: cn('flex flex-1 items-center gap-8 min-w-118 w-full', className),
13
+ children: [
14
+ /*#__PURE__*/ jsx(Progress.Track, {
15
+ "data-slot": "progress-track",
16
+ className: progressTrackVariants({
17
+ size
18
+ }),
19
+ children: /*#__PURE__*/ jsx(Progress.Range, {
20
+ "data-slot": "progress-range",
21
+ className: progressRangeVariants({
22
+ size,
23
+ color
24
+ })
25
+ })
26
+ }),
27
+ showLabel && /*#__PURE__*/ jsx(Progress.ValueText, {
28
+ "data-slot": "progress-label",
29
+ className: "text-text-secondary font-sans-display text-xs font-medium tabular-nums"
30
+ })
31
+ ]
32
+ });
33
+ Progress_Progress.displayName = 'Progress';
34
+ export { Progress_Progress as Progress };
@@ -0,0 +1,8 @@
1
+ import type { ProgressColor } from './types';
2
+ export declare const progressTrackVariants: (props?: ({
3
+ size?: "sm" | "md" | "lg" | null | undefined;
4
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
5
+ export declare const progressRangeVariants: (props?: ({
6
+ size?: "sm" | "md" | "lg" | null | undefined;
7
+ color?: ProgressColor | null | undefined;
8
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
@@ -0,0 +1,51 @@
1
+ import { cva } from "class-variance-authority";
2
+ const progressColorMap = {
3
+ slate: 'bg-badge-slate-strong',
4
+ red: 'bg-badge-red-strong',
5
+ 'w-orange': 'bg-badge-w-orange-strong',
6
+ amber: 'bg-badge-amber-strong',
7
+ yellow: 'bg-badge-yellow-strong',
8
+ lime: 'bg-badge-lime-strong',
9
+ green: 'bg-badge-green-strong',
10
+ emerald: 'bg-badge-emerald-strong',
11
+ teal: 'bg-badge-teal-strong',
12
+ cyan: 'bg-badge-cyan-strong',
13
+ sky: 'bg-badge-sky-strong',
14
+ blue: 'bg-badge-blue-strong',
15
+ indigo: 'bg-badge-indigo-strong',
16
+ violet: 'bg-badge-violet-strong',
17
+ fuchsia: 'bg-badge-fuchsia-strong',
18
+ pink: 'bg-badge-pink-strong',
19
+ rose: 'bg-badge-rose-strong',
20
+ gray: 'bg-badge-gray-strong',
21
+ zinc: 'bg-badge-zinc-strong',
22
+ neutral: 'bg-badge-neutral-strong',
23
+ stone: 'bg-badge-stone-strong'
24
+ };
25
+ const progressTrackVariants = cva('relative w-full overflow-hidden bg-bg-strong-primary', {
26
+ variants: {
27
+ size: {
28
+ sm: 'h-4 rounded-2',
29
+ md: 'h-8 rounded-4',
30
+ lg: 'h-12 rounded-6'
31
+ }
32
+ },
33
+ defaultVariants: {
34
+ size: 'md'
35
+ }
36
+ });
37
+ const progressRangeVariants = cva('h-full transition-all duration-300 ease-out', {
38
+ variants: {
39
+ size: {
40
+ sm: 'rounded-2',
41
+ md: 'rounded-4',
42
+ lg: 'rounded-6'
43
+ },
44
+ color: progressColorMap
45
+ },
46
+ defaultVariants: {
47
+ size: 'md',
48
+ color: 'blue'
49
+ }
50
+ });
51
+ export { progressRangeVariants, progressTrackVariants };
@@ -0,0 +1,23 @@
1
+ export declare const ProgressColorEnum: {
2
+ readonly Slate: "slate";
3
+ readonly Red: "red";
4
+ readonly WOrange: "w-orange";
5
+ readonly Amber: "amber";
6
+ readonly Yellow: "yellow";
7
+ readonly Lime: "lime";
8
+ readonly Green: "green";
9
+ readonly Emerald: "emerald";
10
+ readonly Teal: "teal";
11
+ readonly Cyan: "cyan";
12
+ readonly Sky: "sky";
13
+ readonly Blue: "blue";
14
+ readonly Indigo: "indigo";
15
+ readonly Violet: "violet";
16
+ readonly Fuchsia: "fuchsia";
17
+ readonly Pink: "pink";
18
+ readonly Rose: "rose";
19
+ readonly Gray: "gray";
20
+ readonly Zinc: "zinc";
21
+ readonly Neutral: "neutral";
22
+ readonly Stone: "stone";
23
+ };
@@ -0,0 +1,24 @@
1
+ const ProgressColorEnum = {
2
+ Slate: 'slate',
3
+ Red: 'red',
4
+ WOrange: 'w-orange',
5
+ Amber: 'amber',
6
+ Yellow: 'yellow',
7
+ Lime: 'lime',
8
+ Green: 'green',
9
+ Emerald: 'emerald',
10
+ Teal: 'teal',
11
+ Cyan: 'cyan',
12
+ Sky: 'sky',
13
+ Blue: 'blue',
14
+ Indigo: 'indigo',
15
+ Violet: 'violet',
16
+ Fuchsia: 'fuchsia',
17
+ Pink: 'pink',
18
+ Rose: 'rose',
19
+ Gray: 'gray',
20
+ Zinc: 'zinc',
21
+ Neutral: 'neutral',
22
+ Stone: 'stone'
23
+ };
24
+ export { ProgressColorEnum };
@@ -0,0 +1,4 @@
1
+ export { progressRangeVariants, progressTrackVariants } from './classes';
2
+ export { ProgressColorEnum } from './constants';
3
+ export { Progress, type ProgressProps } from './Progress';
4
+ export type { ProgressColor } from './types';
@@ -0,0 +1,4 @@
1
+ import { progressRangeVariants, progressTrackVariants } from "./classes.js";
2
+ import { ProgressColorEnum } from "./constants.js";
3
+ import { Progress } from "./Progress.js";
4
+ export { Progress, ProgressColorEnum, progressRangeVariants, progressTrackVariants };
@@ -0,0 +1,3 @@
1
+ import type { ProgressColorEnum } from './constants';
2
+ export type ProgressSize = 'sm' | 'md' | 'lg';
3
+ export type ProgressColor = (typeof ProgressColorEnum)[keyof typeof ProgressColorEnum];
File without changes
package/dist/index.d.ts CHANGED
@@ -47,6 +47,7 @@ export { OverflowTooltip, OverflowTooltipContent, type OverflowTooltipContentPro
47
47
  export { type CopyFormatData, formatAsFilter, ParameterPath, type ParameterPathProps, } from './components/ParameterPath';
48
48
  export { Popover, PopoverContent, PopoverTrigger } from './components/Popover';
49
49
  export { type BreadcrumbSegment, findDrillNode, findFirstLinkPath, type MatchNavResult, matchNav, type NavConfig, type NavConfigDrill, type NavConfigGroup, type NavConfigLink, type NavConfigNode, type NavStackEntry, ProductNav, ProductNavBreadcrumbs, type ProductNavContextValue, ProductNavPanel, type ProductNavProps, type UseProductNavResult, useProductNav, useProductNavContext, } from './components/ProductNav';
50
+ export { Progress, type ProgressColor, type ProgressProps, } from './components/Progress';
50
51
  export { Radio, RadioDescription, type RadioDescriptionProps, RadioGroup, type RadioGroupProps, RadioIndicator, RadioLabel, type RadioLabelProps, type RadioProps, } from './components/Radio';
51
52
  export { RemoteShell, RemoteShellBreadcrumb, type RemoteShellBreadcrumbProps, RemoteShellContent, type RemoteShellContentProps, RemoteShellPanel, type RemoteShellPanelProps, type RemoteShellProps, } from './components/RemoteShell';
52
53
  export { getResponseCodeCategory, RESPONSE_CODE_COLOR, ResponseCode, type ResponseCodeCategory, type ResponseCodeProps, } from './components/ResponseCode';
package/dist/index.js CHANGED
@@ -36,6 +36,7 @@ import { OverflowTooltip, OverflowTooltipContent } from "./components/OverflowTo
36
36
  import { ParameterPath, formatAsFilter } from "./components/ParameterPath/index.js";
37
37
  import { Popover, PopoverContent, PopoverTrigger } from "./components/Popover/index.js";
38
38
  import { ProductNav, ProductNavBreadcrumbs, ProductNavPanel, findDrillNode, findFirstLinkPath, matchNav, useProductNav, useProductNavContext } from "./components/ProductNav/index.js";
39
+ import { Progress } from "./components/Progress/index.js";
39
40
  import { Radio, RadioDescription, RadioGroup, RadioIndicator, RadioLabel } from "./components/Radio/index.js";
40
41
  import { RemoteShell, RemoteShellBreadcrumb, RemoteShellContent, RemoteShellPanel } from "./components/RemoteShell/index.js";
41
42
  import { RESPONSE_CODE_COLOR, ResponseCode, getResponseCodeCategory } from "./components/ResponseCode/index.js";
@@ -62,4 +63,4 @@ import { Tooltip, TooltipContent, TooltipTrigger } from "./components/Tooltip/in
62
63
  import { TopHeader, TopHeaderActions, TopHeaderLogo } from "./components/TopHeader/index.js";
63
64
  import { Tour, beaconStepEffect, useTour, waitForStepEvent } from "./components/Tour/index.js";
64
65
  import { TestIdProvider, useTestId } from "./utils/testId.js";
65
- export { Accordion, AccordionActions, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertClose, AlertContent, AlertControls, AlertDescription, AlertIcon, AlertTitle, AppShell, AppShellHeader, AppShellRail, AppShellRemote, Attribute, AttributeActions, AttributeActionsContent, AttributeActionsItem, AttributeActionsTarget, AttributeLabel, AttributeLabelDescription, AttributeLabelInfo, AttributeValue, Badge, Breadcrumbs, BreadcrumbsEllipsis, BreadcrumbsItem, BreadcrumbsScopeSwitcher, BreadcrumbsSeparator, Button, Calendar, CalendarApplyButton, CalendarBody, CalendarContent, CalendarDate, CalendarDateTime, CalendarDayName, CalendarFooter, CalendarFooterControls, CalendarGrid, CalendarGrids, CalendarHeader, CalendarInputHeader, CalendarKeyboardHints, CalendarPresetItem, CalendarPresets, CalendarProvider, CalendarResetButton, CalendarTrigger, Card, CardContent, CardFooter, CardHeader, CardTitle, Checkbox, CheckboxDescription, CheckboxGroup, CheckboxIndicator, CheckboxLabel, Code, Country, CountryFlag, CountryName, DAY_NAMES, DEFAULT_RANGE_PRESETS, DEFAULT_SINGLE_PRESETS, DateFormatProvider, DateInput, DateRangeEndValue, DateRangeInput, DateRangeProvider, DateRangeSeparator, DateRangeStartValue, Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerFooter, DrawerFooterControls, DrawerHeader, DrawerPositioner, DrawerResizeHandle, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuContextTrigger, DropdownMenuFooter, DropdownMenuGroup, DropdownMenuInput, DropdownMenuItem, DropdownMenuItemContent, DropdownMenuItemDescription, DropdownMenuItemIcon, DropdownMenuItemText, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuTrigger, DropdownMenuTriggerItem, Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, FilterInput, FilterInputChip, FilterInputFieldMenu, FilterInputOperatorMenu, Flex, FormatDateTime, HStack, HTTP_METHODS, HTTP_METHOD_COLOR, Heading, HttpMethod, Input, InputGroup, InputGroupAddon, InputGroupText, Ip, IpAddress, IpCountry, IpList, IpPort, IpProvider, Kbd, KbdGroup, Link, Loader, Logo, MONTH_NAMES, NavRail, NavRailBody, NavRailFooter, NavRailItem, NavRailSeparator, NumberInput, NumericBadge, OverflowTooltip, OverflowTooltipContent, ParameterPath, Popover, PopoverContent, PopoverTrigger, ProductNav, ProductNavBreadcrumbs, ProductNavPanel, RESPONSE_CODE_COLOR, Radio, RadioDescription, RadioGroup, RadioIndicator, RadioLabel, RemoteShell, RemoteShellBreadcrumb, RemoteShellContent, RemoteShellPanel, ResponseCode, ScrollArea, ScrollAreaContent, ScrollAreaCorner, ScrollAreaScrollbar, ScrollAreaViewport, SegmentedControl, SegmentedControlButton, SegmentedControlItem, SegmentedControlSeparator, SegmentedTabs, SegmentedTabsButton, SegmentedTabsContent, SegmentedTabsList, SegmentedTabsSeparator, SegmentedTabsTrigger, SegmentedTabsTriggerButton, Select, SelectButton, SelectClearTrigger, SelectContent, SelectFooter, SelectGroup, SelectGroupLabel, SelectHeader, SelectInput, SelectOption, SelectOptionDescription, SelectOptionIndicator, SelectOptionText, SelectPositioner, SelectSearchInput, SelectSeparator, Selection, SelectionAll, SelectionBulkBar, SelectionItem, Separator, Skeleton, SplitButton, Stack, Switch, SwitchControl, SwitchDescription, SwitchLabel, Table, TableActionBar, TableEmptyState, TableSettingsMenu, Tabs, TabsButton, TabsContent, TabsLineActions, TabsList, TabsSeparator, TabsTrigger, Tag, TagClose, TestIdProvider, Text, Textarea, ThemeProvider, Time, TimeInput, Toast, ToastActions, Toaster, ToggleButton, Tooltip, TooltipContent, TooltipTrigger, TopHeader, TopHeaderActions, TopHeaderLogo, Tour, VStack, ZonedDateTime, beaconStepEffect, cardVariants, createTableColumnHelper, datacenters, drawerContentVariants, drawerPositionerVariants, findDrillNode, findFirstLinkPath, formatAsFilter, getLocalTimeZone, getResponseCodeCategory, matchNav, parseDate, parseDateTime, parseTime, parseZonedDateTime, proxyTypes, sourceLabels, toaster, today, useCalendarContext, useDateFormat, useDateRangeContext, useDrawerContext, useProductNav, useProductNavContext, useTestId, useTheme, useTour, waitForStepEvent };
66
+ export { Accordion, AccordionActions, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertClose, AlertContent, AlertControls, AlertDescription, AlertIcon, AlertTitle, AppShell, AppShellHeader, AppShellRail, AppShellRemote, Attribute, AttributeActions, AttributeActionsContent, AttributeActionsItem, AttributeActionsTarget, AttributeLabel, AttributeLabelDescription, AttributeLabelInfo, AttributeValue, Badge, Breadcrumbs, BreadcrumbsEllipsis, BreadcrumbsItem, BreadcrumbsScopeSwitcher, BreadcrumbsSeparator, Button, Calendar, CalendarApplyButton, CalendarBody, CalendarContent, CalendarDate, CalendarDateTime, CalendarDayName, CalendarFooter, CalendarFooterControls, CalendarGrid, CalendarGrids, CalendarHeader, CalendarInputHeader, CalendarKeyboardHints, CalendarPresetItem, CalendarPresets, CalendarProvider, CalendarResetButton, CalendarTrigger, Card, CardContent, CardFooter, CardHeader, CardTitle, Checkbox, CheckboxDescription, CheckboxGroup, CheckboxIndicator, CheckboxLabel, Code, Country, CountryFlag, CountryName, DAY_NAMES, DEFAULT_RANGE_PRESETS, DEFAULT_SINGLE_PRESETS, DateFormatProvider, DateInput, DateRangeEndValue, DateRangeInput, DateRangeProvider, DateRangeSeparator, DateRangeStartValue, Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerFooter, DrawerFooterControls, DrawerHeader, DrawerPositioner, DrawerResizeHandle, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuContextTrigger, DropdownMenuFooter, DropdownMenuGroup, DropdownMenuInput, DropdownMenuItem, DropdownMenuItemContent, DropdownMenuItemDescription, DropdownMenuItemIcon, DropdownMenuItemText, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuTrigger, DropdownMenuTriggerItem, Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, FilterInput, FilterInputChip, FilterInputFieldMenu, FilterInputOperatorMenu, Flex, FormatDateTime, HStack, HTTP_METHODS, HTTP_METHOD_COLOR, Heading, HttpMethod, Input, InputGroup, InputGroupAddon, InputGroupText, Ip, IpAddress, IpCountry, IpList, IpPort, IpProvider, Kbd, KbdGroup, Link, Loader, Logo, MONTH_NAMES, NavRail, NavRailBody, NavRailFooter, NavRailItem, NavRailSeparator, NumberInput, NumericBadge, OverflowTooltip, OverflowTooltipContent, ParameterPath, Popover, PopoverContent, PopoverTrigger, ProductNav, ProductNavBreadcrumbs, ProductNavPanel, Progress, RESPONSE_CODE_COLOR, Radio, RadioDescription, RadioGroup, RadioIndicator, RadioLabel, RemoteShell, RemoteShellBreadcrumb, RemoteShellContent, RemoteShellPanel, ResponseCode, ScrollArea, ScrollAreaContent, ScrollAreaCorner, ScrollAreaScrollbar, ScrollAreaViewport, SegmentedControl, SegmentedControlButton, SegmentedControlItem, SegmentedControlSeparator, SegmentedTabs, SegmentedTabsButton, SegmentedTabsContent, SegmentedTabsList, SegmentedTabsSeparator, SegmentedTabsTrigger, SegmentedTabsTriggerButton, Select, SelectButton, SelectClearTrigger, SelectContent, SelectFooter, SelectGroup, SelectGroupLabel, SelectHeader, SelectInput, SelectOption, SelectOptionDescription, SelectOptionIndicator, SelectOptionText, SelectPositioner, SelectSearchInput, SelectSeparator, Selection, SelectionAll, SelectionBulkBar, SelectionItem, Separator, Skeleton, SplitButton, Stack, Switch, SwitchControl, SwitchDescription, SwitchLabel, Table, TableActionBar, TableEmptyState, TableSettingsMenu, Tabs, TabsButton, TabsContent, TabsLineActions, TabsList, TabsSeparator, TabsTrigger, Tag, TagClose, TestIdProvider, Text, Textarea, ThemeProvider, Time, TimeInput, Toast, ToastActions, Toaster, ToggleButton, Tooltip, TooltipContent, TooltipTrigger, TopHeader, TopHeaderActions, TopHeaderLogo, Tour, VStack, ZonedDateTime, beaconStepEffect, cardVariants, createTableColumnHelper, datacenters, drawerContentVariants, drawerPositionerVariants, findDrillNode, findFirstLinkPath, formatAsFilter, getLocalTimeZone, getResponseCodeCategory, matchNav, parseDate, parseDateTime, parseTime, parseZonedDateTime, proxyTypes, sourceLabels, toaster, today, useCalendarContext, useDateFormat, useDateRangeContext, useDrawerContext, useProductNav, useProductNavContext, useTestId, useTheme, useTour, waitForStepEvent };
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "0.44.0",
3
- "generatedAt": "2026-05-21T14:47:58.859Z",
2
+ "version": "0.44.1",
3
+ "generatedAt": "2026-05-21T20:14:21.154Z",
4
4
  "components": [
5
5
  {
6
6
  "name": "Accordion",
@@ -30537,6 +30537,88 @@
30537
30537
  "subComponents": [],
30538
30538
  "examples": []
30539
30539
  },
30540
+ {
30541
+ "name": "Progress",
30542
+ "importPath": "@wallarm-org/design-system/Progress",
30543
+ "props": [
30544
+ {
30545
+ "name": "value",
30546
+ "type": "number | null | undefined",
30547
+ "required": false,
30548
+ "description": "Progress value (0–max). Pass `null` for indeterminate state.",
30549
+ "defaultValue": "0"
30550
+ },
30551
+ {
30552
+ "name": "min",
30553
+ "type": "number | undefined",
30554
+ "required": false,
30555
+ "defaultValue": "0"
30556
+ },
30557
+ {
30558
+ "name": "max",
30559
+ "type": "number | undefined",
30560
+ "required": false,
30561
+ "defaultValue": "100"
30562
+ },
30563
+ {
30564
+ "name": "size",
30565
+ "type": "ProgressSize | undefined",
30566
+ "required": false,
30567
+ "defaultValue": "md"
30568
+ },
30569
+ {
30570
+ "name": "color",
30571
+ "type": "ProgressColor | undefined",
30572
+ "required": false,
30573
+ "defaultValue": "w-orange"
30574
+ },
30575
+ {
30576
+ "name": "showLabel",
30577
+ "type": "boolean | undefined",
30578
+ "required": false,
30579
+ "defaultValue": "false"
30580
+ }
30581
+ ],
30582
+ "variants": [
30583
+ {
30584
+ "name": "size",
30585
+ "options": [
30586
+ "sm",
30587
+ "md",
30588
+ "lg"
30589
+ ],
30590
+ "defaultValue": "md"
30591
+ },
30592
+ {
30593
+ "name": "color",
30594
+ "options": [],
30595
+ "defaultValue": "blue"
30596
+ }
30597
+ ],
30598
+ "subComponents": [],
30599
+ "examples": [
30600
+ {
30601
+ "name": "Basic",
30602
+ "code": "args => (\n <div className='w-280'>\n <Progress {...args} />\n </div>\n)"
30603
+ },
30604
+ {
30605
+ "name": "Sizes",
30606
+ "code": "() => (\n <div className='w-300'>\n <HStack gap={12}>\n <VStack align='end'>\n <Text truncate>Small</Text>\n <Text truncate>Medium (default)</Text>\n <Text truncate>Large</Text>\n </VStack>\n\n <VStack fullWidth justify='between' style={{ height: 'stretch' }}>\n <Progress value={20} size='sm' />\n <Progress value={40} size='md' />\n <Progress value={60} size='lg' />\n </VStack>\n </HStack>\n </div>\n)"
30607
+ },
30608
+ {
30609
+ "name": "Colors",
30610
+ "code": "() => (\n <div className='w-300'>\n <HStack gap={12}>\n <VStack align='end'>\n {Object.entries(ProgressColorEnum).map(([key]) => (\n <Text key={key}>{key}</Text>\n ))}\n </VStack>\n\n <VStack fullWidth justify='between' style={{ height: 'stretch' }}>\n {Object.entries(ProgressColorEnum).map(([_, color], index) => (\n <Progress\n key={color}\n value={index + 1}\n max={Object.entries(ProgressColorEnum).length}\n color={color}\n className='flex-1'\n />\n ))}\n </VStack>\n </HStack>\n </div>\n)"
30611
+ },
30612
+ {
30613
+ "name": "WithLabel",
30614
+ "code": "() => (\n <div className='w-280'>\n <VStack>\n <Progress value={25} size='sm' showLabel />\n <Progress value={50} showLabel color='green' />\n <Progress value={75} showLabel color='pink' size='lg' />\n </VStack>\n </div>\n)"
30615
+ },
30616
+ {
30617
+ "name": "Indeterminate",
30618
+ "code": "() => (\n <div className='w-280'>\n <Progress value={null} />\n </div>\n)"
30619
+ }
30620
+ ]
30621
+ },
30540
30622
  {
30541
30623
  "name": "Radio",
30542
30624
  "importPath": "@wallarm-org/design-system/Radio",
@@ -0,0 +1,40 @@
1
+ @keyframes progress-indeterminate {
2
+ 0% {
3
+ left: 90%;
4
+ width: 10%;
5
+ }
6
+ 20% {
7
+ left: 100%;
8
+ width: 0%;
9
+ }
10
+ 25% {
11
+ left: 100%;
12
+ width: 5%;
13
+ }
14
+ 40% {
15
+ left: 0%;
16
+ width: 5%;
17
+ }
18
+ 50% {
19
+ left: 0%;
20
+ width: 0%;
21
+ }
22
+ 65% {
23
+ left: 0%;
24
+ width: 50%;
25
+ }
26
+ 85% {
27
+ left: 20%;
28
+ width: 70%;
29
+ }
30
+ 100% {
31
+ left: 90%;
32
+ width: 30%;
33
+ }
34
+ }
35
+
36
+ [data-scope='progress'][data-part='range'][data-state='indeterminate'] {
37
+ position: absolute;
38
+ transition: none;
39
+ animation: progress-indeterminate 3.5s infinite;
40
+ }
@@ -20,6 +20,7 @@
20
20
  @import './components/tour.css';
21
21
  @import './components/skeleton.css';
22
22
  @import './components/accordion.css';
23
+ @import './components/progress.css';
23
24
 
24
25
  [data-scope='scroll-area'][data-part='viewport'] {
25
26
  scrollbar-width: none;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wallarm-org/design-system",
3
- "version": "0.44.1",
3
+ "version": "0.45.0-rc-feature-WDS-121-progress.2",
4
4
  "description": "Core design system library with React components and Storybook documentation",
5
5
  "publishConfig": {
6
6
  "access": "public",