@hyvnt/hyvui 0.2.0 → 0.3.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.
Files changed (86) hide show
  1. package/README.md +264 -253
  2. package/dist/components/ambient/CornerBrackets.svelte +83 -87
  3. package/dist/components/ambient/DataStream.svelte +111 -94
  4. package/dist/components/ambient/GlyphMark.svelte +69 -69
  5. package/dist/components/ambient/GridOverlay.svelte +26 -28
  6. package/dist/components/ambient/ParallaxLayer.svelte +37 -41
  7. package/dist/components/ambient/ScanBand.svelte +95 -91
  8. package/dist/components/ambient/SignalRing.svelte +100 -100
  9. package/dist/components/ambient/ThreadLine.svelte +71 -78
  10. package/dist/components/ambient/Vignette.svelte +24 -26
  11. package/dist/components/depth/DepthLayer.svelte +22 -27
  12. package/dist/components/depth/DepthStage.svelte +63 -62
  13. package/dist/components/depth/FloatCard.svelte +113 -104
  14. package/dist/components/depth/HorizonGrid.svelte +216 -160
  15. package/dist/components/depth/Plinth.svelte +52 -57
  16. package/dist/components/display/Avatar.svelte +64 -69
  17. package/dist/components/display/Badge.svelte +59 -63
  18. package/dist/components/display/Blockquote.svelte +31 -34
  19. package/dist/components/display/CodeBlock.svelte +71 -76
  20. package/dist/components/display/MetricCard.svelte +77 -83
  21. package/dist/components/display/Table.svelte +99 -104
  22. package/dist/components/feedback/Alert.svelte +71 -76
  23. package/dist/components/feedback/EmptyState.svelte +68 -68
  24. package/dist/components/feedback/ErrorState.svelte +73 -73
  25. package/dist/components/feedback/Skeleton.svelte +52 -52
  26. package/dist/components/feedback/StatusDot.svelte +49 -54
  27. package/dist/components/feedback/StatusLine.svelte +122 -122
  28. package/dist/components/feedback/Toast.svelte +130 -136
  29. package/dist/components/inputs/Button.svelte +240 -237
  30. package/dist/components/inputs/Checkbox.svelte +104 -105
  31. package/dist/components/inputs/FileUpload.svelte +165 -163
  32. package/dist/components/inputs/Input.svelte +145 -147
  33. package/dist/components/inputs/Select.svelte +156 -150
  34. package/dist/components/inputs/Textarea.svelte +153 -154
  35. package/dist/components/inputs/Toggle.svelte +120 -120
  36. package/dist/components/layout/Card.svelte +70 -76
  37. package/dist/components/layout/Drawer.svelte +133 -109
  38. package/dist/components/layout/Grid.svelte +118 -43
  39. package/dist/components/layout/Grid.svelte.d.ts +8 -2
  40. package/dist/components/layout/Modal.svelte +176 -159
  41. package/dist/components/layout/Panel.svelte +49 -54
  42. package/dist/components/layout/Popover.svelte +178 -67
  43. package/dist/components/layout/Popover.svelte.d.ts +10 -1
  44. package/dist/components/layout/Stack.svelte +53 -53
  45. package/dist/components/navigation/Breadcrumb.svelte +70 -73
  46. package/dist/components/navigation/DropdownMenu.svelte +167 -124
  47. package/dist/components/navigation/DropdownMenu.svelte.d.ts +12 -2
  48. package/dist/components/navigation/SidebarNav.svelte +86 -90
  49. package/dist/components/navigation/Tabs.svelte +81 -86
  50. package/dist/components/navigation/Topbar.svelte +85 -85
  51. package/dist/components/patterns/ActionBar.svelte +71 -76
  52. package/dist/components/patterns/ConfirmDialog.svelte +63 -64
  53. package/dist/components/patterns/PageHeader.svelte +109 -114
  54. package/dist/components/patterns/SearchBar.svelte +54 -59
  55. package/dist/components/patterns/TerminalBoot.svelte +104 -104
  56. package/dist/components/primitives/Divider.svelte +26 -29
  57. package/dist/components/primitives/Icon.svelte +44 -49
  58. package/dist/components/primitives/Label.svelte +39 -44
  59. package/dist/components/primitives/Surface.svelte +89 -87
  60. package/dist/components/primitives/Text.svelte +98 -98
  61. package/dist/components/scenes/ArchiveScene.svelte +92 -95
  62. package/dist/components/scenes/ArchiveScene.svelte.d.ts +7 -1
  63. package/dist/components/scenes/LogScene.svelte +72 -77
  64. package/dist/components/scenes/NarrativeScene.svelte +91 -92
  65. package/dist/components/scenes/ReadoutScene.svelte +120 -107
  66. package/dist/components/scenes/ReadoutScene.svelte.d.ts +3 -1
  67. package/dist/components/scenes/StageScene.svelte +97 -104
  68. package/dist/examples/FieldReport.svelte +226 -223
  69. package/dist/examples/ObservationDeck.svelte +333 -317
  70. package/dist/examples/SignalLost.svelte +191 -191
  71. package/dist/styles.css +113 -0
  72. package/dist/system/actions/echo.js +9 -9
  73. package/dist/system/actions/resolve.js +9 -9
  74. package/dist/system/actions/reveal.js +1 -1
  75. package/dist/system/actions/surface.js +13 -1
  76. package/dist/system/depth/depth.css +49 -49
  77. package/dist/system/depth/depth.js +1 -1
  78. package/dist/system/expressions.css +80 -80
  79. package/dist/system/override-template.css +72 -72
  80. package/dist/system/register.css +74 -74
  81. package/dist/system/scroll-lock.d.ts +6 -0
  82. package/dist/system/scroll-lock.js +23 -0
  83. package/dist/tokens/tokens.css +100 -86
  84. package/dist/tokens/tokens.js +4 -4
  85. package/dist/utils/motion.js +1 -1
  86. package/package.json +67 -60
