stk-table-vue 0.6.17 → 0.7.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.
Files changed (40) hide show
  1. package/README.md +211 -213
  2. package/lib/src/StkTable/StkTable.vue.d.ts +43 -24
  3. package/lib/src/StkTable/components/TriangleIcon.vue.d.ts +2 -0
  4. package/lib/src/StkTable/const.d.ts +0 -1
  5. package/lib/src/StkTable/types/highlightDimOptions.d.ts +1 -5
  6. package/lib/src/StkTable/types/index.d.ts +27 -7
  7. package/lib/src/StkTable/useHighlight.d.ts +1 -1
  8. package/lib/src/StkTable/useRowExpand.d.ts +17 -0
  9. package/lib/src/StkTable/useTree.d.ts +20 -0
  10. package/lib/src/StkTable/utils/index.d.ts +3 -1
  11. package/lib/stk-table-vue.js +320 -167
  12. package/lib/style.css +29 -20
  13. package/package.json +74 -75
  14. package/src/StkTable/StkTable.vue +1557 -1550
  15. package/src/StkTable/components/DragHandle.vue +9 -9
  16. package/src/StkTable/components/SortIcon.vue +6 -6
  17. package/src/StkTable/components/TriangleIcon.vue +3 -0
  18. package/src/StkTable/const.ts +37 -37
  19. package/src/StkTable/index.ts +4 -4
  20. package/src/StkTable/style.less +567 -553
  21. package/src/StkTable/types/highlightDimOptions.ts +26 -26
  22. package/src/StkTable/types/index.ts +260 -239
  23. package/src/StkTable/useAutoResize.ts +91 -91
  24. package/src/StkTable/useColResize.ts +216 -216
  25. package/src/StkTable/useFixedCol.ts +148 -148
  26. package/src/StkTable/useFixedStyle.ts +75 -75
  27. package/src/StkTable/useGetFixedColPosition.ts +65 -65
  28. package/src/StkTable/useHighlight.ts +320 -318
  29. package/src/StkTable/useKeyboardArrowScroll.ts +112 -112
  30. package/src/StkTable/useRowExpand.ts +78 -0
  31. package/src/StkTable/useThDrag.ts +102 -102
  32. package/src/StkTable/useTrDrag.ts +118 -118
  33. package/src/StkTable/useTree.ts +158 -0
  34. package/src/StkTable/useVirtualScroll.ts +462 -462
  35. package/src/StkTable/utils/constRefUtils.ts +29 -29
  36. package/src/StkTable/utils/index.ts +224 -212
  37. package/src/StkTable/utils/useTriggerRef.ts +33 -33
  38. package/src/VirtualTree.vue +622 -622
  39. package/src/VirtualTreeSelect.vue +367 -367
  40. package/src/vite-env.d.ts +10 -10
package/lib/style.css CHANGED
@@ -30,6 +30,8 @@
30
30
  --sort-arrow-hover-color:#8f90b5;
31
31
  --sort-arrow-active-color:#1b63d9;
32
32
  --sort-arrow-active-sub-color:#cbcbe1;
33
+ --fold-icon-color:#757699;
34
+ --fold-icon-hover-color:#8f90b5;
33
35
  --col-resize-indicator-color:#87879c;
34
36
  --fixed-col-shadow-color-from:rgba(0, 0, 0, 0.1);
35
37
  --fixed-col-shadow-color-to:rgba(0, 0, 0, 0);
@@ -56,6 +58,8 @@
56
58
  --sort-arrow-hover-color:#727782;
57
59
  --sort-arrow-active-color:#d0d1d2;
58
60
  --sort-arrow-active-sub-color:#5d6064;
61
+ --fold-icon-color:#5d6064;
62
+ --fold-icon-hover-color:#727782;
59
63
  --col-resize-indicator-color:#5d6064;
60
64
  --fixed-col-shadow-color-from:rgba(135, 135, 156, 0.1);
61
65
  --fixed-col-shadow-color-to:rgba(135, 135, 156, 0);
@@ -267,26 +271,6 @@
267
271
  .stk-table .seq-column{
268
272
  text-align:center;
269
273
  }
