@rainbow-oh/yee-c 0.8.20 → 0.9.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 (51) hide show
  1. package/dist/cjs/Form/Field.js +6 -6
  2. package/dist/cjs/Form/demo/async-validate.js +2 -2
  3. package/dist/cjs/Form/demo/field-status.d.ts +3 -0
  4. package/dist/cjs/Form/demo/field-status.js +116 -0
  5. package/dist/cjs/Form/demo/validate.js +2 -2
  6. package/dist/cjs/Form/form-store.d.ts +6 -1
  7. package/dist/cjs/Form/form-store.js +93 -8
  8. package/dist/cjs/Form/index.d.ts +1 -1
  9. package/dist/cjs/Form/interface.d.ts +26 -3
  10. package/dist/cjs/Form/style/index.less +26 -0
  11. package/dist/cjs/Form/utils/path.js +1 -1
  12. package/dist/cjs/TreeSelect/tree-select.js +14 -4
  13. package/dist/cjs/style/themes.css +1 -1
  14. package/dist/cjs/style/variables.css +1 -1
  15. package/dist/cjs/version.d.ts +1 -1
  16. package/dist/cjs/version.js +1 -1
  17. package/dist/esm/Form/Field.js +6 -6
  18. package/dist/esm/Form/demo/async-validate.js +2 -2
  19. package/dist/esm/Form/demo/field-status.d.ts +3 -0
  20. package/dist/esm/Form/demo/field-status.js +104 -0
  21. package/dist/esm/Form/demo/validate.js +2 -2
  22. package/dist/esm/Form/form-store.d.ts +6 -1
  23. package/dist/esm/Form/form-store.js +118 -13
  24. package/dist/esm/Form/hooks/useForm.js +0 -175
  25. package/dist/esm/Form/index.d.ts +1 -1
  26. package/dist/esm/Form/interface.d.ts +26 -3
  27. package/dist/esm/Form/style/index.less +26 -0
  28. package/dist/esm/Form/utils/path.js +2 -1
  29. package/dist/esm/TreeSelect/tree-select.js +20 -6
  30. package/dist/esm/style/themes.css +1 -1
  31. package/dist/esm/style/variables.css +1 -1
  32. package/dist/esm/version.d.ts +1 -1
  33. package/dist/esm/version.js +1 -1
  34. package/dist/umd/yee-c.min.css +1 -1
  35. package/dist/umd/yee-c.min.js +1 -1
  36. package/package.json +1 -1
  37. package/src/Form/Field.tsx +7 -8
  38. package/src/Form/demo/async-validate.tsx +3 -2
  39. package/src/Form/demo/field-status.tsx +108 -0
  40. package/src/Form/demo/validate.tsx +3 -2
  41. package/src/Form/form-store.test.ts +156 -0
  42. package/src/Form/form-store.ts +117 -8
  43. package/src/Form/hooks/useForm.ts +0 -175
  44. package/src/Form/index.en-US.md +93 -88
  45. package/src/Form/index.ts +3 -0
  46. package/src/Form/index.zh-CN.md +56 -51
  47. package/src/Form/interface.ts +28 -3
  48. package/src/Form/style/index.less +26 -0
  49. package/src/Form/utils/path.ts +2 -1
  50. package/src/TreeSelect/tree-select.tsx +21 -4
  51. package/src/version.ts +1 -1
