@stemy/ngx-dynamic-form 19.9.32 → 19.9.33

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.
@@ -429,6 +429,8 @@ function maxLengthValidation(maxLength) {
429
429
  }
430
430
  function minValueValidation() {
431
431
  return validateEach((v, f) => {
432
+ if (v == null)
433
+ return true;
432
434
  const type = f.props.type || "number";
433
435
  const min = type.includes("date")
434
436
  ? convertToDate(f.props.min, type) : Number(f.props.min ?? 0);
@@ -436,11 +438,13 @@ function minValueValidation() {
436
438
  const date = new Date(v);
437
439
  return isNaN(date) || date >= min;
438
440
  }
439
- return v == null || v >= min;
441
+ return v >= min;
440
442
  }, "minValue");
441
443
  }
442
444
  function maxValueValidation() {
443
445
  return validateEach((v, f) => {
446
+ if (v == null)
447
+ return true;
444
448
  const type = f.props.type || "number";
445
449
  const max = type.includes("date")
446
450
  ? convertToDate(f.props.max, type) : Number(f.props.max ?? 0);
@@ -448,7 +452,7 @@ function maxValueValidation() {
448
452
  const date = new Date(v);
449
453
  return isNaN(date) || date <= max;
450
454
  }
451
- return v == null || v <= max;
455
+ return v <= max;
452
456
  }, "maxValue");
453
457
  }
454
458
  function enumValidation($enum) {
@@ -456,6 +460,11 @@ function enumValidation($enum) {
456
460
  return $enum.includes(v);
457
461
  }, "enum");
458
462
  }
463
+ function equalsValidation(target) {
464
+ return validateEach(v => {
465
+ return v === target;
466
+ }, "equals");
467
+ }
459
468
  function setFieldMinDate(field, min, setValue = true) {
460
469
  setFieldProp(field, "min", min);
461
470
  addFieldValidators(field, [minValueValidation()]);
@@ -1527,6 +1536,9 @@ class DynamicFormSchemaService {
1527
1536
  if (Array.isArray(property.enum)) {
1528
1537
  validators.enum = enumValidation(property.enum);
1529
1538
  }
1539
+ if ("equals" in property) {
1540
+ validators.equals = equalsValidation(property.equals);
1541
+ }
1530
1542
  // if (isString(property.pattern) && property.pattern.length) {
1531
1543
  // validators.pattern = property.pattern;
1532
1544
  // }
@@ -1554,6 +1566,9 @@ class DynamicFormSchemaService {
1554
1566
  if (Array.isArray(items.enum)) {
1555
1567
  validators.enum = enumValidation(items.enum);
1556
1568
  }
1569
+ if ("equals" in items) {
1570
+ validators.equals = equalsValidation(items.equals);
1571
+ }
1557
1572
  }
1558
1573
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.22", ngImport: i0, type: DynamicFormSchemaService, deps: [{ token: i2.OpenApiService }, { token: i0.Injector }, { token: DynamicFormBuilderService }], target: i0.ɵɵFactoryTarget.Injectable }); }
1559
1574
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.22", ngImport: i0, type: DynamicFormSchemaService }); }
@@ -2496,5 +2511,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.22", ngImpo
2496
2511
  * Generated bundle index. Do not edit.
2497
2512
  */
2498
2513
 
2499
- export { AsyncSubmitDirective, DEFAULT_NUMERIC_STEP, DynamicFieldType, DynamicFormAlertComponent, DynamicFormArrayComponent, DynamicFormBuilderService, DynamicFormChipsComponent, DynamicFormComponent, DynamicFormEditorComponent, DynamicFormFieldComponent, DynamicFormFieldsetComponent, DynamicFormGroupComponent, DynamicFormPasswordComponent, DynamicFormSchemaService, DynamicFormService, DynamicFormStaticComponent, DynamicFormTemplateDirective, DynamicFormTemplatePipe, DynamicFormTemplateService, DynamicFormTranslationComponent, DynamicFormUploadComponent, DynamicFormWysiwygComponent, EDITOR_TYPES, FORM_ROOT_ID, FormArray, FormFieldSet, FormGroup, FormInput, FormSelect, FormSerializable, FormStatic, FormUpload, MAX_INPUT_NUM, MIN_INPUT_NUM, NgxDynamicFormModule, RichTranslationModel, TranslationModel, addFieldValidators, arrayLengthValidation, clearFieldArray, controlStatus, controlValues, convertToDate, convertToDateFormat, convertToNumber, customizeFormField, emailValidation, enumValidation, getFieldByPath, getFieldsByKey, getFieldsByPredicate, getSelectOptions, insertToFieldArray, isFieldHidden, isFieldVisible, jsonValidation, maxLengthValidation, maxValueValidation, minLengthValidation, minValueValidation, phoneValidation, removeFieldValidators, removeFromFieldArray, replaceFieldArray, replaceSpecialChars, requiredValidation, setFieldDefault, setFieldDisabled, setFieldHidden, setFieldHooks, setFieldMinDate, setFieldProp, setFieldProps, setFieldSerialize, setFieldValue, translationValidation };
2514
+ export { AsyncSubmitDirective, DEFAULT_NUMERIC_STEP, DynamicFieldType, DynamicFormAlertComponent, DynamicFormArrayComponent, DynamicFormBuilderService, DynamicFormChipsComponent, DynamicFormComponent, DynamicFormEditorComponent, DynamicFormFieldComponent, DynamicFormFieldsetComponent, DynamicFormGroupComponent, DynamicFormPasswordComponent, DynamicFormSchemaService, DynamicFormService, DynamicFormStaticComponent, DynamicFormTemplateDirective, DynamicFormTemplatePipe, DynamicFormTemplateService, DynamicFormTranslationComponent, DynamicFormUploadComponent, DynamicFormWysiwygComponent, EDITOR_TYPES, FORM_ROOT_ID, FormArray, FormFieldSet, FormGroup, FormInput, FormSelect, FormSerializable, FormStatic, FormUpload, MAX_INPUT_NUM, MIN_INPUT_NUM, NgxDynamicFormModule, RichTranslationModel, TranslationModel, addFieldValidators, arrayLengthValidation, clearFieldArray, controlStatus, controlValues, convertToDate, convertToDateFormat, convertToNumber, customizeFormField, emailValidation, enumValidation, equalsValidation, getFieldByPath, getFieldsByKey, getFieldsByPredicate, getSelectOptions, insertToFieldArray, isFieldHidden, isFieldVisible, jsonValidation, maxLengthValidation, maxValueValidation, minLengthValidation, minValueValidation, phoneValidation, removeFieldValidators, removeFromFieldArray, replaceFieldArray, replaceSpecialChars, requiredValidation, setFieldDefault, setFieldDisabled, setFieldHidden, setFieldHooks, setFieldMinDate, setFieldProp, setFieldProps, setFieldSerialize, setFieldValue, translationValidation };
2500
2515
  //# sourceMappingURL=stemy-ngx-dynamic-form.mjs.map