@spectrabrain/eds 0.2.1 → 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.
package/AI.md CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  - light theme, `AI_CONTEXT.json`의 `components`에 있는 컴포넌트(현재 `Button`), 공개 semantic color·typography·spacing·radius token과 token runtime API(`@spectrabrain/eds/tokens`)를 제공합니다.
8
8
  - 패키지는 Tailwind preset·plugin·utility를 export하지 않습니다. Tailwind class는 소비처의 `eds sync`가 `src/styles/eds-tokens.css`에 생성한 것만 씁니다.
9
- - dark theme과 목록 밖 컴포넌트는 지원 범위 밖입니다. EDS component가 없거나 필요한 prop·variant·state·slot contract가 맞지 않으면 소비처에서 로컬 UI를 구현하고, 공개 token으로 색상·typography·spacing·radius를 지정합니다. 로컬 UI를 나중에 EDS로 옮긴다는 별도 기록은 남기지 않습니다.
9
+ - dark theme과 목록 밖 컴포넌트는 지원 범위 밖입니다. EDS component가 없거나 필요한 prop·variant·state·slot contract가 맞지 않으면 소비처에서 로컬 UI를 구현하고, 공개 token으로 색상·typography·spacing·radius를 지정합니다.
10
10
  - CSS 진입점 구성은 `CONSUMER_AGENT.md` 「font 정책」을 따릅니다.
11
11
 
12
12
  ## 사용 경계
package/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # @spectrabrain/eds
2
2
 
3
+ ## 0.3.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 4d5cc59: 소비처 조치: 없습니다.
8
+
9
+ Button의 neutral/outline은 기본·비활성 상태에서 neutral primary 배경과 tertiary neutral 테두리를 사용하고, hover·loading 상태에서 neutral primary hover 배경을 사용합니다.
10
+
11
+ - 556fdca: 소비처 조치: 없습니다.
12
+
13
+ 소비처 AI 공개 문서에서 내부 크기 제한, 반복 안내와 불필요한 패키지 구현 세부사항을 줄입니다.
14
+
15
+ ## 0.2.2
16
+
17
+ ### Patch Changes
18
+
19
+ - 64cc14d: 소비처 조치: 없습니다.
20
+
21
+ `ButtonIconName`과 `spec.json`의 `api.iconNames`에 eva-app에서 반복 사용 중인 canonical lucide 아이콘 32개를 추가합니다. 기존 `Button`의 동기 SSR 렌더링과 allowlist 밖 아이콘의 ReactElement 슬롯 계약은 유지합니다.
22
+
3
23
  ## 0.2.1
4
24
 
5
25
  ### Patch Changes
package/README.md CHANGED
@@ -11,7 +11,7 @@ npx @spectrabrain/eds init
11
11
 
12
12
  `init`은 소비처 `package.json`에 `sync:eds`·`eds:doctor` script와 doctor hook을 등록하고 첫 동기화를 실행합니다. EDS를 업데이트한 뒤에는 `npm run sync:eds`로 Tailwind root CSS의 EDS import, Tailwind token alias, `AGENTS.md` managed block을 갱신하고, `npm run eds:doctor`로 동기화 상태를 읽기 전용으로 점검합니다. pnpm·yarn·bun의 명령과 동작은 [CONSUMER_AGENT.md](CONSUMER_AGENT.md) 「첫 setup 절차」에 있습니다. `npx`로 실행할 때는 항상 `@spectrabrain/eds`를 적습니다. npm registry의 `eds`는 다른 패키지입니다.
13
13
 
14
- 소비처 AI와 자동화 도구는 설치 후 [QUICKSTART.md](QUICKSTART.md)를 먼저 읽습니다. 4 KB 이하의 유일한 필수 문서이며, 나머지 문서는 [AI_CONTEXT.json](AI_CONTEXT.json)의 조건에 해당할 때만 읽습니다.
14
+ 소비처 AI와 자동화 도구는 UI 작업 전에 [QUICKSTART.md](QUICKSTART.md)를 읽습니다. 나머지 문서는 [AI_CONTEXT.json](AI_CONTEXT.json)의 조건에 해당할 때만 읽습니다.
15
15
 
