reactaform 1.0.0

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 (71) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +499 -0
  3. package/dist/common-BD9zx3GT.js +1 -0
  4. package/dist/common-BQcVe8MY.mjs +87 -0
  5. package/dist/common-BnnwzTl2.mjs +87 -0
  6. package/dist/common-BxyjIoe1.js +1 -0
  7. package/dist/common-Bzz0clAC.mjs +87 -0
  8. package/dist/common-COyDhNL-.js +1 -0
  9. package/dist/common-DLqVHgfX.mjs +87 -0
  10. package/dist/common-hRFTL4KF.js +1 -0
  11. package/dist/components/LayoutComponents.d.ts +74 -0
  12. package/dist/components/PopupOptionMenu.d.ts +15 -0
  13. package/dist/components/ReactaForm.d.ts +4 -0
  14. package/dist/components/ReactaFormProvider.d.ts +3 -0
  15. package/dist/components/ReactaFormRenderer.d.ts +13 -0
  16. package/dist/components/Tooltip.d.ts +8 -0
  17. package/dist/components/VirtualizedFieldList.d.ts +36 -0
  18. package/dist/components/fields/CheckboxInput.d.ts +9 -0
  19. package/dist/components/fields/ColorInput.d.ts +17 -0
  20. package/dist/components/fields/DateInput.d.ts +11 -0
  21. package/dist/components/fields/DropdownInput.d.ts +13 -0
  22. package/dist/components/fields/EmailInput.d.ts +5 -0
  23. package/dist/components/fields/FileInput.d.ts +5 -0
  24. package/dist/components/fields/FloatArrayInput.d.ts +5 -0
  25. package/dist/components/fields/FloatInput.d.ts +24 -0
  26. package/dist/components/fields/ImageDisplay.d.ts +17 -0
  27. package/dist/components/fields/IntegerArrayInput.d.ts +23 -0
  28. package/dist/components/fields/IntegerInput.d.ts +28 -0
  29. package/dist/components/fields/MultiSelection.d.ts +9 -0
  30. package/dist/components/fields/MultilineTextInput.d.ts +6 -0
  31. package/dist/components/fields/NumericStepperInput.d.ts +6 -0
  32. package/dist/components/fields/PhoneInput.d.ts +6 -0
  33. package/dist/components/fields/RadioInput.d.ts +13 -0
  34. package/dist/components/fields/RatingInput.d.ts +6 -0
  35. package/dist/components/fields/Separator.d.ts +20 -0
  36. package/dist/components/fields/SliderInput.d.ts +22 -0
  37. package/dist/components/fields/SpinInput.d.ts +6 -0
  38. package/dist/components/fields/SwitchInput.d.ts +13 -0
  39. package/dist/components/fields/TextInput.d.ts +6 -0
  40. package/dist/components/fields/TimeInput.d.ts +6 -0
  41. package/dist/components/fields/UnitValueInput.d.ts +5 -0
  42. package/dist/components/fields/UrlInput.d.ts +21 -0
  43. package/dist/components/renderFields.d.ts +4 -0
  44. package/dist/core/fieldVisibility.d.ts +25 -0
  45. package/dist/core/index.d.ts +19 -0
  46. package/dist/core/reactaFormModel.d.ts +38 -0
  47. package/dist/core/reactaFormTypes.d.ts +137 -0
  48. package/dist/core/registries/baseRegistry.d.ts +15 -0
  49. package/dist/core/registries/componentRegistry.d.ts +9 -0
  50. package/dist/core/registries/index.d.ts +7 -0
  51. package/dist/core/registries/submissionHandlerRegistry.d.ts +6 -0
  52. package/dist/core/registries/validationHandlerRegistry.d.ts +16 -0
  53. package/dist/core/submitForm.d.ts +12 -0
  54. package/dist/core/validation.d.ts +10 -0
  55. package/dist/hooks/useDebouncedCallback.d.ts +25 -0
  56. package/dist/hooks/useReactaFormContext.d.ts +4 -0
  57. package/dist/index.d.ts +15 -0
  58. package/dist/reactaform.cjs.js +289 -0
  59. package/dist/reactaform.css +1 -0
  60. package/dist/reactaform.es.js +5085 -0
  61. package/dist/templates/conditionalAddress.d.ts +3 -0
  62. package/dist/templates/contactForm.d.ts +3 -0
  63. package/dist/templates/optionsAndParents.d.ts +3 -0
  64. package/dist/templates/surveyForm.d.ts +3 -0
  65. package/dist/utils/cssClasses.d.ts +14 -0
  66. package/dist/utils/definitionSerializers.d.ts +62 -0
  67. package/dist/utils/groupingHelpers.d.ts +24 -0
  68. package/dist/utils/index.d.ts +11 -0
  69. package/dist/utils/translationCache.d.ts +43 -0
  70. package/dist/utils/unitValueMapper.d.ts +8 -0
  71. package/package.json +54 -0
