@lytjs/plugin-form 6.8.0 → 6.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.
package/dist/index.cjs CHANGED
@@ -84,7 +84,7 @@ function validatePattern(value, pattern) {
84
84
  const regex = typeof pattern === "string" ? new RegExp(pattern) : pattern;
85
85
  return regex.test(String(value));
86
86
  }
87
- async function validateFieldValue(name, value, rules, allValues) {
87
+ async function validateFieldValue(_name, value, rules, allValues) {
88
88
  const errors = [];
89
89
  for (const rule of rules) {
90
90
  let isValid = true;
@@ -123,7 +123,7 @@ async function validateFieldValue(name, value, rules, allValues) {
123
123
  break;
124
124
  }
125
125
  if (!isValid) {
126
- let message = rule.message || defaultMessages[rule.type];
126
+ let message = rule.message || defaultMessages[rule.type] || "\u6821\u9A8C\u5931\u8D25";
127
127
  if (rule.type === "min" && rule.value != null) {
128
128
  message = message.replace("{min}", String(rule.value));
129
129
  }
package/dist/index.mjs CHANGED
@@ -59,7 +59,7 @@ function validatePattern(value, pattern) {
59
59
  const regex = typeof pattern === "string" ? new RegExp(pattern) : pattern;
60
60
  return regex.test(String(value));
61
61
  }
62
- async function validateFieldValue(name, value, rules, allValues) {
62
+ async function validateFieldValue(_name, value, rules, allValues) {
63
63
  const errors = [];
64
64
  for (const rule of rules) {
65
65
  let isValid = true;
@@ -98,7 +98,7 @@ async function validateFieldValue(name, value, rules, allValues) {
98
98
  break;
99
99
  }
100
100
  if (!isValid) {
101
- let message = rule.message || defaultMessages[rule.type];
101
+ let message = rule.message || defaultMessages[rule.type] || "\u6821\u9A8C\u5931\u8D25";
102
102
  if (rule.type === "min" && rule.value != null) {
103
103
  message = message.replace("{min}", String(rule.value));
104
104
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lytjs/plugin-form",
3
- "version": "6.8.0",
3
+ "version": "6.9.1",
4
4
  "description": "LytJS official form plugin for form state management, validation, and submission",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
package/dist/index.d.cts DELETED
@@ -1,118 +0,0 @@
1
- import * as _lytjs_core from '@lytjs/core';
2
-
3
- /**
4
- * @lytjs/plugin-form - 类型定义
5
- */
6
- interface FieldValidationRule {
7
- /** 校验类型 */
8
- type: 'required' | 'email' | 'phone' | 'number' | 'min' | 'max' | 'minLength' | 'maxLength' | 'pattern' | 'custom';
9
- /** 错误消息 */
10
- message?: string;
11
- /** 校验值(如 min/max 值等) */
12
- value?: unknown;
13
- /** 自定义校验函数 */
14
- validator?: (value: unknown, allValues: Record<string, unknown>) => boolean | Promise<boolean>;
15
- }
16
- interface FieldConfig {
17
- /** 字段初始值 */
18
- initialValue?: unknown;
19
- /** 校验规则 */
20
- rules?: FieldValidationRule[];
21
- /** 字段标签 */
22
- label?: string;
23
- /** 字段是否禁用 */
24
- disabled?: boolean;
25
- /** 字段是否只读 */
26
- readOnly?: boolean;
27
- }
28
- interface FormConfig {
29
- /** 字段配置 */
30
- fields?: Record<string, FieldConfig>;
31
- /** 初始值 */
32
- initialValues?: Record<string, unknown>;
33
- /** 是否在提交时校验 */
34
- validateOnSubmit?: boolean;
35
- /** 是否在字段变化时校验 */
36
- validateOnChange?: boolean;
37
- /** 是否在字段失焦时校验 */
38
- validateOnBlur?: boolean;
39
- }
40
- interface FieldState {
41
- /** 字段值 */
42
- value: unknown;
43
- /** 字段错误 */
44
- errors: string[];
45
- /** 字段是否被触碰过 */
46
- touched: boolean;
47
- /** 字段是否禁用 */
48
- disabled: boolean;
49
- /** 字段是否只读 */
50
- readOnly: boolean;
51
- /** 字段是否正在校验中 */
52
- validating: boolean;
53
- /** 字段是否校验通过 */
54
- valid: boolean;
55
- }
56
- interface FormState {
57
- /** 所有字段状态 */
58
- fields: Record<string, FieldState>;
59
- /** 表单是否正在提交 */
60
- isSubmitting: boolean;
61
- /** 表单是否有效 */
62
- isValid: boolean;
63
- /** 表单是否被触碰过 */
64
- isTouched: boolean;
65
- /** 表单是否正在校验 */
66
- isValidating: boolean;
67
- /** 表单是否被修改过 */
68
- isDirty: boolean;
69
- }
70
- interface FormInstance {
71
- /** 表单当前状态 */
72
- readonly state: FormState;
73
- /** 获取字段值 */
74
- getValue: (name: string) => unknown;
75
- /** 设置字段值 */
76
- setValue: (name: string, value: unknown) => void;
77
- /** 获取所有值 */
78
- getValues: () => Record<string, unknown>;
79
- /** 设置多个字段值 */
80
- setValues: (values: Record<string, unknown>) => void;
81
- /** 获取字段错误 */
82
- getErrors: (name: string) => string[];
83
- /** 设置字段错误 */
84
- setErrors: (name: string, errors: string[]) => void;
85
- /** 标记字段为已触碰 */
86
- touchField: (name: string) => void;
87
- /** 触碰所有字段 */
88
- touchAllFields: () => void;
89
- /** 重置表单 */
90
- reset: () => void;
91
- /** 重置为初始值 */
92
- resetToInitial: () => void;
93
- /** 校验单个字段 */
94
- validateField: (name: string) => Promise<boolean>;
95
- /** 校验整个表单 */
96
- validate: () => Promise<boolean>;
97
- /** 提交表单 */
98
- submit: (callback?: (values: Record<string, unknown>) => void | Promise<void>) => Promise<boolean>;
99
- /** 设置字段禁用状态 */
100
- setFieldDisabled: (name: string, disabled: boolean) => void;
101
- /** 设置字段只读状态 */
102
- setFieldReadOnly: (name: string, readOnly: boolean) => void;
103
- /** 获取字段配置 */
104
- getFieldConfig: (name: string) => FieldConfig | undefined;
105
- /** 注册新字段 */
106
- registerField: (name: string, config?: FieldConfig) => void;
107
- /** 注销字段 */
108
- unregisterField: (name: string) => void;
109
- }
110
- interface FormOptions extends FormConfig {
111
- /** 插件名称 */
112
- name?: string;
113
- }
114
-
115
- declare function createFormManager(options?: FormOptions): FormInstance;
116
- declare const pluginForm: _lytjs_core.PluginDefinition<unknown>;
117
-
118
- export { type FieldConfig, type FieldState, type FieldValidationRule, type FormInstance, type FormOptions, type FormState, createFormManager, pluginForm as default };
package/dist/index.d.ts DELETED
@@ -1,118 +0,0 @@
1
- import * as _lytjs_core from '@lytjs/core';
2
-
3
- /**
4
- * @lytjs/plugin-form - 类型定义
5
- */
6
- interface FieldValidationRule {
7
- /** 校验类型 */
8
- type: 'required' | 'email' | 'phone' | 'number' | 'min' | 'max' | 'minLength' | 'maxLength' | 'pattern' | 'custom';
9
- /** 错误消息 */
10
- message?: string;
11
- /** 校验值(如 min/max 值等) */
12
- value?: unknown;
13
- /** 自定义校验函数 */
14
- validator?: (value: unknown, allValues: Record<string, unknown>) => boolean | Promise<boolean>;
15
- }
16
- interface FieldConfig {
17
- /** 字段初始值 */
18
- initialValue?: unknown;
19
- /** 校验规则 */
20
- rules?: FieldValidationRule[];
21
- /** 字段标签 */
22
- label?: string;
23
- /** 字段是否禁用 */
24
- disabled?: boolean;
25
- /** 字段是否只读 */
26
- readOnly?: boolean;
27
- }
28
- interface FormConfig {
29
- /** 字段配置 */
30
- fields?: Record<string, FieldConfig>;
31
- /** 初始值 */
32
- initialValues?: Record<string, unknown>;
33
- /** 是否在提交时校验 */
34
- validateOnSubmit?: boolean;
35
- /** 是否在字段变化时校验 */
36
- validateOnChange?: boolean;
37
- /** 是否在字段失焦时校验 */
38
- validateOnBlur?: boolean;
39
- }
40
- interface FieldState {
41
- /** 字段值 */
42
- value: unknown;
43
- /** 字段错误 */
44
- errors: string[];
45
- /** 字段是否被触碰过 */
46
- touched: boolean;
47
- /** 字段是否禁用 */
48
- disabled: boolean;
49
- /** 字段是否只读 */
50
- readOnly: boolean;
51
- /** 字段是否正在校验中 */
52
- validating: boolean;
53
- /** 字段是否校验通过 */
54
- valid: boolean;
55
- }
56
- interface FormState {
57
- /** 所有字段状态 */
58
- fields: Record<string, FieldState>;
59
- /** 表单是否正在提交 */
60
- isSubmitting: boolean;
61
- /** 表单是否有效 */
62
- isValid: boolean;
63
- /** 表单是否被触碰过 */
64
- isTouched: boolean;
65
- /** 表单是否正在校验 */
66
- isValidating: boolean;
67
- /** 表单是否被修改过 */
68
- isDirty: boolean;
69
- }
70
- interface FormInstance {
71
- /** 表单当前状态 */
72
- readonly state: FormState;
73
- /** 获取字段值 */
74
- getValue: (name: string) => unknown;
75
- /** 设置字段值 */
76
- setValue: (name: string, value: unknown) => void;
77
- /** 获取所有值 */
78
- getValues: () => Record<string, unknown>;
79
- /** 设置多个字段值 */
80
- setValues: (values: Record<string, unknown>) => void;
81
- /** 获取字段错误 */
82
- getErrors: (name: string) => string[];
83
- /** 设置字段错误 */
84
- setErrors: (name: string, errors: string[]) => void;
85
- /** 标记字段为已触碰 */
86
- touchField: (name: string) => void;
87
- /** 触碰所有字段 */
88
- touchAllFields: () => void;
89
- /** 重置表单 */
90
- reset: () => void;
91
- /** 重置为初始值 */
92
- resetToInitial: () => void;
93
- /** 校验单个字段 */
94
- validateField: (name: string) => Promise<boolean>;
95
- /** 校验整个表单 */
96
- validate: () => Promise<boolean>;
97
- /** 提交表单 */
98
- submit: (callback?: (values: Record<string, unknown>) => void | Promise<void>) => Promise<boolean>;
99
- /** 设置字段禁用状态 */
100
- setFieldDisabled: (name: string, disabled: boolean) => void;
101
- /** 设置字段只读状态 */
102
- setFieldReadOnly: (name: string, readOnly: boolean) => void;
103
- /** 获取字段配置 */
104
- getFieldConfig: (name: string) => FieldConfig | undefined;
105
- /** 注册新字段 */
106
- registerField: (name: string, config?: FieldConfig) => void;
107
- /** 注销字段 */
108
- unregisterField: (name: string) => void;
109
- }
110
- interface FormOptions extends FormConfig {
111
- /** 插件名称 */
112
- name?: string;
113
- }
114
-
115
- declare function createFormManager(options?: FormOptions): FormInstance;
116
- declare const pluginForm: _lytjs_core.PluginDefinition<unknown>;
117
-
118
- export { type FieldConfig, type FieldState, type FieldValidationRule, type FormInstance, type FormOptions, type FormState, createFormManager, pluginForm as default };