@ysgroup/ui 0.1.18 → 0.1.20

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.
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@ysgroup/ui",
3
- "version": "0.1.18",
3
+ "version": "0.1.20",
4
4
  "type": "module",
5
5
  "main": "src/index.ts",
6
6
  "types": "src/index.ts",
7
7
  "dependencies": {
8
8
  "@element-plus/icons-vue": "^2.3.1",
9
- "@ysgroup/contracts": "^0.1.3",
10
- "@ysgroup/theme": "^0.1.0"
9
+ "@ysgroup/theme": "^0.1.0",
10
+ "@ysgroup/contracts": "^0.1.5"
11
11
  },
12
12
  "peerDependencies": {
13
13
  "element-plus": ">=2.9",
@@ -9,14 +9,18 @@ export interface EnumOption {
9
9
 
10
10
  /** 读取契约枚举的选项列表(含中文名与排序),驱动 YsEnumSelect / 表单。 */
11
11
  export function enumOptions(enumName: keyof typeof ENUM_META): EnumOption[] {
12
- const meta = ENUM_META[enumName] as Record<string, { name?: string; sort?: number }>;
12
+ const meta = ENUM_META[enumName] as Record<string, { label?: string; name?: string; sort?: number }>;
13
13
  if (!meta) return [];
14
14
  return Object.entries(meta)
15
- .map(([value, m]) => ({ value, label: m.name ?? value, sort: m.sort ?? 0 }))
16
- .sort((a, b) => a.sort - b.sort);
15
+ .map(([value, m]) => ({ value, label: m.label ?? m.name ?? value, sort: m.sort ?? 0 }))
16
+ .sort((a, b) =>
17
+ enumName === "UserRole"
18
+ ? b.sort - a.sort
19
+ : a.sort - b.sort,
20
+ );
17
21
  }
18
22
 
19
23
  export function enumLabel(enumName: keyof typeof ENUM_META, value: string): string {
20
- const meta = ENUM_META[enumName] as Record<string, { name?: string }> | undefined;
21
- return meta?.[value]?.name ?? value;
24
+ const meta = ENUM_META[enumName] as Record<string, { label?: string; name?: string }> | undefined;
25
+ return meta?.[value]?.label ?? meta?.[value]?.name ?? value;
22
26
  }