@ncds/ui-admin 1.8.26 → 1.8.28-alpha.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.
Files changed (24) hide show
  1. package/dist/cjs/src/components/feedback-and-status/badge/Badge.js +1 -1
  2. package/dist/cjs/src/components/layout/page-title/__tests__/pageTitleStyle.test.js +94 -0
  3. package/dist/cjs/src/components/navigation/pagination/Pagination.js +14 -14
  4. package/dist/cjs/src/components/navigation/pagination/__tests__/Pagination.test.js +17 -0
  5. package/dist/cjs/src/generated/scoped-css.js +1 -1
  6. package/dist/cjs/vitest.config.js +12 -1
  7. package/dist/esm/src/components/feedback-and-status/badge/Badge.js +1 -1
  8. package/dist/esm/src/components/layout/page-title/__tests__/pageTitleStyle.test.js +91 -0
  9. package/dist/esm/src/components/navigation/pagination/Pagination.js +14 -14
  10. package/dist/esm/src/components/navigation/pagination/__tests__/Pagination.test.js +17 -0
  11. package/dist/esm/src/generated/scoped-css.js +1 -1
  12. package/dist/esm/vitest.config.js +12 -1
  13. package/dist/temp/src/components/feedback-and-status/badge/Badge.d.ts +1 -1
  14. package/dist/temp/src/components/feedback-and-status/badge/Badge.js +1 -1
  15. package/dist/temp/src/components/layout/page-title/__tests__/pageTitleStyle.test.d.ts +1 -0
  16. package/dist/temp/src/components/layout/page-title/__tests__/pageTitleStyle.test.js +94 -0
  17. package/dist/temp/src/components/navigation/pagination/Pagination.js +14 -14
  18. package/dist/temp/src/components/navigation/pagination/__tests__/Pagination.test.js +7 -0
  19. package/dist/temp/src/generated/scoped-css.js +1 -1
  20. package/dist/temp/vitest.config.js +11 -0
  21. package/dist/types/src/components/feedback-and-status/badge/Badge.d.ts +1 -1
  22. package/dist/types/src/components/layout/page-title/__tests__/pageTitleStyle.test.d.ts +1 -0
  23. package/dist/ui-admin/assets/styles/style.css +15 -18
  24. package/package.json +1 -1
@@ -30,6 +30,17 @@ export default defineConfig({
30
30
  // 'text' 미포함 — 미커버 파일이 수백 개라 파일별 상세 출력이 CI 로그를 덮는다.
31
31
  // 'lcov' 대신 'lcovonly' — 'lcov' 는 HTML 리포트까지 생성한다.
32
32
  reporter: ['text-summary', ['lcovonly', { projectRoot: REPO_ROOT }]],
33
+ // 회귀 방지 하한선 — 실측에서 약 2%p 낮춘 값 (ui-admin-mcp 와 같은 여유폭).
34
+ // 실측 기준: 2026-10-12, 25cb4d96 — stmts 54.91 / branch 44.63 / funcs 55.20 / lines 55.80
35
+ // 최종 목표: 93 / 88 (lines 95 · branches 90). 테스트 보강 단계마다 실측 −2 로 인상한다.
36
+ // autoUpdate: false — 값은 실측을 확인하고 사람이 직접 올린다.
37
+ thresholds: {
38
+ autoUpdate: false,
39
+ statements: 53,
40
+ branches: 43,
41
+ functions: 53,
42
+ lines: 54,
43
+ },
33
44
  },
34
45
  },
35
46
  });
@@ -16,4 +16,4 @@ type BadgeProps = {
16
16
  };
17
17
  declare const Badge: ({ label, type, color, className, leadingIcon, trailingIcon, size, }: BadgeProps) => import("react/jsx-runtime").JSX.Element;
18
18
  export { Badge };
19
- export type { BadgeType, BadgeColor, BadgeSize, BadgeProps };
19
+ export type { BadgeColor, BadgeProps, BadgeSize, BadgeType };
@@ -67,9 +67,6 @@
67
67
  --shadow-xs-focused-3px-primary-100: 0px 1px 2px 0px #1018280d, 0px 0px 0px 3px #ffeaee;
