@krds.ui/vue 0.0.19 → 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.
- package/README.md +11 -10
- package/dist/krds-vue.es.js +1309 -1234
- package/dist/krds-vue.es.js.map +1 -1
- package/dist/types/index.d.ts +78 -7
- package/package.json +38 -29
package/dist/types/index.d.ts
CHANGED
|
@@ -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
|
|
|
@@ -244,6 +245,7 @@ declare namespace components {
|
|
|
244
245
|
|
|
245
246
|
/**
|
|
246
247
|
* 컴포넌트 슬롯 타입
|
|
248
|
+
* @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
|
|
247
249
|
*/
|
|
248
250
|
export declare interface ComponentSlots {
|
|
249
251
|
default?: () => unknown;
|
|
@@ -252,6 +254,7 @@ export declare interface ComponentSlots {
|
|
|
252
254
|
|
|
253
255
|
/**
|
|
254
256
|
* 컴포넌트 상태 타입
|
|
257
|
+
* @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
|
|
255
258
|
*/
|
|
256
259
|
export declare type ComponentState = 'default' | 'hover' | 'active' | 'focus' | 'disabled';
|
|
257
260
|
|
|
@@ -259,11 +262,13 @@ declare type ContextualHelpPosition = 'top left' | 'top center' | 'top right' |
|
|
|
259
262
|
|
|
260
263
|
/**
|
|
261
264
|
* CSS 변수 타입
|
|
265
|
+
* @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
|
|
262
266
|
*/
|
|
263
267
|
export declare type CSSCustomProperties = Record<`--${string}`, string | number>;
|
|
264
268
|
|
|
265
269
|
/**
|
|
266
270
|
* 방향 타입
|
|
271
|
+
* @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
|
|
267
272
|
*/
|
|
268
273
|
export declare type Direction = 'horizontal' | 'vertical';
|
|
269
274
|
|
|
@@ -302,6 +307,7 @@ export declare interface FileInfo {
|
|
|
302
307
|
*
|
|
303
308
|
* @param prefix - ID 접두사
|
|
304
309
|
* @returns 고유한 ID 문자열
|
|
310
|
+
* @deprecated 모듈 전역 카운터라 SSR에서 요청 간 값이 공유된다. Vue의 `useId()`를 사용. 다음 breaking 릴리스에서 제거 예정
|
|
305
311
|
*/
|
|
306
312
|
export declare function generateId(prefix?: string): string;
|
|
307
313
|
|
|
@@ -310,11 +316,13 @@ export declare function generateId(prefix?: string): string;
|
|
|
310
316
|
* 브라우저와 Node.js 환경에서 모두 작동합니다.
|
|
311
317
|
*
|
|
312
318
|
* @returns 7자리 랜덤 문자열
|
|
319
|
+
* @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
|
|
313
320
|
*/
|
|
314
321
|
export declare function generateUid(): string;
|
|
315
322
|
|
|
316
323
|
/**
|
|
317
324
|
* 아이콘 속성
|
|
325
|
+
* @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
|
|
318
326
|
*/
|
|
319
327
|
export declare interface IconProps {
|
|
320
328
|
/** 아이콘 이름 */
|
|
@@ -327,6 +335,7 @@ export declare interface IconProps {
|
|
|
327
335
|
|
|
328
336
|
/**
|
|
329
337
|
* 입력 상태 타입
|
|
338
|
+
* @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
|
|
330
339
|
*/
|
|
331
340
|
export declare type InputState = ComponentState | 'error' | 'success';
|
|
332
341
|
|
|
@@ -1271,6 +1280,7 @@ export declare interface KrdsCoachMarkProps extends BaseComponentProps {
|
|
|
1271
1280
|
|
|
1272
1281
|
/**
|
|
1273
1282
|
* KRDS 컴포넌트 타입
|
|
1283
|
+
* @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
|
|
1274
1284
|
*/
|
|
1275
1285
|
export declare type KrdsComponent<Props = object, Slots = object, Emits = object> = Component & {
|
|
1276
1286
|
__krdsComponent: true;
|
|
@@ -1317,9 +1327,9 @@ export declare const KrdsContextualHelp: DefineComponent<ExtractPropTypes<{
|
|
|
1317
1327
|
default: string;
|
|
1318
1328
|
};
|
|
1319
1329
|
}>> & Readonly<{}>, {
|
|
1330
|
+
position: ContextualHelpPosition;
|
|
1320
1331
|
tooltipTitle: string;
|
|
1321
1332
|
helpIcon: boolean;
|
|
1322
|
-
position: ContextualHelpPosition;
|
|
1323
1333
|
}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
1324
1334
|
|
|
1325
1335
|
/**
|
|
@@ -1470,6 +1480,11 @@ export declare const KrdsDateInput: DefineComponent<ExtractPropTypes<{
|
|
|
1470
1480
|
type: NumberConstructor;
|
|
1471
1481
|
default: undefined;
|
|
1472
1482
|
};
|
|
1483
|
+
/** 달력을 body에 렌더 (overflow로 잘리는 컨테이너 안에서 사용. 모달 안에서는 쓰지 않음) */
|
|
1484
|
+
teleport: {
|
|
1485
|
+
type: BooleanConstructor;
|
|
1486
|
+
default: boolean;
|
|
1487
|
+
};
|
|
1473
1488
|
/** CSS 클래스 */
|
|
1474
1489
|
class: {
|
|
1475
1490
|
type: StringConstructor;
|
|
@@ -1549,6 +1564,11 @@ export declare const KrdsDateInput: DefineComponent<ExtractPropTypes<{
|
|
|
1549
1564
|
type: NumberConstructor;
|
|
1550
1565
|
default: undefined;
|
|
1551
1566
|
};
|
|
1567
|
+
/** 달력을 body에 렌더 (overflow로 잘리는 컨테이너 안에서 사용. 모달 안에서는 쓰지 않음) */
|
|
1568
|
+
teleport: {
|
|
1569
|
+
type: BooleanConstructor;
|
|
1570
|
+
default: boolean;
|
|
1571
|
+
};
|
|
1552
1572
|
/** CSS 클래스 */
|
|
1553
1573
|
class: {
|
|
1554
1574
|
type: StringConstructor;
|
|
@@ -1580,6 +1600,7 @@ export declare const KrdsDateInput: DefineComponent<ExtractPropTypes<{
|
|
|
1580
1600
|
holidays: string[];
|
|
1581
1601
|
initialYear: number;
|
|
1582
1602
|
initialMonth: number;
|
|
1603
|
+
teleport: boolean;
|
|
1583
1604
|
}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
1584
1605
|
|
|
1585
1606
|
/**
|
|
@@ -1617,6 +1638,8 @@ export declare interface KrdsDateInputProps extends BaseFormProps {
|
|
|
1617
1638
|
initialYear?: number;
|
|
1618
1639
|
/** 초기 표시 월 (기본: 현재 월) */
|
|
1619
1640
|
initialMonth?: number;
|
|
1641
|
+
/** 달력을 body에 렌더 (overflow로 잘리는 컨테이너 안에서 사용. 모달 안에서는 쓰지 않음) */
|
|
1642
|
+
teleport?: boolean;
|
|
1620
1643
|
}
|
|
1621
1644
|
|
|
1622
1645
|
export declare const KrdsDisclosure: DefineComponent<ExtractPropTypes<{
|
|
@@ -3796,9 +3819,16 @@ export declare interface KrdsSideNavigationProps {
|
|
|
3796
3819
|
*
|
|
3797
3820
|
* @example
|
|
3798
3821
|
* ```vue
|
|
3822
|
+
* <!-- 단일 링크 -->
|
|
3799
3823
|
* <KrdsSkipLink href="#main-content">본문 바로가기</KrdsSkipLink>
|
|
3800
|
-
*
|
|
3801
|
-
*
|
|
3824
|
+
*
|
|
3825
|
+
* <!-- 여러 링크: 컴포넌트를 나란히 두면 #krds-skip-link가 중복되므로 links 사용 -->
|
|
3826
|
+
* <KrdsSkipLink
|
|
3827
|
+
* :links="[
|
|
3828
|
+
* { href: '#main-content', label: '본문 바로가기' },
|
|
3829
|
+
* { href: '#gnb', label: '메인메뉴 바로가기' }
|
|
3830
|
+
* ]"
|
|
3831
|
+
* />
|
|
3802
3832
|
* ```
|
|
3803
3833
|
*/
|
|
3804
3834
|
export declare const KrdsSkipLink: DefineComponent<ExtractPropTypes<{
|
|
@@ -3808,9 +3838,22 @@ export declare const KrdsSkipLink: DefineComponent<ExtractPropTypes<{
|
|
|
3808
3838
|
*/
|
|
3809
3839
|
href: {
|
|
3810
3840
|
type: StringConstructor;
|
|
3811
|
-
|
|
3841
|
+
default: undefined;
|
|
3812
3842
|
validator: (value: string) => boolean;
|
|
3813
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
|
+
};
|
|
3814
3857
|
/**
|
|
3815
3858
|
* 추가 CSS 클래스
|
|
3816
3859
|
*/
|
|
@@ -3832,9 +3875,22 @@ export declare const KrdsSkipLink: DefineComponent<ExtractPropTypes<{
|
|
|
3832
3875
|
*/
|
|
3833
3876
|
href: {
|
|
3834
3877
|
type: StringConstructor;
|
|
3835
|
-
|
|
3878
|
+
default: undefined;
|
|
3836
3879
|
validator: (value: string) => boolean;
|
|
3837
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
|
+
};
|
|
3838
3894
|
/**
|
|
3839
3895
|
* 추가 CSS 클래스
|
|
3840
3896
|
*/
|
|
@@ -3851,15 +3907,25 @@ export declare const KrdsSkipLink: DefineComponent<ExtractPropTypes<{
|
|
|
3851
3907
|
};
|
|
3852
3908
|
}>> & Readonly<{}>, {
|
|
3853
3909
|
class: string | unknown[] | Record<string, any>;
|
|
3910
|
+
href: string;
|
|
3854
3911
|
id: string;
|
|
3912
|
+
links: {
|
|
3913
|
+
href: string;
|
|
3914
|
+
label: string;
|
|
3915
|
+
}[];
|
|
3855
3916
|
}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
3856
3917
|
|
|
3857
3918
|
/**
|
|
3858
3919
|
* KRDS SkipLink 컴포넌트 속성
|
|
3859
3920
|
*/
|
|
3860
3921
|
export declare interface KrdsSkipLinkProps extends BaseComponentProps {
|
|
3861
|
-
/** 건너뛸 대상 요소의 ID */
|
|
3862
|
-
href
|
|
3922
|
+
/** 건너뛸 대상 요소의 ID (단일 링크, 기본 슬롯이 링크 텍스트) */
|
|
3923
|
+
href?: string;
|
|
3924
|
+
/** 여러 건너뛰기 링크 (하나의 래퍼 안에 렌더링, 지정 시 href·기본 슬롯 대신 사용) */
|
|
3925
|
+
links?: {
|
|
3926
|
+
href: string;
|
|
3927
|
+
label: string;
|
|
3928
|
+
}[];
|
|
3863
3929
|
}
|
|
3864
3930
|
|
|
3865
3931
|
export declare const KrdsSpinner: DefineComponent<ExtractPropTypes<{
|
|
@@ -4981,6 +5047,7 @@ export declare interface LayoutSize {
|
|
|
4981
5047
|
|
|
4982
5048
|
/**
|
|
4983
5049
|
* 로딩 상태 속성
|
|
5050
|
+
* @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
|
|
4984
5051
|
*/
|
|
4985
5052
|
export declare interface LoadingProps {
|
|
4986
5053
|
/** 로딩 중 여부 */
|
|
@@ -5124,19 +5191,23 @@ export declare interface NavigationItem {
|
|
|
5124
5191
|
/**
|
|
5125
5192
|
* 유틸리티 타입들
|
|
5126
5193
|
*/
|
|
5194
|
+
/** @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정 */
|
|
5127
5195
|
export declare type Optional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
|
|
5128
5196
|
|
|
5129
5197
|
/**
|
|
5130
5198
|
* 위치 타입
|
|
5199
|
+
* @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
|
|
5131
5200
|
*/
|
|
5132
5201
|
export declare type Position = 'top' | 'bottom' | 'left' | 'right';
|
|
5133
5202
|
|
|
5203
|
+
/** @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정 */
|
|
5134
5204
|
export declare type RequiredKeys<T> = {
|
|
5135
5205
|
[K in keyof T]-?: object extends Pick<T, K> ? never : K;
|
|
5136
5206
|
}[keyof T];
|
|
5137
5207
|
|
|
5138
5208
|
/**
|
|
5139
5209
|
* 반응형 값 타입
|
|
5210
|
+
* @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
|
|
5140
5211
|
*/
|
|
5141
5212
|
export declare type ResponsiveValue<T> = T | {
|
|
5142
5213
|
mobile?: T;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@krds.ui/vue",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.20",
|
|
4
4
|
"description": "KRDS Vue Design System - 한국 정부 디자인 시스템 Vue 컴포넌트 라이브러리",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"krds",
|
|
@@ -50,31 +50,33 @@
|
|
|
50
50
|
"vue": "^3.5.0"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
|
-
"@microsoft/api-extractor": "^7.
|
|
54
|
-
"@size-limit/file": "^14.
|
|
55
|
-
"@
|
|
56
|
-
"@
|
|
57
|
-
"@
|
|
58
|
-
"@
|
|
59
|
-
"@tsconfig/node24": "^24.0.
|
|
60
|
-
"@types/node": "^26.
|
|
61
|
-
"@vitejs/plugin-vue": "^6.0.
|
|
62
|
-
"@vitest/browser": "^4.1.
|
|
63
|
-
"@vitest/browser-playwright": "^4.1.
|
|
64
|
-
"@vitest/coverage-v8": "^4.1.
|
|
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",
|
|
65
66
|
"oxfmt": "^0.71.0",
|
|
66
|
-
"oxlint": "^1.
|
|
67
|
-
"playwright": "^1.
|
|
68
|
-
"sass": "^1.
|
|
69
|
-
"size-limit": "^14.
|
|
67
|
+
"oxlint": "^1.87.0",
|
|
68
|
+
"playwright": "^1.63.0",
|
|
69
|
+
"sass": "^1.105.1",
|
|
70
|
+
"size-limit": "^14.1.0",
|
|
70
71
|
"source-map-explorer": "^2.5.3",
|
|
71
|
-
"storybook": "^10.6.1",
|
|
72
72
|
"typescript": "6.0.3",
|
|
73
73
|
"typescript7": "npm:typescript@^7.0.2",
|
|
74
|
-
"vite": "^8.
|
|
75
|
-
"vite-plugin-dts": "^5.
|
|
76
|
-
"
|
|
77
|
-
"
|
|
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"
|
|
78
80
|
},
|
|
79
81
|
"publishConfig": {
|
|
80
82
|
"access": "public",
|
|
@@ -87,25 +89,32 @@
|
|
|
87
89
|
"size-limit": [
|
|
88
90
|
{
|
|
89
91
|
"path": "dist/krds-vue.es.js",
|
|
90
|
-
"limit": "25 kB"
|
|
92
|
+
"limit": "25 kB",
|
|
93
|
+
"rolldown": false
|
|
91
94
|
},
|
|
92
95
|
{
|
|
93
96
|
"path": "dist/style.css",
|
|
94
|
-
"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"
|
|
95
105
|
}
|
|
96
106
|
],
|
|
97
107
|
"scripts": {
|
|
98
|
-
"dev": "vite",
|
|
99
108
|
"build": "pnpm run type-check && pnpm run build:lib",
|
|
100
109
|
"build:lib": "vite build",
|
|
101
|
-
"preview": "vite preview",
|
|
102
110
|
"test": "vitest",
|
|
103
111
|
"test:coverage": "vitest --coverage",
|
|
104
112
|
"type-check": "node node_modules/typescript7/bin/tsc --noEmit",
|
|
105
113
|
"lint": "oxlint",
|
|
106
114
|
"format": "oxfmt",
|
|
107
|
-
"
|
|
108
|
-
"
|
|
109
|
-
"
|
|
115
|
+
"bundle-size": "size-limit",
|
|
116
|
+
"docs:dev": "vitepress dev docs",
|
|
117
|
+
"docs:build": "vitepress build docs",
|
|
118
|
+
"docs:preview": "vitepress preview docs"
|
|
110
119
|
}
|
|
111
120
|
}
|