@simpleform/form 2.1.9 → 2.1.10

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/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # `@simpleform/form`
2
2
  English | [中文说明](./README_CN.md)
3
3
 
4
- [![](https://img.shields.io/badge/version-2.1.9-green)](https://www.npmjs.com/package/@simpleform/form)
4
+ [![](https://img.shields.io/badge/version-2.1.10-green)](https://www.npmjs.com/package/@simpleform/form)
5
5
 
6
6
  > The underlying form component, Binding of form values to display and update events is accomplished through callback functions.
7
7
 
package/README_CN.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [English](./README.md) | 中文说明
4
4
 
5
- [![](https://img.shields.io/badge/version-2.1.9-green)](https://www.npmjs.com/package/@simpleform/form)
5
+ [![](https://img.shields.io/badge/version-2.1.10-green)](https://www.npmjs.com/package/@simpleform/form)
6
6
 
7
7
  > 表单底层组件,通过回调函数方式实现表单值的显示和更新事件的绑定.
8
8
 
package/lib/typings.d.ts CHANGED
@@ -1,10 +1,5 @@
1
- type NestedPath<T extends 'array' | 'object', P, C = undefined> = `${P & string}${T extends 'array' ? `[${number}]` : C extends string ? `.${C}` : ''}`;
2
- type DeepNested<V, K = ''> = V extends object[] ? NestedPath<'array', K, DeepPath<V[number]> | undefined> : V extends unknown[] ? NestedPath<'array', K> : V extends object ? NestedPath<'object', K, DeepPath<V>> : never;
3
- export type DeepPath<T> = {
4
- [K in keyof T]-?: K | DeepNested<T[K], K>;
5
- }[keyof T];
6
- export type RemoveNever<T> = T extends never ? undefined : T;
7
- export type PathHead<Path> = RemoveNever<Path> extends `[${number}].${string}` ? number : RemoveNever<Path> extends `[${number}]${string}` ? number : RemoveNever<Path> extends `${infer R}.${string}` ? R : Path;
8
- export type PathRest<Path> = RemoveNever<Path> extends `[${number}].${infer R}` ? R : RemoveNever<Path> extends `[${number}]${infer R}` ? R : RemoveNever<Path> extends `${string}.${infer R}` ? R : undefined;
1
+ type FilterPath<P> = P extends '' ? undefined : P;
2
+ export type PathHead<Path> = Path extends `[${number}].${string}` ? number : Path extends `[${number}]${string}` ? number : Path extends `${infer R}.${string}` ? R : Path;
3
+ export type PathRest<Path> = Path extends `[${number}].${infer R}` ? FilterPath<R> : Path extends `[${number}]${infer R}` ? FilterPath<R> : Path extends `${string}.${infer R}` ? FilterPath<R> : undefined;
9
4
  export type PathValue<T, Path> = PathHead<Path> extends keyof T ? PathRest<Path> extends string ? PathValue<T[PathHead<Path>], PathRest<Path>> : T[PathHead<Path>] : undefined;
10
5
  export {};
@@ -4,7 +4,7 @@ export type FormPathType = string | number | Array<string | number>;
4
4
  export declare function pathToArr(path?: FormPathType): (string | number)[];
5
5
  export declare function formatFormKey(code?: unknown): string | number;
6
6
  export declare const pickObject: <T, K extends FormPathType = string>(obj: T | undefined, keys: K[] | ((key?: keyof T | undefined, value?: T[keyof T] | undefined) => boolean)) => T | PathValue<T, K> | undefined;
7
- export declare function deepGet<T>(obj?: T, keys?: FormPathType): PathValue<T, never> | undefined;
7
+ export declare function deepGet<T, Path extends FormPathType>(obj?: T, keys?: Path): PathValue<T, Path> | undefined;
8
8
  export declare function deepSet<T, P extends FormPathType>(obj?: T, path?: P, value?: unknown): T | undefined;
9
9
  export declare function comparePrefix(prefix: FormPathType, path: FormPathType): boolean;
10
10
  export declare function getValuePropName(valueProp?: ItemCoreProps['valueProp'], type?: string): string | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@simpleform/form",
3
- "version": "2.1.9",
3
+ "version": "2.1.10",
4
4
  "description": "simple form component",
5
5
  "author": "mezhanglei <496623925@qq.com>",
6
6
  "homepage": "https://github.com/mezhanglei/simpleform#readme",