@sdata/web-vue 3.16.1 → 3.17.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 (69) hide show
  1. package/dist/sd.css +81 -0
  2. package/dist/sd.min.css +1 -1
  3. package/es/button/button.vue.d.ts +8 -4
  4. package/es/button/button.vue_vue_type_script_setup_true_lang.js +33 -14
  5. package/es/button/index.d.ts +4 -0
  6. package/es/button/style/index.css +11 -0
  7. package/es/button/style/index.scss +12 -0
  8. package/es/cascader/base-cascader-panel.js +1 -1
  9. package/es/cascader/cascader-column.js +1 -1
  10. package/es/cascader/cascader-search-panel.js +1 -1
  11. package/es/components.d.ts +1 -0
  12. package/es/dropdown/dropdown-panel.vue_vue_type_script_setup_true_lang.js +1 -1
  13. package/es/icon/icon-list/icon-list.js +5 -0
  14. package/es/icon/icon-list/icon-list.vue_vue_type_script_setup_true_lang.js +52 -0
  15. package/es/icon/icon-list/index.js +9 -0
  16. package/es/index.css +81 -0
  17. package/es/index.d.ts +2 -0
  18. package/es/index.js +3 -2
  19. package/es/index.scss +1 -0
  20. package/es/kv-list/constants.d.ts +1 -0
  21. package/es/kv-list/constants.js +127 -0
  22. package/es/kv-list/index.d.ts +302 -0
  23. package/es/kv-list/index.js +10 -0
  24. package/es/kv-list/kv-list-row.js +5 -0
  25. package/es/kv-list/kv-list-row.vue.d.ts +29 -0
  26. package/es/kv-list/kv-list-row.vue_vue_type_script_setup_true_lang.js +123 -0
  27. package/es/kv-list/kv-list.js +5 -0
  28. package/es/kv-list/kv-list.vue.d.ts +34 -0
  29. package/es/kv-list/kv-list.vue_vue_type_script_setup_true_lang.js +262 -0
  30. package/es/kv-list/style/css.js +2 -0
  31. package/es/kv-list/style/index.css +86 -0
  32. package/es/kv-list/style/index.d.ts +2 -0
  33. package/es/kv-list/style/index.js +2 -0
  34. package/es/kv-list/style/index.scss +93 -0
  35. package/es/kv-list/style/token.scss +14 -0
  36. package/es/kv-list/types.d.ts +29 -0
  37. package/es/kv-list/utils.d.ts +8 -0
  38. package/es/kv-list/utils.js +32 -0
  39. package/es/list/list.js +1 -1
  40. package/es/locale/interface.d.ts +11 -0
  41. package/es/locale/lang/ar-eg.js +2 -0
  42. package/es/locale/lang/de-de.js +2 -0
  43. package/es/locale/lang/en-us.js +2 -0
  44. package/es/locale/lang/es-es.js +2 -0
  45. package/es/locale/lang/fr-fr.js +2 -0
  46. package/es/locale/lang/id-id.js +2 -0
  47. package/es/locale/lang/it-it.js +2 -0
  48. package/es/locale/lang/ja-jp.js +2 -0
  49. package/es/locale/lang/km-kh.js +2 -0
  50. package/es/locale/lang/ko-kr.js +2 -0
  51. package/es/locale/lang/kv-list.d.ts +2 -0
  52. package/es/locale/lang/kv-list.js +14 -0
  53. package/es/locale/lang/ms-my.js +2 -0
  54. package/es/locale/lang/nl-nl.js +2 -0
  55. package/es/locale/lang/pt-pt.js +2 -0
  56. package/es/locale/lang/ru-ru.js +2 -0
  57. package/es/locale/lang/th-th.js +2 -0
  58. package/es/locale/lang/vi-vn.js +2 -0
  59. package/es/locale/lang/zh-cn.js +11 -0
  60. package/es/locale/lang/zh-tw.js +11 -0
  61. package/es/sd-vue.js +3 -1
  62. package/es/select/select-dropdown.vue_vue_type_script_setup_true_lang.js +2 -1
  63. package/es/table/table.js +1 -1
  64. package/es/transfer/transfer-view.vue_vue_type_script_setup_true_lang.js +1 -1
  65. package/es/tree-select/tree-select.vue_vue_type_script_setup_true_lang.js +2 -1
  66. package/json/vetur-attributes.json +17 -0
  67. package/json/vetur-tags.json +9 -0
  68. package/json/web-types.json +48 -1
  69. package/package.json +3 -2
