github.com/jfrog/frogbot@v1.1.1-0.20231221090046-821a26f50338/action/node_modules/@kwsites/promise-deferred/dist/index.js (about)

     1  "use strict";
     2  Object.defineProperty(exports, "__esModule", { value: true });
     3  exports.createDeferred = exports.deferred = void 0;
     4  /**
     5   * Creates a new `DeferredPromise`
     6   *
     7   * ```typescript
     8   import {deferred} from '@kwsites/promise-deferred`;
     9   ```
    10   */
    11  function deferred() {
    12      let done;
    13      let fail;
    14      let status = 'pending';
    15      const promise = new Promise((_done, _fail) => {
    16          done = _done;
    17          fail = _fail;
    18      });
    19      return {
    20          promise,
    21          done(result) {
    22              if (status === 'pending') {
    23                  status = 'resolved';
    24                  done(result);
    25              }
    26          },
    27          fail(error) {
    28              if (status === 'pending') {
    29                  status = 'rejected';
    30                  fail(error);
    31              }
    32          },
    33          get fulfilled() {
    34              return status !== 'pending';
    35          },
    36          get status() {
    37              return status;
    38          },
    39      };
    40  }
    41  exports.deferred = deferred;
    42  /**
    43   * Alias of the exported `deferred` function, to help consumers wanting to use `deferred` as the
    44   * local variable name rather than the factory import name, without needing to rename on import.
    45   *
    46   * ```typescript
    47   import {createDeferred} from '@kwsites/promise-deferred`;
    48   ```
    49   */
    50  exports.createDeferred = deferred;
    51  /**
    52   * Default export allows use as:
    53   *
    54   * ```typescript
    55   import deferred from '@kwsites/promise-deferred`;
    56   ```
    57   */
    58  exports.default = deferred;
    59  //# sourceMappingURL=index.js.map