stk-table-vue 0.6.17 → 0.7.0

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 (39) 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 +26 -6
  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/stk-table-vue.js +313 -163
  11. package/lib/style.css +29 -20
  12. package/package.json +75 -75
  13. package/src/StkTable/StkTable.vue +1557 -1550
  14. package/src/StkTable/components/DragHandle.vue +9 -9
  15. package/src/StkTable/components/SortIcon.vue +6 -6
  16. package/src/StkTable/components/TriangleIcon.vue +3 -0
  17. package/src/StkTable/const.ts +37 -37
  18. package/src/StkTable/index.ts +4 -4
  19. package/src/StkTable/style.less +567 -553
  20. package/src/StkTable/types/highlightDimOptions.ts +26 -26
  21. package/src/StkTable/types/index.ts +260 -239
  22. package/src/StkTable/useAutoResize.ts +91 -91
  23. package/src/StkTable/useColResize.ts +216 -216
  24. package/src/StkTable/useFixedCol.ts +148 -148
  25. package/src/StkTable/useFixedStyle.ts +75 -75
  26. package/src/StkTable/useGetFixedColPosition.ts +65 -65
  27. package/src/StkTable/useHighlight.ts +320 -318
  28. package/src/StkTable/useKeyboardArrowScroll.ts +112 -112
  29. package/src/StkTable/useRowExpand.ts +78 -0
  30. package/src/StkTable/useThDrag.ts +102 -102
  31. package/src/StkTable/useTrDrag.ts +118 -118
  32. package/src/StkTable/useTree.ts +158 -0
  33. package/src/StkTable/useVirtualScroll.ts +462 -462
  34. package/src/StkTable/utils/constRefUtils.ts +29 -29
  35. package/src/StkTable/utils/index.ts +213 -212
  36. package/src/StkTable/utils/useTriggerRef.ts +33 -33
  37. package/src/VirtualTree.vue +622 -622
  38. package/src/VirtualTreeSelect.vue +367 -367
  39. 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,76 @@
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.0",
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
+ "stk-table-vue": "^0.6.17",
64
+ "typescript": "^5.4.5",
65
+ "vite": "^5.4.10",
66
+ "vite-plugin-dts": "3.9.1",
67
+ "vitepress": "^1.5.0",
68
+ "vitepress-demo-plugin": "^1.3.1",
69
+ "vitepress-plugin-llms": "^1.1.3",
70
+ "vitest": "^2.1.3",
71
+ "vue": "^3.5.12",
72
+ "vue-eslint-parser": "^9.4.2"
73
+ },
74
+ "dependencies": {
75
+ }
76
76
  }