16
16
  첫 sync 전에는 소비처 `AGENTS.md`에 EDS managed block이 없습니다. 이 기간에 AI가 설치된 계약을 먼저 읽게 하려면 `CLAUDE.md` 또는 `AGENTS.md` 상단에 다음 한 줄을 넣습니다. pnpm·yarn·bun 저장소에서는 `npm run`을 그 runner로 바꿉니다. sync가 block을 넣은 뒤에는 이 줄을 지웁니다.
17
17
 
@@ -61,11 +61,9 @@ const token: SemanticTokenName = "color-fg-brand-contrast";
61
61
  const color = cssVar(token); // var(--eds-color-fg-brand-contrast)
62
62
  ~~~
63
63
 
64
- `SemanticTokenName`을 사용하면 승인된 token 이름을 TypeScript 자동완성으로 선택할 수 있습니다. `var(--eds-...)`의 직접 자동완성은 에디터의 CSS import 색인 방식에 따라 달라질 수 있습니다.
65
-
66
64
  `spacing-0.5`처럼 소수점이 있는 public 이름은 `cssVar("spacing-0.5")`로 전달합니다. 반환되는 CSS reference는 `var(--eds-spacing-0\.5)`처럼 점을 escape합니다. Tailwind에서는 `p-eds-spacing-0-5`, `rounded-eds-radius-1` 같은 CSS-safe alias를 사용합니다.
67
65
 
68
- `@spectrabrain/eds/tokens`의 타입은 `exports`의 `types`와 함께 `typesVersions`로도 `dist/tokens.d.ts`에 연결되어 있으므로, `moduleResolution`이 `node`(node10)인 소비처에서도 해석됩니다. `bundler`·`node16`에서는 `exports`가 우선합니다.
66
+ TypeScript의 `moduleResolution`이 `node`(node10), `node16` 또는 `bundler`인 소비처에서도 `@spectrabrain/eds/tokens`의 타입을 사용할 수 있습니다.
69
67
 
70
68
  역할에 맞는 exact token이 없을 때 가까운 공개 token을 고르는 순서는 [TOKEN_CONTEXT.md](TOKEN_CONTEXT.md)에 있습니다. 그래도 없으면 임의 색상값을 만들지 않고 디자인 시스템 담당자에게 요청합니다.
71
69
 
@@ -107,7 +105,7 @@ AI 바이브코딩으로 만든 Vite + React 프로토타입은 EDS를 설치한
107
105
  | `@spectrabrain/eds/fonts.css` | Pretendard font만 불러옵니다. EDS text style이 참조하는 family를 선언하므로 생략하지 않습니다. |
108
106
  | `@spectrabrain/eds/base.css` | `:where(html)`에 body1 font family를 지정합니다. `styles.css`에 포함되며 개별 구성에서는 선택입니다. |
109
107
  | `@spectrabrain/eds/tokens.json` | 도구 연동용 semantic token manifest입니다. |
110
- | `@spectrabrain/eds/QUICKSTART.md` | 소비처 AI의 유일한 필수 읽기 문서입니다. 4 KB 이하입니다. |
108
+ | `@spectrabrain/eds/QUICKSTART.md` | 소비처 AI의 필수 UI 작업 안내입니다. |
111
109
  | `@spectrabrain/eds/CONSUMER_AGENT.md` | 소비처 AI의 setup·sync·doctor 계약과 managed block 템플릿입니다. |
112
110
  | `@spectrabrain/eds/AI.md` | 소비처 AI의 공개 범위와 사용 경계입니다. |
113
111
  | `@spectrabrain/eds/CHANGELOG.md` | 버전별 변경 내용과 소비처 조치입니다. |
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "specVersion": 1,
3
- "packageVersion": "0.2.1",
3
+ "packageVersion": "0.3.0",
4
4
  "name": "Button",
5
5
  "purpose": "사용자가 즉시 실행할 수 있는 행동과 탐색을 표현하는 인터랙티브 요소입니다.",
