@redneckz/wildless-cms-uni-blocks 0.14.1017 → 0.14.1018

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 (144) hide show
  1. package/bundle/bundle.umd.js +40 -26
  2. package/bundle/bundle.umd.min.js +1 -1
  3. package/bundle/ui-kit/FormField/Fields/NumbersField.d.ts +2 -0
  4. package/bundle/ui-kit/FormField/InputsMap.d.ts +1 -1
  5. package/bundle/ui-kit/FormField/validators.d.ts +4 -1
  6. package/bundle/ui-kit/Input/InputProps.d.ts +1 -0
  7. package/bundle/utils/isCyrillicWithNumbers.d.ts +1 -0
  8. package/dist/components/ApplicationForm/getInitialFormState.js +2 -0
  9. package/dist/components/ApplicationForm/getInitialFormState.js.map +1 -1
  10. package/dist/ui-kit/FormField/Fields/FileUpload.js +3 -2
  11. package/dist/ui-kit/FormField/Fields/FileUpload.js.map +1 -1
  12. package/dist/ui-kit/FormField/Fields/InternshipStartDateField.js +2 -1
  13. package/dist/ui-kit/FormField/Fields/InternshipStartDateField.js.map +1 -1
  14. package/dist/ui-kit/FormField/Fields/NumbersField.d.ts +2 -0
  15. package/dist/ui-kit/FormField/Fields/NumbersField.js +7 -0
  16. package/dist/ui-kit/FormField/Fields/NumbersField.js.map +1 -0
  17. package/dist/ui-kit/FormField/InputsMap.d.ts +1 -1
  18. package/dist/ui-kit/FormField/InputsMap.js +4 -4
  19. package/dist/ui-kit/FormField/InputsMap.js.map +1 -1
  20. package/dist/ui-kit/FormField/getObjectValidator.js +10 -10
  21. package/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
  22. package/dist/ui-kit/FormField/validators.d.ts +4 -1
  23. package/dist/ui-kit/FormField/validators.js +14 -6
  24. package/dist/ui-kit/FormField/validators.js.map +1 -1
  25. package/dist/ui-kit/Input/InputFile.js +6 -1
  26. package/dist/ui-kit/Input/InputFile.js.map +1 -1
  27. package/dist/ui-kit/Input/InputProps.d.ts +1 -0
  28. package/dist/utils/isCyrillicWithNumbers.d.ts +1 -0
  29. package/dist/utils/isCyrillicWithNumbers.js +6 -0
  30. package/dist/utils/isCyrillicWithNumbers.js.map +1 -0
  31. package/lib/components/ApplicationForm/getInitialFormState.js +2 -0
  32. package/lib/components/ApplicationForm/getInitialFormState.js.map +1 -1
  33. package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +1 -1
  34. package/lib/ui-kit/FormField/Fields/FileUpload.js +3 -2
  35. package/lib/ui-kit/FormField/Fields/FileUpload.js.map +1 -1
  36. package/lib/ui-kit/FormField/Fields/InternshipStartDateField.js +2 -1
  37. package/lib/ui-kit/FormField/Fields/InternshipStartDateField.js.map +1 -1
  38. package/lib/ui-kit/FormField/Fields/NumbersField.d.ts +2 -0
  39. package/lib/ui-kit/FormField/Fields/NumbersField.js +5 -0
  40. package/lib/ui-kit/FormField/Fields/NumbersField.js.map +1 -0
  41. package/lib/ui-kit/FormField/InputsMap.d.ts +1 -1
  42. package/lib/ui-kit/FormField/InputsMap.js +4 -4
  43. package/lib/ui-kit/FormField/InputsMap.js.map +1 -1
  44. package/lib/ui-kit/FormField/getObjectValidator.js +11 -11
  45. package/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
  46. package/lib/ui-kit/FormField/validators.d.ts +4 -1
  47. package/lib/ui-kit/FormField/validators.js +9 -4
  48. package/lib/ui-kit/FormField/validators.js.map +1 -1
  49. package/lib/ui-kit/Input/InputFile.js +6 -1
  50. package/lib/ui-kit/Input/InputFile.js.map +1 -1
  51. package/lib/ui-kit/Input/InputProps.d.ts +1 -0
  52. package/lib/utils/isCyrillicWithNumbers.d.ts +1 -0
  53. package/lib/utils/isCyrillicWithNumbers.js +3 -0
  54. package/lib/utils/isCyrillicWithNumbers.js.map +1 -0
  55. package/mobile/bundle/bundle.umd.js +40 -26
  56. package/mobile/bundle/bundle.umd.min.js +1 -1
  57. package/mobile/bundle/ui-kit/FormField/Fields/NumbersField.d.ts +2 -0
  58. package/mobile/bundle/ui-kit/FormField/InputsMap.d.ts +1 -1
  59. package/mobile/bundle/ui-kit/FormField/validators.d.ts +4 -1
  60. package/mobile/bundle/ui-kit/Input/InputProps.d.ts +1 -0
  61. package/mobile/bundle/utils/isCyrillicWithNumbers.d.ts +1 -0
  62. package/mobile/dist/components/ApplicationForm/getInitialFormState.js +2 -0
  63. package/mobile/dist/components/ApplicationForm/getInitialFormState.js.map +1 -1
  64. package/mobile/dist/ui-kit/FormField/Fields/FileUpload.js +3 -2
  65. package/mobile/dist/ui-kit/FormField/Fields/FileUpload.js.map +1 -1
  66. package/mobile/dist/ui-kit/FormField/Fields/InternshipStartDateField.js +2 -1
  67. package/mobile/dist/ui-kit/FormField/Fields/InternshipStartDateField.js.map +1 -1
  68. package/mobile/dist/ui-kit/FormField/Fields/NumbersField.d.ts +2 -0
  69. package/mobile/dist/ui-kit/FormField/Fields/NumbersField.js +7 -0
  70. package/mobile/dist/ui-kit/FormField/Fields/NumbersField.js.map +1 -0
  71. package/mobile/dist/ui-kit/FormField/InputsMap.d.ts +1 -1
  72. package/mobile/dist/ui-kit/FormField/InputsMap.js +4 -4
  73. package/mobile/dist/ui-kit/FormField/InputsMap.js.map +1 -1
  74. package/mobile/dist/ui-kit/FormField/getObjectValidator.js +10 -10
  75. package/mobile/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
  76. package/mobile/dist/ui-kit/FormField/validators.d.ts +4 -1
  77. package/mobile/dist/ui-kit/FormField/validators.js +14 -6
  78. package/mobile/dist/ui-kit/FormField/validators.js.map +1 -1
  79. package/mobile/dist/ui-kit/Input/InputFile.js +6 -1
  80. package/mobile/dist/ui-kit/Input/InputFile.js.map +1 -1
  81. package/mobile/dist/ui-kit/Input/InputProps.d.ts +1 -0
  82. package/mobile/dist/utils/isCyrillicWithNumbers.d.ts +1 -0
  83. package/mobile/dist/utils/isCyrillicWithNumbers.js +6 -0
  84. package/mobile/dist/utils/isCyrillicWithNumbers.js.map +1 -0
  85. package/mobile/lib/components/ApplicationForm/getInitialFormState.js +2 -0
  86. package/mobile/lib/components/ApplicationForm/getInitialFormState.js.map +1 -1
  87. package/mobile/lib/ui-kit/FormField/Fields/FileUpload.js +3 -2
  88. package/mobile/lib/ui-kit/FormField/Fields/FileUpload.js.map +1 -1
  89. package/mobile/lib/ui-kit/FormField/Fields/InternshipStartDateField.js +2 -1
  90. package/mobile/lib/ui-kit/FormField/Fields/InternshipStartDateField.js.map +1 -1
  91. package/mobile/lib/ui-kit/FormField/Fields/NumbersField.d.ts +2 -0
  92. package/mobile/lib/ui-kit/FormField/Fields/NumbersField.js +5 -0
  93. package/mobile/lib/ui-kit/FormField/Fields/NumbersField.js.map +1 -0
  94. package/mobile/lib/ui-kit/FormField/InputsMap.d.ts +1 -1
  95. package/mobile/lib/ui-kit/FormField/InputsMap.js +4 -4
  96. package/mobile/lib/ui-kit/FormField/InputsMap.js.map +1 -1
  97. package/mobile/lib/ui-kit/FormField/getObjectValidator.js +11 -11
  98. package/mobile/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
  99. package/mobile/lib/ui-kit/FormField/validators.d.ts +4 -1
  100. package/mobile/lib/ui-kit/FormField/validators.js +9 -4
  101. package/mobile/lib/ui-kit/FormField/validators.js.map +1 -1
  102. package/mobile/lib/ui-kit/Input/InputFile.js +6 -1
  103. package/mobile/lib/ui-kit/Input/InputFile.js.map +1 -1
  104. package/mobile/lib/ui-kit/Input/InputProps.d.ts +1 -0
  105. package/mobile/lib/utils/isCyrillicWithNumbers.d.ts +1 -0
  106. package/mobile/lib/utils/isCyrillicWithNumbers.js +3 -0
  107. package/mobile/lib/utils/isCyrillicWithNumbers.js.map +1 -0
  108. package/mobile/src/components/ApplicationForm/getInitialFormState.tsx +2 -0
  109. package/mobile/src/ui-kit/FormField/Fields/FileUpload.tsx +3 -1
  110. package/mobile/src/ui-kit/FormField/Fields/InternshipStartDateField.tsx +3 -0
  111. package/mobile/src/ui-kit/FormField/Fields/NumbersField.tsx +7 -0
  112. package/mobile/src/ui-kit/FormField/InputsMap.tsx +6 -4
  113. package/mobile/src/ui-kit/FormField/getObjectValidator.tsx +12 -10
  114. package/mobile/src/ui-kit/FormField/validators.ts +22 -7
  115. package/mobile/src/ui-kit/Input/InputFile.tsx +7 -0
  116. package/mobile/src/ui-kit/Input/InputProps.ts +1 -0
  117. package/mobile/src/utils/isCyrillicWithNumbers.ts +3 -0
  118. package/package.json +2 -2
  119. package/src/components/ApplicationForm/getInitialFormState.tsx +2 -0
  120. package/src/ui-kit/FormField/Fields/FileUpload.tsx +3 -1
  121. package/src/ui-kit/FormField/Fields/InternshipStartDateField.tsx +3 -0
  122. package/src/ui-kit/FormField/Fields/NumbersField.tsx +7 -0
  123. package/src/ui-kit/FormField/InputsMap.tsx +6 -4
  124. package/src/ui-kit/FormField/getObjectValidator.tsx +12 -10
  125. package/src/ui-kit/FormField/validators.ts +22 -7
  126. package/src/ui-kit/Input/InputFile.tsx +7 -0
  127. package/src/ui-kit/Input/InputProps.ts +1 -0
  128. package/src/utils/isCyrillicWithNumbers.ts +3 -0
  129. package/bundle/ui-kit/FormField/Fields/AverageGradeField.d.ts +0 -2
  130. package/dist/ui-kit/FormField/Fields/AverageGradeField.d.ts +0 -2
  131. package/dist/ui-kit/FormField/Fields/AverageGradeField.js +0 -9
  132. package/dist/ui-kit/FormField/Fields/AverageGradeField.js.map +0 -1
  133. package/lib/ui-kit/FormField/Fields/AverageGradeField.d.ts +0 -2
  134. package/lib/ui-kit/FormField/Fields/AverageGradeField.js +0 -7
  135. package/lib/ui-kit/FormField/Fields/AverageGradeField.js.map +0 -1
  136. package/mobile/bundle/ui-kit/FormField/Fields/AverageGradeField.d.ts +0 -2
  137. package/mobile/dist/ui-kit/FormField/Fields/AverageGradeField.d.ts +0 -2
  138. package/mobile/dist/ui-kit/FormField/Fields/AverageGradeField.js +0 -9
  139. package/mobile/dist/ui-kit/FormField/Fields/AverageGradeField.js.map +0 -1
  140. package/mobile/lib/ui-kit/FormField/Fields/AverageGradeField.d.ts +0 -2
  141. package/mobile/lib/ui-kit/FormField/Fields/AverageGradeField.js +0 -7
  142. package/mobile/lib/ui-kit/FormField/Fields/AverageGradeField.js.map +0 -1
  143. package/mobile/src/ui-kit/FormField/Fields/AverageGradeField.tsx +0 -14
  144. package/src/ui-kit/FormField/Fields/AverageGradeField.tsx +0 -14
