@ncds/ui-admin 1.8.21 → 1.8.22-alpha.1

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.
@@ -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 };
@@ -12,12 +12,14 @@ type ModalProps = {
12
12
  children: ReactNode;
13
13
  closeOnBackdropClick?: boolean;
14
14
  closeOnEsc?: boolean;
15
+ showHeaderDivider?: boolean;
16
+ showActionsDivider?: boolean;
15
17
  className?: string;
16
18
  zIndex?: number;
17
19
  };
18
20
  declare const Modal: {
19
- ({ isOpen, onClose, children, size, closeOnBackdropClick, closeOnEsc, className, zIndex, ...restProps }: ModalProps): import("react").ReactPortal | null;
20
- Header({ children, onClose, featuredIcon, title, subtitle, align, showDivider, hideCloseButton, }: ModalHeaderProps): import("react/jsx-runtime").JSX.Element;
21
+ ({ isOpen, onClose, children, size, closeOnBackdropClick, closeOnEsc, showHeaderDivider, showActionsDivider, className, zIndex, ...restProps }: ModalProps): import("react").ReactPortal | null;
22
+ Header({ children, onClose, featuredIcon, title, subtitle, align, hideCloseButton, }: ModalHeaderProps): import("react/jsx-runtime").JSX.Element;
21
23
  Content({ children, className }: ModalContentProps): import("react/jsx-runtime").JSX.Element;
22
24
  /**
23
25
  * Modal.Actions - The actions area of the modal
@@ -47,7 +49,7 @@ declare const Modal: {
47
49
  * <Button size="sm" label="Confirm" onClick={handleConfirm} hierarchy="primary" />
48
50
  * </Modal.Actions>
49
51
  */
50
- Actions({ children, layout, showDivider, align, checkboxContent, className, }: ModalActionsProps): import("react/jsx-runtime").JSX.Element;
52
+ Actions({ children, layout, align, checkboxContent, className, }: ModalActionsProps): import("react/jsx-runtime").JSX.Element;
51
53
  };
