parseSelector: function()

in static/js/util/render.js [21:50]


  parseSelector: function (selector) {
    var patterns = util.selectorPatterns,
      props = {},
      value = '';

    for (var i = 0, len = patterns.length; i < len; i++) {
      var pattern = patterns[i];
      var regex = pattern.regex;

      while (regex.test(selector)) {
        var matches = regex.exec(selector);
        selector = selector.replace(matches[0], '');
        value = matches[0].substring(1);

        if (pattern.name in props) {
          props[pattern.name] += ' ' + value;
        } else {
          props[pattern.name] = value;
        }
      }
    }

    if (selector !== '') {
      props['tag'] = selector;
    } else {
      props['tag'] = 'div';
    }

    return props;
  }