@@ -1,3 +1,4 @@
1
+ import { kvListEnUS } from "./kv-list.js";
1
2
  //#region components/locale/lang/km-kh.ts
2
3
  var calendarLang = {
3
4
  formatYear: "YYYY ឆ្នាំ",
@@ -197,6 +198,7 @@ var lang = {
197
198
  preset: "ពណ៌កំណត់ជាមុន",
198
199
  empty: "ទទេ"
199
200
  },
201
+ kvList: kvListEnUS,
200
202
  a11y: {
201
203
  close: "បិទ",
202
204
  back: "ត្រឡប់",
@@ -1,3 +1,4 @@
1
+ import { kvListEnUS } from "./kv-list.js";
1
2
  //#region components/locale/lang/ko-kr.ts
2
3
  var calendarLang = {
3
4
  formatYear: "YYYY",
@@ -197,6 +198,7 @@ var lang = {
197
198
  preset: "시스템 기본 색상",
198
199
  empty: "데이터 없음"
199
200
  },
201
+ kvList: kvListEnUS,
200
202
  a11y: {
201
203
  close: "닫기",
202
204
  back: "뒤로",
@@ -0,0 +1,2 @@
1
+ import type { SdLang } from '../interface';
2
+ export declare const kvListEnUS: SdLang['kvList'];
@@ -0,0 +1,14 @@
1
+ //#region components/locale/lang/kv-list.ts
2
+ var kvListEnUS = {
3
+ switchToList: "Switch to list editor",
4
+ switchToBulk: "Switch to bulk editor",
5
+ clear: "Clear items",
6
+ add: "Add item",
7
+ bulkPlaceholder: "Enter one key-value pair per line, for example Key: Value",
8
+ dragSort: "Drag to reorder",
9
+ keyPlaceholder: "Key",
10
+ valuePlaceholder: "Value",
11
+ remove: "Remove item"
12
+ };
13
+ //#endregion
14
+ export { kvListEnUS };
@@ -1,3 +1,4 @@
1
+ import { kvListEnUS } from "./kv-list.js";
1
2
  //#region components/locale/lang/ms-my.ts
2
3
  var calendarLang = {
3
4
  formatYear: "YYYY",
@@ -197,6 +198,7 @@ var lang = {
197
198
  preset: "Warna lalai sistem",
198
199
  empty: "Tiada data"
199
200
  },
201
+ kvList: kvListEnUS,
200
202
  a11y: {
201
203
  close: "Tutup",
202
204
  back: "Kembali",
@@ -1,3 +1,4 @@
1
+ import { kvListEnUS } from "./kv-list.js";
1
2
  //#region components/locale/lang/nl-nl.ts
2
3
  var calendarLang = {
3
4
  formatYear: "YYYY",
@@ -197,6 +198,7 @@ var lang = {
197
198
  preset: "Systeem kleuren",
198
199
  empty: "Geen"
199
200
  },
201
+ kvList: kvListEnUS,
200
202
  a11y: {
201
203
  close: "Sluiten",
202
204
  back: "Terug",
@@ -1,3 +1,4 @@
1
+ import { kvListEnUS } from "./kv-list.js";
1
2
  //#region components/locale/lang/pt-pt.ts
2
3
  var calendarLang = {
3
4
  formatYear: "YYYY",
@@ -197,6 +198,7 @@ var lang = {
197
198
  preset: "Cor padrão do sistema",
198
199
  empty: "Sem dados"
199
200
  },
201
+ kvList: kvListEnUS,
200
202
  a11y: {
201
203
  close: "Fechar",
202
204
  back: "Voltar",
@@ -1,3 +1,4 @@
1
+ import { kvListEnUS } from "./kv-list.js";
1
2
  //#region components/locale/lang/ru-ru.ts
2
3
  var calendarLang = {
3
4
  formatYear: "YYYY",
@@ -197,6 +198,7 @@ var lang = {
197
198
  preset: "Цвет системы по умолчанию",
198
199
  empty: "нет данных"
199
200
  },
201
+ kvList: kvListEnUS,
200
202
  a11y: {
201
203
  close: "Закрыть",
202
204
  back: "Назад",
@@ -1,3 +1,4 @@
1
+ import { kvListEnUS } from "./kv-list.js";
1
2
  //#region components/locale/lang/th-th.ts
2
3
  var calendarLang = {
3
4
  formatYear: "YYYY",
@@ -197,6 +198,7 @@ var lang = {
197
198
  preset: "สี ที่ตั้งไว้สำหรับระบบ",
198
199
  empty: "ไม่มีข้อมูล"
199
200
  },
201
+ kvList: kvListEnUS,
200
202
  a11y: {
201
203
  close: "ปิด",
202
204
  back: "ย้อนกลับ",
@@ -1,3 +1,4 @@
1
+ import { kvListEnUS } from "./kv-list.js";
1
2
  //#region components/locale/lang/vi-vn.ts
2
3
  var calendarLang = {
3
4
  formatYear: "YYYY",
@@ -197,6 +198,7 @@ var lang = {
197
198
  preset: "Màu mặc định của hệ thống",
198
199
  empty: "Không có dữ liệu"
199
200
  },
201
+ kvList: kvListEnUS,
200
202
  a11y: {
201
203
  close: "Đóng",
202
204
  back: "Quay lại",
@@ -198,6 +198,17 @@ var lang = {
198
198
  preset: "系统预设颜色",
199
199
  empty: "暂无"
200
200
  },
201
+ kvList: {
202
+ switchToList: "切换到列表编辑",
203
+ switchToBulk: "切换到 Bulk 编辑",
204
+ clear: "清空键值对",
205
+ add: "新增键值对",
206
+ bulkPlaceholder: "每行输入一个键值对,例如 Key: Value",
207
+ dragSort: "拖拽排序",
208
+ keyPlaceholder: "键",
209
+ valuePlaceholder: "值",
210
+ remove: "删除键值对"
211
+ },
201
212
  a11y: {
202
213
  close: "关闭",
203
214
  back: "返回",
@@ -198,6 +198,17 @@ var lang = {
198
198
  preset: "系統預設顏色",
199
199
  empty: "暫無"
200
200
  },
201
+ kvList: {
202
+ switchToList: "切換到列表編輯",
203
+ switchToBulk: "切換到 Bulk 編輯",
204
+ clear: "清空鍵值對",
205
+ add: "新增鍵值對",
206
+ bulkPlaceholder: "每行輸入一個鍵值對,例如 Key: Value",
207
+ dragSort: "拖拽排序",
208
+ keyPlaceholder: "鍵",
209
+ valuePlaceholder: "值",
210
+ remove: "刪除鍵值對"
211
+ },
201
212
  a11y: {
202
213
  close: "關閉",
203
214
  back: "返回",
package/es/sd-vue.js CHANGED
@@ -13,6 +13,7 @@ import button_group_default from "./button/button-group.js";
13
13
  import Button from "./button/index.js";
14
14
  import input_search_default from "./input/input-search.js";
15
15
  import Input from "./input/index.js";
16
+ import Empty from "./empty/index.js";
16
17
  import Scrollbar from "./scrollbar/index.js";
17
18
  import Spin from "./spin/index.js";
18
19
  import AutoComplete from "./auto-complete/index.js";
@@ -25,7 +26,6 @@ import Ellipsis, { PerformantEllipsis } from "./ellipsis/index.js";
25
26
  import Link from "./link/index.js";
26
27
  import Popconfirm from "./popconfirm/index.js";
27
28
  import Space from "./space/index.js";
28
- import Empty from "./empty/index.js";
29
29
  import InputNumber from "./input-number/index.js";
30
30
  import Tag from "./tag/index.js";
31
31
  import InputTag from "./input-tag/index.js";
@@ -105,6 +105,7 @@ import preview_group_default from "./image/preview-group.js";
105
105
  import Image from "./image/index.js";
106
106
  import FilePreviewer from "./file-previewer/index.js";
107
107
  import Icon from "./icon-component/index.js";
108
+ import KvList from "./kv-list/index.js";
108
109
  import content_default from "./layout/content.js";
109
110
  import footer_default from "./layout/footer.js";
110
111
  import header_default from "./layout/header.js";
@@ -187,6 +188,7 @@ var components = {
187
188
  DatePicker,
188
189
  Form,
189
190
  JsonForm,
191
+ KvList,
190
192
  Input,
191
193
  InputNumber,
192
194
  InputTag,
@@ -3,6 +3,7 @@ import { _objectSpread2 } from "../_virtual/_@oxc-project_runtime@0.133.0/helper
3
3
  import { getPrefixCls } from "../_utils/global-config.js";
4
4
  import { useComponentRef } from "../_hooks/use-component-ref.js";
5
5
  import { useScrollbar } from "../_hooks/use-scrollbar.js";
6
+ import Empty from "../empty/index.js";
6
7
  import Scrollbar from "../scrollbar/index.js";
7
8
  import Spin from "../spin/index.js";
8
9
  import { computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, defineComponent, inject, mergeProps, normalizeClass, openBlock, renderSlot, resolveDynamicComponent, toRefs, unref, useSlots, vShow, withCtx, withDirectives } from "vue";
@@ -65,7 +66,7 @@ var select_dropdown_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
65
66
  }, null, 8, ["class"])) : __props.empty ? (openBlock(), createElementBlock("div", {
66
67
  key: 2,
67
68
  class: normalizeClass(`${unref(prefixCls)}-empty`)
68
- }, [renderSlot(_ctx.$slots, "empty", {}, () => [(openBlock(), createBlock(resolveDynamicComponent(unref(SelectEmpty) ? unref(SelectEmpty) : "Empty")))])], 2)) : createCommentVNode("", true),
69
+ }, [renderSlot(_ctx.$slots, "empty", {}, () => [(openBlock(), createBlock(resolveDynamicComponent(unref(SelectEmpty) || unref(Empty))))])], 2)) : createCommentVNode("", true),
69
70
  __props.virtualList && !__props.loading && !__props.empty ? renderSlot(_ctx.$slots, "virtual-list", { key: 3 }) : createCommentVNode("", true),
70
71
  !__props.virtualList ? withDirectives((openBlock(), createBlock(unref(Scrollbar), mergeProps({
71
72
  key: 4,
package/es/table/table.js CHANGED
@@ -8,12 +8,12 @@ import virtual_list_default from "../_components/virtual-list/index.js";
8
8
  import { omit } from "../_utils/omit.js";
9
9
  import { useComponentRef } from "../_hooks/use-component-ref.js";
10
10
  import { useScrollbar } from "../_hooks/use-scrollbar.js";
11
+ import Empty from "../empty/index.js";
11
12
  import Scrollbar from "../scrollbar/index.js";
12
13
  import Spin from "../spin/index.js";
13
14
  import { useChildrenComponents } from "../_hooks/use-children-components.js";
14
15
  import { debounce } from "../_utils/debounce.js";
15
16
  import { getValueByPath, setValueByPath } from "../_utils/get-value-by-path.js";
16
- import Empty from "../empty/index.js";
17
17
  import IconMinus from "../icon/icon-minus/index.js";
18
18
  import IconPlus from "../icon/icon-plus/index.js";
19
19
  import Pagination from "../pagination/index.js";
@@ -2,8 +2,8 @@ import { _objectSpread2 } from "../_virtual/_@oxc-project_runtime@0.133.0/helper
2
2
  import { getPrefixCls } from "../_utils/global-config.js";
3
3
  import icon_hover_default from "../_components/icon-hover.js";
4
4
  import Input from "../input/index.js";
5
- import Scrollbar from "../scrollbar/index.js";
6
5
  import empty_default from "../empty/empty.js";
6
+ import Scrollbar from "../scrollbar/index.js";
7
7
  import Checkbox from "../checkbox/index.js";
8
8
  import { transferInjectionKey } from "./context.js";
9
9
  import IconDelete from "../icon/icon-delete/index.js";
@@ -10,6 +10,7 @@ import { useReadonlyTip, useReadonlyTipText } from "../_hooks/use-readonly-tip.j
10
10
  import Trigger from "../trigger/index.js";
11
11
  import Tooltip from "../tooltip/index.js";
12
12
  import useMergeState from "../_hooks/use-merge-state.js";
13
+ import Empty from "../empty/index.js";
13
14
  import Spin from "../spin/index.js";
14
15
  import select_view_default from "../_components/select-view/select-view.js";
15
16
  import { useAllowSearch } from "../_hooks/use-allow-search.js";
@@ -627,7 +628,7 @@ var tree_select_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defi
627
628
  key: 0,
628
629
  class: normalizeClass(`${unref(prefixCls)}-header`)
629
630
  }, [renderSlot(_ctx.$slots, "header")], 2)) : createCommentVNode("", true),
630
- __props.loading ? renderSlot(_ctx.$slots, "loader", { key: 1 }, () => [createVNode(unref(Spin))]) : isEmpty.value ? renderSlot(_ctx.$slots, "empty", { key: 2 }, () => [(openBlock(), createBlock(resolveDynamicComponent(unref(TreeSelectEmpty) ? unref(TreeSelectEmpty) : "Empty")))]) : (openBlock(), createBlock(unref(panel_default), {
631
+ __props.loading ? renderSlot(_ctx.$slots, "loader", { key: 1 }, () => [createVNode(unref(Spin))]) : isEmpty.value ? renderSlot(_ctx.$slots, "empty", { key: 2 }, () => [(openBlock(), createBlock(resolveDynamicComponent(unref(TreeSelectEmpty) || unref(Empty))))]) : (openBlock(), createBlock(unref(panel_default), {
631
632
  key: 3,
632
633
  "selected-keys": unref(selectedKeys),
633
634
  "show-checkable": mergedTreeCheckable.value,
@@ -1903,6 +1903,23 @@
1903
1903
  "sd-input-search/button-props": {
1904
1904
  "description": "Button props"
1905
1905
  },
1906
+ "sd-kv-list/type": {
1907
+ "description": "Editor type. Uses two Input components by default"
1908
+ },
1909
+ "sd-kv-list/key-props": {
1910
+ "description": "Props passed through to the key editor"
1911
+ },
1912
+ "sd-kv-list/value-props": {
1913
+ "description": "Props passed through to the value editor"
1914
+ },
1915
+ "sd-kv-list/disabled": {
1916
+ "description": "Whether editing and structural actions are disabled",
1917
+ "type": "boolean"
1918
+ },
1919
+ "sd-kv-list/bulk-editable": {
1920
+ "description": "Whether bulk editing is available. Disabled by default for secret type",
1921
+ "type": "boolean"
1922
+ },
1906
1923
  "sd-layout/has-sider": {
1907
1924
  "description": "Whether contains Sider, overrides auto detection when set to a boolean",
1908
1925
  "type": "boolean"
@@ -784,6 +784,15 @@
784
784
  "sd-json-form": {
785
785
  "attributes": []
786
786
  },
787
+ "sd-kv-list": {
788
+ "attributes": [
789
+ "type",
790
+ "key-props",
791
+ "value-props",
792
+ "disabled",
793
+ "bulk-editable"
794
+ ]
795
+ },
787
796
  "sd-content": {
788
797
  "attributes": []
789
798
  },
@@ -2,7 +2,7 @@
2
2
  "$schema": "https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json",
3
3
  "framework": "vue",
4
4
  "name": "@sdata/web-vue",
5
- "version": "3.16.0",
5
+ "version": "3.16.1",
6
6
  "contributions": {
7
7
  "html": {
8
8
  "types-syntax": "typescript",
@@ -4636,6 +4636,53 @@
4636
4636
  "events": [],
4637
4637
  "slots": []
4638
4638
  },
4639
+ {
4640
+ "name": "sd-kv-list",
4641
+ "attributes": [
4642
+ {
4643
+ "name": "type",
4644
+ "description": "Editor type. Uses two Input components by default",
4645
+ "value": {
4646
+ "type": "KvListType",
4647
+ "kind": "expression"
4648
+ }
4649
+ },
4650
+ {
4651
+ "name": "key-props",
4652
+ "description": "Props passed through to the key editor",
4653
+ "value": {
4654
+ "type": "KvListKeyProps",
4655
+ "kind": "expression"
4656
+ }
4657
+ },
4658
+ {
4659
+ "name": "value-props",
4660
+ "description": "Props passed through to the value editor",
4661
+ "value": {
4662
+ "type": "KvListValueProps",
4663
+ "kind": "expression"
4664
+ }
4665
+ },
4666
+ {
4667
+ "name": "disabled",
4668
+ "description": "Whether editing and structural actions are disabled",
4669
+ "value": {
4670
+ "type": "boolean",
4671
+ "kind": "expression"
4672
+ }
4673
+ },
4674
+ {
4675
+ "name": "bulk-editable",
4676
+ "description": "Whether bulk editing is available. Disabled by default for secret type",
4677
+ "value": {
4678
+ "type": "boolean",
4679
+ "kind": "expression"
4680
+ }
4681
+ }
4682
+ ],
4683
+ "events": [],
4684
+ "slots": []
4685
+ },
4639
4686
  {
4640
4687
  "name": "sd-content",
4641
4688
  "attributes": [],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sdata/web-vue",
3
- "version": "3.16.1",
3
+ "version": "3.17.0",
4
4
  "description": "SD Design Vue: A Vue.js 3 UI Library",
5
5
  "keywords": [
6
6
  "sd",
@@ -69,7 +69,8 @@
69
69
  "resize-observer-polyfill": "^1.5.1",
70
70
  "scroll-into-view-if-needed": "^3.1.0",
71
71
  "virtua": "^0.49.2",
72
- "vue": "^3.5.38"
72
+ "vue": "^3.5.38",
73
+ "vue-draggable-plus": "^0.6.1"
73
74
  },
74
75
  "devDependencies": {
75
76
  "@babel/types": "^7.29.7",