@miozu/jera 0.8.0 → 0.8.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@miozu/jera",
3
- "version": "0.8.0",
3
+ "version": "0.8.1",
4
4
  "description": "Zero-dependency, AI-first component library for Svelte 5",
5
5
  "type": "module",
6
6
  "svelte": "./src/index.js",
@@ -142,8 +142,8 @@
142
142
  display: flex;
143
143
  align-items: center;
144
144
  justify-content: center;
145
- width: 2.5rem;
146
- height: 2.5rem;
145
+ width: var(--space-10);
146
+ height: var(--space-10);
147
147
  border-radius: var(--radius-lg);
148
148
  background: color-mix(in srgb, var(--color-base0D) 10%, transparent);
149
149
  color: var(--color-base0D);
@@ -255,7 +255,7 @@
255
255
  .toolbar-search {
256
256
  flex: 1;
257
257
  min-width: 0;
258
- max-width: 24rem;
258
+ max-width: var(--page-header-search-max-width, 24rem);
259
259
  }
260
260
 
261
261
  .toolbar-filters {
@@ -145,17 +145,17 @@
145
145
  display: flex;
146
146
  align-items: center;
147
147
  justify-content: center;
148
- width: 2rem;
149
- height: 2rem;
148
+ width: var(--space-8);
149
+ height: var(--space-8);
150
150
  padding: 0;
151
151
  background: var(--color-base01);
152
152
  border: 1px solid var(--color-base02);
153
- border-radius: 9999px;
153
+ border-radius: var(--radius-full);
154
154
  color: var(--color-base05);
155
155
  cursor: pointer;
156
156
  pointer-events: all;
157
157
  transition: all 0.15s ease;
158
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
158
+ box-shadow: var(--shadow-sm);
159
159
  }
160
160
 
161
161
  .scroll-btn:hover {
@@ -164,16 +164,16 @@
164
164
  .member-avatar {
165
165
  position: relative;
166
166
  flex-shrink: 0;
167
- width: 2.5rem;
168
- height: 2.5rem;
167
+ width: var(--space-10);
168
+ height: var(--space-10);
169
169
  border-radius: var(--radius-lg);
170
170
  background: color-mix(in srgb, var(--color-base0D) 15%, transparent);
171
171
  overflow: hidden;
172
172
  }
173
173
 
174
174
  .member-card-compact .member-avatar {
175
- width: 2rem;
176
- height: 2rem;
175
+ width: var(--space-8);
176
+ height: var(--space-8);
177
177
  border-radius: var(--radius-md);
178
178
  }
179
179
 
@@ -202,9 +202,9 @@
202
202
  position: absolute;
203
203
  bottom: 0;
204
204
  right: 0;
205
- width: 0.75rem;
206
- height: 0.75rem;
207
- border-radius: 9999px;
205
+ width: var(--space-3);
206
+ height: var(--space-3);
207
+ border-radius: var(--radius-full);
208
208
  border: 2px solid var(--color-base00);
209
209
  }
210
210
 
@@ -67,39 +67,43 @@
67
67
  });
68
68
  </script>
69
69
 
70
+ {#snippet cardContent()}
71
+ <div class="metric-header">
72
+ {#if icon}
73
+ <span class="metric-icon">
74
+ {@render icon()}
75
+ </span>
76
+ {/if}
77
+ <span class="metric-label">{label}</span>
78
+ {#if badge}
79
+ <span class="metric-badge">
80
+ {@render badge()}
81
+ </span>
82
+ {/if}
83
+ </div>
84
+
85
+ <div class="metric-body">
86
+ <span class="metric-value {status ? `metric-value-${status}` : ''}">
87
+ {value}{#if unit}<span class="metric-unit">{unit}</span>{/if}
88
+ </span>
89
+ {#if sublabel}
90
+ <span class="metric-sublabel">{sublabel}</span>
91
+ {/if}
92
+ </div>
93
+
94
+ {#if progress !== null}
95
+ <div class="metric-progress">
96
+ <div class="metric-progress-bar {progressVariant}" style="width: {Math.min(100, Math.max(0, progress))}%"></div>
97
+ </div>
98
+ {/if}
99
+ {/snippet}
100
+
70
101
  {#if href}
71
102
  <a
72
103
  {href}
73
104
  class="metric-card {status ? `metric-card-${status}` : ''} metric-card-clickable {className}"
74
105
  >
75
- <div class="metric-header">
76
- {#if icon}
77
- <span class="metric-icon">
78
- {@render icon()}
79
- </span>
80
- {/if}
81
- <span class="metric-label">{label}</span>
82
- {#if badge}
83
- <span class="metric-badge">
84
- {@render badge()}
85
- </span>
86
- {/if}
87
- </div>
88
-
89
- <div class="metric-body">
90
- <span class="metric-value {status ? `metric-value-${status}` : ''}">
91
- {value}{#if unit}<span class="metric-unit">{unit}</span>{/if}
92
- </span>
93
- {#if sublabel}
94
- <span class="metric-sublabel">{sublabel}</span>
95
- {/if}
96
- </div>
97
-
98
- {#if progress !== null}
99
- <div class="metric-progress">
100
- <div class="metric-progress-bar {progressVariant}" style="width: {Math.min(100, Math.max(0, progress))}%"></div>
101
- </div>
102
- {/if}
106
+ {@render cardContent()}
103
107
  </a>
104
108
  {:else}
105
109
  <div
@@ -108,34 +112,7 @@
108
112
  role={onclick ? 'button' : undefined}
109
113
  tabindex={onclick ? 0 : undefined}
110
114
  >
111
- <div class="metric-header">
112
- {#if icon}
113
- <span class="metric-icon">
114
- {@render icon()}
115
- </span>
116
- {/if}
117
- <span class="metric-label">{label}</span>
118
- {#if badge}
119
- <span class="metric-badge">
120
- {@render badge()}
121
- </span>
122
- {/if}
123
- </div>
124
-
125
- <div class="metric-body">
126
- <span class="metric-value {status ? `metric-value-${status}` : ''}">
127
- {value}{#if unit}<span class="metric-unit">{unit}</span>{/if}
128
- </span>
129
- {#if sublabel}
130
- <span class="metric-sublabel">{sublabel}</span>
131
- {/if}
132
- </div>
133
-
134
- {#if progress !== null}
135
- <div class="metric-progress">
136
- <div class="metric-progress-bar {progressVariant}" style="width: {Math.min(100, Math.max(0, progress))}%"></div>
137
- </div>
138
- {/if}
115
+ {@render cardContent()}
139
116
  </div>
140
117
  {/if}
141
118
 
@@ -76,7 +76,12 @@
76
76
  {/if}
77
77
 
78
78
  {#if visible && (text || content)}
79
- <div class="tooltip tooltip-{position}" role="tooltip">
79
+ <div
80
+ class="tooltip tooltip-{position} {content ? 'tooltip-interactive' : ''}"
81
+ role="tooltip"
82
+ onmouseenter={content ? show : undefined}
83
+ onmouseleave={content ? hide : undefined}
84
+ >
80
85
  <div class="tooltip-content">
81
86
  {#if content}
82
87
  {@render content()}
@@ -102,6 +107,10 @@
102
107
  animation: tooltip-enter 0.15s ease-out;
103
108
  }
104
109
 
110
+ .tooltip-interactive {
111
+ pointer-events: auto;
112
+ }
113
+
105
114
  @keyframes tooltip-enter {
106
115
  from {
107
116
  opacity: 0;