@@ -0,0 +1,87 @@
1
+ const e = "Soumettre", t = "Rouge", r = "Bleu", o = "Vert", a = "Jaune", i = "Violet", n = "Cyan", s = "Magenta", u = "Noir", l = "Blanc", m = "Orange", d = "Gris", c = "Marron", b = "Rose", v = "Personnalisé", h = "Incrémenter", f = "Décrémenter", p = "Fuseau horaire", D = {
2
+ Submit: e,
3
+ "Please fix validation errors before submitting.": "Veuillez corriger les erreurs de validation avant de soumettre.",
4
+ "Data transformation errors occurred.": "Des erreurs de transformation de données se sont produites.",
5
+ "Validation errors occurred.": "Des erreurs de validation se sont produites.",
6
+ "Submission failed.": "L'envoi a échoué.",
7
+ "Submission handler error occurred.": "Une erreur du gestionnaire d'envoi s'est produite.",
8
+ "Form submitted successfully.": "Formulaire soumis avec succès.",
9
+ Red: t,
10
+ Blue: r,
11
+ Green: o,
12
+ Yellow: a,
13
+ Purple: i,
14
+ Cyan: n,
15
+ Magenta: s,
16
+ Black: u,
17
+ White: l,
18
+ Orange: m,
19
+ Gray: d,
20
+ Brown: c,
21
+ Pink: b,
22
+ "Light Gray": "Gris Clair",
23
+ Custom: v,
24
+ "Value required": "Valeur requise",
25
+ "Invalid option selected": "Option invalide sélectionnée",
26
+ "Must be a valid integer": "Doit être un entier valide",
27
+ "Must be an integer": "Doit être un entier",
28
+ "Must be a valid float": "Doit être un nombre décimal valide",
29
+ "Must be a valid number": "Doit être un nombre valide",
30
+ "Invalid number": "Nombre invalide",
31
+ "Must be ≥{{1}}": "Doit être ≥{{1}}",
32
+ "Must be ≤{{1}}": "Doit être ≤{{1}}",
33
+ "Value should be at least {{1}}": "La valeur doit être d'au moins {{1}}",
34
+ "Value should be at most {{1}}": "La valeur doit être d'au plus {{1}}",
35
+ "Must be at least {{1}} characters": "Doit contenir au moins {{1}} caractères",
36
+ "Must be at most {{1}} characters": "Doit contenir au maximum {{1}} caractères",
37
+ "Input does not match pattern: {{1}}": "L'entrée ne correspond pas au modèle : {{1}}",
38
+ "Must be valid email format": "Doit être un format d'e-mail valide",
39
+ "Email does not match pattern: {{%1}}": "L'e-mail ne correspond pas au modèle : {{%1}}",
40
+ "Must be a valid URL": "Doit être une URL valide",
41
+ "Phone number does not match pattern: {{1}}": "Le numéro de téléphone ne correspond pas au modèle : {{1}}",
42
+ "Each value must be a valid integer": "Chaque valeur doit être un entier valide",
43
+ "Each value must be a valid float": "Chaque valeur doit être un nombre décimal valide",
44
+ "Minimum number of values: {{1}}": "Nombre minimum de valeurs : {{1}}",
45
+ "Maximum number of values: {{1}}": "Nombre maximum de valeurs : {{1}}",
46
+ "Minimum number of rows: {{1}}": "Nombre minimum de lignes : {{1}}",
47
+ "Maximum number of rows: {{1}}": "Nombre maximum de lignes : {{1}}",
48
+ "Invalid date format": "Format de date invalide",
49
+ "Invalid date/time": "Date/heure invalide",
50
+ "Invalid time format": "Format d'heure invalide",
51
+ "Date must be on or after {{1}}": "La date doit être le {{1}} ou après",
52
+ "Date must be on or before {{1}}": "La date doit être le {{1}} ou avant",
53
+ "Date/time must be on or after {{1}}": "La date/heure doit être le {{1}} ou après",
54
+ "Date/time must be on or before {{1}}": "La date/heure doit être le {{1}} ou avant",
55
+ "Time must be on or after {{1}}": "L'heure doit être {{1}} ou après",
56
+ "Time must be on or before {{1}}": "L'heure doit être {{1}} ou avant",
57
+ "Choose File...": "Choisir un fichier...",
58
+ "Choose Files...": "Choisir des fichiers...",
59
+ "No file selected": "Aucun fichier sélectionné",
60
+ "Show selected files": "Afficher les fichiers sélectionnés",
61
+ "Selected File": "Fichier sélectionné",
62
+ "Selected Files": "Fichiers sélectionnés",
63
+ Increment: h,
64
+ Decrement: f,
65
+ Timezone: p
66
+ };
67
+ export {
68
+ u as Black,
69
+ r as Blue,
70
+ c as Brown,
71
+ v as Custom,
72
+ n as Cyan,
73
+ f as Decrement,
74
+ d as Gray,
75
+ o as Green,
76
+ h as Increment,
77
+ s as Magenta,
78
+ m as Orange,
79
+ b as Pink,
80
+ i as Purple,
81
+ t as Red,
82
+ e as Submit,
83
+ p as Timezone,
84
+ l as White,
85
+ a as Yellow,
86
+ D as default
87
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="Soumettre",t="Rouge",r="Bleu",o="Vert",a="Jaune",i="Violet",n="Cyan",s="Magenta",u="Noir",l="Blanc",m="Orange",d="Gris",c="Marron",b="Rose",v="Personnalisé",h="Incrémenter",f="Décrémenter",p="Fuseau horaire",D={Submit:e,"Please fix validation errors before submitting.":"Veuillez corriger les erreurs de validation avant de soumettre.","Data transformation errors occurred.":"Des erreurs de transformation de données se sont produites.","Validation errors occurred.":"Des erreurs de validation se sont produites.","Submission failed.":"L'envoi a échoué.","Submission handler error occurred.":"Une erreur du gestionnaire d'envoi s'est produite.","Form submitted successfully.":"Formulaire soumis avec succès.",Red:t,Blue:r,Green:o,Yellow:a,Purple:i,Cyan:n,Magenta:s,Black:u,White:l,Orange:m,Gray:d,Brown:c,Pink:b,"Light Gray":"Gris Clair",Custom:v,"Value required":"Valeur requise","Invalid option selected":"Option invalide sélectionnée","Must be a valid integer":"Doit être un entier valide","Must be an integer":"Doit être un entier","Must be a valid float":"Doit être un nombre décimal valide","Must be a valid number":"Doit être un nombre valide","Invalid number":"Nombre invalide","Must be ≥{{1}}":"Doit être ≥{{1}}","Must be ≤{{1}}":"Doit être ≤{{1}}","Value should be at least {{1}}":"La valeur doit être d'au moins {{1}}","Value should be at most {{1}}":"La valeur doit être d'au plus {{1}}","Must be at least {{1}} characters":"Doit contenir au moins {{1}} caractères","Must be at most {{1}} characters":"Doit contenir au maximum {{1}} caractères","Input does not match pattern: {{1}}":"L'entrée ne correspond pas au modèle : {{1}}","Must be valid email format":"Doit être un format d'e-mail valide","Email does not match pattern: {{%1}}":"L'e-mail ne correspond pas au modèle : {{%1}}","Must be a valid URL":"Doit être une URL valide","Phone number does not match pattern: {{1}}":"Le numéro de téléphone ne correspond pas au modèle : {{1}}","Each value must be a valid integer":"Chaque valeur doit être un entier valide","Each value must be a valid float":"Chaque valeur doit être un nombre décimal valide","Minimum number of values: {{1}}":"Nombre minimum de valeurs : {{1}}","Maximum number of values: {{1}}":"Nombre maximum de valeurs : {{1}}","Minimum number of rows: {{1}}":"Nombre minimum de lignes : {{1}}","Maximum number of rows: {{1}}":"Nombre maximum de lignes : {{1}}","Invalid date format":"Format de date invalide","Invalid date/time":"Date/heure invalide","Invalid time format":"Format d'heure invalide","Date must be on or after {{1}}":"La date doit être le {{1}} ou après","Date must be on or before {{1}}":"La date doit être le {{1}} ou avant","Date/time must be on or after {{1}}":"La date/heure doit être le {{1}} ou après","Date/time must be on or before {{1}}":"La date/heure doit être le {{1}} ou avant","Time must be on or after {{1}}":"L'heure doit être {{1}} ou après","Time must be on or before {{1}}":"L'heure doit être {{1}} ou avant","Choose File...":"Choisir un fichier...","Choose Files...":"Choisir des fichiers...","No file selected":"Aucun fichier sélectionné","Show selected files":"Afficher les fichiers sélectionnés","Selected File":"Fichier sélectionné","Selected Files":"Fichiers sélectionnés",Increment:h,Decrement:f,Timezone:p};exports.Black=u;exports.Blue=r;exports.Brown=c;exports.Custom=v;exports.Cyan=n;exports.Decrement=f;exports.Gray=d;exports.Green=o;exports.Increment=h;exports.Magenta=s;exports.Orange=m;exports.Pink=b;exports.Purple=i;exports.Red=t;exports.Submit=e;exports.Timezone=p;exports.White=l;exports.Yellow=a;exports.default=D;
@@ -0,0 +1,87 @@
1
+ const e = "提交", t = "红色", o = "蓝色", a = "绿色", n = "黄色", s = "紫色", r = "青色", i = "品红", u = "黑色", m = "白色", l = "橙色", c = "灰色", b = "棕色", d = "粉色", f = "自定义", h = "增加", v = "减少", M = "时区", g = {
2
+ Submit: "提交",
3
+ "Please fix validation errors before submitting.": "请在提交前修复验证错误。",
4
+ "Data transformation errors occurred.": "发生数据转换错误。",
5
+ "Validation errors occurred.": "发生验证错误。",
6
+ "Submission failed.": "提交失败。",
7
+ "Submission handler error occurred.": "提交处理程序错误。",
8
+ "Form submitted successfully.": "表单提交成功。",
9
+ Red: "红色",
10
+ Blue: "蓝色",
11
+ Green: "绿色",
12
+ Yellow: "黄色",
13
+ Purple: "紫色",
14
+ Cyan: "青色",
15
+ Magenta: "品红",
16
+ Black: "黑色",
17
+ White: "白色",
18
+ Orange: "橙色",
19
+ Gray: "灰色",
20
+ Brown: "棕色",
21
+ Pink: "粉色",
22
+ "Light Gray": "浅灰色",
23
+ Custom: "自定义",
24
+ "Value required": "必填项",
25
+ "Invalid option selected": "所选项无效",
26
+ "Must be a valid integer": "必须是有效的整数",
27
+ "Must be an integer": "必须是整数",
28
+ "Must be a valid float": "必须是有效的浮点数",
29
+ "Must be a valid number": "必须是有效的数字",
30
+ "Invalid number": "无效数字",
31
+ "Must be ≥{{1}}": "必须 ≥{{1}}",
32
+ "Must be ≤{{1}}": "必须 ≤{{1}}",
33
+ "Value should be at least {{1}}": "值至少应为 {{1}}",
34
+ "Value should be at most {{1}}": "值最多应为 {{1}}",
35
+ "Must be at least {{1}} characters": "至少需要 {{1}} 个字符",
36
+ "Must be at most {{1}} characters": "最多只能有 {{1}} 个字符",
37
+ "Input does not match pattern: {{1}}": "输入与模式不匹配:{{1}}",
38
+ "Must be valid email format": "必须是有效的邮箱格式",
39
+ "Email does not match pattern: {{%1}}": "邮箱与模式不匹配:{{%1}}",
40
+ "Must be a valid URL": "必须是有效的网址",
41
+ "Phone number does not match pattern: {{1}}": "电话号码与模式不匹配:{{1}}",
42
+ "Each value must be a valid integer": "每个值都必须是有效的整数",
43
+ "Each value must be a valid float": "每个值都必须是有效的浮点数",
44
+ "Minimum number of values: {{1}}": "最少值数量:{{1}}",
45
+ "Maximum number of values: {{1}}": "最多值数量:{{1}}",
46
+ "Minimum number of rows: {{1}}": "最少行数:{{1}}",
47
+ "Maximum number of rows: {{1}}": "最多行数:{{1}}",
48
+ "Invalid date format": "日期格式无效",
49
+ "Invalid date/time": "日期/时间无效",
50
+ "Invalid time format": "时间格式无效",
51
+ "Date must be on or after {{1}}": "日期必须在 {{1}} 或之后",
52
+ "Date must be on or before {{1}}": "日期必须在 {{1}} 或之前",
53
+ "Date/time must be on or after {{1}}": "日期/时间必须在 {{1}} 或之后",
54
+ "Date/time must be on or before {{1}}": "日期/时间必须在 {{1}} 或之前",
55
+ "Time must be on or after {{1}}": "时间必须在 {{1}} 或之后",
56
+ "Time must be on or before {{1}}": "时间必须在 {{1}} 或之前",
57
+ "Choose File...": "选择文件...",
58
+ "Choose Files...": "选择文件...",
59
+ "No file selected": "未选择文件",
60
+ "Show selected files": "显示已选择的文件",
61
+ "Selected File": "已选择的文件",
62
+ "Selected Files": "已选择的文件",
63
+ Increment: "增加",
64
+ Decrement: "减少",
65
+ Timezone: "时区"
66
+ };
67
+ export {
68
+ u as Black,
69
+ o as Blue,
70
+ b as Brown,
71
+ f as Custom,
72
+ r as Cyan,
73
+ v as Decrement,
74
+ c as Gray,
75
+ a as Green,
76
+ h as Increment,
77
+ i as Magenta,
78
+ l as Orange,
79
+ d as Pink,
80
+ s as Purple,
81
+ t as Red,
82
+ e as Submit,
83
+ M as Timezone,
84
+ m as White,
85
+ n as Yellow,
86
+ g as default
87
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="提交",t="红色",o="蓝色",a="绿色",n="黄色",r="紫色",s="青色",i="品红",u="黑色",l="白色",m="橙色",c="灰色",b="棕色",d="粉色",f="自定义",v="增加",h="减少",M="时区",g={Submit:e,"Please fix validation errors before submitting.":"请在提交前修复验证错误。","Data transformation errors occurred.":"发生数据转换错误。","Validation errors occurred.":"发生验证错误。","Submission failed.":"提交失败。","Submission handler error occurred.":"提交处理程序错误。","Form submitted successfully.":"表单提交成功。",Red:t,Blue:o,Green:a,Yellow:n,Purple:r,Cyan:s,Magenta:i,Black:u,White:l,Orange:m,Gray:c,Brown:b,Pink:d,"Light Gray":"浅灰色",Custom:f,"Value required":"必填项","Invalid option selected":"所选项无效","Must be a valid integer":"必须是有效的整数","Must be an integer":"必须是整数","Must be a valid float":"必须是有效的浮点数","Must be a valid number":"必须是有效的数字","Invalid number":"无效数字","Must be ≥{{1}}":"必须 ≥{{1}}","Must be ≤{{1}}":"必须 ≤{{1}}","Value should be at least {{1}}":"值至少应为 {{1}}","Value should be at most {{1}}":"值最多应为 {{1}}","Must be at least {{1}} characters":"至少需要 {{1}} 个字符","Must be at most {{1}} characters":"最多只能有 {{1}} 个字符","Input does not match pattern: {{1}}":"输入与模式不匹配:{{1}}","Must be valid email format":"必须是有效的邮箱格式","Email does not match pattern: {{%1}}":"邮箱与模式不匹配:{{%1}}","Must be a valid URL":"必须是有效的网址","Phone number does not match pattern: {{1}}":"电话号码与模式不匹配:{{1}}","Each value must be a valid integer":"每个值都必须是有效的整数","Each value must be a valid float":"每个值都必须是有效的浮点数","Minimum number of values: {{1}}":"最少值数量:{{1}}","Maximum number of values: {{1}}":"最多值数量:{{1}}","Minimum number of rows: {{1}}":"最少行数:{{1}}","Maximum number of rows: {{1}}":"最多行数:{{1}}","Invalid date format":"日期格式无效","Invalid date/time":"日期/时间无效","Invalid time format":"时间格式无效","Date must be on or after {{1}}":"日期必须在 {{1}} 或之后","Date must be on or before {{1}}":"日期必须在 {{1}} 或之前","Date/time must be on or after {{1}}":"日期/时间必须在 {{1}} 或之后","Date/time must be on or before {{1}}":"日期/时间必须在 {{1}} 或之前","Time must be on or after {{1}}":"时间必须在 {{1}} 或之后","Time must be on or before {{1}}":"时间必须在 {{1}} 或之前","Choose File...":"选择文件...","Choose Files...":"选择文件...","No file selected":"未选择文件","Show selected files":"显示已选择的文件","Selected File":"已选择的文件","Selected Files":"已选择的文件",Increment:v,Decrement:h,Timezone:M};exports.Black=u;exports.Blue=o;exports.Brown=b;exports.Custom=f;exports.Cyan=s;exports.Decrement=h;exports.Gray=c;exports.Green=a;exports.Increment=v;exports.Magenta=i;exports.Orange=m;exports.Pink=d;exports.Purple=r;exports.Red=t;exports.Submit=e;exports.Timezone=M;exports.White=l;exports.Yellow=n;exports.default=g;
@@ -0,0 +1,87 @@
1
+ const e = "Enviar", o = "Rojo", r = "Azul", a = "Verde", n = "Amarillo", t = "Morado", s = "Cian", i = "Magenta", l = "Negro", c = "Blanco", d = "Naranja", m = "Gris", u = "Marrón", b = "Rosa", v = "Personalizado", f = "Incrementar", h = "Decrementar", M = "Zona horaria", D = {
2
+ Submit: e,
3
+ "Please fix validation errors before submitting.": "Por favor, corrija los errores de validación antes de enviar.",
4
+ "Data transformation errors occurred.": "Se produjeron errores de transformación de datos.",
5
+ "Validation errors occurred.": "Se produjeron errores de validación.",
6
+ "Submission failed.": "El envío falló.",
7
+ "Submission handler error occurred.": "Ocurrió un error en el manejador de envío.",
8
+ "Form submitted successfully.": "Formulario enviado exitosamente.",
9
+ Red: o,
10
+ Blue: r,
11
+ Green: a,
12
+ Yellow: n,
13
+ Purple: t,
14
+ Cyan: s,
15
+ Magenta: i,
16
+ Black: l,
17
+ White: c,
18
+ Orange: d,
19
+ Gray: m,
20
+ Brown: u,
21
+ Pink: b,
22
+ "Light Gray": "Gris Claro",
23
+ Custom: v,
24
+ "Value required": "Valor requerido",
25
+ "Invalid option selected": "Opción seleccionada no válida",
26
+ "Must be a valid integer": "Debe ser un número entero válido",
27
+ "Must be an integer": "Debe ser un número entero",
28
+ "Must be a valid float": "Debe ser un número decimal válido",
29
+ "Must be a valid number": "Debe ser un número válido",
30
+ "Invalid number": "Número no válido",
31
+ "Must be ≥{{1}}": "Debe ser ≥{{1}}",
32
+ "Must be ≤{{1}}": "Debe ser ≤{{1}}",
33
+ "Value should be at least {{1}}": "El valor debe ser al menos {{1}}",
34
+ "Value should be at most {{1}}": "El valor debe ser como máximo {{1}}",
35
+ "Must be at least {{1}} characters": "Debe tener al menos {{1}} caracteres",
36
+ "Must be at most {{1}} characters": "Debe tener como máximo {{1}} caracteres",
37
+ "Input does not match pattern: {{1}}": "La entrada no coincide con el patrón: {{1}}",
38
+ "Must be valid email format": "Debe tener un formato de correo electrónico válido",
39
+ "Email does not match pattern: {{%1}}": "El correo electrónico no coincide con el patrón: {{%1}}",
40
+ "Must be a valid URL": "Debe ser una URL válida",
41
+ "Phone number does not match pattern: {{1}}": "El número de teléfono no coincide con el patrón: {{1}}",
42
+ "Each value must be a valid integer": "Cada valor debe ser un número entero válido",
43
+ "Each value must be a valid float": "Cada valor debe ser un número decimal válido",
44
+ "Minimum number of values: {{1}}": "Número mínimo de valores: {{1}}",
45
+ "Maximum number of values: {{1}}": "Número máximo de valores: {{1}}",
46
+ "Minimum number of rows: {{1}}": "Número mínimo de filas: {{1}}",
47
+ "Maximum number of rows: {{1}}": "Número máximo de filas: {{1}}",
48
+ "Invalid date format": "Formato de fecha no válido",
49
+ "Invalid date/time": "Fecha/hora no válida",
50
+ "Invalid time format": "Formato de hora no válido",
51
+ "Date must be on or after {{1}}": "La fecha debe ser el {{1}} o posterior",
52
+ "Date must be on or before {{1}}": "La fecha debe ser el {{1}} o anterior",
53
+ "Date/time must be on or after {{1}}": "La fecha/hora debe ser el {{1}} o posterior",
54
+ "Date/time must be on or before {{1}}": "La fecha/hora debe ser el {{1}} o anterior",
55
+ "Time must be on or after {{1}}": "La hora debe ser {{1}} o posterior",
56
+ "Time must be on or before {{1}}": "La hora debe ser {{1}} o anterior",
57
+ "Choose File...": "Elegir archivo...",
58
+ "Choose Files...": "Elegir archivos...",
59
+ "No file selected": "Ningún archivo seleccionado",
60
+ "Show selected files": "Mostrar archivos seleccionados",
61
+ "Selected File": "Archivo seleccionado",
62
+ "Selected Files": "Archivos seleccionados",
63
+ Increment: f,
64
+ Decrement: h,
65
+ Timezone: M
66
+ };
67
+ export {
68
+ l as Black,
69
+ r as Blue,
70
+ u as Brown,
71
+ v as Custom,
72
+ s as Cyan,
73
+ h as Decrement,
74
+ m as Gray,
75
+ a as Green,
76
+ f as Increment,
77
+ i as Magenta,
78
+ d as Orange,
79
+ b as Pink,
80
+ t as Purple,
81
+ o as Red,
82
+ e as Submit,
83
+ M as Timezone,
84
+ c as White,
85
+ n as Yellow,
86
+ D as default
87
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="Enviar",o="Rojo",r="Azul",a="Verde",n="Amarillo",t="Morado",i="Cian",s="Magenta",l="Negro",c="Blanco",d="Naranja",m="Gris",u="Marrón",b="Rosa",v="Personalizado",f="Incrementar",h="Decrementar",M="Zona horaria",D={Submit:e,"Please fix validation errors before submitting.":"Por favor, corrija los errores de validación antes de enviar.","Data transformation errors occurred.":"Se produjeron errores de transformación de datos.","Validation errors occurred.":"Se produjeron errores de validación.","Submission failed.":"El envío falló.","Submission handler error occurred.":"Ocurrió un error en el manejador de envío.","Form submitted successfully.":"Formulario enviado exitosamente.",Red:o,Blue:r,Green:a,Yellow:n,Purple:t,Cyan:i,Magenta:s,Black:l,White:c,Orange:d,Gray:m,Brown:u,Pink:b,"Light Gray":"Gris Claro",Custom:v,"Value required":"Valor requerido","Invalid option selected":"Opción seleccionada no válida","Must be a valid integer":"Debe ser un número entero válido","Must be an integer":"Debe ser un número entero","Must be a valid float":"Debe ser un número decimal válido","Must be a valid number":"Debe ser un número válido","Invalid number":"Número no válido","Must be ≥{{1}}":"Debe ser ≥{{1}}","Must be ≤{{1}}":"Debe ser ≤{{1}}","Value should be at least {{1}}":"El valor debe ser al menos {{1}}","Value should be at most {{1}}":"El valor debe ser como máximo {{1}}","Must be at least {{1}} characters":"Debe tener al menos {{1}} caracteres","Must be at most {{1}} characters":"Debe tener como máximo {{1}} caracteres","Input does not match pattern: {{1}}":"La entrada no coincide con el patrón: {{1}}","Must be valid email format":"Debe tener un formato de correo electrónico válido","Email does not match pattern: {{%1}}":"El correo electrónico no coincide con el patrón: {{%1}}","Must be a valid URL":"Debe ser una URL válida","Phone number does not match pattern: {{1}}":"El número de teléfono no coincide con el patrón: {{1}}","Each value must be a valid integer":"Cada valor debe ser un número entero válido","Each value must be a valid float":"Cada valor debe ser un número decimal válido","Minimum number of values: {{1}}":"Número mínimo de valores: {{1}}","Maximum number of values: {{1}}":"Número máximo de valores: {{1}}","Minimum number of rows: {{1}}":"Número mínimo de filas: {{1}}","Maximum number of rows: {{1}}":"Número máximo de filas: {{1}}","Invalid date format":"Formato de fecha no válido","Invalid date/time":"Fecha/hora no válida","Invalid time format":"Formato de hora no válido","Date must be on or after {{1}}":"La fecha debe ser el {{1}} o posterior","Date must be on or before {{1}}":"La fecha debe ser el {{1}} o anterior","Date/time must be on or after {{1}}":"La fecha/hora debe ser el {{1}} o posterior","Date/time must be on or before {{1}}":"La fecha/hora debe ser el {{1}} o anterior","Time must be on or after {{1}}":"La hora debe ser {{1}} o posterior","Time must be on or before {{1}}":"La hora debe ser {{1}} o anterior","Choose File...":"Elegir archivo...","Choose Files...":"Elegir archivos...","No file selected":"Ningún archivo seleccionado","Show selected files":"Mostrar archivos seleccionados","Selected File":"Archivo seleccionado","Selected Files":"Archivos seleccionados",Increment:f,Decrement:h,Timezone:M};exports.Black=l;exports.Blue=r;exports.Brown=u;exports.Custom=v;exports.Cyan=i;exports.Decrement=h;exports.Gray=m;exports.Green=a;exports.Increment=f;exports.Magenta=s;exports.Orange=d;exports.Pink=b;exports.Purple=t;exports.Red=o;exports.Submit=e;exports.Timezone=M;exports.White=c;exports.Yellow=n;exports.default=D;
@@ -0,0 +1,74 @@
1
+ import React from "react";
2
+ import type { DefinitionPropertyField } from "../core/reactaFormTypes";
3
+ /**
4
+ * ColumnFieldLayout - Vertical layout wrapper for form fields
5
+ *
6
+ * This component provides a column-based layout pattern:
7
+ * - Label on top (left-aligned or center-aligned based on labelLayout)
8
+ * - Value/input area below
9
+ * - Optional tooltip support
10
+ * - Error display area
11
+ *
12
+ * Usage:
13
+ * <ColumnFieldLayout field={field} error={error}>
14
+ * <textarea ... />
15
+ * </ColumnFieldLayout>
16
+ */
17
+ export declare const ColumnFieldLayout: React.MemoExoticComponent<({ field, error, children, }: {
18
+ field: DefinitionPropertyField;
19
+ error?: string | null;
20
+ children: React.ReactNode;
21
+ }) => import("react/jsx-runtime").JSX.Element>;
22
+ /**
23
+ * RowFieldLayout - Horizontal layout wrapper for form fields
24
+ *
25
+ * This component provides the traditional two-column layout pattern:
26
+ * - Label on the left using CSS_CLASSES.label
27
+ * - Value/input area on the right
28
+ * - Optional tooltip support
29
+ * - Error display area
30
+ *
31
+ * Usage:
32
+ * <RowFieldLayout field={field} error={error}>
33
+ * <input ... />
34
+ * </RowFieldLayout>
35
+ */
36
+ export declare const RowFieldLayout: React.MemoExoticComponent<({ field, error, children, rightAlign, }: {
37
+ field: DefinitionPropertyField;
38
+ error?: string | null;
39
+ children: React.ReactNode;
40
+ rightAlign?: boolean;
41
+ }) => import("react/jsx-runtime").JSX.Element>;
42
+ /**
43
+ * StandardFieldLayout - Smart layout wrapper that delegates to appropriate layout component
44
+ *
45
+ * This component automatically chooses between row and column layouts based on field.labelLayout:
46
+ * - Uses ColumnFieldLayout when field.labelLayout === 'column'
47
+ * - Uses RowFieldLayout for default/row layout
48
+ * - Maintains consistent API for all field components
49
+ *
50
+ * Usage:
51
+ * <StandardFieldLayout field={field} error={error}>
52
+ * <input ... />
53
+ * </StandardFieldLayout>
54
+ */
55
+ export declare const StandardFieldLayout: ({ field, error, children, rightAlign, }: {
56
+ field: DefinitionPropertyField;
57
+ error?: string | null;
58
+ children: React.ReactNode;
59
+ rightAlign?: boolean;
60
+ }) => import("react/jsx-runtime").JSX.Element;
61
+ export declare const ErrorDiv: React.MemoExoticComponent<({ children }: {
62
+ children: React.ReactNode;
63
+ }) => import("react/jsx-runtime").JSX.Element>;
64
+ /**
65
+ * InstanceName - display and edit an instance name in a compact grid row
66
+ *
67
+ * Props:
68
+ * - `name`: current instance name
69
+ * - `onChange`: callback invoked with new name when edited
70
+ */
71
+ export declare const InstanceName: React.MemoExoticComponent<({ name, onChange }: {
72
+ name: string;
73
+ onChange: (n: string) => void;
74
+ }) => import("react/jsx-runtime").JSX.Element>;
@@ -0,0 +1,15 @@
1
+ export type PopupOptionMenuPosition = {
2
+ x: number;
3
+ y: number;
4
+ };
5
+ export interface PopupOption {
6
+ label: string;
7
+ }
8
+ export interface PopupOptionMenuProps<T extends PopupOption> {
9
+ pos: PopupOptionMenuPosition | null;
10
+ options: T[];
11
+ onClose: () => void;
12
+ onClickOption: (option: T) => void;
13
+ }
14
+ export declare function PopupOptionMenu<T extends PopupOption>({ pos, options, onClose, onClickOption }: PopupOptionMenuProps<T>): import("react").ReactPortal | null;
15
+ export default PopupOptionMenu;
@@ -0,0 +1,4 @@
1
+ import type { ReactaFormProps } from "../core/reactaFormTypes";
2
+ import type React from "react";
3
+ declare const ReactaForm: React.FC<ReactaFormProps>;
4
+ export default ReactaForm;
@@ -0,0 +1,3 @@
1
+ import type { ReactaFormProviderProps } from '../core/reactaFormTypes';
2
+ import '../core/reactaform.css';
3
+ export declare const ReactaFormProvider: ({ children, defaultDefinitionName, defaultStyle, defaultLanguage, defaultDarkMode, defaultLocalizeName, className, }: ReactaFormProviderProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,13 @@
1
+ import type { ReactaDefinition, ReactaInstance } from "../core/reactaFormTypes";
2
+ export interface ReactaFormRendererProps {
3
+ definition: ReactaDefinition;
4
+ instance: ReactaInstance;
5
+ chunkSize?: number;
6
+ chunkDelay?: number;
7
+ enableVirtualization?: boolean;
8
+ virtualizationThreshold?: number;
9
+ virtualContainerHeight?: number;
10
+ estimatedFieldHeight?: number;
11
+ }
12
+ declare const ReactaFormRenderer: React.FC<ReactaFormRendererProps>;
13
+ export default ReactaFormRenderer;
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ type TooltipProps = {
3
+ content: string;
4
+ size?: "small" | "medium" | "large";
5
+ animation?: boolean;
6
+ };
7
+ declare const Tooltip: React.FC<TooltipProps>;
8
+ export default Tooltip;
@@ -0,0 +1,36 @@
1
+ import React from 'react';
2
+ import type { DefinitionPropertyField, FieldValueType, ErrorType } from '../core/reactaFormTypes';
3
+ interface VirtualizedFieldListProps {
4
+ fields: DefinitionPropertyField[];
5
+ valuesMap: Record<string, FieldValueType>;
6
+ visibility: Record<string, boolean>;
7
+ groupState: Record<string, boolean>;
8
+ handleChange: (fieldName: string, value: FieldValueType, error: ErrorType) => void;
9
+ handleError: (fieldName: string, error: ErrorType) => void;
10
+ toggleGroup: (groupName: string) => void;
11
+ t: (key: string) => string;
12
+ renderField: (field: DefinitionPropertyField) => React.ReactNode;
13
+ containerHeight?: number;
14
+ estimatedFieldHeight?: number;
15
+ }
16
+ /**
17
+ * VirtualizedFieldList - Efficiently renders large forms using windowing
18
+ *
19
+ * This component uses react-window to virtualize field rendering, dramatically
20
+ * improving performance for forms with hundreds or thousands of fields by only
21
+ * rendering the fields currently visible in the viewport.
22
+ *
23
+ * Features:
24
+ * - Dynamic windowing (supports different field heights)
25
+ * - Group support with expand/collapse
26
+ * - Visibility filtering
27
+ * - Dynamic height calculation
28
+ * - Memory efficient (only renders visible items)
29
+ *
30
+ * Performance gains:
31
+ * - 100 fields: ~50% faster initial render
32
+ * - 500 fields: ~80% faster, significantly reduced memory
33
+ * - 1000+ fields: ~90% faster, prevents browser lag
34
+ */
35
+ export declare const VirtualizedFieldList: React.FC<VirtualizedFieldListProps>;
36
+ export default VirtualizedFieldList;
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ import type { BaseInputProps, DefinitionPropertyField } from "../../core/reactaFormTypes";
3
+ type CheckboxInputProps = BaseInputProps<boolean, DefinitionPropertyField>;
4
+ /**
5
+ * CheckboxInput
6
+ * Renders a simple checkbox input for boolean values.
7
+ */
8
+ export declare const CheckboxInput: React.FC<CheckboxInputProps>;
9
+ export default CheckboxInput;
@@ -0,0 +1,17 @@
1
+ import React from "react";
2
+ import type { BaseInputProps, DefinitionPropertyField } from "../../core/reactaFormTypes";
3
+ export type ColorInputProps = BaseInputProps<string, DefinitionPropertyField>;
4
+ /**
5
+ * ColorInput Component
6
+ * ---------------------
7
+ * A reusable color input field that supports a predefined list of color options
8
+ * (e.g., Red, Blue, etc.) and also allows the user to choose a custom color via
9
+ * a native HTML `<input type="color">`.
10
+ *
11
+ * Props:
12
+ * - field: field metadata including display name and tooltip.
13
+ * - value: currently selected color (hex string).
14
+ * - onChange: callback to propagate changes to parent form.
15
+ */
16
+ declare const ColorInput: React.FC<ColorInputProps>;
17
+ export default ColorInput;
@@ -0,0 +1,11 @@
1
+ import React from "react";
2
+ import type { DefinitionPropertyField } from "../../core/reactaFormTypes";
3
+ import type { BaseInputProps } from "../../core/reactaFormTypes";
4
+ type DateInputProps = BaseInputProps<string, DefinitionPropertyField>;
5
+ /**
6
+ * DateInput Component
7
+ * -------------------
8
+ * Controlled date input for ReactaForm.
9
+ */
10
+ declare const DateInput: React.FC<DateInputProps>;
11
+ export default DateInput;
@@ -0,0 +1,13 @@
1
+ import React from "react";
2
+ import type { BaseInputProps, DefinitionPropertyField } from "../../core/reactaFormTypes";
3
+ export type DropdownInputProps = BaseInputProps<string, DefinitionPropertyField>;
4
+ /**
5
+ * DropdownInput
6
+ *
7
+ * Renders a select dropdown for selecting a single value from options.
8
+ * - Validates that the selected value is in the options list
9
+ * - Auto-corrects to first option if invalid value provided
10
+ * - Uses custom styling from fieldStyle.optionInput
11
+ */
12
+ declare const DropdownInput: React.FC<DropdownInputProps>;
13
+ export default DropdownInput;
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ import type { DefinitionPropertyField, BaseInputProps } from "../../core/reactaFormTypes";
3
+ export type EmailInputProps = BaseInputProps<string, DefinitionPropertyField>;
4
+ export declare const EmailInput: React.FC<EmailInputProps>;
5
+ export default EmailInput;
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ import type { BaseInputProps, DefinitionPropertyField } from "../../core/reactaFormTypes";
3
+ export type FileInputProps = BaseInputProps<File | File[] | null, DefinitionPropertyField>;
4
+ declare const FileInput: React.FC<FileInputProps>;
5
+ export default FileInput;
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ import type { DefinitionPropertyField, BaseInputProps } from "../../core/reactaFormTypes";
3
+ export type FloatArrayInputProps = BaseInputProps<string | number[], DefinitionPropertyField>;
4
+ declare const FloatArrayInput: React.FC<FloatArrayInputProps>;
5
+ export default FloatArrayInput;
@@ -0,0 +1,24 @@
1
+ import React from "react";
2
+ import type { DefinitionPropertyField } from "../../core/reactaFormTypes";
3
+ import type { BaseInputProps } from "../../core/reactaFormTypes";
4
+ /**
5
+ * FloatInput component
6
+ *
7
+ * This component provides a controlled input field specifically for floating-point numbers.
8
+ * It supports validation for required values, numeric format (including decimals and scientific notation),
9
+ * and optional minimum and maximum constraints with inclusive/exclusive boundaries.
10
+ *
11
+ * Props:
12
+ * - field: The metadata defining this input's configuration and validation rules.
13
+ * - value: The current numeric value to display.
14
+ * - onChange: Callback to notify parent of changes, passing the parsed number and any validation error.
15
+ *
16
+ * Features:
17
+ * - Validates input against a regex allowing floating-point formats.
18
+ * - Shows validation errors inline.
19
+ * - Supports tooltip display for additional field information.
20
+ * - Integrates with Reacta form context for localization and styling.
21
+ */
22
+ export type FloatInputProps = BaseInputProps<string | number, DefinitionPropertyField>;
23
+ declare const FloatInput: React.FC<FloatInputProps>;
24
+ export default FloatInput;
@@ -0,0 +1,17 @@
1
+ import type { BaseInputProps, DefinitionPropertyField } from "../../core/reactaFormTypes";
2
+ export type ImageProps = BaseInputProps<string, DefinitionPropertyField>;
3
+ /**
4
+ * ImageDisplay is a React component that renders an image with optional
5
+ * localization and flexible layout/styling options.
6
+ *
7
+ * Features:
8
+ * - Localized image fallback based on current language (e.g., _fr, _zhcn suffixes).
9
+ * - Supports left, center, or right alignment.
10
+ * - Supports both row and column layout via field.labelLayout property
11
+ * - Dynamically handles width and height:
12
+ * - If both are specified, uses them directly.
13
+ * - If only one is specified, uses that and sets the other to `auto`.
14
+ * - If neither is specified, renders the image without size constraints.
15
+ */
16
+ declare const ImageDisplay: React.FC<ImageProps>;
17
+ export default ImageDisplay;
@@ -0,0 +1,23 @@
1
+ import React from "react";
2
+ import type { DefinitionPropertyField } from "../../core/reactaFormTypes";
3
+ import type { BaseInputProps } from "../../core/reactaFormTypes";
4
+ export type IntegerArrayInputProps = BaseInputProps<string | number[], DefinitionPropertyField>;
5
+ /**
6
+ * IntegerArrayInput component
7
+ *
8
+ * A controlled input component for editing an array of integer numbers represented as
9
+ * a delimiter-separated string. It supports:
10
+ * - Parsing and validating each integer value.
11
+ * - Min/max validation for the number of values.
12
+ * - Min/Max limit constraints (inclusive or exclusive) per value.
13
+ * - Inline error display.
14
+ * - Tooltip support for field help.
15
+ * - Integration with Reacta form context for localization, styles, and validation.
16
+ *
17
+ * Props:
18
+ * - field: Metadata describing the input field, including validation rules and display info.
19
+ * - value: The integer array.
20
+ * - onChange: Callback invoked when input changes, returning the parsed integer array and validation error.
21
+ */
22
+ declare const IntegerArrayInput: React.FC<IntegerArrayInputProps>;
23
+ export default IntegerArrayInput;
@@ -0,0 +1,28 @@
1
+ import React from "react";
2
+ import type { DefinitionPropertyField } from "../../core/reactaFormTypes";
3
+ import type { BaseInputProps } from "../../core/reactaFormTypes";
4
+ /**
5
+ * IntegerInput component
6
+ *
7
+ * This component renders a controlled input field specifically for integer values.
8
+ * It handles validation for required input, integer format, and optional min/max constraints,
9
+ * with inclusive or exclusive boundaries. The component supports inline validation error
10
+ * display and integrates with the Reacta form context for localization, styling, and field metadata.
11
+ *
12
+ * Props:
13
+ * - field: The metadata describing the input field, including validation rules and display info.
14
+ * - value: The current integer value to display.
15
+ * - onChange: Callback invoked when the input changes, providing the parsed integer value and any validation error.
16
+ * - parse: Function to parse string input into an integer.
17
+ * - validNumberRegex: Regex pattern to validate the integer input format.
18
+ * - typeName: Descriptive string for the value type (e.g., "integer") used in validation messages.
19
+ *
20
+ * Features:
21
+ * - Validates input against integer format and required presence.
22
+ * - Enforces min and max constraints with inclusive/exclusive options.
23
+ * - Displays error messages inline below the input.
24
+ * - Supports tooltips for additional user guidance.
25
+ */
26
+ export type IntegerInputProps = BaseInputProps<string | number, DefinitionPropertyField>;
27
+ declare const IntegerInput: React.FC<IntegerInputProps>;
28
+ export default IntegerInput;