68
68
  --shadow-xs-focused-3px-gray-100: 0px 1px 2px 0px #1018280d, 0px 0px 0px 3px #f2f4f7;
69
69
  --shadow-xs-focused-3px-error-100: 0px 1px 2px 0px #1018280d, 0px 0px 0px 3px #fee4e2;
70
- --shadow-xs-focused-4px-primary-100: 0px 1px 2px 0px #1018280d, 0px 0px 0px 4px #ffeaee;
71
- --shadow-xs-focused-4px-gray-100: 0px 1px 2px 0px #1018280d, 0px 0px 0px 4px #f2f4f7;
72
- --shadow-xs-focused-4px-error-100: 0px 1px 2px 0px #1018280d, 0px 0px 0px 4px #fee4e2;
73
70
  --shadow-sm: 0px 1px 3px 0px #1018281a, 0px 1px 2px 0px #1018280f;
74
71
  --shadow-sm-focused-4px-primary-100: 0px 1px 2px 0px #1018280d, 0px 0px 0px 4px #ffeaee;
75
72
  --shadow-sm-focused-4px-gray-100: 0px 1px 3px 0px #1018281a, 0px 1px 2px 0px #1018280f, 0px 0px 0px 4px #f2f4f7;
@@ -327,7 +324,7 @@ button {
327
324
  background-color: var(--primary-red-450);
328
325
  border: 1px solid var(--primary-red-500);
329
326
  color: var(--base-white);
330
- box-shadow: var(--shadow-xs-focused-4px-primary-100);
327
+ box-shadow: var(--shadow-sm-focused-4px-primary-100);
331
328
  }
