@aleph-alpha/ui-library 1.14.0 → 1.16.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.
- package/config.d.ts +58 -6
- package/config.js +167 -5
- package/dist/system/index.d.ts +41 -53
- package/dist/system/lib.js +981 -988
- package/docs/public-docs/component-directory.md +13 -0
- package/docs/public-docs/contributing.md +11 -0
- package/docs/public-docs/external-links.md +16 -0
- package/docs/public-docs/foundations.md +25 -0
- package/docs/public-docs/getting-started-designers.md +17 -0
- package/docs/public-docs/index.md +5 -0
- package/docs/public-docs/quick-start.md +274 -0
- package/docs/public-docs/standards-guidelines.md +15 -0
- package/package.json +28 -10
- package/src/assets/fonts/Saans/Saans-Bold.woff2 +0 -0
- package/src/assets/fonts/Saans/Saans-BoldItalic.woff2 +0 -0
- package/src/assets/fonts/Saans/Saans-Heavy.woff2 +0 -0
- package/src/assets/fonts/Saans/Saans-HeavyItalic.woff2 +0 -0
- package/src/assets/fonts/Saans/Saans-Light.woff2 +0 -0
- package/src/assets/fonts/Saans/Saans-LightItalic.woff2 +0 -0
- package/src/assets/fonts/Saans/Saans-Medium.woff2 +0 -0
- package/src/assets/fonts/Saans/Saans-MediumItalic.woff2 +0 -0
- package/src/assets/fonts/Saans/Saans-Regular.woff2 +0 -0
- package/src/assets/fonts/Saans/Saans-RegularItalic.woff2 +0 -0
- package/src/assets/fonts/Saans/Saans-SemiBold.woff2 +0 -0
- package/src/assets/fonts/Saans/Saans-SemiBoldItalic.woff2 +0 -0
- package/src/assets/fonts/Saans/SaansItalicsVF.woff2 +0 -0
- package/src/assets/fonts/Saans/SaansMono-Bold.woff2 +0 -0
- package/src/assets/fonts/Saans/SaansMono-Heavy.woff2 +0 -0
- package/src/assets/fonts/Saans/SaansMono-Light.woff2 +0 -0
- package/src/assets/fonts/Saans/SaansMono-Medium.woff2 +0 -0
- package/src/assets/fonts/Saans/SaansMono-Regular.woff2 +0 -0
- package/src/assets/fonts/Saans/SaansMono-SemiBold.woff2 +0 -0
- package/src/assets/fonts/Saans/SaansMonoUprightsVF.woff2 +0 -0
- package/src/assets/fonts/Saans/SaansUprightsVF.woff2 +0 -0
- package/src/assets/fonts/Saans/SaansVF.woff2 +0 -0
- package/src/components/UiCalendar/UiCalendar.stories.ts +1 -4
- package/src/components/UiCalendar/types.ts +1 -1
- package/src/components/UiRangeCalendar/UiRangeCalendar.stories.ts +2 -4
- package/src/components/UiRangeCalendar/types.ts +1 -1
- package/src/components/UiSidebar/UiSidebar.stories.ts +179 -1
- package/src/components/UiSidebar/UiSidebarProvider.vue +1 -3
- package/src/components/UiSidebar/types.ts +6 -9
- package/src/components/UiStepper/UiStepper.stories.ts +1 -1
- package/src/components/core/calendar/Calendar.vue +1 -1
- package/src/components/core/range-calendar/RangeCalendar.vue +1 -1
- package/src/patterns/UiDatePicker/UiDatePicker.stories.ts +1 -4
- package/src/patterns/UiDatePicker/types.ts +1 -1
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Components
|
|
2
|
+
|
|
3
|
+
Explore the design system components: view variants, try them in isolation, and copy code for your app.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Live playground (Storybook)
|
|
8
|
+
|
|
9
|
+
The easiest way to browse and try components and see detailed documentation on each component is Storybook. You can switch props, see states and sizes, see provided examples, etc.
|
|
10
|
+
|
|
11
|
+
**[Open Storybook →](https://dev.aleph-alpha.de/ui-library)**
|
|
12
|
+
|
|
13
|
+
More soon.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# External Links
|
|
2
|
+
|
|
3
|
+
Quick access to Design System resources.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Coming soon
|
|
8
|
+
|
|
9
|
+
This page will provide:
|
|
10
|
+
|
|
11
|
+
| Resource | Description | Link |
|
|
12
|
+
|----------|-------------|------|
|
|
13
|
+
| 📘 **Storybook (Live Code)** | Live code and component playground | [Storybook](https://dev.aleph-alpha.de/ui-library) |
|
|
14
|
+
| 🎨 **Figma (Design System)** | Design system files | [Figma](https://www.figma.com/design/SrZQ19QVN1sQkuAMnMC746/AA26--WIP-?node-id=65-520&m=dev) |
|
|
15
|
+
| 🐙 **GitHub Repository** | Source code and issues | [GitHub](https://github.com/Aleph-Alpha/frontend-hub/tree/main/packages/ui-library) |
|
|
16
|
+
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Foundations
|
|
2
|
+
|
|
3
|
+
*Links to Storybook.*
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Color & Dark Mode
|
|
8
|
+
|
|
9
|
+
Coming soon.
|
|
10
|
+
|
|
11
|
+
## Spacing & Grid
|
|
12
|
+
|
|
13
|
+
Coming soon.
|
|
14
|
+
|
|
15
|
+
## Typography
|
|
16
|
+
|
|
17
|
+
Coming soon.
|
|
18
|
+
|
|
19
|
+
## Elevation & Surfaces
|
|
20
|
+
|
|
21
|
+
Coming soon.
|
|
22
|
+
|
|
23
|
+
## Iconography
|
|
24
|
+
|
|
25
|
+
Coming soon.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Getting Started for Designers
|
|
2
|
+
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
## Figma Access & Library Links
|
|
6
|
+
|
|
7
|
+
Figma components and design files:
|
|
8
|
+
|
|
9
|
+
- **[AA Design System Components (Figma)](https://www.figma.com/design/SrZQ19QVN1sQkuAMnMC746/AA26--WIP-?node-id=580-9181&t=2HPn1uKWpFKHnrMR-1)** — component library and design system.
|
|
10
|
+
|
|
11
|
+
## Using Design Tokens in Figma
|
|
12
|
+
|
|
13
|
+
Coming soon.
|
|
14
|
+
|
|
15
|
+
## Link to Contribution Model
|
|
16
|
+
|
|
17
|
+
Coming soon.
|
|
@@ -0,0 +1,274 @@
|
|
|
1
|
+
# Quick Start
|
|
2
|
+
|
|
3
|
+
Get the UI library integrated into your project in under 5 minutes.
|
|
4
|
+
|
|
5
|
+
**Designers:** For Figma, design tokens, and the contribution model, see [Getting Started for Designers](getting-started-designers.md).
|
|
6
|
+
|
|
7
|
+
!!! note "Prerequisites"
|
|
8
|
+
- **Node.js** (>=20.19.0)
|
|
9
|
+
- **pnpm** or **npm**
|
|
10
|
+
- A **Vite + Vue 3** project
|
|
11
|
+
- **MCP (optional):** An editor that supports MCP (Cursor, VS Code, or Claude Code) if you want AI-assisted component discovery
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Installation
|
|
16
|
+
|
|
17
|
+
**1. Add the library and peer dependencies**
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
pnpm add @aleph-alpha/ui-library
|
|
21
|
+
pnpm add -D unocss @unocss/preset-wind4 @unocss/reset unocss-preset-animations unocss-preset-shadcn
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
<details>
|
|
25
|
+
<summary>Using npm?</summary>
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
npm install @aleph-alpha/ui-library
|
|
29
|
+
npm install -D unocss @unocss/preset-wind4 @unocss/reset unocss-preset-animations unocss-preset-shadcn
|
|
30
|
+
```
|
|
31
|
+
</details>
|
|
32
|
+
|
|
33
|
+
!!! warning "Use `@unocss/preset-wind4`, not `preset-wind3`"
|
|
34
|
+
The library requires **preset-wind4**. Using preset-wind3 will break hover states and colors because wind3 injects opacity variables (`/ var(--un-bg-opacity)`) that conflict with the library's oklch token values.
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## Setup and configuration
|
|
39
|
+
|
|
40
|
+
### 2. UnoCSS config
|
|
41
|
+
|
|
42
|
+
Create or update `uno.config.ts` in your project root:
|
|
43
|
+
|
|
44
|
+
```typescript
|
|
45
|
+
// uno.config.ts
|
|
46
|
+
import { defineUiLibraryConfig } from '@aleph-alpha/ui-library/config'
|
|
47
|
+
|
|
48
|
+
export default defineUiLibraryConfig()
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
This single call sets up everything: `presetWind4`, `presetAnimations`, `presetShadcn`, design token CSS variables (light/dark), token-based theme colors, semantic color overrides, typography classes, font loading, and content scanning.
|
|
52
|
+
|
|
53
|
+
To customize the theme:
|
|
54
|
+
|
|
55
|
+
```typescript
|
|
56
|
+
// uno.config.ts
|
|
57
|
+
import { defineUiLibraryConfig } from '@aleph-alpha/ui-library/config'
|
|
58
|
+
|
|
59
|
+
export default defineUiLibraryConfig({
|
|
60
|
+
// Override specific theme variables
|
|
61
|
+
extend: { light: { primary: '#ff5500' } },
|
|
62
|
+
// Add your own presets
|
|
63
|
+
presets: [myCustomPreset()],
|
|
64
|
+
})
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
More complete theme options example:
|
|
68
|
+
|
|
69
|
+
```typescript
|
|
70
|
+
// uno.config.ts
|
|
71
|
+
import { defineUiLibraryConfig } from '@aleph-alpha/ui-library/config'
|
|
72
|
+
|
|
73
|
+
export default defineUiLibraryConfig({
|
|
74
|
+
// Root and dark selectors used for generated CSS variables
|
|
75
|
+
rootSelector: ':root',
|
|
76
|
+
darkSelector: 'html.dark',
|
|
77
|
+
// Include all token vars like --background-surface-secondary
|
|
78
|
+
includeAllTokens: true,
|
|
79
|
+
// Extend token-derived theme values
|
|
80
|
+
extend: {
|
|
81
|
+
light: {
|
|
82
|
+
primary: '#ff5500',
|
|
83
|
+
'accent-default': '#b2d9ff',
|
|
84
|
+
},
|
|
85
|
+
dark: {
|
|
86
|
+
primary: '#ff8a3d',
|
|
87
|
+
},
|
|
88
|
+
},
|
|
89
|
+
})
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
<details>
|
|
93
|
+
<summary>Advanced: manual preset composition</summary>
|
|
94
|
+
|
|
95
|
+
If you need full control over preset ordering, you can compose the presets individually:
|
|
96
|
+
|
|
97
|
+
```typescript
|
|
98
|
+
// uno.config.ts
|
|
99
|
+
import { defineConfig } from 'unocss'
|
|
100
|
+
import {
|
|
101
|
+
getUiLibraryContentConfig,
|
|
102
|
+
presetUiLibraryThemeFromTokens,
|
|
103
|
+
presetUiLibraryUtils,
|
|
104
|
+
} from '@aleph-alpha/ui-library/config'
|
|
105
|
+
import presetWind from '@unocss/preset-wind4'
|
|
106
|
+
import presetAnimations from 'unocss-preset-animations'
|
|
107
|
+
import presetShadcn from 'unocss-preset-shadcn'
|
|
108
|
+
|
|
109
|
+
export default defineConfig({
|
|
110
|
+
...getUiLibraryContentConfig(),
|
|
111
|
+
presets: [
|
|
112
|
+
presetWind(),
|
|
113
|
+
presetAnimations(),
|
|
114
|
+
presetShadcn({ color: 'neutral', darkSelector: 'html.dark' }),
|
|
115
|
+
// Must come AFTER presetShadcn
|
|
116
|
+
presetUiLibraryThemeFromTokens(),
|
|
117
|
+
presetUiLibraryUtils(),
|
|
118
|
+
],
|
|
119
|
+
})
|
|
120
|
+
```
|
|
121
|
+
</details>
|
|
122
|
+
|
|
123
|
+
### 3. Vite config
|
|
124
|
+
|
|
125
|
+
Ensure your `vite.config.ts` includes both the Vue plugin and the UnoCSS Vite plugin:
|
|
126
|
+
|
|
127
|
+
```typescript
|
|
128
|
+
// vite.config.ts
|
|
129
|
+
import { defineConfig } from 'vite'
|
|
130
|
+
import vue from '@vitejs/plugin-vue'
|
|
131
|
+
import UnoCSS from 'unocss/vite'
|
|
132
|
+
|
|
133
|
+
export default defineConfig({
|
|
134
|
+
plugins: [vue(), UnoCSS()],
|
|
135
|
+
})
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
### 4. Global styles and app entry
|
|
139
|
+
|
|
140
|
+
In your main entry (e.g. `main.ts`), import the UnoCSS reset and the generated CSS. These imports must run before your app mounts so that component styles apply everywhere.
|
|
141
|
+
|
|
142
|
+
```typescript
|
|
143
|
+
// main.ts
|
|
144
|
+
import '@unocss/reset/tailwind.css'
|
|
145
|
+
import 'virtual:uno.css'
|
|
146
|
+
|
|
147
|
+
import { createApp } from 'vue'
|
|
148
|
+
import App from './App.vue'
|
|
149
|
+
|
|
150
|
+
createApp(App).mount('#app')
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
## Test it
|
|
156
|
+
|
|
157
|
+
Use a component to confirm everything works:
|
|
158
|
+
|
|
159
|
+
```vue
|
|
160
|
+
<script setup lang="ts">
|
|
161
|
+
import { UiButton, UiBadge } from '@aleph-alpha/ui-library'
|
|
162
|
+
</script>
|
|
163
|
+
|
|
164
|
+
<template>
|
|
165
|
+
<div class="min-h-screen bg-background text-foreground p-8">
|
|
166
|
+
<UiButton>Click me</UiButton>
|
|
167
|
+
<UiBadge variant="secondary">New</UiBadge>
|
|
168
|
+
</div>
|
|
169
|
+
</template>
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
Run your dev server (e.g. `pnpm dev`) and open the app. The button and badge should render with the correct styles and colors matching [Storybook](https://dev.aleph-alpha.de/ui-library).
|
|
173
|
+
|
|
174
|
+
**If colors look wrong or hover states don't work:**
|
|
175
|
+
|
|
176
|
+
- Verify you're using `@unocss/preset-wind4` (not wind3) — check your `package.json`
|
|
177
|
+
- Verify `presetUiLibraryThemeFromTokens()` comes **after** `presetShadcn()` in the presets array
|
|
178
|
+
- Clear the Vite cache: `rm -rf node_modules/.vite && pnpm dev`
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## Dark mode
|
|
183
|
+
|
|
184
|
+
The library supports dark mode via the `html.dark` class. Toggle it on the document element:
|
|
185
|
+
|
|
186
|
+
```typescript
|
|
187
|
+
// Toggle dark mode
|
|
188
|
+
document.documentElement.classList.toggle('dark')
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
Both `presetShadcn` and `presetUiLibraryThemeFromTokens` default to `darkSelector: 'html.dark'`, so CSS variables switch correctly out of the box.
|
|
192
|
+
|
|
193
|
+
---
|
|
194
|
+
|
|
195
|
+
## Config exports reference
|
|
196
|
+
|
|
197
|
+
All config functions are exported from `@aleph-alpha/ui-library/config`:
|
|
198
|
+
|
|
199
|
+
| Export | Description |
|
|
200
|
+
|--------|-------------|
|
|
201
|
+
| `defineUiLibraryConfig(options?)` | **Recommended.** Complete UnoCSS config with all presets, content scanning, fonts, and tokens. Options: `extend`, `darkSelector`, `presets`, `rules`, `shortcuts`, and any other UnoCSS config |
|
|
202
|
+
| `getUiLibraryContentConfig()` | UnoCSS content/pipeline config to scan library classes |
|
|
203
|
+
| `presetUiLibraryThemeFromTokens(options?)` | Token preset. Bundles token CSS variables, theme colors, semantic overrides, and typography classes. Options: `darkSelector` (default: `'html.dark'`), `includeAllTokens` (default: `true`), `extend`, `theme` |
|
|
204
|
+
| `presetUiLibraryUtils()` | Utility rules required by library components (`w-(--var)`, `h-(--var)`, etc.) |
|
|
205
|
+
| `presetUiLibraryTheme(theme, options?)` | Low-level preset with manually provided theme variables (for custom themes) |
|
|
206
|
+
| `getUiLibraryThemeFromTokens()` | Returns the raw theme object derived from `tokens.json` |
|
|
207
|
+
| `getUiLibraryTokenVars()` | Returns all token-based CSS variables for light and dark modes |
|
|
208
|
+
| `getUiLibraryTokenColors()` | Returns UnoCSS theme colors config for all token-based colors (included automatically by `presetUiLibraryThemeFromTokens`) |
|
|
209
|
+
| `getUiLibraryTypographyShortcuts()` | Returns typography class definitions as `[className, cssProperties]` tuples (included automatically by `presetUiLibraryThemeFromTokens`) |
|
|
210
|
+
| `defineThemeConfig(config)` | Type-safe helper for external theme config files |
|
|
211
|
+
|
|
212
|
+
---
|
|
213
|
+
|
|
214
|
+
## MCP Integration
|
|
215
|
+
|
|
216
|
+
Enable AI assistants (Cursor, Claude Code, etc.) to discover and use UI library components.
|
|
217
|
+
|
|
218
|
+
!!! warning "Run from your project directory"
|
|
219
|
+
Run the installer from the **project that uses the UI library** (your app root). It detects the root from the current working directory and writes `.mcp.json` or `.cursor/mcp.json` there. Running it from the wrong folder will use the wrong root or fail.
|
|
220
|
+
|
|
221
|
+
**1. Run the installer**
|
|
222
|
+
|
|
223
|
+
```bash
|
|
224
|
+
npx @aleph-alpha/lib-mcp mcp-install
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
**2. For Cursor**: add the Cursor-specific config:
|
|
228
|
+
|
|
229
|
+
```bash
|
|
230
|
+
npx @aleph-alpha/lib-mcp mcp-install --cursor
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
**3. Restart your editor** so it picks up the MCP server.
|
|
234
|
+
|
|
235
|
+
**Available tools:**
|
|
236
|
+
|
|
237
|
+
| Tool | Description |
|
|
238
|
+
|------|-------------|
|
|
239
|
+
| `list_components` | Browse all components, optionally filter by name/category/description |
|
|
240
|
+
| `get_component_docs` | Get full documentation for a component including props, examples, and usage |
|
|
241
|
+
| `get_setup_guide` | Get this setup guide (so AI assistants can configure projects correctly) |
|
|
242
|
+
|
|
243
|
+
### Or add the server manually
|
|
244
|
+
|
|
245
|
+
If you prefer not to run the installer, add the MCP server yourself.
|
|
246
|
+
|
|
247
|
+
1. **Where to put the config** (see your editor docs):
|
|
248
|
+
|
|
249
|
+
| Editor | Config location / docs |
|
|
250
|
+
|--------|------------------------|
|
|
251
|
+
| **Cursor** | [Using mcp.json](https://cursor.com/docs/context/mcp#using-mcpjson) — use `.cursor/mcp.json` in your project or `~/.cursor/mcp.json` globally |
|
|
252
|
+
| **VS Code** | [Add and manage MCP servers](https://code.visualstudio.com/docs/copilot/customization/mcp-servers#_configure-the-mcpjson-file) — use `.vscode/mcp.json` (workspace) or user config |
|
|
253
|
+
| **Claude Code** | [Add a local stdio server](https://code.claude.com/docs/en/mcp#option-3-add-a-local-stdio-server) — use `.mcp.json` in your project (project scope) |
|
|
254
|
+
|
|
255
|
+
2. **Add this server** to your `mcpServers`:
|
|
256
|
+
|
|
257
|
+
```json
|
|
258
|
+
{
|
|
259
|
+
"mcpServers": {
|
|
260
|
+
"ui-library": {
|
|
261
|
+
"command": "npx",
|
|
262
|
+
"args": ["-y", "@aleph-alpha/lib-mcp", "serve"]
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
3. **Restart your editor** so it picks up the MCP server.
|
|
269
|
+
|
|
270
|
+
---
|
|
271
|
+
|
|
272
|
+
## Contribute
|
|
273
|
+
|
|
274
|
+
To contribute to the UI library (guidelines, support, and how to get involved), see [Contributing](contributing.md).
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aleph-alpha/ui-library",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.16.0",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/system/lib.js",
|
|
@@ -22,7 +22,8 @@
|
|
|
22
22
|
"config.js",
|
|
23
23
|
"config.d.ts",
|
|
24
24
|
"tailwind.preset.js",
|
|
25
|
-
"tokens.json"
|
|
25
|
+
"tokens.json",
|
|
26
|
+
"docs/public-docs"
|
|
26
27
|
],
|
|
27
28
|
"description": "Next-gen UI Library for Vue.js projects.",
|
|
28
29
|
"author": "Aleph Alpha GmbH",
|
|
@@ -42,11 +43,11 @@
|
|
|
42
43
|
"devDependencies": {
|
|
43
44
|
"@faker-js/faker": "10.1.0",
|
|
44
45
|
"@playwright/test": "1.57.0",
|
|
45
|
-
"@storybook/addon-a11y": "
|
|
46
|
-
"@storybook/addon-docs": "
|
|
47
|
-
"@storybook/addon-themes": "
|
|
48
|
-
"@storybook/addon-vitest": "
|
|
49
|
-
"@storybook/vue3-vite": "
|
|
46
|
+
"@storybook/addon-a11y": "10.2.17",
|
|
47
|
+
"@storybook/addon-docs": "10.2.17",
|
|
48
|
+
"@storybook/addon-themes": "10.2.17",
|
|
49
|
+
"@storybook/addon-vitest": "10.2.17",
|
|
50
|
+
"@storybook/vue3-vite": "10.2.17",
|
|
50
51
|
"@testing-library/jest-dom": "^6.4.6",
|
|
51
52
|
"@testing-library/vue": "^8.1.0",
|
|
52
53
|
"@unocss/preset-wind3": "^66.5.10",
|
|
@@ -59,7 +60,7 @@
|
|
|
59
60
|
"http-server": "14.1.1",
|
|
60
61
|
"playwright": "^1.57.0",
|
|
61
62
|
"postcss": "8.5.6",
|
|
62
|
-
"storybook": "
|
|
63
|
+
"storybook": "10.2.17",
|
|
63
64
|
"typescript": "^5.2.2",
|
|
64
65
|
"unocss": "66.4.1",
|
|
65
66
|
"unocss-preset-animations": "1.3.0",
|
|
@@ -70,11 +71,28 @@
|
|
|
70
71
|
"vitest": "^3.0.0",
|
|
71
72
|
"vue-tsc": "^2.2.12",
|
|
72
73
|
"wait-on": "9.0.3",
|
|
73
|
-
"@aleph-alpha/config-css": "0.20.0",
|
|
74
|
-
"@aleph-alpha/eslint-config-frontend": "0.4.0",
|
|
75
74
|
"@aleph-alpha/prettier-config-frontend": "0.4.0",
|
|
75
|
+
"@aleph-alpha/eslint-config-frontend": "0.5.0",
|
|
76
|
+
"@aleph-alpha/config-css": "0.21.0",
|
|
76
77
|
"@aleph-alpha/tsconfig-frontend": "0.5.0"
|
|
77
78
|
},
|
|
79
|
+
"peerDependencies": {
|
|
80
|
+
"unocss": ">=66.0.0",
|
|
81
|
+
"@unocss/preset-wind4": ">=66.0.0",
|
|
82
|
+
"unocss-preset-animations": ">=1.0.0",
|
|
83
|
+
"unocss-preset-shadcn": ">=1.0.0"
|
|
84
|
+
},
|
|
85
|
+
"peerDependenciesMeta": {
|
|
86
|
+
"@unocss/preset-wind4": {
|
|
87
|
+
"optional": true
|
|
88
|
+
},
|
|
89
|
+
"unocss-preset-animations": {
|
|
90
|
+
"optional": true
|
|
91
|
+
},
|
|
92
|
+
"unocss-preset-shadcn": {
|
|
93
|
+
"optional": true
|
|
94
|
+
}
|
|
95
|
+
},
|
|
78
96
|
"dependencies": {
|
|
79
97
|
"@floating-ui/vue": "1.1.9",
|
|
80
98
|
"@internationalized/date": "^3.10.1",
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -31,7 +31,7 @@ const meta: Meta<typeof UiCalendar> = {
|
|
|
31
31
|
weekStartsOn: {
|
|
32
32
|
control: 'select',
|
|
33
33
|
options: [0, 1, 2, 3, 4, 5, 6],
|
|
34
|
-
description: 'The day of the week to start on. 0
|
|
34
|
+
description: 'The day of the week to start on. 0 is the locale default first day.',
|
|
35
35
|
},
|
|
36
36
|
numberOfMonths: {
|
|
37
37
|
control: { type: 'number', min: 1, max: 3 },
|
|
@@ -392,7 +392,6 @@ const date = ref<DateValue>()
|
|
|
392
392
|
<UiCalendar
|
|
393
393
|
v-model="date"
|
|
394
394
|
locale="de"
|
|
395
|
-
:week-starts-on="1"
|
|
396
395
|
weekday-format="short"
|
|
397
396
|
class="rounded-md border shadow-sm"
|
|
398
397
|
/>
|
|
@@ -405,7 +404,6 @@ const date = ref<DateValue>()
|
|
|
405
404
|
export const GermanLocale: Story = {
|
|
406
405
|
args: {
|
|
407
406
|
locale: 'de',
|
|
408
|
-
weekStartsOn: 1,
|
|
409
407
|
weekdayFormat: 'short',
|
|
410
408
|
},
|
|
411
409
|
render: (args) => ({
|
|
@@ -419,7 +417,6 @@ export const GermanLocale: Story = {
|
|
|
419
417
|
v-model="date"
|
|
420
418
|
:default-placeholder="placeholder"
|
|
421
419
|
:locale="args.locale"
|
|
422
|
-
:week-starts-on="args.weekStartsOn"
|
|
423
420
|
:weekday-format="args.weekdayFormat"
|
|
424
421
|
:disabled="args.disabled"
|
|
425
422
|
class="rounded-md border shadow-sm"
|
|
@@ -30,7 +30,7 @@ const meta: Meta<typeof UiRangeCalendar> = {
|
|
|
30
30
|
weekStartsOn: {
|
|
31
31
|
control: 'select',
|
|
32
32
|
options: [0, 1, 2, 3, 4, 5, 6],
|
|
33
|
-
description: 'The day of the week to start on. 0
|
|
33
|
+
description: 'The day of the week to start on. 0 is the locale default first day.',
|
|
34
34
|
},
|
|
35
35
|
numberOfMonths: {
|
|
36
36
|
control: { type: 'number', min: 1, max: 3 },
|
|
@@ -337,7 +337,7 @@ const dateRange = ref<DateRange>()
|
|
|
337
337
|
</script>
|
|
338
338
|
|
|
339
339
|
<template>
|
|
340
|
-
<UiRangeCalendar v-model="dateRange" locale="de"
|
|
340
|
+
<UiRangeCalendar v-model="dateRange" locale="de" weekday-format="short" class="rounded-md border shadow-sm" />
|
|
341
341
|
</template>`;
|
|
342
342
|
|
|
343
343
|
/**
|
|
@@ -347,7 +347,6 @@ const dateRange = ref<DateRange>()
|
|
|
347
347
|
export const GermanLocale: Story = {
|
|
348
348
|
args: {
|
|
349
349
|
locale: 'de',
|
|
350
|
-
weekStartsOn: 1,
|
|
351
350
|
weekdayFormat: 'short',
|
|
352
351
|
},
|
|
353
352
|
render: (args) => ({
|
|
@@ -361,7 +360,6 @@ export const GermanLocale: Story = {
|
|
|
361
360
|
v-model="dateRange"
|
|
362
361
|
:default-placeholder="placeholder"
|
|
363
362
|
:locale="args.locale"
|
|
364
|
-
:week-starts-on="args.weekStartsOn"
|
|
365
363
|
:weekday-format="args.weekdayFormat"
|
|
366
364
|
:disabled="args.disabled"
|
|
367
365
|
class="rounded-md border shadow-sm"
|