@ninebone/datagrid 0.0.15 → 0.0.21
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 +8 -8
- package/dist/css/nine-table.css +45 -33
- package/dist/nine-table.js +194 -155
- package/dist/nine-table.js.map +1 -1
- package/dist/nine-table.umd.js +12 -10
- package/dist/nine-table.umd.js.map +1 -1
- package/package.json +7 -2
package/README.md
CHANGED
|
@@ -40,6 +40,7 @@ npm install @ninebone/datagrid
|
|
|
40
40
|
|
|
41
41
|
<!-- HTML example -->
|
|
42
42
|
|
|
43
|
+
````html
|
|
43
44
|
<html>
|
|
44
45
|
<head>
|
|
45
46
|
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@ninebone/util@latest/dist/nine-util.umd.js"></script>
|
|
@@ -86,15 +87,14 @@ npm install @ninebone/datagrid
|
|
|
86
87
|
<script>
|
|
87
88
|
const grd = document.querySelector("nine-table");
|
|
88
89
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
renderBadge: (v1, v2) => `<span>Score: ${Number(v1) + Number(v2)}</span>`,
|
|
96
|
-
});
|
|
90
|
+
// Define custom provider helper functions used in data-expr
|
|
91
|
+
grd.provider.add({
|
|
92
|
+
getCommonCode: (group) => exampleData.generateCommonCode(group),
|
|
93
|
+
renderImage: (v) => `<img src="${v}" style="vertical-align:middle; width:58px; height:58px; border-radius:50%;" />`,
|
|
94
|
+
renderBadge: (v1, v2) => `<span>Score: ${Number(v1) + Number(v2)}</span>`,
|
|
95
|
+
});
|
|
97
96
|
|
|
97
|
+
grd.addEventListener("load", () => {
|
|
98
98
|
// Binding Data
|
|
99
99
|
grd.data.set([
|
|
100
100
|
{
|
package/dist/css/nine-table.css
CHANGED
|
@@ -903,6 +903,7 @@ nine-table-filter-panel.loading::before {
|
|
|
903
903
|
background: #fff;
|
|
904
904
|
}
|
|
905
905
|
|
|
906
|
+
|
|
906
907
|
:host([theme="simple"]) {
|
|
907
908
|
/* 1. 불필요한 패널 및 컴포넌트 숨기기 */
|
|
908
909
|
.ng-part-header, .ng-part-footer,
|
|
@@ -922,7 +923,6 @@ nine-table-filter-panel.loading::before {
|
|
|
922
923
|
height: 32px;
|
|
923
924
|
}
|
|
924
925
|
|
|
925
|
-
/* 2. 💡 [핵심] 스크롤바용 우측 16px 빈 공간을 제거하고 1열(1fr)로 꽉 채우기 */
|
|
926
926
|
nine-table-sheet {
|
|
927
927
|
border: none;
|
|
928
928
|
overflow: hidden;
|
|
@@ -935,38 +935,6 @@ nine-table-filter-panel.loading::before {
|
|
|
935
935
|
border: none;
|
|
936
936
|
padding: 0 8px;
|
|
937
937
|
}
|
|
938
|
-
|
|
939
|
-
/**
|
|
940
|
-
nine-table-sheet tr td {
|
|
941
|
-
text-align: left;
|
|
942
|
-
} */
|
|
943
|
-
|
|
944
|
-
/* 4. 브라우저 기본 네이티브 스크롤바를 콘텐츠 위에 자연스럽게 오버레이(Overlay) */
|
|
945
|
-
nine-table-sheet .ng-sheet-body {
|
|
946
|
-
overflow-y: auto;
|
|
947
|
-
overflow-x: hidden;
|
|
948
|
-
scrollbar-width: thin;
|
|
949
|
-
scrollbar-color: rgba(0, 0, 0, 0.2) transparent;
|
|
950
|
-
}
|
|
951
|
-
|
|
952
|
-
nine-table-sheet .ng-sheet-body::-webkit-scrollbar {
|
|
953
|
-
display: block;
|
|
954
|
-
width: 6px;
|
|
955
|
-
height: 6px;
|
|
956
|
-
}
|
|
957
|
-
|
|
958
|
-
nine-table-sheet .ng-sheet-body::-webkit-scrollbar-track {
|
|
959
|
-
background: transparent;
|
|
960
|
-
}
|
|
961
|
-
|
|
962
|
-
nine-table-sheet .ng-sheet-body::-webkit-scrollbar-thumb {
|
|
963
|
-
background: rgba(0, 0, 0, 0.15);
|
|
964
|
-
border-radius: 3px;
|
|
965
|
-
}
|
|
966
|
-
|
|
967
|
-
nine-table-sheet .ng-sheet-body::-webkit-scrollbar-thumb:hover {
|
|
968
|
-
background: rgba(0, 0, 0, 0.3);
|
|
969
|
-
}
|
|
970
938
|
}
|
|
971
939
|
|
|
972
940
|
/* 🎯 Toolbar 숨김 제어 */
|
|
@@ -977,6 +945,7 @@ nine-table-filter-panel.loading::before {
|
|
|
977
945
|
|
|
978
946
|
/* 🎯 Footer(StatusBar) 숨김 제어 (show-statusbar="false") */
|
|
979
947
|
:host([theme="simple"]) nine-table-sheets-footer,
|
|
948
|
+
:host([show-footer="false"]) nine-table-sheets-footer,
|
|
980
949
|
:host([show-statusbar="false"]) nine-table-sheets-footer {
|
|
981
950
|
display: none;
|
|
982
951
|
}
|
|
@@ -993,6 +962,49 @@ nine-table-filter-panel.loading::before {
|
|
|
993
962
|
}
|
|
994
963
|
}
|
|
995
964
|
|
|
965
|
+
|
|
966
|
+
:host([theme="simple"]),
|
|
967
|
+
:host([auto-height="true"]),
|
|
968
|
+
:host([scroll-bar="none"]) {
|
|
969
|
+
|
|
970
|
+
nine-table-vscrollbar
|
|
971
|
+
nine-table-hscrollbar,
|
|
972
|
+
nine-table-sheet .ng-scroll-edge {
|
|
973
|
+
display: none;
|
|
974
|
+
}
|
|
975
|
+
nine-table-sheet {
|
|
976
|
+
--hscrollbar-height: 0px;
|
|
977
|
+
--vscrollbar-width: 0px;
|
|
978
|
+
|
|
979
|
+
.ng-sheet-body {
|
|
980
|
+
overflow-y: auto;
|
|
981
|
+
overflow-x: auto;
|
|
982
|
+
scrollbar-width: thin;
|
|
983
|
+
scrollbar-color: rgba(0, 0, 0, 0.2) transparent;
|
|
984
|
+
}
|
|
985
|
+
|
|
986
|
+
.ng-sheet-body::-webkit-scrollbar {
|
|
987
|
+
display: block;
|
|
988
|
+
width: 6px;
|
|
989
|
+
height: 6px;
|
|
990
|
+
}
|
|
991
|
+
|
|
992
|
+
.ng-sheet-body::-webkit-scrollbar-track {
|
|
993
|
+
background: transparent;
|
|
994
|
+
}
|
|
995
|
+
|
|
996
|
+
.ng-sheet-body::-webkit-scrollbar-thumb {
|
|
997
|
+
background: rgba(0, 0, 0, 0.15);
|
|
998
|
+
border-radius: 3px;
|
|
999
|
+
}
|
|
1000
|
+
|
|
1001
|
+
.ng-sheet-body::-webkit-scrollbar-thumb:hover {
|
|
1002
|
+
background: rgba(0, 0, 0, 0.3);
|
|
1003
|
+
}
|
|
1004
|
+
}
|
|
1005
|
+
}
|
|
1006
|
+
|
|
1007
|
+
|
|
996
1008
|
:host(.loading) {
|
|
997
1009
|
.ng-loading-bar {
|
|
998
1010
|
display: block;
|