@xenide-io/the-old-ui-theme 0.9.18 → 0.11.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 (79) hide show
  1. package/dist/{Chip-BzuNgJIa.d.mts → Chip-Dw2g2t8D.d.mts} +18 -4
  2. package/dist/{Chip-BzuNgJIa.d.ts → Chip-Dw2g2t8D.d.ts} +18 -4
  3. package/dist/{chunk-6SVJAU5K.mjs → chunk-RIPGN6FG.mjs} +1333 -526
  4. package/dist/index.d.mts +3 -2
  5. package/dist/index.d.ts +3 -2
  6. package/dist/index.js +490 -119
  7. package/dist/index.mjs +11 -3
  8. package/dist/suite-analytics--Mf1RZbw.d.mts +29 -0
  9. package/dist/suite-analytics--Mf1RZbw.d.ts +29 -0
  10. package/dist/suite.d.mts +36 -4
  11. package/dist/suite.d.ts +36 -4
  12. package/dist/suite.js +4617 -4001
  13. package/dist/suite.mjs +1456 -868
  14. package/dist/tailwind-preset.js +10 -1
  15. package/dist/tailwind-preset.mjs +10 -1
  16. package/dist/ui.d.mts +33 -4
  17. package/dist/ui.d.ts +33 -4
  18. package/dist/ui.js +1364 -571
  19. package/dist/ui.mjs +15 -1
  20. package/docs/macos-identity-audit.md +279 -0
  21. package/package.json +1 -1
  22. package/src/app/globals.css +390 -44
  23. package/src/components/ui/Accordion.tsx +4 -7
  24. package/src/components/ui/Avatar.tsx +5 -5
  25. package/src/components/ui/BrandSpinner.tsx +256 -0
  26. package/src/components/ui/Calendar.tsx +7 -7
  27. package/src/components/ui/CodeBlock.tsx +14 -11
  28. package/src/components/ui/CollapsibleSection.tsx +4 -4
  29. package/src/components/ui/CommandPalette.tsx +7 -10
  30. package/src/components/ui/EmptyState.tsx +2 -2
  31. package/src/components/ui/Input.tsx +1 -1
  32. package/src/components/ui/Marketing.tsx +144 -0
  33. package/src/components/ui/MarketingIllustrations.tsx +287 -0
  34. package/src/components/ui/Panel.tsx +1 -1
  35. package/src/components/ui/SegmentedControl.tsx +59 -13
  36. package/src/components/ui/SettingsLayout.tsx +4 -0
  37. package/src/components/ui/ShowcaseWrapper.tsx +3 -3
  38. package/src/components/ui/Table.tsx +45 -10
  39. package/src/components/ui/Typography.tsx +4 -4
  40. package/src/components/ui/avatar-stat.test.tsx +14 -1
  41. package/src/components/ui/brand-spinner.test.tsx +62 -0
  42. package/src/components/ui/index.ts +19 -11
  43. package/src/components/ui/interaction-primitives.test.tsx +12 -6
  44. package/src/components/ui/marketing.test.tsx +39 -0
  45. package/src/components/ui/table.test.tsx +47 -0
  46. package/src/styles/suite-skin.css +471 -74
  47. package/src/styles/themes.css +45 -45
  48. package/src/styles/typography.css +25 -1
  49. package/src/suite/components/ai-draft-editor.tsx +184 -0
  50. package/src/suite/components/ai-panel-workflows.test.tsx +179 -0
  51. package/src/suite/components/ai-panel.tsx +201 -31
  52. package/src/suite/components/app-switcher.tsx +22 -9
  53. package/src/suite/components/command-palette-host.tsx +20 -2
  54. package/src/suite/components/suite-app-layout.tsx +7 -4
  55. package/src/suite/components/suite-bottom-nav.tsx +1 -1
  56. package/src/suite/components/suite-clients-projects-directory.tsx +6 -6
  57. package/src/suite/components/suite-integration-picker.tsx +7 -7
  58. package/src/suite/components/suite-integration-rules.tsx +5 -5
  59. package/src/suite/components/suite-layout.test.tsx +32 -3
  60. package/src/suite/components/suite-layout.tsx +4 -4
  61. package/src/suite/components/suite-mobile-drawer.tsx +2 -2
  62. package/src/suite/components/suite-mobile-header.tsx +1 -1
  63. package/src/suite/components/suite-notification-bell.tsx +27 -6
  64. package/src/suite/components/suite-notification-settings.tsx +182 -0
  65. package/src/suite/components/suite-palette-library.test.tsx +46 -0
  66. package/src/suite/components/suite-palette-library.tsx +82 -15
  67. package/src/suite/components/suite-settings-layout.tsx +2 -2
  68. package/src/suite/components/suite-settings-mobile-nav.tsx +10 -10
  69. package/src/suite/components/suite-sidebar.test.tsx +39 -0
  70. package/src/suite/components/suite-sidebar.tsx +41 -19
  71. package/src/suite/components/suite-skeleton.tsx +6 -6
  72. package/src/suite/components/suite-user-menu.tsx +2 -2
  73. package/src/suite/components/theme-provider.tsx +2 -0
  74. package/src/suite/components/today-calibrating.tsx +3 -3
  75. package/src/suite/components/today-ui.tsx +42 -37
  76. package/src/suite/components/workspace-switcher.tsx +3 -3
  77. package/src/suite/index.ts +14 -0
  78. package/src/suite/lib/suite-notifications.tsx +5 -0
  79. package/tailwind-preset.ts +9 -0
