@sdata/web-vue 3.2.1 → 3.3.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 (70) hide show
  1. package/README.md +2 -2
  2. package/dist/sd.css +89 -9
  3. package/dist/sd.min.css +1 -1
  4. package/es/_components/select-view/style/index.css +4 -2
  5. package/es/_components/virtual-list-v2/hooks/use-size.d.ts +17 -0
  6. package/es/_components/virtual-list-v2/hooks/use-size.js +95 -0
  7. package/es/_components/virtual-list-v2/index.d.ts +2 -0
  8. package/es/_components/virtual-list-v2/index.js +5 -0
  9. package/es/_components/virtual-list-v2/interface.d.ts +44 -0
  10. package/es/_components/virtual-list-v2/virtual-list-item.d.ts +22 -0
  11. package/es/_components/virtual-list-v2/virtual-list-item.js +37 -0
  12. package/es/_components/virtual-list-v2/virtual-list.js +47 -0
  13. package/es/_components/virtual-list-v2/virtual-list.vue.d.ts +749 -0
  14. package/es/_components/virtual-list-v2/virtual-list.vue_vue_type_script_lang.js +179 -0
  15. package/es/_hooks/use-config-provider-prop.d.ts +1 -1
  16. package/es/_virtual/_plugin-vue_export-helper.js +8 -0
  17. package/es/color-picker/hooks/use-control-block.js +4 -1
  18. package/es/components.d.ts +1 -0
  19. package/es/config-provider/config-provider.vue.d.ts +7 -1
  20. package/es/config-provider/config-provider.vue_vue_type_script_setup_true_lang.js +7 -1
  21. package/es/config-provider/context.d.ts +14 -0
  22. package/es/config-provider/index.d.ts +9 -0
  23. package/es/index.css +89 -9
  24. package/es/index.d.ts +2 -0
  25. package/es/index.js +2 -1
  26. package/es/index.scss +1 -0
  27. package/es/input-tag/style/index.css +4 -2
  28. package/es/input-tag/style/input-tag.scss +29 -7
  29. package/es/message/message.vue_vue_type_script_setup_true_lang.js +1 -1
  30. package/es/pagination/pagination.js +101 -19
  31. package/es/sd-vue.js +2 -0
  32. package/es/table/context.d.ts +1 -1
  33. package/es/table/hooks/use-column-resize.d.ts +3 -2
  34. package/es/table/hooks/use-column-resize.js +21 -48
  35. package/es/table/hooks/use-drag.d.ts +1 -3
  36. package/es/table/hooks/use-drag.js +2 -18
  37. package/es/table/index.d.ts +21 -36
  38. package/es/table/style/index.css +12 -5
  39. package/es/table/style/index.scss +16 -6
  40. package/es/table/table-operation-td.js +15 -12
  41. package/es/table/table-operation-th.js +2 -2
  42. package/es/table/table-tbody.js +3 -1
  43. package/es/table/table-td.js +3 -4
  44. package/es/table/table-th.js +24 -40
  45. package/es/table/table-thead.js +3 -1
  46. package/es/table/table.d.ts +13 -19
  47. package/es/table/table.js +205 -424
  48. package/es/table/utils.d.ts +2 -0
  49. package/es/table/utils.js +11 -1
  50. package/es/tag/index.d.ts +3 -3
  51. package/es/tag/tag.vue.d.ts +2 -2
  52. package/es/tag/tag.vue_vue_type_script_setup_true_lang.js +16 -5
  53. package/es/toolbar/index.d.ts +72 -0
  54. package/es/toolbar/index.js +10 -0
  55. package/es/toolbar/style/css.js +2 -0
  56. package/es/toolbar/style/index.css +85 -0
  57. package/es/toolbar/style/index.d.ts +2 -0
  58. package/es/toolbar/style/index.js +2 -0
  59. package/es/toolbar/style/index.scss +97 -0
  60. package/es/toolbar/style/token.scss +25 -0
  61. package/es/toolbar/toolbar.js +5 -0
  62. package/es/toolbar/toolbar.vue.d.ts +44 -0
  63. package/es/toolbar/toolbar.vue_vue_type_script_setup_true_lang.js +197 -0
  64. package/es/toolbar/types.d.ts +26 -0
  65. package/es/trigger/trigger.js +5 -1
  66. package/json/vetur-attributes.json +76 -1
  67. package/json/vetur-tags.json +24 -0
  68. package/json/web-types.json +163 -7
  69. package/package.json +1 -1
  70. package/es/table/table-col-group.vue.d.ts +0 -29