270
- .stk-table .expand-cell{
271
- cursor:pointer;
272
- }
273
- .stk-table .expand-cell .expanded-cell-wrapper::before{
274
- content:'';
275
- display:inline-block;
276
- margin:0 2px;
277
- width:0;
278
- height:0;
279
- border-left:5px solid #757699;
280
- border-top:4px solid transparent;
281
- border-bottom:4px solid transparent;
282
- transition:transform 0.2s ease;
283
- }
284
- .stk-table .expand-cell .expanded-cell-wrapper > span{
285
- margin-left:var(--cell-padding-x);
286
- }
287
- .stk-table .expand-cell.expanded .table-cell-wrapper::before{
288
- transform:rotate(90deg);
289
- }
290
274
  .stk-table .drag-row-cell .table-cell-wrapper{
291
275
  display:inline-flex;
292
276
  align-items:center;
@@ -393,3 +377,28 @@
393
377
  .stk-table .stk-table-no-data.no-data-full{
394
378
  flex:1;
395
379
  }
380
+ .stk-table .expanded > .table-cell-wrapper .stk-fold-icon::before,
381
+ .stk-table .tree-expanded > .table-cell-wrapper .stk-fold-icon::before{
382
+ transform:rotate(90deg);
383
+ }
384
+ .stk-table .stk-fold-icon{
385
+ display:inline-flex;
386
+ width:16px;
387
+ height:16px;
388
+ cursor:pointer;
389
+ align-items:center;
390
+ }
391
+ .stk-table .stk-fold-icon::before{
392
+ content:'';
393
+ display:block;
394
+ margin:0 2px;
395
+ width:0;
396
+ height:0;
397
+ border-left:5px solid var(--fold-icon-color);
398
+ border-top:4px solid transparent;
399
+ border-bottom:4px solid transparent;
400
+ transition:transform 0.2s ease;
401
+ }
402
+ .stk-table .stk-fold-icon:hover::before{
403
+ border-left:5px solid var(--fold-icon-hover-color);
404
+ }
package/package.json CHANGED
@@ -1,76 +1,75 @@
1
- {
2
- "name": "stk-table-vue",
3
- "version": "0.6.17",
4
- "description": "Simple realtime virtual table for vue3 and vue2.7",
5
- "main": "./lib/stk-table-vue.js",
6
- "types": "./lib/src/StkTable/index.d.ts",
7
- "packageManager": "pnpm@10.7.0",
8
- "directories": {
9
- "test": "test"
10
- },
11
- "type": "module",
12
- "scripts": {
13
- "dev": "vite",
14
- "build": "vite build",
15
- "test": "vitest",
16
- "docs:dev": "vitepress dev docs-src",
17
- "docs:build": "vitepress build docs-src",
18
- "docs:preview": "vitepress preview docs-src",
19
- "docs:update": "cp -rf ./docs-src/.vitepress/dist/* ./docs"
20
- },
21
- "keywords": [
22
- "virtual table",
23
- "vue",
24
- "vue2",
25
- "vue3",
26
- "highlight",
27
- "sticky",
28
- "virtual",
29
- "table",
30
- "list"
31
- ],
32
- "files": [
33
- "lib",
34
- "src"
35
- ],
36
- "author": "japlus",
37
- "repository": {
38
- "type": "git",
39
- "url": "https://github.com/ja-plus/stk-table-vue"
40
- },
41
- "license": "MIT",
42
- "devDependencies": {
43
- "@types/d3-interpolate": "^3.0.4",
44
- "@types/mockjs": "^1.0.10",
45
- "@types/node": "^20.12.10",
46
- "@typescript-eslint/eslint-plugin": "^7.7.0",
47
- "@typescript-eslint/parser": "^7.7.0",
48
- "@vitejs/plugin-vue": "^5.1.4",
49
- "@vue/test-utils": "2.4.4",
50
- "eslint": "^8.57.0",
51
- "eslint-config-prettier": "^9.1.0",
52
- "eslint-plugin-html": "^8.1.0",
53
- "eslint-plugin-prettier": "^5.1.3",
54
- "eslint-plugin-vue": "^9.25.0",
55
- "happy-dom": "^12.10.3",
56
- "less": "^4.2.0",
57
- "mitt": "^3.0.1",
58
- "mockjs": "^1.1.0",
59
- "postcss": "^8.4.47",
60
- "postcss-discard-comments": "^6.0.2",
61
- "postcss-preset-env": "^9.5.11",
62
- "prettier": "^3.2.5",
63
- "typescript": "^5.4.5",
64
- "vite": "^5.4.10",
65
- "vite-plugin-dts": "3.9.1",
66
- "vitepress": "^1.5.0",
67
- "vitepress-demo-plugin": "^1.3.1",
68
- "vitepress-plugin-llms": "^1.1.3",
69
- "vitest": "^2.1.3",
70
- "vue": "^3.5.12",
71
- "vue-eslint-parser": "^9.4.2"
72
- },
73
- "dependencies": {
74
- "d3-interpolate": "^3.0.1"
75
- }
1
+ {
2
+ "name": "stk-table-vue",
3
+ "version": "0.7.1",
4
+ "description": "Simple realtime virtual table for vue3 and vue2.7",
5
+ "main": "./lib/stk-table-vue.js",
6
+ "types": "./lib/src/StkTable/index.d.ts",
7
+ "packageManager": "pnpm@10.7.0",
8
+ "directories": {
9
+ "test": "test"
10
+ },
11
+ "type": "module",
12
+ "scripts": {
13
+ "dev": "vite",
14
+ "build": "vite build",
15
+ "test": "vitest",
16
+ "docs:dev": "vitepress dev docs-src",
17
+ "docs:build": "vitepress build docs-src",
18
+ "docs:preview": "vitepress preview docs-src",
19
+ "docs:update": "cp -rf ./docs-src/.vitepress/dist/* ./docs"
20
+ },
21
+ "keywords": [
22
+ "virtual table",
23
+ "vue",
24
+ "vue2",
25
+ "vue3",
26
+ "highlight",
27
+ "sticky",
28
+ "virtual",
29
+ "table",
30
+ "list"
31
+ ],
32
+ "files": [
33
+ "lib",
34
+ "src"
35
+ ],
36
+ "author": "japlus",
37
+ "repository": {
38
+ "type": "git",
39
+ "url": "https://github.com/ja-plus/stk-table-vue"
40
+ },
41
+ "license": "MIT",
42
+ "devDependencies": {
43
+ "@types/mockjs": "^1.0.10",
44
+ "@types/node": "^20.12.10",
45
+ "@typescript-eslint/eslint-plugin": "^7.7.0",
46
+ "@typescript-eslint/parser": "^7.7.0",
47
+ "@vitejs/plugin-vue": "^5.1.4",
48
+ "@vue/test-utils": "2.4.4",
49
+ "eslint": "^8.57.0",
50
+ "eslint-config-prettier": "^9.1.0",
51
+ "eslint-plugin-html": "^8.1.0",
52
+ "eslint-plugin-prettier": "^5.1.3",
53
+ "eslint-plugin-vue": "^9.25.0",
54
+ "happy-dom": "^12.10.3",
55
+ "less": "^4.2.0",
56
+ "mitt": "^3.0.1",
57
+ "mockjs": "^1.1.0",
58
+ "postcss": "^8.4.47",
59
+ "postcss-discard-comments": "^6.0.2",
60
+ "postcss-preset-env": "^9.5.11",
61
+ "prettier": "^3.2.5",
62
+ "stk-table-vue": "^0.6.17",
63
+ "typescript": "^5.4.5",
64
+ "vite": "^5.4.10",
65
+ "vite-plugin-dts": "3.9.1",
66
+ "vitepress": "^1.5.0",
67
+ "vitepress-demo-plugin": "^1.3.1",
68
+ "vitepress-plugin-llms": "^1.1.3",
69
+ "vitest": "^2.1.3",
70
+ "vue": "^3.5.12",
71
+ "vue-eslint-parser": "^9.4.2"
72
+ },
73
+ "dependencies": {
74
+ }
76
75
  }