@vinyasa/navigation 1.0.26

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.
Files changed (98) hide show
  1. package/README.md +45 -0
  2. package/dist/cjs/breadcrumbs.cjs +240 -0
  3. package/dist/cjs/breadcrumbs.css +58 -0
  4. package/dist/cjs/command-navigation.cjs +215 -0
  5. package/dist/cjs/command-navigation.css +46 -0
  6. package/dist/cjs/index.cjs +2681 -0
  7. package/dist/cjs/index.css +1162 -0
  8. package/dist/cjs/navigation-menu.cjs +302 -0
  9. package/dist/cjs/navigation-menu.css +197 -0
  10. package/dist/cjs/pagination.cjs +462 -0
  11. package/dist/cjs/pagination.css +79 -0
  12. package/dist/cjs/sidebar.cjs +476 -0
  13. package/dist/cjs/sidebar.css +171 -0
  14. package/dist/cjs/stepper.cjs +270 -0
  15. package/dist/cjs/stepper.css +153 -0
  16. package/dist/cjs/tabs.cjs +260 -0
  17. package/dist/cjs/tabs.css +122 -0
  18. package/dist/cjs/top-navigation.cjs +363 -0
  19. package/dist/cjs/top-navigation.css +127 -0
  20. package/dist/cjs/tree-view.cjs +373 -0
  21. package/dist/cjs/tree-view.css +109 -0
  22. package/dist/cjs/workspace-switcher.cjs +249 -0
  23. package/dist/cjs/workspace-switcher.css +100 -0
  24. package/dist/esm/217.css +79 -0
  25. package/dist/esm/217.js +202 -0
  26. package/dist/esm/294.css +100 -0
  27. package/dist/esm/294.js +114 -0
  28. package/dist/esm/375.css +153 -0
  29. package/dist/esm/375.js +120 -0
  30. package/dist/esm/555.css +171 -0
  31. package/dist/esm/555.js +232 -0
  32. package/dist/esm/655.css +58 -0
  33. package/dist/esm/655.js +87 -0
  34. package/dist/esm/66.css +46 -0
  35. package/dist/esm/66.js +92 -0
  36. package/dist/esm/694.css +109 -0
  37. package/dist/esm/694.js +227 -0
  38. package/dist/esm/814.css +197 -0
  39. package/dist/esm/814.js +146 -0
  40. package/dist/esm/862.css +127 -0
  41. package/dist/esm/862.js +130 -0
  42. package/dist/esm/913.css +119 -0
  43. package/dist/esm/913.js +121 -0
  44. package/dist/esm/953.js +87 -0
  45. package/dist/esm/breadcrumbs.d.ts +2 -0
  46. package/dist/esm/breadcrumbs.js +1 -0
  47. package/dist/esm/command-navigation.d.ts +2 -0
  48. package/dist/esm/command-navigation.js +1 -0
  49. package/dist/esm/components/breadcrumbs/Breadcrumbs.css.d.ts +6 -0
  50. package/dist/esm/components/breadcrumbs/Breadcrumbs.d.ts +58 -0
  51. package/dist/esm/components/breadcrumbs/index.d.ts +1 -0
  52. package/dist/esm/components/command-navigation/CommandNavigation.css.d.ts +4 -0
  53. package/dist/esm/components/command-navigation/CommandNavigation.d.ts +50 -0
  54. package/dist/esm/components/command-navigation/index.d.ts +1 -0
  55. package/dist/esm/components/navigation-menu/NavigationMenu.css.d.ts +13 -0
  56. package/dist/esm/components/navigation-menu/NavigationMenu.d.ts +69 -0
  57. package/dist/esm/components/navigation-menu/index.d.ts +1 -0
  58. package/dist/esm/components/pagination/Pagination.css.d.ts +13 -0
  59. package/dist/esm/components/pagination/Pagination.d.ts +69 -0
  60. package/dist/esm/components/pagination/getPaginationRange.d.ts +15 -0
  61. package/dist/esm/components/pagination/index.d.ts +2 -0
  62. package/dist/esm/components/sidebar/Sidebar.css.d.ts +60 -0
  63. package/dist/esm/components/sidebar/Sidebar.d.ts +82 -0
  64. package/dist/esm/components/sidebar/index.d.ts +1 -0
  65. package/dist/esm/components/stepper/Stepper.css.d.ts +10 -0
  66. package/dist/esm/components/stepper/Stepper.d.ts +57 -0
  67. package/dist/esm/components/stepper/index.d.ts +1 -0
  68. package/dist/esm/components/tabs/Tabs.css.d.ts +6 -0
  69. package/dist/esm/components/tabs/Tabs.d.ts +39 -0
  70. package/dist/esm/components/tabs/index.d.ts +1 -0
  71. package/dist/esm/components/top-navigation/TopNavigation.css.d.ts +13 -0
  72. package/dist/esm/components/top-navigation/TopNavigation.d.ts +67 -0
  73. package/dist/esm/components/top-navigation/index.d.ts +1 -0
  74. package/dist/esm/components/tree-view/TreeView.css.d.ts +8 -0
  75. package/dist/esm/components/tree-view/TreeView.d.ts +43 -0
  76. package/dist/esm/components/tree-view/index.d.ts +1 -0
  77. package/dist/esm/components/workspace-switcher/WorkspaceSwitcher.css.d.ts +9 -0
  78. package/dist/esm/components/workspace-switcher/WorkspaceSwitcher.d.ts +43 -0
  79. package/dist/esm/components/workspace-switcher/index.d.ts +1 -0
  80. package/dist/esm/index.d.ts +10 -0
  81. package/dist/esm/index.js +10 -0
  82. package/dist/esm/navigation-menu.d.ts +2 -0
  83. package/dist/esm/navigation-menu.js +1 -0
  84. package/dist/esm/pagination.d.ts +2 -0
  85. package/dist/esm/pagination.js +1 -0
  86. package/dist/esm/sidebar.d.ts +2 -0
  87. package/dist/esm/sidebar.js +1 -0
  88. package/dist/esm/stepper.d.ts +2 -0
  89. package/dist/esm/stepper.js +1 -0
  90. package/dist/esm/tabs.d.ts +2 -0
  91. package/dist/esm/tabs.js +1 -0
  92. package/dist/esm/top-navigation.d.ts +2 -0
  93. package/dist/esm/top-navigation.js +1 -0
  94. package/dist/esm/tree-view.d.ts +2 -0
  95. package/dist/esm/tree-view.js +1 -0
  96. package/dist/esm/workspace-switcher.d.ts +2 -0
  97. package/dist/esm/workspace-switcher.js +1 -0
  98. package/package.json +146 -0
