!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 

uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Safe-mode: OFF (not secure)

/var/www/html/pmb/node_modules/jest-watcher/build/lib/   drwxr-xr-x
Free 13.28 GB of 57.97 GB (22.91%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     Prompt.js (3.04 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
'use strict';

Object.defineProperty(exports, '__esModule', {
  value: true
});
exports.default = void 0;

var _constants = require('../constants');

function _defineProperty(obj, key, value) {
  if (key in obj) {
    Object.defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
  } else {
    obj[key] = value;
  }
  return obj;
}

class Prompt {
  constructor() {
    _defineProperty(this, '_entering', void 0);

    _defineProperty(this, '_value', void 0);

    _defineProperty(this, '_onChange', void 0);

    _defineProperty(this, '_onSuccess', void 0);

    _defineProperty(this, '_onCancel', void 0);

    _defineProperty(this, '_offset', void 0);

    _defineProperty(this, '_promptLength', void 0);

    _defineProperty(this, '_selection', void 0);

    _defineProperty(this, '_onResize', () => {
      this._onChange();
    });

    // Copied from `enter` to satisfy TS
    this._entering = true;
    this._value = '';
    this._selection = null;
    this._offset = -1;
    this._promptLength = 0;

    this._onChange = () => {};

    this._onSuccess = () => {};

    this._onCancel = () => {};
  }

  enter(onChange, onSuccess, onCancel) {
    this._entering = true;
    this._value = '';
    this._onSuccess = onSuccess;
    this._onCancel = onCancel;
    this._selection = null;
    this._offset = -1;
    this._promptLength = 0;

    this._onChange = () =>
      onChange(this._value, {
        max: 10,
        offset: this._offset
      });

    this._onChange();

    process.stdout.on('resize', this._onResize);
  }

  setPromptLength(length) {
    this._promptLength = length;
  }

  setPromptSelection(selected) {
    this._selection = selected;
  }

  put(key) {
    switch (key) {
      case _constants.KEYS.ENTER:
        this._entering = false;

        this._onSuccess(this._selection || this._value);

        this.abort();
        break;

      case _constants.KEYS.ESCAPE:
        this._entering = false;

        this._onCancel(this._value);

        this.abort();
        break;

      case _constants.KEYS.ARROW_DOWN:
        this._offset = Math.min(this._offset + 1, this._promptLength - 1);

        this._onChange();

        break;

      case _constants.KEYS.ARROW_UP:
        this._offset = Math.max(this._offset - 1, -1);

        this._onChange();

        break;

      case _constants.KEYS.ARROW_LEFT:
      case _constants.KEYS.ARROW_RIGHT:
        break;

      case _constants.KEYS.CONTROL_U:
        this._value = '';
        this._offset = -1;
        this._selection = null;

        this._onChange();

        break;

      default:
        this._value =
          key === _constants.KEYS.BACKSPACE
            ? this._value.slice(0, -1)
            : this._value + key;
        this._offset = -1;
        this._selection = null;

        this._onChange();

        break;
    }
  }

  abort() {
    this._entering = false;
    this._value = '';
    process.stdout.removeListener('resize', this._onResize);
  }

  isEntering() {
    return this._entering;
  }
}

exports.default = Prompt;

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0826 ]--