332
329
  .ncua-btn--primary:disabled, .ncua-btn--primary.is-disable {
333
330
  background-color: var(--primary-red-100);
@@ -373,7 +370,7 @@ button {
373
370
  background-color: var(--base-white);
374
371
  border: 1px solid var(--gray-200);
375
372
  color: var(--gray-700);
376
- box-shadow: var(--shadow-xs-focused-4px-gray-100);
373
+ box-shadow: var(--shadow-sm-focused-4px-gray-100);
377
374
  }
378
375
  .ncua-btn--secondary-gray:disabled, .ncua-btn--secondary-gray.is-disable {
379
376
  background-color: var(--base-white);
@@ -959,7 +956,7 @@ button {
959
956
  }
960
957
  .ncua-checkbox-input.destructive :where(input):focus {
961
958
  border-color: var(--primary-red-600);
962
- box-shadow: var(--shadow-xs-focused-4px-error-100);
959
+ box-shadow: var(--shadow-sm-focused-4px-error-100);
963
960
  }
964
961
  .ncua-checkbox-input:hover {
965
962
  border-color: var(--gray-600);
@@ -1744,7 +1741,7 @@ button {
1744
1741
  border-color: var(--primary-red-600);
1745
1742
  }
1746
1743
  .ncua-input.destructive:where(:focus-within) .ncua-input__field {
1747
- box-shadow: var(--shadow-xs-focused-4px-error-100);
1744
+ box-shadow: var(--shadow-sm-focused-4px-error-100);
1748
1745
  }
1749
1746
  .ncua-input.is-disabled .ncua-input__content > :not(button) {
1750
1747
  background-color: var(--gray-50);
@@ -1939,7 +1936,7 @@ button {
1939
1936
  border-color: var(--primary-red-600);
1940
1937
  }
1941
1938
  .ncua-input--textarea.destructive textarea:focus {
1942
- box-shadow: var(--shadow-xs-focused-4px-error-100);
1939
+ box-shadow: var(--shadow-sm-focused-4px-error-100);
1943
1940
  }
1944
1941
 
1945
1942
  .ncua-input--textarea--xs textarea {
@@ -3210,7 +3207,7 @@ button {
3210
3207
  }
3211
3208
  .ncua-radio-input.destructive :where(input):focus {
3212
3209
  border-color: var(--primary-red-600);
3213
- box-shadow: var(--shadow-xs-focused-4px-error-100);
3210
+ box-shadow: var(--shadow-sm-focused-4px-error-100);
3214
3211
  }
3215
3212
 
3216
3213
  .ncua-radio-field {
@@ -3712,7 +3709,7 @@ button {
3712
3709
  border-color: var(--primary-red-600);
3713
3710
  }
3714
3711
  .ncua-select.destructive .ncua-select__content:focus-within {
3715
- box-shadow: var(--shadow-xs-focused-4px-error-100);
3712
+ box-shadow: var(--shadow-sm-focused-4px-error-100);
3716
3713
  }
3717
3714
  .ncua-select--xs .ncua-select__content {
3718
3715
  height: var(--select-height-xs);
@@ -4053,7 +4050,7 @@ button {
4053
4050
  border-color: var(--primary-red-600);
4054
4051
  }
4055
4052
  .ncua-selectbox.destructive .ncua-selectbox__content:focus {
4056
- box-shadow: var(--shadow-xs-focused-4px-error-100);
4053
+ box-shadow: var(--shadow-sm-focused-4px-error-100);
4057
4054
  }
4058
4055
  .ncua-selectbox--xs .ncua-selectbox__content {
4059
4056
  height: var(--select-height-xs);
@@ -5356,15 +5353,16 @@ button {
5356
5353
  justify-content: center;
5357
5354
  color: var(--pink-600);
5358
5355
  background-color: var(--pink-200);
5359
- border-radius: 5px;
5360
5356
  }
5361
5357
  .ncua-badge--new-badge-sm {
5362
5358
  width: 16px;
5363
5359
  height: 16px;
5360
+ border-radius: 3px;
5364
5361
  }
5365
5362
  .ncua-badge--new-badge-md {
5366
5363
  width: 20px;
5367
5364
  height: 20px;
5365
+ border-radius: 4px;
5368
5366
  }
5369
5367
 
5370
5368
  .ncua-badge-group {
@@ -6626,7 +6624,7 @@ button {
6626
6624
  bottom: 0;
6627
6625
  width: 3px;
6628
6626
  background: var(--base-black);
6629
- z-index: 1;
6627
+ z-index: var(--z-index-1);
6630
6628
  }
6631
6629
  .ncua-table__row--warning.ncua-table__row--selected:nth-child(n) {
6632
6630
  background: var(--orange-50);
@@ -6771,7 +6769,7 @@ button {
6771
6769
  .ncua-table--fixed-header .ncua-table__header-cell {
6772
6770
  position: sticky;
6773
6771
  top: 0;
6774
- z-index: 10;
6772
+ z-index: var(--z-index-sticky);
6775
6773
  padding: 0 var(--spacing-m);
6776
6774
  height: var(--ncua-table-header-height);
6777
6775
  }
@@ -7436,17 +7434,16 @@ button {
7436
7434
 
7437
7435
  .ncua-page-title {
7438
7436
  width: 100%;
7439
- background: var(--base-white);
7440
- box-shadow: var(--shadow-sm);
7441
7437
  }
7442
7438
  .ncua-page-title--fixed {
7443
7439
  position: sticky;
7444
7440
  top: 0;
7445
7441
  z-index: 999;
7446
- border-bottom: 1px solid var(--gray-300);
7442
+ background: var(--gray-50);
7443
+ border-bottom: 1px solid var(--gray-100);
7447
7444
  }
7448
7445
  .ncua-page-title__page-header {
7449
- padding: 24px 40px;
7446
+ padding: 32px 40px 0;
7450
7447
  }
7451
7448
  .ncua-page-title--fixed .ncua-page-title__page-header {
7452
7449
  padding: 12px 40px;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ncds/ui-admin",
3
- "version": "1.8.26",
3
+ "version": "1.8.28-alpha.0",
4
4
  "description": "nhn-commerce의 어드민 디자인 시스템입니다.",
5
5
  "scripts": {
6
6
  "barrel": "node barrel.js",