Sha256: 34a4761700b5c91527241e93c48ae4f549c1d80a6471fdbcfa13c7fb24003626
Contents?: true
Size: 1.21 KB
Versions: 1
Compression:
Stored size: 1.21 KB
Contents
# Copyright 2012 Twitter, Inc # http://www.apache.org/licenses/LICENSE-2.0 class TwitterCldr.ListFormatter @data :-> TwitterCldr.get_data()[@name] formats: -> @constructor.data().formats format: (list) -> if @formats()[list.length.toString()]? this.compose(@formats()[list.length.toString()], list) else this.compose_list(list) compose_list: (list) -> result = this.compose(@formats().end || @formats().middle || "", [list[list.length - 2], list[list.length - 1]]) if list.length > 2 for i in [3..list.length] format_key = if i == list.length then "start" else "middle" format_key = "middle" unless @formats()[format_key]? result = this.compose(@formats()[format_key] || "", [list[list.length - i], result]) result compose: (format, elements) -> elements = (element for element in elements when element?) if elements.length > 1 result = format.replace(/\{(\d+)\}/g, '$1') if TwitterCldr.Settings.is_rtl() result = TwitterCldr.Bidi.from_string(result, {"direction": "RTL"}).reorder_visually().toString() result.replace(/(\d+)/g, (match) -> elements[parseInt(match)] ) else elements[0] || ""
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
twitter_cldr_js-3.1.0 | lib/twitter_cldr/js/mustache/implementation/shared/lists.coffee |