@@ -1,86 +1,100 @@
1
- :root {
2
- /* ── backgrounds ─────────────────────────────── */
3
- --bg: #08090b;
4
- --bg-elev: #12151a;
5
- --bg-elev-soft: #0d1014;
6
-
7
- /* ── text ────────────────────────────────────── */
8
- --text: #f0e8da;
9
- --text-soft: #d8cdb9;
10
- --muted: #a79d8b;
11
- --muted-strong: #7e7568;
12
-
13
- /* ── accent ──────────────────────────────────── */
14
- --accent: #c79c57;
15
- --accent-strong: #e2ba74;
16
- --signal: #79a6a3;
17
-
18
- /* ── lines ───────────────────────────────────── */
19
- --line: rgba(186, 157, 108, 0.16);
20
- --line-strong: rgba(198, 166, 112, 0.28);
21
-
22
- /* ── status ──────────────────────────────────── */
23
- --status-ok: #79a6a3;
24
- --status-pend: #8b8476;
25
- --status-warn: #c79c57;
26
- --status-fail: #b66a48;
27
-
28
- /* ── shadow ──────────────────────────────────── */
29
- --shadow-veil: 0 40px 120px rgba(0, 0, 0, 0.45);
30
- --shadow-card: 0 28px 72px rgba(0, 0, 0, 0.34);
31
- --focus-ring: 0 0 0 1px rgba(226, 186, 116, 0.3), 0 0 0 4px rgba(199, 156, 87, 0.08);
32
-
33
- /* ── motion ──────────────────────────────────── */
34
- --transition-smooth: 0.35s cubic-bezier(0.22, 1, 0.36, 1);
35
- --transition-fast: 0.16s cubic-bezier(0.4, 0, 0.2, 1);
36
-
37
- /* ── fonts ───────────────────────────────────── */
38
- --font-body: 'ET Book', 'Iowan Old Style', 'Palatino Linotype', serif;
39
- --font-mono: 'IBM Plex Mono', 'Menlo', 'Consolas', monospace;
40
-
41
- /* ── spacing (fluid) ─────────────────────────── */
42
- --space-2xs: 0.25rem;
43
- --space-xs: 0.5rem;
44
- --space-sm: 0.75rem;
45
- --space-md: 1rem;
46
- --space-lg: 1.5rem;
47
- --space-xl: 2rem;
48
- --space-2xl: 3rem;
49
- --space-3xl: clamp(3rem, 6vw, 5rem);
50
- --space-scene: clamp(2.25rem, 7vw, 6rem);
51
- --space-card: clamp(1.1rem, 2vw, 1.6rem);
52
- --space-inline: 1rem;
53
- --shell-max: 72rem;
54
- --shell-pad: clamp(1.1rem, 3vw, 2rem);
55
- --section-gap: clamp(1.5rem, 3vw, 2.5rem);
56
-
57
- /* ── radius ──────────────────────────────────── */
58
- --radius-sm: 2px;
59
- --radius-md: 4px;
60
- --radius-lg: 6px;
61
-
62
- /* ── controls ────────────────────────────────── */
63
- --control-height-sm: 2.25rem;
64
- --control-height-md: 2.75rem;
65
- --control-pad-x: 0.9rem;
66
- --control-pad-y: 0.7rem;
67
- --control-gap: 0.5rem;
68
-
69
- /* ── surface gradients ───────────────────────── */
70
- --surface-card: linear-gradient(135deg, rgba(199, 156, 87, 0.08), transparent 44%),
71
- rgba(10, 12, 14, 0.8);
72
- --surface-panel: linear-gradient(180deg, rgba(121, 166, 163, 0.08), transparent 18%),
73
- linear-gradient(135deg, rgba(199, 156, 87, 0.08), rgba(10, 12, 14, 0.82) 42%),
74
- rgba(9, 11, 13, 0.74);
75
- --surface-soft: linear-gradient(180deg, rgba(240, 232, 218, 0.015), transparent 38%),
76
- linear-gradient(135deg, rgba(199, 156, 87, 0.05), transparent 48%),
77
- rgba(11, 13, 16, 0.9);
78
- --surface-stroke: inset 0 1px 0 rgba(240, 232, 218, 0.03);
79
-
80
- /* ── z-index ─────────────────────────────────── */
81
- --z-base: 0;
82
- --z-raised: 10;
83
- --z-overlay: 100;
84
- --z-modal: 200;
85
- --z-toast: 300;
86
- }
1
+ :root {
2
+ /* ── backgrounds ─────────────────────────────── */
3
+ --bg: #08090b;
4
+ --bg-elev: #12151a;
5
+ --bg-elev-soft: #0d1014;
6
+
7
+ /* ── text ────────────────────────────────────── */
8
+ --text: #f0e8da;
9
+ --text-soft: #d8cdb9;
10
+ --muted: #a79d8b;
11
+ --muted-strong: #7e7568;
12
+
13
+ /* ── accent ──────────────────────────────────── */
14
+ --accent: #c79c57;
15
+ --accent-strong: #e2ba74;
16
+ --signal: #79a6a3;
17
+
18
+ /* ── lines ───────────────────────────────────── */
19
+ --line: rgba(186, 157, 108, 0.16);
20
+ --line-strong: rgba(198, 166, 112, 0.28);
21
+
22
+ /* ── status ──────────────────────────────────── */
23
+ --status-ok: #79a6a3;
24
+ --status-pend: #8b8476;
25
+ --status-warn: #c79c57;
26
+ --status-fail: #b66a48;
27
+
28
+ /* ── shadow ──────────────────────────────────── */
29
+ --shadow-veil: 0 40px 120px rgba(0, 0, 0, 0.45);
30
+ --shadow-card: 0 28px 72px rgba(0, 0, 0, 0.34);
31
+ --focus-ring: 0 0 0 1px rgba(226, 186, 116, 0.3), 0 0 0 4px rgba(199, 156, 87, 0.08);
32
+
33
+ /* ── motion ──────────────────────────────────── */
34
+ --transition-smooth: 0.35s cubic-bezier(0.22, 1, 0.36, 1);
35
+ --transition-fast: 0.16s cubic-bezier(0.4, 0, 0.2, 1);
36
+
37
+ /* ── fonts ───────────────────────────────────── */
38
+ --font-body: 'ET Book', 'Iowan Old Style', 'Palatino Linotype', serif;
39
+ --font-mono: 'IBM Plex Mono', 'Menlo', 'Consolas', monospace;
40
+
41
+ /* ── spacing (fluid) ─────────────────────────── */
42
+ --space-2xs: 0.25rem;
43
+ --space-xs: 0.5rem;
44
+ --space-sm: 0.75rem;
45
+ --space-md: 1rem;
46
+ --space-lg: 1.5rem;
47
+ --space-xl: 2rem;
48
+ --space-2xl: 3rem;
49
+ --space-3xl: clamp(3rem, 6vw, 5rem);
50
+ --space-scene: clamp(2.25rem, 7vw, 6rem);
51
+ --space-card: clamp(1.1rem, 2vw, 1.6rem);
52
+ --space-inline: 1rem;
53
+ --shell-max: 72rem;
54
+ --shell-pad: clamp(1.1rem, 3vw, 2rem);
55
+ --section-gap: clamp(1.5rem, 3vw, 2.5rem);
56
+
57
+ /* ── radius ──────────────────────────────────── */
58
+ --radius-sm: 2px;
59
+ --radius-md: 4px;
60
+ --radius-lg: 6px;
61
+
62
+ /* ── controls ────────────────────────────────── */
63
+ --control-height-sm: 2.25rem;
64
+ --control-height-md: 2.75rem;
65
+ --control-pad-x: 0.9rem;
66
+ --control-pad-y: 0.7rem;
67
+ --control-gap: 0.5rem;
68
+
69
+ /* ── surface gradients ───────────────────────── */
70
+ --surface-card:
71
+ linear-gradient(135deg, rgba(199, 156, 87, 0.08), transparent 44%), rgba(10, 12, 14, 0.8);
72
+ --surface-panel:
73
+ linear-gradient(180deg, rgba(121, 166, 163, 0.08), transparent 18%),
74
+ linear-gradient(135deg, rgba(199, 156, 87, 0.08), rgba(10, 12, 14, 0.82) 42%),
75
+ rgba(9, 11, 13, 0.74);
76
+ --surface-soft:
77
+ linear-gradient(180deg, rgba(240, 232, 218, 0.015), transparent 38%),
78
+ linear-gradient(135deg, rgba(199, 156, 87, 0.05), transparent 48%), rgba(11, 13, 16, 0.9);
79
+ --surface-stroke: inset 0 1px 0 rgba(240, 232, 218, 0.03);
80
+
81
+ /* ── z-index ─────────────────────────────────── */
82
+ --z-base: 0;
83
+ --z-raised: 10;
84
+ --z-overlay: 100;
85
+ --z-modal: 200;
86
+ --z-toast: 300;
87
+
88
+ /* ── container query thresholds ───────────────── */
89
+ /* Used by components via @container rules. Keep these in rem so they scale
90
+ with user font sizing preferences. */
91
+ --cq-sm: 32rem; /* ~512px */
92
+ --cq-md: 48rem; /* ~768px */
93
+ --cq-lg: 64rem; /* ~1024px */
94
+
95
+ /* ── safe-area convenience ────────────────────── */
96
+ --safe-top: env(safe-area-inset-top);
97
+ --safe-right: env(safe-area-inset-right);
98
+ --safe-bottom: env(safe-area-inset-bottom);
99
+ --safe-left: env(safe-area-inset-left);
100
+ }
@@ -12,14 +12,14 @@ export const tokens = {
12
12
  statusOk: '#79a6a3',
13
13
  statusPend: '#8b8476',
14
14
  statusWarn: '#c79c57',
15
- statusFail: '#b66a48',
15
+ statusFail: '#b66a48'
16
16
  },
