@juwel-development/design-system 3.11.0 → 4.1.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 (70) hide show
  1. package/README.md +16 -3
  2. package/dist/design-system.js +1094 -546
  3. package/dist/styles.css +2 -0
  4. package/dist/styles.dark.css +2 -0
  5. package/dist/styles.light.css +2 -0
  6. package/dist/types/Arrangement/ColumnLayout/ColumnLayout.d.ts +38 -18
  7. package/dist/types/Display/Callout/Callout.d.ts +31 -0
  8. package/dist/types/Display/Icon/Icon.d.ts +20 -24
  9. package/dist/types/Display/Meter/Meter.d.ts +5 -6
  10. package/dist/types/Display/Rule/Rule.d.ts +22 -0
  11. package/dist/types/Display/Table/Table.d.ts +57 -7
  12. package/dist/types/Display/Typography/Eyebrow/Eyebrow.d.ts +1 -1
  13. package/dist/types/Display/Typography/H1/H1.d.ts +1 -1
  14. package/dist/types/Display/Typography/H2/H2.d.ts +1 -1
  15. package/dist/types/Display/Typography/H3/H3.d.ts +1 -1
  16. package/dist/types/Display/Typography/H4/H4.d.ts +1 -1
  17. package/dist/types/Display/Typography/H5/H5.d.ts +1 -1
  18. package/dist/types/Display/Typography/H6/H6.d.ts +1 -1
  19. package/dist/types/Display/Typography/Note/Note.d.ts +16 -3
  20. package/dist/types/Display/Typography/P/P.d.ts +15 -2
  21. package/dist/types/Display/Typography/Prose/Prose.d.ts +14 -6
  22. package/dist/types/Interaction/Button/Button.d.ts +10 -4
  23. package/dist/types/Interaction/Slider/Slider.d.ts +3 -0
  24. package/dist/types/Interaction/Stepper/Stepper.d.ts +59 -0
  25. package/dist/types/Interaction/Stepper/StepperCompositionError.d.ts +3 -0
  26. package/dist/types/Interaction/Switch/Switch.d.ts +20 -0
  27. package/dist/types/Interaction/Tabs/Tabs.d.ts +24 -3
  28. package/dist/types/Layout/Dialog/Dialog.d.ts +11 -3
  29. package/dist/types/Layout/Form/FormConfigurationError.d.ts +3 -0
  30. package/dist/types/Layout/Pane/Pane.d.ts +57 -0
  31. package/dist/types/Layout/Screen/Screen.d.ts +31 -0
  32. package/dist/types/Layout/Screen/ScreenBodyAllocation.d.ts +1 -0
  33. package/dist/types/Layout/Shell/Shell.d.ts +39 -0
  34. package/dist/types/Layout/Sidebar/Sidebar.d.ts +16 -2
  35. package/dist/types/Theme/Palette.d.ts +11 -4
  36. package/dist/types/index.d.ts +22 -1
  37. package/package.json +18 -8
  38. package/src/Arrangement/ColumnLayout/ColumnLayout.tsx +86 -28
  39. package/src/Display/Callout/Callout.tsx +64 -0
  40. package/src/Display/Icon/Icon.tsx +53 -13
  41. package/src/Display/Meter/Meter.tsx +12 -13
  42. package/src/Display/Rule/Rule.tsx +31 -0
  43. package/src/Display/Table/Table.tsx +189 -24
  44. package/src/Display/Typography/Note/Note.tsx +27 -11
  45. package/src/Display/Typography/P/P.tsx +29 -4
  46. package/src/Display/Typography/Prose/Prose.tsx +44 -19
  47. package/src/Interaction/Button/Button.tsx +11 -4
  48. package/src/Interaction/Slider/Slider.tsx +3 -5
  49. package/src/Interaction/Stepper/Stepper.tsx +307 -0
  50. package/src/Interaction/Stepper/StepperCompositionError.ts +6 -0
  51. package/src/Interaction/Switch/Switch.tsx +64 -0
  52. package/src/Interaction/Tabs/Tabs.tsx +44 -10
  53. package/src/Layout/Dialog/Dialog.tsx +19 -6
  54. package/src/Layout/Form/Form.tsx +2 -1
  55. package/src/Layout/Form/FormConfigurationError.ts +6 -0
  56. package/src/Layout/Pane/Pane.tsx +272 -0
  57. package/src/Layout/Screen/Screen.tsx +61 -0
  58. package/src/Layout/Screen/ScreenBodyAllocation.ts +5 -0
  59. package/src/Layout/Shell/Shell.tsx +124 -0
  60. package/src/Layout/Sidebar/Sidebar.tsx +31 -7
  61. package/src/Theme/Palette.ts +17 -6
  62. package/src/Theme/renderTokens.ts +61 -12
  63. package/src/index.ts +22 -2
  64. package/src/styles.css +5 -6
  65. package/src/styles.dark.css +5 -6
  66. package/src/styles.light.css +5 -6
  67. package/src/tokens.css +54 -9
  68. package/src/tokens.dark.css +51 -8
  69. package/src/tokens.light.css +49 -6
  70. package/dist/index.css +0 -2
package/README.md CHANGED
@@ -13,13 +13,20 @@ npm install @juwel-development/design-system
13
13
 
14
14
  ## Integration
15
15
 
16
- Import the library stylesheet once in the consuming application:
16
+ Import the prebuilt library stylesheet once in the consuming application; this route
17
+ does not require Tailwind in the host:
17
18
 
18
19
  ```ts
19
20
  import '@juwel-development/design-system/styles.css';
20
21
  ```
21
22
 
22
- If the host already imports Tailwind and only needs the tokens:
23
+ The JavaScript bundle injects no CSS; consumers that relied on automatic injection
24
+ must add the import above. It starts with `"use client"` for React server-component
25
+ hosts, and `sideEffects: ["**/*.css"]` preserves explicit CSS imports during tree shaking.
26
+
27
+ For the tokens-only route, the host must provide Tailwind v4 and scan the component
28
+ sources to generate their utilities. `tailwindcss` is an optional peer dependency
29
+ because only this route requires it:
23
30
 
24
31
  ```css
25
32
  @import "@juwel-development/design-system/tokens.css";
@@ -52,7 +59,13 @@ import '@juwel-development/design-system/styles.dark.css';
52
59
  ```
53
60
 
54
61
  The tokens-only equivalents are `tokens.light.css` and `tokens.dark.css`. All three
55
- variants are generated from the same palette, so they cannot drift.
62
+ stylesheet variants are prebuilt CSS requiring no Tailwind in the host; the tokens-only
63
+ variants retain Tailwind v4 directives (`@theme`, `@utility`, `@custom-variant`,
64
+ `@property`) and require a Tailwind v4 host. All colour sets come from the same
65
+ generated palette.
66
+
67
+ In 4.0.0, `--color-ring` is no longer read; themes that set it must set
68
+ `--color-focus-ring` instead.
56
69
 
57
70
  ### Changing the palette
58
71