@@ -1203,6 +1203,9 @@
1203
1203
  const cyrillicPattern = /^[а-яё-]*$/i;
1204
1204
  const isCyrillic = (_ = '') => cyrillicPattern.test(_);
1205
1205
 
1206
+ const cyrillicWithNumbersPattern = /^(?!\s*$)(?:[\p{Script=Cyrillic}]|\P{L})*$/u;
1207
+ const isCyrillicWithNumbers = (_ = '') => cyrillicWithNumbersPattern.test(_);
1208
+
1206
1209
  const isDateValid = (value, limits) => {
1207
1210
  if (!value || isNaN(value.getTime())) {
1208
1211
  return false;
@@ -1227,23 +1230,27 @@
1227
1230
  const required = validator((_) => _ !== null && _ !== undefined && _ !== '');
1228
1231
 
1229
1232
  const ERROR_MESSAGE$1 = 'Некорректно заполненное поле';
1233
+ const ERROR_SELECT_MESSAGE = 'Выберите вариант ответа';
1230
1234
  const defaultValidator = (errorMsg) => required(errorMsg ?? ERROR_MESSAGE$1);
1231
- const defaultSelectValidator = (errorMsg) => validator((_) => _?.key && _?.key !== '')(errorMsg ?? ERROR_MESSAGE$1);
1235
+ const defaultSelectValidator = (errorMsg) => validator((_) => _?.key && _?.key !== '')(errorMsg ?? ERROR_SELECT_MESSAGE);
1232
1236
  const nameValidator = (errorMsg) => validator((_) => typeof _ === 'string' && _.length > 1 && isCyrillic(_))(errorMsg ?? ERROR_MESSAGE$1);
1237
+ const fullNameValidator = (errorMsg) => validator((_) => typeof _ === 'string' && _.length > 1 && isFullName(_))(errorMsg ?? ERROR_MESSAGE$1);
1233
1238
  const innValidator = (errorMsg) => validator((_) => isValidInnLength(_))(errorMsg);
1234
1239
  const innDadataValidator = (errorMsg) => validator((_) => Boolean(_?.text) && isValidInnLength(_.text))(errorMsg);
1235
- const phoneValidate = (email) => /^(\+7)?[\s-]?\(?[0-9]{3}\)?[\s-]?[0-9]{3}[\s-]?[0-9]{2}[\s-]?[0-9]{2}$/.test(email);
1236
- const russianPhoneValidate = (email) => /^(\+7)?[\s-]?\(?[3489][0-9]{2}\)?[\s-]?[0-9]{3}[\s-]?[0-9]{2}[\s-]?[0-9]{2}$/.test(email);
1240
+ const phoneValidate = (phone) => /^(\+7)?[\s-]?\(?[0-9]{3}\)?[\s-]?[0-9]{3}[\s-]?[0-9]{2}[\s-]?[0-9]{2}$/.test(phone);
1241
+ const russianPhoneValidate = (phone) => /^(\+7)?[\s-]?\(?[3489][0-9]{2}\)?[\s-]?[0-9]{3}[\s-]?[0-9]{2}[\s-]?[0-9]{2}$/.test(phone);
1237
1242
  const phoneValidator = (errorMsg) => validator(phoneValidate)(errorMsg);
1238
1243
  const russianPhoneValidator = (errorMsg) => validator(russianPhoneValidate)(errorMsg);
1239
1244
  const agreementValidator = validator((_) => typeof _ === 'boolean' && _)('Согласие обязательно');
1240
1245
  const emailValidate = (email) => /^[^\s@]+@[^\s@]+\.[a-zA-Z]{2,4}$/.test(email);
1241
1246
  const emailValidator = (errorMsg) => validator((_) => emailValidate(_))(errorMsg);
1242
- const isValidInnLength = (value) => typeof value === 'string' && (value.length === 10 || value.length === 12);
1243
1247
  const birthdayValidator = (errorMsg) => validator((_) => isDateValid(_, { maxLimit: new Date() }))(errorMsg);
1248
+ const cyrillicWithNumbersValidator = (errorMsg) => validator((_) => typeof _ === 'string' && _.length > 0 && isCyrillicWithNumbers(_))(errorMsg ?? ERROR_MESSAGE$1);
1249
+ const isValidInnLength = (value) => typeof value === 'string' && (value.length === 10 || value.length === 12);
1250
+ const isFullName = (value) => /^[а-яА-ЯёЁ]+(?:-[а-яА-ЯёЁ]+)*(?:\s+[а-яА-ЯёЁ]+(?:-[а-яА-ЯёЁ]+)*)+$/.test(value);
1244
1251
 
1245
1252
  const validatorObj$1 = {
1246
- fullName: defaultValidator(),
1253
+ fullName: fullNameValidator('Укажите полное ФИО на кириллице (без сокращений)'),
1247
1254
  addressBranch: defaultSelectValidator(),
1248
1255
  desiredMeetingDate: defaultValidator(),
1249
1256
  product: defaultValidator(),
@@ -1277,20 +1284,20 @@
1277
1284
  callbackTime: defaultValidator(),
1278
1285
  questionProduct: defaultValidator(),
1279
1286
  russianPhone: russianPhoneValidator('Укажите номер телефона'),
1280
- cityOfResidence: defaultValidator(),
1287
+ cityOfResidence: cyrillicWithNumbersValidator('Укажите город проживания на кириллице'),
1281
1288
  internshipStartDate: defaultValidator(),
1282
1289
  internshipEndDate: defaultValidator(),
1283
- university: defaultValidator(),
1284
- fieldOfStudy: defaultValidator(),
1285
- courseYear: defaultValidator(),
1286
- graduationYear: defaultValidator(),
1290
+ university: defaultValidator('Укажите ВУЗ'),
1291
+ fieldOfStudy: defaultValidator('Укажите направление обучения'),
1292
+ courseYear: defaultValidator('Укажите курс'),
1293
+ graduationYear: defaultValidator('Укажите год окончания'),
1287
1294
  averageGrade: defaultValidator(),
1288
- skillsAndKnowledge: defaultValidator(),
1295
+ skillsAndKnowledge: defaultValidator(''),
1289
1296
  educationLevel: defaultSelectValidator(),
1290
- motivationForInternship: defaultValidator(),
1291
- workExperience: defaultValidator(),
1297
+ motivationForInternship: defaultValidator(''),
1298
+ workExperience: defaultValidator(''),
1292
1299
  internshipDirection: defaultValidator(),
1293
- workingHours: defaultValidator(),
1300
+ workingHours: defaultSelectValidator(),
1294
1301
  };
1295
1302
  const getFormValidator = (fieldDefs, externalValidatorObj = {}) => {
1296
1303
  const requiredFields = fieldDefs.filter((_) => Boolean(_?.required && _?.name));
@@ -1766,6 +1773,8 @@
1766
1773
  consentToReceiveMaterials: false,
1767
1774
  consentDataProcessing: false,
1768
1775
  addressRetail: { key: '', text: '' },
1776
+ fileUpload: '',
1777
+ fileId: '',
1769
1778
  };
1770
1779
  const getInitialFormState$2 = (inputs, typeForm = '') => {
1771
1780
  const formState = Object.fromEntries(inputs.map((_) => [
@@ -2319,10 +2328,6 @@
2319
2328
 
2320
2329
  const ApplierTypeField = JSX(({ field, input }) => (jsx(SelectControl, { label: "\u0422\u0438\u043F \u043E\u0431\u0440\u0430\u0442\u0438\u0432\u0448\u0435\u0433\u043E\u0441\u044F", ...input, options: APPLIER_TYPES, ...field('applierType') })));
2321
2330
 
2322
- const AverageGradeField = JSX(({ field, input }) => {
2323
- return (jsx(InputControl, { label: "\u0421\u0440\u0435\u0434\u043D\u0438\u0439 \u0431\u0430\u043B\u043B \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F", type: "number", ...field(input?.name ?? ''), ...input }));
2324
- });
2325
-
2326
2331
  const BankEmpoleeField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u0424\u0418\u041E \u0438\u043B\u0438 \u0434\u043E\u043B\u0436\u043D\u043E\u0441\u0442\u044C \u043E\u0431\u0441\u043B\u0443\u0436\u0438\u0432\u0430\u0432\u0448\u0435\u0433\u043E \u0412\u0430\u0441 \u0441\u043E\u0442\u0440\u0443\u0434\u043D\u0438\u043A\u0430 \u0411\u0430\u043D\u043A\u0430", ...field(input?.name ?? ''), ...input })));
2327
2332
 
2328
2333
  const useElementSpace = (ref, heightEl) => {
@@ -3056,7 +3061,7 @@
3056
3061
 
3057
3062
  const InputFile = JSX(
3058
3063
  // eslint-disable-next-line max-lines-per-function
3059
- ({ key, className, id, name, type = 'file', label, valid = true, pattern, autoFocus = false, extensions, children, onFocus, onBlur, maxSizeMB, error, onFileChanged = noop, }) => {
3064
+ ({ key, className, id, name, type = 'file', label, valid = true, pattern, autoFocus = false, extensions, children, onFocus, onBlur, maxSizeMB, error, isReset, onFileChanged = noop, }) => {
3060
3065
  const inputRef = useRef(null);
3061
3066
  const [selectedFile, setSelectedFile] = useState(null);
3062
3067
  const [uploadError, setUploadError] = useState('');
@@ -3073,6 +3078,11 @@
3073
3078
  inputRef.current?.focus();
3074
3079
  }
3075
3080
  }, [autoFocus, inputRef]);
3081
+ useEffect(() => {
3082
+ if (isReset) {
3083
+ handleResetFile();
3084
+ }
3085
+ }, [isReset]);
3076
3086
  const handleFileChange = async (file) => {
3077
3087
  handleResetFile();
3078
3088
  if (file) {
@@ -3118,10 +3128,11 @@
3118
3128
 
3119
3129
  const FileUploadField = JSX(({ field, input }) => {
3120
3130
  const [fileId, setFileId] = useState('');
3131
+ const fileIdField = field('fileId');
3121
3132
  useEffect(() => {
3122
- field('fileId')?.onChange?.(fileId);
3133
+ fileIdField?.onChange?.(fileId);
3123
3134
  }, [fileId]);
3124
- return (jsx(InputFileControl, { type: "file", label: input?.name ?? '', ...field(input?.name ?? ''), ...input, onFileChanged: setFileId }));
3135
+ return (jsx(InputFileControl, { type: "file", label: input?.name ?? '', ...field(input?.name ?? ''), ...input, onFileChanged: setFileId, isReset: !fileIdField?.value }));
3125
3136
  });
3126
3137
 
3127
3138
  const FullNameField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u0424\u0418\u041E", ...field(input?.name ?? ''), ...input })));
@@ -3159,6 +3170,7 @@
3159
3170
  const [endDate, setEndDate] = useState();
3160
3171
  const [internshipStartDateError, setInternshipStartDateError] = useState('');
3161
3172
  const [internshipStartDateValue, setInternshipStartDateValue] = useState();
3173
+ const today = new Date();
3162
3174
  useEffect(() => {
3163
3175
  setEndDate(field('internshipEndDate').value);
3164
3176
  }, [field('internshipEndDate').value]);
@@ -3167,7 +3179,7 @@
3167
3179
  field(input?.name ?? '')?.onChange?.(value);
3168
3180
  setInternshipStartDateError(isDateValid(value, { maxLimit: endDate }) ? '' : INTERNSHIP_START_DATE_ERROR);
3169
3181
  };
3170
- return (jsx(DatePickerControl, { label: input?.label || 'Дата начала практики', ...field(input?.name ?? ''), ...input, value: internshipStartDateValue, error: internshipStartDateError || field(input?.name ?? '')?.error, errors: [internshipStartDateError ?? field(input?.name ?? '')?.error], onChange: handleInputChange, maxDate: endDate }));
3182
+ return (jsx(DatePickerControl, { label: input?.label || 'Дата начала практики', ...field(input?.name ?? ''), ...input, value: internshipStartDateValue, error: internshipStartDateError || field(input?.name ?? '')?.error, errors: [internshipStartDateError ?? field(input?.name ?? '')?.error], onChange: handleInputChange, minDate: today, maxDate: endDate }));
3171
3183
  });
3172
3184
 
3173
3185
  const CheckboxWithError = JSX(({ className, text, value, key, disabled, error, onChange }) => (jsxs("div", { className: style('shrink-0', className), children: [jsx(Checkbox, { text: text, value: value, disabled: disabled, onChange: onChange }, key), renderErrorText(error)] })));
@@ -3203,6 +3215,8 @@
3203
3215
 
3204
3216
  const NameField$1 = JSX(({ field, input }) => (jsx(InputControl, { label: "\u0418\u043C\u044F", maxLength: 60, disabled: isEsiaAuthorize(field, input), ...field(input?.name ?? ''), ...input })));
3205
3217
 
3218
+ const NumbersField = JSX(({ field, input, label }) => (jsx(InputControl, { label: label, type: "number", ...field(input?.name ?? ''), ...input })));
3219
+
3206
3220
  const SlideCheckbox = JSX(({ value = false, text, type = 'checkbox', onChange }) => (jsxs("div", { role: type, "aria-checked": value, className: "flex justify-start items-center w-full cursor-pointer mb-s", onClick: () => onChange && onChange(!value), children: [jsx("div", { className: style('relative flex-shrink-0 duration-300 w-9 h-5 mr-s rounded-2xl', value ? 'bg-primary-main' : 'bg-main-divider'), children: jsx("div", { className: style('absolute opacity-80 duration-500 top-0.5 w-4 h-4 bg-white rounded-full', value ? 'left-1/2' : 'left-[5%]') }) }), text ? (jsx(Text, { size: "text-l", font: "font-light", color: "text-primary-text", children: text })) : null] })));
3207
3221
 
3208
3222
  const OnlineCheckoutField = JSX(({ field, input }) => isAcquiringTrade(field('acquiringType')?.value?.key) ? (jsx(SlideCheckbox, { type: "radio", text: "\u0425\u043E\u0447\u0443 \u043E\u043D\u043B\u0430\u0439\u043D-\u043A\u0430\u0441\u0441\u0443", ...field(input?.name ?? ''), ...input })) : null);
@@ -3391,11 +3405,11 @@
3391
3405
  internshipStartDate: InternshipStartDateField,
3392
3406
  internshipEndDate: InternshipEndDateField,
3393
3407
  university: (props) => jsx(TextField, { ...props, label: "\u0412\u0423\u0417" }),
3394
- courseYear: (props) => jsx(TextField, { ...props, label: "\u041A\u0443\u0440\u0441" }),
3395
- graduationYear: (props) => jsx(TextField, { ...props, label: "\u0413\u043E\u0434 \u043E\u043A\u043E\u043D\u0447\u0430\u043D\u0438\u044F" }),
3408
+ courseYear: (props) => jsx(NumbersField, { ...props, label: "\u041A\u0443\u0440\u0441" }),
3409
+ graduationYear: (props) => jsx(NumbersField, { ...props, label: "\u0413\u043E\u0434 \u043E\u043A\u043E\u043D\u0447\u0430\u043D\u0438\u044F" }),
3396
3410
  fieldOfStudy: (props) => jsx(TextField, { ...props, label: "\u041D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F" }),
3397
3411
  educationLevel: (props) => (jsx(SelectField$1, { ...props, label: "\u0421\u0442\u0443\u043F\u0435\u043D\u044C \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F", options: EDUCATION_LEVEL })),
3398
- averageGrade: AverageGradeField,
3412
+ averageGrade: (props) => (jsx(NumbersField, { ...props, label: "\u0421\u0440\u0435\u0434\u043D\u0438\u0439 \u0431\u0430\u043B\u043B \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F" })),
3399
3413
  skillsAndKnowledge: CommentField,
3400
3414
  workExperience: CommentField,
3401
3415
  motivationForInternship: CommentField,
@@ -14288,7 +14302,7 @@
14288
14302
  slots: () => [HEADER_SLOT, FOOTER_SLOT, STICKY_FOOTER_SLOT],
14289
14303
  });
14290
14304
 
14291
- const packageVersion = "0.14.1016";
14305
+ const packageVersion = "0.14.1017";
14292
14306
 
14293
14307
  exports.Blocks = Blocks;
14294
14308
  exports.ContentPage = ContentPage;