@@ -0,0 +1,100 @@
1
+ ._1glbv700 {
2
+ border-radius: var(--vinyasa-radius-sm);
3
+ background-color: var(--vinyasa-primary);
4
+ width: 1.75rem;
5
+ height: 1.75rem;
6
+ color: var(--vinyasa-on-primary);
7
+ font-family: var(--vinyasa-font-family-sans);
8
+ font-size: var(--vinyasa-font-size-xs);
9
+ font-weight: var(--vinyasa-font-weight-semibold);
10
+ flex-shrink: 0;
11
+ justify-content: center;
12
+ align-items: center;
13
+ display: inline-flex;
14
+ overflow: hidden;
15
+ }
16
+
17
+ ._1glbv701 {
18
+ object-fit: cover;
19
+ width: 100%;
20
+ height: 100%;
21
+ }
22
+
23
+ ._1glbv702 {
24
+ align-items: center;
25
+ gap: var(--vinyasa-space2);
26
+ max-width: 16rem;
27
+ padding: var(--vinyasa-space2);
28
+ border-radius: var(--vinyasa-radius-sm);
29
+ color: var(--vinyasa-text-default);
30
+ cursor: pointer;
31
+ transition: background-color var(--vinyasa-motion-duration-fast) var(--vinyasa-motion-easing-standard);
32
+ background-color: #0000;
33
+ border: none;
34
+ display: inline-flex;
35
+ }
36
+
37
+ ._1glbv702:hover {
38
+ background-color: var(--vinyasa-secondary);
39
+ }
40
+
41
+ ._1glbv702:focus-visible {
42
+ outline: 2px solid var(--vinyasa-focus);
43
+ outline-offset: 2px;
44
+ }
45
+
46
+ ._1glbv702[data-state="open"] {
47
+ background-color: var(--vinyasa-secondary);
48
+ }
49
+
50
+ ._1glbv703 {
51
+ flex-direction: column;
52
+ flex: 1;
53
+ align-items: flex-start;
54
+ min-width: 0;
55
+ display: flex;
56
+ }
57
+
58
+ ._1glbv704 {
59
+ white-space: nowrap;
60
+ text-overflow: ellipsis;
61
+ max-width: 100%;
62
+ font-family: var(--vinyasa-font-family-sans);
63
+ font-size: var(--vinyasa-font-size-sm);
64
+ font-weight: var(--vinyasa-font-weight-medium);
65
+ display: block;
66
+ overflow: hidden;
67
+ }
68
+
69
+ ._1glbv705 {
70
+ white-space: nowrap;
71
+ text-overflow: ellipsis;
72
+ max-width: 100%;
73
+ font-family: var(--vinyasa-font-family-sans);
74
+ font-size: var(--vinyasa-font-size-xs);
75
+ color: var(--vinyasa-text-muted);
76
+ display: block;
77
+ overflow: hidden;
78
+ }
79
+
80
+ ._1glbv706 {
81
+ color: var(--vinyasa-text-muted);
82
+ flex-shrink: 0;
83
+ font-size: 1rem;
84
+ display: inline-flex;
85
+ }
86
+
87
+ ._1glbv707 {
88
+ align-items: center;
89
+ gap: var(--vinyasa-space2);
90
+ min-width: 14rem;
91
+ display: flex;
92
+ }
93
+
94
+ ._1glbv708 {
95
+ color: var(--vinyasa-primary);
96
+ flex-shrink: 0;
97
+ margin-left: auto;
98
+ font-size: 1rem;
99
+ }
100
+
@@ -0,0 +1,114 @@
1
+ import "./294.css";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import { CheckIcon, ChevronDownIcon, PlusIcon } from "@vinyasa/icons";
4
+ import { DropdownMenu } from "@vinyasa/overlay/dropdown-menu";
5
+ import { forwardRef } from "react";
6
+ var avatar = '_1glbv700';
7
+ var avatarImage = '_1glbv701';
8
+ var item = '_1glbv707';
9
+ var itemCheck = '_1glbv708';
10
+ var trigger = '_1glbv702';
11
+ var triggerDescription = '_1glbv705';
12
+ var triggerIcon = '_1glbv706';
13
+ var triggerName = '_1glbv704';
14
+ var triggerText = '_1glbv703';
15
+ const initials = (name)=>name.trim().split(/\s+/).slice(0, 2).map((word)=>word[0]).join('').toUpperCase();
16
+ const WorkspaceAvatar = ({ workspace, className, ...rest })=>/*#__PURE__*/ jsx("span", {
17
+ className: className ? `${avatar} ${className}` : avatar,
18
+ "aria-hidden": "true",
19
+ ...rest,
20
+ children: workspace.avatar ?? initials(workspace.name)
21
+ });
22
+ WorkspaceAvatar.displayName = 'WorkspaceAvatar';
23
+ const WorkspaceSwitcherTrigger = /*#__PURE__*/ forwardRef(({ workspace, className, ...rest }, ref)=>/*#__PURE__*/ jsxs("button", {
24
+ ref: ref,
25
+ type: "button",
26
+ className: className ? `${trigger} ${className}` : trigger,
27
+ ...rest,
28
+ children: [
29
+ /*#__PURE__*/ jsx(WorkspaceAvatar, {
30
+ workspace: workspace
31
+ }),
32
+ /*#__PURE__*/ jsx("span", {
33
+ className: triggerText,
34
+ children: /*#__PURE__*/ jsx("span", {
35
+ className: triggerName,
36
+ children: workspace.name
37
+ })
38
+ }),
39
+ /*#__PURE__*/ jsx(ChevronDownIcon, {
40
+ className: triggerIcon
41
+ })
42
+ ]
43
+ }));
44
+ WorkspaceSwitcherTrigger.displayName = 'WorkspaceSwitcherTrigger';
45
+ const WorkspaceSwitcherItem = ({ workspace, active })=>/*#__PURE__*/ jsxs("span", {
46
+ className: item,
47
+ children: [
48
+ /*#__PURE__*/ jsx(WorkspaceAvatar, {
49
+ workspace: workspace
50
+ }),
51
+ /*#__PURE__*/ jsxs("span", {
52
+ className: triggerText,
53
+ children: [
54
+ /*#__PURE__*/ jsx("span", {
55
+ className: triggerName,
56
+ children: workspace.name
57
+ }),
58
+ workspace.description ? /*#__PURE__*/ jsx("span", {
59
+ className: triggerDescription,
60
+ children: workspace.description
61
+ }) : null
62
+ ]
63
+ }),
64
+ active ? /*#__PURE__*/ jsx(CheckIcon, {
65
+ className: itemCheck,
66
+ "aria-hidden": "true"
67
+ }) : null
68
+ ]
69
+ });
70
+ WorkspaceSwitcherItem.displayName = 'WorkspaceSwitcherItem';
71
+ const WorkspaceSwitcherImpl = ({ workspaces, activeWorkspaceId, onWorkspaceChange, onCreateWorkspace, createWorkspaceLabel = 'Create workspace' })=>{
72
+ if (0 === workspaces.length) return null;
73
+ const activeWorkspace = workspaces.find((workspace)=>workspace.id === activeWorkspaceId) ?? workspaces[0];
74
+ const entries = [
75
+ ...workspaces.map((workspace)=>({
76
+ type: 'item',
77
+ key: workspace.id,
78
+ label: /*#__PURE__*/ jsx(WorkspaceSwitcherItem, {
79
+ workspace: workspace,
80
+ active: workspace.id === activeWorkspaceId
81
+ }),
82
+ onSelect: ()=>{
83
+ onWorkspaceChange(workspace.id);
84
+ }
85
+ })),
86
+ ...onCreateWorkspace ? [
87
+ {
88
+ type: 'separator',
89
+ key: 'create-workspace-separator'
90
+ },
91
+ {
92
+ type: 'item',
93
+ key: 'create-workspace',
94
+ label: createWorkspaceLabel,
95
+ icon: /*#__PURE__*/ jsx(PlusIcon, {}),
96
+ onSelect: onCreateWorkspace
97
+ }
98
+ ] : []
99
+ ];
100
+ return /*#__PURE__*/ jsx(DropdownMenu, {
101
+ trigger: /*#__PURE__*/ jsx(WorkspaceSwitcherTrigger, {
102
+ workspace: activeWorkspace
103
+ }),
104
+ items: entries,
105
+ align: "start"
106
+ });
107
+ };
108
+ WorkspaceSwitcherImpl.displayName = 'WorkspaceSwitcher';
109
+ const WorkspaceSwitcher = Object.assign(WorkspaceSwitcherImpl, {
110
+ Trigger: WorkspaceSwitcherTrigger,
111
+ Item: WorkspaceSwitcherItem,
112
+ Avatar: WorkspaceAvatar
113
+ });
114
+ export { WorkspaceSwitcher, avatarImage };
@@ -0,0 +1,153 @@
1
+ ._1szfqcu0 {
2
+ margin: 0;
3
+ padding: 0;
4
+ list-style: none;
5
+ display: flex;
6
+ }
7
+
8
+ ._1szfqcu0[data-orientation="vertical"] {
9
+ flex-direction: column;
10
+ }
11
+
12
+ ._1szfqcu1 {
13
+ flex-direction: column;
14
+ flex: 1;
15
+ min-width: 0;
16
+ display: flex;
17
+ }
18
+
19
+ ._1szfqcu1[data-orientation="vertical"] {
20
+ flex-direction: row;
21
+ flex: initial;
22
+ align-items: stretch;
23
+ min-width: auto;
24
+ }
25
+
26
+ ._1szfqcu2 {
27
+ align-items: center;
28
+ display: flex;
29
+ }
30
+
31
+ [data-orientation="vertical"] ._1szfqcu2 {
32
+ flex-direction: column;
33
+ align-items: center;
34
+ }
35
+
36
+ ._1szfqcu3 {
37
+ background-color: var(--vinyasa-border-color-default);
38
+ flex: 1;
39
+ }
40
+
41
+ [data-orientation="horizontal"] ._1szfqcu3 {
42
+ height: 2px;
43
+ margin-inline: var(--vinyasa-space2);
44
+ }
45
+
46
+ [data-orientation="vertical"] ._1szfqcu3 {
47
+ width: 2px;
48
+ margin-block: var(--vinyasa-space1);
49
+ }
50
+
51
+ li:last-child ._1szfqcu3 {
52
+ visibility: hidden;
53
+ }
54
+
55
+ [data-state="completed"] ._1szfqcu3 {
56
+ background-color: var(--vinyasa-status-success-text);
57
+ }
58
+
59
+ ._1szfqcu4 {
60
+ border-radius: var(--vinyasa-radius-full);
61
+ border: var(--vinyasa-border-width-thin) solid var(--vinyasa-border-color-default);
62
+ background-color: var(--vinyasa-surface);
63
+ width: 2rem;
64
+ height: 2rem;
65
+ color: var(--vinyasa-text-muted);
66
+ font-family: var(--vinyasa-font-family-sans);
67
+ font-size: var(--vinyasa-font-size-sm);
68
+ font-weight: var(--vinyasa-font-weight-medium);
69
+ transition: background-color var(--vinyasa-motion-duration-fast) var(--vinyasa-motion-easing-standard), border-color var(--vinyasa-motion-duration-fast) var(--vinyasa-motion-easing-standard), color var(--vinyasa-motion-duration-fast) var(--vinyasa-motion-easing-standard);
70
+ flex-shrink: 0;
71
+ justify-content: center;
72
+ align-items: center;
73
+ display: flex;
74
+ }
75
+
76
+ [data-state="current"] ._1szfqcu4 {
77
+ border-color: var(--vinyasa-primary);
78
+ color: var(--vinyasa-primary);
79
+ }
80
+
81
+ [data-state="completed"] ._1szfqcu4 {
82
+ border-color: var(--vinyasa-status-success-text);
83
+ background-color: var(--vinyasa-status-success-text);
84
+ color: var(--vinyasa-status-success-bg);
85
+ }
86
+
87
+ [data-state="error"] ._1szfqcu4 {
88
+ border-color: var(--vinyasa-status-error-text);
89
+ background-color: var(--vinyasa-status-error-text);
90
+ color: var(--vinyasa-status-error-bg);
91
+ }
92
+
93
+ ._1szfqcu5 {
94
+ font-size: 1.125rem;
95
+ display: inline-flex;
96
+ }
97
+
98
+ ._1szfqcu6 {
99
+ border: var(--vinyasa-border-width-thin) solid var(--vinyasa-border-color-default);
100
+ cursor: pointer;
101
+ }
102
+
103
+ ._1szfqcu6:hover {
104
+ border-color: var(--vinyasa-primary);
105
+ }
106
+
107
+ ._1szfqcu6:focus-visible {
108
+ outline: 2px solid var(--vinyasa-focus);
109
+ outline-offset: 2px;
110
+ }
111
+
112
+ ._1szfqcu7 {
113
+ min-width: 0;
114
+ padding-top: var(--vinyasa-space2);
115
+ }
116
+
117
+ [data-orientation="vertical"] ._1szfqcu7 {
118
+ min-width: auto;
119
+ padding-top: 0;
120
+ padding-left: var(--vinyasa-space3);
121
+ padding-bottom: var(--vinyasa-space5);
122
+ }
123
+
124
+ li[data-orientation="vertical"]:last-child ._1szfqcu7 {
125
+ padding-bottom: 0;
126
+ }
127
+
128
+ ._1szfqcu8 {
129
+ overflow-wrap: break-word;
130
+ font-family: var(--vinyasa-font-family-sans);
131
+ font-size: var(--vinyasa-font-size-sm);
132
+ font-weight: var(--vinyasa-font-weight-medium);
133
+ color: var(--vinyasa-text-muted);
134
+ display: block;
135
+ }
136
+
137
+ [data-state="current"] ._1szfqcu8, [data-state="completed"] ._1szfqcu8 {
138
+ color: var(--vinyasa-text-default);
139
+ }
140
+
141
+ [data-state="error"] ._1szfqcu8 {
142
+ color: var(--vinyasa-status-error-text);
143
+ }
144
+
145
+ ._1szfqcu9 {
146
+ overflow-wrap: break-word;
147
+ margin-top: var(--vinyasa-space1);
148
+ font-family: var(--vinyasa-font-family-sans);
149
+ font-size: var(--vinyasa-font-size-xs);
150
+ color: var(--vinyasa-text-muted);
151
+ display: block;
152
+ }
153
+
@@ -0,0 +1,120 @@
1
+ import "./375.css";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import { AlertTriangleIcon, CheckIcon } from "@vinyasa/icons";
4
+ import { useThemedRef } from "@vinyasa/tokens";
5
+ import { createContext, forwardRef, useContext } from "react";
6
+ var connector = '_1szfqcu3';
7
+ var content = '_1szfqcu7';
8
+ var description = '_1szfqcu9';
9
+ var indicator = '_1szfqcu4';
10
+ var indicatorArea = '_1szfqcu2';
11
+ var indicatorButton = '_1szfqcu6 _1szfqcu4';
12
+ var indicatorIcon = '_1szfqcu5';
13
+ var label = '_1szfqcu8';
14
+ var root = '_1szfqcu0';
15
+ var step = '_1szfqcu1';
16
+ const StepperContext = /*#__PURE__*/ createContext({
17
+ orientation: 'horizontal'
18
+ });
19
+ const StepperRoot = /*#__PURE__*/ forwardRef(({ orientation = 'horizontal', className, ...rest }, ref)=>{
20
+ const themedRef = useThemedRef(ref);
21
+ return /*#__PURE__*/ jsx(StepperContext.Provider, {
22
+ value: {
23
+ orientation
24
+ },
25
+ children: /*#__PURE__*/ jsx("ol", {
26
+ ref: themedRef,
27
+ "data-orientation": orientation,
28
+ className: className ? `${root} ${className}` : root,
29
+ ...rest
30
+ })
31
+ });
32
+ });
33
+ StepperRoot.displayName = 'StepperRoot';
34
+ const StepperStep = ({ state = 'upcoming', className, ...rest })=>{
35
+ const { orientation } = useContext(StepperContext);
36
+ return /*#__PURE__*/ jsx("li", {
37
+ "data-state": state,
38
+ "data-orientation": orientation,
39
+ className: className ? `${step} ${className}` : step,
40
+ ...rest
41
+ });
42
+ };
43
+ StepperStep.displayName = 'StepperStep';
44
+ const StepperIndicator = ({ children, onClick, className, ...rest })=>/*#__PURE__*/ jsxs("div", {
45
+ className: indicatorArea,
46
+ children: [
47
+ onClick ? /*#__PURE__*/ jsx("button", {
48
+ type: "button",
49
+ onClick: onClick,
50
+ className: className ? `${indicatorButton} ${className}` : indicatorButton,
51
+ ...rest,
52
+ children: children
53
+ }) : /*#__PURE__*/ jsx("span", {
54
+ className: className ? `${indicator} ${className}` : indicator,
55
+ children: children
56
+ }),
57
+ /*#__PURE__*/ jsx("span", {
58
+ className: connector,
59
+ "aria-hidden": "true"
60
+ })
61
+ ]
62
+ });
63
+ StepperIndicator.displayName = 'StepperIndicator';
64
+ const StepperContent = ({ className, ...rest })=>/*#__PURE__*/ jsx("div", {
65
+ className: className ? `${content} ${className}` : content,
66
+ ...rest
67
+ });
68
+ StepperContent.displayName = 'StepperContent';
69
+ const StepperLabel = ({ className, ...rest })=>/*#__PURE__*/ jsx("span", {
70
+ className: className ? `${label} ${className}` : label,
71
+ ...rest
72
+ });
73
+ StepperLabel.displayName = 'StepperLabel';
74
+ const StepperDescription = ({ className, ...rest })=>/*#__PURE__*/ jsx("span", {
75
+ className: className ? `${description} ${className}` : description,
76
+ ...rest
77
+ });
78
+ StepperDescription.displayName = "StepperDescription";
79
+ const StepperImpl = ({ steps, activeStep, onStepClick, ...rest })=>/*#__PURE__*/ jsx(StepperRoot, {
80
+ ...rest,
81
+ children: steps.map((stepSpec, index)=>{
82
+ const state = stepSpec.error ? 'error' : index < activeStep ? 'completed' : index === activeStep ? 'current' : 'upcoming';
83
+ return /*#__PURE__*/ jsxs(StepperStep, {
84
+ state: state,
85
+ children: [
86
+ /*#__PURE__*/ jsx(StepperIndicator, {
87
+ onClick: onStepClick ? ()=>{
88
+ onStepClick(index);
89
+ } : void 0,
90
+ "aria-label": 'string' == typeof stepSpec.label ? `Step ${String(index + 1)}: ${stepSpec.label}` : void 0,
91
+ children: 'completed' === state ? /*#__PURE__*/ jsx(CheckIcon, {
92
+ className: indicatorIcon
93
+ }) : 'error' === state ? /*#__PURE__*/ jsx(AlertTriangleIcon, {
94
+ className: indicatorIcon
95
+ }) : index + 1
96
+ }),
97
+ /*#__PURE__*/ jsxs(StepperContent, {
98
+ children: [
99
+ /*#__PURE__*/ jsx(StepperLabel, {
100
+ children: stepSpec.label
101
+ }),
102
+ stepSpec.description ? /*#__PURE__*/ jsx(StepperDescription, {
103
+ children: stepSpec.description
104
+ }) : null
105
+ ]
106
+ })
107
+ ]
108
+ }, stepSpec.key ?? index);
109
+ })
110
+ });
111
+ StepperImpl.displayName = 'Stepper';
112
+ const Stepper = Object.assign(StepperImpl, {
113
+ Root: StepperRoot,
114
+ Step: StepperStep,
115
+ Indicator: StepperIndicator,
116
+ Content: StepperContent,
117
+ Label: StepperLabel,
118
+ Description: StepperDescription
119
+ });
120
+ export { Stepper };
@@ -0,0 +1,171 @@
1
+ ._1nqk0670 {
2
+ border-right: var(--vinyasa-border-width-thin) solid var(--vinyasa-border-color-default);
3
+ background-color: var(--vinyasa-surface);
4
+ height: 100%;
5
+ transition: width var(--vinyasa-motion-duration-normal) var(--vinyasa-motion-easing-standard);
6
+ flex-direction: column;
7
+ display: flex;
8
+ overflow: hidden;
9
+ }
10
+
11
+ ._1nqk0671 {
12
+ width: 4.5rem;
13
+ }
14
+
15
+ ._1nqk0672 {
16
+ width: 16rem;
17
+ }
18
+
19
+ ._1nqk0673 {
20
+ min-height: 3.5rem;
21
+ padding: 0 var(--vinyasa-space3);
22
+ border-bottom: var(--vinyasa-border-width-thin) solid var(--vinyasa-border-color-default);
23
+ flex-shrink: 0;
24
+ align-items: center;
25
+ display: flex;
26
+ }
27
+
28
+ ._1nqk0674 {
29
+ white-space: nowrap;
30
+ text-overflow: ellipsis;
31
+ flex: 1;
32
+ min-width: 0;
33
+ overflow: hidden;
34
+ }
35
+
36
+ ._1nqk0675 {
37
+ padding: var(--vinyasa-space2);
38
+ gap: var(--vinyasa-space4);
39
+ flex-direction: column;
40
+ flex: 1;
41
+ display: flex;
42
+ overflow-y: auto;
43
+ }
44
+
45
+ ._1nqk0676 {
46
+ padding: var(--vinyasa-space2);
47
+ border-top: var(--vinyasa-border-width-thin) solid var(--vinyasa-border-color-default);
48
+ flex-shrink: 0;
49
+ }
50
+
51
+ ._1nqk0677 {
52
+ gap: var(--vinyasa-space1);
53
+ flex-direction: column;
54
+ display: flex;
55
+ }
56
+
57
+ ._1nqk0678 {
58
+ padding: var(--vinyasa-space2) var(--vinyasa-space3) 0;
59
+ font-size: var(--vinyasa-font-size-xs);
60
+ font-weight: var(--vinyasa-font-weight-medium);
61
+ color: var(--vinyasa-text-muted);
62
+ white-space: nowrap;
63
+ transition: opacity var(--vinyasa-motion-duration-fast) var(--vinyasa-motion-easing-standard);
64
+ }
65
+
66
+ ._1nqk0679 {
67
+ opacity: 0;
68
+ pointer-events: none;
69
+ }
70
+
71
+ ._1nqk067a {
72
+ opacity: 1;
73
+ }
74
+
75
+ ._1nqk067b {
76
+ align-items: center;
77
+ gap: var(--vinyasa-space3);
78
+ padding: var(--vinyasa-space2) var(--vinyasa-space3);
79
+ border-radius: var(--vinyasa-radius-sm);
80
+ color: var(--vinyasa-on-secondary);
81
+ font-family: var(--vinyasa-font-family-sans);
82
+ font-size: var(--vinyasa-font-size-sm);
83
+ cursor: pointer;
84
+ text-align: left;
85
+ background-color: #0000;
86
+ border: none;
87
+ width: 100%;
88
+ text-decoration: none;
89
+ display: flex;
90
+ }
91
+
92
+ ._1nqk067b:hover:not(:disabled) {
93
+ background-color: var(--vinyasa-secondary);
94
+ }
95
+
96
+ ._1nqk067b:focus-visible {
97
+ outline: 2px solid var(--vinyasa-focus);
98
+ outline-offset: -2px;
99
+ }
100
+
101
+ ._1nqk067b:disabled {
102
+ opacity: var(--vinyasa-opacity-disabled);
103
+ cursor: not-allowed;
104
+ }
105
+
106
+ ._1nqk067c {
107
+ background-color: var(--vinyasa-tertiary);
108
+ color: var(--vinyasa-on-tertiary);
109
+ font-weight: var(--vinyasa-font-weight-medium);
110
+ }
111
+
112
+ ._1nqk067d {
113
+ justify-content: center;
114
+ }
115
+
116
+ ._1nqk067e {
117
+ flex-shrink: 0;
118
+ font-size: 1.125rem;
119
+ display: inline-flex;
120
+ }
121
+
122
+ ._1nqk067f {
123
+ white-space: nowrap;
124
+ text-overflow: ellipsis;
125
+ transition: opacity var(--vinyasa-motion-duration-fast) var(--vinyasa-motion-easing-standard);
126
+ overflow: hidden;
127
+ }
128
+
129
+ ._1nqk067g {
130
+ opacity: 0;
131
+ width: 0;
132
+ }
133
+
134
+ ._1nqk067h {
135
+ opacity: 1;
136
+ }
137
+
138
+ ._1nqk067i {
139
+ border-radius: var(--vinyasa-radius-sm);
140
+ width: 1.75rem;
141
+ height: 1.75rem;
142
+ color: var(--vinyasa-text-muted);
143
+ cursor: pointer;
144
+ background-color: #0000;
145
+ border: none;
146
+ flex-shrink: 0;
147
+ justify-content: center;
148
+ align-items: center;
149
+ margin-left: auto;
150
+ display: inline-flex;
151
+ }
152
+
153
+ ._1nqk067i:hover {
154
+ background-color: var(--vinyasa-secondary);
155
+ color: var(--vinyasa-on-secondary);
156
+ }
157
+
158
+ ._1nqk067i:focus-visible {
159
+ outline: 2px solid var(--vinyasa-focus);
160
+ outline-offset: 2px;
161
+ }
162
+
163
+ ._1nqk067j {
164
+ transition: transform var(--vinyasa-motion-duration-fast) var(--vinyasa-motion-easing-standard);
165
+ display: inline-flex;
166
+ }
167
+
168
+ ._1nqk067k {
169
+ transform: rotate(180deg);
170
+ }
171
+