@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 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
- grd.addEventListener("load", () => {
90
- // Define custom provider helper functions used in data-expr
91
-
92
- grd.addProvider.({
93
- getCommonCode: (group) => exampleData.generateCommonCode(group),
94
- renderImage: (v) => `<img src="${v}" style="vertical-align:middle; width:58px; height:58px; border-radius:50%;" />`,
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
  {
@@ -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;