servel 0.24.0 → 0.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a863f769dc401adeac14d38484a6e5ae7492d7f322e80a1fefd62bc4b7e5f286
4
- data.tar.gz: c65d410dbf1ad9a645dcb9dc7d94e97c18d6a7a8badcc7f77a21959a4eb02112
3
+ metadata.gz: ba7bd2682174a0720a7bbdd976fe70a8c042236c37bb483fbd739e96a4b4a4e5
4
+ data.tar.gz: 60472441db9c31fc9b30b93a5cc6df9dd45d0849c58aa7f6a9017b8a386ff58b
5
5
  SHA512:
6
- metadata.gz: a6b43b998bd6f67609370def7f37e4768083a8ec1df98e7ea5c00726b77f718c0a4211249966365315aed058b63d95aef2cc4b597885fb7b63aa655d8255c5e1
7
- data.tar.gz: 51a0748759c661a13883a52018ba6819b9d800a1f42413ca469a22d41465c95e653f23b2ed96b606b1949d44ffb02279f714578cd27337985aa546bf0eb7892c
6
+ metadata.gz: 65d2782a424feb924fdd29aac0e510076b0ee9c6f5a524809290966d7d3572b7a5456a778ff4f1cc913999025b056b1866a4805c840193303d015035eba0a361
7
+ data.tar.gz: dd7275024f111053d55e66e22d266bea523e2656da47e43d59f9ce6021dda1433acb3bb160a4d25f6867211537c1b8291880f016a25b616882920a3eea97dd5d
data/app/index.haml CHANGED
@@ -18,7 +18,6 @@
18
18
  #{include('css/gallery-text.css')}
19
19
 
20
20
  :javascript
21
- #{include('js/natural-orderby.min.js')}
22
21
  #{include('js/entries.js')}
23
22
  #{include('js/common.js')}
24
23
  #{include('js/index.js')}