@@ -93,6 +93,20 @@ var TreeSelect = function TreeSelect(baseprops) {
93
93
  _useMemo2 = _slicedToArray(_useMemo, 2),
94
94
  itemMap = _useMemo2[1];
95
95
 
96
+ // itemMap 以 uid(Tree 内部的路径键)为键,仅根节点 uid === key。
97
+ // 选中项展示 / getNodes 需要按外部 value(raw key)查找,否则嵌套节点
98
+ // 查不到会走 Selector 的孤儿值回退,直接显示 value 本身
99
+ var keyItemMap = useMemo(function () {
100
+ var map = new Map();
101
+ itemMap.forEach(function (item) {
102
+ var k = String(item.key);
103
+ if (!map.has(k)) {
104
+ map.set(k, item);
105
+ }
106
+ });
107
+ return map;
108
+ }, [itemMap]);
109
+
96
110
  // Filter data source for searching
97
111
  var filteredDataSource = useMemo(function () {
98
112
  var sourceArray = Array.isArray(dataSource) ? dataSource : [dataSource];
@@ -128,7 +142,7 @@ var TreeSelect = function TreeSelect(baseprops) {
128
142
  // Convert selected keys to options format for Selector display
129
143
  var selectedOptions = useMemo(function () {
130
144
  return mergedValue.map(function (key) {
131
- var item = itemMap.get(key);
145
+ var item = keyItemMap.get(String(key));
132
146
  if (!item) return null;
133
147
  var label = typeof optionLabelProp === 'function' ? optionLabelProp(item.original) : String(item[optionLabelProp] || item.label);
134
148
  return _objectSpread({
@@ -136,9 +150,9 @@ var TreeSelect = function TreeSelect(baseprops) {
136
150
  label: label
137
151
  }, item.original);
138
152
  }).filter(Boolean);
139
- }, [mergedValue, itemMap, optionLabelProp]);
153
+ }, [mergedValue, keyItemMap, optionLabelProp]);
140
154
  var getNodes = function getNodes(keys) {
141
- var _itemMap$get2;
155
+ var _keyItemMap$get2;
142
156
  if (keys === '' || keys === null) {
143
157
  return undefined;
144
158
  }
@@ -147,13 +161,13 @@ var TreeSelect = function TreeSelect(baseprops) {
147
161
  return [];
148
162
  }
149
163
  return keys.map(function (key) {
150
- var _itemMap$get;
151
- return (_itemMap$get = itemMap.get(key)) === null || _itemMap$get === void 0 ? void 0 : _itemMap$get.original;
164
+ var _keyItemMap$get;
165
+ return (_keyItemMap$get = keyItemMap.get(String(key))) === null || _keyItemMap$get === void 0 ? void 0 : _keyItemMap$get.original;
152
166
  }).filter(function (node) {
153
167
  return node !== undefined;
154
168
  });
155
169
  }
156
- return (_itemMap$get2 = itemMap.get(keys)) === null || _itemMap$get2 === void 0 ? void 0 : _itemMap$get2.original;
170
+ return (_keyItemMap$get2 = keyItemMap.get(String(keys))) === null || _keyItemMap$get2 === void 0 ? void 0 : _keyItemMap$get2.original;
157
171
  };
158
172
  var handleSelect = function handleSelect(selectedKeys) {
159
173
  var keys;
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * @rainbow-oh/yee-c CSS Variables
3
3
  * Auto-generated, do not edit manually
4
- * Generated on 2026-08-13T08:02:29.627Z
4
+ * Generated on 2026-08-18T07:24:38.904Z
5
5
  */
6
6
 
7
7
  /* ========== color.blue.css ========== */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * @rainbow-oh/yee-c CSS Variables
3
3
  * Auto-generated, do not edit manually
4
- * Generated on 2026-08-13T08:02:29.627Z
4
+ * Generated on 2026-08-18T07:24:38.904Z
5
5
  */
6
6
 
7
7
  /* ========== color.css ========== */
@@ -3,4 +3,4 @@ declare global {
3
3
  __yee_c_version__: string;
4
4
  }
5
5
  }
6
- export declare const version = "0.8.20";
6
+ export declare const version = "0.9.1";
@@ -1,4 +1,4 @@
1
- export var version = "0.8.20";
1
+ export var version = "0.9.1";
2
2
  if (typeof window !== 'undefined') {
3
3
  window.__yee_c_version__ = version;
4
4
  }