@salesforce/soql-model
Version:
58 lines • 2.54 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.ValidatorFactory = void 0;
/*
* Copyright (c) 2021, salesforce.com, inc.
* All rights reserved.
* Licensed under the BSD 3-Clause license.
* For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
*/
const model_1 = require("../model/model");
const booleanValidator_1 = require("./booleanValidator");
const currencyValidator_1 = require("./currencyValidator");
const dateValidator_1 = require("./dateValidator");
const floatValidator_1 = require("./floatValidator");
const integerValidator_1 = require("./integerValidator");
const picklistValidator_1 = require("./picklistValidator");
const stringValidator_1 = require("./stringValidator");
const validator_1 = require("./validator");
class ValidatorFactory {
static getFieldInputValidator(options) {
switch (options.type) {
case model_1.SObjectFieldType.Boolean: {
return new booleanValidator_1.BooleanValidator(options);
}
case model_1.SObjectFieldType.Currency: {
return new currencyValidator_1.CurrencyValidator(options);
}
case model_1.SObjectFieldType.Date:
case model_1.SObjectFieldType.DateTime: {
return new dateValidator_1.DateValidator(options);
}
case model_1.SObjectFieldType.Double: {
return new floatValidator_1.FloatValidator(options);
}
case model_1.SObjectFieldType.Integer:
case model_1.SObjectFieldType.Long: {
return new integerValidator_1.IntegerValidator(options);
}
case model_1.SObjectFieldType.Picklist:
case model_1.SObjectFieldType.MultiPicklist: {
return new picklistValidator_1.PicklistValidator(options);
}
case model_1.SObjectFieldType.String:
case model_1.SObjectFieldType.Id: {
return new stringValidator_1.StringValidator(options);
}
}
return new validator_1.DefaultValidator(options);
}
static getOperatorValidator(options) {
return new validator_1.OperatorValidator(options);
}
static getFieldMultipleInputValidator(options) {
return new validator_1.MultipleInputValidator(options, this.getFieldInputValidator(options));
}
}
exports.ValidatorFactory = ValidatorFactory;
//# sourceMappingURL=validatorFactory.js.map
;