data/app/js/entries.js CHANGED
@@ -23,10 +23,10 @@ var Entries = (function() {
23
23
  return filteredEntries;
24
24
  }
25
25
 
26
- function sortByName(entries) {
27
- return naturalOrderBy.orderBy(entries, function(entry) {
28
- return entry.name.toLowerCase();
29
- }, sortDirection);
26
+ var nameCollator = new Intl.Collator(undefined, { numeric: true, sensitivity: 'base' });
27
+
28
+ function sortByName(a, b) {
29
+ return nameCollator.compare(a.name, b.name);
30
30
  }
31
31
 
32
32
  function sortByMtime(a, b) {
@@ -48,10 +48,9 @@ var Entries = (function() {
48
48
  }
49
49
 
50
50
  function runSort(entries) {
51
- if(sortMethod == "name") return sortByName(entries);
52
-
53
51
  var sortFunction;
54
- if(sortMethod == "mtime") sortFunction = sortByMtime;
52
+ if(sortMethod == "name") sortFunction = sortByName;
53
+ else if(sortMethod == "mtime") sortFunction = sortByMtime;
55
54
  else if(sortMethod == "size") sortFunction = sortBySize;
56
55
  else if(sortMethod == "type") sortFunction = sortByType;
57
56
 
@@ -62,9 +61,9 @@ var Entries = (function() {
62
61
  }
63
62
 
64
63
  function updateLists() {
65
- specialEntries = window.specialEntries.slice();
66
- directoryEntries = runSort(runFilter(window.directoryEntries.slice()));
67
- fileEntries = runSort(runFilter(window.fileEntries.slice()));
64
+ var specialEntries = window.specialEntries.slice();
65
+ var directoryEntries = runSort(runFilter(window.directoryEntries.slice()));
66
+ var fileEntries = runSort(runFilter(window.fileEntries.slice()));
68
67
 
69
68
  all = [].concat(specialEntries, directoryEntries, fileEntries);
70
69
 
data/lib/servel/entry.rb CHANGED
@@ -36,7 +36,7 @@ class Servel::Entry
36
36
  name: @name,
37
37
  type: @type,
38
38
  size: @size.to_i,
39
- sizeText: @size.nil? ? "-" : @size,
39
+ sizeText: @size.nil? ? "-" : ActiveSupport::NumberHelper.number_to_human_size(@size),
40
40
  mtime: @mtime.to_i,
41
41
  mtimeText: @mtime.nil? ? "-" : @mtime.strftime("%e %b %Y %l:%M %p"),
42
42
  media: media?
@@ -1,6 +1,5 @@
1
1
  class Servel::HamlContext
2
2
  extend Servel::Instrumentation
3
- include ActiveSupport::NumberHelper
4
3
 
5
4
  LOCK = Mutex.new
6
5
 
@@ -1,3 +1,3 @@
1
1
  module Servel
2
- VERSION = "0.24.0"
2
+ VERSION = "0.25.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: servel
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.24.0
4
+ version: 0.25.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brenton "B-Train" Fletcher
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-09-10 00:00:00.000000000 Z
11
+ date: 2018-09-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -136,7 +136,6 @@ files:
136
136
  - app/js/gallery.js
137
137
  - app/js/index.js
138
138
  - app/js/listing.js
139
- - app/js/natural-orderby.min.js
140
139
  - app/js/ume.js
141
140
  - bin/console
142
141
  - bin/servel
@@ -1,2 +0,0 @@
1
- var naturalOrderBy=function(e){"use strict";var d=function(e,n){return e<n?-1:n<e?1:0},r=/(^0x[\da-fA-F]+$|^([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?(?!\.\d+)(?=\D|\s|$))|\d+)/g,l=/^\s+|\s+$/g,o=/\s+/g,u=/^[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?$/,t=/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[/-]\d{1,4}[/-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,a=/^0+[1-9]{1}[0-9]*$/,y=/[^\x00-\x80]/,m=function(e,n){return e.value===n.value?0:void 0!==e.parsedNumber&&void 0!==n.parsedNumber?d(e.parsedNumber,n.parsedNumber):e.chunks&&n.chunks?function(e,n){for(var r,t,i,o,u=e.length,a=n.length,s=Math.min(u,a),c=0;c<s;c++){var f=e[c],l=n[c];if(f!==l)return""===f!=(""===l)?""===f?-1:1:"number"==typeof f&&"number"==typeof l?d(f,l):"number"==typeof f||"number"==typeof l?"number"==typeof f?-1:1:y.test(f+l)&&f.localeCompare?(i=l,(o=f.localeCompare(i))?o/Math.abs(o):0):(r=f)<(t=l)?-1:t<r?1:0}return s<u||s<a?u<=s?-1:1:0}(e.chunks,n.chunks):(t=n,((r=e).chunks?!t.chunks:t.chunks)?r.chunks?-1:1:(r.isNaN?!t.isNaN:t.isNaN)?r.isNaN?-1:1:(r.isSymbol?!t.isSymbol:t.isSymbol)?r.isSymbol?-1:1:(r.isObject?!t.isObject:t.isObject)?r.isObject?-1:1:(r.isArray?!t.isArray:t.isArray)?r.isArray?-1:1:(r.isFunction?!t.isFunction:t.isFunction)?r.isFunction?-1:1:(r.isNull?!t.isNull:t.isNull)?r.isNull?-1:1:0);var r,t},v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s=function(r){return"function"==typeof r?r:function(e){if(Array.isArray(e)){var n=Number(r);if(Number.isInteger(n))return e[n]}else if(e&&"object"===(void 0===e?"undefined":v(e))&&"function"!=typeof r)return e[r];return e}},c=function(e){if(0!==e.length){var n=Number(e);if(!Number.isNaN(n))return n}},b=function(e){var n=c(e);return void 0!==n?n:function(e){if(t.test(e)){var n=Date.parse(e);if(!Number.isNaN(n))return n}}(e)},p=function(e){var n;return(n=e,n.replace(r,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0")).map(function(e,n,r){return t=e,i=r.length,!u.test(t)||a.test(t)&&1!==i?t.replace(o," ").replace(l,""):c(t)||0;var t,i})},N=function(e){return Number.isNaN(e)||e instanceof Number&&Number.isNaN(e.valueOf())},f=function(){var f=!(0<arguments.length&&void 0!==arguments[0])||arguments[0];return function(e){if("string"==typeof e||e instanceof String||("number"==typeof e||e instanceof Number)&&!N(e)||"boolean"==typeof e||e instanceof Boolean||e instanceof Date){var n=(i=f,"boolean"==typeof(t=e)||t instanceof Boolean?Number(t).toString():"number"==typeof t||t instanceof Number?t.toString():t instanceof Date?t.getTime().toString():"string"==typeof t||t instanceof String?(i?t:t.toLowerCase()).replace(l,""):""),r=b(n);return{parsedNumber:r,chunks:p(r?""+r:n),value:e}}var t,i,o,u,a,s,c;return{isArray:Array.isArray(e),isFunction:(c=e,"function"==typeof c),isNaN:N(e),isNull:(s=e,null===s),isObject:(a=e,!(null===a||"object"!==(void 0===a?"undefined":v(a))||Array.isArray(a)||a instanceof Number||a instanceof String||a instanceof Boolean||a instanceof Date)),isSymbol:(u=e,"symbol"===(void 0===u?"undefined":v(u))),isUndefined:(o=e,void 0===o),value:e}}},g=function(t,e,r){var i=e.length?e.map(s):[function(e){return e}],n=t.map(function(n,e){return{index:e,values:i.map(function(e){return e(n)}).map(f())}});return n.sort(function(e,n){return function(e,n,r){for(var t=e.values,i=n.values,o=t.length,u=r.length,a=0;a<o;a++){var s=a<u?r[a]:null;if(s&&"function"==typeof s){var c=s(t[a].value,i[a].value);if(c)return c}else{var f=m(t[a],i[a]);if(f)return f*("desc"===s?-1:1)}}return 0}(e,n,r)}),n.map(function(e){return n=t,r=e.index,n[r];var n,r})};var i={caseSensitive:!0,order:"asc"};return e.orderBy=function(e,n,r){if(!e||!Array.isArray(e))return[];var t=function(e){if(!e)return[];var n=Array.isArray(e)?[].concat(e):[e];return n.some(function(e){return"string"!=typeof e&&"number"!=typeof e&&"function"!=typeof e})?[]:n}(n),i=function(e){if(!e)return[];var n=Array.isArray(e)?[].concat(e):[e];return n.some(function(e){return"asc"!==e&&"desc"!==e&&"function"!=typeof e})?[]:n}(r);return g(e,t,i)},e.compare=function(e){var n,o,r=(n=e)&&"object"===(void 0===n?"undefined":v(n))?{caseSensitive:"boolean"==typeof n.caseSensitive?n.caseSensitive:i.caseSensitive,order:"asc"===n.order||"desc"===n.order?n.order:i.order}:i;return o=r,function(e,n){var r=f(o.caseSensitive),t=r(e),i=r(n);return m(t,i)*("desc"===o.order?-1:1)}},e}({});
2
- //# sourceMappingURL=natural-orderby.min.js.map