@zfqh/uview-x 0.0.5 → 0.0.7
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/CHANGELOG.md +16 -0
- package/README.md +51 -8
- package/components/uv-badge/uv-badge.vue +4 -4
- package/components/uv-button/uv-button.vue +10 -10
- package/components/uv-checkbox/uv-checkbox.vue +11 -9
- package/components/uv-checkbox-group/uv-checkbox-group.vue +2 -2
- package/components/uv-code/uv-code.vue +2 -2
- package/components/uv-dialog/uv-dialog.vue +11 -10
- package/components/uv-form/uv-form.vue +244 -246
- package/components/uv-form-item/uv-form-item.vue +10 -9
- package/components/uv-icon/uv-icon.vue +13 -13
- package/components/uv-input/uv-input.vue +6 -5
- package/components/uv-line/uv-line.vue +7 -6
- package/components/uv-line-progress/uv-line-progress.vue +5 -5
- package/components/uv-loading-icon/uv-loading-icon.vue +9 -8
- package/components/uv-overlay/uv-overlay.vue +3 -2
- package/components/uv-popup/uv-popup.vue +7 -5
- package/components/uv-safe-bottom/uv-safe-bottom.vue +4 -3
- package/components/uv-status-bar/uv-status-bar.vue +4 -3
- package/components/uv-tabs/uv-tabs.vue +15 -12
- package/components/uv-transition/uv-transition.vue +2 -2
- package/hooks/index.ts +5 -5
- package/hooks/useDebounce.ts +33 -35
- package/hooks/useI18n.ts +4 -3
- package/hooks/useThrottle.ts +36 -38
- package/index.ts +50 -29
- package/locales/en.ts +56 -79
- package/locales/es.ts +47 -69
- package/locales/fr.ts +47 -69
- package/locales/index.ts +15 -159
- package/locales/ru.ts +47 -69
- package/locales/zh-Hans.ts +57 -79
- package/locales/zh-Hant.ts +47 -69
- package/package.json +2 -2
- package/types/index.d.ts +68 -66
- package/utils/color.ts +139 -0
- package/utils/compress.ts +28 -28
- package/utils/config.ts +45 -10
- package/utils/debounce.ts +4 -4
- package/utils/function.ts +2 -87
- package/utils/locale.ts +444 -304
- package/utils/merge.ts +74 -0
- package/utils/platform.ts +28 -28
- package/utils/route.ts +123 -129
- package/utils/scrollbar.ts +19 -19
- package/utils/throttle.ts +4 -4
- package/utils/colorGradient.ts +0 -139
- package/utils/index.ts +0 -58
package/index.ts
CHANGED
|
@@ -1,30 +1,51 @@
|
|
|
1
|
-
import type { App } from 'vue';
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
1
|
+
import type { App } from 'vue';
|
|
2
|
+
import config, { setConfig } from './utils/config';
|
|
3
|
+
import type { UViewConfigOptions, UViewColor, UViewConfig } from './utils/config';
|
|
4
|
+
import type { UViewCompressOptions } from './utils/compress';
|
|
5
|
+
import * as test from './utils/test';
|
|
6
|
+
import { createI18n, getLocale, getLocaleMessage, setLocale } from './utils/locale';
|
|
7
|
+
import type { UViewI18nMessages, UViewCreateI18nOptions, UViewI18nOptions } from './utils/locale';
|
|
8
|
+
// #ifdef WEB || H5
|
|
9
|
+
import { applyScrollbar } from './utils/scrollbar';
|
|
10
|
+
// #endif
|
|
11
|
+
|
|
12
|
+
export * from './hooks';
|
|
13
|
+
export * from './utils/route';
|
|
14
|
+
|
|
15
|
+
export { default as compress } from './utils/compress';
|
|
16
|
+
export { default as debounce } from './utils/debounce';
|
|
17
|
+
export { default as http } from './utils/http';
|
|
18
|
+
export { default as throttle } from './utils/throttle';
|
|
19
|
+
export { test };
|
|
20
|
+
|
|
21
|
+
export { config, setConfig };
|
|
22
|
+
export type { UViewCompressOptions, UViewConfigOptions, UViewColor, UViewConfig };
|
|
23
|
+
|
|
24
|
+
export { createI18n, getLocale, getLocaleMessage, setLocale };
|
|
25
|
+
export type { UViewI18nMessages, UViewCreateI18nOptions, UViewI18nOptions };
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* uview-x 插件。
|
|
29
|
+
*
|
|
30
|
+
* - `app.use(UviewX, options)`:安装时应用初始化配置(runtime config + i18n);
|
|
31
|
+
* - `app.use(UviewX)`:使用此前 `setConfig` 的配置或默认值;
|
|
32
|
+
* - 不向 app / uni 注入任何全局对象;
|
|
33
|
+
* - H5 下按 `config.scrollbar` 注入全局滚动条样式(默认隐藏)。
|
|
21
34
|
*/
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
35
|
+
export interface UViewPlugin {
|
|
36
|
+
install(app: App, options?: UViewConfigOptions): void;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
const plugin: UViewPlugin = {
|
|
40
|
+
install(app: App, options?: UViewConfigOptions): void {
|
|
41
|
+
void app;
|
|
42
|
+
if (options) {
|
|
43
|
+
setConfig(options);
|
|
44
|
+
}
|
|
45
|
+
// #ifdef WEB || H5
|
|
46
|
+
applyScrollbar(config.scrollbar);
|
|
47
|
+
// #endif
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
export default plugin;
|
package/locales/en.ts
CHANGED
|
@@ -1,79 +1,56 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* uview-x
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* `
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
uv:
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
max: '%s cannot be longer than %s characters',
|
|
58
|
-
range: '%s must be between %s and %s characters',
|
|
59
|
-
},
|
|
60
|
-
number: {
|
|
61
|
-
len: '%s must equal %s',
|
|
62
|
-
min: '%s cannot be less than %s',
|
|
63
|
-
max: '%s cannot be greater than %s',
|
|
64
|
-
range: '%s must be between %s and %s',
|
|
65
|
-
},
|
|
66
|
-
array: {
|
|
67
|
-
len: '%s must be exactly %s in length',
|
|
68
|
-
min: '%s cannot be less than %s in length',
|
|
69
|
-
max: '%s cannot be greater than %s in length',
|
|
70
|
-
range: '%s must be between %s and %s in length',
|
|
71
|
-
},
|
|
72
|
-
pattern: {
|
|
73
|
-
mismatch: '%s value %s does not match pattern %s',
|
|
74
|
-
},
|
|
75
|
-
},
|
|
76
|
-
},
|
|
77
|
-
};
|
|
78
|
-
|
|
79
|
-
export default en;
|
|
1
|
+
/**
|
|
2
|
+
* uview-x 默认组件语言包:英文(en),也是组件内置默认语言。
|
|
3
|
+
*
|
|
4
|
+
* 内部由 `utils/locale.ts` 聚合;`createI18n` 会自动注入并允许同名扁平 key 覆盖。
|
|
5
|
+
* 键空间固定为扁平 `uv.*`,`uv.form.*` 与 async-validator 默认 messages 对齐,`%s` 占位符由校验器替换。
|
|
6
|
+
*/
|
|
7
|
+
const en = {
|
|
8
|
+
'uv.dialog.title': 'Tips',
|
|
9
|
+
'uv.dialog.cancel': 'Cancel',
|
|
10
|
+
'uv.dialog.confirm': 'OK',
|
|
11
|
+
'uv.code.start': 'Get code',
|
|
12
|
+
// 组件会把 x / X 替换为剩余秒数
|
|
13
|
+
'uv.code.change': 'X seconds to resend',
|
|
14
|
+
'uv.code.end': 'Resend',
|
|
15
|
+
'uv.time.justNow': 'Just now',
|
|
16
|
+
'uv.time.minutesAgo': '{n} minutes ago',
|
|
17
|
+
'uv.time.hoursAgo': '{n} hours ago',
|
|
18
|
+
'uv.time.daysAgo': '{n} days ago',
|
|
19
|
+
'uv.time.monthsAgo': '{n} months ago',
|
|
20
|
+
'uv.time.yearsAgo': '{n} years ago',
|
|
21
|
+
'uv.form.default': 'Validation error on field %s',
|
|
22
|
+
'uv.form.required': '%s is required',
|
|
23
|
+
'uv.form.enum': '%s must be one of %s',
|
|
24
|
+
'uv.form.whitespace': '%s cannot be empty',
|
|
25
|
+
'uv.form.date.format': '%s date %s is invalid for format %s',
|
|
26
|
+
'uv.form.date.parse': '%s date could not be parsed, %s is invalid',
|
|
27
|
+
'uv.form.date.invalid': '%s date %s is invalid',
|
|
28
|
+
'uv.form.types.string': '%s is not a %s',
|
|
29
|
+
'uv.form.types.method': '%s is not a %s (function)',
|
|
30
|
+
'uv.form.types.array': '%s is not an %s',
|
|
31
|
+
'uv.form.types.object': '%s is not an %s',
|
|
32
|
+
'uv.form.types.number': '%s is not a %s',
|
|
33
|
+
'uv.form.types.date': '%s is not a %s',
|
|
34
|
+
'uv.form.types.boolean': '%s is not a %s',
|
|
35
|
+
'uv.form.types.integer': '%s is not an %s',
|
|
36
|
+
'uv.form.types.float': '%s is not a %s',
|
|
37
|
+
'uv.form.types.regexp': '%s is not a valid %s',
|
|
38
|
+
'uv.form.types.email': '%s is not a valid %s',
|
|
39
|
+
'uv.form.types.url': '%s is not a valid %s',
|
|
40
|
+
'uv.form.types.hex': '%s is not a valid %s',
|
|
41
|
+
'uv.form.string.len': '%s must be exactly %s characters',
|
|
42
|
+
'uv.form.string.min': '%s must be at least %s characters',
|
|
43
|
+
'uv.form.string.max': '%s cannot be longer than %s characters',
|
|
44
|
+
'uv.form.string.range': '%s must be between %s and %s characters',
|
|
45
|
+
'uv.form.number.len': '%s must equal %s',
|
|
46
|
+
'uv.form.number.min': '%s cannot be less than %s',
|
|
47
|
+
'uv.form.number.max': '%s cannot be greater than %s',
|
|
48
|
+
'uv.form.number.range': '%s must be between %s and %s',
|
|
49
|
+
'uv.form.array.len': '%s must be exactly %s in length',
|
|
50
|
+
'uv.form.array.min': '%s cannot be less than %s in length',
|
|
51
|
+
'uv.form.array.max': '%s cannot be greater than %s in length',
|
|
52
|
+
'uv.form.array.range': '%s must be between %s and %s in length',
|
|
53
|
+
'uv.form.pattern.mismatch': '%s value %s does not match pattern %s',
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
export default en;
|
package/locales/es.ts
CHANGED
|
@@ -3,77 +3,55 @@
|
|
|
3
3
|
*
|
|
4
4
|
* 不参与内部聚合、不会被 `createI18n` 自动合并;需要西班牙语时由使用方显式引入并合并:
|
|
5
5
|
* `import es from '@zfqh/uview-x/locales/es'`,再在 `createI18n({ messages: { es } })` 中使用。
|
|
6
|
-
*
|
|
6
|
+
* 键空间固定为扁平 `uv.*`,`uv.form.*` 与 async-validator 默认 messages 对齐,`%s` 占位符由校验器替换。
|
|
7
7
|
*/
|
|
8
8
|
const es = {
|
|
9
|
-
uv:
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
len: '%s debe tener exactamente %s caracteres',
|
|
56
|
-
min: '%s debe tener al menos %s caracteres',
|
|
57
|
-
max: '%s no puede tener más de %s caracteres',
|
|
58
|
-
range: '%s debe tener entre %s y %s caracteres',
|
|
59
|
-
},
|
|
60
|
-
number: {
|
|
61
|
-
len: '%s debe ser igual a %s',
|
|
62
|
-
min: '%s no puede ser menor que %s',
|
|
63
|
-
max: '%s no puede ser mayor que %s',
|
|
64
|
-
range: '%s debe estar entre %s y %s',
|
|
65
|
-
},
|
|
66
|
-
array: {
|
|
67
|
-
len: '%s debe tener exactamente %s elementos',
|
|
68
|
-
min: '%s no puede tener menos de %s elementos',
|
|
69
|
-
max: '%s no puede tener más de %s elementos',
|
|
70
|
-
range: '%s debe tener entre %s y %s elementos',
|
|
71
|
-
},
|
|
72
|
-
pattern: {
|
|
73
|
-
mismatch: '%s el valor %s no coincide con el patrón %s',
|
|
74
|
-
},
|
|
75
|
-
},
|
|
76
|
-
},
|
|
9
|
+
'uv.dialog.title': 'Consejo',
|
|
10
|
+
'uv.dialog.cancel': 'Cancelar',
|
|
11
|
+
'uv.dialog.confirm': 'Confirmar',
|
|
12
|
+
'uv.code.start': 'Obtener código',
|
|
13
|
+
// 组件会把 x / X 替换为剩余秒数
|
|
14
|
+
'uv.code.change': 'X segundos para reenviar',
|
|
15
|
+
'uv.code.end': 'Reenviar',
|
|
16
|
+
'uv.time.justNow': 'Ahora mismo',
|
|
17
|
+
'uv.time.minutesAgo': 'hace {n} minutos',
|
|
18
|
+
'uv.time.hoursAgo': 'hace {n} horas',
|
|
19
|
+
'uv.time.daysAgo': 'hace {n} días',
|
|
20
|
+
'uv.time.monthsAgo': 'hace {n} meses',
|
|
21
|
+
'uv.time.yearsAgo': 'hace {n} años',
|
|
22
|
+
'uv.form.default': 'Error de validación en el campo %s',
|
|
23
|
+
'uv.form.required': '%s es obligatorio',
|
|
24
|
+
'uv.form.enum': '%s debe ser uno de %s',
|
|
25
|
+
'uv.form.whitespace': '%s no puede estar vacío',
|
|
26
|
+
'uv.form.date.format': '%s la fecha %s no es válida para el formato %s',
|
|
27
|
+
'uv.form.date.parse': '%s no se pudo analizar la fecha, %s no es válido',
|
|
28
|
+
'uv.form.date.invalid': '%s la fecha %s no es válida',
|
|
29
|
+
'uv.form.types.string': '%s no es de tipo %s',
|
|
30
|
+
'uv.form.types.method': '%s no es de tipo %s (función)',
|
|
31
|
+
'uv.form.types.array': '%s no es de tipo %s',
|
|
32
|
+
'uv.form.types.object': '%s no es de tipo %s',
|
|
33
|
+
'uv.form.types.number': '%s no es de tipo %s',
|
|
34
|
+
'uv.form.types.date': '%s no es de tipo %s',
|
|
35
|
+
'uv.form.types.boolean': '%s no es de tipo %s',
|
|
36
|
+
'uv.form.types.integer': '%s no es de tipo %s',
|
|
37
|
+
'uv.form.types.float': '%s no es de tipo %s',
|
|
38
|
+
'uv.form.types.regexp': '%s no es un %s válido',
|
|
39
|
+
'uv.form.types.email': '%s no es un %s válido',
|
|
40
|
+
'uv.form.types.url': '%s no es un %s válido',
|
|
41
|
+
'uv.form.types.hex': '%s no es un %s válido',
|
|
42
|
+
'uv.form.string.len': '%s debe tener exactamente %s caracteres',
|
|
43
|
+
'uv.form.string.min': '%s debe tener al menos %s caracteres',
|
|
44
|
+
'uv.form.string.max': '%s no puede tener más de %s caracteres',
|
|
45
|
+
'uv.form.string.range': '%s debe tener entre %s y %s caracteres',
|
|
46
|
+
'uv.form.number.len': '%s debe ser igual a %s',
|
|
47
|
+
'uv.form.number.min': '%s no puede ser menor que %s',
|
|
48
|
+
'uv.form.number.max': '%s no puede ser mayor que %s',
|
|
49
|
+
'uv.form.number.range': '%s debe estar entre %s y %s',
|
|
50
|
+
'uv.form.array.len': '%s debe tener exactamente %s elementos',
|
|
51
|
+
'uv.form.array.min': '%s no puede tener menos de %s elementos',
|
|
52
|
+
'uv.form.array.max': '%s no puede tener más de %s elementos',
|
|
53
|
+
'uv.form.array.range': '%s debe tener entre %s y %s elementos',
|
|
54
|
+
'uv.form.pattern.mismatch': '%s el valor %s no coincide con el patrón %s',
|
|
77
55
|
};
|
|
78
56
|
|
|
79
57
|
export default es;
|
package/locales/fr.ts
CHANGED
|
@@ -3,77 +3,55 @@
|
|
|
3
3
|
*
|
|
4
4
|
* 不参与内部聚合、不会被 `createI18n` 自动合并;需要法语时由使用方显式引入并合并:
|
|
5
5
|
* `import fr from '@zfqh/uview-x/locales/fr'`,再在 `createI18n({ messages: { fr } })` 中使用。
|
|
6
|
-
*
|
|
6
|
+
* 键空间固定为扁平 `uv.*`,`uv.form.*` 与 async-validator 默认 messages 对齐,`%s` 占位符由校验器替换。
|
|
7
7
|
*/
|
|
8
8
|
const fr = {
|
|
9
|
-
uv:
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
len: '%s doit contenir exactement %s caractères',
|
|
56
|
-
min: '%s doit contenir au moins %s caractères',
|
|
57
|
-
max: '%s ne peut pas dépasser %s caractères',
|
|
58
|
-
range: '%s doit contenir entre %s et %s caractères',
|
|
59
|
-
},
|
|
60
|
-
number: {
|
|
61
|
-
len: '%s doit être égal à %s',
|
|
62
|
-
min: '%s ne peut pas être inférieur à %s',
|
|
63
|
-
max: '%s ne peut pas être supérieur à %s',
|
|
64
|
-
range: '%s doit être compris entre %s et %s',
|
|
65
|
-
},
|
|
66
|
-
array: {
|
|
67
|
-
len: '%s doit contenir exactement %s éléments',
|
|
68
|
-
min: '%s ne peut pas contenir moins de %s éléments',
|
|
69
|
-
max: '%s ne peut pas contenir plus de %s éléments',
|
|
70
|
-
range: '%s doit contenir entre %s et %s éléments',
|
|
71
|
-
},
|
|
72
|
-
pattern: {
|
|
73
|
-
mismatch: '%s la valeur %s ne correspond pas au motif %s',
|
|
74
|
-
},
|
|
75
|
-
},
|
|
76
|
-
},
|
|
9
|
+
'uv.dialog.title': 'Conseil',
|
|
10
|
+
'uv.dialog.cancel': 'Annuler',
|
|
11
|
+
'uv.dialog.confirm': 'Confirmer',
|
|
12
|
+
'uv.code.start': 'Obtenir le code',
|
|
13
|
+
// 组件会把 x / X 替换为剩余秒数
|
|
14
|
+
'uv.code.change': 'X secondes avant de renvoyer',
|
|
15
|
+
'uv.code.end': 'Renvoyer',
|
|
16
|
+
'uv.time.justNow': "À l'instant",
|
|
17
|
+
'uv.time.minutesAgo': 'il y a {n} minutes',
|
|
18
|
+
'uv.time.hoursAgo': 'il y a {n} heures',
|
|
19
|
+
'uv.time.daysAgo': 'il y a {n} jours',
|
|
20
|
+
'uv.time.monthsAgo': 'il y a {n} mois',
|
|
21
|
+
'uv.time.yearsAgo': 'il y a {n} ans',
|
|
22
|
+
'uv.form.default': 'Erreur de validation du champ %s',
|
|
23
|
+
'uv.form.required': '%s est requis',
|
|
24
|
+
'uv.form.enum': "%s doit être l'un de %s",
|
|
25
|
+
'uv.form.whitespace': '%s ne peut pas être vide',
|
|
26
|
+
'uv.form.date.format': "%s la date %s n'est pas valide pour le format %s",
|
|
27
|
+
'uv.form.date.parse': "%s la date n'a pas pu être analysée, %s n'est pas valide",
|
|
28
|
+
'uv.form.date.invalid': "%s la date %s n'est pas valide",
|
|
29
|
+
'uv.form.types.string': "%s n'est pas de type %s",
|
|
30
|
+
'uv.form.types.method': "%s n'est pas de type %s (fonction)",
|
|
31
|
+
'uv.form.types.array': "%s n'est pas de type %s",
|
|
32
|
+
'uv.form.types.object': "%s n'est pas de type %s",
|
|
33
|
+
'uv.form.types.number': "%s n'est pas de type %s",
|
|
34
|
+
'uv.form.types.date': "%s n'est pas de type %s",
|
|
35
|
+
'uv.form.types.boolean': "%s n'est pas de type %s",
|
|
36
|
+
'uv.form.types.integer': "%s n'est pas de type %s",
|
|
37
|
+
'uv.form.types.float': "%s n'est pas de type %s",
|
|
38
|
+
'uv.form.types.regexp': "%s n'est pas un %s valide",
|
|
39
|
+
'uv.form.types.email': "%s n'est pas un %s valide",
|
|
40
|
+
'uv.form.types.url': "%s n'est pas un %s valide",
|
|
41
|
+
'uv.form.types.hex': "%s n'est pas un %s valide",
|
|
42
|
+
'uv.form.string.len': '%s doit contenir exactement %s caractères',
|
|
43
|
+
'uv.form.string.min': '%s doit contenir au moins %s caractères',
|
|
44
|
+
'uv.form.string.max': '%s ne peut pas dépasser %s caractères',
|
|
45
|
+
'uv.form.string.range': '%s doit contenir entre %s et %s caractères',
|
|
46
|
+
'uv.form.number.len': '%s doit être égal à %s',
|
|
47
|
+
'uv.form.number.min': '%s ne peut pas être inférieur à %s',
|
|
48
|
+
'uv.form.number.max': '%s ne peut pas être supérieur à %s',
|
|
49
|
+
'uv.form.number.range': '%s doit être compris entre %s et %s',
|
|
50
|
+
'uv.form.array.len': '%s doit contenir exactement %s éléments',
|
|
51
|
+
'uv.form.array.min': '%s ne peut pas contenir moins de %s éléments',
|
|
52
|
+
'uv.form.array.max': '%s ne peut pas contenir plus de %s éléments',
|
|
53
|
+
'uv.form.array.range': '%s doit contenir entre %s et %s éléments',
|
|
54
|
+
'uv.form.pattern.mismatch': '%s la valeur %s ne correspond pas au motif %s',
|
|
77
55
|
};
|
|
78
56
|
|
|
79
57
|
export default fr;
|