6
6
  "usageContexts": [
@@ -167,28 +167,45 @@
167
167
  "iconNames": [
168
168
  "ArrowLeft",
169
169
  "ArrowRight",
170
+ "BellDot",
171
+ "Calendar",
172
+ "CalendarClock",
173
+ "Camera",
174
+ "CameraOff",
170
175
  "Check",
171
176
  "ChevronDown",
172
177
  "ChevronLeft",
173
178
  "ChevronRight",
174
179
  "ChevronUp",
180
+ "ChevronsLeft",
181
+ "ChevronsRight",
175
182
  "ChevronsUpDown",
176
183
  "Circle",
177
184
  "CircleAlert",
185
+ "CircleCheck",
178
186
  "CircleCheckBig",
179
187
  "CirclePause",
180
188
  "CirclePlay",
189
+ "CirclePlus",
181
190
  "CircleQuestionMark",
182
191
  "ClockAlert",
192
+ "ClockFading",
183
193
  "Copy",
194
+ "Crown",
195
+ "Ellipsis",
196
+ "ExternalLink",
184
197
  "Eye",
185
198
  "EyeOff",
186
199
  "FaceNeutral",
200
+ "File",
187
201
  "FileDown",
202
+ "FileInput",
188
203
  "FilePenLine",
189
204
  "FileX",
190
205
  "FolderClock",
206
+ "FolderUp",
191
207
  "Fullscreen",
208
+ "GripVertical",
192
209
  "ImageOff",
193
210
  "ImagePlus",
194
211
  "Info",
@@ -197,20 +214,35 @@
197
214
  "Layers2",
198
215
  "List",
199
216
  "LoaderCircle",
217
+ "Lock",
200
218
  "LockOpen",
219
+ "LogOut",
201
220
  "Mail",
202
221
  "Megaphone",
222
+ "MessageSquareDashed",
203
223
  "Minimize",
204
224
  "Minus",
205
225
  "Moon",
206
226
  "Paperclip",
227
+ "PenLine",
228
+ "Pencil",
207
229
  "Plus",
208
230
  "RotateCw",
209
231
  "Search",
232
+ "Settings",
233
+ "SquareDashed",
210
234
  "Sun",
235
+ "SunDim",
211
236
  "ThumbsUp",
212
237
  "Trash",
238
+ "TrendingUpDown",
239
+ "User",
240
+ "UserCog",
241
+ "UserPen",
242
+ "UserPlus",
243
+ "Users",
213
244
  "VectorSquare",
245
+ "Webhook",
214
246
  "X"
215
247
  ],
216
248
  "typeExports": [
@@ -106,17 +106,17 @@
106
106
  --eds-button-style-neutral-link-loading-progressCircle-trackColor: #6B7280;
107
107
  --eds-button-style-neutral-link-loading-root-backgroundColor: var(--eds-color-bg-transparent-hover);
108
108
  --eds-button-style-neutral-outline-disabled-label-color: var(--eds-color-fg-disabled);
109
- --eds-button-style-neutral-outline-disabled-root-backgroundColor: var(--eds-color-bg-transparent);
110
- --eds-button-style-neutral-outline-disabled-root-borderColor: var(--eds-color-stroke-neutral-secondary);
109
+ --eds-button-style-neutral-outline-disabled-root-backgroundColor: var(--eds-color-bg-neutral-primary);
110
+ --eds-button-style-neutral-outline-disabled-root-borderColor: var(--eds-color-stroke-neutral-tertiary);
111
111
  --eds-button-style-neutral-outline-disabled-root-borderWidth: 1px;
112
112
  --eds-button-style-neutral-outline-enabled-label-color: var(--eds-color-fg-neutral);
113
- --eds-button-style-neutral-outline-enabled-root-backgroundColor: var(--eds-color-bg-transparent);
114
- --eds-button-style-neutral-outline-enabled-root-borderColor: var(--eds-color-stroke-neutral-secondary);
113
+ --eds-button-style-neutral-outline-enabled-root-backgroundColor: var(--eds-color-bg-neutral-primary);
114
+ --eds-button-style-neutral-outline-enabled-root-borderColor: var(--eds-color-stroke-neutral-tertiary);
115
115
  --eds-button-style-neutral-outline-enabled-root-borderWidth: 1px;
116
- --eds-button-style-neutral-outline-hover-root-backgroundColor: var(--eds-color-bg-transparent-hover);
116
+ --eds-button-style-neutral-outline-hover-root-backgroundColor: var(--eds-color-bg-neutral-primary-hover);
117
117
  --eds-button-style-neutral-outline-loading-progressCircle-rangeColor: var(--eds-color-fg-neutral);
118
118
  --eds-button-style-neutral-outline-loading-progressCircle-trackColor: #D1D5DB;
119
- --eds-button-style-neutral-outline-loading-root-backgroundColor: var(--eds-color-bg-transparent-hover);
119
+ --eds-button-style-neutral-outline-loading-root-backgroundColor: var(--eds-color-bg-neutral-primary-hover);
120
120
  --eds-button-style-neutral-solid-disabled-label-color: var(--eds-color-fg-disabled);
121
121
  --eds-button-style-neutral-solid-disabled-root-backgroundColor: var(--eds-color-bg-disabled);
122
122
  --eds-button-style-neutral-solid-enabled-label-color: var(--eds-color-fg-neutral-inverted);
package/dist/index.d.mts CHANGED
@@ -2,7 +2,7 @@ export { SemanticToken, SemanticTokenCssReference, SemanticTokenCssVariable, Sem
2
2
  import { ButtonHTMLAttributes, ReactNode, ReactElement, Ref, AnchorHTMLAttributes } from 'react';
3
3
 
4
4
  /** 이름으로 지정할 수 있는 lucide 아이콘의 allowlist입니다. 목록 밖 아이콘은 icon·startIcon·endIcon에 ReactElement로 전달하고, 같은 아이콘이 두 화면 이상에서 반복되면 allowlist PR을 엽니다. */
5
- type ButtonIconName = "ArrowLeft" | "ArrowRight" | "Check" | "ChevronDown" | "ChevronLeft" | "ChevronRight" | "ChevronUp" | "ChevronsUpDown" | "Circle" | "CircleAlert" | "CircleCheckBig" | "CirclePause" | "CirclePlay" | "CircleQuestionMark" | "ClockAlert" | "Copy" | "Eye" | "EyeOff" | "FaceNeutral" | "FileDown" | "FilePenLine" | "FileX" | "FolderClock" | "Fullscreen" | "ImageOff" | "ImagePlus" | "Info" | "Key" | "Languages" | "Layers2" | "List" | "LoaderCircle" | "LockOpen" | "Mail" | "Megaphone" | "Minimize" | "Minus" | "Moon" | "Paperclip" | "Plus" | "RotateCw" | "Search" | "Sun" | "ThumbsUp" | "Trash" | "VectorSquare" | "X";
5
+ type ButtonIconName = "ArrowLeft" | "ArrowRight" | "BellDot" | "Calendar" | "CalendarClock" | "Camera" | "CameraOff" | "Check" | "ChevronDown" | "ChevronLeft" | "ChevronRight" | "ChevronUp" | "ChevronsLeft" | "ChevronsRight" | "ChevronsUpDown" | "Circle" | "CircleAlert" | "CircleCheck" | "CircleCheckBig" | "CirclePause" | "CirclePlay" | "CirclePlus" | "CircleQuestionMark" | "ClockAlert" | "ClockFading" | "Copy" | "Crown" | "Ellipsis" | "ExternalLink" | "Eye" | "EyeOff" | "FaceNeutral" | "File" | "FileDown" | "FileInput" | "FilePenLine" | "FileX" | "FolderClock" | "FolderUp" | "Fullscreen" | "GripVertical" | "ImageOff" | "ImagePlus" | "Info" | "Key" | "Languages" | "Layers2" | "List" | "LoaderCircle" | "Lock" | "LockOpen" | "LogOut" | "Mail" | "Megaphone" | "MessageSquareDashed" | "Minimize" | "Minus" | "Moon" | "Paperclip" | "PenLine" | "Pencil" | "Plus" | "RotateCw" | "Search" | "Settings" | "SquareDashed" | "Sun" | "SunDim" | "ThumbsUp" | "Trash" | "TrendingUpDown" | "User" | "UserCog" | "UserPen" | "UserPlus" | "Users" | "VectorSquare" | "Webhook" | "X";
6
6
 
7
7
  /** 버튼 크기입니다. */
8
8
  type ButtonSize = "xs" | "sm" | "md";
package/dist/index.d.ts CHANGED
@@ -2,7 +2,7 @@ export { SemanticToken, SemanticTokenCssReference, SemanticTokenCssVariable, Sem
2
2
  import { ButtonHTMLAttributes, ReactNode, ReactElement, Ref, AnchorHTMLAttributes } from 'react';
3
3
 
4
4
  /** 이름으로 지정할 수 있는 lucide 아이콘의 allowlist입니다. 목록 밖 아이콘은 icon·startIcon·endIcon에 ReactElement로 전달하고, 같은 아이콘이 두 화면 이상에서 반복되면 allowlist PR을 엽니다. */
5
- type ButtonIconName = "ArrowLeft" | "ArrowRight" | "Check" | "ChevronDown" | "ChevronLeft" | "ChevronRight" | "ChevronUp" | "ChevronsUpDown" | "Circle" | "CircleAlert" | "CircleCheckBig" | "CirclePause" | "CirclePlay" | "CircleQuestionMark" | "ClockAlert" | "Copy" | "Eye" | "EyeOff" | "FaceNeutral" | "FileDown" | "FilePenLine" | "FileX" | "FolderClock" | "Fullscreen" | "ImageOff" | "ImagePlus" | "Info" | "Key" | "Languages" | "Layers2" | "List" | "LoaderCircle" | "LockOpen" | "Mail" | "Megaphone" | "Minimize" | "Minus" | "Moon" | "Paperclip" | "Plus" | "RotateCw" | "Search" | "Sun" | "ThumbsUp" | "Trash" | "VectorSquare" | "X";
5
+ type ButtonIconName = "ArrowLeft" | "ArrowRight" | "BellDot" | "Calendar" | "CalendarClock" | "Camera" | "CameraOff" | "Check" | "ChevronDown" | "ChevronLeft" | "ChevronRight" | "ChevronUp" | "ChevronsLeft" | "ChevronsRight" | "ChevronsUpDown" | "Circle" | "CircleAlert" | "CircleCheck" | "CircleCheckBig" | "CirclePause" | "CirclePlay" | "CirclePlus" | "CircleQuestionMark" | "ClockAlert" | "ClockFading" | "Copy" | "Crown" | "Ellipsis" | "ExternalLink" | "Eye" | "EyeOff" | "FaceNeutral" | "File" | "FileDown" | "FileInput" | "FilePenLine" | "FileX" | "FolderClock" | "FolderUp" | "Fullscreen" | "GripVertical" | "ImageOff" | "ImagePlus" | "Info" | "Key" | "Languages" | "Layers2" | "List" | "LoaderCircle" | "Lock" | "LockOpen" | "LogOut" | "Mail" | "Megaphone" | "MessageSquareDashed" | "Minimize" | "Minus" | "Moon" | "Paperclip" | "PenLine" | "Pencil" | "Plus" | "RotateCw" | "Search" | "Settings" | "SquareDashed" | "Sun" | "SunDim" | "ThumbsUp" | "Trash" | "TrendingUpDown" | "User" | "UserCog" | "UserPen" | "UserPlus" | "Users" | "VectorSquare" | "Webhook" | "X";
6
6
 
7
7
  /** 버튼 크기입니다. */
8
8
  type ButtonSize = "xs" | "sm" | "md";
package/dist/index.js CHANGED
@@ -1611,28 +1611,45 @@ function cssVar(name) {
1611
1611
  var buttonIcons = {
1612
1612
  ArrowLeft: lucideReact.ArrowLeft,
1613
1613
  ArrowRight: lucideReact.ArrowRight,
1614
+ BellDot: lucideReact.BellDot,
1615
+ Calendar: lucideReact.Calendar,
1616
+ CalendarClock: lucideReact.CalendarClock,
1617
+ Camera: lucideReact.Camera,
1618
+ CameraOff: lucideReact.CameraOff,
1614
1619
  Check: lucideReact.Check,
1615
1620
  ChevronDown: lucideReact.ChevronDown,
1616
1621
  ChevronLeft: lucideReact.ChevronLeft,
1617
1622
  ChevronRight: lucideReact.ChevronRight,
1618
1623
  ChevronUp: lucideReact.ChevronUp,
1624
+ ChevronsLeft: lucideReact.ChevronsLeft,
1625
+ ChevronsRight: lucideReact.ChevronsRight,
1619
1626
  ChevronsUpDown: lucideReact.ChevronsUpDown,
1620
1627
  Circle: lucideReact.Circle,
1621
1628
  CircleAlert: lucideReact.CircleAlert,
1629
+ CircleCheck: lucideReact.CircleCheck,
1622
1630
  CircleCheckBig: lucideReact.CircleCheckBig,
1623
1631
  CirclePause: lucideReact.CirclePause,
1624
1632
  CirclePlay: lucideReact.CirclePlay,
1633
+ CirclePlus: lucideReact.CirclePlus,
1625
1634
  CircleQuestionMark: lucideReact.CircleQuestionMark,
1626
1635
  ClockAlert: lucideReact.ClockAlert,
1636
+ ClockFading: lucideReact.ClockFading,
1627
1637
  Copy: lucideReact.Copy,
1638
+ Crown: lucideReact.Crown,
1639
+ Ellipsis: lucideReact.Ellipsis,
1640
+ ExternalLink: lucideReact.ExternalLink,
1628
1641
  Eye: lucideReact.Eye,
1629
1642
  EyeOff: lucideReact.EyeOff,
1630
1643
  FaceNeutral: lucideReact.FaceNeutral,
1644
+ File: lucideReact.File,
1631
1645
  FileDown: lucideReact.FileDown,
1646
+ FileInput: lucideReact.FileInput,
1632
1647
  FilePenLine: lucideReact.FilePenLine,
1633
1648
  FileX: lucideReact.FileX,
1634
1649
  FolderClock: lucideReact.FolderClock,
1650
+ FolderUp: lucideReact.FolderUp,
1635
1651
  Fullscreen: lucideReact.Fullscreen,
1652
+ GripVertical: lucideReact.GripVertical,
1636
1653
  ImageOff: lucideReact.ImageOff,
1637
1654
  ImagePlus: lucideReact.ImagePlus,
1638
1655
  Info: lucideReact.Info,
@@ -1641,20 +1658,35 @@ var buttonIcons = {
1641
1658
  Layers2: lucideReact.Layers2,
1642
1659
  List: lucideReact.List,
1643
1660
  LoaderCircle: lucideReact.LoaderCircle,
1661
+ Lock: lucideReact.Lock,
1644
1662
  LockOpen: lucideReact.LockOpen,
1663
+ LogOut: lucideReact.LogOut,
1645
1664
  Mail: lucideReact.Mail,
1646
1665
  Megaphone: lucideReact.Megaphone,
1666
+ MessageSquareDashed: lucideReact.MessageSquareDashed,
1647
1667
  Minimize: lucideReact.Minimize,
1648
1668
  Minus: lucideReact.Minus,
1649
1669
  Moon: lucideReact.Moon,
1650
1670
  Paperclip: lucideReact.Paperclip,
1671
+ PenLine: lucideReact.PenLine,
1672
+ Pencil: lucideReact.Pencil,
1651
1673
  Plus: lucideReact.Plus,
1652
1674
  RotateCw: lucideReact.RotateCw,
1653
1675
  Search: lucideReact.Search,
1676
+ Settings: lucideReact.Settings,
1677
+ SquareDashed: lucideReact.SquareDashed,
1654
1678
  Sun: lucideReact.Sun,
1679
+ SunDim: lucideReact.SunDim,
1655
1680
  ThumbsUp: lucideReact.ThumbsUp,
1656
1681
  Trash: lucideReact.Trash,
1682
+ TrendingUpDown: lucideReact.TrendingUpDown,
1683
+ User: lucideReact.User,
1684
+ UserCog: lucideReact.UserCog,
1685
+ UserPen: lucideReact.UserPen,
1686
+ UserPlus: lucideReact.UserPlus,
1687
+ Users: lucideReact.Users,
1657
1688
  VectorSquare: lucideReact.VectorSquare,
1689
+ Webhook: lucideReact.Webhook,
1658
1690
  X: lucideReact.X
1659
1691
  };
1660
1692
 
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { forwardRef, isValidElement, Children, createElement } from 'react';
2
- import { X, VectorSquare, Trash, ThumbsUp, Sun, Search, RotateCw, Plus, Paperclip, Moon, Minus, Minimize, Megaphone, Mail, LockOpen, LoaderCircle, List, Layers2, Languages, Key, Info, ImagePlus, ImageOff, Fullscreen, FolderClock, FileX, FilePenLine, FileDown, FaceNeutral, EyeOff, Eye, Copy, ClockAlert, CircleQuestionMark, CirclePlay, CirclePause, CircleCheckBig, CircleAlert, Circle, ChevronsUpDown, ChevronUp, ChevronRight, ChevronLeft, ChevronDown, Check, ArrowRight, ArrowLeft } from 'lucide-react';
2
+ import { X, Webhook, VectorSquare, Users, UserPlus, UserPen, UserCog, User, TrendingUpDown, Trash, ThumbsUp, SunDim, Sun, SquareDashed, Settings, Search, RotateCw, Plus, Pencil, PenLine, Paperclip, Moon, Minus, Minimize, MessageSquareDashed, Megaphone, Mail, LogOut, LockOpen, Lock, LoaderCircle, List, Layers2, Languages, Key, Info, ImagePlus, ImageOff, GripVertical, Fullscreen, FolderUp, FolderClock, FileX, FilePenLine, FileInput, FileDown, File, FaceNeutral, EyeOff, Eye, ExternalLink, Ellipsis, Crown, Copy, ClockFading, ClockAlert, CircleQuestionMark, CirclePlus, CirclePlay, CirclePause, CircleCheckBig, CircleCheck, CircleAlert, Circle, ChevronsUpDown, ChevronsRight, ChevronsLeft, ChevronUp, ChevronRight, ChevronLeft, ChevronDown, Check, CameraOff, Camera, CalendarClock, Calendar, BellDot, ArrowRight, ArrowLeft } from 'lucide-react';
3
3
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
4
4
 
5
5
  // src/generated/tokens.ts
@@ -1609,28 +1609,45 @@ function cssVar(name) {
1609
1609
  var buttonIcons = {
1610
1610
  ArrowLeft,
1611
1611
  ArrowRight,
1612
+ BellDot,
1613
+ Calendar,
1614
+ CalendarClock,
1615
+ Camera,
1616
+ CameraOff,
1612
1617
  Check,
1613
1618
  ChevronDown,
1614
1619
  ChevronLeft,
1615
1620
  ChevronRight,
1616
1621
  ChevronUp,
1622
+ ChevronsLeft,
1623
+ ChevronsRight,
1617
1624
  ChevronsUpDown,
1618
1625
  Circle,
1619
1626
  CircleAlert,
1627
+ CircleCheck,
1620
1628
  CircleCheckBig,
1621
1629
  CirclePause,
1622
1630
  CirclePlay,
1631
+ CirclePlus,
1623
1632
  CircleQuestionMark,
1624
1633
  ClockAlert,
1634
+ ClockFading,
1625
1635
  Copy,
1636
+ Crown,
1637
+ Ellipsis,
1638
+ ExternalLink,
1626
1639
  Eye,
1627
1640
  EyeOff,
1628
1641
  FaceNeutral,
1642
+ File,
1629
1643
  FileDown,
1644
+ FileInput,
1630
1645
  FilePenLine,
1631
1646
  FileX,
1632
1647
  FolderClock,
1648
+ FolderUp,
1633
1649
  Fullscreen,
1650
+ GripVertical,
1634
1651
  ImageOff,
1635
1652
  ImagePlus,
1636
1653
  Info,
@@ -1639,20 +1656,35 @@ var buttonIcons = {
1639
1656
  Layers2,
1640
1657
  List,
1641
1658
  LoaderCircle,
1659
+ Lock,
1642
1660
  LockOpen,
1661
+ LogOut,
1643
1662
  Mail,
1644
1663
  Megaphone,
1664
+ MessageSquareDashed,
1645
1665
  Minimize,
1646
1666
  Minus,
1647
1667
  Moon,
1648
1668
  Paperclip,
1669
+ PenLine,
1670
+ Pencil,
1649
1671
  Plus,
1650
1672
  RotateCw,
1651
1673
  Search,
1674
+ Settings,
1675
+ SquareDashed,
1652
1676
  Sun,
1677
+ SunDim,
1653
1678
  ThumbsUp,
1654
1679
  Trash,
1680
+ TrendingUpDown,
1681
+ User,
1682
+ UserCog,
1683
+ UserPen,
1684
+ UserPlus,
1685
+ Users,
1655
1686
  VectorSquare,
1687
+ Webhook,
1656
1688
  X
1657
1689
  };
1658
1690
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spectrabrain/eds",
3
- "version": "0.2.1",
3
+ "version": "0.3.0",
4
4
  "description": "EVA services' shared React design system",
5
5
  "author": "SpectraBrain",
6
6
  "license": "UNLICENSED",
@@ -87,7 +87,7 @@
87
87
  "@vitest/browser-playwright": "4.1.6",
88
88
  "axe-core": "^4.11.0",
89
89
  "jsdom": "^26.1.0",
90
- "playwright": "1.63.0",
90
+ "playwright": "1.61.1",
91
91
  "postcss": "^8.5.6",
92
92
  "postcss-modules": "^6.0.1",
93
93
  "react": "^19.2.8",