pattern_mode_helpers.js 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. /**
  2. * Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
  3. *
  4. * This source code is licensed under the MIT license found in the
  5. * LICENSE file in the root directory of this source tree.
  6. *
  7. *
  8. */
  9. 'use strict';
  10. Object.defineProperty(exports, '__esModule', {
  11. value: true
  12. });
  13. exports.printRestoredPatternCaret = exports.printPatternCaret = undefined;
  14. var _chalk;
  15. function _load_chalk() {
  16. return (_chalk = _interopRequireDefault(require('chalk')));
  17. }
  18. var _ansiEscapes;
  19. function _load_ansiEscapes() {
  20. return (_ansiEscapes = _interopRequireDefault(require('ansi-escapes')));
  21. }
  22. var _stringLength;
  23. function _load_stringLength() {
  24. return (_stringLength = _interopRequireDefault(require('string-length')));
  25. }
  26. function _interopRequireDefault(obj) {
  27. return obj && obj.__esModule ? obj : {default: obj};
  28. }
  29. const printPatternCaret = (exports.printPatternCaret = (pattern, pipe) => {
  30. const inputText = `${(_chalk || _load_chalk()).default.dim(
  31. ' pattern \u203A'
  32. )} ${pattern}`;
  33. pipe.write((_ansiEscapes || _load_ansiEscapes()).default.eraseDown);
  34. pipe.write(inputText);
  35. pipe.write((_ansiEscapes || _load_ansiEscapes()).default.cursorSavePosition);
  36. });
  37. const printRestoredPatternCaret = (exports.printRestoredPatternCaret = (
  38. pattern,
  39. currentUsageRows,
  40. pipe
  41. ) => {
  42. const inputText = `${(_chalk || _load_chalk()).default.dim(
  43. ' pattern \u203A'
  44. )} ${pattern}`;
  45. pipe.write(
  46. (_ansiEscapes || _load_ansiEscapes()).default.cursorTo(
  47. (0, (_stringLength || _load_stringLength()).default)(inputText),
  48. currentUsageRows - 1
  49. )
  50. );
  51. pipe.write(
  52. (_ansiEscapes || _load_ansiEscapes()).default.cursorRestorePosition
  53. );
  54. });