pair.js 1.8 KB

12345678910111213141516171819202122232425262728293031323334
  1. "use strict";
  2. exports.__esModule = true;
  3. var mapping_key_1 = require("../factories/mapping-key");
  4. var mapping_value_1 = require("../factories/mapping-value");
  5. var position_1 = require("../factories/position");
  6. function transformAstPair(pair, context, createNode, additionalKeyRange, additionalValueRange) {
  7. var keyContent = context.transformNode(pair.key);
  8. var valueContent = context.transformNode(pair.value);
  9. var mappingKey = keyContent || additionalKeyRange
  10. ? mapping_key_1.createMappingKey(context.transformRange({
  11. origStart: additionalKeyRange
  12. ? additionalKeyRange.origStart
  13. : keyContent.position.start.offset,
  14. origEnd: keyContent
  15. ? keyContent.position.end.offset
  16. : additionalKeyRange.origStart + 1
  17. }), keyContent)
  18. : null;
  19. var mappingValue = valueContent || additionalValueRange
  20. ? mapping_value_1.createMappingValue(context.transformRange({
  21. origStart: additionalValueRange
  22. ? additionalValueRange.origStart
  23. : // istanbul ignore next
  24. valueContent.position.start.offset,
  25. origEnd: valueContent
  26. ? valueContent.position.end.offset
  27. : additionalValueRange.origStart + 1
  28. }), valueContent)
  29. : null;
  30. return createNode(position_1.createPosition(mappingKey ? mappingKey.position.start : mappingValue.position.start, mappingValue ? mappingValue.position.end : mappingKey.position.end), mappingKey ||
  31. mapping_key_1.createMappingKey(position_1.createEmptyPosition(mappingValue.position.start), null), mappingValue ||
  32. mapping_value_1.createMappingValue(position_1.createEmptyPosition(mappingKey.position.end), null));
  33. }
  34. exports.transformAstPair = transformAstPair;