diff --git a/package.json b/package.json index 757355f..1f74865 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ushahidi-platform-sdk", - "version": "v0.3.2", + "version": "v0.3.3", "description": "An SDK for the Ushahidi Platform - V3+ compatible", "engines": { "node": ">= 10 <13" diff --git a/src/surveys.ts b/src/surveys.ts index a6246a8..d39674f 100644 --- a/src/surveys.ts +++ b/src/surveys.ts @@ -10,15 +10,23 @@ export class Surveys { this.backendUrl = backendUrl; this.setToken(token, expires); } - static validateUniqueOptions(options: []) { + static fieldHasTranslations = (field, lang) => { + return field.translations[lang] && field.translations[lang].options.length > 0; + } + + static fieldCanHaveOptions = (field) => { + return field.input === 'checkbox' || field.input === 'radio'; + } + + static areOptionsUnique(options: []) { // converting to Set would remove duplicates,so if size matches original we are good // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set return new Set(options).size === options.length; } - static validateNonEmptyOptions(options: []) { + static hasEmptyOptions(options: []) { // check against duplicate or empty options - return options.filter(i => i === '' || i === null).length === 0; + return options.filter(i => i === '' || i === null).length > 0; } setToken(token?: string, expires?: number): object {