@krds.ui/vue 0.0.18 → 0.0.20

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.
@@ -18,6 +18,7 @@ export declare type AlertType = 'danger' | 'ok' | 'info';
18
18
 
19
19
  /**
20
20
  * 정렬 타입
21
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
21
22
  */
22
23
  export declare type Alignment = 'left' | 'center' | 'right' | 'justify';
23
24
 
@@ -75,8 +76,176 @@ export declare type ColorVariant = 'primary' | 'secondary' | 'success' | 'warnin
75
76
  */
76
77
  declare type ColorVariant_2 = 'primary' | 'secondary' | 'gray' | 'point' | 'danger' | 'warning' | 'success' | 'information' | 'disabled';
77
78
 
79
+ declare namespace components {
80
+ export {
81
+ KrdsButton,
82
+ KrdsButtonProps,
83
+ KrdsButtonEmits,
84
+ KrdsButtonGroup,
85
+ KrdsButtonGroupProps,
86
+ KrdsIcon,
87
+ KrdsIconProps,
88
+ KrdsLink,
89
+ KrdsLinkProps,
90
+ KrdsLinkEmits,
91
+ KrdsLinkSize,
92
+ KrdsInput,
93
+ KrdsInputProps,
94
+ KrdsInputEmits,
95
+ KrdsFormLabel,
96
+ KrdsFormLabelProps,
97
+ KrdsFormLabelEmits,
98
+ KrdsFormHint,
99
+ KrdsFormHintProps,
100
+ KrdsFormHintEmits,
101
+ KrdsFormGroup,
102
+ KrdsFormGroupProps,
103
+ KrdsDateInput,
104
+ KrdsDateInputProps,
105
+ KrdsDateInputEmits,
106
+ KrdsTextarea,
107
+ KrdsTextareaProps,
108
+ KrdsTextareaEmits,
109
+ KrdsSelect,
110
+ KrdsSelectProps,
111
+ KrdsSelectEmits,
112
+ SelectOption,
113
+ KrdsFileUpload,
114
+ KrdsFileUploadProps,
115
+ KrdsFileUploadEmits,
116
+ FileInfo,
117
+ KrdsBadge,
118
+ KrdsBadgeProps,
119
+ KrdsBadgeEmits,
120
+ KrdsTag,
121
+ KrdsTagProps,
122
+ KrdsTagEmits,
123
+ KrdsTagGroup,
124
+ KrdsTagGroupProps,
125
+ KrdsTagGroupSize,
126
+ KrdsMasthead,
127
+ KrdsMastheadProps,
128
+ KrdsMastheadEmits,
129
+ KrdsToggleSwitch,
130
+ KrdsToggleSwitchProps,
131
+ KrdsToggleSwitchEmits,
132
+ KrdsCheckArea,
133
+ KrdsCheckAreaProps,
134
+ KrdsCheckbox,
135
+ KrdsCheckboxProps,
136
+ KrdsCheckboxEmits,
137
+ KrdsRadio,
138
+ KrdsRadioProps,
139
+ KrdsRadioEmits,
140
+ KrdsSpinner,
141
+ KrdsStepIndicator,
142
+ KrdsStepIndicatorProps,
143
+ KrdsStepIndicatorEmits,
144
+ KrdsStep,
145
+ KrdsStepProps,
146
+ KrdsStepEmits,
147
+ KrdsSkipLink,
148
+ KrdsSkipLinkProps,
149
+ KrdsBreadcrumb,
150
+ KrdsBreadcrumbProps,
151
+ KrdsBreadcrumbEmits,
152
+ BreadcrumbItem,
153
+ KrdsInPageNavigation,
154
+ KrdsInPageNavigationProps,
155
+ KrdsInPageNavigationEmits,
156
+ NavigationItem,
157
+ KrdsPagination,
158
+ KrdsPaginationProps,
159
+ KrdsPaginationEmits,
160
+ KrdsPanel,
161
+ KrdsPanelProps,
162
+ KrdsPanelEmits,
163
+ KrdsContextualHelp,
164
+ KrdsContextualHelpProps,
165
+ KrdsCoachMark,
166
+ KrdsCoachMarkProps,
167
+ KrdsCoachMarkEmits,
168
+ KrdsTooltip,
169
+ KrdsTooltipProps,
170
+ KrdsLanguageSwitcher,
171
+ KrdsLanguageSwitcherProps,
172
+ KrdsLanguageSwitcherEmits,
173
+ DropdownPosition,
174
+ KrdsResize,
175
+ KrdsResizeEmits,
176
+ KrdsModal,
177
+ KrdsModalProps,
178
+ KrdsModalSize,
179
+ KrdsAccordionGroup,
180
+ KrdsAccordionGroupProps,
181
+ KrdsAccordionItem,
182
+ KrdsAccordionItemProps,
183
+ KrdsAccordionItemEmits,
184
+ KrdsTts,
185
+ KrdsTtsProps,
186
+ KrdsTtsEmits,
187
+ TtsSize,
188
+ TtsIcon,
189
+ KrdsTable,
190
+ KrdsTableProps,
191
+ KrdsTableEmits,
192
+ TableColumn,
193
+ TableRow,
194
+ KrdsHeader,
195
+ KrdsHeaderProps,
196
+ KrdsFooter,
197
+ KrdsFooterProps,
198
+ KrdsDisclosure,
199
+ KrdsDisclosureProps,
200
+ KrdsDisclosureEmits,
201
+ KrdsIdentifier,
202
+ KrdsIdentifierProps,
203
+ KrdsIdentifierEmits,
204
+ KrdsLayout,
205
+ KrdsLayoutProps,
206
+ KrdsLayoutEmits,
207
+ ScrollDetails,
208
+ LayoutSize,
209
+ KrdsSideNavigation,
210
+ KrdsSideNavigationProps,
211
+ KrdsSideNavigationEmits,
212
+ SideNavItem,
213
+ SideNavSubItem,
214
+ SideNavPopupItem,
215
+ KrdsStructuredList,
216
+ KrdsStructuredListProps,
217
+ KrdsTextList,
218
+ KrdsTextListProps,
219
+ KrdsCriticalAlerts,
220
+ KrdsCriticalAlertsProps,
221
+ KrdsCriticalAlertsEmits,
222
+ AlertType,
223
+ KrdsMainMenu,
224
+ KrdsMainMenuProps,
225
+ KrdsMainMenuEmits,
226
+ MainMenuItem,
227
+ MainMenuSubItem,
228
+ MainMenuLinkItem,
229
+ MainMenuDepth4Item,
230
+ MainMenuAnyItem,
231
+ MainMenuVariant,
232
+ MainMenuLayout,
233
+ KrdsCarousel,
234
+ KrdsCarouselProps,
235
+ KrdsCarouselEmits,
236
+ KrdsCarouselVariant,
237
+ KrdsCarouselPaginationType,
238
+ KrdsTabs,
239
+ KrdsTabsProps,
240
+ KrdsTabsEmits,
241
+ KrdsTabItem,
242
+ KrdsTabsVariant
243
+ }
244
+ }
245
+
78
246
  /**
79
247
  * 컴포넌트 슬롯 타입
248
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
80
249
  */
