cdk-amazon-chime-resources
Version:

44 lines • 6.79 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.channelFlowValidator = void 0;
var NAME = /^[\u0009\u000A\u000D\u0020-\u007E\u0085\u00A0-\uD7FF\uE000-\uFFFD\u10000-\u10FFFF]*$/;
var CLIENTREQUESTTOKEN = /^[-_a-zA-Z0-9]*$/;
function channelFlowValidator(props) {
if (props.name) {
if (props.name.length < 1 || props.name.length > 256) {
throw new Error('Name length must be >1 and <256');
}
if (!NAME.test(props.name)) {
throw new Error('Invalid channel flow name. Must fit pattern: [\u0009\u000A\u000D\u0020-\u007E\u0085\u00A0-\uD7FF\uE000-\uFFFD\u10000-\u10FFFF]*');
}
}
if (props.clientRequestToken) {
if (props.clientRequestToken.length < 2 ||
props.clientRequestToken.length > 64) {
throw new Error('ClientRequestToken length must be >2 and <64');
}
if (!CLIENTREQUESTTOKEN.test(props.clientRequestToken)) {
throw new Error('Invlaid Client Request Token. Must fit pattern: [-_a-zA-Z0-9]*');
}
}
if (props.processors) {
if (Object.keys(props.processors).length < 1 ||
Object.keys(props.processors).length > 3) {
throw new Error('Processor count must be between 1 and 3');
}
for (var processor of props.processors) {
if (processor.executionOrder < 1 || processor.executionOrder > 3) {
throw new Error('Execution Order must be between 1 and 3');
}
if (processor.name.length < 1 || processor.name.length > 256) {
throw new Error('Name length must be >1 and <256');
}
if (!NAME.test(processor.name)) {
throw new Error('Invalid processor name. Must fit pattern: [\u0009\u000A\u000D\u0020-\u007E\u0085\u00A0-\uD7FF\uE000-\uFFFD\u10000-\u10FFFF]*');
}
}
}
return true;
}
exports.channelFlowValidator = channelFlowValidator;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbm5lbEZsb3dWYWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbWVzc2FnaW5nL2NoYW5uZWxGbG93VmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLElBQUksSUFBSSxHQUNOLHNGQUFzRixDQUFDO0FBRXpGLElBQUksa0JBQWtCLEdBQUcsa0JBQWtCLENBQUM7QUFFNUMsU0FBZ0Isb0JBQW9CLENBQUMsS0FBdUI7SUFDMUQsSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDZixJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQztZQUNyRCxNQUFNLElBQUksS0FBSyxDQUFDLGlDQUFpQyxDQUFDLENBQUM7UUFDckQsQ0FBQztRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzNCLE1BQU0sSUFBSSxLQUFLLENBQ2Isa0lBQWtJLENBQ25JLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUksS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDN0IsSUFDRSxLQUFLLENBQUMsa0JBQWtCLENBQUMsTUFBTSxHQUFHLENBQUM7WUFDbkMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sR0FBRyxFQUFFLEVBQ3BDLENBQUM7WUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLDhDQUE4QyxDQUFDLENBQUM7UUFDbEUsQ0FBQztRQUNELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQztZQUN2RCxNQUFNLElBQUksS0FBSyxDQUNiLGlFQUFpRSxDQUNsRSxDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNyQixJQUNFLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDO1lBQ3hDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQ3hDLENBQUM7WUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxDQUFDLENBQUM7UUFDN0QsQ0FBQztRQUNELEtBQUssSUFBSSxTQUFTLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3ZDLElBQUksU0FBUyxDQUFDLGNBQWMsR0FBRyxDQUFDLElBQUksU0FBUyxDQUFDLGNBQWMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDakUsTUFBTSxJQUFJLEtBQUssQ0FBQyx5Q0FBeUMsQ0FBQyxDQUFDO1lBQzdELENBQUM7WUFDRCxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQztnQkFDN0QsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO1lBQ3JELENBQUM7WUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDL0IsTUFBTSxJQUFJLEtBQUssQ0FDYiwrSEFBK0gsQ0FDaEksQ0FBQztZQUNKLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQztBQWpERCxvREFpREMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFubmVsRmxvd1Byb3BzIH0gZnJvbSAnLi9jaGFubmVsRmxvdyc7XG52YXIgTkFNRSA9XG4gIC9eW1xcdTAwMDlcXHUwMDBBXFx1MDAwRFxcdTAwMjAtXFx1MDA3RVxcdTAwODVcXHUwMEEwLVxcdUQ3RkZcXHVFMDAwLVxcdUZGRkRcXHUxMDAwMC1cXHUxMEZGRkZdKiQvO1xuXG52YXIgQ0xJRU5UUkVRVUVTVFRPS0VOID0gL15bLV9hLXpBLVowLTldKiQvO1xuXG5leHBvcnQgZnVuY3Rpb24gY2hhbm5lbEZsb3dWYWxpZGF0b3IocHJvcHM6IENoYW5uZWxGbG93UHJvcHMpIHtcbiAgaWYgKHByb3BzLm5hbWUpIHtcbiAgICBpZiAocHJvcHMubmFtZS5sZW5ndGggPCAxIHx8IHByb3BzLm5hbWUubGVuZ3RoID4gMjU2KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05hbWUgbGVuZ3RoIG11c3QgYmUgPjEgYW5kIDwyNTYnKTtcbiAgICB9XG4gICAgaWYgKCFOQU1FLnRlc3QocHJvcHMubmFtZSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0ludmFsaWQgY2hhbm5lbCBmbG93IG5hbWUuICBNdXN0IGZpdCBwYXR0ZXJuOiBbXFx1MDAwOVxcdTAwMEFcXHUwMDBEXFx1MDAyMC1cXHUwMDdFXFx1MDA4NVxcdTAwQTAtXFx1RDdGRlxcdUUwMDAtXFx1RkZGRFxcdTEwMDAwLVxcdTEwRkZGRl0qJyxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgaWYgKHByb3BzLmNsaWVudFJlcXVlc3RUb2tlbikge1xuICAgIGlmIChcbiAgICAgIHByb3BzLmNsaWVudFJlcXVlc3RUb2tlbi5sZW5ndGggPCAyIHx8XG4gICAgICBwcm9wcy5jbGllbnRSZXF1ZXN0VG9rZW4ubGVuZ3RoID4gNjRcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ2xpZW50UmVxdWVzdFRva2VuIGxlbmd0aCBtdXN0IGJlID4yIGFuZCA8NjQnKTtcbiAgICB9XG4gICAgaWYgKCFDTElFTlRSRVFVRVNUVE9LRU4udGVzdChwcm9wcy5jbGllbnRSZXF1ZXN0VG9rZW4pKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdJbnZsYWlkIENsaWVudCBSZXF1ZXN0IFRva2VuLiAgTXVzdCBmaXQgcGF0dGVybjogWy1fYS16QS1aMC05XSonLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBpZiAocHJvcHMucHJvY2Vzc29ycykge1xuICAgIGlmIChcbiAgICAgIE9iamVjdC5rZXlzKHByb3BzLnByb2Nlc3NvcnMpLmxlbmd0aCA8IDEgfHxcbiAgICAgIE9iamVjdC5rZXlzKHByb3BzLnByb2Nlc3NvcnMpLmxlbmd0aCA+IDNcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignUHJvY2Vzc29yIGNvdW50IG11c3QgYmUgYmV0d2VlbiAxIGFuZCAzJyk7XG4gICAgfVxuICAgIGZvciAodmFyIHByb2Nlc3NvciBvZiBwcm9wcy5wcm9jZXNzb3JzKSB7XG4gICAgICBpZiAocHJvY2Vzc29yLmV4ZWN1dGlvbk9yZGVyIDwgMSB8fCBwcm9jZXNzb3IuZXhlY3V0aW9uT3JkZXIgPiAzKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRXhlY3V0aW9uIE9yZGVyIG11c3QgYmUgYmV0d2VlbiAxIGFuZCAzJyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvY2Vzc29yLm5hbWUubGVuZ3RoIDwgMSB8fCBwcm9jZXNzb3IubmFtZS5sZW5ndGggPiAyNTYpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdOYW1lIGxlbmd0aCBtdXN0IGJlID4xIGFuZCA8MjU2Jyk7XG4gICAgICB9XG4gICAgICBpZiAoIU5BTUUudGVzdChwcm9jZXNzb3IubmFtZSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICdJbnZhbGlkIHByb2Nlc3NvciBuYW1lLiAgTXVzdCBmaXQgcGF0dGVybjogW1xcdTAwMDlcXHUwMDBBXFx1MDAwRFxcdTAwMjAtXFx1MDA3RVxcdTAwODVcXHUwMEEwLVxcdUQ3RkZcXHVFMDAwLVxcdUZGRkRcXHUxMDAwMC1cXHUxMEZGRkZdKicsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRydWU7XG59XG4iXX0=