Sha256: beb4d6252d9c99a53ea1cf2138b84b23d30baf0517266d390d0094b4d42340db
Contents?: true
Size: 1.47 KB
Versions: 108
Compression:
Stored size: 1.47 KB
Contents
angular.module('materialFilters', []) .filter 'trimLength', -> return (input, num, scope) -> return input unless typeof input == 'string' return input.substring(0,num || 20) + '...' .filter 'titleize', -> return (input) -> return unless input return input.replace(/\_/g,' ').replace(/\b[a-z]/g, (letter)-> return letter[0].toUpperCase()) .filter 'pluck', -> pluck = (objects, property) -> return [] if !(objects && property && angular.isArray(objects)) property = String(property) return objects.map( (object) -> object = Object(object) return object[property] if (object.hasOwnProperty(property)) return '') return (objects, property) -> return pluck(objects, property) .filter 'unique', -> return (items, filterOn) -> return items if filterOn == false if (filterOn || angular.isUndefined(filterOn)) && angular.isArray(items) newItems = [] extractValueToCompare = (item) -> if angular.isObject(item) && angular.isString(filterOn) then item[filterOn] else item for item in items for newItem in newItems isDuplicate = false if (angular.equals(extractValueToCompare(newItem), extractValueToCompare(item))) isDuplicate = true break newItems.push(item) if (!isDuplicate) items = newItems return items; .filter 'join', -> return (list, token) -> return (list||[]).join(token)
Version data entries
108 entries across 108 versions & 1 rubygems