package/README.md CHANGED
@@ -120,8 +120,8 @@ pnpm --filter @sdata/web-vue run test:update
120
120
 
121
121
  # 相关链接
122
122
 
123
- - [暗黑模式](https://69dcb47c8b4208264c6e77c6--sensational-caramel-b44e12.netlify.app/guides/dark)
124
- - [主题配置](https://69dcb47c8b4208264c6e77c6--sensational-caramel-b44e12.netlify.app/guides/theme)
123
+ - [暗黑模式](https://sd-design.js.org/guides/dark)
124
+ - [主题配置](https://sd-design.js.org/guides/theme)
125
125
  - [Figma 设计资源](https://www.figma.com/file/FVu1DydEeXvJqXrkOb90Oi/SD Design%E7%BB%84%E4%BB%B6%E8%AE%BE%E8%AE%A1_2.0?node-id=5472%3A308)
126
126
 
127
127
  # 参与贡献
package/dist/sd.css CHANGED
@@ -2713,6 +2713,8 @@ body {
2713
2713
  font-size: 12px;
2714
2714
  white-space: pre-wrap;
2715
2715
  word-break: break-word;
2716
+ }
2717
+ .sd-select-view-multiple .sd-select-view-inner .sd-select-view-tag:not(.sd-tag-custom-color):not(.sd-tag-red):not(.sd-tag-orangered):not(.sd-tag-orange):not(.sd-tag-gold):not(.sd-tag-lime):not(.sd-tag-green):not(.sd-tag-cyan):not(.sd-tag-blue):not(.sd-tag-sdblue):not(.sd-tag-purple):not(.sd-tag-pinkpurple):not(.sd-tag-magenta) {
2716
2718
  background-color: var(--sd-color-bg-2);
2717
2719
  border-color: var(--sd-color-fill-3);
2718
2720
  }
@@ -2796,14 +2798,14 @@ body {
2796
2798
  max-width: 100%;
2797
2799
  vertical-align: bottom;
2798
2800
  }
2799
- .sd-select-view-multiple.sd-select-view-focus .sd-select-view-tag {
2801
+ .sd-select-view-multiple.sd-select-view-focus .sd-select-view-tag:not(.sd-tag-custom-color):not(.sd-tag-red):not(.sd-tag-orangered):not(.sd-tag-orange):not(.sd-tag-gold):not(.sd-tag-lime):not(.sd-tag-green):not(.sd-tag-cyan):not(.sd-tag-blue):not(.sd-tag-sdblue):not(.sd-tag-purple):not(.sd-tag-pinkpurple):not(.sd-tag-magenta) {
2800
2802
  background-color: var(--sd-color-fill-2);
2801
2803
  border-color: var(--sd-color-fill-2);
2802
2804
  }
2803
2805
  .sd-select-view-multiple.sd-select-view-focus .sd-select-view-tag .sd-icon-hover:hover::before {
2804
2806
  background-color: var(--sd-color-fill-3);
2805
2807
  }
2806
- .sd-select-view-multiple.sd-select-view-disabled .sd-select-view-tag {
2808
+ .sd-select-view-multiple.sd-select-view-disabled .sd-select-view-tag:not(.sd-tag-custom-color):not(.sd-tag-red):not(.sd-tag-orangered):not(.sd-tag-orange):not(.sd-tag-gold):not(.sd-tag-lime):not(.sd-tag-green):not(.sd-tag-cyan):not(.sd-tag-blue):not(.sd-tag-sdblue):not(.sd-tag-purple):not(.sd-tag-pinkpurple):not(.sd-tag-magenta) {
2807
2809
  color: var(--sd-color-text-4);
2808
2810
  background-color: var(--sd-color-fill-2);
2809
2811
  border-color: var(--sd-color-fill-3);
@@ -5251,6 +5253,75 @@ body.sd-tour-active .sd-tour-popover * {
5251
5253
  resize: vertical;
5252
5254
  }
5253
5255
 
5256
+ .sd-toolbar {
5257
+ width: 100%;
5258
+ }
5259
+ .sd-toolbar-inner {
5260
+ display: flex;
5261
+ flex-wrap: wrap;
5262
+ gap: 12px;
5263
+ align-items: flex-start;
5264
+ width: 100%;
5265
+ }
5266
+ .sd-toolbar-with-border .sd-toolbar-inner {
5267
+ padding-bottom: 8px;
5268
+ border-bottom: 1px solid var(--sd-color-neutral-3);
5269
+ }
5270
+ .sd-toolbar-body {
5271
+ flex: 1 1 0;
5272
+ min-width: 0;
5273
+ max-height: var(--toolbar-body-max-height);
5274
+ overflow: hidden;
5275
+ transition: max-height 0.3s ease;
5276
+ }
5277
+ .sd-toolbar-body--schema .sd-form {
5278
+ display: grid;
5279
+ flex: 1;
5280
+ grid-template-columns: repeat(auto-fill, minmax(var(--toolbar-span-width), 1fr));
5281
+ gap: 8px;
5282
+ width: 100%;
5283
+ background-color: var(--sd-color-bg-2);
5284
+ }
5285
+ .sd-toolbar-body--schema .sd-form > * {
5286
+ max-width: var(--toolbar-item-max-width);
5287
+ }
5288
+ .sd-toolbar-body--schema .sd-form-item {
5289
+ margin-bottom: 0;
5290
+ }
5291
+ .sd-toolbar-body--schema .sd-form-item-content {
5292
+ min-height: var(--toolbar-item-height);
5293
+ }
5294
+ .sd-toolbar-body--max-width .sd-form {
5295
+ grid-template-columns: repeat(auto-fill, minmax(min(var(--toolbar-item-max-width), var(--toolbar-span-width)), var(--toolbar-item-max-width)));
5296
+ }
5297
+ .sd-toolbar-actions {
5298
+ display: flex;
5299
+ flex-shrink: 0;
5300
+ gap: 8px;
5301
+ align-items: center;
5302
+ align-self: flex-end;
5303
+ white-space: nowrap;
5304
+ }
5305
+ .sd-toolbar-expand {
5306
+ display: inline-flex;
5307
+ gap: 4px;
5308
+ align-items: center;
5309
+ }
5310
+ .sd-toolbar-expand-icon {
5311
+ transition: transform 0.3s ease;
5312
+ }
5313
+ .sd-toolbar-expand-icon--up {
5314
+ transform: rotate(180deg);
5315
+ }
5316
+ @media screen and (width <= 640px) {
5317
+ .sd-toolbar-body--schema .sd-form {
5318
+ grid-template-columns: minmax(0, 1fr) !important;
5319
+ }
5320
+ .sd-toolbar-body--schema .sd-form-item {
5321
+ grid-column: span 1 !important;
5322
+ }
5323
+ }
5324
+
5254
5325
  .sd-tag-group {
5255
5326
  position: relative;
5256
5327
  display: inline-flex;
@@ -6232,6 +6303,9 @@ body.sd-tour-active .sd-tour-popover * {
6232
6303
  grid-column: 1/-1;
6233
6304
  grid-template-columns: var(--sd-table-grid-template, minmax(0, 1fr));
6234
6305
  }
6306
+ .sd-table-thead > .sd-table-tr, .sd-table-tbody > .sd-table-tr, .sd-table-tfoot-content > .sd-table-tr {
6307
+ display: contents;
6308
+ }
6235
6309
  .sd-table-tbody > .sd-virtual-list, .sd-table-tbody > .sd-table-body {
6236
6310
  grid-column: 1/-1;
6237
6311
  width: 100%;
@@ -6566,9 +6640,10 @@ body.sd-tour-active .sd-tour-popover * {
6566
6640
  flex-direction: column;
6567
6641
  width: auto;
6568
6642
  height: 100%;
6643
+ overflow: hidden;
6569
6644
  }
6570
6645
  .sd-table-container .sd-table-content-scroll-x {
6571
- overflow: auto hidden;
6646
+ overflow: hidden;
6572
6647
  }
6573
6648
  .sd-table-container::before, .sd-table-container::after {
6574
6649
  position: absolute;
@@ -6597,6 +6672,7 @@ body.sd-tour-active .sd-tour-popover * {
6597
6672
  box-shadow: inset -6px 0 8px -3px rgba(0, 0, 0, 0.15);
6598
6673
  }
6599
6674
  .sd-table-header {
6675
+ flex: 0 0 auto;
6600
6676
  width: 100%;
6601
6677
  min-width: 100%;
6602
6678
  overflow: hidden;
@@ -6621,13 +6697,15 @@ body.sd-tour-active .sd-tour-popover * {
6621
6697
  background-color: transparent;
6622
6698
  }
6623
6699
  .sd-table.sd-table-empty .sd-table-header {
6624
- overflow-x: auto;
6700
+ overflow-x: hidden;
6625
6701
  }
6626
6702
  .sd-table-body {
6627
6703
  position: relative;
6704
+ flex: 1 1 auto;
6628
6705
  width: 100%;
6629
- min-height: 40px;
6630
- overflow: auto;
6706
+ min-width: 0;
6707
+ min-height: 0;
6708
+ overflow: hidden;
6631
6709
  background-color: var(--sd-color-bg-2);
6632
6710
  }
6633
6711
  .sd-table-border .sd-table-container {
@@ -6747,7 +6825,7 @@ body.sd-tour-active .sd-tour-popover * {
6747
6825
  z-index: 1;
6748
6826
  flex-shrink: 0;
6749
6827
  width: 100%;
6750
- overflow-x: auto;
6828
+ overflow-x: hidden;
6751
6829
  background-color: var(--sd-color-neutral-2);
6752
6830
  box-shadow: 0 -1px 0 var(--sd-color-neutral-3);
6753
6831
  scrollbar-color: transparent transparent;
@@ -11542,6 +11620,8 @@ body.sd-tour-active .sd-tour-popover * {
11542
11620
  font-size: 12px;
11543
11621
  white-space: pre-wrap;
11544
11622
  word-break: break-word;
11623
+ }
11624
+ .sd-input-tag .sd-input-tag-inner .sd-input-tag-tag:not(.sd-tag-custom-color):not(.sd-tag-red):not(.sd-tag-orangered):not(.sd-tag-orange):not(.sd-tag-gold):not(.sd-tag-lime):not(.sd-tag-green):not(.sd-tag-cyan):not(.sd-tag-blue):not(.sd-tag-sdblue):not(.sd-tag-purple):not(.sd-tag-pinkpurple):not(.sd-tag-magenta) {
11545
11625
  background-color: var(--sd-color-bg-2);
11546
11626
  border-color: var(--sd-color-fill-3);
11547
11627
  }
@@ -11625,14 +11705,14 @@ body.sd-tour-active .sd-tour-popover * {
11625
11705
  max-width: 100%;
11626
11706
  vertical-align: bottom;
11627
11707
  }
11628
- .sd-input-tag.sd-input-tag-focus .sd-input-tag-tag {
11708
+ .sd-input-tag.sd-input-tag-focus .sd-input-tag-tag:not(.sd-tag-custom-color):not(.sd-tag-red):not(.sd-tag-orangered):not(.sd-tag-orange):not(.sd-tag-gold):not(.sd-tag-lime):not(.sd-tag-green):not(.sd-tag-cyan):not(.sd-tag-blue):not(.sd-tag-sdblue):not(.sd-tag-purple):not(.sd-tag-pinkpurple):not(.sd-tag-magenta) {
11629
11709
  background-color: var(--sd-color-fill-2);
11630
11710
  border-color: var(--sd-color-fill-2);
11631
11711
  }
11632
11712
  .sd-input-tag.sd-input-tag-focus .sd-input-tag-tag .sd-icon-hover:hover::before {
11633
11713
  background-color: var(--sd-color-fill-3);
11634
11714
  }
11635
- .sd-input-tag.sd-input-tag-disabled .sd-input-tag-tag {
11715
+ .sd-input-tag.sd-input-tag-disabled .sd-input-tag-tag:not(.sd-tag-custom-color):not(.sd-tag-red):not(.sd-tag-orangered):not(.sd-tag-orange):not(.sd-tag-gold):not(.sd-tag-lime):not(.sd-tag-green):not(.sd-tag-cyan):not(.sd-tag-blue):not(.sd-tag-sdblue):not(.sd-tag-purple):not(.sd-tag-pinkpurple):not(.sd-tag-magenta) {
11636
11716
  color: var(--sd-color-text-4);
11637
11717
  background-color: var(--sd-color-fill-2);
11638
11718
  border-color: var(--sd-color-fill-3);