From 63ad6ed3c4ace2b1208045e84406137bd13501a1 Mon Sep 17 00:00:00 2001 From: Ephrame Date: Fri, 3 Feb 2017 13:42:50 +0100 Subject: [PATCH 1/2] [version] 3.1.0-rc1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e466fd1..fbaef1c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "focus-graph", - "version": "3.0.0", + "version": "3.1.0-rc1", "description": "Form, data behaviours", "main": "src/index.js", "author": "FOCUS ", From d2761aaacbd90cc2d4961a8413f769c773bdf13d Mon Sep 17 00:00:00 2001 From: Ephrame Date: Mon, 6 Feb 2017 10:43:28 +0100 Subject: [PATCH 2/2] [Middleware] Fix translation in domain validation --- src/middlewares/validate.js | 4 ++-- src/middlewares/validations.js | 19 +++++-------------- 2 files changed, 7 insertions(+), 16 deletions(-) diff --git a/src/middlewares/validate.js b/src/middlewares/validate.js index 2a313a4..d287b0b 100644 --- a/src/middlewares/validate.js +++ b/src/middlewares/validate.js @@ -3,10 +3,10 @@ import isUndefined from 'lodash/isUndefined'; import isNaN from 'lodash/isNaN'; import isNumber from 'lodash/isNumber'; import isString from 'lodash/isString'; - +import i18n from 'i18next'; //Dependency -const translate = (str, params) => `${str}`; +const translate = (str, params) => `${i18n.t(str)}`; const EMAIL_REGEX = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; diff --git a/src/middlewares/validations.js b/src/middlewares/validations.js index b1a7729..9720963 100644 --- a/src/middlewares/validations.js +++ b/src/middlewares/validations.js @@ -2,16 +2,7 @@ import identity from 'lodash/identity'; import {INPUT_CHANGE, INPUT_BLUR, INPUT_BLUR_LIST,inputError, inputErrorList, inputChangeError, inputErrorChangeList} from '../actions/input'; import {CREATE_FORM, VALIDATE_FORM, SYNC_FORMS_ENTITY, SYNC_FORM_ENTITIES, setFormToSaving} from '../actions/form'; import {PENDING} from '../actions/entity-actions-builder'; -import find from 'lodash/find'; -import get from 'lodash/get'; -import isUndefined from 'lodash/isUndefined'; -import isNull from 'lodash/isNull'; -import isEmpty from 'lodash/isEmpty'; -import mapKeys from 'lodash/mapKeys'; -import isArray from 'lodash/isArray'; -import isString from 'lodash/isString'; -import omit from 'lodash/omit'; -import map from 'lodash/map'; +import {find, get, isUndefined, isNull, isEmpty, mapKeys, isArray, isString, omit,map} from 'lodash'; import validate from './validate'; /** * Default field formatter. Defaults to the identity function @@ -25,7 +16,7 @@ const MIDDLEWARES_FORM_VALIDATION = 'MIDDLEWARES_FORM_VALIDATION'; // THIS IS A MOCK FUNCTION THAT MUST BE REPLACED BY THE FOCUS CORE VALIDATION // TODO : replace this with the focus core function -export const __fake_focus_core_validation_function__ = (isRequired = false, validators = [], name, rawValue) => { +export const validationByDomain = (isRequired = false, validators = [], name, rawValue) => { const validationResult = validate({name, value: rawValue}, validators); const isValid = validationResult.isValid; @@ -201,7 +192,7 @@ export const validateGlobal = (definitions, domains , formKey, entityPath, field if(!domain){ throw new Error(`${MIDDLEWARES_FIELD_VALIDATION}: Your field ${fieldName} in the entity ${entityPath} don't have a domain, you may have an array field which have a **redirect** property in it.`) } - validationResult = __fake_focus_core_validation_function__(isRequired, domain.validators, fieldName, value); + validationResult = validationByDomain(isRequired, domain.validators, fieldName, value); }else { validationResult = isRequired ? {isValid: false} : {isValid: true}; } @@ -227,7 +218,7 @@ export const validateFieldForList = (definitions, domain, propertyNameLine, form // if(value === 1) throw new Error(JSON.stringify({ domain, propertyNameLine, formKey, value, index, entityPath, fieldNameList})) let validationResult= {}; const {isRequired} = get(definitions, propertyNameLine); - validationResult = __fake_focus_core_validation_function__(isRequired, domain.validators, propertyNameLine, value); + validationResult = validationByDomain(isRequired, domain.validators, propertyNameLine, value); //if(value === 1) throw new Error(JSON.stringify(validationResult)); if (!validationResult.isValid ){ if(onChange ) dispatch(inputErrorChangeList(formKey, fieldNameList , entityPath, validationResult.error, propertyNameLine , index)); @@ -260,7 +251,7 @@ export const validateFieldArray = (definitions, domains, formKey, entityPath, fi const definitionRedirect = get(definitions, `${redirect}.${propertyNameLine}`); const isRequired = definitionRedirect.isRequired; const domain = domains[definitionRedirect.domain]; - validationResult = __fake_focus_core_validation_function__(isRequired, domain.validators, propertyNameLine, value); + validationResult = validationByDomain(isRequired, domain.validators, propertyNameLine, value); }else { throw new Error(`${MIDDLEWARES_FIELD_VALIDATION} : You must provide a "redirect" defintions to your list field : ${fieldNameList}`) }