@svadmin/create 0.16.11 → 0.18.0

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.
@@ -143,12 +143,23 @@ not a page background. Success, warning, and danger are reserved for semantic
143
143
  status and feedback. Consumer themes may replace the primary hue while keeping
144
144
  the neutral hierarchy and contrast relationships intact.
145
145
 
146
+ - **WCAG 2.2 AA Contrast**: Normal text maintains at least 4.5:1 against its
147
+ canvas; large text, icons, and focus rings maintain at least 3:1. Enhanced AAA
148
+ screens target 7:1 for normal text.
149
+ - **Palette Discipline**: Avoid one-note palettes dominated by a single hue
150
+ family. Functional states (success, warning, destructive) must use distinct
151
+ chroma and hue angles, never tints of the primary accent.
152
+
146
153
  ## Typography
147
154
 
148
155
  Use Inter or the consumer's compatible system sans. Product pages use compact
149
156
  headings and normal letter spacing. Uppercase table labels, negative tracking,
150
157
  and oversized dashboard numerals are not defaults.
151
158
 
159
+ - **Tabular Figures**: All data tables, numeric metrics, counters, and
160
+ timestamps use `tabular-nums` (monospaced figures) to guarantee stable column
161
+ alignment and avoid visual jitter during live updates.
162
+
152
163
  ## Layout
153
164
 
154
165
  Use an 8px spacing rhythm with 4px for tight internal alignment. Pages are
@@ -156,6 +167,19 @@ unframed layouts with a stable content width. Cards represent individual
156
167
  objects or bounded tools; page sections are not decorative floating cards and
157
168
  cards are not nested for visual effect.
158
169
 
170
+ ### Visual Density Dials
171
+
172
+ svadmin components support systematic density levels to balance scanning speed
173
+ and operational throughput:
174
+
175
+ - **Density 8–10 (Dense / Dashboard)**: 2px/4px/8px rhythm with 28px–32px row
176
+ heights. Used for `AutoTable`, `FilterToolbar`, `RecordDetailDrawer`, and
177
+ operations work areas.
178
+ - **Density 4–6 (Comfortable / Standard)**: 4px/8px/16px rhythm with 40px–44px
179
+ control heights. Used for settings forms, account profiles, and overview cards.
180
+ - **Density 1–3 (Spacious / Onboarding)**: 16px/24px/32px rhythm for public
181
+ portals and introductory workflows.
182
+
159
183
  ## Elevation & Depth
160
184
 
161
185
  Surfaces use a one-pixel border plus a subtle two-layer shadow. Hover elevation
@@ -163,6 +187,11 @@ may increase slightly for genuinely clickable items, without translation or
163
187
  glow. Dialogs and menus receive stronger depth because they are floating
164
188
  layers. Dark mode keeps the same hierarchy with low-chroma surfaces.
165
189
 
190
+ - **Control Shadow**: `0 1px 2px rgb(15 23 42 / 0.05), 0 0 0 1px rgb(15 23 42 / 0.025)`
191
+ - **Surface Shadow**: `0 1px 2px rgb(15 23 42 / 0.035), 0 1px 3px rgb(15 23 42 / 0.025)`
192
+ - **Surface Hover Shadow**: `0 2px 5px rgb(15 23 42 / 0.055), 0 1px 2px rgb(15 23 42 / 0.035)`
193
+ - **Overlay Shadow**: `0 18px 48px rgb(15 23 42 / 0.14), 0 4px 12px rgb(15 23 42 / 0.08)`
194
+
166
195
  ## Shapes
167
196
 
168
197
  Controls use 6px radii and bounded surfaces use 8px radii. Pills are limited to
@@ -175,6 +204,24 @@ feedback use shared components and semantic tokens. Layout presets may adjust
175
204
  density and composition, but they must not replace component color, typography,
176
205
  focus, or elevation with hard-coded values.
177
206
 
207
+
208
+ ## Micro-interactions & Motion
209
+
210
+ Transitions provide clear state confirmation without delaying user action:
211
+
212
+ - **Timing**: Micro-transitions use 140ms–250ms with `cubic-bezier(0.16, 1, 0.3, 1)`
213
+ or standard ease-out curves.
214
+ - **Focus Rings**: Operable controls declare `:focus-visible` with a 2px solid
215
+ ring and a 2px offset.
216
+ - **Accessibility**: All transitions and keyframe animations collapse to 0.01ms
217
+ when `prefers-reduced-motion: reduce` is active.
218
+ - **Accessible Authentication & OTP**: One-time passwords, 2FA codes, and
219
+ security tokens must support multi-digit paste distribution, keyboard navigation,
220
+ and `autocomplete="one-time-code"` without cognitive barriers (WCAG 2.2 AA).
221
+ - **Destructive Action Defenses**: Irreversible operations (such as deleting
222
+ records or revoking keys) require confirmation with clear loading states and
223
+ accidental submission defense.
224
+
178
225
  ### Reference responsibilities
179
226
 
180
227
  The reference stack is layered. It is not a visual mixture:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@svadmin/create",
3
- "version": "0.16.11",
3
+ "version": "0.18.0",
4
4
  "description": "Scaffolding tool for svadmin projects",
5
5
  "type": "module",
6
6
  "bin": {
@@ -11,7 +11,7 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "@svadmin/core": "^0.42.0",
14
- "@svadmin/ui": "^0.58.0",
14
+ "@svadmin/ui": "^0.60.0",
15
15
  "@tanstack/svelte-query": "^6.1.38",
16
16
  "highlight.js": "^11.11.1",
17
17
  "@lucide/svelte": "^1.31.0"