52
54
  type ModalHeaderProps = {
53
55
  children?: ReactNode;
@@ -60,7 +62,6 @@ type ModalHeaderProps = {
60
62
  align?: ModalHeaderAlign;
61
63
  title?: string | ReactNode;
62
64
  subtitle?: string | ReactNode;
63
- showDivider?: boolean;
64
65
  hideCloseButton?: boolean;
65
66
  };
66
67
  type ModalContentProps = {
@@ -71,7 +72,6 @@ type ModalActionsProps = {
71
72
  className?: string;
72
73
  children: ReactNode;
73
74
  layout?: ModalActionsLayout;
74
- showDivider?: boolean;
75
75
  align?: ModalActionsAlign;
76
76
  checkboxContent?: ReactNode;
77
77
  };
@@ -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;
@@ -126,6 +123,7 @@
126
123
  spinner (200) — 부분 로딩 표시
127
124
  popover (500) — dropdown · select-dropdown 등 부유 popover
128
125
  (Portal 미사용, 부모 stacking context 안에서 동작)
126
+ 단 dropdown__menu 는 운영 영향으로 전역 적용 보류 — 현재 DataGrid ActionBar 한정
129
127
  dnd-preview (600) — table row DnD 드래그 오버레이 — popover 위, modal 아래
130
128
  modal (1000) — 작업 차단 다이얼로그. backdrop이 stacking context를 만들고
131
129
  자식인 본체는 자연 stacking으로 따라가므로 단일 토큰으로 충분
@@ -326,7 +324,7 @@ button {
326
324
  background-color: var(--primary-red-450);
327
325
  border: 1px solid var(--primary-red-500);
328
326
  color: var(--base-white);
329
- box-shadow: var(--shadow-xs-focused-4px-primary-100);
327
+ box-shadow: var(--shadow-sm-focused-4px-primary-100);
330
328
  }
331
329
  .ncua-btn--primary:disabled, .ncua-btn--primary.is-disable {
332
330
  background-color: var(--primary-red-100);
@@ -372,7 +370,7 @@ button {
372
370
  background-color: var(--base-white);
373
371
  border: 1px solid var(--gray-200);
374
372
  color: var(--gray-700);
375
- box-shadow: var(--shadow-xs-focused-4px-gray-100);
373
+ box-shadow: var(--shadow-sm-focused-4px-gray-100);
376
374
  }
377
375
  .ncua-btn--secondary-gray:disabled, .ncua-btn--secondary-gray.is-disable {
378
376
  background-color: var(--base-white);
@@ -958,7 +956,7 @@ button {
958
956
  }
959
957
  .ncua-checkbox-input.destructive :where(input):focus {
960
958
  border-color: var(--primary-red-600);
961
- box-shadow: var(--shadow-xs-focused-4px-error-100);
959
+ box-shadow: var(--shadow-sm-focused-4px-error-100);
962
960
  }
963
961
  .ncua-checkbox-input:hover {
964
962
  border-color: var(--gray-600);
@@ -1739,7 +1737,7 @@ button {
1739
1737
  border-color: var(--primary-red-600);
1740
1738
  }
1741
1739
  .ncua-input.destructive:where(:focus-within) .ncua-input__field {
1742
- box-shadow: var(--shadow-xs-focused-4px-error-100);
1740
+ box-shadow: var(--shadow-sm-focused-4px-error-100);
1743
1741
  }
1744
1742
  .ncua-input.is-disabled .ncua-input__content > :not(button) {
1745
1743
  background-color: var(--gray-50);
@@ -1929,7 +1927,7 @@ button {
1929
1927
  border-color: var(--primary-red-600);
1930
1928
  }
1931
1929
  .ncua-input--textarea.destructive textarea:focus {
1932
- box-shadow: var(--shadow-xs-focused-4px-error-100);
1930
+ box-shadow: var(--shadow-sm-focused-4px-error-100);
1933
1931
  }
1934
1932
 
1935
1933
  .ncua-input--textarea--xs textarea {
@@ -2077,6 +2075,20 @@ button {
2077
2075
  }
2078
2076
  }
2079
2077
 
2078
+ .ncua-modal--divider-header .ncua-modal__header {
2079
+ border-block-end: 1px solid var(--gray-100);
2080
+ }
2081
+ .ncua-modal--divider-header .ncua-modal__content {
2082
+ padding-block-start: 16px;
2083
+ }
2084
+
2085
+ .ncua-modal--divider-actions .ncua-modal__actions-wrapper {
2086
+ border-block-start: 1px solid var(--gray-100);
2087
+ }
2088
+ .ncua-modal--divider-actions .ncua-modal__content {
2089
+ padding-block-end: 16px;
2090
+ }
2091
+
2080
2092
  .ncua-modal__header {
2081
2093
  padding: 0px 20px 16px;
2082
2094
  border-bottom: none;
@@ -2085,12 +2097,6 @@ button {
2085
2097
  flex-direction: column;
2086
2098
  gap: 8px;
2087
2099
  }
2088
- .ncua-modal__header-divider {
2089
- width: 100%;
2090
- height: 1px;
2091
- background-color: var(--gray-100);
2092
- margin: 0 0 16px;
2093
- }
2094
2100
  .ncua-modal__header:has(.ncua-modal__close-button) {
2095
2101
  padding-right: 48px;
2096
2102
  }
@@ -2183,12 +2189,6 @@ button {
2183
2189
  display: flex;
2184
2190
  gap: 8px;
2185
2191
  }
2186
- .ncua-modal__actions-divider {
2187
- width: 100%;
2188
- height: 1px;
2189
- background-color: var(--gray-100);
2190
- margin: 16px 0 0;
2191
- }
2192
2192
  .ncua-modal__actions--vertical {
2193
2193
  flex-direction: column;
2194
2194
  }
@@ -2265,8 +2265,8 @@ button {
2265
2265
  }
2266
2266
  }
2267
2267
 
2268
- .ncua-modal:has(.ncua-postcode-search-modal) .ncua-modal__header-divider {
2269
- margin: 0;
2268
+ .ncua-modal--divider-header:has(.ncua-postcode-search-modal) .ncua-modal__content {
2269
+ padding-block-start: 0;
2270
2270
  }
2271
2271
 
2272
2272
  .ncua-modal__content:has(.ncua-postcode-search-modal) {
@@ -3183,7 +3183,7 @@ button {
3183
3183
  }
3184
3184
  .ncua-radio-input.destructive :where(input):focus {
3185
3185
  border-color: var(--primary-red-600);
3186
- box-shadow: var(--shadow-xs-focused-4px-error-100);
3186
+ box-shadow: var(--shadow-sm-focused-4px-error-100);
3187
3187
  }
3188
3188
 
3189
3189
  .ncua-radio-field {
@@ -3685,7 +3685,7 @@ button {
3685
3685
  border-color: var(--primary-red-600);
3686
3686
  }
3687
3687
  .ncua-select.destructive .ncua-select__content:focus-within {
3688
- box-shadow: var(--shadow-xs-focused-4px-error-100);
3688
+ box-shadow: var(--shadow-sm-focused-4px-error-100);
3689
3689
  }
3690
3690
  .ncua-select--xs .ncua-select__content {
3691
3691
  height: var(--select-height-xs);
@@ -4007,7 +4007,7 @@ button {
4007
4007
  border-color: var(--primary-red-600);
4008
4008
  }
4009
4009
  .ncua-selectbox.destructive .ncua-selectbox__content:focus {
4010
- box-shadow: var(--shadow-xs-focused-4px-error-100);
4010
+ box-shadow: var(--shadow-sm-focused-4px-error-100);
4011
4011
  }
4012
4012
  .ncua-selectbox--xs .ncua-selectbox__content {
4013
4013
  height: var(--select-height-xs);
@@ -5300,15 +5300,16 @@ button {
5300
5300
  justify-content: center;
5301
5301
  color: var(--pink-600);
5302
5302
  background-color: var(--pink-200);
5303
- border-radius: 5px;
5304
5303
  }
5305
5304
  .ncua-badge--new-badge-sm {
5306
5305
  width: 16px;
5307
5306
  height: 16px;
5307
+ border-radius: 3px;
5308
5308
  }
5309
5309
  .ncua-badge--new-badge-md {
5310
5310
  width: 20px;
5311
5311
  height: 20px;
5312
+ border-radius: 4px;
5312
5313
  }
5313
5314
 
5314
5315
  .ncua-badge-group {
@@ -6570,7 +6571,7 @@ button {
6570
6571
  bottom: 0;
6571
6572
  width: 3px;
6572
6573
  background: var(--base-black);
6573
- z-index: 1;
6574
+ z-index: var(--z-index-1);
6574
6575
  }
6575
6576
  .ncua-table__row--warning.ncua-table__row--selected:nth-child(n) {
6576
6577
  background: var(--orange-50);
@@ -6715,7 +6716,7 @@ button {
6715
6716
  .ncua-table--fixed-header .ncua-table__header-cell {
6716
6717
  position: sticky;
6717
6718
  top: 0;
6718
- z-index: 10;
6719
+ z-index: var(--z-index-sticky);
6719
6720
  padding: 0 var(--spacing-m);
6720
6721
  height: var(--ncua-table-header-height);
6721
6722
  }
@@ -7051,7 +7052,9 @@ button {
7051
7052
  padding: var(--spacing-s) 24px;
7052
7053
  background-color: var(--gray-50);
7053
7054
  position: relative;
7054
- z-index: var(--z-index-2);
7055
+ }
7056
+ .ncua-data-grid__action-bar .ncua-dropdown__menu {
7057
+ z-index: var(--z-index-popover);
7055
7058
  }
7056
7059
  .ncua-data-grid__action-bar:empty {
7057
7060
  padding: var(--spacing-xs) 0;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ncds/ui-admin",
3
- "version": "1.8.21",
3
+ "version": "1.8.22-alpha.1",
4
4
  "description": "nhn-commerce의 어드민 디자인 시스템입니다.",
5
5
  "scripts": {
6
6
  "barrel": "node barrel.js",