81
250
  export declare interface ComponentSlots {
82
251
  default?: () => unknown;
@@ -85,6 +254,7 @@ export declare interface ComponentSlots {
85
254
 
86
255
  /**
87
256
  * 컴포넌트 상태 타입
257
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
88
258
  */
89
259
  export declare type ComponentState = 'default' | 'hover' | 'active' | 'focus' | 'disabled';
90
260
 
@@ -92,11 +262,13 @@ declare type ContextualHelpPosition = 'top left' | 'top center' | 'top right' |
92
262
 
93
263
  /**
94
264
  * CSS 변수 타입
265
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
95
266
  */
96
267
  export declare type CSSCustomProperties = Record<`--${string}`, string | number>;
97
268
 
98
269
  /**
99
270
  * 방향 타입
271
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
100
272
  */
101
273
  export declare type Direction = 'horizontal' | 'vertical';
102
274
 
@@ -135,6 +307,7 @@ export declare interface FileInfo {
135
307
  *
136
308
  * @param prefix - ID 접두사
137
309
  * @returns 고유한 ID 문자열
310
+ * @deprecated 모듈 전역 카운터라 SSR에서 요청 간 값이 공유된다. Vue의 `useId()`를 사용. 다음 breaking 릴리스에서 제거 예정
138
311
  */
139
312
  export declare function generateId(prefix?: string): string;
140
313
 
@@ -143,11 +316,13 @@ export declare function generateId(prefix?: string): string;
143
316
  * 브라우저와 Node.js 환경에서 모두 작동합니다.
144
317
  *
145
318
  * @returns 7자리 랜덤 문자열
319
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
146
320
  */
147
321
  export declare function generateUid(): string;
148
322
 
149
323
  /**
150
324
  * 아이콘 속성
325
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
151
326
  */
152
327
  export declare interface IconProps {
153
328
  /** 아이콘 이름 */
@@ -160,6 +335,7 @@ export declare interface IconProps {
160
335
 
161
336
  /**
162
337
  * 입력 상태 타입
338
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
163
339
  */
164
340
  export declare type InputState = ComponentState | 'error' | 'success';
165
341
 
@@ -1104,6 +1280,7 @@ export declare interface KrdsCoachMarkProps extends BaseComponentProps {
1104
1280
 
1105
1281
  /**
1106
1282
  * KRDS 컴포넌트 타입
1283
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
1107
1284
  */
1108
1285
  export declare type KrdsComponent<Props = object, Slots = object, Emits = object> = Component & {
1109
1286
  __krdsComponent: true;
@@ -1112,6 +1289,9 @@ export declare type KrdsComponent<Props = object, Slots = object, Emits = object
1112
1289
  __krdsEmits: Emits;
1113
1290
  };
1114
1291
 
1292
+ /** 전역 등록 가능한 컴포넌트 이름 */
1293
+ export declare type KrdsComponentName = keyof typeof components;
1294
+
1115
1295
  export declare const KrdsContextualHelp: DefineComponent<ExtractPropTypes<{
1116
1296
  /** 툴팁 제목 */
1117
1297
  tooltipTitle: {
@@ -1147,9 +1327,9 @@ export declare const KrdsContextualHelp: DefineComponent<ExtractPropTypes<{
1147
1327
  default: string;
1148
1328
  };
1149
1329
  }>> & Readonly<{}>, {
1330
+ position: ContextualHelpPosition;
1150
1331
  tooltipTitle: string;
1151
1332
  helpIcon: boolean;
1152
- position: ContextualHelpPosition;
1153
1333
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
1154
1334
 
1155
1335
  /**
@@ -1300,6 +1480,11 @@ export declare const KrdsDateInput: DefineComponent<ExtractPropTypes<{
1300
1480
  type: NumberConstructor;
1301
1481
  default: undefined;
1302
1482
  };
1483
+ /** 달력을 body에 렌더 (overflow로 잘리는 컨테이너 안에서 사용. 모달 안에서는 쓰지 않음) */
1484
+ teleport: {
1485
+ type: BooleanConstructor;
1486
+ default: boolean;
1487
+ };
1303
1488
  /** CSS 클래스 */
1304
1489
  class: {
1305
1490
  type: StringConstructor;
@@ -1379,6 +1564,11 @@ export declare const KrdsDateInput: DefineComponent<ExtractPropTypes<{
1379
1564
  type: NumberConstructor;
1380
1565
  default: undefined;
1381
1566
  };
1567
+ /** 달력을 body에 렌더 (overflow로 잘리는 컨테이너 안에서 사용. 모달 안에서는 쓰지 않음) */
1568
+ teleport: {
1569
+ type: BooleanConstructor;
1570
+ default: boolean;
1571
+ };
1382
1572
  /** CSS 클래스 */
1383
1573
  class: {
1384
1574
  type: StringConstructor;
@@ -1410,6 +1600,7 @@ export declare const KrdsDateInput: DefineComponent<ExtractPropTypes<{
1410
1600
  holidays: string[];
1411
1601
  initialYear: number;
1412
1602
  initialMonth: number;
1603
+ teleport: boolean;
1413
1604
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
1414
1605
 
1415
1606
  /**
@@ -1447,6 +1638,8 @@ export declare interface KrdsDateInputProps extends BaseFormProps {
1447
1638
  initialYear?: number;
1448
1639
  /** 초기 표시 월 (기본: 현재 월) */
1449
1640
  initialMonth?: number;
1641
+ /** 달력을 body에 렌더 (overflow로 잘리는 컨테이너 안에서 사용. 모달 안에서는 쓰지 않음) */
1642
+ teleport?: boolean;
1450
1643
  }
1451
1644
 
1452
1645
  export declare const KrdsDisclosure: DefineComponent<ExtractPropTypes<{
@@ -3626,9 +3819,16 @@ export declare interface KrdsSideNavigationProps {
3626
3819
  *
3627
3820
  * @example
3628
3821
  * ```vue
3822
+ * <!-- 단일 링크 -->
3629
3823
  * <KrdsSkipLink href="#main-content">본문 바로가기</KrdsSkipLink>
3630
- * <KrdsSkipLink href="#breadcrumb">본문 바로가기</KrdsSkipLink>
3631
- * <KrdsSkipLink href="#gnb">메인메뉴 바로가기</KrdsSkipLink>
3824
+ *
3825
+ * <!-- 여러 링크: 컴포넌트를 나란히 두면 #krds-skip-link가 중복되므로 links 사용 -->
3826
+ * <KrdsSkipLink
3827
+ * :links="[
3828
+ * { href: '#main-content', label: '본문 바로가기' },
3829
+ * { href: '#gnb', label: '메인메뉴 바로가기' }
3830
+ * ]"
3831
+ * />
3632
3832
  * ```
3633
3833
  */
3634
3834
  export declare const KrdsSkipLink: DefineComponent<ExtractPropTypes<{
@@ -3638,9 +3838,22 @@ export declare const KrdsSkipLink: DefineComponent<ExtractPropTypes<{
3638
3838
  */
3639
3839
  href: {
3640
3840
  type: StringConstructor;
3641
- required: true;
3841
+ default: undefined;
3642
3842
  validator: (value: string) => boolean;
3643
3843
  };
3844
+ /**
3845
+ * 여러 건너뛰기 링크 (하나의 래퍼 안에 렌더링, 지정 시 href·기본 슬롯 대신 사용)
3846
+ */
3847
+ links: {
3848
+ type: PropType<{
3849
+ href: string;
3850
+ label: string;
3851
+ }[]>;
3852
+ default: undefined;
3853
+ validator: (value: {
3854
+ href: string;
3855
+ }[]) => boolean;
3856
+ };
3644
3857
  /**
3645
3858
  * 추가 CSS 클래스
3646
3859
  */
@@ -3662,9 +3875,22 @@ export declare const KrdsSkipLink: DefineComponent<ExtractPropTypes<{
3662
3875
  */
3663
3876
  href: {
3664
3877
  type: StringConstructor;
3665
- required: true;
3878
+ default: undefined;
3666
3879
  validator: (value: string) => boolean;
3667
3880
  };
3881
+ /**
3882
+ * 여러 건너뛰기 링크 (하나의 래퍼 안에 렌더링, 지정 시 href·기본 슬롯 대신 사용)
3883
+ */
3884
+ links: {
3885
+ type: PropType<{
3886
+ href: string;
3887
+ label: string;
3888
+ }[]>;
3889
+ default: undefined;
3890
+ validator: (value: {
3891
+ href: string;
3892
+ }[]) => boolean;
3893
+ };
3668
3894
  /**
3669
3895
  * 추가 CSS 클래스
3670
3896
  */
@@ -3681,15 +3907,25 @@ export declare const KrdsSkipLink: DefineComponent<ExtractPropTypes<{
3681
3907
  };
3682
3908
  }>> & Readonly<{}>, {
3683
3909
  class: string | unknown[] | Record<string, any>;
3910
+ href: string;
3684
3911
  id: string;
3912
+ links: {
3913
+ href: string;
3914
+ label: string;
3915
+ }[];
3685
3916
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
3686
3917
 
3687
3918
  /**
3688
3919
  * KRDS SkipLink 컴포넌트 속성
3689
3920
  */
3690
3921
  export declare interface KrdsSkipLinkProps extends BaseComponentProps {
3691
- /** 건너뛸 대상 요소의 ID */
3692
- href: string;
3922
+ /** 건너뛸 대상 요소의 ID (단일 링크, 기본 슬롯이 링크 텍스트) */
3923
+ href?: string;
3924
+ /** 여러 건너뛰기 링크 (하나의 래퍼 안에 렌더링, 지정 시 href·기본 슬롯 대신 사용) */
3925
+ links?: {
3926
+ href: string;
3927
+ label: string;
3928
+ }[];
3693
3929
  }
3694
3930
 
3695
3931
  export declare const KrdsSpinner: DefineComponent<ExtractPropTypes<{
@@ -4784,15 +5020,15 @@ export declare interface KrdsTtsProps extends BaseComponentProps {
4784
5020
  /**
4785
5021
  * KRDS Vue 플러그인
4786
5022
  */
4787
- declare const KrdsVue: Plugin_2;
5023
+ declare const KrdsVue: Plugin_2<[KrdsVueOptions?]>;
4788
5024
  export default KrdsVue;
4789
5025
 
4790
5026
  /**
4791
5027
  * KRDS Vue 플러그인 설정 옵션
4792
5028
  */
4793
5029
  export declare interface KrdsVueOptions {
4794
- /** 설치할 컴포넌트 목록 (비어있으면 전체 설치) */
4795
- components?: string[];
5030
+ /** 설치할 컴포넌트 목록 (비어있으면 전체 설치). 이름은 자동완성되며 임의 문자열도 허용 */
5031
+ components?: (KrdsComponentName | (string & {}))[];
4796
5032
  }
4797
5033
 
4798
5034
  declare type LanguageData = {
@@ -4811,6 +5047,7 @@ export declare interface LayoutSize {
4811
5047
 
4812
5048
  /**
4813
5049
  * 로딩 상태 속성
5050
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
4814
5051
  */
4815
5052
  export declare interface LoadingProps {
4816
5053
  /** 로딩 중 여부 */
@@ -4954,19 +5191,23 @@ export declare interface NavigationItem {
4954
5191
  /**
4955
5192
  * 유틸리티 타입들
4956
5193
  */
5194
+ /** @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정 */
4957
5195
  export declare type Optional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
4958
5196
 
4959
5197
  /**
4960
5198
  * 위치 타입
5199
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
4961
5200
  */
4962
5201
  export declare type Position = 'top' | 'bottom' | 'left' | 'right';
4963
5202
 
5203
+ /** @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정 */
4964
5204
  export declare type RequiredKeys<T> = {
4965
5205
  [K in keyof T]-?: object extends Pick<T, K> ? never : K;
4966
5206
  }[keyof T];
4967
5207
 
4968
5208
  /**
4969
5209
  * 반응형 값 타입
5210
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
4970
5211
  */
4971
5212
  export declare type ResponsiveValue<T> = T | {
4972
5213
  mobile?: T;
@@ -5102,17 +5343,3 @@ export declare type Variant = 'primary' | 'secondary' | 'tertiary';
5102
5343
  export declare const version: string;
5103
5344
 
5104
5345
  export { }
5105
-
5106
- /**
5107
- * KRDS Vue 디렉티브 타입 정의
5108
- */
5109
-
5110
- declare module '@vue/runtime-core' {
5111
- interface ComponentCustomProperties {
5112
- /**
5113
- * 스크린 리더 전용 텍스트 디렉티브
5114
- * 요소에 .sr-only 클래스를 추가하여 시각적으로는 숨기지만 스크린 리더에서는 읽을 수 있도록 합니다.
5115
- */
5116
- vSrOnly: never
5117
- }
5118
- }
package/global.d.ts ADDED
@@ -0,0 +1,22 @@
1
+ /**
2
+ * app.use(KrdsVue)로 전역 등록되는 컴포넌트·디렉티브·전역 속성 타입
3
+ *
4
+ * 사용: tsconfig.json의 compilerOptions.types에 "@krds.ui/vue/global" 추가
5
+ */
6
+ import type { Directive } from 'vue'
7
+ import type * as Krds from '@krds.ui/vue'
8
+
9
+ declare module 'vue' {
10
+ export interface GlobalComponents extends Pick<typeof Krds, Krds.KrdsComponentName> {}
11
+
12
+ export interface GlobalDirectives {
13
+ /** 스크린 리더 전용 텍스트 (.sr-only 클래스 추가) */
14
+ vSrOnly: Directive<HTMLElement, boolean | undefined>
15
+ }
16
+
17
+ export interface ComponentCustomProperties {
18
+ $krds: { version: string }
19
+ }
20
+ }
21
+
22
+ export {}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@krds.ui/vue",
3
- "version": "0.0.18",
3
+ "version": "0.0.20",
4
4
  "description": "KRDS Vue Design System - 한국 정부 디자인 시스템 Vue 컴포넌트 라이브러리",
5
5
  "keywords": [
6
6
  "krds",
@@ -32,6 +32,9 @@
32
32
  "types": "./dist/types/index.d.ts",
33
33
  "import": "./dist/krds-vue.es.js"
34
34
  },
35
+ "./global": {
36
+ "types": "./global.d.ts"
37
+ },
35
38
  "./dist/style.css": "./dist/style.css",
36
39
  "./style": "./dist/style.css",
37
40
  "./package.json": "./package.json"
@@ -40,43 +43,40 @@
40
43
  "**/*.css"
41
44
  ],
42
45
  "files": [
43
- "dist"
46
+ "dist",
47
+ "global.d.ts"
44
48
  ],
45
49
  "peerDependencies": {
46
50
  "vue": "^3.5.0"
47
51
  },
48
52
  "devDependencies": {
49
- "@eslint/js": "^10.0.1",
50
- "@microsoft/api-extractor": "^7.58.12",
51
- "@size-limit/file": "^14.0.0",
52
- "@storybook/addon-a11y": "^10.6.1",
53
- "@storybook/addon-docs": "^10.6.1",
54
- "@storybook/addon-vitest": "^10.6.1",
55
- "@storybook/vue3-vite": "^10.6.1",
56
- "@tsconfig/node24": "^24.0.4",
57
- "@types/node": "^26.2.0",
58
- "@typescript-eslint/parser": "^8.67.0",
59
- "@vitejs/plugin-vue": "^6.0.8",
60
- "@vitest/browser": "^4.1.10",
61
- "@vitest/browser-playwright": "^4.1.10",
62
- "@vitest/coverage-v8": "^4.1.10",
63
- "@vue/eslint-config-prettier": "^10.2.0",
64
- "@vue/eslint-config-typescript": "^14.9.0",
65
- "eslint": "^10.8.1",
66
- "eslint-plugin-vue": "^10.10.0",
67
- "playwright": "^1.62.1",
68
- "prettier": "^3.9.6",
69
- "sass": "^1.102.0",
70
- "size-limit": "^14.0.0",
53
+ "@microsoft/api-extractor": "^7.59.4",
54
+ "@size-limit/file": "^14.1.0",
55
+ "@size-limit/rolldown": "^14.1.0",
56
+ "@testing-library/jest-dom": "^7.0.1",
57
+ "@testing-library/user-event": "^14.6.7",
58
+ "@testing-library/vue": "^8.1.0",
59
+ "@tsconfig/node24": "^24.0.5",
60
+ "@types/node": "^26.6.4",
61
+ "@vitejs/plugin-vue": "^6.0.9",
62
+ "@vitest/browser": "^4.1.11",
63
+ "@vitest/browser-playwright": "^4.1.11",
64
+ "@vitest/coverage-v8": "^4.1.11",
65
+ "axe-core": "~4.13.0",
66
+ "oxfmt": "^0.71.0",
67
+ "oxlint": "^1.87.0",
68
+ "playwright": "^1.63.0",
69
+ "sass": "^1.105.1",
70
+ "size-limit": "^14.1.0",
71
71
  "source-map-explorer": "^2.5.3",
72
- "storybook": "^10.6.1",
73
72
  "typescript": "6.0.3",
74
- "vite": "^8.2.1",
75
- "vite-plugin-dts": "^5.0.3",
76
- "vitest": "^4.1.10",
77
- "vue": "^3.5.41",
78
- "vue-eslint-parser": "^10.4.1",
79
- "vue-tsc": "^3.3.9"
73
+ "typescript7": "npm:typescript@^7.0.2",
74
+ "vite": "^8.3.3",
75
+ "vite-plugin-dts": "^5.1.2",
76
+ "vitepress": "2.0.0-alpha.20",
77
+ "vitest": "^4.1.11",
78
+ "vue": "^3.5.43",
79
+ "vue-component-meta": "^3.3.12"
80
80
  },
81
81
  "publishConfig": {
82
82
  "access": "public",
@@ -89,25 +89,32 @@
89
89
  "size-limit": [
90
90
  {
91
91
  "path": "dist/krds-vue.es.js",
92
- "limit": "25 kB"
92
+ "limit": "25 kB",
93
+ "rolldown": false
93
94
  },
94
95
  {
95
96
  "path": "dist/style.css",
96
- "limit": "60 kB"
97
+ "limit": "60 kB",
98
+ "rolldown": false
99
+ },
100
+ {
101
+ "name": "tree-shaking: { KrdsButton }",
102
+ "path": "dist/krds-vue.es.js",
103
+ "import": "{ KrdsButton }",
104
+ "limit": "2 kB"
97
105
  }
98
106
  ],
99
107
  "scripts": {
100
- "dev": "vite",
101
108
  "build": "pnpm run type-check && pnpm run build:lib",
102
109
  "build:lib": "vite build",
103
- "preview": "vite preview",
104
110
  "test": "vitest",
105
111
  "test:coverage": "vitest --coverage",
106
- "type-check": "vue-tsc --noEmit",
107
- "lint": "eslint . --fix",
108
- "format": "prettier --write src/",
109
- "storybook": "storybook dev -p 6006",
110
- "build-storybook": "storybook build && node scripts/storybook-seo.mjs",
111
- "bundle-size": "size-limit"
112
+ "type-check": "node node_modules/typescript7/bin/tsc --noEmit",
113
+ "lint": "oxlint",
114
+ "format": "oxfmt",
115
+ "bundle-size": "size-limit",
116
+ "docs:dev": "vitepress dev docs",
117
+ "docs:build": "vitepress build docs",
118
+ "docs:preview": "vitepress preview docs"
112
119
  }
113
120
  }