17
17
  font: {
18
18
  body: "'ET Book', 'Iowan Old Style', 'Palatino Linotype', serif",
19
- mono: "'IBM Plex Mono', 'Menlo', 'Consolas', monospace",
19
+ mono: "'IBM Plex Mono', 'Menlo', 'Consolas', monospace"
20
20
  },
21
21
  transition: {
22
22
  smooth: '0.35s cubic-bezier(0.22, 1, 0.36, 1)',
23
- fast: '0.16s cubic-bezier(0.4, 0, 0.2, 1)',
24
- },
23
+ fast: '0.16s cubic-bezier(0.4, 0, 0.2, 1)'
24
+ }
25
25
  };
@@ -3,7 +3,7 @@ export const staggerIn = {
3
3
  from: { opacity: 0, transform: 'translateY(6px)' },
4
4
  to: { opacity: 1, transform: 'translateY(0)' },
5
5
  duration: 500,
6
- easing: 'cubic-bezier(0.22, 1, 0.36, 1)',
6
+ easing: 'cubic-bezier(0.22, 1, 0.36, 1)'
7
7
  };
8
8
  /** Standard hover-lift transform. */
9
9
  export const hoverLift = 'translateY(-2px)';
package/package.json CHANGED
@@ -1,60 +1,67 @@
1
- {
2
- "name": "@hyvnt/hyvui",
3
- "version": "0.2.0",
4
- "publishConfig": {
5
- "access": "public"
6
- },
7
- "scripts": {
8
- "dev": "vite dev",
9
- "build": "vite build && npm run prepack",
10
- "preview": "vite preview",
11
- "prepare": "svelte-kit sync || echo ''",
12
- "prepack": "svelte-kit sync && svelte-package && publint",
13
- "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
14
- "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
15
- "format": "prettier --write .",
16
- "lint": "prettier --check ."
17
- },
18
- "files": [
19
- "dist",
20
- "!dist/**/*.test.*",
21
- "!dist/**/*.spec.*"
22
- ],
23
- "sideEffects": [
24
- "**/*.css"
25
- ],
26
- "svelte": "./dist/index.js",
27
- "types": "./dist/index.d.ts",
28
- "type": "module",
29
- "exports": {
30
- ".": {
31
- "types": "./dist/index.d.ts",
32
- "svelte": "./dist/index.js"
33
- }
34
- },
35
- "peerDependencies": {
36
- "svelte": "^5.0.0"
37
- },
38
- "devDependencies": {
39
- "@sveltejs/adapter-auto": "^6.0.0",
40
- "@sveltejs/kit": "^2.22.0",
41
- "@sveltejs/package": "^2.0.0",
42
- "@sveltejs/vite-plugin-svelte": "^6.0.0",
43
- "@tailwindcss/forms": "^0.5.9",
44
- "@tailwindcss/typography": "^0.5.15",
45
- "@tailwindcss/vite": "^4.0.0",
46
- "prettier": "^3.4.2",
47
- "prettier-plugin-svelte": "^3.3.3",
48
- "prettier-plugin-tailwindcss": "^0.6.11",
49
- "publint": "^0.3.2",
50
- "svelte": "^5.0.0",
51
- "svelte-check": "^4.0.0",
52
- "tailwindcss": "^4.0.0",
53
- "typescript": "^5.0.0",
54
- "vite": "^7.0.4",
55
- "vite-plugin-devtools-json": "^1.0.0"
56
- },
57
- "keywords": [
58
- "svelte"
59
- ]
60
- }
1
+ {
2
+ "name": "@hyvnt/hyvui",
3
+ "version": "0.3.0",
4
+ "publishConfig": {
5
+ "access": "public"
6
+ },
7
+ "scripts": {
8
+ "dev": "vite dev",
9
+ "build": "vite build && npm run prepack",
10
+ "preview": "vite preview",
11
+ "prepare": "svelte-kit sync || echo ''",
12
+ "prepack": "svelte-kit sync && svelte-package && publint",
13
+ "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
14
+ "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
15
+ "format": "prettier --write .",
16
+ "lint": "prettier --check .",
17
+ "test:e2e": "npm run build && playwright test"
18
+ },
19
+ "files": [
20
+ "dist",
21
+ "!dist/**/*.test.*",
22
+ "!dist/**/*.spec.*"
23
+ ],
24
+ "sideEffects": [
25
+ "**/*.css"
26
+ ],
27
+ "svelte": "./dist/index.js",
28
+ "types": "./dist/index.d.ts",
29
+ "type": "module",
30
+ "exports": {
31
+ ".": {
32
+ "types": "./dist/index.d.ts",
33
+ "svelte": "./dist/index.js"
34
+ },
35
+ "./styles.css": "./dist/styles.css",
36
+ "./styles": "./dist/styles.css"
37
+ },
38
+ "peerDependencies": {
39
+ "svelte": "^5.0.0"
40
+ },
41
+ "dependencies": {
42
+ "@floating-ui/dom": "^1.6.13"
43
+ },
44
+ "devDependencies": {
45
+ "@playwright/test": "^1.50.0",
46
+ "@sveltejs/adapter-auto": "^6.0.0",
47
+ "@sveltejs/kit": "^2.22.0",
48
+ "@sveltejs/package": "^2.0.0",
49
+ "@sveltejs/vite-plugin-svelte": "^6.0.0",
50
+ "@tailwindcss/forms": "^0.5.9",
51
+ "@tailwindcss/typography": "^0.5.15",
52
+ "@tailwindcss/vite": "^4.0.0",
53
+ "prettier": "^3.4.2",
54
+ "prettier-plugin-svelte": "^3.3.3",
55
+ "prettier-plugin-tailwindcss": "^0.7.2",
56
+ "publint": "^0.3.2",
57
+ "svelte": "^5.0.0",
58
+ "svelte-check": "^4.0.0",
59
+ "tailwindcss": "^4.0.0",
60
+ "typescript": "^5.0.0",
61
+ "vite": "^7.0.4",
62
+ "vite-plugin-devtools-json": "^1.0.0"
63
+ },
64
+ "keywords": [
65
+ "svelte"
66
+ ]
67
+ }