- Mobile-responsive editor with bottom drawer, ribbon nav, HUD overlay - Touch support: single-finger tools, two-finger pinch-zoom - PWA: manifest, service worker, installability - Extract LayerTree from LayersPanel, shared utils (colorToCSS, initials, toolIcons) - Constants moved to src/constants.ts, clipboard state to editor store - reka-ui Popover/DropdownMenu in MobileHud Co-authored-by: Danila Poyarkov <dev@dannote.net>
17 lines
554 B
Markdown
17 lines
554 B
Markdown
## ADDED Requirements
|
|
|
|
### Requirement: initials utility in src/utils/text.ts
|
|
The `initials` function SHALL be exported from `src/utils/text.ts`. It SHALL take a name string and return up to 2 uppercase initials, falling back to `"?"` for empty input.
|
|
|
|
#### Scenario: Two-word name
|
|
- **WHEN** `initials("John Doe")` is called
|
|
- **THEN** it returns `"JD"`
|
|
|
|
#### Scenario: Single word
|
|
- **WHEN** `initials("Alice")` is called
|
|
- **THEN** it returns `"A"`
|
|
|
|
#### Scenario: Empty string fallback
|
|
- **WHEN** `initials("")` is called
|
|
- **THEN** it returns `"?"`
|