diff options
| author | Misko Hevery | 2011-03-23 09:33:29 -0700 | 
|---|---|---|
| committer | Vojta Jina | 2011-08-02 01:00:03 +0200 | 
| commit | 8f0dcbab804180828d6859b1340c86cf161209fb (patch) | |
| tree | d13d47d47a1889cb7c96a87cecacd2e25307d51c /src/filters.js | |
| parent | 1f4b417184ce53af15474de065400f8a686430c5 (diff) | |
| download | angular.js-8f0dcbab804180828d6859b1340c86cf161209fb.tar.bz2 | |
feat(scope): new and improved scope implementation
- Speed improvements (about 4x on flush phase)
- Memory improvements (uses no function closures)
- Break $eval into $apply, $dispatch, $flush
- Introduced $watch and $observe
Breaks angular.equals() use === instead of ==
Breaks angular.scope() does not take parent as first argument
Breaks scope.$watch() takes scope as first argument
Breaks scope.$set(), scope.$get are removed
Breaks scope.$config is removed
Breaks $route.onChange callback has not "this" bounded
Diffstat (limited to 'src/filters.js')
| -rw-r--r-- | src/filters.js | 13 | 
1 files changed, 7 insertions, 6 deletions
| diff --git a/src/filters.js b/src/filters.js index bb8426c5..52aafcf3 100644 --- a/src/filters.js +++ b/src/filters.js @@ -645,25 +645,26 @@ angularFilter.html =  function(html, option){       </doc:scenario>     </doc:example>   */ -//TODO: externalize all regexps -angularFilter.linky = function(text){ +var LINKY_URL_REGEXP = /((ftp|https?):\/\/|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s\.\;\,\(\)\{\}\<\>]/, +    MAILTO_REGEXP = /^mailto:/; + +angularFilter.linky = function(text) {    if (!text) return text; -  var URL = /((ftp|https?):\/\/|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s\.\;\,\(\)\{\}\<\>]/;    var match;    var raw = text;    var html = [];    var writer = htmlSanitizeWriter(html);    var url;    var i; -  while (match=raw.match(URL)) { +  while (match = raw.match(LINKY_URL_REGEXP)) {      // We can not end in these as they are sometimes found at the end of the sentence      url = match[0];      // if we did not match ftp/http/mailto then assume mailto -    if (match[2]==match[3]) url = 'mailto:' + url; +    if (match[2] == match[3]) url = 'mailto:' + url;      i = match.index;      writer.chars(raw.substr(0, i));      writer.start('a', {href:url}); -    writer.chars(match[0].replace(/^mailto:/, '')); +    writer.chars(match[0].replace(MAILTO_REGEXP, ''));      writer.end('a');      raw = raw.substring(i + match[0].length);    } | 
