in packages/dynamodb-data-mapper/src/DataMapper.ts [1241:1269]
function handleVersionAttribute(
attributeName: string,
inputMember: any,
): {condition: ConditionExpression, value: MathematicalExpression|AttributeValue} {
let condition: ConditionExpression;
let value: any;
if (inputMember === undefined) {
condition = new FunctionExpression(
'attribute_not_exists',
new AttributePath([
{type: 'AttributeName', name: attributeName} as PathElement
])
);
value = new AttributeValue({N: "0"});
} else {
condition = {
type: 'Equals',
subject: attributeName,
object: inputMember,
};
value = new MathematicalExpression(
new AttributePath(attributeName),
'+',
1
);
}
return {condition, value};
}