@ncds/ui-admin 1.8.9 → 1.8.12
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/dist/cjs/src/components/data-display/data-grid/DataGrid.js +3 -1
- package/dist/cjs/src/components/data-display/table/Table.js +326 -75
- package/dist/cjs/src/components/data-display/table/dnd-context.js +15 -0
- package/dist/cjs/src/components/data-display/table/dnd-preview.js +127 -0
- package/dist/cjs/src/components/index.js +11 -0
- package/dist/cjs/src/components/navigation/context-tab/ContextTab.js +233 -0
- package/dist/cjs/src/components/navigation/context-tab/index.js +16 -0
- package/dist/cjs/src/components/navigation/context-tab/useContextTabScroll.js +84 -0
- package/dist/esm/src/components/data-display/data-grid/DataGrid.js +3 -1
- package/dist/esm/src/components/data-display/table/Table.js +328 -77
- package/dist/esm/src/components/data-display/table/dnd-context.js +10 -0
- package/dist/esm/src/components/data-display/table/dnd-preview.js +121 -0
- package/dist/esm/src/components/index.js +1 -0
- package/dist/esm/src/components/navigation/context-tab/ContextTab.js +226 -0
- package/dist/esm/src/components/navigation/context-tab/index.js +1 -0
- package/dist/esm/src/components/navigation/context-tab/useContextTabScroll.js +77 -0
- package/dist/temp/src/components/data-display/data-grid/DataGrid.js +1 -1
- package/dist/temp/src/components/data-display/data-grid/DataGrid.types.d.ts +5 -0
- package/dist/temp/src/components/data-display/table/Table.d.ts +14 -4
- package/dist/temp/src/components/data-display/table/Table.js +172 -14
- package/dist/temp/src/components/data-display/table/dnd-context.d.ts +12 -0
- package/dist/temp/src/components/data-display/table/dnd-context.js +10 -0
- package/dist/temp/src/components/data-display/table/dnd-preview.d.ts +6 -0
- package/dist/temp/src/components/data-display/table/dnd-preview.js +120 -0
- package/dist/temp/src/components/data-display/table/types.d.ts +24 -1
- package/dist/temp/src/components/index.d.ts +1 -0
- package/dist/temp/src/components/index.js +1 -0
- package/dist/temp/src/components/navigation/context-tab/ContextTab.d.ts +18 -0
- package/dist/temp/src/components/navigation/context-tab/ContextTab.js +103 -0
- package/dist/temp/src/components/navigation/context-tab/index.d.ts +1 -0
- package/dist/temp/src/components/navigation/context-tab/index.js +1 -0
- package/dist/temp/src/components/navigation/context-tab/useContextTabScroll.d.ts +22 -0
- package/dist/temp/src/components/navigation/context-tab/useContextTabScroll.js +65 -0
- package/dist/types/src/components/data-display/data-grid/DataGrid.types.d.ts +5 -0
- package/dist/types/src/components/data-display/table/Table.d.ts +14 -4
- package/dist/types/src/components/data-display/table/dnd-context.d.ts +12 -0
- package/dist/types/src/components/data-display/table/dnd-preview.d.ts +6 -0
- package/dist/types/src/components/data-display/table/types.d.ts +24 -1
- package/dist/types/src/components/index.d.ts +1 -0
- package/dist/types/src/components/navigation/context-tab/ContextTab.d.ts +18 -0
- package/dist/types/src/components/navigation/context-tab/index.d.ts +1 -0
- package/dist/types/src/components/navigation/context-tab/useContextTabScroll.d.ts +22 -0
- package/dist/ui-admin/assets/styles/style.css +324 -2
- package/package.json +2 -2
|
@@ -126,6 +126,7 @@
|
|
|
126
126
|
spinner (200) — 부분 로딩 표시
|
|
127
127
|
popover (500) — dropdown · select-dropdown 등 부유 popover
|
|
128
128
|
(Portal 미사용, 부모 stacking context 안에서 동작)
|
|
129
|
+
dnd-preview (600) — table row DnD 드래그 오버레이 — popover 위, modal 아래
|
|
129
130
|
modal (1000) — 작업 차단 다이얼로그. backdrop이 stacking context를 만들고
|
|
130
131
|
자식인 본체는 자연 stacking으로 따라가므로 단일 토큰으로 충분
|
|
131
132
|
tooltip (2000) — 정보 보조. tag 자체 tooltip도 동일 토큰 사용
|
|
@@ -139,6 +140,7 @@
|
|
|
139
140
|
--z-index-sticky: 10;
|
|
140
141
|
--z-index-spinner: 200;
|
|
141
142
|
--z-index-popover: 500;
|
|
143
|
+
--z-index-dnd-preview: 600;
|
|
142
144
|
--z-index-modal: 1000;
|
|
143
145
|
--z-index-tooltip: 2000;
|
|
144
146
|
--z-index-notification: 2100;
|
|
@@ -5522,6 +5524,164 @@ button {
|
|
|
5522
5524
|
box-shadow: -2px 0 var(--gray-700);
|
|
5523
5525
|
}
|
|
5524
5526
|
|
|
5527
|
+
.ncua-context-tab {
|
|
5528
|
+
position: relative;
|
|
5529
|
+
display: flex;
|
|
5530
|
+
align-items: center;
|
|
5531
|
+
gap: 8px;
|
|
5532
|
+
padding-inline: 4px;
|
|
5533
|
+
border: 1px solid var(--gray-100);
|
|
5534
|
+
border-radius: 8px;
|
|
5535
|
+
background-color: var(--gray-100);
|
|
5536
|
+
}
|
|
5537
|
+
.ncua-context-tab__bar {
|
|
5538
|
+
position: relative;
|
|
5539
|
+
display: flex;
|
|
5540
|
+
flex: 1;
|
|
5541
|
+
gap: 8px;
|
|
5542
|
+
min-width: 0;
|
|
5543
|
+
padding-block: 4px;
|
|
5544
|
+
padding-inline-end: 4px;
|
|
5545
|
+
margin-inline-end: -4px;
|
|
5546
|
+
overflow-x: auto;
|
|
5547
|
+
scroll-snap-type: x mandatory;
|
|
5548
|
+
scrollbar-width: none;
|
|
5549
|
+
}
|
|
5550
|
+
.ncua-context-tab__bar::-webkit-scrollbar {
|
|
5551
|
+
display: none;
|
|
5552
|
+
}
|
|
5553
|
+
.ncua-context-tab__bar.is-fill .ncua-context-tab__tab {
|
|
5554
|
+
flex: 1 1 0;
|
|
5555
|
+
}
|
|
5556
|
+
.ncua-context-tab__tab {
|
|
5557
|
+
border: 0;
|
|
5558
|
+
padding: 0;
|
|
5559
|
+
background-color: transparent;
|
|
5560
|
+
cursor: pointer;
|
|
5561
|
+
display: flex;
|
|
5562
|
+
align-items: center;
|
|
5563
|
+
justify-content: center;
|
|
5564
|
+
gap: 4px;
|
|
5565
|
+
flex: 0 0 calc((100% - (var(--ncua-context-tab-visible, 7) - 1) * 8px) / var(--ncua-context-tab-visible, 7));
|
|
5566
|
+
min-width: 0;
|
|
5567
|
+
scroll-snap-align: start;
|
|
5568
|
+
padding: 5px 12px;
|
|
5569
|
+
border-radius: 6px;
|
|
5570
|
+
font-size: var(--font-size-sm);
|
|
5571
|
+
line-height: var(--line-heights-sm);
|
|
5572
|
+
font-weight: 700;
|
|
5573
|
+
color: var(--gray-400);
|
|
5574
|
+
white-space: nowrap;
|
|
5575
|
+
}
|
|
5576
|
+
.ncua-context-tab__tab-label {
|
|
5577
|
+
overflow: hidden;
|
|
5578
|
+
display: block;
|
|
5579
|
+
text-overflow: ellipsis;
|
|
5580
|
+
white-space: nowrap;
|
|
5581
|
+
word-wrap: break-word;
|
|
5582
|
+
min-width: 0;
|
|
5583
|
+
}
|
|
5584
|
+
.ncua-context-tab__tab:hover {
|
|
5585
|
+
color: var(--gray-500);
|
|
5586
|
+
}
|
|
5587
|
+
.ncua-context-tab__tab.is-active {
|
|
5588
|
+
color: var(--gray-700);
|
|
5589
|
+
}
|
|
5590
|
+
.ncua-context-tab__tab.is-disabled, .ncua-context-tab__tab:disabled {
|
|
5591
|
+
color: var(--gray-300);
|
|
5592
|
+
cursor: not-allowed;
|
|
5593
|
+
}
|
|
5594
|
+
.ncua-context-tab__tab.is-disabled:hover, .ncua-context-tab__tab:disabled:hover {
|
|
5595
|
+
background-color: transparent;
|
|
5596
|
+
box-shadow: none;
|
|
5597
|
+
}
|
|
5598
|
+
.ncua-context-tab__control {
|
|
5599
|
+
flex-shrink: 0;
|
|
5600
|
+
}
|
|
5601
|
+
.ncua-context-tab__control--menu.ncua-btn--xs, .ncua-context-tab__control--prev.ncua-btn--xs, .ncua-context-tab__control--next.ncua-btn--xs {
|
|
5602
|
+
width: 32px;
|
|
5603
|
+
height: 32px;
|
|
5604
|
+
transition: none;
|
|
5605
|
+
}
|
|
5606
|
+
.ncua-context-tab__tab:hover, .ncua-context-tab__tab.is-active, .ncua-context-tab__control--menu.ncua-btn--xs[aria-expanded]:hover, .ncua-context-tab__control--menu.ncua-btn--xs[aria-expanded=true], .ncua-context-tab__control--prev.ncua-btn--xs:not(.is-disable):hover, .ncua-context-tab__control--next.ncua-btn--xs:not(.is-disable):hover {
|
|
5607
|
+
background-color: var(--base-white);
|
|
5608
|
+
box-shadow: var(--shadow-sm);
|
|
5609
|
+
}
|
|
5610
|
+
.ncua-context-tab__nav {
|
|
5611
|
+
display: flex;
|
|
5612
|
+
align-items: center;
|
|
5613
|
+
gap: 4px;
|
|
5614
|
+
flex-shrink: 0;
|
|
5615
|
+
}
|
|
5616
|
+
.ncua-context-tab__panel {
|
|
5617
|
+
position: absolute;
|
|
5618
|
+
top: calc(100% + 4px);
|
|
5619
|
+
left: -1px;
|
|
5620
|
+
z-index: 10;
|
|
5621
|
+
display: flex;
|
|
5622
|
+
width: 100%;
|
|
5623
|
+
max-height: 188px;
|
|
5624
|
+
overflow-y: auto;
|
|
5625
|
+
border: 1px solid var(--gray-100);
|
|
5626
|
+
border-radius: 8px;
|
|
5627
|
+
background-color: var(--base-white);
|
|
5628
|
+
box-shadow: var(--shadow-lg);
|
|
5629
|
+
}
|
|
5630
|
+
.ncua-context-tab__panel-column {
|
|
5631
|
+
flex: 1 1 0;
|
|
5632
|
+
min-width: 0;
|
|
5633
|
+
padding: 4px 0;
|
|
5634
|
+
list-style: none;
|
|
5635
|
+
margin: 0;
|
|
5636
|
+
}
|
|
5637
|
+
.ncua-context-tab__panel-column li {
|
|
5638
|
+
padding: 2px 6px;
|
|
5639
|
+
}
|
|
5640
|
+
.ncua-context-tab__option {
|
|
5641
|
+
border: 0;
|
|
5642
|
+
padding: 0;
|
|
5643
|
+
background-color: transparent;
|
|
5644
|
+
cursor: pointer;
|
|
5645
|
+
display: flex;
|
|
5646
|
+
align-items: center;
|
|
5647
|
+
gap: 8px;
|
|
5648
|
+
width: 100%;
|
|
5649
|
+
min-width: 120px;
|
|
5650
|
+
padding: 7px 10px;
|
|
5651
|
+
border-radius: 6px;
|
|
5652
|
+
font-size: var(--font-size-xs);
|
|
5653
|
+
line-height: var(--line-heights-xs);
|
|
5654
|
+
font-weight: 500;
|
|
5655
|
+
color: var(--gray-500);
|
|
5656
|
+
text-align: left;
|
|
5657
|
+
}
|
|
5658
|
+
.ncua-context-tab__option-label {
|
|
5659
|
+
overflow: hidden;
|
|
5660
|
+
display: block;
|
|
5661
|
+
text-overflow: ellipsis;
|
|
5662
|
+
white-space: nowrap;
|
|
5663
|
+
word-wrap: break-word;
|
|
5664
|
+
min-width: 0;
|
|
5665
|
+
}
|
|
5666
|
+
.ncua-context-tab__option-check {
|
|
5667
|
+
flex-shrink: 0;
|
|
5668
|
+
margin-inline-start: auto;
|
|
5669
|
+
color: var(--gray-700);
|
|
5670
|
+
}
|
|
5671
|
+
.ncua-context-tab__option:hover {
|
|
5672
|
+
background-color: var(--gray-50);
|
|
5673
|
+
}
|
|
5674
|
+
.ncua-context-tab__option:disabled {
|
|
5675
|
+
color: var(--gray-300);
|
|
5676
|
+
cursor: not-allowed;
|
|
5677
|
+
}
|
|
5678
|
+
.ncua-context-tab__option:disabled:hover {
|
|
5679
|
+
background-color: transparent;
|
|
5680
|
+
}
|
|
5681
|
+
.ncua-context-tab .ncua-badge {
|
|
5682
|
+
flex-shrink: 0;
|
|
5683
|
+
}
|
|
5684
|
+
|
|
5525
5685
|
.ncua-progress-circle {
|
|
5526
5686
|
position: relative;
|
|
5527
5687
|
display: inline-flex;
|
|
@@ -6341,10 +6501,10 @@ button {
|
|
|
6341
6501
|
min-width: 240px;
|
|
6342
6502
|
max-width: 240px;
|
|
6343
6503
|
padding: 10px var(--spacing-m);
|
|
6344
|
-
font-size: var(--font-size-
|
|
6504
|
+
font-size: var(--font-size-xs);
|
|
6345
6505
|
font-weight: var(--font-weights-commerce-sans-1);
|
|
6346
6506
|
line-height: var(--line-heights-sm);
|
|
6347
|
-
color: var(--gray-
|
|
6507
|
+
color: var(--gray-500);
|
|
6348
6508
|
text-align: left;
|
|
6349
6509
|
background: var(--gray-50);
|
|
6350
6510
|
border-right: 1px solid var(--gray-100);
|
|
@@ -6417,6 +6577,168 @@ button {
|
|
|
6417
6577
|
margin-right: 4px;
|
|
6418
6578
|
}
|
|
6419
6579
|
|
|
6580
|
+
.ncua-table__drag-header-cell {
|
|
6581
|
+
width: 74px;
|
|
6582
|
+
min-width: 74px;
|
|
6583
|
+
max-width: 74px;
|
|
6584
|
+
padding: 0;
|
|
6585
|
+
border-right: 1px solid var(--gray-200);
|
|
6586
|
+
}
|
|
6587
|
+
|
|
6588
|
+
.ncua-table__drag-cell {
|
|
6589
|
+
width: 74px;
|
|
6590
|
+
min-width: 74px;
|
|
6591
|
+
max-width: 74px;
|
|
6592
|
+
padding: 0;
|
|
6593
|
+
border-right: 1px solid var(--gray-100);
|
|
6594
|
+
text-align: center;
|
|
6595
|
+
vertical-align: middle;
|
|
6596
|
+
line-height: 0;
|
|
6597
|
+
}
|
|
6598
|
+
|
|
6599
|
+
.ncua-table--draggable:not(.ncua-table--selectable) .ncua-table__drag-header-cell,
|
|
6600
|
+
.ncua-table--draggable:not(.ncua-table--selectable) .ncua-table__drag-cell {
|
|
6601
|
+
width: 56px;
|
|
6602
|
+
min-width: 56px;
|
|
6603
|
+
max-width: 56px;
|
|
6604
|
+
}
|
|
6605
|
+
|
|
6606
|
+
.ncua-table__drag-cell-inner {
|
|
6607
|
+
display: flex;
|
|
6608
|
+
width: 100%;
|
|
6609
|
+
align-items: center;
|
|
6610
|
+
justify-content: center;
|
|
6611
|
+
gap: 8px;
|
|
6612
|
+
padding: 0 8px;
|
|
6613
|
+
}
|
|
6614
|
+
|
|
6615
|
+
.ncua-table__drag-header-icon {
|
|
6616
|
+
display: inline-flex;
|
|
6617
|
+
align-items: center;
|
|
6618
|
+
justify-content: center;
|
|
6619
|
+
width: 16px;
|
|
6620
|
+
height: 16px;
|
|
6621
|
+
color: var(--gray-300);
|
|
6622
|
+
flex-shrink: 0;
|
|
6623
|
+
}
|
|
6624
|
+
|
|
6625
|
+
.ncua-table__drag-handle {
|
|
6626
|
+
display: inline-flex;
|
|
6627
|
+
align-items: center;
|
|
6628
|
+
justify-content: center;
|
|
6629
|
+
background: none;
|
|
6630
|
+
border: none;
|
|
6631
|
+
padding: 0;
|
|
6632
|
+
cursor: grab;
|
|
6633
|
+
color: var(--gray-300);
|
|
6634
|
+
width: 16px;
|
|
6635
|
+
height: 16px;
|
|
6636
|
+
flex-shrink: 0;
|
|
6637
|
+
}
|
|
6638
|
+
.ncua-table__drag-handle svg {
|
|
6639
|
+
width: 16px;
|
|
6640
|
+
height: 16px;
|
|
6641
|
+
flex-shrink: 0;
|
|
6642
|
+
}
|
|
6643
|
+
.ncua-table__drag-handle:hover {
|
|
6644
|
+
color: var(--gray-600);
|
|
6645
|
+
}
|
|
6646
|
+
.ncua-table__drag-handle:active {
|
|
6647
|
+
cursor: grabbing;
|
|
6648
|
+
}
|
|
6649
|
+
.ncua-table__drag-handle:disabled {
|
|
6650
|
+
cursor: not-allowed;
|
|
6651
|
+
color: var(--gray-200);
|
|
6652
|
+
pointer-events: none;
|
|
6653
|
+
}
|
|
6654
|
+
|
|
6655
|
+
.ncua-table__row.is-dragging {
|
|
6656
|
+
opacity: 1;
|
|
6657
|
+
}
|
|
6658
|
+
|
|
6659
|
+
.ncua-table__row--drag-over-top td:first-child,
|
|
6660
|
+
.ncua-table__row--drag-over-top th:first-child,
|
|
6661
|
+
.ncua-table__row--drag-over-bottom td:first-child,
|
|
6662
|
+
.ncua-table__row--drag-over-bottom th:first-child {
|
|
6663
|
+
position: relative;
|
|
6664
|
+
}
|
|
6665
|
+
|
|
6666
|
+
.ncua-table__row--drag-over-top td:first-child::after,
|
|
6667
|
+
.ncua-table__row--drag-over-top th:first-child::after {
|
|
6668
|
+
content: "";
|
|
6669
|
+
position: absolute;
|
|
6670
|
+
top: 0;
|
|
6671
|
+
left: 0;
|
|
6672
|
+
width: 10000px;
|
|
6673
|
+
height: 1px;
|
|
6674
|
+
background-color: var(--gray-600);
|
|
6675
|
+
pointer-events: none;
|
|
6676
|
+
z-index: 2;
|
|
6677
|
+
}
|
|
6678
|
+
|
|
6679
|
+
.ncua-table__row--drag-over-bottom td:first-child::after,
|
|
6680
|
+
.ncua-table__row--drag-over-bottom th:first-child::after {
|
|
6681
|
+
content: "";
|
|
6682
|
+
position: absolute;
|
|
6683
|
+
bottom: 0;
|
|
6684
|
+
left: 0;
|
|
6685
|
+
width: 10000px;
|
|
6686
|
+
height: 1px;
|
|
6687
|
+
background-color: var(--gray-600);
|
|
6688
|
+
pointer-events: none;
|
|
6689
|
+
z-index: 2;
|
|
6690
|
+
}
|
|
6691
|
+
|
|
6692
|
+
.ncua-table-dnd-preview {
|
|
6693
|
+
position: fixed;
|
|
6694
|
+
top: -9999px;
|
|
6695
|
+
left: -9999px;
|
|
6696
|
+
z-index: var(--z-index-dnd-preview);
|
|
6697
|
+
pointer-events: none;
|
|
6698
|
+
}
|
|
6699
|
+
|
|
6700
|
+
.ncua-table-dnd-preview__badge {
|
|
6701
|
+
position: absolute;
|
|
6702
|
+
top: 0;
|
|
6703
|
+
left: 0;
|
|
6704
|
+
width: 24px;
|
|
6705
|
+
height: 24px;
|
|
6706
|
+
border-radius: 50%;
|
|
6707
|
+
background: var(--gray-600);
|
|
6708
|
+
color: var(--base-white);
|
|
6709
|
+
font-size: 12px;
|
|
6710
|
+
font-weight: bold;
|
|
6711
|
+
display: flex;
|
|
6712
|
+
align-items: center;
|
|
6713
|
+
justify-content: center;
|
|
6714
|
+
z-index: 999;
|
|
6715
|
+
box-sizing: border-box;
|
|
6716
|
+
pointer-events: none;
|
|
6717
|
+
}
|
|
6718
|
+
|
|
6719
|
+
.ncua-table-dnd-preview__summary {
|
|
6720
|
+
position: absolute;
|
|
6721
|
+
isolation: isolate;
|
|
6722
|
+
z-index: 0;
|
|
6723
|
+
background: var(--gray-50);
|
|
6724
|
+
opacity: 0.5;
|
|
6725
|
+
box-shadow: var(--shadow-md);
|
|
6726
|
+
box-sizing: border-box;
|
|
6727
|
+
}
|
|
6728
|
+
|
|
6729
|
+
.ncua-table-dnd-preview__card {
|
|
6730
|
+
position: absolute;
|
|
6731
|
+
isolation: isolate;
|
|
6732
|
+
overflow: hidden;
|
|
6733
|
+
opacity: 1;
|
|
6734
|
+
box-shadow: var(--shadow-md);
|
|
6735
|
+
box-sizing: border-box;
|
|
6736
|
+
border-radius: 0;
|
|
6737
|
+
}
|
|
6738
|
+
.ncua-table-dnd-preview__card table {
|
|
6739
|
+
table-layout: fixed;
|
|
6740
|
+
}
|
|
6741
|
+
|
|
6420
6742
|
.ncua-data-grid {
|
|
6421
6743
|
display: flex;
|
|
6422
6744
|
flex-direction: column;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ncds/ui-admin",
|
|
3
|
-
"version": "1.8.
|
|
3
|
+
"version": "1.8.12",
|
|
4
4
|
"description": "nhn-commerce의 어드민 디자인 시스템입니다.",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"barrel": "node barrel.js",
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
"@atlaskit/pragmatic-drag-and-drop-auto-scroll": "2.1.0",
|
|
71
71
|
"@atlaskit/pragmatic-drag-and-drop-hitbox": "1.1.0",
|
|
72
72
|
"@atlaskit/pragmatic-drag-and-drop-react-accessibility": "1.1.4",
|
|
73
|
-
"@ncds/ui-admin-icon": "0.1.
|
|
73
|
+
"@ncds/ui-admin-icon": "0.1.12",
|
|
74
74
|
"classnames": "2.5.1",
|
|
75
75
|
"dompurify": "3.4.1",
|
|
76
76
|
"flatpickr": "4.6.13",
|