package/dist/ui.mjs CHANGED
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  Accordion,
4
+ AiWritingIllustration,
4
5
  Alert,
5
6
  AuthCard,
6
7
  AuthDivider,
@@ -9,6 +10,7 @@ import {
9
10
  AvatarGroup,
10
11
  Badge,
11
12
  BarChart,
13
+ BrandSpinner,
12
14
  Button,
13
15
  ButtonChrome,
14
16
  Calendar,
@@ -43,12 +45,17 @@ import {
43
45
  IconBase,
44
46
  IconByName,
45
47
  Input,
48
+ IntegrationBridgeIllustration,
46
49
  Kbd,
47
50
  Label,
48
51
  Lead,
49
52
  Link,
50
53
  Loader,
51
54
  LoadingState,
55
+ MarketingHeader,
56
+ MarketingLink,
57
+ MarketingMotionControl,
58
+ MarketingReveal,
52
59
  Modal,
53
60
  Mono,
54
61
  Overline,
@@ -79,10 +86,11 @@ import {
79
86
  Tooltip,
80
87
  TooltipProvider,
81
88
  useChartTokens
82
- } from "./chunk-6SVJAU5K.mjs";
89
+ } from "./chunk-RIPGN6FG.mjs";
83
90
  import "./chunk-FWCSY2DS.mjs";
84
91
  export {
85
92
  Accordion,
93
+ AiWritingIllustration,
86
94
  Alert,
87
95
  AuthCard,
88
96
  AuthDivider,
@@ -91,6 +99,7 @@ export {
91
99
  AvatarGroup,
92
100
  Badge,
93
101
  BarChart,
102
+ BrandSpinner,
94
103
  Button,
95
104
  ButtonChrome,
96
105
  Calendar,
@@ -125,12 +134,17 @@ export {
125
134
  IconBase as Icon,
126
135
  IconByName,
127
136
  Input,
137
+ IntegrationBridgeIllustration,
128
138
  Kbd,
129
139
  Label,
130
140
  Lead,
131
141
  Link,
132
142
  Loader,
133
143
  LoadingState,
144
+ MarketingHeader,
145
+ MarketingLink,
146
+ MarketingMotionControl,
147
+ MarketingReveal,
134
148
  Modal,
135
149
  Mono,
136
150
  Overline,
@@ -0,0 +1,279 @@
1
+ # macOS Identity Audit
2
+
3
+ ## Goal
4
+
5
+ Give The Old UI a recognisable macOS sensibility without turning it into an
6
+ Apple replica or losing its PostHog-derived character.
7
+
8
+ The target is **warm tactile precision**:
9
+
10
+ - Keep Open Runde, the warm Hedgehog canvas, orange action colour, dense
11
+ product layouts, bespoke icons, and Lemon button press behaviour.
12
+ - Add macOS-like material hierarchy, crisp selected states, quiet inset
13
+ controls, deliberate overlay depth, compact toolbars, and restrained motion.
14
+ - Do not add fake window traffic lights, copy Apple application layouts,
15
+ replace the typeface with SF Pro, or make every surface translucent.
16
+
17
+ ## Audit Baseline
18
+
19
+ This audit supersedes stale baseline statements in
20
+ `component-library-improvement-plan.md`:
21
+
22
+ - The package currently has 16 themes across 8 light/dark pairs, not 28.
23
+ - Vitest now covers primitives and suite workflows: 28 files and 113 tests.
24
+ - Playwright has desktop and mobile snapshots for the first-slice workflow,
25
+ themes, modal, auth, settings, filters, progress, and button states.
26
+ - Modal and dropdown behaviour now use Radix primitives.
27
+ - Semantic surface, status, selection, focus, and foreground tokens exist.
28
+
29
+ Baseline `bun run check` passes. ESLint reports three existing warnings and no
30
+ errors.
31
+
32
+ ## Public Surface Inventory
33
+
34
+ ### Actions, Feedback, And Status
35
+
36
+ | Elements | Current character | macOS identity treatment |
37
+ | --- | --- | --- |
38
+ | `Button`, `ButtonChrome`, `DropdownButton`, `MarketingLink` | Strong Lemon ridge and physical press | Preserve the signature ridge for filled actions; make neutral controls quieter and give every face one crisp top highlight and a shorter pressed travel |
39
+ | `Alert`, `Badge`, `Progress`, `Dot` | Semantic colour system is established | Keep semantic colours; reduce border weight and use calm tinted wells rather than stronger shadows |
40
+ | `Loader`, `Spinner`, `LoadingState`, `Skeleton` | Multiple compatible loading patterns | Keep geometry, standardise motion duration and remove redundant decorative elevation |
41
+ | `EmptyState`, `SuiteEmptyState`, `TodayEmptyState` | Three visibly different treatments | Share surface/radius/depth rules while preserving suite artwork and product-specific punctuation |
42
+
43
+ ### Forms And Selection
44
+
45
+ | Elements | Current character | macOS identity treatment |
46
+ | --- | --- | --- |
47
+ | `FormField`, `Input`, `Select`, `Textarea`, `SearchInput`, `SearchGroup` | Good semantic field contract; inset lip already exists | Use one control fill, border, inset highlight, and blue focus halo across every field |
48
+ | `Checkbox`, `Radio`, `Toggle`, `Range`, `FileUpload` | Native-derived controls with mixed geometry | Keep native mechanics; tune marks, switch track, thumb shadow, and focus treatment as one family |
49
+ | `SegmentedControl` | Visually close to macOS but uses one-off radii, shadow, and `transition-all` | Make this the clearest macOS reference: inset track, selected face, subtle hairline, arrow-key semantics, no broad transition |
50
+ | `Chip`, `FilterChips`, `FilterBar`, `FilterMenu`, `SortMenu`, `FilterControls` | Functional but pill and surface treatments vary | Keep pills only for filters/tags; use a shared selected state and compact toolbar material |
51
+ | `Calendar` | Accessible date grid with one-off card styling | Move it onto overlay tokens and use compact circular/rounded selection states without changing behaviour |
52
+
53
+ ### Overlays And Disclosure
54
+
55
+ | Elements | Current character | macOS identity treatment |
56
+ | --- | --- | --- |
57
+ | `Modal` | Radix behaviour and strong floating shadow | Use a cleaner overlay material, title-bar rhythm, hairline separator, and consistent close control |
58
+ | `DropdownMenu`, `Tooltip`, `CommandPalette` | Each has a different overlay implementation and visual formula | Unify overlay radius, border, shadow, blur fallback, row height, selected state, and entrance motion |
59
+ | `Accordion`, `CollapsibleSection` | Correct disclosure semantics but hardcoded large radii and broad transitions | Use shared surface radius and only animate grid/chevron properties |
60
+ | `SuiteMobileDrawer` | Accessible Radix drawer with native-style motion | Retain mobile sheet/drawer behaviour; use the same material and focus contract as desktop overlays |
61
+
62
+ ### Surfaces, Data, And Content
63
+
64
+ | Elements | Current character | macOS identity treatment |
65
+ | --- | --- | --- |
66
+ | `Card`, `Panel`, `Stat` | Base CSS says static cards are flat, but suite skin gives every card a shadow and 12px radius | Restore semantic depth: static cards flat, interactive cards raised, panels inset, stats aligned with cards |
67
+ | `Table` | Compact and readable | Use a quiet header material, selected/hover row tint, tabular values, and visible scroll-container focus |
68
+ | `DonutChart`, `BarChart`, `StackedBarChart` | Token-driven and lightweight | Keep data colours; make chart wells flat and legends follow table typography |
69
+ | `Avatar`, `AvatarGroup`, `Kbd`, `Link`, typography, icons | Strong owned identity | Preserve Open Runde and bespoke glyphs; use semantic avatar foregrounds and system glyph stacks only where function requires them |
70
+ | `AuthLayout`, `AuthCard`, `SettingsLayout`, `SettingsNav` | Clear compositions with separate surface formulas | Apply the shared material hierarchy; settings navigation should read like a macOS source list without copying System Settings |
71
+ | Marketing components and illustrations | New user-owned work in progress | Audit separately after it settles; do not let application chrome changes overwrite its animation or layout work |
72
+
73
+ ### Suite Chrome And Workflows
74
+
75
+ | Elements | Current character | macOS identity treatment |
76
+ | --- | --- | --- |
77
+ | `SuiteAppLayout`, `SuiteSidebar`, `SuiteMobileHeader`, `SuiteBottomNav` | Responsive shell, with translucency already present on mobile | Extend quiet material hierarchy to desktop sidebar and chrome; keep mobile behaviour platform-appropriate |
78
+ | `AppSwitcher`, `SuiteWorkspaceSwitcher`, `SuiteUserMenu`, notifications | Good compact interaction patterns, inconsistent one-off radius/focus/shadow values | Use one source-list row, menu selection, icon size, and focus contract |
79
+ | `SuitePage`, headers, breadcrumbs, toolbars, tabs, section headers | Strong layout foundations | Tighten toolbar grouping and selected tabs; do not change page structure |
80
+ | Today components | More expressive and rounded than the rest of the suite | Keep the authored Today personality, but map panels and actions to shared geometry/depth tokens |
81
+ | AI panel and markdown | Purpose-built conversational UI with many local visual decisions | Preserve chat anatomy; standardise composer, action controls, bubbles, and floating panel depth only |
82
+ | Integration picker/rules, client/project directory, palette library | Product workflows, not primitives | Inherit the revised tokens first; replace local visual exceptions only when snapshots show a mismatch |
83
+
84
+ ## Ranked Findings
85
+
86
+ ### P0: Resolve Before Styling Expansion
87
+
88
+ 1. **Two competing geometry systems.** `globals.css` defines 6px controls,
89
+ 8px surfaces, and 12px overlays, while `suite-skin.css` overrides every
90
+ `.ph-card` to 12px. Components also add `rounded-lg`, `rounded-xl`, and
91
+ `rounded-2xl`. A macOS identity will look cosmetic until geometry has one
92
+ source of truth.
93
+ 2. **Depth semantics conflict.** The base card contract is flat by default,
94
+ but suite skin shadows every card. Panels, stats, filters, tables, and
95
+ interactive controls often share similar elevation. Static, raised, inset,
96
+ and floating surfaces need distinct meanings.
97
+ 3. **Hedgehog Dark does not match its contract.** Its registry description
98
+ promises Hedgehog orange, while its tokens explicitly implement a Microsoft
99
+ Copilot-style graphite/blue theme. The reference pair cannot establish a
100
+ coherent identity until dark mode returns to warm graphite and orange.
101
+ 4. **Focus styling is fragmented.** Public controls alternate between a 3px
102
+ semantic outline, Tailwind `ring-2`, brand rings, and local border-only
103
+ focus. macOS-like precision depends on one visible focus halo, not a new
104
+ effect per component.
105
+ 5. **Global touch CSS disables browser zoom on coarse pointers.** The
106
+ `touch-action: pan-x pan-y` rule intentionally removes pinch zoom. This is an
107
+ accessibility regression and should not be part of a native-feel strategy.
108
+ 6. **The intended mobile modal sheet is not fully expressed by the current
109
+ CSS.** `Modal` content remains fixed and centred; changing overlay alignment
110
+ and panel width/radius does not move that fixed panel to the bottom. Verify
111
+ and correct the transform/position contract before polishing sheets.
112
+
113
+ ### P1: Establish The Identity
114
+
115
+ 1. Preserve the tactile Lemon button, but reserve pronounced depth for actual
116
+ actions. Secondary, toolbar, filter, and navigation controls should use
117
+ quieter faces.
118
+ 2. Introduce material through existing semantic surfaces: opaque content,
119
+ subtly translucent sidebar/toolbars, and floating overlays. Do not add a
120
+ second theme system or a glass variant API.
121
+ 3. Make `SegmentedControl`, source-list selection, toggles, menus, and command
122
+ palette the strongest macOS cues. These familiar interaction patterns carry
123
+ more identity than decorative window chrome.
124
+ 4. Keep Open Runde. The rounded type is core to The Old UI; replacing it with
125
+ an Apple font would divert the design too far.
126
+ 5. Standardise control, surface, and overlay radii through
127
+ `--ph-radius-control`, `--ph-radius-surface`, and `--ph-radius-overlay`.
128
+ Pills remain limited to tags, filters, statuses, toggles, and avatars.
129
+ 6. Standardise motion at 120ms for control feedback and 180ms for overlays.
130
+ Keep spring motion for drawers and authored Today/AI moments only.
131
+
132
+ ### P2: Correct Local Drift
133
+
134
+ 1. Replace public-component `transition-all` usage with explicit properties.
135
+ 2. Move Command Palette, Calendar, Accordion, Suite Empty State, Today panels,
136
+ and suite switchers from one-off shadows/radii to semantic tokens.
137
+ 3. Change Avatar's default `text-white` to `--ph-on-accent` and use
138
+ `React.Children.toArray` for grouping.
139
+ 4. Give Table an empty state and visible focus treatment for its scroll region.
140
+ 5. Add grouped selection semantics and keyboard movement to Segmented Control.
141
+ 6. Keep decorative `Dot` hidden, but require adjacent text whenever it conveys
142
+ status.
143
+ 7. Add focus-visible treatment to the new marketing motion control and links
144
+ before publishing those exports.
145
+
146
+ ## Proposed Visual Contract
147
+
148
+ ### Geometry
149
+
150
+ - Control: keep 6px.
151
+ - Surface: converge on 10px rather than the current 8px/12px split.
152
+ - Overlay: keep 12px desktop; mobile sheets may use 16px top corners.
153
+ - Pill: only semantic pill/capsule controls.
154
+ - Circular: avatar, status dot, icon-only circular action.
155
+
156
+ ### Depth
157
+
158
+ - Flat: cards, alerts, charts, tables, settings content.
159
+ - Inset: inputs, segmented tracks, code/query wells, sidebars when visually
160
+ grouped with the canvas.
161
+ - Raised: buttons, selected segments, clickable cards.
162
+ - Floating: dropdowns, tooltips, command palette, modal, drawer.
163
+
164
+ ### Material
165
+
166
+ - Content stays opaque for readability.
167
+ - Sidebar, top bar, bottom navigation, and temporary overlays may mix the
168
+ semantic surface with transparency and blur.
169
+ - Every blur gets an opaque fallback.
170
+ - No gradients are added to routine product chrome.
171
+
172
+ ### Colour
173
+
174
+ - Keep each product theme's palette.
175
+ - Tune Hedgehog Light/Dark first as the reference pair.
176
+ - Preserve orange as Hedgehog action/brand colour in both modes.
177
+ - Use semantic blue for focus, not for unrelated selection or decoration.
178
+ - Keep vivid categorical chart colours.
179
+
180
+ ## Implementation Plan
181
+
182
+ ### Rollout Status
183
+
184
+ All four phases are implemented on `feat/macos-identity`:
185
+
186
+ - Foundation tokens, Hedgehog Dark, modal positioning, and the first-slice proof
187
+ are complete.
188
+ - Public primitives now share the geometry, depth, overlay, focus, and motion
189
+ contract, with grouped keyboard selection and explicit empty states.
190
+ - Suite shell, navigation, settings, Today, AI, integration, directory, and
191
+ palette surfaces now inherit the same contract without changing their layout
192
+ or authored interaction models.
193
+ - Marketing header, links, buttons, and motion control use the final contract;
194
+ Open Runde, illustration geometry, and authored motion remain unchanged.
195
+ - Playwright now covers focused controls, command palette, Ask AI, desktop
196
+ sidebar, mobile header, and mobile bottom navigation in addition to the
197
+ original light/dark workflow matrix.
198
+
199
+ ### Phase 1: Foundation Proof
200
+
201
+ Files: `src/app/globals.css`, `src/styles/themes.css`,
202
+ `src/styles/suite-skin.css`, and the existing visual fixture only.
203
+
204
+ 1. Reconcile the three radius tokens and remove the suite card override.
205
+ 2. Reconcile flat, inset, raised, and floating shadows.
206
+ 3. Define one focus-visible formula and apply it through shared selectors.
207
+ 4. Retune Hedgehog Dark to warm graphite plus orange while preserving contrast.
208
+ 5. Remove the zoom restriction and fix the mobile sheet position contract.
209
+ 6. Prove the direction on Button, Input, Card, Segmented Control, Dropdown, and
210
+ Modal before touching the broader library.
211
+
212
+ Exit criteria:
213
+
214
+ - Existing first-slice fixture remains recognisably The Old UI.
215
+ - The same fixture reads as macOS-influenced in light and dark without window
216
+ cosplay.
217
+ - Static and interactive surfaces are distinguishable in grayscale.
218
+ - Desktop and mobile snapshots pass after intentional baseline review.
219
+
220
+ ### Phase 2: Primitive Rollout
221
+
222
+ 1. Apply the contract to all forms, statuses, loading states, filtering,
223
+ calendar, command palette, tooltip, accordion, table, stat, avatar, and
224
+ typography utility elements.
225
+ 2. Replace local radii, shadows, focus rings, and broad transitions only where
226
+ the semantic contract covers them.
227
+ 3. Keep component APIs stable unless an accessibility fix requires a small
228
+ addition.
229
+
230
+ Exit criteria:
231
+
232
+ - Every public UI element has rest, hover, focus, active/selected, disabled,
233
+ loading, and error treatment where applicable.
234
+ - No public primitive invents a second overlay or control style.
235
+
236
+ ### Phase 3: Suite Chrome
237
+
238
+ 1. Apply desktop material hierarchy to app layout, sidebar, page headers,
239
+ switchers, menus, settings navigation, and command surfaces.
240
+ 2. Keep mobile header, drawer, sheet, and bottom navigation touch-first rather
241
+ than forcing desktop macOS patterns onto phones.
242
+ 3. Let Today, AI, integration, and directory workflows inherit tokens first;
243
+ make local edits only for visible outliers.
244
+
245
+ Exit criteria:
246
+
247
+ - All five consuming applications share the identity without losing their
248
+ palette or product workflows.
249
+ - Dense pages remain compact and readable at desktop and mobile widths.
250
+
251
+ ### Phase 4: Marketing Integration
252
+
253
+ 1. Rebase the new marketing components onto the final shared focus, radius,
254
+ button, and material contract.
255
+ 2. Preserve the current user-owned illustration and motion work.
256
+ 3. Keep expressive atmosphere on public pages only; do not leak it into dense
257
+ application workspaces.
258
+
259
+ ## Verification
260
+
261
+ Use existing infrastructure; do not add Storybook or another visual system.
262
+
263
+ 1. `bun run check`
264
+ 2. `bun run build`
265
+ 3. `bun run build:lib`
266
+ 4. `bun run package:smoke`
267
+ 5. `bun run test:visual`
268
+ 6. Review light/dark screenshots at mobile and desktop widths.
269
+ 7. Add focused screenshots for segmented control, input focus/error, dropdown,
270
+ command palette, desktop sidebar, mobile drawer, and mobile modal sheet.
271
+ 8. Run contrast checks for all 16 themes and keyboard-only passes for every
272
+ interactive composite.
273
+
274
+ ## Recommended First Result
275
+
276
+ Implement only Phase 1 first. It is broad enough to show the identity but
277
+ small enough to reject or refine without rewriting every component. Once the
278
+ light/dark first-slice screenshots are approved, roll the same contract through
279
+ the remaining primitives and suite chrome.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xenide-io/the-old-ui-theme",
3
- "version": "0.9.18",
3
+ "version": "0.11.0",
4
4
  "description": "Props-driven React components and theme tokens inspired by classic interface design — optimized for Next.js apps and internal tools.",
5
5
  "author": "Xenide",
6
6
  "license": "MIT",