text: // modules are defined as an array
  // [ module function, map of requires ]
  //
  // map of requires is short require name -> numeric require
  //
  // anything defined in a previous bundle is accessed via the
  // orig method which is the require for previous bundles
  
  // eslint-disable-next-line no-global-assign
  parcelRequire = (function (modules, cache, entry) {
    // Save the require from previous bundle to this closure if any
    var previousRequire = typeof parcelRequire === 'function' && parcelRequire;
    var nodeRequire = typeof require === 'function' && require;
  
    function newRequire(name, jumped) {
      if (!cache[name]) {
        if (!modules[name]) {
          // if we cannot find the module within our internal map or
          // cache jump to the current global require ie. the last bundle
          // that was added to the page.
          var currentRequire = typeof parcelRequire === 'function' && parcelRequire;
          if (!jumped && currentRequire) {
            return currentRequire(name, true);
          }
  
          // If there are other bundles on this page the require from the
          // previous one is saved to 'previousRequire'. Repeat this as
          // many times as there are bundles until the module is found or
          // we exhaust the require chain.
          if (previousRequire) {
            return previousRequire(name, true);
          }
  
          // Try the node require function if it exists.
          if (nodeRequire && typeof name === 'string') {
            return nodeRequire(name);
          }
  
          var err = new Error('Cannot find module \'' + name + '\'');
          err.code = 'MODULE_NOT_FOUND';
          throw err;
        }
  
        localRequire.resolve = resolve;
  
        var module = cache[name] = new newRequire.Module(name);
  
        modules[name][0].call(module.exports, localRequire, module, module.exports);
      }
  
      return cache[name].exports;
  
      function localRequire(x){
        return newRequire(localRequire.resolve(x));
      }
  
      function resolve(x){
        return modules[name][1][x] || x;
      }
    }
  
    function Module(moduleName) {
      this.id = moduleName;
      this.bundle = newRequire;
      this.exports = {};
    }
  
    newRequire.isParcelRequire = true;
    newRequire.Module = Module;
    newRequire.modules = modules;
    newRequire.cache = cache;
    newRequire.parent = previousRequire;
  
    for (var i = 0; i < entry.length; i++) {
      newRequire(entry[i]);
    }
  
    // Override the current require with this new one
    return newRequire;
  })({3:[function(require,module,exports) {
  "use strict";
  
  Object.defineProperty(exports, "__esModule", {
      value: true
  });
  exports.default = {
      search: function search(searchTerm, searchLimit, sortBy) {
          return fetch("http://www.reddit.com/search.json?q=" + searchTerm + "&sort=" + sortBy + "&limit=" + searchLimit).then(function (res) {
              return res.json();
          }).then(function (data) {
              return data.data.children.map(function (data) {
                  return data.data;
              });
          }).catch(function (err) {
              return console.log(err);
          });
      }
  };
  },{}],2:[function(require,module,exports) {
  'use strict';
  
  var _redditapi = require('./redditapi');
  
  var _redditapi2 = _interopRequireDefault(_redditapi);
  
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  
  var searchForm = document.getElementById('search-form');
  var searchInput = document.getElementById('search-input');
  
  searchForm.addEventListener('submit', function (e) {
      var searchTerm = searchInput.value;
      var sortBy = document.querySelector('input[name=sortby]:checked').value;
      var searchLimit = document.getElementById('limit').value;
      if (searchTerm === '') {
          showMessage('Please add search term', 'alert-danger');
      }
      searchInput.value = '';
      _redditapi2.default.search(searchTerm, searchLimit, sortBy).then(function (results) {
          var output = '<div class="card-colums">\n                            <div class="row">\n                                ';
          results.forEach(function (post) {
  
              var image = post.preview ? post.preview.images[0].source.url : 'https://cdn.comparitech.com/wp-content/uploads/2017/08/reddit-1.jpg';
  
              output += '<div class="col-sm-3">\n                    <div class="card mb-2">\n                    <img class="card-img-top" src="' + image + '" alt="Card image cap">\n                    <div class="card-body">\n                    <h5 class="card-title">' + post.title + '</h5>\n                    <p class="card-text">' + truncateText(post.selftext, 100) + '</p>\n                    <a href="' + post.url + '" target="_blank\n                    " class="btn btn-primary">Read More</a>\n                    <hr>\n                    <span class="badge badge-secondary">Subreddit: ' + post.subreddit + '</span> \n                    <span class="badge badge-dark">Score: ' + post.score + '</span>\n                    </div>\n                    </div>\n                    </div>';
          });
          output += '</div></div>';
          document.getElementById('results').innerHTML = output;
      });
      e.preventDefault();
  });
  
  function showMessage(message, className) {
      var div = document.createElement('div');
      div.className = 'alert ' + className;
      div.appendChild(document.createTextNode(message));
  
      var searchContainer = document.getElementById('search-container');
      var search = document.getElementById('search');
      searchContainer.insertBefore(div, search);
      setTimeout(function () {
          document.querySelector('.alert').remove();
      }, 5000);
  }
  
  function truncateText(text, limit) {
      var shortend = text.indexOf(' ', limit);
      if (shortend == -1) return text;
      return text.substring(0, shortend);
  }
  },{"./redditapi":3}],21:[function(require,module,exports) {
  
  var OVERLAY_ID = '__parcel__error__overlay__';
  
  var global = (1, eval)('this');
  var OldModule = module.bundle.Module;
  
  function Module(moduleName) {
    OldModule.call(this, moduleName);
    this.hot = {
      data: module.bundle.hotData,
      _acceptCallbacks: [],
      _disposeCallbacks: [],
      accept: function (fn) {
        this._acceptCallbacks.push(fn || function () {});
      },
      dispose: function (fn) {
        this._disposeCallbacks.push(fn);
      }
    };
  
    module.bundle.hotData = null;
  }
  
  module.bundle.Module = Module;
  
  var parent = module.bundle.parent;
  if ((!parent || !parent.isParcelRequire) && typeof WebSocket !== 'undefined') {
    var hostname = '' || location.hostname;
    var protocol = location.protocol === 'https:' ? 'wss' : 'ws';
    var ws = new WebSocket(protocol + '://' + hostname + ':' + '55893' + '/');
    ws.onmessage = function (event) {
      var data = JSON.parse(event.data);
  
      if (data.type === 'update') {
        data.assets.forEach(function (asset) {
          hmrApply(global.parcelRequire, asset);
        });
  
        data.assets.forEach(function (asset) {
          if (!asset.isNew) {
            hmrAccept(global.parcelRequire, asset.id);
          }
        });
      }
  
      if (data.type === 'reload') {
        ws.close();
        ws.onclose = function () {
          location.reload();
        };
      }
  
      if (data.type === 'error-resolved') {
        console.log('[parcel] ✨ Error resolved');
  
        removeErrorOverlay();
      }
  
      if (data.type === 'error') {
        console.error('[parcel] 🚨  ' + data.error.message + '\n' + data.error.stack);
  
        removeErrorOverlay();
  
        var overlay = createErrorOverlay(data);
        document.body.appendChild(overlay);
      }
    };
  }
  
  function removeErrorOverlay() {
    var overlay = document.getElementById(OVERLAY_ID);
    if (overlay) {
      overlay.remove();
    }
  }
  
  function createErrorOverlay(data) {
    var overlay = document.createElement('div');
    overlay.id = OVERLAY_ID;
  
    // html encode message and stack trace
    var message = document.createElement('div');
    var stackTrace = document.createElement('pre');
    message.innerText = data.error.message;
    stackTrace.innerText = data.error.stack;
  
    overlay.innerHTML = '<div style="background: black; font-size: 16px; color: white; position: fixed; height: 100%; width: 100%; top: 0px; left: 0px; padding: 30px; opacity: 0.85; font-family: Menlo, Consolas, monospace; z-index: 9999;">' + '<span style="background: red; padding: 2px 4px; border-radius: 2px;">ERROR</span>' + '<span style="top: 2px; margin-left: 5px; position: relative;">🚨</span>' + '<div style="font-size: 18px; font-weight: bold; margin-top: 20px;">' + message.innerHTML + '</div>' + '<pre>' + stackTrace.innerHTML + '</pre>' + '</div>';
  
    return overlay;
  }
  
  function getParents(bundle, id) {
    var modules = bundle.modules;
    if (!modules) {
      return [];
    }
  
    var parents = [];
    var k, d, dep;
  
    for (k in modules) {
      for (d in modules[k][1]) {
        dep = modules[k][1][d];
        if (dep === id || Array.isArray(dep) && dep[dep.length - 1] === id) {
          parents.push(+k);
        }
      }
    }
  
    if (bundle.parent) {
      parents = parents.concat(getParents(bundle.parent, id));
    }
  
    return parents;
  }
  
  function hmrApply(bundle, asset) {
    var modules = bundle.modules;
    if (!modules) {
      return;
    }
  
    if (modules[asset.id] || !bundle.parent) {
      var fn = new Function('require', 'module', 'exports', asset.generated.js);
      asset.isNew = !modules[asset.id];
      modules[asset.id] = [fn, asset.deps];
    } else if (bundle.parent) {
      hmrApply(bundle.parent, asset);
    }
  }
  
  function hmrAccept(bundle, id) {
    var modules = bundle.modules;
    if (!modules) {
      return;
    }
  
    if (!modules[id] && bundle.parent) {
      return hmrAccept(bundle.parent, id);
    }
  
    var cached = bundle.cache[id];
    bundle.hotData = {};
    if (cached) {
      cached.hot.data = bundle.hotData;
    }
  
    if (cached && cached.hot && cached.hot._disposeCallbacks.length) {
      cached.hot._disposeCallbacks.forEach(function (cb) {
        cb(bundle.hotData);
      });
    }
  
    delete bundle.cache[id];
    bundle(id);
  
    cached = bundle.cache[id];
    if (cached && cached.hot && cached.hot._acceptCallbacks.length) {
      cached.hot._acceptCallbacks.forEach(function (cb) {
        cb();
      });
      return true;
    }
  
    return getParents(global.parcelRequire, id).some(function (id) {
      return hmrAccept(global.parcelRequire, id);
    });
  }
  },{}]},{},[21,2])
  //# sourceMappingURL=/RedditSearch.4c653c88.map