@happyvertical/smrt-svelte 0.32.0 → 0.32.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.
Files changed (2) hide show
  1. package/AGENTS.md +21 -0
  2. package/package.json +5 -5
package/AGENTS.md CHANGED
@@ -2,6 +2,27 @@
2
2
 
3
3
  Top-of-stack Svelte 5 integration layer for SMRT: the app `Provider`, auth / AI hooks, browser AI (STT/TTS/LLM), forms, server-side i18n, and the domain-aware composites (admin, module, workspace). The domain-agnostic UI primitives, i18n client, theme system, and module UI registry now live in `@happyvertical/smrt-ui` (#1582) — import those from there (e.g. `@happyvertical/smrt-ui/ui`, `@happyvertical/smrt-ui/i18n`).
4
4
 
5
+ ## The UI split — primitive-adoption contract (#1589)
6
+
7
+ SMRT's shared UI primitives are split by concern: **`smrt-ui` owns the
8
+ domain-agnostic VISUAL primitives** (`Button`, `Card`, `Modal`, `Badge`,
9
+ `Avatar`, `Chip`, `Dropdown`, …) and **`smrt-svelte` (here) owns the FORM
10
+ primitives** (`Input`, `Textarea`, `Select`, `Checkbox`/`Toggle`, `Form`, and the
11
+ specialized date/measurement/address/file inputs — they carry i18n + spoken-input
12
+ logic that keeps them above the leaf).
13
+
14
+ Two consequences:
15
+
16
+ - **This package is the canonical consumer.** smrt-svelte's own composites and
17
+ workspace shell must adopt smrt-ui visual primitives — use `Button`, not a raw
18
+ `<button>`. Only `src/components/forms/` (the form primitives themselves)
19
+ legitimately holds raw `<input>`/`<select>`/`<textarea>`.
20
+ - **Domain packages import visual primitives from `smrt-ui` and form primitives
21
+ from `smrt-svelte`**, and must not hand-roll raw interactive markup.
22
+
23
+ Enforced by `scripts/check-raw-primitives.mjs` (report-only during the #1589
24
+ migration; flips strict per package as it adopts the primitives).
25
+
5
26
  ## Provider (Root Component)
6
27
 
7
28
  Wraps app in `+layout.svelte`. Provides auth state, permissions, WebSocket, and AI capabilities.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@happyvertical/smrt-svelte",
3
- "version": "0.32.0",
3
+ "version": "0.32.1",
4
4
  "description": "Svelte 5 components for SMRT user management - auth, users, tenants, roles, permissions, groups",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -83,10 +83,10 @@
83
83
  "dependencies": {
84
84
  "@happyvertical/logger": "^0.74.7",
85
85
  "esm-env": "^1.2.2",
86
- "@happyvertical/smrt-agents": "0.32.0",
87
- "@happyvertical/smrt-languages": "0.32.0",
88
- "@happyvertical/smrt-types": "0.32.0",
89
- "@happyvertical/smrt-ui": "0.32.0"
86
+ "@happyvertical/smrt-agents": "0.32.1",
87
+ "@happyvertical/smrt-languages": "0.32.1",
88
+ "@happyvertical/smrt-types": "0.32.1",
89
+ "@happyvertical/smrt-ui": "0.32.1"
90
90
  },
91
91
  "peerDependencies": {
92
92
  "@huggingface/transformers": ">=3.0.0",