@miozu/jera 0.6.1 → 0.6.3
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.
- package/llms.txt +41 -1
- package/package.json +1 -1
- package/src/components/feedback/ProgressBar.svelte +1 -0
- package/src/components/navigation/LeftBar.svelte +2 -1
- package/src/components/navigation/LeftBarItem.svelte +6 -4
- package/src/components/navigation/LeftBarPopover.svelte +4 -1
- package/src/components/navigation/LeftBarSection.svelte +10 -4
package/llms.txt
CHANGED
|
@@ -64,7 +64,47 @@
|
|
|
64
64
|
- [Tabs](/src/components/navigation/Tabs.svelte): Tab navigation
|
|
65
65
|
- [Accordion](/src/components/navigation/Accordion.svelte): Collapsible sections
|
|
66
66
|
- [Sidebar](/src/components/navigation/Sidebar.svelte): App sidebar
|
|
67
|
-
|
|
67
|
+
|
|
68
|
+
#### LeftBar System (1:1 match with dash.selify.ai WorkspaceSidebar)
|
|
69
|
+
- [LeftBar](/src/components/navigation/LeftBar.svelte): Collapsible sidebar container with context
|
|
70
|
+
- [LeftBarSection](/src/components/navigation/LeftBarSection.svelte): Grouped navigation with optional title
|
|
71
|
+
- [LeftBarItem](/src/components/navigation/LeftBarItem.svelte): Nav item with subroutes support
|
|
72
|
+
- [LeftBarPopover](/src/components/navigation/LeftBarPopover.svelte): Hover popover for collapsed state
|
|
73
|
+
|
|
74
|
+
## LeftBar API (v0.6.2+)
|
|
75
|
+
|
|
76
|
+
```svelte
|
|
77
|
+
<LeftBar bind:collapsed persistKey="my-sidebar">
|
|
78
|
+
{#snippet header()}
|
|
79
|
+
<DropdownContainer {themeState} />
|
|
80
|
+
{/snippet}
|
|
81
|
+
{#snippet navigation()}
|
|
82
|
+
<LeftBarSection title="Main">
|
|
83
|
+
<LeftBarItem href="/" icon={Home} label="Dashboard" active={true} />
|
|
84
|
+
<LeftBarItem
|
|
85
|
+
label="Services"
|
|
86
|
+
icon={Server}
|
|
87
|
+
expandable
|
|
88
|
+
bind:expanded={servicesOpen}
|
|
89
|
+
subroutes={[
|
|
90
|
+
{ label: 'Overview', href: '/services' },
|
|
91
|
+
{ label: 'Errors', href: '/errors' }
|
|
92
|
+
]}
|
|
93
|
+
/>
|
|
94
|
+
</LeftBarSection>
|
|
95
|
+
{/snippet}
|
|
96
|
+
{#snippet footer()}
|
|
97
|
+
<LeftBarToggle />
|
|
98
|
+
{/snippet}
|
|
99
|
+
</LeftBar>
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
Context API (provided by LeftBar):
|
|
103
|
+
- `collapsed`: boolean - Current collapsed state
|
|
104
|
+
- `toggle()`: Toggle collapsed state
|
|
105
|
+
- `showPopover(id, event)`: Show hover popover (collapsed mode)
|
|
106
|
+
- `hidePopover()`: Hide popover with delay
|
|
107
|
+
- `keepPopoverOpen()`: Cancel hide delay (on popover enter)
|
|
68
108
|
|
|
69
109
|
## Actions
|
|
70
110
|
- [clickOutside](/src/actions/index.js): Detect clicks outside element
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
@component LeftBar
|
|
3
3
|
|
|
4
4
|
A collapsible left sidebar with navigation sections, expandable groups, and hover popovers.
|
|
5
|
-
Exact 1:1 match with
|
|
5
|
+
Exact 1:1 match with dash.selify.ai WorkspaceSidebar styles.
|
|
6
6
|
|
|
7
7
|
@example Basic usage
|
|
8
8
|
<LeftBar
|
|
@@ -149,6 +149,7 @@
|
|
|
149
149
|
display: flex;
|
|
150
150
|
flex-direction: column;
|
|
151
151
|
background-color: var(--color-base00);
|
|
152
|
+
border-right: 1px solid color-mix(in srgb, var(--color-base03) 30%, transparent);
|
|
152
153
|
height: 100vh;
|
|
153
154
|
position: fixed;
|
|
154
155
|
left: 0;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
@component LeftBarItem
|
|
3
3
|
|
|
4
4
|
A navigation item within LeftBar.
|
|
5
|
-
Exact 1:1 match with
|
|
5
|
+
Exact 1:1 match with dash.selify.ai WorkspaceSidebar nav-item styles.
|
|
6
6
|
|
|
7
7
|
@example Basic
|
|
8
8
|
<LeftBarItem href="/dashboard" icon={Home} label="Dashboard" active={isActive('/dashboard')} />
|
|
@@ -156,6 +156,7 @@
|
|
|
156
156
|
align-items: center;
|
|
157
157
|
gap: 0.5rem;
|
|
158
158
|
font-size: 0.875rem;
|
|
159
|
+
line-height: 1.25rem;
|
|
159
160
|
color: var(--color-base06);
|
|
160
161
|
cursor: pointer;
|
|
161
162
|
border-radius: 0.375rem;
|
|
@@ -216,7 +217,7 @@
|
|
|
216
217
|
}
|
|
217
218
|
|
|
218
219
|
.expand-icon {
|
|
219
|
-
color: var(--color-
|
|
220
|
+
color: var(--color-base05);
|
|
220
221
|
flex-shrink: 0;
|
|
221
222
|
margin-left: auto;
|
|
222
223
|
transition: all 200ms;
|
|
@@ -243,8 +244,9 @@
|
|
|
243
244
|
display: block;
|
|
244
245
|
padding: 0.25rem 0.5rem;
|
|
245
246
|
font-size: 0.875rem;
|
|
246
|
-
|
|
247
|
-
|
|
247
|
+
line-height: 1.25rem;
|
|
248
|
+
color: var(--color-base05);
|
|
249
|
+
transition: all 150ms;
|
|
248
250
|
width: 100%;
|
|
249
251
|
text-align: left;
|
|
250
252
|
cursor: pointer;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
@component LeftBarPopover
|
|
3
3
|
|
|
4
4
|
Hover popover for collapsed LeftBar showing subroutes.
|
|
5
|
-
Exact 1:1 match with
|
|
5
|
+
Exact 1:1 match with dash.selify.ai WorkspaceSidebar hover-popover styles.
|
|
6
6
|
|
|
7
7
|
@example
|
|
8
8
|
<LeftBarPopover
|
|
@@ -87,10 +87,12 @@
|
|
|
87
87
|
.popover-header {
|
|
88
88
|
padding: 0.5rem 1rem;
|
|
89
89
|
font-size: 0.75rem;
|
|
90
|
+
line-height: 1rem;
|
|
90
91
|
font-weight: 600;
|
|
91
92
|
color: var(--color-base06);
|
|
92
93
|
text-transform: uppercase;
|
|
93
94
|
letter-spacing: 0.05em;
|
|
95
|
+
border-bottom: 1px solid color-mix(in srgb, var(--color-base03) 20%, transparent);
|
|
94
96
|
background-color: color-mix(in srgb, var(--color-base01) 50%, transparent);
|
|
95
97
|
}
|
|
96
98
|
|
|
@@ -104,6 +106,7 @@
|
|
|
104
106
|
display: block;
|
|
105
107
|
padding: 0.5rem 1rem;
|
|
106
108
|
font-size: 0.875rem;
|
|
109
|
+
line-height: 1.25rem;
|
|
107
110
|
color: var(--color-base06);
|
|
108
111
|
transition: all 150ms;
|
|
109
112
|
cursor: pointer;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
@component LeftBarSection
|
|
3
3
|
|
|
4
4
|
A section within LeftBar with optional title.
|
|
5
|
-
Exact 1:1 match with
|
|
5
|
+
Exact 1:1 match with dash.selify.ai WorkspaceSidebar section styles.
|
|
6
6
|
|
|
7
7
|
@example
|
|
8
8
|
<LeftBarSection title="Administration">
|
|
@@ -27,6 +27,8 @@
|
|
|
27
27
|
<div class="nav-section {className}">
|
|
28
28
|
{#if title && !isCollapsed}
|
|
29
29
|
<div class="section-header" transition:fade={{ duration: 150 }}>{title}</div>
|
|
30
|
+
{:else if title && isCollapsed}
|
|
31
|
+
<div class="section-divider"></div>
|
|
30
32
|
{/if}
|
|
31
33
|
<ul class="nav-list">
|
|
32
34
|
{@render children?.()}
|
|
@@ -40,12 +42,12 @@
|
|
|
40
42
|
}
|
|
41
43
|
|
|
42
44
|
.section-header {
|
|
43
|
-
padding: 0.
|
|
45
|
+
padding: 0.25rem 0.75rem;
|
|
44
46
|
margin-bottom: 0.25rem;
|
|
45
|
-
margin-top: 0.75rem;
|
|
46
47
|
font-size: 0.75rem;
|
|
48
|
+
line-height: 1rem;
|
|
47
49
|
font-weight: 600;
|
|
48
|
-
color: var(--color-
|
|
50
|
+
color: var(--color-base05);
|
|
49
51
|
text-align: left;
|
|
50
52
|
text-transform: uppercase;
|
|
51
53
|
letter-spacing: 0.05em;
|
|
@@ -53,6 +55,10 @@
|
|
|
53
55
|
overflow: hidden;
|
|
54
56
|
}
|
|
55
57
|
|
|
58
|
+
.section-divider {
|
|
59
|
+
margin: 0 0.75rem 0.5rem 0.75rem;
|
|
60
|
+
}
|
|
61
|
+
|
|
56
62
|
.nav-list {
|
|
57
63
|
display: flex;
|
|
58
64
|
flex-direction: column;
|