From 47d73c656b1a63a745af5e2a7b8377474f9c2bdb Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sun, 21 Jul 2013 17:09:21 +0200 Subject: [PATCH 01/83] Sets version to 0.23.0-dev --- README.md | 5 +++++ package.json | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 2faf2a74..d14e00e8 100644 --- a/README.md +++ b/README.md @@ -59,6 +59,11 @@ It profits from these great projects: ( **h5ai** uses [semantic versioning](http://semver.org/) ) +### develop branch + +* ... + + ### v0.23.0 - *2013-07-21* * removes `aai` mode! diff --git a/package.json b/package.json index 5bdc18ae..b848c08e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "h5ai", - "version": "0.23.0", + "version": "0.23.0-dev", "description": "a modern HTTP web server index", "url": "http://larsjung.de/h5ai/", "author": "Lars Jung", From ede9f4d3f8fd8ebaea8cce5a24b17766aa0dffa3 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sun, 21 Jul 2013 22:23:16 +0200 Subject: [PATCH 02/83] Fixes setParentFolderLabels=false. --- src/_h5ai/client/js/inc/ext/l10n.js | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/_h5ai/client/js/inc/ext/l10n.js b/src/_h5ai/client/js/inc/ext/l10n.js index b27d145d..c2abc220 100644 --- a/src/_h5ai/client/js/inc/ext/l10n.js +++ b/src/_h5ai/client/js/inc/ext/l10n.js @@ -151,14 +151,11 @@ modulejs.define('ext/l10n', ['_', '$', 'core/settings', 'core/langs', 'core/form init = function () { - if (!settings.enabled) { - event.sub('ready', function () { update(); }); - return; + if (settings.enabled) { + initLangSelector(langs); } - initLangSelector(langs); - - event.sub('ready', function () { + event.sub('location.changed', function () { localize(langs, settings.lang, settings.useBrowserLang); }); From efb447ae789762595f48194e4ba66ccba7756aa0 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Tue, 23 Jul 2013 10:21:02 +0200 Subject: [PATCH 03/83] Minor refactoring. --- src/_h5ai/conf/options.json | 4 ++-- src/_h5ai/server/php/inc/Api.php | 2 ++ src/_h5ai/server/php/index.php | 2 -- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/_h5ai/conf/options.json b/src/_h5ai/conf/options.json index 71405d05..c5079066 100644 --- a/src/_h5ai/conf/options.json +++ b/src/_h5ai/conf/options.json @@ -44,7 +44,7 @@ Options "indexFiles": ["index.html", "index.htm", "index.php"], "ignore": ["^\\.", "^_{{pkg.name}}"], "smartBrowsing": true, - "extInNewWindow": true + "extInNewWindow": false }, @@ -180,7 +180,7 @@ Options 2: mode, servername and -version */ "mode": { - "enabled": true, + "enabled": false, "display": 2 }, diff --git a/src/_h5ai/server/php/inc/Api.php b/src/_h5ai/server/php/inc/Api.php index 6968a14c..518a4702 100644 --- a/src/_h5ai/server/php/inc/Api.php +++ b/src/_h5ai/server/php/inc/Api.php @@ -207,6 +207,8 @@ class Api { json_exit(); } + + json_fail(100, "unsupported request"); } } diff --git a/src/_h5ai/server/php/index.php b/src/_h5ai/server/php/index.php index 50916f7d..967d49b1 100644 --- a/src/_h5ai/server/php/index.php +++ b/src/_h5ai/server/php/index.php @@ -53,8 +53,6 @@ if (array_key_exists("action", $_REQUEST)) { $api = new Api($app); $api->apply(); - json_fail(100, "unsupported request"); - } else { header("Content-type: text/html;charset=utf-8"); From d76e1194d1c544337beed6d6202f53d8881c77a3 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Tue, 23 Jul 2013 20:09:56 +0200 Subject: [PATCH 04/83] Adds EXIF and PHP version to info page. --- src/_h5ai/client/js/inc/info.js | 1 + src/_h5ai/conf/options.json | 6 +++--- src/_h5ai/index.html.jade | 6 +++++- src/_h5ai/server/php/inc/App.php | 3 +++ 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/_h5ai/client/js/inc/info.js b/src/_h5ai/client/js/inc/info.js index 58197760..54bb59cc 100644 --- a/src/_h5ai/client/js/inc/info.js +++ b/src/_h5ai/client/js/inc/info.js @@ -22,6 +22,7 @@ modulejs.define('info', ['$'], function ($) { setCheckResult(this, json.checks[$(this).data('id')]); }); + $('.test.php .test-result').text(json.checks['phpversion']); } }); }; diff --git a/src/_h5ai/conf/options.json b/src/_h5ai/conf/options.json index c5079066..59d3f241 100644 --- a/src/_h5ai/conf/options.json +++ b/src/_h5ai/conf/options.json @@ -57,7 +57,7 @@ Options - interval: number, update interval in milliseconds, at least 1000 */ "autorefresh": { - "enabled": false, + "enabled": true, "interval": 5000 }, @@ -84,7 +84,7 @@ Options Allow file deletion. */ "delete": { - "enabled": false + "enabled": true }, /* [EXPERIMENTAL] @@ -95,7 +95,7 @@ Options - maxfilesize: number, file size is in MB */ "dropbox": { - "enabled": false, + "enabled": true, "maxfiles": 10, "maxfilesize": 1000 }, diff --git a/src/_h5ai/index.html.jade b/src/_h5ai/index.html.jade index 708aee0e..6f29d1ee 100644 --- a/src/_h5ai/index.html.jade +++ b/src/_h5ai/index.html.jade @@ -32,7 +32,7 @@ html.no-js( lang="en" ) h2 server supports ul#tests - li.test( data-id="php" ) + li.test.php( data-id="php" ) span.test-label php version span.test-result ? div.test-info PHP version >= 5.2.1 @@ -44,6 +44,10 @@ html.no-js( lang="en" ) span.test-label image thumbs span.test-result ? div.test-info PHP GD extension with JPEG support available + li.test( data-id="exif" ) + span.test-label use exif thumbs + span.test-result ? + div.test-info PHP EXIF extension available li.test( data-id="ffmpeg" ) span.test-label movie thumbs span.test-result ? diff --git a/src/_h5ai/server/php/inc/App.php b/src/_h5ai/server/php/inc/App.php index 1617ad4c..77e97c06 100644 --- a/src/_h5ai/server/php/inc/App.php +++ b/src/_h5ai/server/php/inc/App.php @@ -278,6 +278,7 @@ class App { $gdinfo = gd_info(); $gd = array_key_exists("JPG Support", $gdinfo) && $gdinfo["JPG Support"] || array_key_exists("JPEG Support", $gdinfo) && $gdinfo["JPEG Support"]; } + $exif = function_exists("exif_thumbnail"); $cache = @is_writable($this->get_cache_abs_path()); $tar = @preg_match("/tar(.exe)?$/i", `which tar`) > 0; $zip = @preg_match("/zip(.exe)?$/i", `which zip`) > 0; @@ -287,9 +288,11 @@ class App { return array( "idx" => $this->app_abs_href . "server/php/index.php", + "phpversion" => PHP_VERSION, "php" => $php, "cache" => $cache, "thumbs" => $gd, + "exif" => $exif, "tar" => $tar, "zip" => $zip, "convert" => $convert, From a3a236d2e11b160b6d7631a32d73cf25046427f4 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Tue, 23 Jul 2013 20:39:24 +0200 Subject: [PATCH 05/83] Ignore warnings for unsupported images. --- src/_h5ai/server/php/inc/Thumb.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_h5ai/server/php/inc/Thumb.php b/src/_h5ai/server/php/inc/Thumb.php index d4b6dacd..4365040d 100644 --- a/src/_h5ai/server/php/inc/Thumb.php +++ b/src/_h5ai/server/php/inc/Thumb.php @@ -57,7 +57,7 @@ class Thumb { $et = false; if (function_exists("exif_thumbnail")) { - $et = exif_thumbnail($source_abs_path); + $et = @exif_thumbnail($source_abs_path); } if($et !== false) { file_put_contents($thumb_abs_path, $et); From 8a431fe95e414cfe9d3bfd1913c4fc9ce09717f5 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Thu, 25 Jul 2013 23:41:20 +0200 Subject: [PATCH 06/83] Adds .aiff extention to type audio. --- src/_h5ai/conf/types.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_h5ai/conf/types.json b/src/_h5ai/conf/types.json index 1e7105df..bf0f5f1a 100644 --- a/src/_h5ai/conf/types.json +++ b/src/_h5ai/conf/types.json @@ -7,7 +7,7 @@ File types mapped to file extensions { "archive": [".tar.bz2", ".tar.gz", ".tgz"], - "audio": [".aif", ".flac", ".m4a", ".mid", ".mp3", ".mpa", ".ra", ".ogg", ".wav", ".wma"], + "audio": [".aif", ".aiff", ".flac", ".m4a", ".mid", ".mp3", ".mpa", ".ra", ".ogg", ".wav", ".wma"], "authors": ["authors"], "bin": [".class", ".o", ".so"], "blank": [], From 696409e19c46789175daea927829eff0b25a4761 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 26 Jul 2013 14:44:31 +0200 Subject: [PATCH 07/83] Updates pl translation. --- src/_h5ai/conf/l10n/pl.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/_h5ai/conf/l10n/pl.json b/src/_h5ai/conf/l10n/pl.json index de4b7c07..ab672614 100644 --- a/src/_h5ai/conf/l10n/pl.json +++ b/src/_h5ai/conf/l10n/pl.json @@ -9,10 +9,10 @@ "size": "Rozmiar", "parentDirectory": "Katalog nadrzędny", "empty": "pusty", - "folders": "foldery", - "files": "pliki", + "folders": "folderów", + "files": "plików", "download": "pobierz", - "noMatch": "nie pasuje", + "noMatch": "nie znaleziono", "dateFormat": "YYYY-MM-DD HH:mm", "filter": "filtr", "delete": "usuń" From 3733d0c6d09189c264b761fa923ae7469d4fc8be Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sun, 28 Jul 2013 16:15:20 +0200 Subject: [PATCH 08/83] Replace 'which' with 'command -v' to be POSIX compatible here. --- src/_h5ai/server/php/inc/App.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/_h5ai/server/php/inc/App.php b/src/_h5ai/server/php/inc/App.php index 77e97c06..f699a823 100644 --- a/src/_h5ai/server/php/inc/App.php +++ b/src/_h5ai/server/php/inc/App.php @@ -280,11 +280,11 @@ class App { } $exif = function_exists("exif_thumbnail"); $cache = @is_writable($this->get_cache_abs_path()); - $tar = @preg_match("/tar(.exe)?$/i", `which tar`) > 0; - $zip = @preg_match("/zip(.exe)?$/i", `which zip`) > 0; - $convert = @preg_match("/convert(.exe)?$/i", `which convert`) > 0; - $ffmpeg = @preg_match("/ffmpeg(.exe)?$/i", `which ffmpeg`) > 0; - $du = @preg_match("/du(.exe)?$/i", `which du`) > 0; + $tar = @preg_match("/tar(.exe)?$/i", `command -v tar`) > 0; + $zip = @preg_match("/zip(.exe)?$/i", `command -v zip`) > 0; + $convert = @preg_match("/convert(.exe)?$/i", `command -v convert`) > 0; + $ffmpeg = @preg_match("/ffmpeg(.exe)?$/i", `command -v ffmpeg`) > 0; + $du = @preg_match("/du(.exe)?$/i", `command -v du`) > 0; return array( "idx" => $this->app_abs_href . "server/php/index.php", From a296311b88eb888bf57b52bbc8d4237362d20584 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Tue, 13 Aug 2013 00:36:39 +0200 Subject: [PATCH 09/83] Updates build process. --- makefile.js | 129 +++++++++++++++++++++++---------------------------- package.json | 2 +- 2 files changed, 59 insertions(+), 72 deletions(-) diff --git a/makefile.js b/makefile.js index cc43d53d..c24553da 100644 --- a/makefile.js +++ b/makefile.js @@ -2,82 +2,49 @@ 'use strict'; -var path = require('path'), - - pkg = require('./package.json'), - - root = path.resolve(__dirname), - src = path.join(root, 'src'), - build = path.join(root, 'build'), - - jshint = { - // Enforcing Options - bitwise: true, - curly: true, - eqeqeq: true, - forin: true, - latedef: true, - newcap: true, - noempty: true, - plusplus: true, - trailing: true, - undef: true, - - // Environments - browser: true, - - // Globals - predef: [ - 'modulejs' - ] - }, - - handlebarsEnv = { - pkg: pkg - }, - - mapSrc = function (blob) { - - return blob.source.replace(src, build).replace(/\.less$/, '.css').replace(/\.jade$/, ''); - }, - - mapRoot = function (blob) { - - return blob.source.replace(root, path.join(build, '_h5ai')); - }; - - module.exports = function (make) { - var Event = make.Event, + var path = require('path'), + + pkg = require('./package.json'), + + root = path.resolve(__dirname), + src = path.join(root, 'src'), + build = path.join(root, 'build'), + $ = make.fQuery, - moment = make.moment; + mapSrc = $.map.p(src, build).s('.less', '.css').s('.jade', ''), + mapRoot = $.map.p(root, build); - make.version('>=0.8.1'); + make.version('>=0.10.0'); make.defaults('build'); make.before(function () { - handlebarsEnv.stamp = moment().format('YYYY-MM-DD HH:mm:ss'); + var moment = make.moment(); + + make.env = { + pkg: pkg, + stamp: moment.format('YYYY-MM-DD HH:mm:ss') + }; + + $.info({ method: 'before', message: pkg.version + ' ' + make.env.stamp }); }); make.target('check-version', [], 'add git info to dev builds').async(function (done, fail) { - if (!/-dev$/.test(pkg.version)) { + if (!/\+$/.test(pkg.version)) { done(); return; } $.git(root, function (err, result) { - pkg.version += '-' + result.revListOriginMasterHead.length + '-' + result.revParseHead.slice(0, 7); - Event.info({ - method: 'check-version', - message: 'version set to ' + pkg.version - }); + pkg.version += result.buildSuffix; + $.info({ method: 'check-version', message: 'version set to ' + pkg.version }); done(); }); }); @@ -85,14 +52,34 @@ module.exports = function (make) { make.target('clean', [], 'delete build folder').sync(function () { - $.rmfr($.I_AM_SURE, build); + $.DELETE(build); }); make.target('lint', [], 'lint all JavaScript files with JSHint').sync(function () { + var jshint = { + // Enforcing Options + bitwise: true, + curly: true, + eqeqeq: true, + forin: true, + latedef: true, + newcap: true, + noempty: true, + plusplus: true, + trailing: true, + undef: true, + + // Environments + browser: true + }, + globals = { + 'modulejs': true + }; + $(src + '/_h5ai/client/js: **/*.js, ! lib/**') - .jshint(jshint); + .jshint(jshint, globals); }); @@ -102,28 +89,28 @@ module.exports = function (make) { .modified(mapSrc, $(src + ': _h5ai/client/js/**')) .includify() .uglifyjs() - .write($.OVERWRITE, mapSrc); + .WRITE(mapSrc); $(src + ': _h5ai/client/css/*.less') .modified(mapSrc, $(src + ': _h5ai/client/css/**')) .less() .cssmin() - .write($.OVERWRITE, mapSrc); + .WRITE(mapSrc); $(src + ': **/*.jade') .modified(mapSrc) - .handlebars(handlebarsEnv) + .handlebars(make.env) .jade() - .write($.OVERWRITE, mapSrc); + .WRITE(mapSrc); $(src + ': **, ! _h5ai/client/js/**, ! _h5ai/client/css/**, ! **/*.jade') .modified(mapSrc) - .handlebars(handlebarsEnv) - .write($.OVERWRITE, mapSrc); + .handlebars(make.env) + .WRITE(mapSrc); $(root + ': README*, LICENSE*') .modified(mapRoot) - .write($.OVERWRITE, mapRoot); + .WRITE(mapRoot); }); @@ -133,28 +120,28 @@ module.exports = function (make) { .modified(mapSrc, $(src + ': _h5ai/client/js/**')) .includify() // .uglifyjs() - .write($.OVERWRITE, mapSrc); + .WRITE(mapSrc); $(src + ': _h5ai/client/css/*.less') .modified(mapSrc, $(src + ': _h5ai/client/css/**')) .less() // .cssmin() - .write($.OVERWRITE, mapSrc); + .WRITE(mapSrc); $(src + ': **/*.jade') .modified(mapSrc) - .handlebars(handlebarsEnv) + .handlebars(make.env) .jade() - .write($.OVERWRITE, mapSrc); + .WRITE(mapSrc); $(src + ': **, ! _h5ai/client/js/**, ! _h5ai/client/css/**, ! **/*.jade') .modified(mapSrc) - .handlebars(handlebarsEnv) - .write($.OVERWRITE, mapSrc); + .handlebars(make.env) + .WRITE(mapSrc); $(root + ': README*, LICENSE*') .modified(mapRoot) - .write($.OVERWRITE, mapRoot); + .WRITE(mapRoot); }); diff --git a/package.json b/package.json index b848c08e..028a1094 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "h5ai", - "version": "0.23.0-dev", + "version": "0.23.0+", "description": "a modern HTTP web server index", "url": "http://larsjung.de/h5ai/", "author": "Lars Jung", From cec6ca2e6e04b19bf6a94fd56931e71fe77aa2e7 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 16 Aug 2013 16:22:23 +0200 Subject: [PATCH 10/83] Some updates on the info page. --- makefile.js | 6 ++- src/_h5ai/client/css/inc/h5ai-info.less | 22 +++++------ src/_h5ai/index.html.jade | 51 ++++++++++++++++--------- 3 files changed, 48 insertions(+), 31 deletions(-) diff --git a/makefile.js b/makefile.js index c24553da..dfaf43be 100644 --- a/makefile.js +++ b/makefile.js @@ -85,16 +85,18 @@ module.exports = function (make) { make.target('build', ['check-version'], 'build all updated files').sync(function () { + var header = '/* ' + pkg.name + ' ' + pkg.version + ' - ' + pkg.url + ' */' + $(src + ': _h5ai/client/js/*.js') .modified(mapSrc, $(src + ': _h5ai/client/js/**')) .includify() - .uglifyjs() + .uglifyjs({header: header}) .WRITE(mapSrc); $(src + ': _h5ai/client/css/*.less') .modified(mapSrc, $(src + ': _h5ai/client/css/**')) .less() - .cssmin() + .cssmin({header: header}) .WRITE(mapSrc); $(src + ': **/*.jade') diff --git a/src/_h5ai/client/css/inc/h5ai-info.less b/src/_h5ai/client/css/inc/h5ai-info.less index c77f1d9b..f662d64e 100644 --- a/src/_h5ai/client/css/inc/h5ai-info.less +++ b/src/_h5ai/client/css/inc/h5ai-info.less @@ -32,15 +32,15 @@ body#h5ai-info { display: block; color: #aaa; - .value { - margin-left: 0.5em; - padding: 2px 4px; - .border-radius(4px); - font-family: @font-family-mono; - letter-spacing: 0.1em; - background-color: @col-widget-back; - border: @border-widget; - } + } + code { + margin: 0 0.2em; + padding: 2px 4px; + .border-radius(4px); + font-family: @font-family-mono; + letter-spacing: 0.1em; + background-color: @col-widget-back; + border: @border-widget; } h1 { font-size: 3.6em; @@ -70,7 +70,7 @@ body#h5ai-info { .test-label { display: inline-block; - width: 300px; + width: 350px; } .test-result { display: inline-block; @@ -90,7 +90,7 @@ body#h5ai-info { margin: 4px 0 12px 12px; font-size: 0.7em; color: #aaa; - width: 310px; + width: 350px; line-height: 1.2em; } } diff --git a/src/_h5ai/index.html.jade b/src/_h5ai/index.html.jade index 6f29d1ee..f9564184 100644 --- a/src/_h5ai/index.html.jade +++ b/src/_h5ai/index.html.jade @@ -28,46 +28,61 @@ html.no-js( lang="en" ) span.build-version version {{pkg.version}} span.build-stamp {{stamp}} span.idx-file Index File: - span.value + code.value - h2 server supports + h2 Server Details ul#tests li.test.php( data-id="php" ) - span.test-label php version + span.test-label PHP version span.test-result ? - div.test-info PHP version >= 5.2.1 + div.test-info PHP version >= 5.2.1 li.test( data-id="cache" ) - span.test-label cache directory + span.test-label Cache directory span.test-result ? - div.test-info web server has write access + div.test-info Web server has write access li.test( data-id="thumbs" ) - span.test-label image thumbs + span.test-label Image thumbs span.test-result ? div.test-info PHP GD extension with JPEG support available li.test( data-id="exif" ) - span.test-label use exif thumbs + span.test-label Use EXIF thumbs span.test-result ? div.test-info PHP EXIF extension available li.test( data-id="ffmpeg" ) - span.test-label movie thumbs + span.test-label Movie thumbs span.test-result ? - div.test-info command 'ffmpeg' available + div.test-info + | Command line program + code ffmpeg + | available li.test( data-id="convert" ) - span.test-label pdf thumbs + span.test-label PDF thumbs span.test-result ? - div.test-info command 'convert' available + div.test-info + | Command line program + code convert + | available li.test( data-id="tar" ) - span.test-label shell tar + span.test-label Shell tar span.test-result ? - div.test-info command 'tar' available + div.test-info + | Command line program + code tar + | available li.test( data-id="zip" ) - span.test-label shell zip + span.test-label Shell zip span.test-result ? - div.test-info command 'zip' available + div.test-info + | Command line program + code zip + | available li.test( data-id="du" ) - span.test-label folder size + span.test-label Folder sizes span.test-result ? - div.test-info command 'du' available + div.test-info + | Command line program + code du + | available div#bottombar.clearfix span.left From 2c8940d062fcc463e31247a7f52a630dcca3f84b Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 16 Aug 2013 18:18:38 +0200 Subject: [PATCH 11/83] Updates readme. --- README.md | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index d14e00e8..d49e325d 100644 --- a/README.md +++ b/README.md @@ -7,25 +7,21 @@ create [a new issue](http://github.com/lrsjng/h5ai/issues/new) on GitHub! ## Install -( **note:** please don't use files from the `src` folder for installation, -they need to be preprocessed to work correctly ) - +**Note:** please don't use files from the `src` folder for installation, +they need to be preprocessed to work correctly! You'll find a preprocessed package, as well as detailed installation instructions on the [project page](http://larsjung.de/h5ai/). ## Build -( there are repositories for the latest [releases](http://release.larsjung.de/h5ai/) and [dev builds](http://release.larsjung.de/h5ai/dev/) ) - -If you want to build **h5ai** yourself you need to install the build tool [fQuery](http://larsjung.de/fquery/) first: +There are repositories for the latest [releases](http://release.larsjung.de/h5ai/) and [dev builds](http://release.larsjung.de/h5ai/dev/). +But if you want to build **h5ai** yourself you need to install the build tool [fQuery](http://larsjung.de/fquery/) first: > npm install -g fquery This will install fQuery and its command line tool `makejs`. Run `makejs --help` to see if everything -worked fine. - -To clone and build the project run the following commands. +worked fine. To clone and build the project run the following commands. You'll find a new directory `build` including a fresh zipball. > git clone git://github.com/lrsjng/h5ai.git @@ -56,7 +52,7 @@ It profits from these great projects: ## Changelog -( **h5ai** uses [semantic versioning](http://semver.org/) ) +**h5ai** uses [semantic versioning](http://semver.org/). ### develop branch From 9331d38545bbf98b7e7eff6829f759e45545d2e3 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 16 Aug 2013 18:29:02 +0200 Subject: [PATCH 12/83] Updates readme. --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index d49e325d..8ad8a00e 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,5 @@ # h5ai -**a modern HTTP web server index for Apache httpd, lighttpd, nginx and Cherokee** - +**h5ai** is a modern HTTP web server index for Apache httpd, lighttpd, nginx and Cherokee. The preferred way to report a bug or make a feature request is to create [a new issue](http://github.com/lrsjng/h5ai/issues/new) on GitHub! From 448ad6a27e995c71774c3ab1e691a82824c08a10 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 16 Aug 2013 19:09:37 +0200 Subject: [PATCH 13/83] Fix. --- makefile.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/makefile.js b/makefile.js index dfaf43be..bf3e5c25 100644 --- a/makefile.js +++ b/makefile.js @@ -85,7 +85,7 @@ module.exports = function (make) { make.target('build', ['check-version'], 'build all updated files').sync(function () { - var header = '/* ' + pkg.name + ' ' + pkg.version + ' - ' + pkg.url + ' */' + var header = '/* ' + pkg.name + ' ' + pkg.version + ' - ' + pkg.url + ' */'; $(src + ': _h5ai/client/js/*.js') .modified(mapSrc, $(src + ': _h5ai/client/js/**')) From b42cd95e41764225798235ed635a299bfb057fbc Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sun, 18 Aug 2013 19:59:57 +0200 Subject: [PATCH 14/83] Adds alt attributes to fallback img elements. --- src/_h5ai/server/php/inc/App.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/_h5ai/server/php/inc/App.php b/src/_h5ai/server/php/inc/App.php index f699a823..a7c8e2aa 100644 --- a/src/_h5ai/server/php/inc/App.php +++ b/src/_h5ai/server/php/inc/App.php @@ -209,11 +209,13 @@ class App { $html = "<table>"; $html .= "<tr><th></th><th><span>Name</span></th><th><span>Last modified</span></th><th><span>Size</span></th></tr>"; if ($folder->get_parent($cache)) { - $html .= "<tr><td><img src=\"" . $this->app_abs_href . "client/icons/16x16/folder-parent.png\"/></td><td><a href=\"..\">Parent Directory</a></td><td></td><td></td></tr>"; + $html .= "<tr><td><img src=\"" . $this->app_abs_href . "client/icons/16x16/folder-parent.png\" alt=\"folder-parent\"/></td><td><a href=\"..\">Parent Directory</a></td><td></td><td></td></tr>"; } foreach ($items as $item) { + $type = $item->is_folder ? "folder" : "default"; + $html .= "<tr>"; - $html .= "<td><img src=\"" . $this->app_abs_href . "client/icons/16x16/" . ($item->is_folder ? "folder" : "default") . ".png\"/></td>"; + $html .= "<td><img src=\"" . $this->app_abs_href . "client/icons/16x16/" . $type . ".png\" alt=\"" . $type . "\"/></td>"; $html .= "<td><a href=\"" . $item->abs_href . "\">" . basename($item->abs_path) . "</a></td>"; $html .= "<td>" . date("Y-m-d H:i", $item->date) . "</td>"; $html .= "<td>" . ($item->size !== null ? intval($item->size / 1000) . " KB" : "" ) . "</td>"; From bc7607340c07f14117d02d08963a92f4c3b21657 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sun, 18 Aug 2013 21:09:35 +0200 Subject: [PATCH 15/83] Cleans fallback code. --- src/_h5ai/client/css/inc/bottombar.less | 1 - src/_h5ai/client/css/inc/general.less | 9 +++------ src/_h5ai/index.html.jade | 4 ++-- src/_h5ai/server/php/inc/page.php.jade | 4 ++-- 4 files changed, 7 insertions(+), 11 deletions(-) diff --git a/src/_h5ai/client/css/inc/bottombar.less b/src/_h5ai/client/css/inc/bottombar.less index 646a5e33..8603e04f 100644 --- a/src/_h5ai/client/css/inc/bottombar.less +++ b/src/_h5ai/client/css/inc/bottombar.less @@ -46,7 +46,6 @@ margin-left: 16px; } .noBrowserMsg { - display: none; color: @col-error; margin-left: 16px; a, a:active, a:visited { diff --git a/src/_h5ai/client/css/inc/general.less b/src/_h5ai/client/css/inc/general.less index 47307d19..8d2e140a 100644 --- a/src/_h5ai/client/css/inc/general.less +++ b/src/_h5ai/client/css/inc/general.less @@ -28,9 +28,6 @@ @border-widget-sep: 1px solid @col-widget-sep; - - - @font-family: Ubuntu, sans-serif; @font-family-mono: "Ubuntu Mono", monospace; @@ -48,9 +45,9 @@ body { margin: 30px; } -html.js .hideOnJs, html.no-js .hideOnNoJs { +html.js .noJsMsg { display: none; } -html.no-browser .noBrowserMsg { - display: inline !important; +html.browser .noBrowserMsg { + display: none; } diff --git a/src/_h5ai/index.html.jade b/src/_h5ai/index.html.jade index f9564184..b317940f 100644 --- a/src/_h5ai/index.html.jade +++ b/src/_h5ai/index.html.jade @@ -2,7 +2,7 @@ doctype 5 //if lt IE 9 <html class="no-js no-browser" lang="en"> //[if gt IE 8]><! -html.no-js( lang="en" ) +html.no-js.browser( lang="en" ) //<![endif] head @@ -88,7 +88,7 @@ html.no-js( lang="en" ) span.left a#h5ai-reference( href="{{pkg.url}}", title="{{pkg.name}} · {{pkg.description}}" ) | {{pkg.name}} {{pkg.version}} - span.hideOnJs.noJsMsg + span.noJsMsg | ⚡ JavaScript disabled! ⚡ span.noBrowserMsg | ⚡ Unsupported browser! Works best in diff --git a/src/_h5ai/server/php/inc/page.php.jade b/src/_h5ai/server/php/inc/page.php.jade index 6b56d57d..06a6c61e 100644 --- a/src/_h5ai/server/php/inc/page.php.jade +++ b/src/_h5ai/server/php/inc/page.php.jade @@ -6,7 +6,7 @@ doctype 5 //if lt IE 9 <html class="no-js no-browser" lang="en"> //[if gt IE 8]><! -html.no-js( lang="en" ) +html.no-js.browser( lang="en" ) //<![endif] head @@ -34,7 +34,7 @@ html.no-js( lang="en" ) span.left a#h5ai-reference( href="{{pkg.url}}", title="{{pkg.name}} · {{pkg.description}}" ) | {{pkg.name}} {{pkg.version}} - span.hideOnJs.noJsMsg + span.noJsMsg | ⚡ JavaScript disabled! ⚡ span.noBrowserMsg | ⚡ Unsupported browser! Works best in From 21f04e36bcde0688f51bf7207471792909eccb8f Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sun, 18 Aug 2013 21:40:08 +0200 Subject: [PATCH 16/83] Cleans styles. --- src/_h5ai/client/css/inc/bottombar.less | 2 - src/_h5ai/client/css/inc/dropbox.less | 2 +- src/_h5ai/client/css/inc/general.less | 4 -- src/_h5ai/client/css/inc/h5ai-info.less | 2 +- src/_h5ai/client/css/inc/notify.less | 2 +- src/_h5ai/client/css/inc/preview-img.less | 5 +- src/_h5ai/client/css/inc/preview-txt.less | 4 +- src/_h5ai/client/css/inc/topbar.less | 2 - src/_h5ai/client/css/inc/tree.less | 6 +-- src/_h5ai/client/css/inc/view.less | 6 +-- src/_h5ai/client/css/lib/mixins.less | 57 +++-------------------- 11 files changed, 15 insertions(+), 77 deletions(-) diff --git a/src/_h5ai/client/css/inc/bottombar.less b/src/_h5ai/client/css/inc/bottombar.less index 8603e04f..53ca8340 100644 --- a/src/_h5ai/client/css/inc/bottombar.less +++ b/src/_h5ai/client/css/inc/bottombar.less @@ -7,10 +7,8 @@ left: 0; bottom: 0; padding: 6px 0 8px 0; - // .vert-gradient(rgb(241,241,241), rgb(228,228,228)); background-color: @col-widget-back; border-top: @border-widget; - // .box-shadow(0 -2px 4px 0 rgba(0, 0, 0, 0.15); color: #999; text-align: center; diff --git a/src/_h5ai/client/css/inc/dropbox.less b/src/_h5ai/client/css/inc/dropbox.less index 785dc2b6..ed8dfefa 100644 --- a/src/_h5ai/client/css/inc/dropbox.less +++ b/src/_h5ai/client/css/inc/dropbox.less @@ -1,7 +1,7 @@ #content { border: 1px dashed #fff; - .border-radius(8px); + border-radius: 8px; .transition(border-color 0.2s ease-in-out); &.hint { diff --git a/src/_h5ai/client/css/inc/general.less b/src/_h5ai/client/css/inc/general.less index 8d2e140a..aa80c092 100644 --- a/src/_h5ai/client/css/inc/general.less +++ b/src/_h5ai/client/css/inc/general.less @@ -16,9 +16,6 @@ @col-widget-back-sel: rgba(255,255,255,0.8); @col-widget-sep: @col-border; -// @col-sb-back: rgb(210,210,210); -// @col-sb-thumb: rgb(180,180,180); -// @col-sb-thumb-active: rgb(150,150,150); @col-sb-back: rgba(0,0,0,0.08); @col-sb-thumb: rgba(0,0,0,0.15); @col-sb-thumb-active: rgba(0,0,0,0.25); @@ -38,7 +35,6 @@ html { overflow-y: auto; } body { font-family: @font-family; - // font-weight: 400; font-size: 13px; color: @col; background-color: @col-back; diff --git a/src/_h5ai/client/css/inc/h5ai-info.less b/src/_h5ai/client/css/inc/h5ai-info.less index f662d64e..d231be17 100644 --- a/src/_h5ai/client/css/inc/h5ai-info.less +++ b/src/_h5ai/client/css/inc/h5ai-info.less @@ -36,7 +36,7 @@ body#h5ai-info { code { margin: 0 0.2em; padding: 2px 4px; - .border-radius(4px); + border-radius: 4px; font-family: @font-family-mono; letter-spacing: 0.1em; background-color: @col-widget-back; diff --git a/src/_h5ai/client/css/inc/notify.less b/src/_h5ai/client/css/inc/notify.less index 4ac6545e..8c1b7867 100644 --- a/src/_h5ai/client/css/inc/notify.less +++ b/src/_h5ai/client/css/inc/notify.less @@ -9,6 +9,6 @@ padding: 2px 6px 2px 6px; color: #fff; background-color: rgba(0, 0, 0, 0.2); - .border-radius(4px); + border-radius: 4px; text-align: center; } diff --git a/src/_h5ai/client/css/inc/preview-img.less b/src/_h5ai/client/css/inc/preview-img.less index a4542c22..ce69d923 100644 --- a/src/_h5ai/client/css/inc/preview-img.less +++ b/src/_h5ai/client/css/inc/preview-img.less @@ -24,7 +24,7 @@ max-width: 100%; max-height: 100%; border: 2px solid #fff; - .border-radius(4px); + border-radius: 4px; background-color: @check-white; background-image: @@ -39,7 +39,7 @@ #pv-img-image { border: 0; - .border-radius(0); + border-radius: 0; } } @@ -124,7 +124,6 @@ height: 32px; left: 0; bottom: 0; - // .vert-gradient(rgb(27,27,27), rgb(14,14,14)); background-color: rgb(27,27,27); border-top: 1px solid rgb(45,45,45); } diff --git a/src/_h5ai/client/css/inc/preview-txt.less b/src/_h5ai/client/css/inc/preview-txt.less index bbbb893a..a236ff0a 100644 --- a/src/_h5ai/client/css/inc/preview-txt.less +++ b/src/_h5ai/client/css/inc/preview-txt.less @@ -19,7 +19,7 @@ padding: 10px; background-color: #fff; border: 2px solid #fff; - .border-radius(4px); + border-radius: 4px; text-align: left; overflow: auto; position: relative; @@ -227,6 +227,6 @@ height: 32px; left: 0; bottom: 0; - .vert-gradient(rgb(27,27,27), rgb(14,14,14)); + background-color: rgb(27,27,27); border-top: 1px solid rgb(45,45,45); } diff --git a/src/_h5ai/client/css/inc/topbar.less b/src/_h5ai/client/css/inc/topbar.less index 04b52559..e0da03c6 100644 --- a/src/_h5ai/client/css/inc/topbar.less +++ b/src/_h5ai/client/css/inc/topbar.less @@ -6,10 +6,8 @@ min-height: 30px; left: 0; top: 0; - // .vert-gradient(rgb(241,241,241), rgb(228,228,228)); background-color: @col-widget-back; border-bottom: @border-widget; - // .box-shadow(0 2px 4px 0 rgba(0, 0, 0, 0.15); } diff --git a/src/_h5ai/client/css/inc/tree.less b/src/_h5ai/client/css/inc/tree.less index 2f258b6f..be456672 100644 --- a/src/_h5ai/client/css/inc/tree.less +++ b/src/_h5ai/client/css/inc/tree.less @@ -12,15 +12,12 @@ border-right: @border-widget; .sp-scrollbar { - // margin: 8px 8px 8px 0; width: 6px; background-color: @col-sb-back; - // .border-radius(3px); cursor: pointer; .sp-thumb { background-color: @col-sb-thumb; - // .border-radius(3px); } &.active .sp-thumb { background-color: @col-sb-thumb-active; @@ -63,14 +60,13 @@ padding: 4px 6px; color: #555; border: 1px solid rgba(0,0,0,0); - .border-radius(3px); + border-radius: 3px; text-decoration: none; opacity: 0.7; &:hover, &.hover { color: @col-hover; background-color: @col-widget-back-hover; - // border-color: rgba(0,0,0,0.05); opacity: 1; } } diff --git a/src/_h5ai/client/css/inc/view.less b/src/_h5ai/client/css/inc/view.less index f75c44c7..14103a72 100644 --- a/src/_h5ai/client/css/inc/view.less +++ b/src/_h5ai/client/css/inc/view.less @@ -76,7 +76,6 @@ overflow: hidden; &:hover, &.hover { - // color: #e80; color: @col-hover; background-color: @item-background-col-hover; border-color: @item-border-col-hover; @@ -86,8 +85,6 @@ &.selected:not(.selecting), &.selecting:not(.selected) { a, a:active, a:visited { - // color: #000; - // color: @col-hover; background-color: @item-background-col-sel; border-color: @item-border-col-sel; @@ -105,7 +102,6 @@ color: #aaa; &:hover, &.hover { - // color: #e80; color: @col-hover; } } @@ -131,7 +127,7 @@ img { &.thumb { - .box-shadow(0 0 0 1px #ddd); + box-shadow: 0 0 0 1px #ddd; } } diff --git a/src/_h5ai/client/css/lib/mixins.less b/src/_h5ai/client/css/lib/mixins.less index e1ecd862..82978299 100644 --- a/src/_h5ai/client/css/lib/mixins.less +++ b/src/_h5ai/client/css/lib/mixins.less @@ -1,57 +1,12 @@ -.border-radius (@radius) { - -webkit-border-radius: @radius; /* Saf3-4, iOS 1-3.2, Android <1.6 */ - -moz-border-radius: @radius; /* FF1-3.6 */ - border-radius: @radius; /* Opera 10.5, IE9, Saf5, Chrome, FF4, iOS 4, Android 2.1+ */ -} - - -.background-clip () { - -webkit-background-clip: padding-box; - -moz-background-clip: padding; - background-clip: padding-box; -} - - -.box-shadow (@shadow) { - -webkit-box-shadow: @shadow; /* Saf3-4 */ - -moz-box-shadow: @shadow; /* FF3.5 - 3.6 */ - box-shadow: @shadow; /* Opera 10.5, IE9, FF4+, Chrome 10+ */ -} - - .transition (@transition) { - -webkit-transition: @transition; /* Saf3.2+, Chrome */ - -moz-transition: @transition; /* FF4+ */ - -ms-transition: @transition; /* IE10? */ - -o-transition: @transition; /* Opera 10.5+ */ - transition: @transition; + -webkit-transition: @transition; + transition: @transition; } - .transform (@transform) { - -webkit-transform: @transform; /* Saf3.1+, Chrome */ - -moz-transform: @transform; /* FF3.5+ */ - -ms-transform: @transform; /* IE9 */ - -o-transform: @transform; /* Opera 10.5 */ - transform: @transform; - zoom: 1; -} - - -.vert-gradient (@top, @bottom) { - background-color: @top; - background-image: -webkit-gradient(linear, left top, left bottom, from(@top), to(@bottom)); /* Saf4+, Chrome */ - background-image: -webkit-linear-gradient(top, @top, @bottom); /* Chrome 10+, Saf5.1+, iOS 5+ */ - background-image: -moz-linear-gradient(top, @top, @bottom); /* FF3.6 */ - background-image: -ms-linear-gradient(top, @top, @bottom); /* IE10 */ - background-image: -o-linear-gradient(top, @top, @bottom); /* Opera 11.10+ */ - background-image: linear-gradient(top, @top, @bottom); -} - - -.background-size (@size) { - -webkit-background-size: @size; /* Saf3-4 */ - -moz-background-size: @size; /* FF3.6 */ - background-size: @size; /* Opera, IE9, Saf5, Chrome, FF4 */ + -webkit-transform: @transform; + -ms-transform: @transform; + transform: @transform; + zoom: 1; } From 0acd3efaadb8bfe8d6d269815b7664ace4d64264 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Mon, 19 Aug 2013 14:03:23 +0200 Subject: [PATCH 17/83] Styles. --- src/_h5ai/client/css/inc/preview-img.less | 6 +- src/_h5ai/client/css/inc/preview-txt.less | 4 +- src/_h5ai/client/css/inc/preview.less | 110 ++++++++++++++++++++++ src/_h5ai/client/css/styles.less | 1 + 4 files changed, 116 insertions(+), 5 deletions(-) create mode 100644 src/_h5ai/client/css/inc/preview.less diff --git a/src/_h5ai/client/css/inc/preview-img.less b/src/_h5ai/client/css/inc/preview-img.less index ce69d923..2ef51489 100644 --- a/src/_h5ai/client/css/inc/preview-img.less +++ b/src/_h5ai/client/css/inc/preview-img.less @@ -23,8 +23,7 @@ #pv-img-image { max-width: 100%; max-height: 100%; - border: 2px solid #fff; - border-radius: 4px; + border: 1px solid #fff; background-color: @check-white; background-image: @@ -39,12 +38,13 @@ #pv-img-image { border: 0; - border-radius: 0; } } #pv-img-close { position: fixed; + left: 0; + top: 0; width: 100%; height: 100%; cursor: pointer; diff --git a/src/_h5ai/client/css/inc/preview-txt.less b/src/_h5ai/client/css/inc/preview-txt.less index a236ff0a..bff27626 100644 --- a/src/_h5ai/client/css/inc/preview-txt.less +++ b/src/_h5ai/client/css/inc/preview-txt.less @@ -9,6 +9,7 @@ z-index: 100; background-color: rgba(0,0,0,0.5); + .transition(background-color 0.3s ease-in-out); text-align: center; } @@ -18,8 +19,7 @@ margin: 0 auto; padding: 10px; background-color: #fff; - border: 2px solid #fff; - border-radius: 4px; + border: 1px solid #fff; text-align: left; overflow: auto; position: relative; diff --git a/src/_h5ai/client/css/inc/preview.less b/src/_h5ai/client/css/inc/preview.less new file mode 100644 index 00000000..79789342 --- /dev/null +++ b/src/_h5ai/client/css/inc/preview.less @@ -0,0 +1,110 @@ + +#pv-overlay { + display: none; + position: fixed; + left: 0; + top: 0; + right: 0; + bottom: 0; + z-index: 100; + + background-color: rgba(0,0,0,0.5); + .transition(background-color 0.3s ease-in-out); + + text-align: center; +} + +#pv-overlay.fullscreen { + background-color: #111; +} + +#pv-spinner { + position: fixed; +} + +#pv-close { + position: fixed; + left: 0; + top: 0; + width: 100%; + height: 100%; + cursor: pointer; +} + +#pv-prev { + position: fixed; + cursor: pointer; +} + +#pv-next { + position: fixed; + cursor: pointer; +} + +#pv-buttons { + list-style: none; + list-style-image: none; + margin: 0; + padding: 0; + + img { + position: relative; + top: -2px; + width: 16px; + height: 16px; + } + img + span, img + input { + margin-left: 6px; + } + input { + background-color: rgba(255,255,255,0.1); + border: none; + color: #ccc; + } + + .bar-label { + display: block; + color: #ccc; + height: 30px; + line-height: 30px; + padding: 0 10px; + opacity: 0.7; + .transition(all 0.2s ease-in-out); + } + + .bar-highlight { + background-color: rgba(255,255,255,0.1); + opacity: 1.0; + } + + @bar-sep-border: 1px solid rgba(255,255,255,0.08); + + .bar-button { + .bar-label; + cursor: pointer; + &:hover, &.hover { + .bar-highlight; + } + } + + .bar-left { + float: left; + border-right: @bar-sep-border; + } + + .bar-right { + float: right; + border-left: @bar-sep-border; + } +} + +#pv-bottombar { + position: fixed; + z-index: 5; + width: 100%; + height: 32px; + left: 0; + bottom: 0; + background-color: rgb(27,27,27); + border-top: 1px solid rgb(45,45,45); +} diff --git a/src/_h5ai/client/css/styles.less b/src/_h5ai/client/css/styles.less index de6b62e8..2eeb4cb2 100644 --- a/src/_h5ai/client/css/styles.less +++ b/src/_h5ai/client/css/styles.less @@ -13,6 +13,7 @@ @import "inc/l10n"; @import "inc/tree"; @import "inc/qrcode"; +@import "inc/preview"; @import "inc/preview-img"; @import "inc/preview-txt"; @import "inc/notify"; From 8dbd7dd2a7f2d9cb24ea8042fa5f416621ecad0a Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Tue, 20 Aug 2013 19:21:42 +0200 Subject: [PATCH 18/83] Adds generic preview. --- src/_h5ai/client/js/inc/ext/preview.js | 247 +++++++++++++++++++++++++ 1 file changed, 247 insertions(+) create mode 100644 src/_h5ai/client/js/inc/ext/preview.js diff --git a/src/_h5ai/client/js/inc/ext/preview.js b/src/_h5ai/client/js/inc/ext/preview.js new file mode 100644 index 00000000..bcfef0ca --- /dev/null +++ b/src/_h5ai/client/js/inc/ext/preview.js @@ -0,0 +1,247 @@ + +modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'core/store', 'core/event', 'core/location'], function (_, $, allsettings, resource, store, event, location) { + + var settings = _.extend({ + enabled: true + }, allsettings['preview']), + + template = '<div id="pv-overlay" class="noSelection">' + + '<div id="pv-content">' + + '<img id="pv-image"/>' + + '</div>' + + '<div id="pv-spinner">' + + '<img src="' + resource.image('spinner') + '"/>' + + '</div>' + + '<div id="pv-close"/>' + + '<div id="pv-prev"/>' + + '<div id="pv-next"/>' + + '<div id="pv-bottombar" class="clearfix">' + + '<ul id="pv-buttons">' + + '<li id="pv-bar-close" class="bar-right bar-button"><img src="' + resource.image('preview/close') + '"/></li>' + + '<li id="pv-bar-original" class="bar-right"><a class="bar-button" target="_blank"><img src="' + resource.image('preview/raw') + '"/></a></li>' + + '<li id="pv-bar-fullscreen" class="bar-right bar-button"><img src="' + resource.image('preview/fullscreen') + '"/></li>' + + '<li id="pv-bar-next" class="bar-right bar-button"><img src="' + resource.image('preview/next') + '"/></li>' + + '<li id="pv-bar-idx" class="bar-right bar-label"/>' + + '<li id="pv-bar-prev" class="bar-right bar-button"><img src="' + resource.image('preview/prev') + '"/></li>' + + '</ul>' + + '</div>' + + '</div>', + + storekey = 'preview.isFullscreen', + + currentEntries = [], + currentIdx = 0, + isFullscreen = store.get(storekey) || false, + + adjustSize = function () { + + var rect = $(window).fracs('viewport'), + $container = $('#pv-content'), + $spinner = $('#pv-spinner'), + $spinnerimg = $spinner.find('img').width(100).height(100), + $img = $('#pv-image'), + margin = isFullscreen ? 0 : 20, + barheight = isFullscreen ? 0 : 31; + + $container.add($spinner).css({ + width: rect.width - 2 * margin, + height: rect.height - 2 * margin - barheight, + left: margin, + top: margin + }); + + var lr = ($container.width() - $img.width()) / 2, + tb = ($container.height() - $img.height()) / 2; + + $img.css({ + margin: '' + tb + 'px ' + lr + 'px' + }); + $spinnerimg.css({ + margin: '' + (($spinner.height() - $spinnerimg.height()) / 2) + 'px ' + (($spinner.width() - $spinnerimg.height()) / 2) + 'px' + }); + + rect = $img.fracs('rect'); + if (!rect) { + return; + } + rect = rect.relativeTo($('#pv-overlay').fracs('rect')); + + $('#pv-prev').css({ + left: rect.left, + top: rect.top, + width: rect.width / 2, + height: rect.height + }); + $('#pv-next').css({ + left: rect.left + rect.width / 2, + top: rect.top, + width: rect.width / 2, + height: rect.height + }); + + $('#pv-bar-percent').text('' + (100 * $img.width() / $img[0].naturalWidth).toFixed(0) + '%'); + if (isFullscreen) { + $('#pv-overlay').addClass('fullscreen'); + $('#pv-bar-fullscreen').find('img').attr('src', resource.image('preview/no-fullscreen')); + $('#pv-bottombar').fadeOut(400); + } else { + $('#pv-overlay').removeClass('fullscreen'); + $('#pv-bar-fullscreen').find('img').attr('src', resource.image('preview/fullscreen')); + $('#pv-bottombar').fadeIn(200); + } + }, + + onEnter = function (items, idx) { + + $(window).on('keydown', onKeydown); + $('#pv-image').hide(); + $('#pv-overlay').stop(true, true).fadeIn(200); + + currentEntries = items; + adjustSize(); + }, + + onNext = function () { + + if (_.isFunction(onIndexChange)) { + onIndexChange(1); + } + }, + + onPrevious = function () { + + if (_.isFunction(onIndexChange)) { + onIndexChange(-1); + } + }, + + onExit = function () { + + $(window).off('keydown', onKeydown); + $('#pv-overlay').stop(true, true).fadeOut(200); + }, + + onFullscreen = function () { + + isFullscreen = !isFullscreen; + store.put(storekey, isFullscreen); + + adjustSize(); + }, + + onKeydown = function (event) { + + var key = event.which; + + if (key === 27) { // esc + event.preventDefault(); + event.stopImmediatePropagation(); + onExit(); + } else if (key === 8 || key === 37 || key === 40) { // backspace, left, down + event.preventDefault(); + event.stopImmediatePropagation(); + onPrevious(); + } else if (key === 13 || key === 32 || key === 38 || key === 39) { // enter, space, up, right + event.preventDefault(); + event.stopImmediatePropagation(); + onNext(); + } else if (key === 70) { // f + event.preventDefault(); + event.stopImmediatePropagation(); + onFullscreen(); + } + }, + + setIndex = function (idx, total) { + + if (_.isNumber(idx)) { + $('#pv-bar-idx').show().text('' + idx + (_.isNumber(total) ? '/' + total : '')); + } else { + $('#pv-bar-idx').hide(); + } + }, + + setLabels = function (labels) { + + $('#pv-buttons .bar-left').remove(); + _.each(labels, function (label) { + + $('<li />') + .addClass('bar-left bar-label') + .text(label) + .appendTo('#pv-buttons'); + }); + }, + + onIndexChange = null, + setOnIndexChange = function (fn) { + + onIndexChange = fn; + }, + + init = function () { + + if (!settings.enabled) { + return; + } + + $(template).appendTo('body'); + $('#pv-bar-prev, #pv-prev').on('click', onPrevious); + $('#pv-bar-next, #pv-next').on('click', onNext); + $('#pv-bar-close, #pv-close').on('click', onExit); + $('#pv-bar-fullscreen').on('click', onFullscreen); + + $('#pv-prev') + .on('mouseenter', function () { + $('#pv-bar-prev').addClass('hover'); + }) + .on('mouseleave', function () { + $('#pv-bar-prev').removeClass('hover'); + }); + + $('#pv-next') + .on('mouseenter', function () { + $('#pv-bar-next').addClass('hover'); + }) + .on('mouseleave', function () { + $('#pv-bar-next').removeClass('hover'); + }); + + $('#pv-close') + .on('mouseenter', function () { + $('#pv-bar-close').addClass('hover'); + }) + .on('mouseleave', function () { + $('#pv-bar-close').removeClass('hover'); + }); + + $('#pv-overlay') + .on('keydown', onKeydown) + .on('mousemove', function (event) { + + if (isFullscreen) { + var rect = $('#pv-overlay').fracs('rect'); + + if (rect.bottom - event.pageY < 64) { + $('#pv-bottombar').fadeIn(200); + } else { + $('#pv-bottombar').fadeOut(400); + } + } + }) + .on('click mousedown mousemove keydown keypress', function (event) { + + event.stopImmediatePropagation(); + }); + + $(window).on('resize load', adjustSize); + }; + + init(); + + return { + setIndex: setIndex, + setLabels: setLabels, + setOnIndexChange: setOnIndexChange + }; +}); From 25c131f875fd6daf2a7279857a42fa3d56ce1c7b Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Wed, 21 Aug 2013 14:04:20 +0200 Subject: [PATCH 19/83] Updates image preview. --- src/_h5ai/client/css/inc/preview-img.less | 117 +-------- src/_h5ai/client/css/inc/preview.less | 47 +++- src/_h5ai/client/js/inc/ext/preview-img.js | 263 ++++----------------- src/_h5ai/client/js/inc/ext/preview.js | 161 +++++++------ 4 files changed, 180 insertions(+), 408 deletions(-) diff --git a/src/_h5ai/client/css/inc/preview-img.less b/src/_h5ai/client/css/inc/preview-img.less index 2ef51489..7ca5b28a 100644 --- a/src/_h5ai/client/css/inc/preview-img.less +++ b/src/_h5ai/client/css/inc/preview-img.less @@ -1,29 +1,11 @@ -#pv-img-overlay { - display: none; - position: fixed; - left: 0; - top: 0; - right: 0; - bottom: 0; - z-index: 100; - - background-color: rgba(0,0,0,0.5); - .transition(background-color 0.3s ease-in-out); - - text-align: center; -} - -#pv-img-content, #pv-spinner { - position: fixed; -} - @check-white: #f8f8f8; @check-black: #e8e8e8; #pv-img-image { + position: absolute; + max-width: 100%; max-height: 100%; - border: 1px solid #fff; background-color: @check-white; background-image: @@ -32,98 +14,3 @@ background-size: 60px 60px; background-position: 0 0, 30px 30px } - -#pv-img-overlay.fullscreen { - background-color: #111; - - #pv-img-image { - border: 0; - } -} - -#pv-img-close { - position: fixed; - left: 0; - top: 0; - width: 100%; - height: 100%; - cursor: pointer; -} - -#pv-img-prev { - position: fixed; - cursor: pointer; -} - -#pv-img-next { - position: fixed; - cursor: pointer; -} - -#pv-img-buttons, #pv-img-topbuttons { - list-style: none; - list-style-image: none; - margin: 0; - padding: 0; - - img { - position: relative; - top: -2px; - width: 16px; - height: 16px; - } - img + span, img + input { - margin-left: 6px; - } - input { - background-color: rgba(255,255,255,0.1); - border: none; - color: #ccc; - } - - .bar-label { - display: block; - color: #ccc; - height: 30px; - line-height: 30px; - padding: 0 10px; - opacity: 0.7; - .transition(all 0.2s ease-in-out); - } - - .bar-highlight { - background-color: rgba(255,255,255,0.1); - opacity: 1.0; - } - - @bar-sep-border: 1px solid rgba(255,255,255,0.08); - - .bar-button { - .bar-label; - cursor: pointer; - &:hover, &.hover { - .bar-highlight; - } - } - - .bar-left { - float: left; - border-right: @bar-sep-border; - } - - .bar-right { - float: right; - border-left: @bar-sep-border; - } -} - -#pv-img-bottombar { - position: fixed; - z-index: 5; - width: 100%; - height: 32px; - left: 0; - bottom: 0; - background-color: rgb(27,27,27); - border-top: 1px solid rgb(45,45,45); -} diff --git a/src/_h5ai/client/css/inc/preview.less b/src/_h5ai/client/css/inc/preview.less index 79789342..3ca1895f 100644 --- a/src/_h5ai/client/css/inc/preview.less +++ b/src/_h5ai/client/css/inc/preview.less @@ -18,12 +18,23 @@ background-color: #111; } -#pv-spinner { - position: fixed; +#pv-content { + position: absolute; + overflow: hidden; } -#pv-close { - position: fixed; +#pv-spinner { + position: absolute; + + img { + width: 100px; + height: 100px; + margin: -50px -50px; + } +} + +#pv-close-area { + position: absolute; left: 0; top: 0; width: 100%; @@ -31,14 +42,32 @@ cursor: pointer; } -#pv-prev { - position: fixed; +#pv-prev-area, #pv-next-area { + position: absolute; + top: 50%; cursor: pointer; + opacity: 0.5; + .transition(all 0.2s ease-in-out); + + img { + background-color: rgba(0,0,0,0.5); + border-radius: 8px; + width: 48px; + height: 48px; + margin: -24px 0; + } + + &:hover { + opacity: 1; + } } -#pv-next { - position: fixed; - cursor: pointer; +#pv-prev-area { + left: 8px; +} + +#pv-next-area { + right: 8px; } #pv-buttons { diff --git a/src/_h5ai/client/js/inc/ext/preview-img.js b/src/_h5ai/client/js/inc/ext/preview-img.js index bf693a9b..ead5a717 100644 --- a/src/_h5ai/client/js/inc/ext/preview-img.js +++ b/src/_h5ai/client/js/inc/ext/preview-img.js @@ -1,100 +1,11 @@ -modulejs.define('ext/preview-img', ['_', '$', 'core/settings', 'core/resource', 'core/store', 'core/event', 'core/location'], function (_, $, allsettings, resource, store, event, location) { +modulejs.define('ext/preview-img', ['_', '$', 'core/settings', 'core/store', 'core/event', 'ext/preview'], function (_, $, allsettings, store, event, preview) { var settings = _.extend({ enabled: false, types: ['bmp', 'gif', 'ico', 'image', 'jpg', 'png', 'tiff'] }, allsettings['preview-img']), - template = '<div id="pv-img-overlay" class="noSelection">' + - '<div id="pv-img-content">' + - '<img id="pv-img-image"/>' + - '</div>' + - '<div id="pv-spinner">' + - '<img src="' + resource.image('spinner') + '"/>' + - '</div>' + - '<div id="pv-img-close"/>' + - '<div id="pv-img-prev"/>' + - '<div id="pv-img-next"/>' + - '<div id="pv-img-bottombar" class="clearfix">' + - '<ul id="pv-img-buttons">' + - '<li id="pv-img-bar-size" class="bar-left bar-label"/>' + - '<li id="pv-img-bar-percent" class="bar-left bar-label"/>' + - '<li id="pv-img-bar-label" class="bar-left bar-label"/>' + - '<li id="pv-img-bar-close" class="bar-right bar-button"><img src="' + resource.image('preview/close') + '"/></li>' + - '<li id="pv-img-bar-original" class="bar-right"><a class="bar-button" target="_blank"><img src="' + resource.image('preview/raw') + '"/></a></li>' + - '<li id="pv-img-bar-fullscreen" class="bar-right bar-button"><img src="' + resource.image('preview/fullscreen') + '"/></li>' + - '<li id="pv-img-bar-next" class="bar-right bar-button"><img src="' + resource.image('preview/next') + '"/></li>' + - '<li id="pv-img-bar-idx" class="bar-right bar-label"/>' + - '<li id="pv-img-bar-prev" class="bar-right bar-button"><img src="' + resource.image('preview/prev') + '"/></li>' + - '</ul>' + - '</div>' + - '</div>', - - storekey = 'preview-img.isFullscreen', - - currentEntries = [], - currentIdx = 0, - isFullscreen = store.get(storekey) || false, - - adjustSize = function () { - - var rect = $(window).fracs('viewport'), - $container = $('#pv-img-content'), - $spinner = $('#pv-spinner'), - $spinnerimg = $spinner.find('img').width(100).height(100), - $img = $('#pv-img-image'), - margin = isFullscreen ? 0 : 20, - barheight = isFullscreen ? 0 : 31; - - $container.add($spinner).css({ - width: rect.width - 2 * margin, - height: rect.height - 2 * margin - barheight, - left: margin, - top: margin - }); - - var lr = ($container.width() - $img.width()) / 2, - tb = ($container.height() - $img.height()) / 2; - - $img.css({ - margin: '' + tb + 'px ' + lr + 'px' - }); - $spinnerimg.css({ - margin: '' + (($spinner.height() - $spinnerimg.height()) / 2) + 'px ' + (($spinner.width() - $spinnerimg.height()) / 2) + 'px' - }); - - rect = $img.fracs('rect'); - if (!rect) { - return; - } - rect = rect.relativeTo($('#pv-img-overlay').fracs('rect')); - - $('#pv-img-prev').css({ - left: rect.left, - top: rect.top, - width: rect.width / 2, - height: rect.height - }); - $('#pv-img-next').css({ - left: rect.left + rect.width / 2, - top: rect.top, - width: rect.width / 2, - height: rect.height - }); - - $('#pv-img-bar-percent').text('' + (100 * $img.width() / $img[0].naturalWidth).toFixed(0) + '%'); - if (isFullscreen) { - $('#pv-img-overlay').addClass('fullscreen'); - $('#pv-img-bar-fullscreen').find('img').attr('src', resource.image('preview/no-fullscreen')); - $('#pv-img-bottombar').fadeOut(400); - } else { - $('#pv-img-overlay').removeClass('fullscreen'); - $('#pv-img-bar-fullscreen').find('img').attr('src', resource.image('preview/fullscreen')); - $('#pv-img-bottombar').fadeIn(200); - } - }, - preloadImg = function (src, callback) { var $img = $('<img/>') @@ -106,94 +17,69 @@ modulejs.define('ext/preview-img', ['_', '$', 'core/settings', 'core/resource', .attr('src', src); }, - onIndexChange = function (idx) { - - currentIdx = (idx + currentEntries.length) % currentEntries.length; - - var $container = $('#pv-img-content'), - $img = $('#pv-img-image'), - src = currentEntries[currentIdx].absHref, - spinnerTimeout = setTimeout(function () { $('#pv-spinner').show(); }, 200); - - preloadImg(src, function ($preloaded_img) { - - clearTimeout(spinnerTimeout); - $('#pv-spinner').hide(); - - $('#pv-img-image').fadeOut(100, function () { - - $('#pv-img-image').replaceWith($preloaded_img.hide()); - $preloaded_img.attr('id', 'pv-img-image').fadeIn(200); - - // small timeout, so $preloaded_img is visible and therefore $preloaded_img.width is available - setTimeout(function () { - - adjustSize(); - $('#pv-img-bar-label').text(currentEntries[currentIdx].label); - $('#pv-img-bar-size').text('' + $preloaded_img[0].naturalWidth + 'x' + $preloaded_img[0].naturalHeight); - $('#pv-img-bar-idx').text('' + (currentIdx + 1) + ' / ' + currentEntries.length); - $('#pv-img-bar-original').find('a').attr('href', currentEntries[currentIdx].absHref); - }, 10); - }); - }); - }, - onEnter = function (items, idx) { - $(window).on('keydown', onKeydown); - $('#pv-img-image').hide(); - $('#pv-img-overlay').stop(true, true).fadeIn(200); + var currentItems = items, + currentIdx = idx, + currentItem = items[idx], - currentEntries = items; - adjustSize(); - onIndexChange(idx); - }, + onAdjustSize = function () { - onNext = function () { + var $content = $('#pv-content'), + $img = $('#pv-img-image'); - onIndexChange(currentIdx + 1); - }, + if ($img.length) { - onPrevious = function () { + $img.css({ + 'left': '' + (($content.width()-$img.width())*0.5) + 'px', + 'top': '' + (($content.height()-$img.height())*0.5) + 'px' + }); - onIndexChange(currentIdx - 1); - }, + preview.setLabels([ + currentItem.label, + '' + $img[0].naturalWidth + 'x' + $img[0].naturalHeight, + '' + (100 * $img.width() / $img[0].naturalWidth).toFixed(0) + '%' + ]); + } + }, - onExit = function () { + onIdxChange = function (rel) { - $(window).off('keydown', onKeydown); - $('#pv-img-overlay').stop(true, true).fadeOut(200); - }, + currentIdx = (currentIdx + rel + currentItems.length) % currentItems.length; + currentItem = currentItems[currentIdx]; - onFullscreen = function () { + var spinnerTimeout = setTimeout(function () { preview.showSpinner(true); }, 200); - isFullscreen = !isFullscreen; - store.put(storekey, isFullscreen); + preloadImg(currentItem.absHref, function ($preloaded_img) { - adjustSize(); - }, + clearTimeout(spinnerTimeout); + preview.showSpinner(false); - onKeydown = function (event) { + $('#pv-content').fadeOut(100, function () { - var key = event.which; + $('#pv-content').empty().append($preloaded_img.attr('id', 'pv-img-image')).fadeIn(200); - if (key === 27) { // esc - event.preventDefault(); - event.stopImmediatePropagation(); - onExit(); - } else if (key === 8 || key === 37 || key === 40) { // backspace, left, down - event.preventDefault(); - event.stopImmediatePropagation(); - onPrevious(); - } else if (key === 13 || key === 32 || key === 38 || key === 39) { // enter, space, up, right - event.preventDefault(); - event.stopImmediatePropagation(); - onNext(); - } else if (key === 70) { // f - event.preventDefault(); - event.stopImmediatePropagation(); - onFullscreen(); - } + // small timeout, so $preloaded_img is visible and therefore $preloaded_img.width is available + setTimeout(function () { + + onAdjustSize(); + + preview.setIndex(currentIdx + 1, currentItems.length); + preview.setLabels([ + currentItem.label, + '' + $preloaded_img[0].naturalWidth + 'x' + $preloaded_img[0].naturalHeight, + '' + (100 * $preloaded_img.width() / $preloaded_img[0].naturalWidth).toFixed(0) + '%' + ]); + preview.setRawLink(currentItem.absHref); + }, 10); + }); + }); + }; + + onIdxChange(0); + preview.setOnIndexChange(onIdxChange); + preview.setOnAdjustSize(onAdjustSize); + preview.enter(); }, initItem = function (item) { @@ -230,59 +116,8 @@ modulejs.define('ext/preview-img', ['_', '$', 'core/settings', 'core/resource', return; } - $(template).appendTo('body'); - $('#pv-img-bar-prev, #pv-img-prev').on('click', onPrevious); - $('#pv-img-bar-next, #pv-img-next').on('click', onNext); - $('#pv-img-bar-close, #pv-img-close').on('click', onExit); - $('#pv-img-bar-fullscreen').on('click', onFullscreen); - - $('#pv-img-prev') - .on('mouseenter', function () { - $('#pv-img-bar-prev').addClass('hover'); - }) - .on('mouseleave', function () { - $('#pv-img-bar-prev').removeClass('hover'); - }); - - $('#pv-img-next') - .on('mouseenter', function () { - $('#pv-img-bar-next').addClass('hover'); - }) - .on('mouseleave', function () { - $('#pv-img-bar-next').removeClass('hover'); - }); - - $('#pv-img-close') - .on('mouseenter', function () { - $('#pv-img-bar-close').addClass('hover'); - }) - .on('mouseleave', function () { - $('#pv-img-bar-close').removeClass('hover'); - }); - - $('#pv-img-overlay') - .on('keydown', onKeydown) - .on('mousemove', function (event) { - - if (isFullscreen) { - var rect = $('#pv-img-overlay').fracs('rect'); - - if (rect.bottom - event.pageY < 64) { - $('#pv-img-bottombar').fadeIn(200); - } else { - $('#pv-img-bottombar').fadeOut(400); - } - } - }) - .on('click mousedown mousemove keydown keypress', function (event) { - - event.stopImmediatePropagation(); - }); - event.sub('location.changed', onLocationChanged); event.sub('location.refreshed', onLocationRefreshed); - - $(window).on('resize load', adjustSize); }; init(); diff --git a/src/_h5ai/client/js/inc/ext/preview.js b/src/_h5ai/client/js/inc/ext/preview.js index bcfef0ca..7e2e4016 100644 --- a/src/_h5ai/client/js/inc/ext/preview.js +++ b/src/_h5ai/client/js/inc/ext/preview.js @@ -6,19 +6,15 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor }, allsettings['preview']), template = '<div id="pv-overlay" class="noSelection">' + - '<div id="pv-content">' + - '<img id="pv-image"/>' + - '</div>' + - '<div id="pv-spinner">' + - '<img src="' + resource.image('spinner') + '"/>' + - '</div>' + - '<div id="pv-close"/>' + - '<div id="pv-prev"/>' + - '<div id="pv-next"/>' + + '<div id="pv-close-area"/>' + + '<div id="pv-content"/>' + + '<div id="pv-spinner"><img src="' + resource.image('spinner') + '"/></div>' + + '<div id="pv-prev-area"><img src="' + resource.image('preview/prev') + '"/></div>' + + '<div id="pv-next-area"><img src="' + resource.image('preview/next') + '"/></div>' + '<div id="pv-bottombar" class="clearfix">' + '<ul id="pv-buttons">' + '<li id="pv-bar-close" class="bar-right bar-button"><img src="' + resource.image('preview/close') + '"/></li>' + - '<li id="pv-bar-original" class="bar-right"><a class="bar-button" target="_blank"><img src="' + resource.image('preview/raw') + '"/></a></li>' + + '<li id="pv-bar-raw" class="bar-right"><a class="bar-button" target="_blank"><img src="' + resource.image('preview/raw') + '"/></a></li>' + '<li id="pv-bar-fullscreen" class="bar-right bar-button"><img src="' + resource.image('preview/fullscreen') + '"/></li>' + '<li id="pv-bar-next" class="bar-right bar-button"><img src="' + resource.image('preview/next') + '"/></li>' + '<li id="pv-bar-idx" class="bar-right bar-label"/>' + @@ -38,69 +34,49 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor var rect = $(window).fracs('viewport'), $container = $('#pv-content'), $spinner = $('#pv-spinner'), - $spinnerimg = $spinner.find('img').width(100).height(100), - $img = $('#pv-image'), margin = isFullscreen ? 0 : 20, barheight = isFullscreen ? 0 : 31; - $container.add($spinner).css({ + $container.css({ width: rect.width - 2 * margin, height: rect.height - 2 * margin - barheight, left: margin, top: margin }); - var lr = ($container.width() - $img.width()) / 2, - tb = ($container.height() - $img.height()) / 2; - - $img.css({ - margin: '' + tb + 'px ' + lr + 'px' - }); - $spinnerimg.css({ - margin: '' + (($spinner.height() - $spinnerimg.height()) / 2) + 'px ' + (($spinner.width() - $spinnerimg.height()) / 2) + 'px' + $spinner.css({ + left: rect.width * 0.5, + top: rect.height * 0.5 }); - rect = $img.fracs('rect'); - if (!rect) { - return; - } - rect = rect.relativeTo($('#pv-overlay').fracs('rect')); - - $('#pv-prev').css({ - left: rect.left, - top: rect.top, - width: rect.width / 2, - height: rect.height - }); - $('#pv-next').css({ - left: rect.left + rect.width / 2, - top: rect.top, - width: rect.width / 2, - height: rect.height - }); - - $('#pv-bar-percent').text('' + (100 * $img.width() / $img[0].naturalWidth).toFixed(0) + '%'); if (isFullscreen) { $('#pv-overlay').addClass('fullscreen'); $('#pv-bar-fullscreen').find('img').attr('src', resource.image('preview/no-fullscreen')); - $('#pv-bottombar').fadeOut(400); } else { $('#pv-overlay').removeClass('fullscreen'); $('#pv-bar-fullscreen').find('img').attr('src', resource.image('preview/fullscreen')); - $('#pv-bottombar').fadeIn(200); + } + + if (_.isFunction(onAdjustSize)) { + onAdjustSize(1); } }, - onEnter = function (items, idx) { + onEnter = function () { $(window).on('keydown', onKeydown); - $('#pv-image').hide(); + $('#pv-content').empty(); $('#pv-overlay').stop(true, true).fadeIn(200); - currentEntries = items; adjustSize(); }, + onExit = function () { + + $(window).off('keydown', onKeydown); + $('#pv-overlay').stop(true, true).fadeOut(200); + }, + onNext = function () { if (_.isFunction(onIndexChange)) { @@ -115,10 +91,19 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor } }, - onExit = function () { + fsTimer = null, + onMouseMove = function () { - $(window).off('keydown', onKeydown); - $('#pv-overlay').stop(true, true).fadeOut(200); + clearTimeout(fsTimer); + $('#pv-bottombar, #pv-prev-area, #pv-next-area').fadeIn(200); + + if (isFullscreen) { + + fsTimer = setTimeout(function () { + + $('#pv-bottombar, #pv-prev-area, #pv-next-area').fadeOut(400); + }, 2000); + } }, onFullscreen = function () { @@ -126,6 +111,7 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor isFullscreen = !isFullscreen; store.put(storekey, isFullscreen); + onMouseMove(); adjustSize(); }, @@ -152,12 +138,31 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor } }, + enter = function () { + + onEnter(); + }, + + exit = function () { + + onExit(); + }, + setIndex = function (idx, total) { if (_.isNumber(idx)) { - $('#pv-bar-idx').show().text('' + idx + (_.isNumber(total) ? '/' + total : '')); + $('#pv-bar-idx').text('' + idx + (_.isNumber(total) ? '/' + total : '')).show(); } else { - $('#pv-bar-idx').hide(); + $('#pv-bar-idx').text('').hide(); + } + }, + + setRawLink = function (href) { + + if (href) { + $('#pv-bar-raw').find('a').attr('href', href).end().show(); + } else { + $('#pv-bar-raw').find('a').attr('href', '#').end().hide(); } }, @@ -179,6 +184,25 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor onIndexChange = fn; }, + onAdjustSize = null, + setOnAdjustSize = function (fn) { + + onAdjustSize = fn; + }, + + showSpinner = function (show, millis) { + + if (!_.isNumber(millis)) { + millis = 400; + } + + if (show) { + $('#pv-spinner').stop(true, true).fadeIn(millis); + } else { + $('#pv-spinner').stop(true, true).fadeOut(millis); + } + }, + init = function () { if (!settings.enabled) { @@ -186,12 +210,14 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor } $(template).appendTo('body'); - $('#pv-bar-prev, #pv-prev').on('click', onPrevious); - $('#pv-bar-next, #pv-next').on('click', onNext); - $('#pv-bar-close, #pv-close').on('click', onExit); + + $('#pv-spinner').hide(); + $('#pv-bar-prev, #pv-prev-area').on('click', onPrevious); + $('#pv-bar-next, #pv-next-area').on('click', onNext); + $('#pv-bar-close, #pv-close-area').on('click', onExit); $('#pv-bar-fullscreen').on('click', onFullscreen); - $('#pv-prev') + $('#pv-prev-area') .on('mouseenter', function () { $('#pv-bar-prev').addClass('hover'); }) @@ -199,7 +225,7 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor $('#pv-bar-prev').removeClass('hover'); }); - $('#pv-next') + $('#pv-next-area') .on('mouseenter', function () { $('#pv-bar-next').addClass('hover'); }) @@ -207,7 +233,7 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor $('#pv-bar-next').removeClass('hover'); }); - $('#pv-close') + $('#pv-close-area') .on('mouseenter', function () { $('#pv-bar-close').addClass('hover'); }) @@ -215,20 +241,10 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor $('#pv-bar-close').removeClass('hover'); }); + var fsTimer = null; $('#pv-overlay') .on('keydown', onKeydown) - .on('mousemove', function (event) { - - if (isFullscreen) { - var rect = $('#pv-overlay').fracs('rect'); - - if (rect.bottom - event.pageY < 64) { - $('#pv-bottombar').fadeIn(200); - } else { - $('#pv-bottombar').fadeOut(400); - } - } - }) + .on('mousemove', onMouseMove) .on('click mousedown mousemove keydown keypress', function (event) { event.stopImmediatePropagation(); @@ -240,8 +256,13 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor init(); return { + enter: enter, + exit: exit, setIndex: setIndex, + setRawLink: setRawLink, setLabels: setLabels, - setOnIndexChange: setOnIndexChange + setOnIndexChange: setOnIndexChange, + setOnAdjustSize: setOnAdjustSize, + showSpinner: showSpinner }; }); From cdbf2e21041f59c1ba84887621dc1be94d39bbc1 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Wed, 21 Aug 2013 15:56:18 +0200 Subject: [PATCH 20/83] Updates text preview. --- src/_h5ai/client/css/inc/preview-txt.less | 126 +------------ src/_h5ai/client/js/inc/ext/preview-txt.js | 194 ++++++--------------- 2 files changed, 66 insertions(+), 254 deletions(-) diff --git a/src/_h5ai/client/css/inc/preview-txt.less b/src/_h5ai/client/css/inc/preview-txt.less index bff27626..85c76ad3 100644 --- a/src/_h5ai/client/css/inc/preview-txt.less +++ b/src/_h5ai/client/css/inc/preview-txt.less @@ -1,35 +1,14 @@ -#pv-txt-overlay { - display: none; - position: fixed; - left: 0; - top: 0; - right: 0; - bottom: 0; - z-index: 100; - - background-color: rgba(0,0,0,0.5); - .transition(background-color 0.3s ease-in-out); - - text-align: center; -} - -#pv-txt-content { - max-width: 960px; - margin: 0 auto; - padding: 10px; - background-color: #fff; - border: 1px solid #fff; - text-align: left; - overflow: auto; - position: relative; -} - -#pv-txt-spinner { - position: fixed; -} - #pv-txt-text { + // position: absolute; + max-width: 800px; + max-height: 100%; + height: 100%; + text-align: left; + background-color: #fff; + margin: 0 auto; + padding: 8px; + overflow: auto; &.highlighted { word-break: break-all; @@ -143,90 +122,3 @@ } } } - -#pv-txt-close { - position: fixed; - left: 0; - top: 0; - width: 100%; - height: 100%; - cursor: pointer; -} - -#pv-txt-prev { - position: fixed; - cursor: pointer; -} - -#pv-txt-next { - position: fixed; - cursor: pointer; -} - -#pv-txt-buttons, #pv-txt-topbuttons { - list-style: none; - list-style-image: none; - margin: 0; - padding: 0; - - img { - position: relative; - top: -2px; - width: 16px; - height: 16px; - } - img + span, img + input { - margin-left: 6px; - } - input { - background-color: rgba(255,255,255,0.1); - border: none; - color: #ccc; - } - - .bar-label { - display: block; - color: #ccc; - height: 30px; - line-height: 30px; - padding: 0 10px; - opacity: 0.7; - .transition(all 0.2s ease-in-out); - } - - .bar-highlight { - background-color: rgba(255,255,255,0.1); - opacity: 1.0; - } - - @bar-sep-border: 1px solid rgba(255,255,255,0.05); - - .bar-button { - .bar-label; - cursor: pointer; - &:hover, &.hover { - .bar-highlight; - } - } - - .bar-left { - float: left; - border-right: @bar-sep-border; - } - - .bar-right { - float: right; - border-left: @bar-sep-border; - } -} - -#pv-txt-bottombar { - position: fixed; - z-index: 5; - width: 100%; - height: 32px; - left: 0; - bottom: 0; - background-color: rgb(27,27,27); - border-top: 1px solid rgb(45,45,45); -} diff --git a/src/_h5ai/client/js/inc/ext/preview-txt.js b/src/_h5ai/client/js/inc/ext/preview-txt.js index 508fd323..e93c77ed 100644 --- a/src/_h5ai/client/js/inc/ext/preview-txt.js +++ b/src/_h5ai/client/js/inc/ext/preview-txt.js @@ -1,5 +1,5 @@ -modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/resource', 'core/store', 'core/event', 'core/location'], function (_, $, allsettings, resource, store, event, location) { +modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/store', 'core/event', 'ext/preview'], function (_, $, allsettings, store, event, preview) { var settings = _.extend({ enabled: false, @@ -28,33 +28,9 @@ modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/resource', } }, allsettings['preview-txt']), - template = '<div id="pv-txt-overlay" class="noSelection">' + - '<div id="pv-txt-close"/>' + - '<div id="pv-txt-content">' + - '<div id="pv-txt-text"/>' + - '</div>' + - '<div id="pv-txt-spinner">' + - '<img src="' + resource.image('spinner') + '"/>' + - '</div>' + - '<div id="pv-txt-bottombar" class="clearfix">' + - '<ul id="pv-txt-buttons">' + - '<li id="pv-txt-bar-size" class="bar-left bar-label"/>' + - '<li id="pv-txt-bar-label" class="bar-left bar-label"/>' + - '<li id="pv-txt-bar-close" class="bar-right bar-button"><img src="' + resource.image('preview/close') + '"/></li>' + - '<li id="pv-txt-bar-original" class="bar-right"><a class="bar-button" target="_blank"><img src="' + resource.image('preview/raw') + '"/></a></li>' + - '<li id="pv-txt-bar-next" class="bar-right bar-button"><img src="' + resource.image('preview/next') + '"/></li>' + - '<li id="pv-txt-bar-idx" class="bar-right bar-label"/>' + - '<li id="pv-txt-bar-prev" class="bar-right bar-button"><img src="' + resource.image('preview/prev') + '"/></li>' + - '</ul>' + - '</div>' + - '</div>', - templateText = '<pre id="pv-txt-text" class="highlighted"/>', templateMarkdown = '<div id="pv-txt-text" class="markdown"/>', - currentEntries = [], - currentIdx = 0, - // adapted from SyntaxHighlighter getHighlightedLines = function (sh, alias, content) { @@ -159,107 +135,74 @@ modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/resource', }); }, - onIndexChange = function (idx) { - - currentIdx = (idx + currentEntries.length) % currentEntries.length; - - var $container = $('#pv-txt-content'), - $text = $('#pv-txt-text'), - current = currentEntries[currentIdx], - spinnerTimeout = setTimeout(function () { $('#pv-txt-spinner').show(); }, 200); - - preloadText(current.absHref, function (content) { - - clearTimeout(spinnerTimeout); - $('#pv-txt-spinner').hide(); - - $text.fadeOut(100, function () { - - var $nText; - - if (current.type === 'markdown') { - $nText = $(templateMarkdown).hide().text(content); - $text.replaceWith($nText); - - loadMarkdown(function (md) { - - if (md) { - $nText.html(md.toHTML(content)); - } - }); - } else { - $nText = $(templateText).hide().text(content); - $text.replaceWith($nText); - - loadSyntaxhighlighter(function (sh) { - - if (sh) { - var $table = $('<table/>'); - - getHighlightedLines(sh, settings.types[current.type], content).each(function (i) { - $('<tr/>') - .append($('<td/>').addClass('nr').append(i + 1)) - .append($('<td/>').addClass('line').append(this)) - .appendTo($table); - }); - - $nText.empty().append($table); - } - }); - } - $nText.fadeIn(200); - - adjustSize(); - $('#pv-txt-bar-label').text(current.label); - $('#pv-txt-bar-size').text('' + current.size + ' bytes'); - $('#pv-txt-bar-idx').text('' + (currentIdx + 1) + ' / ' + currentEntries.length); - $('#pv-txt-bar-original').find('a').attr('href', current.absHref); - }); - }); - }, - onEnter = function (items, idx) { - $(window).on('keydown', onKeydown); - $('#pv-txt-overlay').stop(true, true).fadeIn(200); + var currentItems = items, + currentIdx = idx, + currentItem = items[idx], - currentEntries = items; - onIndexChange(idx); - }, + onIdxChange = function (rel) { - onNext = function () { + currentIdx = (currentIdx + rel + currentItems.length) % currentItems.length; + currentItem = currentItems[currentIdx]; - onIndexChange(currentIdx + 1); - }, + var spinnerTimeout = setTimeout(function () { preview.showSpinner(true); }, 200); - onPrevious = function () { + preloadText(currentItem.absHref, function (textContent) { - onIndexChange(currentIdx - 1); - }, + clearTimeout(spinnerTimeout); + preview.showSpinner(false); - onExit = function () { + $('#pv-content').fadeOut(100, function () { - $(window).off('keydown', onKeydown); - $('#pv-txt-overlay').stop(true, true).fadeOut(200); - }, + var $text; - onKeydown = function (event) { + if (currentItem.type === 'markdown') { + $text = $(templateMarkdown).text(textContent); + $text.replaceWith($text); - var key = event.which; + loadMarkdown(function (md) { - if (key === 27) { // esc - event.preventDefault(); - event.stopImmediatePropagation(); - onExit(); - } else if (key === 8 || key === 37 || key === 40) { // backspace, left, down - event.preventDefault(); - event.stopImmediatePropagation(); - onPrevious(); - } else if (key === 13 || key === 32 || key === 38 || key === 39) { // enter, space, up, right - event.preventDefault(); - event.stopImmediatePropagation(); - onNext(); - } + if (md) { + $text.html(md.toHTML(textContent)); + } + }); + } else { + $text = $(templateText).text(textContent); + $text.replaceWith($text); + + loadSyntaxhighlighter(function (sh) { + + if (sh) { + var $table = $('<table/>'); + + getHighlightedLines(sh, settings.types[currentItem.type], textContent).each(function (i) { + $('<tr/>') + .append($('<td/>').addClass('nr').append(i + 1)) + .append($('<td/>').addClass('line').append(this)) + .appendTo($table); + }); + + $text.empty().append($table); + } + }); + } + + $('#pv-content').empty().append($text).fadeIn(200); + + preview.setIndex(currentIdx + 1, currentItems.length); + preview.setLabels([ + currentItem.label, + '' + currentItem.size + ' bytes' + ]); + preview.setRawLink(currentItem.absHref); + }); + }); + }; + + onIdxChange(0); + preview.setOnIndexChange(onIdxChange); + preview.enter(); }, initItem = function (item) { @@ -296,31 +239,8 @@ modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/resource', return; } - $(template).appendTo('body'); - $('#pv-txt-bar-prev').on('click', onPrevious); - $('#pv-txt-bar-next').on('click', onNext); - $('#pv-txt-bar-close, #pv-txt-close').on('click', onExit); - - $('#pv-txt-close') - .on('mouseenter', function () { - $('#pv-txt-bar-close').addClass('hover'); - }) - .on('mouseleave', function () { - $('#pv-txt-bar-close').removeClass('hover'); - }); - - - $('#pv-txt-overlay') - .on('keydown', onKeydown) - .on('click mousedown mousemove keydown keypress', function (event) { - - event.stopImmediatePropagation(); - }); - event.sub('location.changed', onLocationChanged); event.sub('location.refreshed', onLocationRefreshed); - - $(window).on('resize load', adjustSize); }; init(); From 11f6b3792d1ccabc6e533ee505d7ead3762387ff Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Wed, 21 Aug 2013 15:58:18 +0200 Subject: [PATCH 21/83] Minor updates. --- src/_h5ai/client/css/inc/preview-txt.less | 1 - src/_h5ai/client/js/inc/ext/preview-img.js | 2 +- src/_h5ai/client/js/inc/ext/preview-txt.js | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/_h5ai/client/css/inc/preview-txt.less b/src/_h5ai/client/css/inc/preview-txt.less index 85c76ad3..0d3fcce4 100644 --- a/src/_h5ai/client/css/inc/preview-txt.less +++ b/src/_h5ai/client/css/inc/preview-txt.less @@ -1,6 +1,5 @@ #pv-txt-text { - // position: absolute; max-width: 800px; max-height: 100%; height: 100%; diff --git a/src/_h5ai/client/js/inc/ext/preview-img.js b/src/_h5ai/client/js/inc/ext/preview-img.js index ead5a717..a9dc5a4a 100644 --- a/src/_h5ai/client/js/inc/ext/preview-img.js +++ b/src/_h5ai/client/js/inc/ext/preview-img.js @@ -1,5 +1,5 @@ -modulejs.define('ext/preview-img', ['_', '$', 'core/settings', 'core/store', 'core/event', 'ext/preview'], function (_, $, allsettings, store, event, preview) { +modulejs.define('ext/preview-img', ['_', '$', 'core/settings', 'core/event', 'ext/preview'], function (_, $, allsettings, event, preview) { var settings = _.extend({ enabled: false, diff --git a/src/_h5ai/client/js/inc/ext/preview-txt.js b/src/_h5ai/client/js/inc/ext/preview-txt.js index e93c77ed..adc2b7ce 100644 --- a/src/_h5ai/client/js/inc/ext/preview-txt.js +++ b/src/_h5ai/client/js/inc/ext/preview-txt.js @@ -1,5 +1,5 @@ -modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/store', 'core/event', 'ext/preview'], function (_, $, allsettings, store, event, preview) { +modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/event', 'ext/preview'], function (_, $, allsettings, event, preview) { var settings = _.extend({ enabled: false, From 72c7b32a941a7a52da70cf8e2b0eec89267f475d Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Wed, 21 Aug 2013 23:00:33 +0200 Subject: [PATCH 22/83] Preview updates. --- src/_h5ai/client/css/inc/preview-img.less | 4 +- src/_h5ai/client/css/inc/preview-txt.less | 6 +-- src/_h5ai/client/css/inc/preview.less | 1 - src/_h5ai/client/js/inc/ext/preview-txt.js | 44 ++++++++-------------- src/_h5ai/client/js/inc/ext/preview.js | 2 +- 5 files changed, 22 insertions(+), 35 deletions(-) diff --git a/src/_h5ai/client/css/inc/preview-img.less b/src/_h5ai/client/css/inc/preview-img.less index 7ca5b28a..4a1fe130 100644 --- a/src/_h5ai/client/css/inc/preview-img.less +++ b/src/_h5ai/client/css/inc/preview-img.less @@ -12,5 +12,7 @@ -webkit-linear-gradient(45deg, @check-black 25%, transparent 25%, transparent 75%, @check-black 75%, @check-black), -webkit-linear-gradient(45deg, @check-black 25%, transparent 25%, transparent 75%, @check-black 75%, @check-black); background-size: 60px 60px; - background-position: 0 0, 30px 30px + background-position: 0 0, 30px 30px; + + box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.3); } diff --git a/src/_h5ai/client/css/inc/preview-txt.less b/src/_h5ai/client/css/inc/preview-txt.less index 0d3fcce4..68bff18e 100644 --- a/src/_h5ai/client/css/inc/preview-txt.less +++ b/src/_h5ai/client/css/inc/preview-txt.less @@ -1,14 +1,14 @@ #pv-txt-text { - max-width: 800px; - max-height: 100%; - height: 100%; + max-width: 960px; text-align: left; background-color: #fff; margin: 0 auto; padding: 8px; overflow: auto; + box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.3); + &.highlighted { word-break: break-all; diff --git a/src/_h5ai/client/css/inc/preview.less b/src/_h5ai/client/css/inc/preview.less index 3ca1895f..b3c29289 100644 --- a/src/_h5ai/client/css/inc/preview.less +++ b/src/_h5ai/client/css/inc/preview.less @@ -20,7 +20,6 @@ #pv-content { position: absolute; - overflow: hidden; } #pv-spinner { diff --git a/src/_h5ai/client/js/inc/ext/preview-txt.js b/src/_h5ai/client/js/inc/ext/preview-txt.js index adc2b7ce..ef5fcf12 100644 --- a/src/_h5ai/client/js/inc/ext/preview-txt.js +++ b/src/_h5ai/client/js/inc/ext/preview-txt.js @@ -92,32 +92,6 @@ modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/event', 'ex loadScript(allsettings.h5aiAbsHref + 'client/js/markdown.js', 'markdown', callback); }, - adjustSize = function () { - - var $window = $(window), - $container = $('#pv-txt-content'), - $spinner = $('#pv-txt-spinner'), - $spinnerimg = $spinner.find('img').width(100).height(100), - margin = 20, - barheight = 31; - - $container.css({ - height: $window.height() - 2 * margin - barheight - 32, - top: margin - }); - - $spinner.css({ - width: $window.width() - 2 * margin, - height: $window.height() - 2 * margin - barheight, - left: margin, - top: margin - }); - - $spinnerimg.css({ - margin: '' + (($spinner.height() - $spinnerimg.height()) / 2) + 'px ' + (($spinner.width() - $spinnerimg.height()) / 2) + 'px' - }); - }, - preloadText = function (absHref, callback) { $.ajax({ @@ -141,6 +115,17 @@ modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/event', 'ex currentIdx = idx, currentItem = items[idx], + onAdjustSize = function () { + + var $content = $('#pv-content'), + $text = $('#pv-txt-text'); + + if ($text.length) { + + $text.height($content.height() - 16); + } + }, + onIdxChange = function (rel) { currentIdx = (currentIdx + rel + currentItems.length) % currentItems.length; @@ -158,8 +143,8 @@ modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/event', 'ex var $text; if (currentItem.type === 'markdown') { + $text = $(templateMarkdown).text(textContent); - $text.replaceWith($text); loadMarkdown(function (md) { @@ -168,8 +153,8 @@ modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/event', 'ex } }); } else { + $text = $(templateText).text(textContent); - $text.replaceWith($text); loadSyntaxhighlighter(function (sh) { @@ -187,8 +172,8 @@ modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/event', 'ex } }); } - $('#pv-content').empty().append($text).fadeIn(200); + onAdjustSize(); preview.setIndex(currentIdx + 1, currentItems.length); preview.setLabels([ @@ -202,6 +187,7 @@ modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/event', 'ex onIdxChange(0); preview.setOnIndexChange(onIdxChange); + preview.setOnAdjustSize(onAdjustSize); preview.enter(); }, diff --git a/src/_h5ai/client/js/inc/ext/preview.js b/src/_h5ai/client/js/inc/ext/preview.js index 7e2e4016..ec864176 100644 --- a/src/_h5ai/client/js/inc/ext/preview.js +++ b/src/_h5ai/client/js/inc/ext/preview.js @@ -244,7 +244,7 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor var fsTimer = null; $('#pv-overlay') .on('keydown', onKeydown) - .on('mousemove', onMouseMove) + .on('mousemove click mousedown', onMouseMove) .on('click mousedown mousemove keydown keypress', function (event) { event.stopImmediatePropagation(); From 797d5bbc47785a25bac5fe1f60b361b5782e8c3c Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 23 Aug 2013 00:12:34 +0200 Subject: [PATCH 23/83] Updates preview. --- src/_h5ai/client/css/inc/preview.less | 36 ++++++++++++++--- src/_h5ai/client/js/inc/ext/preview.js | 53 +++++++------------------- 2 files changed, 44 insertions(+), 45 deletions(-) diff --git a/src/_h5ai/client/css/inc/preview.less b/src/_h5ai/client/css/inc/preview.less index b3c29289..796936bb 100644 --- a/src/_h5ai/client/css/inc/preview.less +++ b/src/_h5ai/client/css/inc/preview.less @@ -34,11 +34,21 @@ #pv-close-area { position: absolute; - left: 0; - top: 0; - width: 100%; - height: 100%; + right: 8px; + top: 8px; cursor: pointer; + opacity: 0.5; + + img { + background-color: rgba(0,0,0,0.5); + border-radius: 8px; + width: 48px; + height: 48px; + } + + &:hover { + opacity: 1; + } } #pv-prev-area, #pv-next-area { @@ -46,14 +56,14 @@ top: 50%; cursor: pointer; opacity: 0.5; - .transition(all 0.2s ease-in-out); img { background-color: rgba(0,0,0,0.5); border-radius: 8px; width: 48px; height: 48px; - margin: -24px 0; + margin: -72px 0; + padding: 48px 0; } &:hover { @@ -135,4 +145,18 @@ bottom: 0; background-color: rgb(27,27,27); border-top: 1px solid rgb(45,45,45); + +} + +#pv-overlay.fullscreen { + + #pv-bottombar { + opacity: 0.5; + } +} + +@media only screen and (max-width: 700px) { +#pv-prev-area, #pv-next-area, #pv-close-area { + display: none !important; +} } diff --git a/src/_h5ai/client/js/inc/ext/preview.js b/src/_h5ai/client/js/inc/ext/preview.js index ec864176..e432bcf5 100644 --- a/src/_h5ai/client/js/inc/ext/preview.js +++ b/src/_h5ai/client/js/inc/ext/preview.js @@ -6,12 +6,12 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor }, allsettings['preview']), template = '<div id="pv-overlay" class="noSelection">' + - '<div id="pv-close-area"/>' + '<div id="pv-content"/>' + '<div id="pv-spinner"><img src="' + resource.image('spinner') + '"/></div>' + - '<div id="pv-prev-area"><img src="' + resource.image('preview/prev') + '"/></div>' + - '<div id="pv-next-area"><img src="' + resource.image('preview/next') + '"/></div>' + - '<div id="pv-bottombar" class="clearfix">' + + '<div id="pv-prev-area" class="hof"><img src="' + resource.image('preview/prev') + '"/></div>' + + '<div id="pv-next-area" class="hof"><img src="' + resource.image('preview/next') + '"/></div>' + + '<div id="pv-close-area" class="hof"><img src="' + resource.image('preview/close') + '"/></div>' + + '<div id="pv-bottombar" class="clearfix hof">' + '<ul id="pv-buttons">' + '<li id="pv-bar-close" class="bar-right bar-button"><img src="' + resource.image('preview/close') + '"/></li>' + '<li id="pv-bar-raw" class="bar-right"><a class="bar-button" target="_blank"><img src="' + resource.image('preview/raw') + '"/></a></li>' + @@ -91,17 +91,17 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor } }, - fsTimer = null, - onMouseMove = function () { + userAliveTimeoutId = null, + userAlive = function () { - clearTimeout(fsTimer); - $('#pv-bottombar, #pv-prev-area, #pv-next-area').fadeIn(200); + clearTimeout(userAliveTimeoutId); + $('#pv-overlay .hof').stop(true, true).fadeIn(200); if (isFullscreen) { - fsTimer = setTimeout(function () { + userAliveTimeoutId = setTimeout(function () { - $('#pv-bottombar, #pv-prev-area, #pv-next-area').fadeOut(400); + $('#pv-overlay .hof').stop(true, true).fadeOut(2000); }, 2000); } }, @@ -111,7 +111,7 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor isFullscreen = !isFullscreen; store.put(storekey, isFullscreen); - onMouseMove(); + userAlive(); adjustSize(); }, @@ -123,11 +123,11 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor event.preventDefault(); event.stopImmediatePropagation(); onExit(); - } else if (key === 8 || key === 37 || key === 40) { // backspace, left, down + } else if (key === 8 || key === 37) { // backspace, left event.preventDefault(); event.stopImmediatePropagation(); onPrevious(); - } else if (key === 13 || key === 32 || key === 38 || key === 39) { // enter, space, up, right + } else if (key === 13 || key === 32 || key === 39) { // enter, space, right event.preventDefault(); event.stopImmediatePropagation(); onNext(); @@ -217,34 +217,9 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor $('#pv-bar-close, #pv-close-area').on('click', onExit); $('#pv-bar-fullscreen').on('click', onFullscreen); - $('#pv-prev-area') - .on('mouseenter', function () { - $('#pv-bar-prev').addClass('hover'); - }) - .on('mouseleave', function () { - $('#pv-bar-prev').removeClass('hover'); - }); - - $('#pv-next-area') - .on('mouseenter', function () { - $('#pv-bar-next').addClass('hover'); - }) - .on('mouseleave', function () { - $('#pv-bar-next').removeClass('hover'); - }); - - $('#pv-close-area') - .on('mouseenter', function () { - $('#pv-bar-close').addClass('hover'); - }) - .on('mouseleave', function () { - $('#pv-bar-close').removeClass('hover'); - }); - - var fsTimer = null; $('#pv-overlay') .on('keydown', onKeydown) - .on('mousemove click mousedown', onMouseMove) + .on('mousemove mousedown', userAlive) .on('click mousedown mousemove keydown keypress', function (event) { event.stopImmediatePropagation(); From 2251b52f867bc1b8162d3e44ec1b1c73d14091ed Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 23 Aug 2013 01:59:11 +0200 Subject: [PATCH 24/83] Updates preview. --- src/_h5ai/client/css/inc/preview.less | 16 ++++++++++------ src/_h5ai/client/js/inc/ext/preview.js | 11 ++++++++++- 2 files changed, 20 insertions(+), 7 deletions(-) diff --git a/src/_h5ai/client/css/inc/preview.less b/src/_h5ai/client/css/inc/preview.less index 796936bb..49f03122 100644 --- a/src/_h5ai/client/css/inc/preview.less +++ b/src/_h5ai/client/css/inc/preview.less @@ -37,17 +37,19 @@ right: 8px; top: 8px; cursor: pointer; - opacity: 0.5; img { background-color: rgba(0,0,0,0.5); border-radius: 8px; width: 48px; height: 48px; + opacity: 0.5; } - &:hover { - opacity: 1; + &:hover, &.hover { + img { + opacity: 1; + } } } @@ -55,7 +57,6 @@ position: absolute; top: 50%; cursor: pointer; - opacity: 0.5; img { background-color: rgba(0,0,0,0.5); @@ -64,10 +65,13 @@ height: 48px; margin: -72px 0; padding: 48px 0; + opacity: 0.5; } - &:hover { - opacity: 1; + &:hover, &.hover { + img { + opacity: 1; + } } } diff --git a/src/_h5ai/client/js/inc/ext/preview.js b/src/_h5ai/client/js/inc/ext/preview.js index e432bcf5..d33eafb8 100644 --- a/src/_h5ai/client/js/inc/ext/preview.js +++ b/src/_h5ai/client/js/inc/ext/preview.js @@ -117,23 +117,32 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor onKeydown = function (event) { - var key = event.which; + var key = event.which, + delay = 300; if (key === 27) { // esc event.preventDefault(); event.stopImmediatePropagation(); + $('#pv-bar-close, #pv-close-area').addClass('hover'); + setTimeout(function () { $('#pv-bar-close, #pv-close-area').removeClass('hover'); }, delay); onExit(); } else if (key === 8 || key === 37) { // backspace, left event.preventDefault(); event.stopImmediatePropagation(); + $('#pv-bar-prev, #pv-prev-area').addClass('hover'); + setTimeout(function () { $('#pv-bar-prev, #pv-prev-area').removeClass('hover'); }, delay); onPrevious(); } else if (key === 13 || key === 32 || key === 39) { // enter, space, right event.preventDefault(); event.stopImmediatePropagation(); + $('#pv-bar-next, #pv-next-area').addClass('hover'); + setTimeout(function () { $('#pv-bar-next, #pv-next-area').removeClass('hover'); }, delay); onNext(); } else if (key === 70) { // f event.preventDefault(); event.stopImmediatePropagation(); + $('#pv-bar-fullscreen').addClass('hover'); + setTimeout(function () { $('#pv-bar-fullscreen').removeClass('hover'); }, delay); onFullscreen(); } }, From ff1088e53f84847e5d8a5bd97a2b7e92c165ff8f Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 23 Aug 2013 02:26:06 +0200 Subject: [PATCH 25/83] Removes unused dependencies. --- src/_h5ai/client/js/inc/ext/preview.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_h5ai/client/js/inc/ext/preview.js b/src/_h5ai/client/js/inc/ext/preview.js index d33eafb8..6e7d0624 100644 --- a/src/_h5ai/client/js/inc/ext/preview.js +++ b/src/_h5ai/client/js/inc/ext/preview.js @@ -1,5 +1,5 @@ -modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'core/store', 'core/event', 'core/location'], function (_, $, allsettings, resource, store, event, location) { +modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'core/store'], function (_, $, allsettings, resource, store) { var settings = _.extend({ enabled: true From f5bef0072a3cc9dcb14eb4aa50e4fba9e3c3b8a9 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 23 Aug 2013 13:42:13 +0200 Subject: [PATCH 26/83] Improves sort extension. --- src/_h5ai/client/js/inc/ext/sort.js | 88 ++++++++++++++++++++++++----- src/_h5ai/conf/options.json | 10 +++- 2 files changed, 82 insertions(+), 16 deletions(-) diff --git a/src/_h5ai/client/js/inc/ext/sort.js b/src/_h5ai/client/js/inc/ext/sort.js index 268f6a43..45383176 100644 --- a/src/_h5ai/client/js/inc/ext/sort.js +++ b/src/_h5ai/client/js/inc/ext/sort.js @@ -3,7 +3,11 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e var settings = _.extend({ enabled: false, - order: 'na' + order: 'na', + column: 0, + reverse: false, + ignorecase: true, + natural: true }, allsettings.sort), storekey = 'sort.order', @@ -20,7 +24,50 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e return 2; }, - cmpFn = function (rev, getVal) { + // Natural Sort algorithm for Javascript - Version 0.7 - Released under MIT license + // Author: Jim Palmer (based on chunking idea from Dave Koelle) + // + // Modified to make it work with h5ai + naturalCmpFn = function (val1, val2) { + + var re = /(^-?[0-9]+(\.?[0-9]*)[df]?e?[0-9]?$|^0x[0-9a-f]+$|[0-9]+)/gi, + sre = /(^[ ]*|[ ]*$)/g, + dre = /(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[\/\-]\d{1,4}[\/\-]\d{1,4}|^\w+, \w+ \d+, \d{4})/, + hre = /^0x[0-9a-f]+$/i, + ore = /^0/, + // convert all to strings strip whitespace + x = ('' + val1).replace(sre, '') || '', + y = ('' + val2).replace(sre, '') || '', + // chunk/tokenize + xN = x.replace(re, '\0$1\0').replace(/\0$/,'').replace(/^\0/,'').split('\0'), + yN = y.replace(re, '\0$1\0').replace(/\0$/,'').replace(/^\0/,'').split('\0'), + // numeric, hex or date detection + xD = parseInt(x.match(hre), 10) || (xN.length != 1 && x.match(dre) && Date.parse(x)), + yD = parseInt(y.match(hre), 10) || xD && y.match(dre) && Date.parse(y) || null, + oFxNcL, oFyNcL; + // first try and sort Hex codes or Dates + if (yD) + if ( xD < yD ) return -1; + else if ( xD > yD ) return 1; + // natural sorting through split numeric strings and default strings + for(var cLoc=0, numS=Math.max(xN.length, yN.length); cLoc < numS; cLoc++) { + // find floats not starting with '0', string or 0 if not defined (Clint Priest) + oFxNcL = !(xN[cLoc] || '').match(ore) && parseFloat(xN[cLoc]) || xN[cLoc] || 0; + oFyNcL = !(yN[cLoc] || '').match(ore) && parseFloat(yN[cLoc]) || yN[cLoc] || 0; + // handle numeric vs string comparison - number < string - (Kyle Adams) + if (isNaN(oFxNcL) !== isNaN(oFyNcL)) { return (isNaN(oFxNcL)) ? 1 : -1; } + // rely on string comparison if different types - i.e. '02' < 2 != '02' < '2' + else if (typeof oFxNcL !== typeof oFyNcL) { + oFxNcL += ''; + oFyNcL += ''; + } + if (oFxNcL < oFyNcL) return -1; + if (oFxNcL > oFyNcL) return 1; + } + return 0; + }, + + cmpFn = function (getVal, reverse, ignorecase, natural) { return function (item1, item2) { @@ -33,18 +80,25 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e val1 = getVal(item1); val2 = getVal(item2); - if (val1 < val2) { - return rev ? 1 : -1; - } else if (val1 > val2) { - return rev ? -1 : 1; + + if (ignorecase) { + val1 = val1.toLowerCase(); + val2 = val2.toLowerCase(); } - return 0; + + if (natural) { + res = naturalCmpFn(val1, val2); + } else { + res = val1 < val2 ? -1 : (val1 > val2 ? 1 : 0); + } + + return reverse ? -res : res; }; }, getName = function (item) { - return $(item).find('.label').text().toLowerCase(); + return $(item).find('.label').text(); }, getTime = function (item) { @@ -91,39 +145,43 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e $header = $('#items li.header'), $label = $header.find('a.label'), $date = $header.find('a.date'), - $size = $header.find('a.size'); + $size = $header.find('a.size'), + column = settings.column, + reverse = settings.reverse, + ignorecase = settings.ignorecase, + natural = settings.natural; $all = $header.find('a.label,a.date,a.size'); orders = { na: { head: $label, clas: 'ascending', - fn: cmpFn(false, getName) + fn: cmpFn(getName, false, ignorecase, natural) }, nd: { head: $label, clas: 'descending', - fn: cmpFn(true, getName) + fn: cmpFn(getName, true, ignorecase, natural) }, da: { head: $date, clas: 'ascending', - fn: cmpFn(false, getTime) + fn: cmpFn(getTime, false, ignorecase, natural) }, dd: { head: $date, clas: 'descending', - fn: cmpFn(true, getTime) + fn: cmpFn(getTime, true, ignorecase, natural) }, sa: { head: $size, clas: 'ascending', - fn: cmpFn(false, getSize) + fn: cmpFn(getSize, false, ignorecase, natural) }, sd: { head: $size, clas: 'descending', - fn: cmpFn(true, getSize) + fn: cmpFn(getSize, true, ignorecase, natural) } }; diff --git a/src/_h5ai/conf/options.json b/src/_h5ai/conf/options.json index 59d3f241..c6b0b40a 100644 --- a/src/_h5ai/conf/options.json +++ b/src/_h5ai/conf/options.json @@ -276,10 +276,18 @@ Options for "descending". - order: "na", "nd", "da", "dd", "sa" or "sd" + - column: [NOT USED] 0 for "Name", 1 for "Date", 2 for "Size" + - reverse: [NOT USED] false for ascending, true for descending + - ignorecase: compare ignorecase + - natural: use natural sort order */ "sort": { "enabled": true, - "order": "na" + "order": "na", + "column": 0, + "reverse": false, + "ignorecase": true, + "natural": true }, /* From aef4facdb38eb9a4d7d3b4f082d2f11571ae8470 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 23 Aug 2013 16:28:58 +0200 Subject: [PATCH 27/83] Improves sort extension. --- src/_h5ai/client/js/inc/ext/sort.js | 127 ++++++++++++---------------- src/_h5ai/conf/options.json | 16 ++-- 2 files changed, 60 insertions(+), 83 deletions(-) diff --git a/src/_h5ai/client/js/inc/ext/sort.js b/src/_h5ai/client/js/inc/ext/sort.js index 45383176..9dddb6a5 100644 --- a/src/_h5ai/client/js/inc/ext/sort.js +++ b/src/_h5ai/client/js/inc/ext/sort.js @@ -3,7 +3,6 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e var settings = _.extend({ enabled: false, - order: 'na', column: 0, reverse: false, ignorecase: true, @@ -12,18 +11,46 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e storekey = 'sort.order', - type = function (item) { + getType = function (item) { var $item = $(item); if ($item.hasClass('folder-parent')) { return 0; - } else if ($item.hasClass('folder')) { + } + if ($item.hasClass('folder')) { return 1; } return 2; }, + getName = function (item) { + + return $(item).find('.label').text(); + }, + + getTime = function (item) { + + return $(item).find('.date').data('time'); + }, + + getSize = function (item) { + + return $(item).find('.size').data('bytes'); + }, + + columnGetters = { + 0: getName, + 1: getTime, + 2: getSize + }, + + columnClasses = { + 0: 'label', + 1: 'date', + 2: 'size' + }, + // Natural Sort algorithm for Javascript - Version 0.7 - Released under MIT license // Author: Jim Palmer (based on chunking idea from Dave Koelle) // @@ -36,8 +63,8 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e hre = /^0x[0-9a-f]+$/i, ore = /^0/, // convert all to strings strip whitespace - x = ('' + val1).replace(sre, '') || '', - y = ('' + val2).replace(sre, '') || '', + x = ('' + val1).replace(sre, ''), + y = ('' + val2).replace(sre, ''), // chunk/tokenize xN = x.replace(re, '\0$1\0').replace(/\0$/,'').replace(/^\0/,'').split('\0'), yN = y.replace(re, '\0$1\0').replace(/\0$/,'').replace(/^\0/,'').split('\0'), @@ -73,13 +100,13 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e var res, val1, val2; - res = type(item1) - type(item2); + res = getType(item1) - getType(item2); if (res !== 0) { return res; } - val1 = getVal(item1); - val2 = getVal(item2); + val1 = '' + getVal(item1); + val2 = '' + getVal(item2); if (ignorecase) { val1 = val1.toLowerCase(); @@ -96,34 +123,24 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e }; }, - getName = function (item) { + sortItems = function (column, reverse) { - return $(item).find('.label').text(); - }, - getTime = function (item) { + var headers = $('#items li.header a'), + header = $("#items li.header a." + columnClasses[column]), - return $(item).find('.date').data('time'); - }, - getSize = function (item) { + fn = cmpFn(columnGetters[column], reverse, settings.ignorecase, settings.natural), - return $(item).find('.size').data('bytes'); - }, + current = $('#items .item'), + sorted = $('#items .item').sort(fn); - $all, orders, + store.put(storekey, {column: column, reverse: reverse}); - sortBy = function (id) { + headers.removeClass('ascending descending'); + header.addClass(reverse ? 'descending' : 'ascending'); - var order = orders[id]; - - store.put(storekey, id); - - $all.removeClass('ascending').removeClass('descending'); - order.head.addClass(order.clas); - var current = $('#items .item'); - var sorted = $('#items .item').sort(order.fn); for (var i = 0, l = current.length; i < l; i += 1) { if (current[i] !== sorted[i]) { - sorted.detach().sort(order.fn).appendTo('#items'); + sorted.detach().sort(fn).appendTo('#items'); break; } } @@ -131,7 +148,11 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e onContentChanged = function (item) { - sortBy(store.get(storekey) || settings.order); + var order = store.get(storekey), + column = order.column || settings.column, + reverse = order.reverse || settings.reverse; + + sortItems(column, reverse); }, init = function () { @@ -145,66 +166,26 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e $header = $('#items li.header'), $label = $header.find('a.label'), $date = $header.find('a.date'), - $size = $header.find('a.size'), - column = settings.column, - reverse = settings.reverse, - ignorecase = settings.ignorecase, - natural = settings.natural; - - $all = $header.find('a.label,a.date,a.size'); - orders = { - na: { - head: $label, - clas: 'ascending', - fn: cmpFn(getName, false, ignorecase, natural) - }, - nd: { - head: $label, - clas: 'descending', - fn: cmpFn(getName, true, ignorecase, natural) - }, - da: { - head: $date, - clas: 'ascending', - fn: cmpFn(getTime, false, ignorecase, natural) - }, - dd: { - head: $date, - clas: 'descending', - fn: cmpFn(getTime, true, ignorecase, natural) - }, - sa: { - head: $size, - clas: 'ascending', - fn: cmpFn(getSize, false, ignorecase, natural) - }, - sd: { - head: $size, - clas: 'descending', - fn: cmpFn(getSize, true, ignorecase, natural) - } - }; - - sortBy(store.get(storekey) || settings.order); + $size = $header.find('a.size'); $label .append($ascending.clone()).append($descending.clone()) .click(function (event) { - sortBy('n' + ($label.hasClass('ascending') ? 'd' : 'a')); + sortItems(0, $(this).hasClass('ascending')); event.preventDefault(); }); $date .prepend($ascending.clone()).prepend($descending.clone()) .click(function (event) { - sortBy('d' + ($date.hasClass('ascending') ? 'd' : 'a')); + sortItems(1, $(this).hasClass('ascending')); event.preventDefault(); }); $size .prepend($ascending.clone()).prepend($descending.clone()) .click(function (event) { - sortBy('s' + ($size.hasClass('ascending') ? 'd' : 'a')); + sortItems(2, $(this).hasClass('ascending')); event.preventDefault(); }); diff --git a/src/_h5ai/conf/options.json b/src/_h5ai/conf/options.json index c6b0b40a..a5caf6cb 100644 --- a/src/_h5ai/conf/options.json +++ b/src/_h5ai/conf/options.json @@ -270,20 +270,16 @@ Options }, /* - Default sort order is a two letter code. The first letter specifies - the column: "n" for "Name", "d" for "Date" or "s" for "Size". The - second letter specifies the sort order: "a" for "ascending" or "d" - for "descending". + Default sort order. + "column" and "reverse" are locally stored. - - order: "na", "nd", "da", "dd", "sa" or "sd" - - column: [NOT USED] 0 for "Name", 1 for "Date", 2 for "Size" - - reverse: [NOT USED] false for ascending, true for descending - - ignorecase: compare ignorecase - - natural: use natural sort order + - column: int, 0 for "Name", 1 for "Date", 2 for "Size" + - reverse: boolean, false for ascending, true for descending + - ignorecase: boolean, compare ignorecase + - natural: boolean, use natural sort order */ "sort": { "enabled": true, - "order": "na", "column": 0, "reverse": false, "ignorecase": true, From 1d24ab33e9b7fb33e181fa88dadad427ff289b11 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 23 Aug 2013 21:27:40 +0200 Subject: [PATCH 28/83] Updates sort extension. --- src/_h5ai/client/js/inc/ext/sort.js | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/src/_h5ai/client/js/inc/ext/sort.js b/src/_h5ai/client/js/inc/ext/sort.js index 9dddb6a5..29ae0238 100644 --- a/src/_h5ai/client/js/inc/ext/sort.js +++ b/src/_h5ai/client/js/inc/ext/sort.js @@ -10,6 +10,8 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e }, allsettings.sort), storekey = 'sort.order', + template = '<img src="' + resource.image('ascending') + '" class="sort ascending" alt="ascending" />' + + '<img src="' + resource.image('descending') + '" class="sort descending" alt="descending" />', getType = function (item) { @@ -163,27 +165,24 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e var $ascending = $('<img src="' + resource.image('ascending') + '" class="sort ascending" alt="ascending" />'), $descending = $('<img src="' + resource.image('descending') + '" class="sort descending" alt="descending" />'), - $header = $('#items li.header'), - $label = $header.find('a.label'), - $date = $header.find('a.date'), - $size = $header.find('a.size'); + $header = $('#items li.header'); - $label - .append($ascending.clone()).append($descending.clone()) + $header.find('a.label') + .append(template) .click(function (event) { sortItems(0, $(this).hasClass('ascending')); event.preventDefault(); }); - $date - .prepend($ascending.clone()).prepend($descending.clone()) + $header.find('a.date') + .prepend(template) .click(function (event) { sortItems(1, $(this).hasClass('ascending')); event.preventDefault(); }); - $size - .prepend($ascending.clone()).prepend($descending.clone()) + $header.find('a.size') + .prepend(template) .click(function (event) { sortItems(2, $(this).hasClass('ascending')); event.preventDefault(); From bbdafb9def82d2267ac14ddb321e217e06dfba5b Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 23 Aug 2013 22:32:31 +0200 Subject: [PATCH 29/83] Updates sort extension. --- src/_h5ai/client/js/inc/ext/sort.js | 49 +++++++++++++++-------------- 1 file changed, 25 insertions(+), 24 deletions(-) diff --git a/src/_h5ai/client/js/inc/ext/sort.js b/src/_h5ai/client/js/inc/ext/sort.js index 29ae0238..6e79d1a4 100644 --- a/src/_h5ai/client/js/inc/ext/sort.js +++ b/src/_h5ai/client/js/inc/ext/sort.js @@ -96,7 +96,7 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e return 0; }, - cmpFn = function (getVal, reverse, ignorecase, natural) { + cmpFn = function (getValue, reverse, ignorecase, natural) { return function (item1, item2) { @@ -107,8 +107,8 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e return res; } - val1 = '' + getVal(item1); - val2 = '' + getVal(item2); + val1 = '' + getValue(item1); + val2 = '' + getValue(item2); if (ignorecase) { val1 = val1.toLowerCase(); @@ -163,30 +163,31 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e return; } - var $ascending = $('<img src="' + resource.image('ascending') + '" class="sort ascending" alt="ascending" />'), - $descending = $('<img src="' + resource.image('descending') + '" class="sort descending" alt="descending" />'), - $header = $('#items li.header'); + $('#items li.header') - $header.find('a.label') - .append(template) - .click(function (event) { - sortItems(0, $(this).hasClass('ascending')); - event.preventDefault(); - }); + .find('a.label') + .append(template) + .click(function (event) { + sortItems(0, $(this).hasClass('ascending')); + event.preventDefault(); + }) + .end() - $header.find('a.date') - .prepend(template) - .click(function (event) { - sortItems(1, $(this).hasClass('ascending')); - event.preventDefault(); - }); + .find('a.date') + .prepend(template) + .click(function (event) { + sortItems(1, $(this).hasClass('ascending')); + event.preventDefault(); + }) + .end() - $header.find('a.size') - .prepend(template) - .click(function (event) { - sortItems(2, $(this).hasClass('ascending')); - event.preventDefault(); - }); + .find('a.size') + .prepend(template) + .click(function (event) { + sortItems(2, $(this).hasClass('ascending')); + event.preventDefault(); + }) + .end(); event.sub('location.changed', onContentChanged); event.sub('location.refreshed', onContentChanged); From abd45c1eeb41de2acb089f8fb03c68fe666f2c5b Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 23 Aug 2013 22:56:28 +0200 Subject: [PATCH 30/83] Updates sort extension. --- src/_h5ai/client/js/inc/ext/sort.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_h5ai/client/js/inc/ext/sort.js b/src/_h5ai/client/js/inc/ext/sort.js index 6e79d1a4..565b84d2 100644 --- a/src/_h5ai/client/js/inc/ext/sort.js +++ b/src/_h5ai/client/js/inc/ext/sort.js @@ -128,7 +128,7 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e sortItems = function (column, reverse) { var headers = $('#items li.header a'), - header = $("#items li.header a." + columnClasses[column]), + header = $('#items li.header a.' + columnClasses[column]), fn = cmpFn(columnGetters[column], reverse, settings.ignorecase, settings.natural), From 7969e89bfbe2bddd525f7728fa391bad6c1de096 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 23 Aug 2013 23:15:47 +0200 Subject: [PATCH 31/83] Fixes deletion of multiple files at once. --- src/_h5ai/client/js/inc/ext/delete.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_h5ai/client/js/inc/ext/delete.js b/src/_h5ai/client/js/inc/ext/delete.js index 9fb54cca..afacfa7b 100644 --- a/src/_h5ai/client/js/inc/ext/delete.js +++ b/src/_h5ai/client/js/inc/ext/delete.js @@ -48,7 +48,7 @@ modulejs.define('ext/delete', ['_', '$', 'core/settings', 'core/event', 'core/re selectedHrefsStr = _.map(items, function (item) { return item.absHref; - }).join(':'); + }).join('|:|'); $delete.appendTo('#navbar').show(); } else { $delete.hide(); From 872be4ba1953d3fdd14f06b874eb0593f3606b49 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 23 Aug 2013 23:26:31 +0200 Subject: [PATCH 32/83] Removes unused method. --- src/_h5ai/server/php/inc/util.php | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/src/_h5ai/server/php/inc/util.php b/src/_h5ai/server/php/inc/util.php index 28d04562..e952499b 100644 --- a/src/_h5ai/server/php/inc/util.php +++ b/src/_h5ai/server/php/inc/util.php @@ -77,17 +77,4 @@ function load_commented_json($file) { return json_decode($str, true); } -/* unused -function merge_config($a, $b) { - - $result = array_merge(array(), $a); - - foreach ($b as $key => $value) { - $result[$key] = array_merge($result[$key], $b[$key]); - } - - return $result; -} -*/ - ?> \ No newline at end of file From 7ee7d5eddb740113f7c3728b7b264e5d4660b945 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 23 Aug 2013 23:37:09 +0200 Subject: [PATCH 33/83] Updates readme. --- README.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 8ad8a00e..eb537d46 100644 --- a/README.md +++ b/README.md @@ -56,7 +56,14 @@ It profits from these great projects: ### develop branch -* ... +* updates image and text preview +* adds optional natural sort of items +* fixes file deletion of multiple files +* fixes `setParentFolderLabels = false` +* cleans code +* updates info page `/_h5ai` +* adds type `aiff` to type `audio` +* updates `pl` translation ### v0.23.0 - *2013-07-21* From 30b5266a3f0de7b3841cc4657852d2e8ef5c4b7a Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sat, 24 Aug 2013 00:57:39 +0200 Subject: [PATCH 34/83] Adds dk translation. --- README.md | 3 ++- src/_h5ai/conf/l10n/dk.json | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 src/_h5ai/conf/l10n/dk.json diff --git a/README.md b/README.md index eb537d46..59e8f8bf 100644 --- a/README.md +++ b/README.md @@ -63,7 +63,8 @@ It profits from these great projects: * cleans code * updates info page `/_h5ai` * adds type `aiff` to type `audio` -* updates `pl` translation +* adds `dk` translation by Ronnie Milbo +* updates to `pl` translation by Mark ### v0.23.0 - *2013-07-21* diff --git a/src/_h5ai/conf/l10n/dk.json b/src/_h5ai/conf/l10n/dk.json new file mode 100644 index 00000000..ba2344eb --- /dev/null +++ b/src/_h5ai/conf/l10n/dk.json @@ -0,0 +1,19 @@ +{ + "lang": "dansk", + "details": "detaljer", + "list": "list", + "grid": "grid", + "icons": "ikoner", + "name": "Navn", + "lastModified": "Sidst ændret", + "size": "Størrelse", + "parentDirectory": "Overordnet mappe", + "empty": "tom", + "folders": "mapper", + "files": "filer", + "download": "download", + "noMatch": "ingen match", + "dateFormat": "DD-MM-YYYY HH:mm", + "filter": "filter", + "delete": "slet" +} \ No newline at end of file From 727f161b8a52b2ee9825d6fd3775ae3669ad98f9 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sat, 24 Aug 2013 01:17:01 +0200 Subject: [PATCH 35/83] It's actually the da translation. --- README.md | 2 +- src/_h5ai/conf/l10n/{dk.json => da.json} | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename src/_h5ai/conf/l10n/{dk.json => da.json} (100%) diff --git a/README.md b/README.md index 59e8f8bf..9ad2875b 100644 --- a/README.md +++ b/README.md @@ -63,7 +63,7 @@ It profits from these great projects: * cleans code * updates info page `/_h5ai` * adds type `aiff` to type `audio` -* adds `dk` translation by Ronnie Milbo +* adds `da` translation by Ronnie Milbo * updates to `pl` translation by Mark diff --git a/src/_h5ai/conf/l10n/dk.json b/src/_h5ai/conf/l10n/da.json similarity index 100% rename from src/_h5ai/conf/l10n/dk.json rename to src/_h5ai/conf/l10n/da.json From 4357c0f1f055c7ba9190468e821bd977439e2fc8 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sat, 24 Aug 2013 15:14:25 +0200 Subject: [PATCH 36/83] Makes natural sorting opt-in. --- src/_h5ai/client/js/inc/ext/sort.js | 2 +- src/_h5ai/conf/options.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/_h5ai/client/js/inc/ext/sort.js b/src/_h5ai/client/js/inc/ext/sort.js index 565b84d2..fdfc2016 100644 --- a/src/_h5ai/client/js/inc/ext/sort.js +++ b/src/_h5ai/client/js/inc/ext/sort.js @@ -6,7 +6,7 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e column: 0, reverse: false, ignorecase: true, - natural: true + natural: false }, allsettings.sort), storekey = 'sort.order', diff --git a/src/_h5ai/conf/options.json b/src/_h5ai/conf/options.json index a5caf6cb..9eb71d72 100644 --- a/src/_h5ai/conf/options.json +++ b/src/_h5ai/conf/options.json @@ -283,7 +283,7 @@ Options "column": 0, "reverse": false, "ignorecase": true, - "natural": true + "natural": false }, /* From ad7c8d9bd8dec2b8bfb49289ad40625170c1bb0b Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sat, 24 Aug 2013 15:38:07 +0200 Subject: [PATCH 37/83] Updates readme. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 9ad2875b..ad0d277b 100644 --- a/README.md +++ b/README.md @@ -62,7 +62,7 @@ It profits from these great projects: * fixes `setParentFolderLabels = false` * cleans code * updates info page `/_h5ai` -* adds type `aiff` to type `audio` +* adds `aiff` to `audio` types * adds `da` translation by Ronnie Milbo * updates to `pl` translation by Mark From a568308250eef7b8086b740b8eabf02c29579d95 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sat, 24 Aug 2013 19:38:28 +0200 Subject: [PATCH 38/83] Fixes issue #202. --- src/_h5ai/server/php/inc/Archive.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_h5ai/server/php/inc/Archive.php b/src/_h5ai/server/php/inc/Archive.php index 80482eb3..16829753 100644 --- a/src/_h5ai/server/php/inc/Archive.php +++ b/src/_h5ai/server/php/inc/Archive.php @@ -153,7 +153,7 @@ class Archive { if ($code == App::$MAGIC_SEQUENCE && !$this->app->is_ignored($n)) { $real_file = $this->app->get_abs_path($href); - $archived_file = preg_replace("!^" . normalize_path($this->app->get_abs_path(), true) . "!", "", $real_file); + $archived_file = preg_replace("!^" . preg_quote(normalize_path($this->app->get_abs_path(), true)) . "!", "", $real_file); if (is_dir($real_file)) { $this->add_dir($real_file, $archived_file); From 4cf5b13d0630e4111c1ea13391a0ebcade2c068e Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sat, 24 Aug 2013 22:31:13 +0200 Subject: [PATCH 39/83] Adds select SVG image. --- src/_h5ai/client/images/select.svg | 54 ++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 src/_h5ai/client/images/select.svg diff --git a/src/_h5ai/client/images/select.svg b/src/_h5ai/client/images/select.svg new file mode 100644 index 00000000..84a8c603 --- /dev/null +++ b/src/_h5ai/client/images/select.svg @@ -0,0 +1,54 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + version="1.1" + height="16" + width="16" + id="svg2" + inkscape:version="0.48.4 r9939" + sodipodi:docname="select.svg"> + <metadata + id="metadata10"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <defs + id="defs8" /> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="1871" + inkscape:window-height="1056" + id="namedview6" + showgrid="false" + inkscape:zoom="20.85965" + inkscape:cx="16.301202" + inkscape:cy="5.1092914" + inkscape:window-x="49" + inkscape:window-y="24" + inkscape:window-maximized="1" + inkscape:current-layer="svg2" /> + <path + d="M 11.4375,3.40625 6.5000001,8.34375 4.5625,6.40625 l -2.125,2.125 3.0000001,3 1.0625,1.0625 1.0625,-1.0625 5.9999999,-6 -2.125,-2.125 z" + style="fill:#555555" + id="path4" + inkscape:connector-curvature="0" /> +</svg> From 1f9365ae97b9f28a3cdc38c6f556268e3b7acad8 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sat, 24 Aug 2013 23:22:34 +0200 Subject: [PATCH 40/83] Escapes shell arguments. See issue #197. --- src/_h5ai/server/php/inc/Archive.php | 6 +++--- src/_h5ai/server/php/inc/Item.php | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/_h5ai/server/php/inc/Archive.php b/src/_h5ai/server/php/inc/Archive.php index 16829753..d441884b 100644 --- a/src/_h5ai/server/php/inc/Archive.php +++ b/src/_h5ai/server/php/inc/Archive.php @@ -44,9 +44,9 @@ class Archive { private function shell_cmd($cmd) { - $cmd = str_replace("[ROOTDIR]", "\"" . $this->app->get_abs_path() . "\"", $cmd); - $cmd = str_replace("[DIRS]", count($this->dirs) ? "\"" . implode("\" \"", array_values($this->dirs)) . "\"" : "", $cmd); - $cmd = str_replace("[FILES]", count($this->files) ? "\"" . implode("\" \"", array_values($this->files)) . "\"" : "", $cmd); + $cmd = str_replace("[ROOTDIR]", escapeshellarg($this->app->get_abs_path()), $cmd); + $cmd = str_replace("[DIRS]", count($this->dirs) ? implode(" ", array_map("escapeshellarg", $this->dirs)) : "", $cmd); + $cmd = str_replace("[FILES]", count($this->files) ? implode(" ", array_map("escapeshellarg", $this->files)) : "", $cmd); try { passthru($cmd); } catch (Exeption $err) { diff --git a/src/_h5ai/server/php/inc/Item.php b/src/_h5ai/server/php/inc/Item.php index 1a5c6135..2da5bffa 100644 --- a/src/_h5ai/server/php/inc/Item.php +++ b/src/_h5ai/server/php/inc/Item.php @@ -2,7 +2,7 @@ class Item { - private static $FOLDER_SIZE_CMD = "du -sk \"[DIR]\""; + private static $FOLDER_SIZE_CMD = "du -sk [DIR]"; public static function cmp($item1, $item2) { @@ -57,7 +57,7 @@ class Item { $this->size = null; $options = $app->get_options(); if ($options["foldersize"]["enabled"]) { - $cmd = str_replace("[DIR]", $this->abs_path, Item::$FOLDER_SIZE_CMD); + $cmd = str_replace("[DIR]", escapeshellarg($this->abs_path), Item::$FOLDER_SIZE_CMD); $this->size = intval(preg_replace("/\s.*$/", "", `$cmd`), 10) * 1024; } } else { From e2f3e420f179405075ed49a1b6ed4baa72125173 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sun, 25 Aug 2013 02:25:38 +0200 Subject: [PATCH 41/83] Fixes thumb position. --- src/_h5ai/client/css/inc/view.less | 1 + 1 file changed, 1 insertion(+) diff --git a/src/_h5ai/client/css/inc/view.less b/src/_h5ai/client/css/inc/view.less index 14103a72..f835abbc 100644 --- a/src/_h5ai/client/css/inc/view.less +++ b/src/_h5ai/client/css/inc/view.less @@ -128,6 +128,7 @@ &.thumb { box-shadow: 0 0 0 1px #ddd; + vertical-align: top; } } From 4a35f2722472b7b37ce3688ae5e4674bc2bc2432 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sun, 25 Aug 2013 02:26:01 +0200 Subject: [PATCH 42/83] More escapings. --- src/_h5ai/server/php/inc/Thumb.php | 36 +++++++++++++++--------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/src/_h5ai/server/php/inc/Thumb.php b/src/_h5ai/server/php/inc/Thumb.php index 4365040d..a98423d0 100644 --- a/src/_h5ai/server/php/inc/Thumb.php +++ b/src/_h5ai/server/php/inc/Thumb.php @@ -2,8 +2,8 @@ class Thumb { - private static $FFMPEG_CMD = "ffmpeg -i \"[SOURCE]\" -an -ss 3 -vframes 1 \"[TARGET]\""; - private static $CONVERT_CMD = "convert -strip \"[SOURCE][0]\" \"[TARGET]\""; + private static $FFMPEG_CMD = "ffmpeg -i [SOURCE] -an -ss 3 -vframes 1 [TARGET]"; + private static $CONVERT_CMD = "convert -strip [SOURCE][0] [TARGET]"; public static final function is_supported() { @@ -84,8 +84,8 @@ class Thumb { $capture_abs_path = $this->app->get_cache_abs_path() . "/capture-" . sha1($source_abs_path) . ".jpg"; if (!file_exists($capture_abs_path) || filemtime($source_abs_path) >= filemtime($capture_abs_path)) { - $cmd = str_replace("[SOURCE]", $source_abs_path, $cmd); - $cmd = str_replace("[TARGET]", $capture_abs_path, $cmd); + $cmd = str_replace("[SOURCE]", escapeshellarg($source_abs_path), $cmd); + $cmd = str_replace("[TARGET]", escapeshellarg($capture_abs_path), $cmd); `$cmd`; } @@ -97,14 +97,14 @@ class Thumb { class Magic { - private static $GET_SIZE_CMD = "identify -format \"%w %h\" \"[SOURCE]\""; - private static $RESIZE_CMD = "convert -strip -transparent-color \"#ffffff\" -resize [WIDTH]x[HEIGHT] -quality 80 \"[SOURCE]\" \"[TARGET]\""; - private static $SQUARE_CMD = "convert -strip -transparent-color \"#ffffff\" -crop [CWIDTH]x[CWIDTH]+[CLEFT]+[CTOP] -resize [WIDTH]x[WIDTH] -quality 80 \"[SOURCE]\" \"[TARGET]\""; + private static $GET_SIZE_CMD = "identify -format \"%w %h\" [SOURCE]"; + private static $RESIZE_CMD = "convert -strip -transparent-color \"#ffffff\" -resize [WIDTH]x[HEIGHT] -quality 80 [SOURCE] [TARGET]"; + private static $SQUARE_CMD = "convert -strip -transparent-color \"#ffffff\" -crop [CWIDTH]x[CWIDTH]+[CLEFT]+[CTOP] -resize [WIDTH]x[WIDTH] -quality 80 [SOURCE] [TARGET]"; private static final function img_size($source) { - $cmd = str_replace("[SOURCE]", str_replace("\"", "\\\"", $source), Magic::$GET_SIZE_CMD); + $cmd = str_replace("[SOURCE]", escapeshellarg($source), Magic::$GET_SIZE_CMD); $size = explode(" ", `$cmd`); $size[0] = intval($size[0]); $size[1] = intval($size[1]); @@ -113,10 +113,10 @@ class Magic { private static final function rational($source, $target, $width, $height) { - $cmd = str_replace("[SOURCE]", str_replace("\"", "\\\"", $source), Magic::$RESIZE_CMD); - $cmd = str_replace("[TARGET]", str_replace("\"", "\\\"", $target), $cmd); - $cmd = str_replace("[WIDTH]", $width, $cmd); - $cmd = str_replace("[HEIGHT]", $height, $cmd); + $cmd = str_replace("[SOURCE]", escapeshellarg($source), Magic::$RESIZE_CMD); + $cmd = str_replace("[TARGET]", escapeshellarg($target), $cmd); + $cmd = str_replace("[WIDTH]", escapeshellarg($width), $cmd); + $cmd = str_replace("[HEIGHT]", escapeshellarg($height), $cmd); `$cmd`; } @@ -130,12 +130,12 @@ class Magic { $cleft = ($w - $cwidth) / 2; $ctop = ($h - $cwidth) / 2; - $cmd = str_replace("[SOURCE]", str_replace("\"", "\\\"", $source), Magic::$SQUARE_CMD); - $cmd = str_replace("[TARGET]", str_replace("\"", "\\\"", $target), $cmd); - $cmd = str_replace("[CWIDTH]", $cwidth, $cmd); - $cmd = str_replace("[CLEFT]", $cleft, $cmd); - $cmd = str_replace("[CTOP]", $ctop, $cmd); - $cmd = str_replace("[WIDTH]", $width, $cmd); + $cmd = str_replace("[SOURCE]", escapeshellarg($source), Magic::$SQUARE_CMD); + $cmd = str_replace("[TARGET]", escapeshellarg($target), $cmd); + $cmd = str_replace("[CWIDTH]", escapeshellarg($cwidth), $cmd); + $cmd = str_replace("[CLEFT]", escapeshellarg($cleft), $cmd); + $cmd = str_replace("[CTOP]", escapeshellarg($ctop), $cmd); + $cmd = str_replace("[WIDTH]", escapeshellarg($width), $cmd); `$cmd`; } From ef969b582def427d1105a5deba68823ff9475342 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sun, 25 Aug 2013 02:38:47 +0200 Subject: [PATCH 43/83] Fixes thumb position. --- src/_h5ai/client/css/inc/view.less | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_h5ai/client/css/inc/view.less b/src/_h5ai/client/css/inc/view.less index f835abbc..68710d16 100644 --- a/src/_h5ai/client/css/inc/view.less +++ b/src/_h5ai/client/css/inc/view.less @@ -128,7 +128,6 @@ &.thumb { box-shadow: 0 0 0 1px #ddd; - vertical-align: top; } } @@ -145,6 +144,7 @@ img { max-width: 100px; max-height: 48px; + vertical-align: top; } } } From 3bbfc85877d9e629c879d5fe4722508f10cffe8f Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sun, 25 Aug 2013 02:48:24 +0200 Subject: [PATCH 44/83] Updates readme. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index ad0d277b..59c791d5 100644 --- a/README.md +++ b/README.md @@ -60,6 +60,7 @@ It profits from these great projects: * adds optional natural sort of items * fixes file deletion of multiple files * fixes `setParentFolderLabels = false` +* fixes shell-arg and RegExp escape issues * cleans code * updates info page `/_h5ai` * adds `aiff` to `audio` types From a6e79b537b5c2aed7ea632cbb2e99f83b84a2fde Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sun, 25 Aug 2013 14:36:15 +0200 Subject: [PATCH 45/83] Changes dropbox area to whole document. --- src/_h5ai/client/css/inc/dropbox.less | 5 +++++ src/_h5ai/client/js/inc/ext/dropbox.js | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/_h5ai/client/css/inc/dropbox.less b/src/_h5ai/client/css/inc/dropbox.less index ed8dfefa..0a534cc5 100644 --- a/src/_h5ai/client/css/inc/dropbox.less +++ b/src/_h5ai/client/css/inc/dropbox.less @@ -1,4 +1,9 @@ +html { + min-height: 100%; +} + + #content { border: 1px dashed #fff; border-radius: 8px; diff --git a/src/_h5ai/client/js/inc/ext/dropbox.js b/src/_h5ai/client/js/inc/ext/dropbox.js index 5512cb34..d80f1ad9 100644 --- a/src/_h5ai/client/js/inc/ext/dropbox.js +++ b/src/_h5ai/client/js/inc/ext/dropbox.js @@ -48,7 +48,8 @@ modulejs.define('ext/dropbox', ['_', '$', 'core/settings', 'core/location', 'cor event.sub('ready', function () { - $content.filedrop({ + // $content.filedrop({ + $('html').filedrop({ paramname: 'userfile', From 1f2ad2ebff07db6c4e8069329958a8dcbf5a1d82 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sun, 25 Aug 2013 20:17:01 +0200 Subject: [PATCH 46/83] Updates styles. --- src/_h5ai/client/css/inc/dropbox.less | 5 ----- src/_h5ai/client/css/inc/general.less | 22 ++++++++++++---------- 2 files changed, 12 insertions(+), 15 deletions(-) diff --git a/src/_h5ai/client/css/inc/dropbox.less b/src/_h5ai/client/css/inc/dropbox.less index 0a534cc5..ed8dfefa 100644 --- a/src/_h5ai/client/css/inc/dropbox.less +++ b/src/_h5ai/client/css/inc/dropbox.less @@ -1,9 +1,4 @@ -html { - min-height: 100%; -} - - #content { border: 1px dashed #fff; border-radius: 8px; diff --git a/src/_h5ai/client/css/inc/general.less b/src/_h5ai/client/css/inc/general.less index aa80c092..92cdd2ce 100644 --- a/src/_h5ai/client/css/inc/general.less +++ b/src/_h5ai/client/css/inc/general.less @@ -20,19 +20,28 @@ @col-sb-thumb: rgba(0,0,0,0.15); @col-sb-thumb-active: rgba(0,0,0,0.25); - @border-widget: 1px solid @col-border; @border-widget-sep: 1px solid @col-widget-sep; - @font-family: Ubuntu, sans-serif; @font-family-mono: "Ubuntu Mono", monospace; -html { overflow-y: auto; } ::-moz-selection { background: #68A9FF; color: #fff; text-shadow: none; } ::selection { background: #68A9FF; color: #fff; text-shadow: none; } +html { + min-height: 100%; + overflow: auto; + + &.js .noJsMsg { + display: none; + } + &.browser .noBrowserMsg { + display: none; + } +} + body { font-family: @font-family; font-size: 13px; @@ -40,10 +49,3 @@ body { background-color: @col-back; margin: 30px; } - -html.js .noJsMsg { - display: none; -} -html.browser .noBrowserMsg { - display: none; -} From aa41483af5aaa6012e727f1ac1ef12dfbe81565b Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sun, 25 Aug 2013 20:24:57 +0200 Subject: [PATCH 47/83] Updates styles. --- src/_h5ai/client/css/inc/general.less | 12 ++++++++++++ src/_h5ai/client/css/lib/mixins.less | 12 ------------ src/_h5ai/client/css/styles.less | 2 -- 3 files changed, 12 insertions(+), 14 deletions(-) delete mode 100644 src/_h5ai/client/css/lib/mixins.less diff --git a/src/_h5ai/client/css/inc/general.less b/src/_h5ai/client/css/inc/general.less index 92cdd2ce..88efdf55 100644 --- a/src/_h5ai/client/css/inc/general.less +++ b/src/_h5ai/client/css/inc/general.less @@ -30,6 +30,18 @@ ::-moz-selection { background: #68A9FF; color: #fff; text-shadow: none; } ::selection { background: #68A9FF; color: #fff; text-shadow: none; } +.transition (@transition) { + -webkit-transition: @transition; + transition: @transition; +} + +.transform (@transform) { + -webkit-transform: @transform; + -ms-transform: @transform; + transform: @transform; + zoom: 1; +} + html { min-height: 100%; overflow: auto; diff --git a/src/_h5ai/client/css/lib/mixins.less b/src/_h5ai/client/css/lib/mixins.less deleted file mode 100644 index 82978299..00000000 --- a/src/_h5ai/client/css/lib/mixins.less +++ /dev/null @@ -1,12 +0,0 @@ - -.transition (@transition) { - -webkit-transition: @transition; - transition: @transition; -} - -.transform (@transform) { - -webkit-transform: @transform; - -ms-transform: @transform; - transform: @transform; - zoom: 1; -} diff --git a/src/_h5ai/client/css/styles.less b/src/_h5ai/client/css/styles.less index 2eeb4cb2..057d3dc3 100644 --- a/src/_h5ai/client/css/styles.less +++ b/src/_h5ai/client/css/styles.less @@ -2,8 +2,6 @@ @import "lib/h5bp-normalize"; @import "lib/h5bp-main-header"; -@import "lib/mixins"; - @import "inc/general"; @import "inc/topbar"; @import "inc/bottombar"; From 39cb681bf9366fbd3465b1494f23d33c263df302 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sun, 25 Aug 2013 23:03:42 +0200 Subject: [PATCH 48/83] Updates jQuery.filedrop to 0.1.0~0a38cbc. --- .../client/js/lib/jquery.filedrop-0.1.0.js | 424 ------------- .../js/lib/jquery.filedrop-0.1.0~0a38cbc.js | 555 ++++++++++++++++++ 2 files changed, 555 insertions(+), 424 deletions(-) delete mode 100755 src/_h5ai/client/js/lib/jquery.filedrop-0.1.0.js create mode 100644 src/_h5ai/client/js/lib/jquery.filedrop-0.1.0~0a38cbc.js diff --git a/src/_h5ai/client/js/lib/jquery.filedrop-0.1.0.js b/src/_h5ai/client/js/lib/jquery.filedrop-0.1.0.js deleted file mode 100755 index 2d87013b..00000000 --- a/src/_h5ai/client/js/lib/jquery.filedrop-0.1.0.js +++ /dev/null @@ -1,424 +0,0 @@ -/* - * Default text - jQuery plugin for html5 dragging files from desktop to browser - * - * Author: Weixi Yen - * - * Email: [Firstname][Lastname]@gmail.com - * - * Copyright (c) 2010 Resopollution - * - * Licensed under the MIT license: - * http://www.opensource.org/licenses/mit-license.php - * - * Project home: - * http://www.github.com/weixiyen/jquery-filedrop - * - * Version: 0.1.0 - * - * Features: - * Allows sending of extra parameters with file. - * Works with Firefox 3.6+ - * Future-compliant with HTML5 spec (will work with Webkit browsers and IE9) - * Usage: - * See README at project homepage - * - */ -;(function($) { - - jQuery.event.props.push("dataTransfer"); - - var default_opts = { - fallback_id: '', - url: '', - refresh: 1000, - paramname: 'userfile', - allowedfiletypes:[], - maxfiles: 25, // Ignored if queuefiles is set > 0 - maxfilesize: 1, // MB file size limit - queuefiles: 0, // Max files before queueing (for large volume uploads) - queuewait: 200, // Queue wait time if full - data: {}, - headers: {}, - drop: empty, - dragEnter: empty, - dragOver: empty, - dragLeave: empty, - docEnter: empty, - docOver: empty, - docLeave: empty, - beforeEach: empty, - afterAll: empty, - rename: empty, - error: function(err, file, i) { - alert(err); - }, - uploadStarted: empty, - uploadFinished: empty, - progressUpdated: empty, - speedUpdated: empty - }, - errors = ["BrowserNotSupported", "TooManyFiles", "FileTooLarge", "FileTypeNotAllowed"], - doc_leave_timer, stop_loop = false, - files_count = 0, - files; - - $.fn.filedrop = function(options) { - var opts = $.extend({}, default_opts, options); - - this.on('drop', drop).on('dragenter', dragEnter).on('dragover', dragOver).on('dragleave', dragLeave); - $(document).on('drop', docDrop).on('dragenter', docEnter).on('dragover', docOver).on('dragleave', docLeave); - - $('#' + opts.fallback_id).change(function(e) { - opts.drop(e); - files = e.target.files; - files_count = files.length; - upload(); - }); - - function drop(e) { - opts.drop(e); - files = e.dataTransfer.files; - if (files === null || files === undefined) { - opts.error(errors[0]); - return false; - } - files_count = files.length; - upload(); - e.preventDefault(); - return false; - } - - function getBuilder(filename, filedata, mime, boundary) { - var dashdash = '--', - crlf = '\r\n', - builder = ''; - - if (opts.data) { - var params = $.param(opts.data).split(/&/); - - $.each(params, function() { - var pair = this.split(/=/, 2); - var name = decodeURIComponent(pair[0]); - var val = decodeURIComponent(pair[1]); - - builder += dashdash; - builder += boundary; - builder += crlf; - builder += 'Content-Disposition: form-data; name="' + name + '"'; - builder += crlf; - builder += crlf; - builder += val; - builder += crlf; - }); - } - - builder += dashdash; - builder += boundary; - builder += crlf; - builder += 'Content-Disposition: form-data; name="' + opts.paramname + '"'; - builder += '; filename="' + filename + '"'; - builder += crlf; - - builder += 'Content-Type: ' + mime; - builder += crlf; - builder += crlf; - - builder += filedata; - builder += crlf; - - builder += dashdash; - builder += boundary; - builder += dashdash; - builder += crlf; - return builder; - } - - function progress(e) { - if (e.lengthComputable) { - var percentage = Math.round((e.loaded * 100) / e.total); - if (this.currentProgress != percentage) { - - this.currentProgress = percentage; - opts.progressUpdated(this.index, this.file, this.currentProgress); - - var elapsed = new Date().getTime(); - var diffTime = elapsed - this.currentStart; - if (diffTime >= opts.refresh) { - var diffData = e.loaded - this.startData; - var speed = diffData / diffTime; // KB per second - opts.speedUpdated(this.index, this.file, speed); - this.startData = e.loaded; - this.currentStart = elapsed; - } - } - } - } - - // Respond to an upload - function upload() { - - stop_loop = false; - - if (!files) { - opts.error(errors[0]); - return false; - } - if(opts.allowedfiletypes.push && opts.allowedfiletypes.length){ - for(var fileIndex = files.length;fileIndex--;){ - if(!files[fileIndex].type || $.inArray(files[fileIndex].type, opts.allowedfiletypes) < 0){ - opts.error(errors[3]); - return false; - } - } - } - - var filesDone = 0, - filesRejected = 0; - - if (files_count > opts.maxfiles && opts.queuefiles === 0) { - opts.error(errors[1]); - return false; - } - - // Define queues to manage upload process - var workQueue = []; - var processingQueue = []; - var doneQueue = []; - - // Add everything to the workQueue - for (var i = 0; i < files_count; i++) { - workQueue.push(i); - } - - // Helper function to enable pause of processing to wait - // for in process queue to complete - var pause = function(timeout) { - setTimeout(process, timeout); - return; - } - - // Process an upload, recursive - var process = function() { - - var fileIndex; - - if (stop_loop) return false; - - // Check to see if are in queue mode - if (opts.queuefiles > 0 && processingQueue.length >= opts.queuefiles) { - - return pause(opts.queuewait); - - } else { - - // Take first thing off work queue - fileIndex = workQueue[0]; - workQueue.splice(0, 1); - - // Add to processing queue - processingQueue.push(fileIndex); - - } - - try { - if (beforeEach(files[fileIndex]) != false) { - if (fileIndex === files_count) return; - var reader = new FileReader(), - max_file_size = 1048576 * opts.maxfilesize; - - reader.index = fileIndex; - if (files[fileIndex].size > max_file_size) { - opts.error(errors[2], files[fileIndex], fileIndex); - // Remove from queue - processingQueue.forEach(function(value, key) { - if (value === fileIndex) processingQueue.splice(key, 1); - }); - filesRejected++; - return true; - } - reader.onloadend = send; - reader.readAsBinaryString(files[fileIndex]); - - } else { - filesRejected++; - } - } catch (err) { - // Remove from queue - processingQueue.forEach(function(value, key) { - if (value === fileIndex) processingQueue.splice(key, 1); - }); - opts.error(errors[0]); - return false; - } - - // If we still have work to do, - if (workQueue.length > 0) { - process(); - } - - }; - - var send = function(e) { - - var fileIndex = ((typeof(e.srcElement) === "undefined") ? e.target : e.srcElement).index - - // Sometimes the index is not attached to the - // event object. Find it by size. Hack for sure. - if (e.target.index == undefined) { - e.target.index = getIndexBySize(e.total); - } - - var xhr = new XMLHttpRequest(), - upload = xhr.upload, - file = files[e.target.index], - index = e.target.index, - start_time = new Date().getTime(), - boundary = '------multipartformboundary' + (new Date).getTime(), - builder; - - newName = rename(file.name); - mime = file.type - if (typeof newName === "string") { - builder = getBuilder(newName, e.target.result, mime, boundary); - } else { - builder = getBuilder(file.name, e.target.result, mime, boundary); - } - - upload.index = index; - upload.file = file; - upload.downloadStartTime = start_time; - upload.currentStart = start_time; - upload.currentProgress = 0; - upload.startData = 0; - upload.addEventListener("progress", progress, false); - - xhr.open("POST", opts.url, true); - xhr.setRequestHeader('content-type', 'multipart/form-data; boundary=' + boundary); - - // Add headers - $.each(opts.headers, function(k, v) { - xhr.setRequestHeader(k, v); - }); - - xhr.sendAsBinary(builder); - - opts.uploadStarted(index, file, files_count); - - xhr.onload = function() { - if (xhr.responseText) { - var now = new Date().getTime(), - timeDiff = now - start_time, - result = opts.uploadFinished(index, file, jQuery.parseJSON(xhr.responseText), timeDiff, xhr); - filesDone++; - - // Remove from processing queue - processingQueue.forEach(function(value, key) { - if (value === fileIndex) processingQueue.splice(key, 1); - }); - - // Add to donequeue - doneQueue.push(fileIndex); - - if (filesDone == files_count - filesRejected) { - afterAll(); - } - if (result === false) stop_loop = true; - } - - //Pass any errors to the error option - if(xhr.status != 200){ - opts.error(xhr.statusText); - } - - }; - - } - - // Initiate the processing loop - process(); - - } - - function getIndexBySize(size) { - for (var i = 0; i < files_count; i++) { - if (files[i].size == size) { - return i; - } - } - - return undefined; - } - - function rename(name) { - return opts.rename(name); - } - - function beforeEach(file) { - return opts.beforeEach(file); - } - - function afterAll() { - return opts.afterAll(); - } - - function dragEnter(e) { - clearTimeout(doc_leave_timer); - e.preventDefault(); - opts.dragEnter(e); - } - - function dragOver(e) { - clearTimeout(doc_leave_timer); - e.preventDefault(); - opts.docOver(e); - opts.dragOver(e); - } - - function dragLeave(e) { - clearTimeout(doc_leave_timer); - opts.dragLeave(e); - e.stopPropagation(); - } - - function docDrop(e) { - e.preventDefault(); - opts.docLeave(e); - return false; - } - - function docEnter(e) { - clearTimeout(doc_leave_timer); - e.preventDefault(); - opts.docEnter(e); - return false; - } - - function docOver(e) { - clearTimeout(doc_leave_timer); - e.preventDefault(); - opts.docOver(e); - return false; - } - - function docLeave(e) { - doc_leave_timer = setTimeout(function() { - opts.docLeave(e); - }, 200); - } - return this; - }; - function empty() {} - - try { - if (XMLHttpRequest.prototype.sendAsBinary) return; - XMLHttpRequest.prototype.sendAsBinary = function(datastr) { - function byteValue(x) { - return x.charCodeAt(0) & 0xff; - } - var ords = Array.prototype.map.call(datastr, byteValue); - var ui8a = new Uint8Array(ords); - this.send(ui8a.buffer); - } - } catch (e) {} - -})(jQuery); diff --git a/src/_h5ai/client/js/lib/jquery.filedrop-0.1.0~0a38cbc.js b/src/_h5ai/client/js/lib/jquery.filedrop-0.1.0~0a38cbc.js new file mode 100644 index 00000000..f1440142 --- /dev/null +++ b/src/_h5ai/client/js/lib/jquery.filedrop-0.1.0~0a38cbc.js @@ -0,0 +1,555 @@ +/*global jQuery:false, alert:false */ + +/* + * Default text - jQuery plugin for html5 dragging files from desktop to browser + * + * Author: Weixi Yen + * + * Email: [Firstname][Lastname]@gmail.com + * + * Copyright (c) 2010 Resopollution + * + * Licensed under the MIT license: + * http://www.opensource.org/licenses/mit-license.php + * + * Project home: + * http://www.github.com/weixiyen/jquery-filedrop + * + * Version: 0.1.0 + * + * Features: + * Allows sending of extra parameters with file. + * Works with Firefox 3.6+ + * Future-compliant with HTML5 spec (will work with Webkit browsers and IE9) + * Usage: + * See README at project homepage + * + */ +;(function($) { + + jQuery.event.props.push("dataTransfer"); + + var default_opts = { + fallback_id: '', + url: '', + refresh: 1000, + paramname: 'userfile', + requestType: 'POST', // just in case you want to use another HTTP verb + allowedfileextensions:[], + allowedfiletypes:[], + maxfiles: 25, // Ignored if queuefiles is set > 0 + maxfilesize: 1, // MB file size limit + queuefiles: 0, // Max files before queueing (for large volume uploads) + queuewait: 200, // Queue wait time if full + data: {}, + headers: {}, + drop: empty, + dragStart: empty, + dragEnter: empty, + dragOver: empty, + dragLeave: empty, + docEnter: empty, + docOver: empty, + docLeave: empty, + beforeEach: empty, + afterAll: empty, + rename: empty, + error: function(err, file, i, status) { + alert(err); + }, + uploadStarted: empty, + uploadFinished: empty, + progressUpdated: empty, + globalProgressUpdated: empty, + speedUpdated: empty + }, + errors = ["BrowserNotSupported", "TooManyFiles", "FileTooLarge", "FileTypeNotAllowed", "NotFound", "NotReadable", "AbortError", "ReadError", "FileExtensionNotAllowed"]; + + $.fn.filedrop = function(options) { + var opts = $.extend({}, default_opts, options), + global_progress = [], + doc_leave_timer, stop_loop = false, + files_count = 0, + files; + + $('#' + opts.fallback_id).css({ + display: 'none', + width: 0, + height: 0 + }); + + this.on('drop', drop).on('dragstart', opts.dragStart).on('dragenter', dragEnter).on('dragover', dragOver).on('dragleave', dragLeave); + $(document).on('drop', docDrop).on('dragenter', docEnter).on('dragover', docOver).on('dragleave', docLeave); + + this.on('click', function(e){ + $('#' + opts.fallback_id).trigger(e); + }); + + $('#' + opts.fallback_id).change(function(e) { + opts.drop(e); + files = e.target.files; + files_count = files.length; + upload(); + }); + + function drop(e) { + if( opts.drop.call(this, e) === false ) return false; + if(!e.dataTransfer) + return; + files = e.dataTransfer.files; + if (files === null || files === undefined || files.length === 0) { + opts.error(errors[0]); + return false; + } + files_count = files.length; + upload(); + e.preventDefault(); + return false; + } + + function getBuilder(filename, filedata, mime, boundary) { + var dashdash = '--', + crlf = '\r\n', + builder = '', + paramname = opts.paramname; + + if (opts.data) { + var params = $.param(opts.data).replace(/\+/g, '%20').split(/&/); + + $.each(params, function() { + var pair = this.split("=", 2), + name = decodeURIComponent(pair[0]), + val = decodeURIComponent(pair[1]); + + if (pair.length !== 2) { + return; + } + + builder += dashdash; + builder += boundary; + builder += crlf; + builder += 'Content-Disposition: form-data; name="' + name + '"'; + builder += crlf; + builder += crlf; + builder += val; + builder += crlf; + }); + } + + if (jQuery.isFunction(paramname)){ + paramname = paramname(filename); + } + + builder += dashdash; + builder += boundary; + builder += crlf; + builder += 'Content-Disposition: form-data; name="' + (paramname||"") + '"'; + builder += '; filename="' + filename + '"'; + builder += crlf; + + builder += 'Content-Type: ' + mime; + builder += crlf; + builder += crlf; + + builder += filedata; + builder += crlf; + + builder += dashdash; + builder += boundary; + builder += dashdash; + builder += crlf; + return builder; + } + + function progress(e) { + if (e.lengthComputable) { + var percentage = Math.round((e.loaded * 100) / e.total); + if (this.currentProgress !== percentage) { + + this.currentProgress = percentage; + opts.progressUpdated(this.index, this.file, this.currentProgress); + + global_progress[this.global_progress_index] = this.currentProgress; + globalProgress(); + + var elapsed = new Date().getTime(); + var diffTime = elapsed - this.currentStart; + if (diffTime >= opts.refresh) { + var diffData = e.loaded - this.startData; + var speed = diffData / diffTime; // KB per second + opts.speedUpdated(this.index, this.file, speed); + this.startData = e.loaded; + this.currentStart = elapsed; + } + } + } + } + + function globalProgress() { + if (global_progress.length === 0) { + return; + } + + var total = 0, index; + for (index in global_progress) { + if(global_progress.hasOwnProperty(index)) { + total = total + global_progress[index]; + } + } + + opts.globalProgressUpdated(Math.round(total / global_progress.length)); + } + + // Respond to an upload + function upload() { + stop_loop = false; + + if (!files) { + opts.error(errors[0]); + return false; + } + + if (opts.allowedfiletypes.push && opts.allowedfiletypes.length) { + for(var fileIndex = files.length;fileIndex--;) { + if(!files[fileIndex].type || $.inArray(files[fileIndex].type, opts.allowedfiletypes) < 0) { + opts.error(errors[3], files[fileIndex]); + return false; + } + } + } + + if (opts.allowedfileextensions.push && opts.allowedfileextensions.length) { + for(var fileIndex = files.length;fileIndex--;) { + var allowedextension = false; + for (i=0;i<opts.allowedfileextensions.length;i++){ + if (files[fileIndex].name.substr(files[fileIndex].name.length-opts.allowedfileextensions[i].length) == opts.allowedfileextensions[i]) { + allowedextension = true; + } + } + if (!allowedextension){ + opts.error(errors[8], files[fileIndex]); + return false; + } + } + } + + var filesDone = 0, + filesRejected = 0; + + if (files_count > opts.maxfiles && opts.queuefiles === 0) { + opts.error(errors[1]); + return false; + } + + // Define queues to manage upload process + var workQueue = []; + var processingQueue = []; + var doneQueue = []; + + // Add everything to the workQueue + for (var i = 0; i < files_count; i++) { + workQueue.push(i); + } + + // Helper function to enable pause of processing to wait + // for in process queue to complete + var pause = function(timeout) { + setTimeout(process, timeout); + return; + }; + + // Process an upload, recursive + var process = function() { + + var fileIndex; + + if (stop_loop) { + return false; + } + + // Check to see if are in queue mode + if (opts.queuefiles > 0 && processingQueue.length >= opts.queuefiles) { + return pause(opts.queuewait); + } else { + // Take first thing off work queue + fileIndex = workQueue[0]; + workQueue.splice(0, 1); + + // Add to processing queue + processingQueue.push(fileIndex); + } + + try { + if (beforeEach(files[fileIndex]) !== false) { + if (fileIndex === files_count) { + return; + } + var reader = new FileReader(), + max_file_size = 1048576 * opts.maxfilesize; + + reader.index = fileIndex; + if (files[fileIndex].size > max_file_size) { + opts.error(errors[2], files[fileIndex], fileIndex); + // Remove from queue + processingQueue.forEach(function(value, key) { + if (value === fileIndex) { + processingQueue.splice(key, 1); + } + }); + filesRejected++; + return true; + } + + reader.onerror = function(e) { + switch(e.target.error.code) { + case e.target.error.NOT_FOUND_ERR: + opts.error(errors[4]); + return false; + case e.target.error.NOT_READABLE_ERR: + opts.error(errors[5]); + return false; + case e.target.error.ABORT_ERR: + opts.error(errors[6]); + return false; + default: + opts.error(errors[7]); + return false; + }; + }; + + reader.onloadend = !opts.beforeSend ? send : function (e) { + opts.beforeSend(files[fileIndex], fileIndex, function () { send(e); }); + }; + + reader.readAsDataURL(files[fileIndex]); + + } else { + filesRejected++; + } + } catch (err) { + // Remove from queue + processingQueue.forEach(function(value, key) { + if (value === fileIndex) { + processingQueue.splice(key, 1); + } + }); + opts.error(errors[0]); + return false; + } + + // If we still have work to do, + if (workQueue.length > 0) { + process(); + } + }; + + var send = function(e) { + + var fileIndex = (e.srcElement || e.target).index; + + // Sometimes the index is not attached to the + // event object. Find it by size. Hack for sure. + if (e.target.index === undefined) { + e.target.index = getIndexBySize(e.total); + } + + var xhr = new XMLHttpRequest(), + upload = xhr.upload, + file = files[e.target.index], + index = e.target.index, + start_time = new Date().getTime(), + boundary = '------multipartformboundary' + (new Date()).getTime(), + global_progress_index = global_progress.length, + builder, + newName = rename(file.name), + mime = file.type; + + if (opts.withCredentials) { + xhr.withCredentials = opts.withCredentials; + } + + var data = atob(e.target.result.split(',')[1]); + if (typeof newName === "string") { + builder = getBuilder(newName, data, mime, boundary); + } else { + builder = getBuilder(file.name, data, mime, boundary); + } + + upload.index = index; + upload.file = file; + upload.downloadStartTime = start_time; + upload.currentStart = start_time; + upload.currentProgress = 0; + upload.global_progress_index = global_progress_index; + upload.startData = 0; + upload.addEventListener("progress", progress, false); + + // Allow url to be a method + if (jQuery.isFunction(opts.url)) { + xhr.open(opts.requestType, opts.url(), true); + } else { + xhr.open(opts.requestType, opts.url, true); + } + + xhr.setRequestHeader('content-type', 'multipart/form-data; boundary=' + boundary); + xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest"); + + // Add headers + $.each(opts.headers, function(k, v) { + xhr.setRequestHeader(k, v); + }); + + xhr.sendAsBinary(builder); + + global_progress[global_progress_index] = 0; + globalProgress(); + + opts.uploadStarted(index, file, files_count); + + xhr.onload = function() { + var serverResponse = null; + + if (xhr.responseText) { + try { + serverResponse = jQuery.parseJSON(xhr.responseText); + } + catch (e) { + serverResponse = xhr.responseText; + } + } + + var now = new Date().getTime(), + timeDiff = now - start_time, + result = opts.uploadFinished(index, file, serverResponse, timeDiff, xhr); + filesDone++; + + // Remove from processing queue + processingQueue.forEach(function(value, key) { + if (value === fileIndex) { + processingQueue.splice(key, 1); + } + }); + + // Add to donequeue + doneQueue.push(fileIndex); + + // Make sure the global progress is updated + global_progress[global_progress_index] = 100; + globalProgress(); + + if (filesDone === (files_count - filesRejected)) { + afterAll(); + } + if (result === false) { + stop_loop = true; + } + + + // Pass any errors to the error option + if (xhr.status < 200 || xhr.status > 299) { + opts.error(xhr.statusText, file, fileIndex, xhr.status); + } + }; + }; + + // Initiate the processing loop + process(); + } + + function getIndexBySize(size) { + for (var i = 0; i < files_count; i++) { + if (files[i].size === size) { + return i; + } + } + + return undefined; + } + + function rename(name) { + return opts.rename(name); + } + + function beforeEach(file) { + return opts.beforeEach(file); + } + + function afterAll() { + return opts.afterAll(); + } + + function dragEnter(e) { + clearTimeout(doc_leave_timer); + e.preventDefault(); + opts.dragEnter.call(this, e); + } + + function dragOver(e) { + clearTimeout(doc_leave_timer); + e.preventDefault(); + opts.docOver.call(this, e); + opts.dragOver.call(this, e); + } + + function dragLeave(e) { + clearTimeout(doc_leave_timer); + opts.dragLeave.call(this, e); + e.stopPropagation(); + } + + function docDrop(e) { + e.preventDefault(); + opts.docLeave.call(this, e); + return false; + } + + function docEnter(e) { + clearTimeout(doc_leave_timer); + e.preventDefault(); + opts.docEnter.call(this, e); + return false; + } + + function docOver(e) { + clearTimeout(doc_leave_timer); + e.preventDefault(); + opts.docOver.call(this, e); + return false; + } + + function docLeave(e) { + doc_leave_timer = setTimeout((function(_this) { + return function() { + opts.docLeave.call(_this, e); + }; + })(this), 200); + } + + return this; + }; + + function empty() {} + + try { + if (XMLHttpRequest.prototype.sendAsBinary) { + return; + } + XMLHttpRequest.prototype.sendAsBinary = function(datastr) { + function byteValue(x) { + return x.charCodeAt(0) & 0xff; + } + var ords = Array.prototype.map.call(datastr, byteValue); + var ui8a = new Uint8Array(ords); + + // Not pretty: Chrome 22 deprecated sending ArrayBuffer, moving instead + // to sending ArrayBufferView. Sadly, no proper way to detect this + // functionality has been discovered. Happily, Chrome 22 also introduced + // the base ArrayBufferView class, not present in Chrome 21. + if ('ArrayBufferView' in window) + this.send(ui8a); + else + this.send(ui8a.buffer); + }; + } catch (e) {} + +})(jQuery); From e62591bf1ca8a5461f4b9b01db62599a98a9c85a Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Mon, 26 Aug 2013 13:16:35 +0200 Subject: [PATCH 49/83] Adds a yet unstyled selector. --- src/_h5ai/client/css/inc/view.less | 39 +++++++++++++++++++++++++++ src/_h5ai/client/js/inc/ext/select.js | 35 ++++++++++++++++++++++-- 2 files changed, 72 insertions(+), 2 deletions(-) diff --git a/src/_h5ai/client/css/inc/view.less b/src/_h5ai/client/css/inc/view.less index 68710d16..dc5c1d03 100644 --- a/src/_h5ai/client/css/inc/view.less +++ b/src/_h5ai/client/css/inc/view.less @@ -9,6 +9,45 @@ background-color: rgba(0,0,0,0.01); } +#selector { + position: absolute; + left: 8px; + top: 8px; + width: 16px; + height: 16px; + background-color: #fff; + border: 1px solid #555; + border-radius: 100px; + opacity: 0.7; + cursor: pointer; + + .on-selected, .on-not-selected { + display: block; + width: 16px; + height: 16px; + } + + &:hover { + opacity: 1; + } +} + +.item.selected { + #selector { + .on-not-selected { + display: none; + } + } +} +.item:not(.selected) { + #selector { + .on-selected { + display: none; + } + } +} + + @item-border-col-sep: @col-border; @item-background-col-hover: rgba(0,0,0,0.02); diff --git a/src/_h5ai/client/js/inc/ext/select.js b/src/_h5ai/client/js/inc/ext/select.js index 4d14a439..003e2da9 100644 --- a/src/_h5ai/client/js/inc/ext/select.js +++ b/src/_h5ai/client/js/inc/ext/select.js @@ -1,5 +1,5 @@ -modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/event'], function (_, $, allsettings, event) { +modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/resource', 'core/event'], function (_, $, allsettings, resource, event) { var settings = _.extend({ enabled: false @@ -111,8 +111,38 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/event'], functio } }, - onLocationChanged = function () { + initItem = function (item) { + if (item.$view) { + item.$view + .on('mouseenter', function () { + + $('#selector').remove(); + $('<div id="selector">' + + '<img src="' + resource.image('select') + '" class="on-selected" alt="selected" />' + + '<img src="' + resource.image('blank') + '" class="on-not-selected" alt="not-selected" />' + + '</div>') + .on('click', function (event) { + + event.stopImmediatePropagation(); + event.preventDefault(); + console.log('icon', event); + + item.$view.toggleClass('selected'); + publish(); + }) + .appendTo(item.$view.find('a')); + }) + .on('mouseleave', function () { + + $('#selector').remove(); + }); + } + }, + + onLocationChanged = function (item) { + + _.each(item.content, initItem); publish(); }, @@ -120,6 +150,7 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/event'], functio var selectionChanged = false; + _.each(added, initItem); _.each(removed, function (item) { if (item.$view && item.$view.hasClass('selected')) { From 774742b98ca07bea848303f4f13596c148049c83 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Tue, 27 Aug 2013 11:26:05 +0200 Subject: [PATCH 50/83] Fixes order undefined error. --- src/_h5ai/client/js/inc/ext/sort.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/_h5ai/client/js/inc/ext/sort.js b/src/_h5ai/client/js/inc/ext/sort.js index fdfc2016..32443c68 100644 --- a/src/_h5ai/client/js/inc/ext/sort.js +++ b/src/_h5ai/client/js/inc/ext/sort.js @@ -151,8 +151,8 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e onContentChanged = function (item) { var order = store.get(storekey), - column = order.column || settings.column, - reverse = order.reverse || settings.reverse; + column = order && order.column || settings.column, + reverse = order && order.reverse || settings.reverse; sortItems(column, reverse); }, From c186be6cb5fb653065693bd757afbeb93353c95f Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Tue, 27 Aug 2013 19:15:48 +0200 Subject: [PATCH 51/83] Testing some view changes. Smaller font, bigger icons. --- src/_h5ai/client/css/inc/view-details.less | 21 +++++++--- src/_h5ai/client/css/inc/view-grid.less | 29 +++++++++----- src/_h5ai/client/css/inc/view-icons.less | 8 ++-- src/_h5ai/client/css/inc/view-list.less | 19 +++++---- src/_h5ai/client/css/inc/view.less | 36 +++++++++++++++--- src/_h5ai/client/icons/16x16/archive.png | Bin 551 -> 0 bytes src/_h5ai/client/icons/16x16/audio.png | Bin 554 -> 0 bytes src/_h5ai/client/icons/16x16/authors.png | Bin 492 -> 0 bytes src/_h5ai/client/icons/16x16/bin.png | Bin 551 -> 0 bytes src/_h5ai/client/icons/16x16/blank.png | Bin 227 -> 0 bytes src/_h5ai/client/icons/16x16/bmp.png | Bin 663 -> 0 bytes src/_h5ai/client/icons/16x16/c.png | Bin 554 -> 0 bytes src/_h5ai/client/icons/16x16/calc.png | Bin 506 -> 0 bytes src/_h5ai/client/icons/16x16/cd.png | Bin 757 -> 0 bytes src/_h5ai/client/icons/16x16/copying.png | Bin 699 -> 0 bytes src/_h5ai/client/icons/16x16/cpp.png | Bin 599 -> 0 bytes src/_h5ai/client/icons/16x16/css.png | Bin 592 -> 0 bytes src/_h5ai/client/icons/16x16/deb.png | Bin 671 -> 0 bytes src/_h5ai/client/icons/16x16/default.png | Bin 311 -> 0 bytes src/_h5ai/client/icons/16x16/diff.png | Bin 586 -> 0 bytes src/_h5ai/client/icons/16x16/doc.png | Bin 535 -> 0 bytes src/_h5ai/client/icons/16x16/draw.png | Bin 679 -> 0 bytes src/_h5ai/client/icons/16x16/eps.png | Bin 619 -> 0 bytes src/_h5ai/client/icons/16x16/exe.png | Bin 846 -> 0 bytes src/_h5ai/client/icons/16x16/folder-0.png | Bin 395 -> 0 bytes .../client/icons/16x16/folder-page-0.png | Bin 591 -> 0 bytes src/_h5ai/client/icons/16x16/folder-page.png | Bin 311 -> 0 bytes .../client/icons/16x16/folder-parent-0.png | Bin 494 -> 0 bytes .../client/icons/16x16/folder-parent-1.png | Bin 621 -> 0 bytes .../client/icons/16x16/folder-parent.png | Bin 326 -> 0 bytes src/_h5ai/client/icons/16x16/folder.png | Bin 255 -> 0 bytes src/_h5ai/client/icons/16x16/gif.png | Bin 655 -> 0 bytes src/_h5ai/client/icons/16x16/gzip.png | Bin 551 -> 0 bytes src/_h5ai/client/icons/16x16/h.png | Bin 504 -> 0 bytes src/_h5ai/client/icons/16x16/hpp.png | Bin 530 -> 0 bytes src/_h5ai/client/icons/16x16/html.png | Bin 770 -> 0 bytes src/_h5ai/client/icons/16x16/ico.png | Bin 792 -> 0 bytes src/_h5ai/client/icons/16x16/image.png | Bin 671 -> 0 bytes src/_h5ai/client/icons/16x16/install.png | Bin 788 -> 0 bytes src/_h5ai/client/icons/16x16/java.png | Bin 658 -> 0 bytes src/_h5ai/client/icons/16x16/jpg.png | Bin 675 -> 0 bytes src/_h5ai/client/icons/16x16/js.png | Bin 540 -> 0 bytes src/_h5ai/client/icons/16x16/json.png | Bin 540 -> 0 bytes src/_h5ai/client/icons/16x16/log.png | Bin 423 -> 0 bytes src/_h5ai/client/icons/16x16/makefile.png | Bin 614 -> 0 bytes src/_h5ai/client/icons/16x16/markdown.png | Bin 627 -> 0 bytes src/_h5ai/client/icons/16x16/package.png | Bin 614 -> 0 bytes src/_h5ai/client/icons/16x16/pdf.png | Bin 799 -> 0 bytes src/_h5ai/client/icons/16x16/php.png | Bin 757 -> 0 bytes src/_h5ai/client/icons/16x16/playlist.png | Bin 610 -> 0 bytes src/_h5ai/client/icons/16x16/png.png | Bin 679 -> 0 bytes src/_h5ai/client/icons/16x16/pres.png | Bin 629 -> 0 bytes src/_h5ai/client/icons/16x16/ps.png | Bin 817 -> 0 bytes src/_h5ai/client/icons/16x16/psd.png | Bin 622 -> 0 bytes src/_h5ai/client/icons/16x16/py.png | Bin 743 -> 0 bytes src/_h5ai/client/icons/16x16/rar.png | Bin 621 -> 0 bytes src/_h5ai/client/icons/16x16/rb.png | Bin 781 -> 0 bytes src/_h5ai/client/icons/16x16/readme.png | Bin 384 -> 0 bytes src/_h5ai/client/icons/16x16/rpm.png | Bin 660 -> 0 bytes src/_h5ai/client/icons/16x16/rss.png | Bin 660 -> 0 bytes src/_h5ai/client/icons/16x16/rtf.png | Bin 627 -> 0 bytes src/_h5ai/client/icons/16x16/script.png | Bin 613 -> 0 bytes src/_h5ai/client/icons/16x16/source.png | Bin 586 -> 0 bytes src/_h5ai/client/icons/16x16/sql.png | Bin 510 -> 0 bytes src/_h5ai/client/icons/16x16/tar.png | Bin 406 -> 0 bytes src/_h5ai/client/icons/16x16/tex.png | Bin 677 -> 0 bytes src/_h5ai/client/icons/16x16/text.png | Bin 463 -> 0 bytes src/_h5ai/client/icons/16x16/tiff.png | Bin 654 -> 0 bytes src/_h5ai/client/icons/16x16/unknown.png | Bin 556 -> 0 bytes src/_h5ai/client/icons/16x16/vcal.png | Bin 556 -> 0 bytes src/_h5ai/client/icons/16x16/video.png | Bin 739 -> 0 bytes src/_h5ai/client/icons/16x16/xml.png | Bin 585 -> 0 bytes src/_h5ai/client/icons/16x16/zip.png | Bin 617 -> 0 bytes src/_h5ai/client/icons/48x48/archive.png | Bin 1433 -> 0 bytes src/_h5ai/client/icons/48x48/audio.png | Bin 2062 -> 0 bytes src/_h5ai/client/icons/48x48/authors.png | Bin 1508 -> 0 bytes src/_h5ai/client/icons/48x48/bin.png | Bin 1767 -> 0 bytes src/_h5ai/client/icons/48x48/blank.png | Bin 236 -> 0 bytes src/_h5ai/client/icons/48x48/bmp.png | Bin 2899 -> 0 bytes src/_h5ai/client/icons/48x48/c.png | Bin 2763 -> 0 bytes src/_h5ai/client/icons/48x48/calc.png | Bin 2007 -> 0 bytes src/_h5ai/client/icons/48x48/cd.png | Bin 3047 -> 0 bytes src/_h5ai/client/icons/48x48/copying.png | Bin 1980 -> 0 bytes src/_h5ai/client/icons/48x48/cpp.png | Bin 2685 -> 0 bytes src/_h5ai/client/icons/48x48/css.png | Bin 1745 -> 0 bytes src/_h5ai/client/icons/48x48/deb.png | Bin 2317 -> 0 bytes src/_h5ai/client/icons/48x48/default.png | Bin 997 -> 0 bytes src/_h5ai/client/icons/48x48/diff.png | Bin 2443 -> 0 bytes src/_h5ai/client/icons/48x48/doc.png | Bin 3298 -> 0 bytes src/_h5ai/client/icons/48x48/draw.png | Bin 1833 -> 0 bytes src/_h5ai/client/icons/48x48/eps.png | Bin 2120 -> 0 bytes src/_h5ai/client/icons/48x48/exe.png | Bin 2764 -> 0 bytes src/_h5ai/client/icons/48x48/folder-0.png | Bin 1516 -> 0 bytes .../client/icons/48x48/folder-page-0.png | Bin 2161 -> 0 bytes src/_h5ai/client/icons/48x48/folder-page.png | Bin 443 -> 0 bytes .../client/icons/48x48/folder-parent-0.png | Bin 1227 -> 0 bytes .../client/icons/48x48/folder-parent.png | Bin 519 -> 0 bytes src/_h5ai/client/icons/48x48/folder.png | Bin 353 -> 0 bytes src/_h5ai/client/icons/48x48/gif.png | Bin 2690 -> 0 bytes src/_h5ai/client/icons/48x48/gzip.png | Bin 1836 -> 0 bytes src/_h5ai/client/icons/48x48/h.png | Bin 2513 -> 0 bytes src/_h5ai/client/icons/48x48/hpp.png | Bin 2707 -> 0 bytes src/_h5ai/client/icons/48x48/html.png | Bin 3352 -> 0 bytes src/_h5ai/client/icons/48x48/ico.png | Bin 3408 -> 0 bytes src/_h5ai/client/icons/48x48/image.png | Bin 2556 -> 0 bytes src/_h5ai/client/icons/48x48/install.png | Bin 2159 -> 0 bytes src/_h5ai/client/icons/48x48/java.png | Bin 2645 -> 0 bytes src/_h5ai/client/icons/48x48/jpg.png | Bin 2996 -> 0 bytes src/_h5ai/client/icons/48x48/js.png | Bin 3023 -> 0 bytes src/_h5ai/client/icons/48x48/json.png | Bin 3023 -> 0 bytes src/_h5ai/client/icons/48x48/log.png | Bin 1350 -> 0 bytes src/_h5ai/client/icons/48x48/makefile.png | Bin 1713 -> 0 bytes src/_h5ai/client/icons/48x48/markdown.png | Bin 2680 -> 0 bytes src/_h5ai/client/icons/48x48/package.png | Bin 2686 -> 0 bytes src/_h5ai/client/icons/48x48/pdf.png | Bin 2806 -> 0 bytes src/_h5ai/client/icons/48x48/php.png | Bin 3358 -> 0 bytes src/_h5ai/client/icons/48x48/playlist.png | Bin 2484 -> 0 bytes src/_h5ai/client/icons/48x48/png.png | Bin 2998 -> 0 bytes src/_h5ai/client/icons/48x48/pres.png | Bin 2586 -> 0 bytes src/_h5ai/client/icons/48x48/ps.png | Bin 2975 -> 0 bytes src/_h5ai/client/icons/48x48/psd.png | Bin 2195 -> 0 bytes src/_h5ai/client/icons/48x48/py.png | Bin 3129 -> 0 bytes src/_h5ai/client/icons/48x48/rar.png | Bin 2309 -> 0 bytes src/_h5ai/client/icons/48x48/rb.png | Bin 3220 -> 0 bytes src/_h5ai/client/icons/48x48/readme.png | Bin 1346 -> 0 bytes src/_h5ai/client/icons/48x48/rpm.png | Bin 2020 -> 0 bytes src/_h5ai/client/icons/48x48/rss.png | Bin 1839 -> 0 bytes src/_h5ai/client/icons/48x48/rtf.png | Bin 2680 -> 0 bytes src/_h5ai/client/icons/48x48/script.png | Bin 1881 -> 0 bytes src/_h5ai/client/icons/48x48/source.png | Bin 2443 -> 0 bytes src/_h5ai/client/icons/48x48/sql.png | Bin 1286 -> 0 bytes src/_h5ai/client/icons/48x48/tar.png | Bin 1013 -> 0 bytes src/_h5ai/client/icons/48x48/tex.png | Bin 2160 -> 0 bytes src/_h5ai/client/icons/48x48/text.png | Bin 2754 -> 0 bytes src/_h5ai/client/icons/48x48/tiff.png | Bin 2690 -> 0 bytes src/_h5ai/client/icons/48x48/unknown.png | Bin 1420 -> 0 bytes src/_h5ai/client/icons/48x48/vcal.png | Bin 2736 -> 0 bytes src/_h5ai/client/icons/48x48/video.png | Bin 3265 -> 0 bytes src/_h5ai/client/icons/48x48/xml.png | Bin 2954 -> 0 bytes src/_h5ai/client/icons/48x48/zip.png | Bin 2232 -> 0 bytes src/_h5ai/client/icons/96/7zip.png | Bin 0 -> 3559 bytes src/_h5ai/client/icons/96/ace.png | Bin 0 -> 3370 bytes src/_h5ai/client/icons/96/archive.png | Bin 0 -> 3051 bytes src/_h5ai/client/icons/96/audio.png | Bin 0 -> 3263 bytes src/_h5ai/client/icons/96/authors.png | Bin 0 -> 2656 bytes src/_h5ai/client/icons/96/bak.png | Bin 0 -> 3764 bytes src/_h5ai/client/icons/96/bin.png | Bin 0 -> 3189 bytes src/_h5ai/client/icons/96/blank.png | Bin 0 -> 119 bytes src/_h5ai/client/icons/96/bmp.png | Bin 0 -> 3499 bytes src/_h5ai/client/icons/96/c.png | Bin 0 -> 3742 bytes src/_h5ai/client/icons/96/calc.png | Bin 0 -> 3237 bytes src/_h5ai/client/icons/96/cd.png | Bin 0 -> 4200 bytes src/_h5ai/client/icons/96/copying.png | Bin 0 -> 3178 bytes src/_h5ai/client/icons/96/cpp.png | Bin 0 -> 3666 bytes src/_h5ai/client/icons/96/css.png | Bin 0 -> 2729 bytes src/_h5ai/client/icons/96/cue.png | Bin 0 -> 4225 bytes src/_h5ai/client/icons/96/deb.png | Bin 0 -> 3254 bytes src/_h5ai/client/icons/96/default.png | Bin 0 -> 2008 bytes src/_h5ai/client/icons/96/dia.png | Bin 0 -> 2690 bytes src/_h5ai/client/icons/96/diff.png | Bin 0 -> 3434 bytes src/_h5ai/client/icons/96/doc.png | Bin 0 -> 4607 bytes src/_h5ai/client/icons/96/draw.png | Bin 0 -> 2889 bytes src/_h5ai/client/icons/96/encrypted.png | Bin 0 -> 2944 bytes src/_h5ai/client/icons/96/eps.png | Bin 0 -> 3280 bytes src/_h5ai/client/icons/96/exe.png | Bin 0 -> 3271 bytes src/_h5ai/client/icons/96/flash.png | Bin 0 -> 3017 bytes src/_h5ai/client/icons/96/folder-page.png | Bin 0 -> 262 bytes src/_h5ai/client/icons/96/folder-parent.png | Bin 0 -> 380 bytes src/_h5ai/client/icons/96/folder.png | Bin 0 -> 206 bytes src/_h5ai/client/icons/96/font.png | Bin 0 -> 3042 bytes src/_h5ai/client/icons/96/gif.png | Bin 0 -> 3503 bytes src/_h5ai/client/icons/96/glade.png | Bin 0 -> 5141 bytes src/_h5ai/client/icons/96/gzip.png | Bin 0 -> 3429 bytes src/_h5ai/client/icons/96/h.png | Bin 0 -> 3627 bytes src/_h5ai/client/icons/96/hpp.png | Bin 0 -> 3676 bytes src/_h5ai/client/icons/96/html.png | Bin 0 -> 4963 bytes src/_h5ai/client/icons/96/ico.png | Bin 0 -> 3377 bytes src/_h5ai/client/icons/96/image.png | Bin 0 -> 3365 bytes src/_h5ai/client/icons/96/install.png | Bin 0 -> 3298 bytes src/_h5ai/client/icons/96/jar.png | Bin 0 -> 3494 bytes src/_h5ai/client/icons/96/java.png | Bin 0 -> 4151 bytes src/_h5ai/client/icons/96/jpg.png | Bin 0 -> 3677 bytes src/_h5ai/client/icons/96/js.png | Bin 0 -> 4277 bytes src/_h5ai/client/icons/96/json.png | Bin 0 -> 4277 bytes src/_h5ai/client/icons/96/log.png | Bin 0 -> 2374 bytes src/_h5ai/client/icons/96/makefile.png | Bin 0 -> 2894 bytes src/_h5ai/client/icons/96/markdown.png | Bin 0 -> 3781 bytes src/_h5ai/client/icons/96/message.png | Bin 0 -> 2852 bytes src/_h5ai/client/icons/96/mp3.png | Bin 0 -> 3498 bytes src/_h5ai/client/icons/96/ogg.png | Bin 0 -> 3470 bytes src/_h5ai/client/icons/96/package.png | Bin 0 -> 4167 bytes src/_h5ai/client/icons/96/pdf.png | Bin 0 -> 3670 bytes src/_h5ai/client/icons/96/pgp.png | Bin 0 -> 4899 bytes src/_h5ai/client/icons/96/php.png | Bin 0 -> 4387 bytes src/_h5ai/client/icons/96/playlist.png | Bin 0 -> 3552 bytes src/_h5ai/client/icons/96/png.png | Bin 0 -> 3688 bytes src/_h5ai/client/icons/96/pres.png | Bin 0 -> 3576 bytes src/_h5ai/client/icons/96/ps.png | Bin 0 -> 3950 bytes src/_h5ai/client/icons/96/psd.png | Bin 0 -> 3399 bytes src/_h5ai/client/icons/96/py.png | Bin 0 -> 4203 bytes src/_h5ai/client/icons/96/rar.png | Bin 0 -> 3058 bytes src/_h5ai/client/icons/96/rb.png | Bin 0 -> 4253 bytes src/_h5ai/client/icons/96/readme.png | Bin 0 -> 2541 bytes src/_h5ai/client/icons/96/rpm.png | Bin 0 -> 2885 bytes src/_h5ai/client/icons/96/rss.png | Bin 0 -> 2837 bytes src/_h5ai/client/icons/96/rtf.png | Bin 0 -> 3781 bytes src/_h5ai/client/icons/96/script.png | Bin 0 -> 3437 bytes src/_h5ai/client/icons/96/source.png | Bin 0 -> 3434 bytes src/_h5ai/client/icons/96/sql.png | Bin 0 -> 3218 bytes src/_h5ai/client/icons/96/svg.png | Bin 0 -> 2889 bytes src/_h5ai/client/icons/96/tar.png | Bin 0 -> 3051 bytes src/_h5ai/client/icons/96/tex-bib.png | Bin 0 -> 3200 bytes src/_h5ai/client/icons/96/tex.png | Bin 0 -> 4730 bytes src/_h5ai/client/icons/96/text.png | Bin 0 -> 3902 bytes src/_h5ai/client/icons/96/theme.png | Bin 0 -> 3707 bytes src/_h5ai/client/icons/96/tiff.png | Bin 0 -> 3392 bytes src/_h5ai/client/icons/96/torrent.png | Bin 0 -> 3496 bytes src/_h5ai/client/icons/96/unknown.png | Bin 0 -> 2614 bytes src/_h5ai/client/icons/96/vcal.png | Bin 0 -> 4229 bytes src/_h5ai/client/icons/96/video.png | Bin 0 -> 4364 bytes src/_h5ai/client/icons/96/wav.png | Bin 0 -> 4800 bytes src/_h5ai/client/icons/96/wma.png | Bin 0 -> 3563 bytes src/_h5ai/client/icons/96/xcf.png | Bin 0 -> 3680 bytes src/_h5ai/client/icons/96/xhtml.png | Bin 0 -> 4693 bytes src/_h5ai/client/icons/96/xml.png | Bin 0 -> 4004 bytes src/_h5ai/client/icons/96/zip.png | Bin 0 -> 3061 bytes src/_h5ai/client/js/inc/core/resource.js | 2 +- src/_h5ai/client/js/inc/ext/select.js | 6 +-- src/_h5ai/client/js/inc/ext/thumbnails.js | 28 +++++++------- src/_h5ai/client/js/inc/view/items.js | 20 +++++----- 230 files changed, 109 insertions(+), 60 deletions(-) delete mode 100644 src/_h5ai/client/icons/16x16/archive.png delete mode 100644 src/_h5ai/client/icons/16x16/audio.png delete mode 100644 src/_h5ai/client/icons/16x16/authors.png delete mode 100644 src/_h5ai/client/icons/16x16/bin.png delete mode 100644 src/_h5ai/client/icons/16x16/blank.png delete mode 100644 src/_h5ai/client/icons/16x16/bmp.png delete mode 100644 src/_h5ai/client/icons/16x16/c.png delete mode 100644 src/_h5ai/client/icons/16x16/calc.png delete mode 100644 src/_h5ai/client/icons/16x16/cd.png delete mode 100644 src/_h5ai/client/icons/16x16/copying.png delete mode 100644 src/_h5ai/client/icons/16x16/cpp.png delete mode 100644 src/_h5ai/client/icons/16x16/css.png delete mode 100644 src/_h5ai/client/icons/16x16/deb.png delete mode 100644 src/_h5ai/client/icons/16x16/default.png delete mode 100644 src/_h5ai/client/icons/16x16/diff.png delete mode 100644 src/_h5ai/client/icons/16x16/doc.png delete mode 100644 src/_h5ai/client/icons/16x16/draw.png delete mode 100644 src/_h5ai/client/icons/16x16/eps.png delete mode 100644 src/_h5ai/client/icons/16x16/exe.png delete mode 100644 src/_h5ai/client/icons/16x16/folder-0.png delete mode 100644 src/_h5ai/client/icons/16x16/folder-page-0.png delete mode 100644 src/_h5ai/client/icons/16x16/folder-page.png delete mode 100644 src/_h5ai/client/icons/16x16/folder-parent-0.png delete mode 100644 src/_h5ai/client/icons/16x16/folder-parent-1.png delete mode 100644 src/_h5ai/client/icons/16x16/folder-parent.png delete mode 100644 src/_h5ai/client/icons/16x16/folder.png delete mode 100644 src/_h5ai/client/icons/16x16/gif.png delete mode 100644 src/_h5ai/client/icons/16x16/gzip.png delete mode 100644 src/_h5ai/client/icons/16x16/h.png delete mode 100644 src/_h5ai/client/icons/16x16/hpp.png delete mode 100644 src/_h5ai/client/icons/16x16/html.png delete mode 100644 src/_h5ai/client/icons/16x16/ico.png delete mode 100644 src/_h5ai/client/icons/16x16/image.png delete mode 100644 src/_h5ai/client/icons/16x16/install.png delete mode 100644 src/_h5ai/client/icons/16x16/java.png delete mode 100644 src/_h5ai/client/icons/16x16/jpg.png delete mode 100644 src/_h5ai/client/icons/16x16/js.png delete mode 100644 src/_h5ai/client/icons/16x16/json.png delete mode 100644 src/_h5ai/client/icons/16x16/log.png delete mode 100644 src/_h5ai/client/icons/16x16/makefile.png delete mode 100644 src/_h5ai/client/icons/16x16/markdown.png delete mode 100644 src/_h5ai/client/icons/16x16/package.png delete mode 100644 src/_h5ai/client/icons/16x16/pdf.png delete mode 100644 src/_h5ai/client/icons/16x16/php.png delete mode 100644 src/_h5ai/client/icons/16x16/playlist.png delete mode 100644 src/_h5ai/client/icons/16x16/png.png delete mode 100644 src/_h5ai/client/icons/16x16/pres.png delete mode 100644 src/_h5ai/client/icons/16x16/ps.png delete mode 100644 src/_h5ai/client/icons/16x16/psd.png delete mode 100644 src/_h5ai/client/icons/16x16/py.png delete mode 100644 src/_h5ai/client/icons/16x16/rar.png delete mode 100644 src/_h5ai/client/icons/16x16/rb.png delete mode 100644 src/_h5ai/client/icons/16x16/readme.png delete mode 100644 src/_h5ai/client/icons/16x16/rpm.png delete mode 100644 src/_h5ai/client/icons/16x16/rss.png delete mode 100644 src/_h5ai/client/icons/16x16/rtf.png delete mode 100644 src/_h5ai/client/icons/16x16/script.png delete mode 100644 src/_h5ai/client/icons/16x16/source.png delete mode 100644 src/_h5ai/client/icons/16x16/sql.png delete mode 100644 src/_h5ai/client/icons/16x16/tar.png delete mode 100644 src/_h5ai/client/icons/16x16/tex.png delete mode 100644 src/_h5ai/client/icons/16x16/text.png delete mode 100644 src/_h5ai/client/icons/16x16/tiff.png delete mode 100644 src/_h5ai/client/icons/16x16/unknown.png delete mode 100644 src/_h5ai/client/icons/16x16/vcal.png delete mode 100644 src/_h5ai/client/icons/16x16/video.png delete mode 100644 src/_h5ai/client/icons/16x16/xml.png delete mode 100644 src/_h5ai/client/icons/16x16/zip.png delete mode 100644 src/_h5ai/client/icons/48x48/archive.png delete mode 100644 src/_h5ai/client/icons/48x48/audio.png delete mode 100644 src/_h5ai/client/icons/48x48/authors.png delete mode 100644 src/_h5ai/client/icons/48x48/bin.png delete mode 100644 src/_h5ai/client/icons/48x48/blank.png delete mode 100644 src/_h5ai/client/icons/48x48/bmp.png delete mode 100644 src/_h5ai/client/icons/48x48/c.png delete mode 100644 src/_h5ai/client/icons/48x48/calc.png delete mode 100644 src/_h5ai/client/icons/48x48/cd.png delete mode 100644 src/_h5ai/client/icons/48x48/copying.png delete mode 100644 src/_h5ai/client/icons/48x48/cpp.png delete mode 100644 src/_h5ai/client/icons/48x48/css.png delete mode 100644 src/_h5ai/client/icons/48x48/deb.png delete mode 100644 src/_h5ai/client/icons/48x48/default.png delete mode 100644 src/_h5ai/client/icons/48x48/diff.png delete mode 100644 src/_h5ai/client/icons/48x48/doc.png delete mode 100644 src/_h5ai/client/icons/48x48/draw.png delete mode 100644 src/_h5ai/client/icons/48x48/eps.png delete mode 100644 src/_h5ai/client/icons/48x48/exe.png delete mode 100644 src/_h5ai/client/icons/48x48/folder-0.png delete mode 100644 src/_h5ai/client/icons/48x48/folder-page-0.png delete mode 100644 src/_h5ai/client/icons/48x48/folder-page.png delete mode 100644 src/_h5ai/client/icons/48x48/folder-parent-0.png delete mode 100644 src/_h5ai/client/icons/48x48/folder-parent.png delete mode 100644 src/_h5ai/client/icons/48x48/folder.png delete mode 100644 src/_h5ai/client/icons/48x48/gif.png delete mode 100644 src/_h5ai/client/icons/48x48/gzip.png delete mode 100644 src/_h5ai/client/icons/48x48/h.png delete mode 100644 src/_h5ai/client/icons/48x48/hpp.png delete mode 100644 src/_h5ai/client/icons/48x48/html.png delete mode 100644 src/_h5ai/client/icons/48x48/ico.png delete mode 100644 src/_h5ai/client/icons/48x48/image.png delete mode 100644 src/_h5ai/client/icons/48x48/install.png delete mode 100644 src/_h5ai/client/icons/48x48/java.png delete mode 100644 src/_h5ai/client/icons/48x48/jpg.png delete mode 100644 src/_h5ai/client/icons/48x48/js.png delete mode 100644 src/_h5ai/client/icons/48x48/json.png delete mode 100644 src/_h5ai/client/icons/48x48/log.png delete mode 100644 src/_h5ai/client/icons/48x48/makefile.png delete mode 100644 src/_h5ai/client/icons/48x48/markdown.png delete mode 100644 src/_h5ai/client/icons/48x48/package.png delete mode 100644 src/_h5ai/client/icons/48x48/pdf.png delete mode 100644 src/_h5ai/client/icons/48x48/php.png delete mode 100644 src/_h5ai/client/icons/48x48/playlist.png delete mode 100644 src/_h5ai/client/icons/48x48/png.png delete mode 100644 src/_h5ai/client/icons/48x48/pres.png delete mode 100644 src/_h5ai/client/icons/48x48/ps.png delete mode 100644 src/_h5ai/client/icons/48x48/psd.png delete mode 100644 src/_h5ai/client/icons/48x48/py.png delete mode 100644 src/_h5ai/client/icons/48x48/rar.png delete mode 100644 src/_h5ai/client/icons/48x48/rb.png delete mode 100644 src/_h5ai/client/icons/48x48/readme.png delete mode 100644 src/_h5ai/client/icons/48x48/rpm.png delete mode 100644 src/_h5ai/client/icons/48x48/rss.png delete mode 100644 src/_h5ai/client/icons/48x48/rtf.png delete mode 100644 src/_h5ai/client/icons/48x48/script.png delete mode 100644 src/_h5ai/client/icons/48x48/source.png delete mode 100644 src/_h5ai/client/icons/48x48/sql.png delete mode 100644 src/_h5ai/client/icons/48x48/tar.png delete mode 100644 src/_h5ai/client/icons/48x48/tex.png delete mode 100644 src/_h5ai/client/icons/48x48/text.png delete mode 100644 src/_h5ai/client/icons/48x48/tiff.png delete mode 100644 src/_h5ai/client/icons/48x48/unknown.png delete mode 100644 src/_h5ai/client/icons/48x48/vcal.png delete mode 100644 src/_h5ai/client/icons/48x48/video.png delete mode 100644 src/_h5ai/client/icons/48x48/xml.png delete mode 100644 src/_h5ai/client/icons/48x48/zip.png create mode 100644 src/_h5ai/client/icons/96/7zip.png create mode 100644 src/_h5ai/client/icons/96/ace.png create mode 100644 src/_h5ai/client/icons/96/archive.png create mode 100644 src/_h5ai/client/icons/96/audio.png create mode 100644 src/_h5ai/client/icons/96/authors.png create mode 100644 src/_h5ai/client/icons/96/bak.png create mode 100644 src/_h5ai/client/icons/96/bin.png create mode 100644 src/_h5ai/client/icons/96/blank.png create mode 100644 src/_h5ai/client/icons/96/bmp.png create mode 100644 src/_h5ai/client/icons/96/c.png create mode 100644 src/_h5ai/client/icons/96/calc.png create mode 100644 src/_h5ai/client/icons/96/cd.png create mode 100644 src/_h5ai/client/icons/96/copying.png create mode 100644 src/_h5ai/client/icons/96/cpp.png create mode 100644 src/_h5ai/client/icons/96/css.png create mode 100644 src/_h5ai/client/icons/96/cue.png create mode 100644 src/_h5ai/client/icons/96/deb.png create mode 100644 src/_h5ai/client/icons/96/default.png create mode 100644 src/_h5ai/client/icons/96/dia.png create mode 100644 src/_h5ai/client/icons/96/diff.png create mode 100644 src/_h5ai/client/icons/96/doc.png create mode 100644 src/_h5ai/client/icons/96/draw.png create mode 100644 src/_h5ai/client/icons/96/encrypted.png create mode 100644 src/_h5ai/client/icons/96/eps.png create mode 100644 src/_h5ai/client/icons/96/exe.png create mode 100644 src/_h5ai/client/icons/96/flash.png create mode 100644 src/_h5ai/client/icons/96/folder-page.png create mode 100644 src/_h5ai/client/icons/96/folder-parent.png create mode 100644 src/_h5ai/client/icons/96/folder.png create mode 100644 src/_h5ai/client/icons/96/font.png create mode 100644 src/_h5ai/client/icons/96/gif.png create mode 100644 src/_h5ai/client/icons/96/glade.png create mode 100644 src/_h5ai/client/icons/96/gzip.png create mode 100644 src/_h5ai/client/icons/96/h.png create mode 100644 src/_h5ai/client/icons/96/hpp.png create mode 100644 src/_h5ai/client/icons/96/html.png create mode 100644 src/_h5ai/client/icons/96/ico.png create mode 100644 src/_h5ai/client/icons/96/image.png create mode 100644 src/_h5ai/client/icons/96/install.png create mode 100644 src/_h5ai/client/icons/96/jar.png create mode 100644 src/_h5ai/client/icons/96/java.png create mode 100644 src/_h5ai/client/icons/96/jpg.png create mode 100644 src/_h5ai/client/icons/96/js.png create mode 100644 src/_h5ai/client/icons/96/json.png create mode 100644 src/_h5ai/client/icons/96/log.png create mode 100644 src/_h5ai/client/icons/96/makefile.png create mode 100644 src/_h5ai/client/icons/96/markdown.png create mode 100644 src/_h5ai/client/icons/96/message.png create mode 100644 src/_h5ai/client/icons/96/mp3.png create mode 100644 src/_h5ai/client/icons/96/ogg.png create mode 100644 src/_h5ai/client/icons/96/package.png create mode 100644 src/_h5ai/client/icons/96/pdf.png create mode 100644 src/_h5ai/client/icons/96/pgp.png create mode 100644 src/_h5ai/client/icons/96/php.png create mode 100644 src/_h5ai/client/icons/96/playlist.png create mode 100644 src/_h5ai/client/icons/96/png.png create mode 100644 src/_h5ai/client/icons/96/pres.png create mode 100644 src/_h5ai/client/icons/96/ps.png create mode 100644 src/_h5ai/client/icons/96/psd.png create mode 100644 src/_h5ai/client/icons/96/py.png create mode 100644 src/_h5ai/client/icons/96/rar.png create mode 100644 src/_h5ai/client/icons/96/rb.png create mode 100644 src/_h5ai/client/icons/96/readme.png create mode 100644 src/_h5ai/client/icons/96/rpm.png create mode 100644 src/_h5ai/client/icons/96/rss.png create mode 100644 src/_h5ai/client/icons/96/rtf.png create mode 100644 src/_h5ai/client/icons/96/script.png create mode 100644 src/_h5ai/client/icons/96/source.png create mode 100644 src/_h5ai/client/icons/96/sql.png create mode 100644 src/_h5ai/client/icons/96/svg.png create mode 100644 src/_h5ai/client/icons/96/tar.png create mode 100644 src/_h5ai/client/icons/96/tex-bib.png create mode 100644 src/_h5ai/client/icons/96/tex.png create mode 100644 src/_h5ai/client/icons/96/text.png create mode 100644 src/_h5ai/client/icons/96/theme.png create mode 100644 src/_h5ai/client/icons/96/tiff.png create mode 100644 src/_h5ai/client/icons/96/torrent.png create mode 100644 src/_h5ai/client/icons/96/unknown.png create mode 100644 src/_h5ai/client/icons/96/vcal.png create mode 100644 src/_h5ai/client/icons/96/video.png create mode 100644 src/_h5ai/client/icons/96/wav.png create mode 100644 src/_h5ai/client/icons/96/wma.png create mode 100644 src/_h5ai/client/icons/96/xcf.png create mode 100644 src/_h5ai/client/icons/96/xhtml.png create mode 100644 src/_h5ai/client/icons/96/xml.png create mode 100644 src/_h5ai/client/icons/96/zip.png diff --git a/src/_h5ai/client/css/inc/view-details.less b/src/_h5ai/client/css/inc/view-details.less index 5d1cdeff..e438d0eb 100644 --- a/src/_h5ai/client/css/inc/view-details.less +++ b/src/_h5ai/client/css/inc/view-details.less @@ -12,6 +12,7 @@ a, a:active, a:visited { border-top: 1px solid @item-border-col-sep; border-bottom: 1px solid @item-border-col-sep; + height: @small-icon-size + 6px; &:hover, &.hover { border-color: @item-border-col-hover; @@ -19,8 +20,11 @@ } // needs to be here, to not conflict with header fields - .icon, .label, .date, .size { - padding: 8px 6px; + .icon { + padding: 8px; + } + .label, .date, .size { + padding: ((@small-icon-size - 16px)/2) 8px; } } @@ -31,16 +35,21 @@ } } - .icon.small { + .icon.square { display: inline-block; position: absolute; left: 0; - top: -2px; - width: 16px; + top: -5px; + width: @small-icon-size; + + img { + width: @small-icon-size; + height: @small-icon-size; + } } .label { - margin: 0 270px 0 24px; + margin: 0 230px 0 (@small-icon-size + 8px); } .date { diff --git a/src/_h5ai/client/css/inc/view-grid.less b/src/_h5ai/client/css/inc/view-grid.less index 3576b298..1dca6349 100644 --- a/src/_h5ai/client/css/inc/view-grid.less +++ b/src/_h5ai/client/css/inc/view-grid.less @@ -9,29 +9,40 @@ a, a:active, a:visited { float: left; margin: 2px; - padding: 8px; - width: 164px; - height: 24px; + width: 218px; + height: @small-icon-size + 6px; border: 1px solid rgba(0,0,0,0); &:hover, &.hover { border-color: @item-border-col-hover; } } + + // needs to be here, to not conflict with header fields + .icon { + padding: 8px; + } + .label, .date, .size { + padding: ((@small-icon-size - 16px)/2) 8px; + } } - .icon.small { + .icon.square { display: inline-block; position: absolute; - left: 11px; - top: 9px; - width: 16px; + left: 0; + top: -2px; + width: @small-icon-size; + + img { + width: @small-icon-size; + height: @small-icon-size; + } } .label { display: block; - max-width: 140px; - margin: 0 0 0 24px; + margin: 0 0 0 (@small-icon-size + 8px); } .date, .size { diff --git a/src/_h5ai/client/css/inc/view-icons.less b/src/_h5ai/client/css/inc/view-icons.less index 77415cc1..14148613 100644 --- a/src/_h5ai/client/css/inc/view-icons.less +++ b/src/_h5ai/client/css/inc/view-icons.less @@ -11,8 +11,8 @@ float: left; margin: 8px; padding: 8px; - width: 100px; - height: 120px; + width: @big-icon-size * 2; + height: @big-icon-size + 72px; border: 1px solid rgba(0,0,0,0); &:hover, &.hover { @@ -21,9 +21,9 @@ } } - .icon.big { + .icon.rational { display: block; - height: 48px; + height: @big-icon-size; margin-bottom: 6px; } diff --git a/src/_h5ai/client/css/inc/view-list.less b/src/_h5ai/client/css/inc/view-list.less index 42b77c6a..e73a46b2 100644 --- a/src/_h5ai/client/css/inc/view-list.less +++ b/src/_h5ai/client/css/inc/view-list.less @@ -12,7 +12,7 @@ a, a:active, a:visited { border-top: 1px solid @item-border-col-sep; border-bottom: 1px solid @item-border-col-sep; - height: 60px; + height: @big-icon-size + 6px; &:hover, &.hover { border-color: @item-border-col-hover; @@ -21,10 +21,10 @@ // needs to be here, to not conflict with header fields .icon { - padding: 8px 6px; + padding: 8px; } .label, .date, .size { - padding: 18px 6px; + padding: ((@big-icon-size - 16px)/2) 8px; } } @@ -35,16 +35,21 @@ } } - .icon.big { + .icon.square { display: inline-block; position: absolute; left: 0; - top: -2px; - width: 100px; + top: -5px; + width: @big-icon-size; + + img { + width: @big-icon-size; + height: @big-icon-size; + } } .label { - margin: 0 270px 0 110px; + margin: 0 230px 0 (@big-icon-size + 8px); } .date { diff --git a/src/_h5ai/client/css/inc/view.less b/src/_h5ai/client/css/inc/view.less index dc5c1d03..88ed55f8 100644 --- a/src/_h5ai/client/css/inc/view.less +++ b/src/_h5ai/client/css/inc/view.less @@ -56,6 +56,12 @@ @item-background-col-sel: rgba(0,0,0,0.02); @item-border-col-sel: @col-border-strong; +@small-icon-size: 32px; +// @small-icon-size: 16px; +@big-icon-size: 48px; +// @big-icon-size: 64px; +// @big-icon-size: 80px; +// @big-icon-size: 96px; #view { @@ -109,6 +115,7 @@ } &.item { + font-size: 15px; a, a:active, a:visited { display: block; @@ -164,6 +171,7 @@ text-align: center; img { + vertical-align: top; &.thumb { box-shadow: 0 0 0 1px #ddd; @@ -173,17 +181,32 @@ &.small { img { - max-width: 16px; - max-height: 16px; + max-width: @small-icon-size * 2; + max-height: @small-icon-size; } } &.big { img { - max-width: 100px; - max-height: 48px; - vertical-align: top; + max-width: @big-icon-size * 2; + max-height: @big-icon-size; + } + } + + &.square { + + img { + max-width: @big-icon-size; + max-height: @big-icon-size; + } + } + + &.rational { + + img { + max-width: @big-icon-size * 2; + max-height: @big-icon-size; } } } @@ -192,11 +215,12 @@ display: block; overflow: hidden; text-align: left; + text-overflow: ellipsis; } .date { text-align: right; - width: 160px; + width: 130px; } .size { diff --git a/src/_h5ai/client/icons/16x16/archive.png b/src/_h5ai/client/icons/16x16/archive.png deleted file mode 100644 index 99ae6fc6677bb9c0b47e740778a315a56b1fc3c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 551 zcmV+?0@(eDP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10i;PpK~y-6m5{ND;!qTZKjTfnLPfC%vc+OQ`vTf-Cn;?9MYh<| za)fR5F)V^_AgP6rPQ(?aRuYjUHz&DU49YC4yE8u=xaY$8&UbHZv)O#rTK_c0eBn-N zwHo8`n8{=Uz;d}{wORp$j^lhM2!e3C-I^@ROi>hnm57*rzi*-_GEo$ne!p+>JU83z z)&xNisx(cXT-QZweNTXTy$(R9)4AP=2(IgLI2@joh)|a0-C+RBvH+OR=Y(MhfH8)$ zED;ebtu<v?J}hGl07@yQ)9D`otu-pob428!fl>+p&-3toAAqW=5E1e`$0~~Ap9a_X zzK`d5x4tY(ilRV?2vt=*G`Qxi!CMP;Jv@qtFdB_++ef1jBEogCs;Uaxw#l;WF5q&x zuvjc^e<31VE*EUueg(vFjN>@;dcFTX<C<o(Ns=VQag4Goi`{O=`Fwsi;0m!U3#GMY zFc{EkwLSz$l7#ho{c5n^?}_91Lx6U>eKUADolc*I!y&e9ziYTC3W6X&YyDE2&1T<@ p$K!LFrk_7z&}cM%b-UdkzX4XSEHy8yRp<Z!002ovPDHLkV1h;6?ic_7 diff --git a/src/_h5ai/client/icons/16x16/audio.png b/src/_h5ai/client/icons/16x16/audio.png deleted file mode 100644 index a67618d1410c138f07e96a67cdda3e4c8fbd427e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 554 zcmV+_0@eMAP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10jEhsK~y-6rI1f+6Hye!&x}_R8rskfCJj;yN;g94XJ|mA3qL|# zSvPfQ=%(Pto!z+b8x*=L(rtIybP+1`8Bk}S2Cal(6+80+Gw;t_7bVg<)6mib4<46u zfA`$$bUK}f#+Z#XO&4$lxvndS=!Mg6w?(~PZ&a&QxUPGt<}^()7!1(s^*)kPs^NJa zlu}m-0MGN_`+kG0wXoJ^3}M1JI<ffrQz7Wb`1EZEaTsCm)qMcKsE>>>VCD?q+4djE zFhLZ?kYNHDo&L{yjWHmtbuK`L3F?!K+qEL*rc1bYtAI!AAI^ET)*x$bE+7hHym>m8 zsh{<ZT|tIPZauTYg@EXqfYHGY4u^QY`2*ii4B$HB0iXK`*4`b%@5hi*ftk_TI>Hxc z0+?}7%>lS005jv|&N1E(Z{Sz4h)Qh|%#6nmrZ5#s+=(ULKB@ilGIKV;;@z9r-~El* zqJ!7VvtVYdE>*C)R2hE*tu=@UD@_k8O)uB{zl<@bD-e+{gn&}&T)c5lDFq<}h{&f> ssniOBV58gZ&R;k#M}<NmD3{BvzYf7q^N<`I7XSbN07*qoM6N<$f{%gjivR!s diff --git a/src/_h5ai/client/icons/16x16/authors.png b/src/_h5ai/client/icons/16x16/authors.png deleted file mode 100644 index 78bf784dd71815aa3258c3e4f6da9a29a6a681f2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 492 zcmV<I0Tcd-P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10clA@K~y-6l~S>e;xG_>YYiYlK@m9)R5X<AU)&$v{>6S3EnN;# z1PU5tB2l5lNcLp1713tnLw6&MWcj^$^PcRt-EQ}bnLkD39sf~Esho&@ziqeMe6?C_ zj4@D3{nN0Bpe#$A&*wknz278B0`Gl~<eY=G767nVEHIr;dw7y0D2igEnx;Y1G-%tl z*VbCpb&a~NVXYnD&pBddv~4@E>70Xz00173N0h_Npb$b79F0Z@A#~>$CxieMv){HY zj4==qhzPXSQO?T<MASw2n*(MZ3Wx|UmkVyUTX%mr9H6zva=Gk1byVPVI^ll554K&e zS2*XeUawyZR8`ek|5;U4^|;Io^%Qt^mStU(?+pN1mi4$%2WgrD0LrrLe&={RhA{?d znhqQgGb4lmBI*FGHMG`)2tS9J8H$LCJkR01kG^%Rz4yrT97I&mY&QEi9*>{<{eC@I i`JyJ1$#FiPe|!NMI%}f|m=mP{0000<MNUMnLSTYuP|8#Q diff --git a/src/_h5ai/client/icons/16x16/bin.png b/src/_h5ai/client/icons/16x16/bin.png deleted file mode 100644 index ec2220bca3f04ab441c1931b9ce919e8cc5be2aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 551 zcmV+?0@(eDP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10i;PpK~y-6m6EZF>Od5R{~cx+!9p-W#mZ(c7Uqgp7FNOqTMOT0 z_bv8$1R;gkSZE=+K`=HpqKWB5l*~+KizQ-=#d^9kbI!*(|9{@*^Z7q1<yRcXfAK;P zLL5rz$J=x|b!xSmRW6r72>DfW9LMl|AKUHrKaHZuG7JMz6afGhiv>96IGs+&<#K4Z z+n7uyI3AA}4u?00VHof{&mu}GD5apahSnNE5TMa$fH4N&_o1~$x7!7PTaDHlNgt6? zrak~*zu%)$sbt>obFDR`lpsQgOyO>~L$z8>H9Z3eAwcfO*IL6gO<b>6tX3<ON+l?z zFdmN~rNn47O0BDu0!>y(qSb0;RPXousXVEdQf2|K#8bd*HpAg?z+f-{04$eFaL#c) zpTQVIv)N1mGA?vFos?i<7@}UUgE59M46`mg0v;6yfFKB9n&xvGe*;MF;?c?*;QkhD z+eRG6ux%SkDHMxETrL-^*Xz_2LWmy`DW#s{IDeA!?e%&or7g?KSSW;m>$;$ndNiNU pe{MFLFV}V7U$KyLz9|$6pWlLsoc76c7nT43002ovPDHLkV1nz3;XwcZ diff --git a/src/_h5ai/client/icons/16x16/blank.png b/src/_h5ai/client/icons/16x16/blank.png deleted file mode 100644 index bef1f600664da97d487c7dc4abece6ed50b9e362..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 227 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~rvRT2*AE}w zegFRB&!0cPfB*jb_wT!RZ$5r}|Mly)PoF;g`0?|{k00N^fB*UO=i9fhfByXS@87>) zzkYrD_WkqcFJHcV{rvgk|NsAIFS7yJ$ygHP7tG-B>_!@hljQC0!qCAg>jC6&7I;J! zGca%qgD@k*tT_@uLG}_)Usv|qZ0rKu<`1uiJOm2ydb&7<NL)@%kYGIlG(v!Z@y+zd QRX_;_Pgg&ebxsLQ0NpxbN&o-= diff --git a/src/_h5ai/client/icons/16x16/bmp.png b/src/_h5ai/client/icons/16x16/bmp.png deleted file mode 100644 index c6f30443cbb452bc30573dfac8424504cf0e82c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 663 zcmV;I0%-k-P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10u)I^K~y-6m6FS9Q&AL#zrD{sm)zCVw$wostst}oAHjjoA-;g4 zK7@mUb05KhFW|5s7E+KJbdW$BgwmqDBx#b9voFg*S~`<vjn-s+d~2;=wcG92MN#aC z$QBEfQtBW{l5MrSyL-@TwKi8)R?u4CX*h(y>FFu`e*cFliej_bY*G}(A_6p<O}gFg zrg6^k<>wx6KYxI1f{H9+Q)F6(B7<29Hbpsu3K1&IEkC_`gL4k!oa1CTqP(_@N@oz~ z_&h?U3Cd=uq69^G-Uox0IpFMSOvO2jwH9BBs5MuK;y}RRVv8wTGKo<kMQoKkub@aU zi3X*xI$*7x8(>miJ%7pf@iA2$b3Qns9xTgQf|i8BH5lY2CXy0WAT<#-miY?adz3aD zstdMSPdFM}u&N*OI8JHAIZNphdw;K}m8+Pj#9A}On}A#@y!Y1zfQV)iJW3*-RUXkh z>(fXh&hiPh<N;G(CJ0Psf%EYce0qCC?G?j6Gp<H6#0p<0Bh*Y7C?Sm;xf>t^P#&TH z8qCuDTR?0z<KrpHfCM4Tgiyo~1dRhxz{Pb01%UXTVtfNAJH_yDh>Ac0h!w=E{|3pw zaJL4l^#-G(lZBGFT&r<;^M$RaEq;G|zYt(F8u6?B4WqU0?(grfZ)|K3$MKzpt+jMI x9kkY6Q>|9Fd%fOHr_)(q#30MEZoOXL{s(i+8tc1-%r*c3002ovPDHLkV1lUl9MAv& diff --git a/src/_h5ai/client/icons/16x16/c.png b/src/_h5ai/client/icons/16x16/c.png deleted file mode 100644 index 12adaa37ec9ca45280c2121ec2d6cb568a740175..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 554 zcmV+_0@eMAP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10jEhsK~y-6l~OTF96=a;Gk$j~cbWq?a0F5u31=Z(OcT<EptU0S z3xwnk#NIYwkxD{33$c(?DUu>-7E&#dWIQqMHfQG*7fw8kH}lO*sy$iPp!dOR-hA)z zy~l_+ju)AE(>eD9V~mti5z!kFMUiSW8m)T04k_iG#LhW%yIpiTodeQZx56-l)_R-+ z5QZU=Bx#Yg7S`Ia!~l@#h?(KN&prN1hWHj=pxa}VNMP<!8OtxGP?^j}WM)WX47~Rv z{5ZPA`;UDDC17=73X9Jx*#AAm)?Poi=e>t924t<xUGVw)0MiwL*DEz-oj$lffwO^y za~?wEV-zBsoN7Fs4IqR^Mn8T?00_VpmqjQTFaz57LN7NBGec$u8R|0<DjmYG8*x96 zFR}Oa9NM_t?u`a3FRM818Eky$A=<ydr)Yq;+kX%r{>6ku!JrUfzFEe`s~PNkImf%* zKFTG5XLAA8mhRoHgUn>U85S~M-y0biV?ac=mUdmt%#cKsD5apaE_{^#L2C`A6o@FH sYPGtars-z8-ENL^K@bFKtyWwA2O0}XC=)O7{r~^~07*qoM6N<$f`47(ZU6uP diff --git a/src/_h5ai/client/icons/16x16/calc.png b/src/_h5ai/client/icons/16x16/calc.png deleted file mode 100644 index a03436733fad634f7c2128570898b06614c587b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 506 zcmV<W0R{evP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10e4A6K~y-6ol(6?13?&^>@CEAaEOKZJwYu^nKmh`d<!2zK`RTf zu+(SB69{(J*98mpEJOuKHXb=GL?VjZe&4P|$eBMAbYP45mYr{AHg$S&vZJ1Fk6u4I z835Sy_F;^{EC?Y2DdleJ_-yNQej%MH6;|K~2OFhrSZk*~CL*-kZA4LYBVXR0GWpeY zgzo{2W$3I%9LEqsOclxJ^H55aB@v^mBN)p70IfBA-=7(wR;z)TA(<G&I=SfEuU4zc zOeqD=^Ahg+KCHDMB1j@mwhs!7_ArTSt$PlPVT?j4HI-Xydl86fqJv_wn9Ra3M4?bf zc&pX=iNIur{{1fzk`CC8M+n1kDj#q#+(Ca+E|*JYQ4}GY&HfUB|NjdUJLsd)XbkaY zvpHFSm_eE#WC{S_I1Vb6%9!9NwALUZh(&klE4=SQ#{^>-*4mjTj$;Ht04e3YTw5+5 w-aTF&T%LF40HA(d2NBJ5kWQx`T-V+E29xhKZnxnR+W-In07*qoM6N<$g3d?CyZ`_I diff --git a/src/_h5ai/client/icons/16x16/cd.png b/src/_h5ai/client/icons/16x16/cd.png deleted file mode 100644 index 3a3ffbb9a8df12b517ad5dcf110db463553980a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 757 zcmV<R0t)?!P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10&+=2K~y-6m6Km?(^weAf3dIs#4dJPCv`$glTzpilvD!529Veh z?1ELW23F9KK#&=Y6f#JpNTg78nuazBX&T4Z*O#Y;hw{LD&*%J(&L^EhyWM`8W!Z~7 z&-eHrXBb9D2=T12zrWvUG#afqjxh}5x6FB-GZ+l$_xtZfnx?HNib&IRDfskHo59%- zEgVd{h!7U#a+&Sh+e=LpMf7^TmQYHelmZ}07Ia>}q+&Vj)&Ib%#F$<Q({%WDHlh9Q zFPg0;uIq5+GqNm0YmL^LKmUG3-0+BN8DiQ;Cr1?YH-vRTtr~Fe-W@)4|6S^{EJH{s z(OT2#edM!IL`sjU91$$0(C=ej%n8?Hg5oNcD6(1#>3=??-q=D)iBL+RwPtv-V6(Wx zbT(r)mqZJTt@;BBz|qlHYUKpaF5&w&{~b@zb&XOAaaAGsu32Z5nGQLfN$&66Vl<i{ zft!^b&cD3DF2@+z3i5LLv%(dCKx4*|itS>1RebLTqtOI_Lct{&jw$2{BX@D;#&v-0 znWTA&ZCiwHk<s9o&CN{~GU4s}w+PQBvd38S9LK3$2bAN8^V1QfwGhuQ5|jeYhv%H0 zT%vW2foo!N#(Lq9)%ug`fJ$6uI=&!N3d^<ujqk6pvF5^w%OuhCk_D#O;%@c!FMa^r z+TP&g_!MCon1*06PmwCaO%&!-u~G_n^!V{ozXV7r5kg=JlZ~w!<Fg6l(U952C25-C z2$zSuRW^1i0L%0&%Me0{UZ>O9Z8n=&mIXk#77(rl*G6=eETyE|?IMKe3E%gh9~>OK n=ytnze}By2IL<*BhR=Th5K3mOu?hx200000NkvXXu0mjfuwq{N diff --git a/src/_h5ai/client/icons/16x16/copying.png b/src/_h5ai/client/icons/16x16/copying.png deleted file mode 100644 index 83fa06e611927106220d68018e1a4962581bf9b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 699 zcmV;s0!00ZP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10ys%TK~y-6m6Oj-+dvq^e^_g5u(1WU0R=~L4yllUzD3`tyai9i zm0RiqN|X>KCm_LpunmgW-d-9PDVKImdzf#&nc3aFhlhtBQp&rwZNKv$&@^o%g!s94 ze}6xUqUh%A><mrQ{%N>vTb`evna}6H#AdU(@jQ>sX44UpBq7gpK0ZDGI5;@KaU711 zk2{X%d5p*78__fkP168S*EP%KlCmr@O%vO;0jR2q<#Nf}+Z+9UA6?hk&S_Fglu{_A zSS%J)RYe$v^!t5G(?r*G&d<*Y!;q?~SS%JDUrLEq*ELEhR;v|xp402~kW%va_{e&_ zrYH)g(<$%o@AP^-@;qm?TA`Gpu4_coG$^G=(-gxnI668aj$=H}<Kp51fTAeKvJA&@ zFbsn<O*uI^p=lb#HbPmJxUS3R=O<E19LGT^1%PE)SeDflnq^rRp%d7avOTwL+X;Nd zSDuveZ;7U9QWORI`}=5`*5y=6k!2a<@fay3MNwdy=B@+Rb(zoSBuPRThCDqzQI;jT zu9IaMK@gCpDMe8bMbWMU-}kX?o7rrJQi`jqD}3L_vMh$fA(mw^o6WFo8{hYL9RLgl z1E$j{lgWg`!^7?&y}rIuRTYloFc=IvekV}ZH9`n<UFY)hl9!hkk|bfhUISp;Hc=FD zdU^`bZI@Cagb?G=X!Py+`Wju=0SJPCAP9DDV7s}lYvMRY2r(9xW!+9Dle;*MhyU~y h|G+SeiR-$zzX2iqgr4AY-?ab$002ovPDHLkV1mmKHm3jp diff --git a/src/_h5ai/client/icons/16x16/cpp.png b/src/_h5ai/client/icons/16x16/cpp.png deleted file mode 100644 index 47e8b1e2836361ce5b6d4dbf453699c8f6e1ce91..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 599 zcmV-d0;v6oP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10n|xEK~y-6m61PaQ$ZZZKkssBf<c1>2@OSp)(-ko|A5u0g3!UC zIAwDcO(z9Icb$Yfh!l*Xn_vgQNm~$019b_tnm!Q|g%FAm6+|5jclX}8G{N|iQV)K^ zm%Hzm-}iG)rBazP#>@plFwTD*Aw*S5dCe)8%hhZ)n@gwD2qAW44uXJIt3{*H*bqvo zTq>19DMh>84$btfk&sqOvE|7L-}mu-A8T!B^7Eqr<mX32y5keZn7(FfEenMj01Jg$ zUu}#*YOS%>4($8*@`s-LzqQsH*;yapZF7m2?;q0o`H5&G&f&}?=TFSCYbe<_yr;tJ z#v=Dut`LvzC4cfdQ%7ca(_E&sJTtJOF$UQQSn?jQJ3h?CGj|Y91c2e>7(af0BM5vP zC;Y`d0h`|&jE_v>Ai9+f>^t6l+>cXFKwt&N54Hu`FQCgHz2_kBKChvD)$O>kxysY^ zyC~Bh$e<fAee@Dve|_QR^8&9vK4Z~)#O)VF)|;zDM09(IT5H_QX=cye<H=fy(#j2n zWSnFB&vN0^Rj^>Oq4kY1NGWBlTCI+`u8W(Qz|BmAy8g>WYmMi5NGWSFkw_Hl_4=IW ld53mP4~WHL^<*+x`~#+Yf@-qG!W94j002ovPDHLkV1j8j3{U_7 diff --git a/src/_h5ai/client/icons/16x16/css.png b/src/_h5ai/client/icons/16x16/css.png deleted file mode 100644 index 15f76955743addaaa08ddc7b235ae51d4eeed69f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 592 zcmV-W0<ZmvP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10nJH7K~y-6m6E+~6G0S4k7sARYa81lYiWVXLLx#UPJ^JLrR4!= zkaz$ZNF93o0K5jT;MP?ZSL?>DQM8hSu-7|(6a$H@gv8u#r1{R=bMG{!)9Gtt%-A`1 z%zu;+B9~HrYD^}Rd^jAAvMfUgu~*nR$8x!3u~>YUbzP6rG^H57$NVe-klh1@AHLoS zNz;^~C`Qs+i?x=Au0(Yk0BBd@y}uRkHz$oTc<)ip;<sA>l#1^J02pJCT5G)bh{w+n z^#%anY~l6*XswafTD<oZ(G<;j=pY(Uo_=F{u?8USwR!RR&5atD3R!!J{4)b%mvqbl z&29!jZS;*w#+WOB5MWJE5K)430$bGp$YyjmKn-4j4J{M3X+2HxTMIxV-UD#@L$j)W z0nkqrXKKZ{4qF+hn8WcItBY{%_hP<$Jl+LV57x9*0zjqLl;tC$dkTQkXg0J+?l%G0 z*c$KsF2F>VwFwH%C`KBns_<eW1<p%0o1hdcxeL%*^Q?2kmMUBzp_e7Bb?|Ph23aGf z(!o7Z;SU&NkW$Jb&-25#NAFNdT}|lawV7R()|xz@A*C#2r_(u^&*$UWZ1&{ek?R%5 e@x0&fpZo^kWfm3frlC^+0000<MNUMnLSTaJVgT9z diff --git a/src/_h5ai/client/icons/16x16/deb.png b/src/_h5ai/client/icons/16x16/deb.png deleted file mode 100644 index 1b12d290486699dd437e0002d2533a328f10d4bb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 671 zcmV;Q0$}}#P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10vt(1K~y-6m6K0MltCEAe>*$wUvtZ?wm%2WiVn33Mqp49)E*)t zNW!RYMK^DGvkpa_JVl3&dGU}PyF`az4^jw~UtZdc+@KOQDN$FQZ@%yCu<hqA8({+j zGta!wZ=M%sLK71cIcx2(@B5wn$52W+TI*Y(d_M2Ax3_0AnG8y)O__b)XLfd$QmOPo z8)LHRbQ)vKM!{m4rH9WckBy@{GU$C7VrRODpX~+}0wA4EQz#U&+Vea-&kM}<<2UBd z->2zF8>t7^!1wVN%lx`M%F1Y-^pgS5VX8iDtwlrtkX6IN^+&Ya=_hfuw=Q-p*Tr1# z5G!NjBrcz*TxKoGbzMXR5n*NI70DYp;#W>0B6tf+nD^6&?-Sb5LcFgB@w}kkbzPKK zBdoogBzEaIB7(oVj(PVP-Pwi!B0|&A4!rL_gZhRR5P@h@1+csZiO9wo;Qd%4aylDm z)>>2*AR?&kTY`0{wHf#Abg;Ky7x3p6D~YO_we<<q?rqrO4B-R20EnFHru_H?YG;a2 zbBx5`g}OuyfJk2t%XgpBGBQvB?rkM@GZz@7+GY))u7&WSJ*do9+{sd){cAP=M1;h> ze%7D8#(tXFJfQY1hz=7Ux`_8>9`{WVf6e^W?7D6RptUYIj)O5Zg<*w0b(rw6{SeU& zW@8MF<Dj)J=wvcESS%KYr>3S3Zt5%k8PRC8m`bGve*<pMvWS3%)BOMd002ovPDHLk FV1g}vDg6Kd diff --git a/src/_h5ai/client/icons/16x16/default.png b/src/_h5ai/client/icons/16x16/default.png deleted file mode 100644 index 699722981920538a0f32d84972bf58e2dc36f935..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 311 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p zUk71ECym(^Ktah8*NBqf{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$mfQq(wx;Tbd z^uF!a?K^BB;j;Xi2O}dR+d@U|&D&q}-irPbvM}+ULVL?IuKWG5A#vfY)|U=^Hz|(1 z{xvJDKj@Ucl#r8$O8)fJ$V(=^pDp@06!)-B4=R|a-uL*&;*K+hZXF({8IDLyES~rB zUBP!X35GbCvpid`r7<$hkX*4!o;yUe<a<Bs{hc55e@t=+b=)LrX3R3law&_T<Jzxl zyEuZp6lUK1{<rr2_v71g?RB|#t-IZxxWk^2fB9~2n^RxT0Nu~v>FVdQ&MBb@02Nbo AR{#J2 diff --git a/src/_h5ai/client/icons/16x16/diff.png b/src/_h5ai/client/icons/16x16/diff.png deleted file mode 100644 index 5bef920766b333d4917efaf794b054b46632771c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 586 zcmV-Q0=4~#P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10mn&1K~y-6osltXT2T~$zxQ||M2N#1q@9!yiACcZGANi<T3Q5= zkfFt;q(8x-wzNMX1~NI94AR&P5wd70MXcc9BKAS44%(>*9Rs1h``+!4`b3(7@xbNY z%Q@%cJNGKxZuhYe;>dBFZEg{&s`fQad#SWqt$r{Vj0FM#R8?K7*>M~ulL_PT_^URZ zPGh>R^XTM+UBlo@ug9)o@HP_R*ZVAY?>zuu8h^C_(RH1{U=ULpjfPAnlee*Vqtof2 z2_cYDl07{oWf-)3JyM3jo2@Op{SrUFwYU?x55Vv3;sQVjfl{m0WICN*$)MS6qS>~M zlyW72ZQJt^a%X1%q~dX2hr?LUE!MN^T;;FGeav0wHdC~RZ7!Z%%txqHDl(JFtYlEH z*XIU>LX|{f2Y`HjgF>MSKq9e2KEH7zKnO7h93MY(6F1%e2T*5#*|HC8>;s#%>Y96& zQnL4HkHhidLhXXVER=T&0GC{%JXKtS^M~jE*tiCkWw}(}2OrK0XJMC8vj2IX(vOl` zXIa+uFO<vW@1amA9F0ctcsxtJzGYdMrpahD8fZSBuQ(hIk4)3tT&nwTc)i}C-|sK} Y0gYY+-^ZXOod5s;07*qoM6N<$f=^8ZdH?_b diff --git a/src/_h5ai/client/icons/16x16/doc.png b/src/_h5ai/client/icons/16x16/doc.png deleted file mode 100644 index 5732f9b24d0b619fc12a5a0afa1785ae01828998..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 535 zcmV+y0_gpTP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10hCEZK~y-6jgv8J+dvqG-^d4!0*zw0TLdOxIq4L-*(OVVM92J! zLOYhwAwMB|m;Qt<{R6gF1)4NA8KgzT3Z#%0<NNNu49#66+evyL5TA7K^Smdt@$Gy1 zVUo{I%ey}z0307FSZndx3W6XNLVVo#eD>q-)|*zi+m6v_1bBa_z|1dhCL-i{j-n{e zMN$3^-?jH~UCd#bq4f@k=v9L_j*(^AfgodWdv9PLsmu&!#&9?U04Sv}o6Y=2r4+i| zE|?j{7zjfIGEbddz+f=&vm{AsbXSpxAczdAXXXN?)2Sy{Et~-WXsscPC9hu%Ns^>S zuHHL?#|j44a_u2AV>BAo=t`-TDntZfjDe{LxPX4Y?`NG(r$$~1pqjzD7oS_+pn3+* zU_2iCnUoR$P?ja6l)lPSz?!en>-AQM%T@jb(E19_KuYP!aU3HI!_^9!2th+UYv9Ps zbRt3^Tif%S>?cTTSj#@(rE9TRAWc&UA+E&Rz4*(;ul(e4bg>BlUv>0fKU1^WoJ3Ld Z=>bTwJbCQ{8OZ<u002ovPDHLkV1oZ$;#>d# diff --git a/src/_h5ai/client/icons/16x16/draw.png b/src/_h5ai/client/icons/16x16/draw.png deleted file mode 100644 index 8f1da5c333fd0e97559e809da86928bae710b4a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 679 zcmV;Y0$BZtP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10whU9K~y-6m6Fd((_tLPU;FyZ&3z|pebcdoF|{8yH#0n#2oXUL zME(iYy@Lny=&7rx@FX6Cpi76MkRZq%SC=^vwhS|j*~&w1V&CWaK2HbP7l%{o4WHBJ z{eJU)f1W2$C=_lhrRKHPBm4&}%PI;X9tT!dR*LC#I+sW!uq^AJ#9C{1c6Qj@+*}o| z>*gHC!F64q@T=P3!^;h%tLYE{MsM_SA$P9D#Bm(T<#JAVo`>goEz9NS>)gDPqstC) zP<L7V^p&^I*0_6rnEs3dKvO4_QW#@e42&_@-C>l}SREZ)o9L(Saug?Nw{VqGSW-%i zF+`@P5&1msAB9pL+B5!y&%n@FFVR>h#u$I3lnBrBFvifBo5R}MBeML4vHDL6?>b2g zrih=l3CDuRQZ{S&6-+#ij>l1{6hpTTs6TzptB>1E=DJB{CTXKTtl%3Q866IB<<UK+ z9$ZCNYivDPB$&^`{ys))pLe2xF@|s?NNO;_z|<7)gTw5e@26{Ffv%;c7K660&_ul! z!1D|}Jq{Z`6p@)3(3)nSQxmuia2p0sX})c3)02!I?gD|+6YSRZ__AIll^me@{Woi? zWwO_k^!CM$CG`!Yln5aJ*!o=K#bTb!=r&FwN@k*$(TQ|hu~G^lgeVt_#Y@?2mS8Z* z$atEO@rTEL=21u~DV0hHA<DwG?b%ADGG8i{F1Eeo2?&Kkl~^n``xob?ZA+kcOA`P9 N002ovPDHLkV1lAKF(m*1 diff --git a/src/_h5ai/client/icons/16x16/eps.png b/src/_h5ai/client/icons/16x16/eps.png deleted file mode 100644 index 93736bb9783b73c8c373fe8945e6c6454eba25d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 619 zcmV-x0+juUP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10q99YK~y-6m6A_uQ$ZBPfA3||XA(8&QvwxBHZBw*NZkr<3I)H0 zi!QnmEbhDNqF=z3xbY*DSg>GLVg%b~OeINe0(FsE7yfI_%-k6lX%k*WF#~sT=iYPX zoI5wD*XwiE+EwS=O(r;D7$!=ohe54YOUmVPrBo^rhT(sKopbd2eY)N5JEgU*#Bq$) zdJ+M|aZIb#swfdbL{i1z`!2!H9zKfk7b@fXZyiuMeEte2IAyKHd!P3Ac7<U7H9>R{ zdv6_rp|#A*`}ngnxVujQu-2lCF=+z*6}R^aKQl+rtKvUz!sS~-!0i?M)HyirH^vZ( z2;Tc~^fr)R8h2v>acA(m>!X_6e2i~C8|5NGcw%AH)TtuTH2!=U7tbP{=VL&B8~L(3 z%B{7h2=ou^#~O}2viSrV43L8!ZvXv|KnqSwiXb&axAOuyJc7e5*xMS<rBx+!={jy8 zV1)3v{|^PGxrVg?YN1Ycu|amRf#jyq&9&i++9IbEj0wyUdV2#(vk(>WnJIi`is0%U z?57XN!45JIoN<4#kcr4YY67IbH9Nmdc77Rv+=Dl%`iQ_7gHmduRkqd+Ehwd0Ns^$o zPVd7%LTgQuBq*g?s!%8_wcG90Mx$|U5(QBdwTs2#(r>8_mTss2=MMk?002ovPDHLk FV1nl{4xj)4 diff --git a/src/_h5ai/client/icons/16x16/exe.png b/src/_h5ai/client/icons/16x16/exe.png deleted file mode 100644 index 31299b7f4a44636d7fe5eba427e629e0fa221c66..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 846 zcmV-U1F`&xP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10?SE6K~y-6U6aXf>Sz#!Ka4FK2$LZ(AS8w;S)insd4t~Gr@4=D zrGAAxOLkFq=_o=$Az=o~7zmSx-~M|M2`ODtZR$v;>KvU)JUu=AErj?J$MIkMug2ps zo6UxLy-q%#2jFlxFq_S|y1IH+RrPn`;o;%A*=*igmW84y0344;j>jWW6p>6Oky4_n zDgeIk6Gai*?Uv<o`L7xT!ELEjA_#)h<}eIdEEd?dO{3AkvMl=jK91vHnkJs-kxHfL z^?J8T6h%Z)gp~5snx>J@=ZWK(IF12GrBcLkjA0lkih}F96bc1YAp}y&AKE9A3B%zK z0Nb{yR4M?(aeSIrt5rPDLk+|5M6lg%$!4?EYBem&Vl)~tolg1u{KR!#Zf<Va@As@$ zD>O|b3`3Ope2(KdY&IKSUtf_@((m_KEEddWGo+MECKE0%FUe#wTwGkxYPFb7r>xiO z?+f1F-!Tk>APDGoyEu+RtJR`hE|X5D>G%6QKR;70mpMB-BZ?w~5PW=mpe~n7JkP`T zeRN&Nw(XPl-EK#*SOlO}t1%vrPq?OO-zNIL&-L{+g+c+}_c08E(P+eEGC|jMN~IEo zLIKON7z_q<IvsYq9j@zQnkH(kR%5r@(d+dPLXgR1Xf~TDio#$ppxf<IEEcI$Dzw{e zOw%Nn%aKZ@7!HRhQ4}#43~0C8+}+)gPN(VhderN66h$GM&C=;~kWx~uR*_PYOeQIp z%LpM*9LFJ-%W-~wj;3ien@tXf1FO}FbUMv?z2@=p5!ZEpgiT6`5CS!sO!D>hMI6T@ z5()PEJyJ>x!(hMPqw6}2MuTiN`y+5dh;M>Ysr3H#_I9ah8m4Jt+cu_Y5(ELB=b`I5 zilU$>%84KhLtb89P*wFUaesgR%XQs<=JR>m^SqNmqtOT<#OWuh)#{J9>$={{=kve+ Y1E?XCEuTb+KL7v#07*qoM6N<$f?)xG-~a#s diff --git a/src/_h5ai/client/icons/16x16/folder-0.png b/src/_h5ai/client/icons/16x16/folder-0.png deleted file mode 100644 index 7c613e054b15f36f1c63d3a9e68c29f95ccafbf2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 395 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p zUk71ECym(^Ktah8*NBqf{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$m7#J8iJY5_^ zEPB^Y+~~y|DByaYoBz@qH;>fxrAZ4@_Z>LpB(P=EDgGHs@(H<#3lpZ>Z`kgozhr}u z%ND^SH)bT1ai5(%GhLBQWyc2T{QCEEs*fL)cv-qlud%l7b=JzvYWCyXgSnn09r<cC zd)u~sjm4%6Nj*IA^G<%&VK7T?idg^q-@}t<*X`bS!!mnKp1kSw@GicynO}Y#d9twn zU2~MRr;y#f_N7ddR37@SecPNNW%oHKjbW;$qsiArZJrvk3<_C46uQEAI2Kh19$xYx zxL)`Kf1{p*fQxp%!Rmn0=E&An(lx>_m{_v@Z)oh|J@z<o^~7aM&rH^FKFVen@#fxL m`+05|Q#lI^7KFX7V+{YeC^&15#tdM<F?hQAxvX<aXaWHErJPRy diff --git a/src/_h5ai/client/icons/16x16/folder-page-0.png b/src/_h5ai/client/icons/16x16/folder-page-0.png deleted file mode 100644 index 604f9ad1c5699675c7d60af3a0b49da8e5714e10..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 591 zcmV-V0<iswP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10nAB6K~y-6m6E?}6hRcnKfA7X1a}h&7LrB?7?sl?Dv7-|DhPsB zsZ!XQB7cCjg@uAvA&rGaT4SN<g+oL^5b*~Hnh2+N<n}`DcHVnqad&&SUWoXGVP?Mb zec$=cV*>9zD@(I$z)gyHJ~3%GZry#Ku@3_8309WQ*vyGj1VIRZ_nxiI@3dN}18k%S ze7PKLEZlo@J$Uu#>Vxs)m+wp-J+|LPBdGuUM)T9g!^o*E#&Jx0d+Wap;yC8F+G6BH z6W3|w2L}$05k}>L*qb2P4tSq)Dj7~Ri9`((H!vv0JY9X9@53-)=46H0^Ych2EtrTJ zkrPFS4MdopO1OCKHUMv5uCiVG%DdOb>9ZG*b~D#HQ9=>JBpVFvnsw3|owSA%W8zSW zUz=aR`+`=apFjr*`Ua*B)r@nO79a>{zj)H)Tp>Z^L<>DIm3+=xb+T5Sa(pD`hP6(V zNW=;~(4K*+<osS7FnEH=;J5moz^kJ)b~s=6&xW<#1p0S^?t1;%I>VTrN>Fvh1Ztx_ zkoFFh`72Zy#ct!rXb)7Z+Gy10#*?HgYS!3o*7hhbqM4?sST%Cymp^>`eBZ;|KdXii dK$S3D{sRQuK3buqDUtvH002ovPDHLkV1kf>1jYaW diff --git a/src/_h5ai/client/icons/16x16/folder-page.png b/src/_h5ai/client/icons/16x16/folder-page.png deleted file mode 100644 index bd2f8b99dc311ab3053c728ce5bde799c121beaa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 311 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p zUk71ECym(^Ktah8*NBqf{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$mKn8*og=CiG zq%yeY<>#g<1Xt!J<>zE3D|ja7=P86_q~@mfEzw*JRNCq3;uvDldw23h-a`gFF7FkZ zH?}-3^f<n8s^Sf$$1~=KaV^qi`d=8|SyXo^R>+OTNQ+^?DqW>_?rM{|XKvlQ`L)F3 zl8UQqzxxSR?m6hHGWFpkNw#Zz3<vK1Jh|t3=uGpi*A82}^E1v~)g}3<l*Kq(W%_(Z v>6GZ{!uPwMRTRg+jQ+vw@JrM9_uTn6sw~9cM;><sI*P&5)z4*}Q$iB}*dTH< diff --git a/src/_h5ai/client/icons/16x16/folder-parent-0.png b/src/_h5ai/client/icons/16x16/folder-parent-0.png deleted file mode 100644 index b82d7a992d61f84dd2b2a099b76e3b4bb4b2c7d0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 494 zcmV<K0TKR*P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10c%M_K~y-6rIWo%13?spzuAo=W@1PJ7C~)<72HBnS@{TCD)<&Y zfyLqz*oyD4?_evWu(Pp<un>zaf)kBl_gc8hW;0R51DE+b_YC*U9VH_C2aO-j6tE2l zke1^TydMO*K@gk-L2wFmSF%LJ6>CY743ttsrPMG<l7Wb<xwxwYc8oDMz#VXBjJXk! z9T(SC!e$gjN7mW_@B+M8YX?yj9RZt5M%7-yn@lEqy<YDs&vU<Gobr7?&$8^i-EKbu z#VQlG!Z185lV5?iGG6mM_rowe1GW}!tjss!I1bV@JqEH;pc+}4rpIv{2f&7_gk59I z#dJDd2Xcou0DiOCoLOrxfhSmOr1$Z7JoG$I=JPq7PUo<iX|25nD2hS>?_c{>fpM$V zx&|1HMhC!tRiM#m+-j{K%H_9-^;RwbM5N%;yl>2AvqEcK)cEedptTl0jr$c&fquVl kMdZ1*J#}&Gjr3=H0E{cixm!I+_5c6?07*qoM6N<$g0bhzSO5S3 diff --git a/src/_h5ai/client/icons/16x16/folder-parent-1.png b/src/_h5ai/client/icons/16x16/folder-parent-1.png deleted file mode 100644 index 3c964f195ff962b9c2bdfbedbda91f3e6505274c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 621 zcmV-z0+RiSP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00001b5ch_0Itp) z=>Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L00!&;00!&<9(6c100007bV*G`2iyq{ z6d@o`g*sFK00HeuL_t(I%axL`ZWBQehQHa}3&NNvkqNPs6hTOc;*8R`HxhD+wDAkL zrh*5s@&KSKXe{|TEJZ@1qe+J-QbwY{M4%MJ$>H1Gq2Lmok5DkuYFC>1XXfAk7XWMR z9pEni7gr&KUm_y+fS0Pe323E2fCuIKdp##2-+*^cRa?L|uu_|Fe>56B12{Z9`~>{0 zCRKGCXt{DyJzTrpULOvJPXNZ_@t4_bb_MuaotVnH)mWQMCcCPdsA@8qOm=~_IvBv* z0&WZjgRL}8+j*Xo=Q(Mbwg-d37SO0S5#SN<8b|=+oO^hDeEh;Ww^Z!CzwCCq@4feD zKm-clO`XDOmSw4PuCZ7ws2=BBBg?WBSp64;l}@L#(d+eg=JPp4Q7oPLd`_>|+v#*V z8x_SwfXBcqpnY_7^t{<@uE!W}b&fHHi;Ii%y}i8;zzlfnD*3R#zduveug<wRoles# zxZm%828@UZ5N`A?DF|@xz5fVEk|di&Q7koxF`laGS?S1djdLO*sy8kT*Z;CuESA={ z){6H&mI~bX`MQDBrco3{P4K@AD<UFJRdZ{tSJj4yAR>70{lUS(Nv%3K=ZvZvRYgQD zV~n`~))@2DTH7+lV6DX%Q*Lel@CpGS#25)7P~Jacj3>VVv7y(VM9=#Y00000NkvXX Hu0mjfRbvyh diff --git a/src/_h5ai/client/icons/16x16/folder-parent.png b/src/_h5ai/client/icons/16x16/folder-parent.png deleted file mode 100644 index 183c3c8edaa25f6cf9b91d7e020249b45ebe9e12..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 326 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p zUk71ECym(^Ktah8*NBqf{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$mKn8*og=CiG zq%yeY<>#g<1Xt!J<>zE3D|ja7=P86_q~@mfEzw*JR64`c#WBR9_iXTK(ZdQnn=`&; zO*7~bmN;%xma#2C=If=nL(6OXy-SW>nw-KsX;YK0i%N@tr`%#ihLdNK-oFjZo;%6@ zhPP(G)y;z8SC{hSwf+faaA2B{W_-KnkFH*e!s2<m_|~nR9Vug($>OFh-C3f%;uW95 zvpMC0g75!&8d+VJ%46}6V^~)?pCNAV>e#r)XZc^sCw#Tu&p4UiDJ^LA&Lp5489ZJ6 KT-G@yGywoBDRPbg diff --git a/src/_h5ai/client/icons/16x16/folder.png b/src/_h5ai/client/icons/16x16/folder.png deleted file mode 100644 index a8d601aeb3a269477b85a9e49c1d977c70bc6f53..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 255 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p zUk71ECym(^Ktah8*NBqf{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$mKn8*og=CiG zq%yeY<>#g<1Xt!J<>zE3D|ja7=P86_q~@mfEzw*JR2t~%;uvDloBZehe|u)thStW$ zMnxN&JrDo?|NnJ|h@p{@*}9mWn;2)yeE$0S`p2v`rgqcpYX)s?ZE^<;Y)nk1DA^kX mE~>oJ5Xj8d&)731EuBGTqtrZWvp$el89ZJ6T-G@yGywoZT2sIP diff --git a/src/_h5ai/client/icons/16x16/gif.png b/src/_h5ai/client/icons/16x16/gif.png deleted file mode 100644 index 01a2f2a8f94ee7ec49e56175eed2207b05f16bc2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 655 zcmV;A0&x9_P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10t`t+K~y-6m6FR&Q(+W^zyEUnUT8|>h}ePF2??0inNxM*dzknJ zhQ}a2hL2&QOd&yRjHb|}iV{>1IBn_quMTPg6BD|JJ6T`WUVDk{?d|8*+Rc>GBjy+( z#GWx`Lu_qr?X}zO?#jvvQpy{NV~iXhA2S>dKWb}jH_vmdweuJt&vW|yeph?%8NPeV z?yHw%0aQwODR2^;f}jLJ3ZjH~&EV75Z}8ruz4uH`j(E^E7zM&5%5kI&kZRzSz$HNx zkkl1ma{dc18))YovgTP_tD%epn=qG-g{dRBNYs!_1#2CuCeU?-kOGmFxM^kPK-D7o zlV`Y-4+z!3|NKE5MN$z+5=663)Cr+WRHK44H7+uTA9-{L0cC)4K>guk{7Ik8EF(je zczA$byoW0e(D^NbGU(PiNEpdL2m$H6Cy@{$lEN6IK;Ky-Tzn;pk}x?!FSS6`k+K4p z=Y-P%F>w`QNQ&w2Gej`~9~c$ih($>pfy^B7&v&8&wV;vJ3y^}atgiq*R5&{vBh8fL z5`N;a=aEnXSW*!GvJVIy5dyM~!TWLsu+uuHpQlJ8NCDh9;HT+76`JjD+iNG(ms;!& z=4;~prMvi}FS9SS*1NoTKbQ+p6a``L6Ix2y-`Uw&?Q}Y1S#~3_bB<oGhm^9f8;!=s p{{H@Euh(0h$3eAP?KhjvjlcZwASNs37oGqB002ovPDHLkV1nHj9S8sb diff --git a/src/_h5ai/client/icons/16x16/gzip.png b/src/_h5ai/client/icons/16x16/gzip.png deleted file mode 100644 index 99ae6fc6677bb9c0b47e740778a315a56b1fc3c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 551 zcmV+?0@(eDP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10i;PpK~y-6m5{ND;!qTZKjTfnLPfC%vc+OQ`vTf-Cn;?9MYh<| za)fR5F)V^_AgP6rPQ(?aRuYjUHz&DU49YC4yE8u=xaY$8&UbHZv)O#rTK_c0eBn-N zwHo8`n8{=Uz;d}{wORp$j^lhM2!e3C-I^@ROi>hnm57*rzi*-_GEo$ne!p+>JU83z z)&xNisx(cXT-QZweNTXTy$(R9)4AP=2(IgLI2@joh)|a0-C+RBvH+OR=Y(MhfH8)$ zED;ebtu<v?J}hGl07@yQ)9D`otu-pob428!fl>+p&-3toAAqW=5E1e`$0~~Ap9a_X zzK`d5x4tY(ilRV?2vt=*G`Qxi!CMP;Jv@qtFdB_++ef1jBEogCs;Uaxw#l;WF5q&x zuvjc^e<31VE*EUueg(vFjN>@;dcFTX<C<o(Ns=VQag4Goi`{O=`Fwsi;0m!U3#GMY zFc{EkwLSz$l7#ho{c5n^?}_91Lx6U>eKUADolc*I!y&e9ziYTC3W6X&YyDE2&1T<@ p$K!LFrk_7z&}cM%b-UdkzX4XSEHy8yRp<Z!002ovPDHLkV1h;6?ic_7 diff --git a/src/_h5ai/client/icons/16x16/h.png b/src/_h5ai/client/icons/16x16/h.png deleted file mode 100644 index d3c7a9cc2378073cf2785f09356258e77ceb5fc9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 504 zcmV<U0SEqxP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10d+}4K~y-6l~S=v13?gdw~nSr5#+?QQ4nlmX>DVj&dMLK&`LkR z-Vg8x#2>J>NNKb=gOLkJ3L^wXFj!o6XLc+uF?XD(_h4X$+4p#Fn4r_?>@xG2_kIf{ zV2p`~=s0M%+fk#@Xx8g>7-RlL_TFPO8euRP+>^Do8HOROwPg$-3`4|m+$0f!h?F7& zz>H^@8LFBq#BW&Gy992Y3$tu7GsroYlCoeA{j^Y);w%H_9E^w*)x8HM42Xw10fysm zv22M5Xci#{@1YY0Zik@LYan6h`ZD;u1uQMhjWYkd1NE9Zcp1Z9?L!W>5%gXW+zpF6 z_|bu+4rFHyY63`e6=uTFk0kfE-~f-W(8K}L9jL){hO`%7aF7#NY+V3P?@+JMEMdA6 z<)T0?Lh^7pPtiL{AF9yJ6(pHH8-bV^&N&d#AGenWGp7-VD2}2C*4kgME?d@GL{S7H uim6(yp7i_uvu?M$QN}@~Qt8)fwUaMf+?Y_t!-v=a0000<MNUMnLSTYx`p+u> diff --git a/src/_h5ai/client/icons/16x16/hpp.png b/src/_h5ai/client/icons/16x16/hpp.png deleted file mode 100644 index e5e52e2506572c56302fb7c45bae8baa1ee01da0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 530 zcmV+t0`2{YP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10gp*UK~y-6m6EY;6G0G$zg^CD;le^L+#q42KxI?WQ&Fa%h=h28 zq)(oJHk8LJfLmSw$*l!NI0@pDunS0J1ql%-&bzZa6tSaNcLwuIQ~a9wrEg}}jK||A zB61vKe8_*uT6>Zt$)OpIMkn2FchKo{u-0xBjxjQy&za3;AFXq4&~CSJ&QTOasdiu9 zDS77{%gn%r5C|cls-@aXcL3N+cS?Shvm#O%R#k=v699$>lS(flB;I>eb>qHo_D|RP zH@){BTZK>lo!YY@X8d&{ovIQ-AX%-jCW+{8hx+hWIuWV90Wrct(4eRfaCV7GEX|2X zHGu|27lL{JjrxmsPzZYOHty9f)NlQpK$irZ|Dt&N9KZhv^XUTf;cQES7}13g9^XZ+ zA@)1yLf~hyHd`VvpD)nDqd~83V9iyJrI%15up+|hFVvsD#(ep4O`suOue9b>@!lgM zm^4jKd%fO+e!owxR@?YwH|4!2%QB|Z=_F}3n@4$`A7@#1f2;ITjYcDHwOU7i0Gj*9 UdQ9@X+yDRo07*qoM6N<$f_38LfdBvi diff --git a/src/_h5ai/client/icons/16x16/html.png b/src/_h5ai/client/icons/16x16/html.png deleted file mode 100644 index 2f94a7846c6e7061642b087fb4ba720df23d18c4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 770 zcmV+d1O5DoP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10)I(FK~y-6m6JVhR96s&pL_1Pch`IO1N*MMXffb`u;j#!kWeTP zNtY-RO_V+zKLP#)6{1a%KAj~bh|*Y*QWzw(*`Q?Cg~17CZG$Y^?BaXQnW5O&6ixwC z&-={GJ2TPh>gw0t`#U1?IUf<mn2xpfR<yFR(wUo^TWYmh7-K$2EFugB1J>8q|FA_- zEaiDlQ4|0u@bK}!Jl`3z@#=u{Gd0fS8F@A3i%a=2B+qktz21@yArL|U;N|X!pMQHs zty<=j_9<G;D($I^Aj<E54Y>d4IXAzVr#)5SNN2qFs461Dz2&FGNy4EMW}6ucvy;>( z5;nH?F($%exV!u(&IeQ#?>)vjhpO`9!@rSe?7`Lf8B!aQSc9mdz+|;VeImugmY;s@ zqpCRPFd>X-8?T0(o2m2VXQydoDK<7Fv7zw7V0Va!awe}(E+wpQ9iXa&5U@uh#Kv%S zeui>tF(x855jHkF-FQvmgw3~aP*w6;nPIH&M>qnUovyLH_m)R%TkH*sW4E(Xf{Di4 z@uG|hPwQ0WBw!*js0eE>_W0$=KRnyo#|Po^g(lx$yGWywA_9}ulq8N$0;cOJJG<jH zM~9xrYdg3g1W|kts^tU`Wi&cux}Kf{TwiE%=p4;ziVsSAs)F-^^MVfoz~26lG=}R7 z&65CC<=e}rd9l6A=GJRwrz^N1xFGBg3l83lsFe*juC$Nyz4zlSIOnj|GMOdZ`tDO6 zJlUkv-=uKk%4uSlotof>ug;Fo{Xeny9&4@bbvm8-#l=OEB*DfJH?Fk*_lZ;$0OuUt zZWn89&t_S6yWj8M>2|x9KJ1alQ7V=CjYi}4J5=3(H%{8rYXATM07*qoM6N<$g05?9 AwEzGB diff --git a/src/_h5ai/client/icons/16x16/ico.png b/src/_h5ai/client/icons/16x16/ico.png deleted file mode 100644 index 82227e85cc243f85a421bf75ac99107afbebfab1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 792 zcmV+z1LypSP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10+mTbK~y-6m6FR&6JY>_zxg|zDbtx@+G(jEQczF}6mKDc#F%K} zLJd138{<>(0B%iO@fHwbj4>dX5F-n@CR`d7%0*;R>m4YiolENi6E`m4Y|iQ=-#Izb z{QUfF$8nxktJN+}AW4#z6-614rlzKrlgVT{kw_qfI99k)sgTd-+1}n>ksZfL+qRA4 zI41$Xwr#T6Y+Cj_kBOxfewM4e+xbjSYctbpTl6+HG5vm%-qsdomNw`~on>Zmlb-ZB zW|lX(f2$qO^N>ByBe%QDT2bP4?ib;BoEM*RD2mSLS`Muy!pp@SRMq6=%x6M17NgTU z+`O73EIee_brG7zjq^=dktkiKq8I^<OLaC8EyCr7I9AxAqdr2d8ROc;dhFBnNUD!p zbdLxEB1jp*+}9#8!({eL5kobY&6hF59!t3rrslJdbBQ+zR!a)0pnp`s_kDy2P^arW zy3$H46eK8AI${Q<W^$=cN3E)KHP)gTQLeRFG@P;F+b4YAKO&$4t3L{??j4Y_biVAB za7sRtt3Rop^~r4SVaP#dHwu`h%H&poyYcG35rto&MN=u49Fm&C-uD8{(J<YXOi~y8 zHY9At=Yr)E!J%C#QE|$6o=2dsukUd{v-prdWOROu8X@ug?MD>XXXMoqnk*O@Um+Y4 zjEpa%DT0xS6|SE*DD8hgB2ddNZDy20EKIARa=qRlRi|^1K1F+@N%3lej$|!|2MJP* zItQImJlFkKAz_<5d$Y*!*c=b;bTd3QNAa(hi~sj~Pag6+=OGOa4p#g7`!NjTL|5M5 z-)CrO2w4b`U07IX>+I|#7z`dO?7A+QOa>uDR@QZWV10f4X(p3tI|)H36v~>WIq(OB WS0oDDpwScn0000<MNUMnLSTZQSz9>( diff --git a/src/_h5ai/client/icons/16x16/image.png b/src/_h5ai/client/icons/16x16/image.png deleted file mode 100644 index add1c5915f43ce85974c751787073adbd23028b5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 671 zcmV;Q0$}}#P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10vt(1K~y-6m6A<PQ(+i|pZDwiZZ8F@a1D)7)1V<b0M_8dWf(WX zB1~inuE4kg2TmC100uy#iN#1GTC4oDw7s|eejQ-K%+Pm!o}BZZBfGo1&x|qKF~&`1 zI1xEW({xLAc6JV$&E`g<(LgD6BXJ0UUav=|(>Y9xF&lZFV~m-_0C}F%ZnrlQ=N#|$ z4|)FjEwNT1YK2TaGImHAkV!x$5oJIuh!+6fyn2Cij>I`fcQ9c2eiND31T9Q23*yj_ zT7@bjVPv5Uh!vDqh`?EY%)D|W)>>4pM&nKcRn-InPCLSUfQd&8=xL-pFG(vIS*?ar zf>cv%VXquil;-K<M|`>%v!E3hV?(S(aDrH&W&`fFCqzwcX^||`i1t?zy!R+o;pY(6 z@2zmsA9FXEr=DoeCy|v@b9_8tX}L;NDXWi`h-m`S#e0u(&Ov|}BNOXTQCO|d@#~_b z7)<H)3i2!^L!kvmLqoSWMtr<}qVj>uvk~J_NpOJ=opb!u<A#nxDs&5vEgV^Wj^6Jo zB0{*8T>}#5=%1WYNfUw(n6Y6pDDj0wp$Il!m45~mom>Gn9$o{gQ_G((KTx_t^Z`>$ zaHae2keq#R4QS+bPQQJfX^AWOBK_{a7B-(W`TqXpOn~8V$mji!Buc6F-rnBY`uaLr z>l=x!wX|9-lv3?vVPRqG=;&y>)oQKH;vmbicD-KT`U{mXE~Mg5YP<jd002ovPDHLk FV1gdlA;SOw diff --git a/src/_h5ai/client/icons/16x16/install.png b/src/_h5ai/client/icons/16x16/install.png deleted file mode 100644 index 0a9c03669882d54d153f584cd743824a5876b81c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 788 zcmV+v1MB>WP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10+C5XK~y-6m6J_KR8bg)pL^$w6OQv!*Bn76l~T-{=w~w<wI3p8 z5$&Q~?SgO-lnAbcHZCJqVz_9Xv=|Z0bYmo0Ot-%~W|A9cGL)Ke@Z59nX)!htZt7cp z-}gSe-+MU5($dl;rPQeJ`zQI2GEFllgt%ucEG*>O+S*cyL;}+^|4HooK7~SowY9ak zLQ0vkEDI^+-dHpD<{|Ibp0ly}1%T$pcDmcnasJe8zyQFqEF8y43D5KJJP&~HKfdxP zJHQX+(3Gs>XnWOBY5OB{c8*scr@5JVfE7K$Z=Fy|p|u7y6WIZXu5vV4Pg6q*(-2k5 zQAOm?TZ-$eOk@YRd+iBepp?RNT^Fr2GcU&|=@sIMI;4c=aGI7#A1#qSn!{<Ngm|Kk zl3rov<rrFPT-U|)JP)lkD;tYMtRQk%BX>0|(KM~`URvY5v_#Xje#8p0vayKP`tK78 zTc3$H80=Owz7I{2ZW=<3)eLqwsgyOQ35ID<*!qmtx_Uw_14AICre1e2e8sMb0UAP$ z3}3OS*BwY%-Q5RhJ$#y-lBW36VRB|@-`h{l3{m{)uv4n;?gMls``IokJRg=<r<h(G zuZgD@$5~#T!t-IfsOU=e*8sH)(%n~i{plI`;ymGafXA~V9BJwS;PLDTu|$BaqDN=q zJn8PMxUTveAf?NV%n0L8hk3U?Pkki7{qb7>1P^Mytt(C>`?--BK}r|k55RR@gb)bx z0C%pB@#@1YFYGMN&N2X<)@9QD8O|QRNTpJ#*;h&-gb+?Hm+S25=^+>lQZAP{d905! zT^9%h0swfPhf<1ixeS2oy4bdj5W*4RaCk7E&yU)+-SJOfaj!z5P(Bum4gLcB5O_GW SBdl2f0000<MNUMnLSTaGoMgiQ diff --git a/src/_h5ai/client/icons/16x16/java.png b/src/_h5ai/client/icons/16x16/java.png deleted file mode 100644 index 63b86830fedf4a59f588cadd495a96e0317c4797..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 658 zcmV;D0&V??P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10uM<<K~y-6m6OkF6G0e;pPkHZn#Q!2r3S=c6s#htf+7K}f`Sx0 z^it3M1@$8K;$7&W>Ol|cKj6iS1rd6Y#)Co*+BDFbh?ZitDN_48>CEh`htNRVZNV4j zFf;G_@O|GfPO(_LX^a`Q)}G@(B!nnQDepUlLZOt+W_#1=G(w1IbKx2G+E8n6t)*70 zF*`duC6!XWzVD-yiVQoezws8ovejtpIQM;@N~O{(f*>FW0>Uudv)EXo?cD?P#XE?f zpLg7C=Y%mPI{bHz#MoVQCXe^w3C_y=9*;2wskLqfcB!rS5_RG_-t-vt{)YtVv#`sj zwMOh$ei%z&4;>*)`H02oNY8;SZ1&wlew)Dfrx8ovn^kUY>}_Eiu&wx)S9mky=*%T_ zCXYM!37hQ3n|w`dp@djlV14ifKr}#S^2FvRAy7DtWz_M@5Ko~_UL`IBUUj_Xj|7;m zEaun+yqUK+RuQ@hg49vi_ya+M)q$t2VMYSPdJXG!Al7Q&x;XV^!Z60xl^cYK!%fqE zfQ~mq$X`>aGyT+agCJb67AM#w`F;dP)lu0#8s~5C1Zb_1QnGsM5wWEow10d~TXg~_ zw1iF!LQB}*MUd*o_}SJA7-Nu9%1WtJ>dEDDxUP%s?qOx%apb>f4O%J6<uX#ricBVx s!_{hav|KKqIxw|M@p!!2+1WY#4=Y29uJEl9o&W#<07*qoM6N<$f}&(FRR910 diff --git a/src/_h5ai/client/icons/16x16/jpg.png b/src/_h5ai/client/icons/16x16/jpg.png deleted file mode 100644 index a50c99bb98ff6dc16098d907515cee3310cf3608..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 675 zcmV;U0$lxxP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10w765K~y-6m6A<Q6Hyq2pL=^}rk@j~i6zm9#Gu5q82*79e~dd9 z`~$b_+`HnB7<L2}V%6w05dw)8i1cGRow;*AT%bbYhQ9mr<ec*!vA@6nQfs~Kz29Jg z6G9w@VYnrBcXtn0R#tkQP6sLFt;EhbhQlGp$HyO)*1Fejx6xWJVt{tLO_C%%WsKqd zhdo~Jyg{fsLWX#o<4uOQ8Q#tDzQFqeMEMW!?$r*)7?d%FU(*SXS7V~EfhA;;RVZ>x z)t3lw$gRWR5W@e>&uDr<U>c~hENRp&&mTlYN>MsTmJ9UE;&Ow);sV9UmPEBWt*DL^ zf=F44vb=K83>+_>Y%)!cK-Re&pOA+hJv9g%w3-xQ6%k36q83r5MlJNrj6qpziIm6l zla1wdE@r2+WDDPDkcv6=#(jR+Z$x*OAgb}OxsLJ@pL?veNMj6mhrr-$j=&PfkC^Ba z=E00hcS<9^2dat?0cknre13%U{<=i#B*V!Wqil+{hEb7_W;4<}M^z+Qc1en$Rc+A> z#z-O9yd$mw+D3dm8xpAq<1CXR<9s$DFA4xk58#0@K_x{B!P93q0BIg^@co=nRj|%6 zndfA>{BJyeb_jr8yAh!sFY_fCEwsd?xWkzlU45au+N1w=un=H6o$_h#GfGOC92^|1 zb-P`HAh?ydEKB<RK2pj=HJi<?!C<i6@AuahaZs&RlQ@pIeglHqF?hg*ym0^k002ov JPDHLkV1fx+D<}W} diff --git a/src/_h5ai/client/icons/16x16/js.png b/src/_h5ai/client/icons/16x16/js.png deleted file mode 100644 index af1a475ead21e02a00da6079b97013b454f69dd4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 540 zcmV+%0^|LOP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10hvieK~y-6m6EY*Q&AMgfA?}BmJ}m>LXe^jf;dH|C^!n;qNC{G zU*O_k|A9_|*>teD30ZX)M2H24P>^R_UIv3uA>yFo;(h0y<4~)8rbct%Y~S}g=ey^+ z;c&PvB0W_-#{%WO&qD}z++Z-sTdh{R*=*vy|1YzuGM!GDOeSwajIo_%88OC179h(q zilS(TloBbWh0Fl^z91r)*}?z-5y6*biJATGukZ0&tMF+AyW6;@SMZNo`2Gd>_`0Gk z%aV{%s%~Il(P3)1S3PX`B<cDV?(;jWwgLyVheuHR2>_N(;fiOtn6R@~u@jvNKt%BS zfM2bKec#(4t=}VEzKfL(_v9ArJg#UD2N-Ddr~*5E^w??ArQ2vYj(z(w1DJ{6cHd%p z1UtG4ANsiG4?qQ7>tN@v%|xgG{EPdzmk+Vd4Xn0|bvL2AS-ssnfVR8X#hb9ys0io% zgCHV%_Y47BS(}+M&nzPN5JHjXIWfjR9`o-VV<gXWLI_2u*XtYO@whh{jn4dY?18G) eYU4(uvGD@}Pf#CWxrx#M0000<MNUMnLSTX_0P|h| diff --git a/src/_h5ai/client/icons/16x16/json.png b/src/_h5ai/client/icons/16x16/json.png deleted file mode 100644 index af1a475ead21e02a00da6079b97013b454f69dd4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 540 zcmV+%0^|LOP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10hvieK~y-6m6EY*Q&AMgfA?}BmJ}m>LXe^jf;dH|C^!n;qNC{G zU*O_k|A9_|*>teD30ZX)M2H24P>^R_UIv3uA>yFo;(h0y<4~)8rbct%Y~S}g=ey^+ z;c&PvB0W_-#{%WO&qD}z++Z-sTdh{R*=*vy|1YzuGM!GDOeSwajIo_%88OC179h(q zilS(TloBbWh0Fl^z91r)*}?z-5y6*biJATGukZ0&tMF+AyW6;@SMZNo`2Gd>_`0Gk z%aV{%s%~Il(P3)1S3PX`B<cDV?(;jWwgLyVheuHR2>_N(;fiOtn6R@~u@jvNKt%BS zfM2bKec#(4t=}VEzKfL(_v9ArJg#UD2N-Ddr~*5E^w??ArQ2vYj(z(w1DJ{6cHd%p z1UtG4ANsiG4?qQ7>tN@v%|xgG{EPdzmk+Vd4Xn0|bvL2AS-ssnfVR8X#hb9ys0io% zgCHV%_Y47BS(}+M&nzPN5JHjXIWfjR9`o-VV<gXWLI_2u*XtYO@whh{jn4dY?18G) eYU4(uvGD@}Pf#CWxrx#M0000<MNUMnLSTX_0P|h| diff --git a/src/_h5ai/client/icons/16x16/log.png b/src/_h5ai/client/icons/16x16/log.png deleted file mode 100644 index 02f1b9acda482052ba61d8f8ab15d298e3327203..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 423 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p zUk71ECym(^Ktah8*NBqf{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$m7#J8;JY5_^ zEPAI-G@NuuL8Ptz<JpLaB_4^{f|DXr@;91C<v(1R^EM*A>B5q)Tpu{1TMd&p8J-DX z`2YRmgWSCBx6O^?f9?B!s7tXWz~#&4opI}5RoIxdA7*sw=zp;9{l^-+i=}t<EuYV_ zIsb4@bTGpwn|8xx3k8^*I94YxNLVDL9gz@k+?LD8u>7*-TSMa$)%!IrL^)^Ay;d5_ z%&_PC0)ayw1}yCpu1WPDSDt%ZBKY51&fMFFqO5oQ6<xQAD>QVejd4Hg?YCt@EDf7< z0;fG)am(B>P^81Kj>VrVPW6}sL&FrIpi?LN=ZWm`VmlZ!J&m=Q<-mSjKc@G#9T{d8 z?8e3{f|5%`<`l0y?tR&keW^&ti3@f6?W42xzyFS1w=!Y-?VCEM&(&XMWxRMcnp+bX Os0^O2elF{r5}E+}wx@^y diff --git a/src/_h5ai/client/icons/16x16/makefile.png b/src/_h5ai/client/icons/16x16/makefile.png deleted file mode 100644 index f99ea4c0ab059e1df4ce00e2f92375b874763bca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 614 zcmV-s0-61ZP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10pm$TK~y-6m6F|RB0&&Fk3*}YGvKI*B8WlVC4vU8e1m<X&0FND zy!Fl%1V#Kq%@E>%NRXMH?!6G37$NKyG<0=Wo$jxy62sx}mz45FDfPsEm}OZbA;j;* zU@#axJUn#E<uaCK{Zq113g7oxE|-5q7>3<qu}Bz(H$ms~nfZJUK(pDzw(XnyVzJ0{ zI_-)$j)~(KfG`Z%Y&PWcc}}O3Irn`Z*L4YkfLg6aDwX1zC!~~UtpQlAR(yPXa5|lC zUJHVNAP7uMtJMNPN{NV~$N)UgyG#CRp68kPD2fnq9HX`7d_HqL9#KjGkW412R4M?x zzP=Jg5dg>Ik!&`LZQHjJCX<OF1C+~U3WWjyT5HzpH2{ahfglLz^?DZxSHSfrpIdeH zl~Sgl0Et8bt@SP7@$r$}ZfA<M-ENJX{eExu`Fx&gwR#V*Z5!8hd4GR5bFf$}?uzKT zF1BqOfOQ3Et?_*yrPR0U?d{FP-vL^!7LMakuh;QB&m?)CN4;LhaU2?r#tlG7DKGsL zf>bI+yWIxBaU3J3TCI}JW+|0QrYlm)3qS}l9gRjmJDm>6WYTEOWHR*oedB-bP!vUs z$76&LQ{gzy^K3SI8IQ+5z8%3YmQJT<xm@n~FXI?xXQ8|d$^ZZW07*qoM6N<$g186_ AXaE2J diff --git a/src/_h5ai/client/icons/16x16/markdown.png b/src/_h5ai/client/icons/16x16/markdown.png deleted file mode 100644 index 25c8373c61a921752a7e6a7177817212e9e5bfcf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 627 zcmV-(0*w8MP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10q{vgK~y-6jgw7o(_j#WA4eat6UX_f6Oq!8wh|O|Q6!MK0bOta zR;;)Jq6_ZOYp~)9h(%a-0df~ePDN7)399o`yJ`HJd@K@D5JL4Ujb<~Nd0x$oa&&aG zpCrj)=JfPovbjkbiL*22+uN29;<eIhwXChJt-U*{id<Vu)j%1I=!GGjPUl!eQM6~8 zCNtY6%I8xx$o6`eJ3H96y(j!2qWg0U=N?gR$lDJ+YNadycWWBood5vGjd*;o$ZoSh z_S}Qw7(a**8AVdB8mJcq!u1MoUQ})*P_KrBRf7{nBH}nkN(r#aX(Xj2j$?!$#`GN* z9FH(J<jc1!x=ZYV7gH_XqEXZ6IsuKE#%@zbbv!7#_+gC5Fz2>ukaG?EdWB~FW(&FL z7~eF=Fh?Xwf|PO<Y4N3$BuRqsgNVN4k{L`0v=Q$=jaP+@s><iDlZB0{N_P<Q^ic(E zFkx=Ei!CTi3wcjxS}*hRS^2MN`%nHQ$opfarh)ROh2Lmtb!{Px={p|6xn!Ch@$RF8 zSrlxTDnEuH02`*tgU0oh=ABCt-CJxyku%JaM!8yGQZMuBdHH`sS1N=q7bOiv&d3NM zY|FBUmIsw4qBzE~EQAoY&~^Qw-EJSA^!xXNl;5b0M#%N`cBxc4_yuKO75A(Q8La>S N002ovPDHLkV1h8F5N7}Y diff --git a/src/_h5ai/client/icons/16x16/package.png b/src/_h5ai/client/icons/16x16/package.png deleted file mode 100644 index fb1343ea1cdcc53df214f3180022c51a8c0ddd7b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 614 zcmV-s0-61ZP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10pm$TK~y-6m65$})Ib!4Kigxky$d9)*a#tn6e&TJkq|BKM6nfh zIv#=dprE2mfrLbZ5`j=eBFO#$YtPu8xib{mB$)7*+ueI~zkB9P^y2yWi8gk(X`4c9 zi?a=4Th=!p5+#a=h!6sc_j@F1hDv)RX+|&WnSPNzRi+NRw??;%(P&5zi?c1_T5fJW zB1#f~Q^2|-Q5h=Dh?11aWM0gs(_PiLP>hB*XqG3q#$ekT*VYsp+eC?CMWCD>qOzPc z%Tc|8(QwG|=SiW&d&C+DfuAb`3;t}@)d&Hx2Js#x;x8=&c&mxx<kGwY5sxyu`n_&7 z#POd2fYB9dJ~_sR2j^jh5bz<a99#hWN((EuKEQl(jH=2d-%G>M!5b>mQke#AS|0bW zkt7#@z1Q#P=P83cW6;mIv$aE2E>YqHS8G%ZYlDonK?XpU7aa#%cZcWK0bH#SCn#$j zZLJaKI`2z+{SH7x2;QIfZLP7^p_~(JWAGx~gj7oP?JMPCM!A?F)^=pu7@QN76QQX! z@(bYYtCxTMfu`0tk<$!ptuH(HN7=IsoCvxqiNe(Yx++f{M1=hhpQiWkZCodbqyJhK zA2>W&5E1rOFOA1Xv+CK$FU#$#I7n4|Fv!*T2QPmrngA-j0ssI207*qoM6N<$g0#v9 AH2?qr diff --git a/src/_h5ai/client/icons/16x16/pdf.png b/src/_h5ai/client/icons/16x16/pdf.png deleted file mode 100644 index 7408d8d65d6c4be3394ce605d719ddade3b6691f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 799 zcmV+)1K|9LP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10-Q-iK~y-6b(7C)lxGmfKkvKG?)zq6V_0G^zOWjktq@Fv9!gOf z5DDU;^rnA-7omk}JXBBwK|P2GdPv)YQIV2T6p6GaPa7zuX~e84E$%4^LYgXT_UF6r z`^@ur*d!WA2Ie%wXJ)=L<IK#=3~Q}#7-I(6#_XFF?A)KYM~)$v&XBrr6F1jgR7#CF zg+ig&+uJ*k&*xD}Z3&3)jFCF{Dan&boNzCx(<3Y`EwQ}3{6fWXJP?K<T5Gh{TLM~B zlcX{o=sybhzf7aGCJaLs7Z(SVh+vG_u6yjOMUofKk?2SK@rPK?2Wzp`A|fcQHP+f~ z0r9U75mI<pZbO*gl-q1JQAv_)4X~Evw?{O87zJ11_8;1m7ex`}av4`duxl-?dt7)* z<>WBQ+$<6&=z0Siw>IL9MuT#>jMln6f{7xe^bhjy-?Se8j1%l2dwrZ#-+t;7--7{p z`xbXs5A}MTYPAZ`)}VahTVBUCGKYuAd~uZQ)mx<U`v5SNRU~N(T$`UG>K{ZzHpUPU zl>O)cPOFAQEsW#h?g_EhVvHeP`43rJQ0@0=_@sZ6OrGbVn#aFHPMpA4LvsHPtEaw# z%h#~oJ+QC<YXIl@Gd$13^E{#`!uNd~$3X=_KrWYSSN-}d$&n#y-<@OUPmhowpt25_ z{fkb~7!?5E`#xH0T&*>Z<KVh3N+~)%`<%?-A!O<?{=Pm$Km>H7MfKhUQ52C*r?J+) z2dv-1x_6%WhRTEcxZS%jDuWmh1C_fI#I-8vbebed+5n~0%VM!e9LE~~vRUZdiL9=| z?r;MTul!H_;zhL96pKZaQZH2y1m{bo(vA7~`Hw$TxUMaku~8aMisZvrnVKRihTQOQ dsjI8&{5#5Ng9j%04W0l1002ovPDHLkV1ll-ZH52< diff --git a/src/_h5ai/client/icons/16x16/php.png b/src/_h5ai/client/icons/16x16/php.png deleted file mode 100644 index 22c4df637f8429fb781e167889714665886b027b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 757 zcmV<R0t)?!P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10&+=2K~y-6m6K0MR8bVhf4;fHIF2UzQnQ3Cs1~6Rr4`j8C<fXD zE~15-Hnophw5yh3ErK8-ArNZgxJZHqiD0JakEP6O)EYyEvTPh1|I9qcx$nMrTMQ-= zg&jDH!^d|x=ljm77#<!zsg&yRJg=Sq2*WTeA;hJMSS)6>wzjr4H8o)v#)inA=aI=| zNT<^ugp{()G)<(G|1$ulX_88%+Jx)6xUTyfn910rzbulsOW3v~Z<i=Z7sF?8X#ZCB z?rs2Jl_!)^Xss#O4#|l*=5otSXKj4K$F3bF-*U6$3zE``!^neSs;m55yl|Mt%^{Rh z2*+`-mmL!0SulJAYk~v|ik9XYPM_Sv=-3SLw_jN*lsI~D2c;EBU;hZ_&hE!?9Ee0B zx_>aC9}j)ffCh9p9M-Q#r~g^s>3yyvk%%^wQcQneqPXG!Fq{2JG#aI4%O(JRWaih^ zt9URdP)cDarN}K7aXk${V}nUJ947s30RYD<TdP@*f1dhL)<7u*XdI~kcs)AJP<)F1 zC*$-DB)Io*gua0U@2r{M_+T`_a(*7ATq=5dd-dTXC%Aq8Eu9B;@_u}le4+G*?={r{ zI@+6wzxqh_`xkCpJ;Tcv&&m^Qt`Bm)dmlIN#<7=6_$#Y0gdfA_2Q;oDDJ;zKXl#^F zD8ThAUDVfAt*xN7W?OR&x2~Nc_9o5KXA|UdS&GF1p65|n8KAzdn(nUS9O>9u)<o;I z29Dz(gaF`J=XQ>DZvX2EYh4yoDOGks2$8ZZ3n?X9>kXxp63em>LZn0}6uLY)IoXp; nCU<S@jmi-S1SV^1YcKx-9W{Iqc;d1M00000NkvXXu0mjfGe1r$ diff --git a/src/_h5ai/client/icons/16x16/playlist.png b/src/_h5ai/client/icons/16x16/playlist.png deleted file mode 100644 index 8d6f281aa58d3b6d4dcc41cecdc10916e485aeea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 610 zcmV-o0-gPdP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10pCePK~y-6jg!x76G0Tmznf0kO{EDnn0BMVp9c{o_$Szl^x&VM z2eDr2rC{(P6hTj(M7#?Xyoq=fyosk4yGk`JRM?H(VC#?UZp!S;8=r@m(k7|ygMnfA z%!luL%vg`#H0D>spAW*e%-3t9$XdBv&J#l1wyr;YyJHth`IE<7%wHVKbeV_{1OZyD z)(7El#rgBqvsn2?kWyw&P^nbl`~C%?HDNPm7zUVm9~7mGX4~M)mcn`{@yYMN+lcY* z{y8u+j4=>eX-NGWz@Xsfi(g2h6mcYxL@AQEyYF#C1VM_RH4haeQHm4ejH9lD>ck<O zK4RnY-IZNVYYm~afuiApIFfjDqdL%kk2A(VkS6E@1WA+*obBbhEoco*!)K7h83g(t z33>y2ztO?1XI~Mt3CLOf3Cuph=P<>cm)lqiC6YvenNfe<M8g^b4qKS)6Xb{piWrI* z%#4Ls+gR?5;Jf3X?2dz(aivy3AxdyuCU|nq1#_4En}DGAyn{=pMzQqz2c{eg53f#v znK3t0#@tN#pdk`es$q=?Ff(SSOPHN54Z!_HMBNr9Ckk>W_z0D%-Dv+?N-21r2O-3o wsGV`|EjOAAn@g+C;$rsiY}@vFu~@AC0VdIO3`JCdIsgCw07*qoM6N<$f{kDgMF0Q* diff --git a/src/_h5ai/client/icons/16x16/png.png b/src/_h5ai/client/icons/16x16/png.png deleted file mode 100644 index 1fe1ec4ef1c8fd7ab601f5e00cfa02a39db0fca7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 679 zcmV;Y0$BZtP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10whU9K~y-6m6E|u6Hyd~zjNnKI|HQ^MkE*$P{Ei8#FblDK8bH& zNPG#Nz!z}iOBmw91QLUd#<Yn7hS)+arPJxm+<WJ`(1e|#Xa9fs@}FN04h~+FWx40Q z-(iLmk)v9zwk!Ml`$ubQYuhU;D=4LI6t1d@Ua!aT@$qL}mgRPmB$Q=2ivUTI(CKux zwY8S_AKJWn{SKlUqBY)>P?Y%G;*G@{2NuK$cmd$e+m~2t(bigiUtY42tP{l%PAM*@ z6N>2-^|=g;qsRhW86Zv}UJwy32Pxs4MH^$7XP&3GR*C8%rt(bcA$cRmx(sC%&c%#| zbHu(yE2^VJh`c5@=C8p5A<v&ZB>j;=q!^BKrY<Be1@C}p0n=JUXUi<bF|{}#mXOq1 zv~!NS1gLXi{qZV;vy?{CqKZAE-h_B*k=|)Vy}5`EZ*%WK1MP*%r?|?YthL}hRN#sV z@j~<NBI92Lc^)%7cf_q_f^Z%}AxkZTvnd{bU7`ysdKV)`<BZZeh9@aw=NaVzS_{QA zCC!9ZEu(RvQ6lWHa1AIz$G3i;NQaopag`VJCzh!Z1dp*LFyNE{VW0>^*x=DMVB!l7 zf1Xg+0j{bT<pmS-|6vvO{xu+3Y4Ww-oo$JC7U&QEec{RWI-kDp%>)>a$F#qEL@T8_ zhlhuoTU%R%VR)mkF@|=#jZ&(k8;!<px7*!ox7(Yu7(`LjX*Qd?e*m-dEr8H5R0041 N002ovPDHLkV1m-XDun<5 diff --git a/src/_h5ai/client/icons/16x16/pres.png b/src/_h5ai/client/icons/16x16/pres.png deleted file mode 100644 index db195e923b3c81a018d698a75584e2ff0502f945..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 629 zcmV-*0*d{KP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10rE*iK~y-6jgw7lQ$ZAlpSgEp8mMH^-YRLkF#(|^RS_Ys6p9;N z3f=n?1O*p@xTqj*#g&M^z@-Xq#D!ICE!wQoA~k7jAXaImTD<4XxTyCgmlo^5f%$yj z=bV`_%TH#n{#dQg?tE((0L-PkIOjO11wru9T6@jByEpT5c+eJ(jvpfkE#ZZmc<=vt zSVU;GT68*{CA-~SEliG1!j}b{Q(PP)A_o$bN+p`jX4R@F!B!ib0^q#Id(Yh58~{-i z(d~BAgHaSwsZ{XZqpDcv6r;b>4gRk{tyW9t%H?v#JxNhSup*ke_Y177tfbEU6bS)9 z9LHFvit)O~p<FI!ocsF;fvOUSQ}De=2=<Ho`h85?O~)dFb)uMkQouQa#w)_5=lH|J z_;WMl*PfF5`i8BEM_?=>vX>wcF^$*QXAdxIpKv1+*zQ}*<|g4r3;TV(N1*C5HAo1; z#TR%rySa{6k)ct3ja}|9R3fndEvN(pu?4_Bys^6$jS*kDlkOD}f`lN6L_|+a<Hck` zr=~MSO$j6xa-qo*96y7<=m-{GVnlGK&*P@fW*(7<U<Zee>@2o722Pa@kqb@l7K}lw zHMH7$kxA}x98<5?vDP;1Naf`1&yDxDKFqHV0Bq+U|JP^A=kv?OV)6PP+-q|zm%SuV P00000NkvXXu0mjfeHs}( diff --git a/src/_h5ai/client/icons/16x16/ps.png b/src/_h5ai/client/icons/16x16/ps.png deleted file mode 100644 index 05f3ed9304ce3fc8c17598ab5f328709335ec0d9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 817 zcmV-11J3-3P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10<K9!K~y-6b(29%6ImF?f9<^KPzT!vEU*~ZDI3%XEFO0E;*uan zBa%Ipi?>Zkc9T7L^J0jJ2X1;aTsU|pUbuSPJ!~Q-CZs4^HlUy}Y9sA*>U7?F)3=94 z8dvy|cX`S8`@ir1zJFqUef^5o`d+Km`o19zq2k!ebR|expp;^HdAYH_zrP~FFud=1 z-b8<YKP>}WuWQEwTt`qCILXq|5?X7wSS<b`q?8lAy}d{&0q}zm6}OHAm~Mxytv7^W zNTpI?a&mG+#Bod<#{j6f#Yex1IilINl6*6i<?fva?CtF_J3C7hMI^P>7-KNTP^mSk zH6;H3PNS)q@Nzu)`!8l@X4u@^WPX00Fbok&DU4}r?!2v2ZA4!wUz!{sleSn}TO*xL zGdDMf)*2}#B93E>F-X<o*}s)9=6AaU*MB%oKHJ6W>MDzii;Rtpv9hv)QVPqmIwL&a zJK#etq#8t2g9t|?ng7}2RK~#=!}`;w6pKZsr>7|t3ZzmgfDYi@!6&Nqh-y7T>zEst zMmU)k7-J}x%Y2)D2}l+e7O-ubo}M1G)`-u5gL*_YXaaEgLIKyY4!ub=UU2oi#rwb` zm&-9cJdD;F-}gH&m>TaV2qg#gCds5Z{F#>eM8>=(nHl9;@ee%D!}onEl?qbI4xlgB z#qZb8VI>nh`g4~sYTwtMucE>RRX=2KaFAN9hVT1_0$=RG)WiVGH!t$j**p&)modiR zzj?+#FSdB+P7wqFmSxf1-Az89$F}XZ2TCb~5beO6u=(}sD2=A(<?arzc6M=pyv=t# zy|}JRUtb>pTI;rnLWuIl#>ScP@o{Y1KHPy5j>XXF0fv5iL?V&s<iQw}Qj|(1gb-!n vy6&y*?d^M|Qfc(q7#>lM<7{WM*<1esGdqMkk@_0b00000NkvXXu0mjf__%gE diff --git a/src/_h5ai/client/icons/16x16/psd.png b/src/_h5ai/client/icons/16x16/psd.png deleted file mode 100644 index 62718ee28131465e8562c8de6536015ceecdbe69..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 622 zcmV-!0+IcRP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10qaRbK~y-6m6E?}Q&AMhKkwx>!K5aQ&k_}_K`bH?6}qSh{s0H* zAWp7|bQLPL;NU+X#Z7T=sJa*jM{yBiDmtW4c#VSz#h?g@p_Q~s>izMqgCw;vDdr1j zI2_LBe$TnbDHIA9wAM305FDisxvuLAA#OSOeBMu|)0tE%h3mTi)f@x?wOWlzrLrib zlo`+SkW%(z0MGL%l}Z_5jKLTKz>~MD0EC6Zu0)8F2e%O!aJm9oeL`!EwHAQc+%m~n zh(y$-QdbPe1rM+9W+)o!3ej5QDy6X2Vy(q!#aMcPM-zLvc`-?KrOE5XwRXKTlu`&| zOxuChidOCox@fIfmzwAAmdU>Vj?w{VkHncAPqoL`G=kBZ&-EscbKiKi(7>^V6QfbC z-CyGLq3w*1C0SR&Uk~a|fa2qqH5xyDvCoTe`|=3;cZS)U4Dsf}3OfcJuAWP64LEbm z<Ia_Idr{U}9!wnIX|Bq%xf%;g4Q6i~?hepeVS<euzyy|;^L5T=hWJ$dNuj*Dg#)v( z#Fm1<lAZg?-4{)U<6$N*jr0c0-#gW|-BQSf?DX+X|Njp_DTNTC>#_8b*80yO2_Z_p z?<1w`c`%(JrNsArgb*bWi^ZnO<?>9iSRC!gK_n6>ClZON-;8W$u&VD`_y7O^07*qo IM6N<$g325ja{vGU diff --git a/src/_h5ai/client/icons/16x16/py.png b/src/_h5ai/client/icons/16x16/py.png deleted file mode 100644 index 0aaffd184f9232cfc840f813b64853a1357930e3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 743 zcmV<D0vP>?P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10%S=<K~y-6m6N?|Q&Aj-pL_1Px%p_?*q|v`F;cA{ZABbJL^pBp z3mn}9E3SeaT-;p5$=QFvf56GXRw_cJmNZnGDAtM}t<{(&y~#c2+<P1}7p057^YcFZ z-r?uW&CQ)Q#@vhJc!K|k5TYWbyy?u$%v8$d@_4CKLJ09s<v5O6TU%pgWo1z+rN)cJ zB1)+Qc=Y@g&lca}3V~7@trgcUo@8|IP{I_8MQXL$xQL>ND2lMwVy&go3Yf2d=G2jc zWby?ZzmN3*?mv8-FxFanJ!y==S_?q4-C=I&9h*VObY+!Rr;Co@N1(AzC*gWA#vrxU zSZjIm@(r`EztHSNY<6RUMw3oAL^&R<uAx5_627<&xQNjk$ovReYeet->BUtl8xBhw z5g%HDugarE78MDy=?odRC=~XvGh867-c4pC6N1p7;ta0z@LWsO_=Jzbb0F)6TpE3k z7iAz)5H+yY{+iGeXr;h$Ncldc#yq#qykjWW#_BF9*Cp=@Xe>h%5XWp6q=m+}7Q#&~ zPrT>QNFLhjpgW-2u+;+H1>q5DkIZj@=n1Z#JI;RRBRjeu*wxntvy64NXtp-^vDKoX zeZGk@tE!A0I=lUX;nE<tCoce?mu4Z;2Qr1HBVr?Hd{+d6SLmNOLB{XjF8DJ#&O<JX zV*;}20&C5q#KBYgb|1q{<r6*;XswY_CIWYOl3L{f(zC=?V$=d+$9dA}!e3=$3{py2 zt5hnZV`F1@o(F);@1y_loo!FlD{HN(R;x%UYciM1P1Wo5d(~?7z(2j>@A$r79~c;z Z`Uxh$hCuM3=j;Fg002ovPDHLkV1h=!S8@OV diff --git a/src/_h5ai/client/icons/16x16/rar.png b/src/_h5ai/client/icons/16x16/rar.png deleted file mode 100644 index 8a0ff54f4eb81cd34ea804e3388abe1b7352046a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 621 zcmV-z0+RiSP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10qRLaK~y-6m61PdQ&AX)pL=qWLaH<gw#JHRGQ>Y6r3(E9x@HK7 zpsr35a8PjUC}_ugf#M=ahr}=8q(m)6B}s=S=?yeZ@#da$?#YcqBtw%*`@-Rc1Hb3@ z!0T+i`1ruu(L0=Ql^G+X!>jktDHe+WY;SM#_Gy_gaB5OIFQw=Co9Qc;^VhT2h)6jN zhzX(}qLfM{0IJn0ch}db?>1LE?SoA@@cn!up5kElh*3D20z~6uXfm0c{B?i#NyJms z{bpVor8(|+Gs6H*biB*uGPPO_fItU$hXF=ugi;FSX|!)<z96swNGaLa*cbx>i}Ex| zDWp~kqx8&nfLIU#pin4KsZ;<M2IF?E6hiCS%_j{il?sJIVPc?tgVqMAwZSNJs)4n3 z%D`HSQU3s;7^43JPy<bFab?n;TU<d6G+G%#F+_$D3lY$NW<z@WeIDO_M)cnJoPlrY z?e`H<5JoJrJ8<3gn{!Lc$)!^*PR_#BiyZg*bicT+Y^9t0__<RzM>czA0uW2cdMn+$ zAYJRR_wZXbwU9bbo_7B*>wfZFDZJe1``32E8-3242Qcqs8^X)Qr7|(K+`pf>mAQiu zku!zEa7d@IlWCb>d(Ne`Cyz$PdlQEG#(4~cm}@$*`PY8|;3*p*@h`O500000NkvXX Hu0mjf^CuH? diff --git a/src/_h5ai/client/icons/16x16/rb.png b/src/_h5ai/client/icons/16x16/rb.png deleted file mode 100644 index c7db42fcb4a9d0004072bd3c84d53a62f5373868..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 781 zcmV+o1M>WdP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10*XmQK~y-6m6J<rlUo#qpS`nl(S*j3+E^?aFRh@~i6AP1qIftQ zCxURMB2;kXrC2DU0}(~A>Ok=a2u>Xcf;dpfL^KG;7}O>OTMmt;)oN@m&9}e(EeF*? z>7=gl`#h|7!BY8r{;==+BS8@C;15P?T`<O+SGioSkj-ZMGnoup>t(?~5KygF86O{i zYdp{EPp8v(p0_BZM5sM{fP4Fzjst%&cJD5q#>#wdS$1B#!IoqHQYw}DjdKp?+#=Yo z{Li~H1GN8p$;yys?n9B(iPO9vJdNLM@#6Lfn~xsDIfwCm9}!uAXP!Ob&DjBH)Cmb7 z0i7HAm>n5r<N6Gvb)jJlB7*PxXlpGZf{0+N74qi>XgBNlfKy--Nmd>_LS>@Lm(da( zwJBCaWAk}yG0wU94MfPDJ4LHeCk&tffvwl?P<ry1uU2SV$E;T)WXBN^oO9^k6=t44 z<wGvVtPd7&K=$}aRQ?h1ph3g>cqjs`>0Y~jp~Auq5*oI2rWpP5jo9ig_FlNm=Ns23 zfB%l8(s)YKRv{u7V(Ii!K{S<Q_r)vpPEV8ExtsjZSxjpVX*Q8&lW_N1Q~+*jl2mtQ zso>4cTWs31jr8;cllP0vj+L+qycKa`ot=cdfac66lvb?DtX?Xp6pPGFRaxiHP}OU& z2!g`3TKt%-uuejV(bTX+I}%F;Dv_Y_aRL$@)V{taKxm_hiDILPkcfuqi-mbN*PtzK zvA|kO@8B@6u3n<ilSL~<q#h<531gxWexz2RySj+<^ssAlFQI+=vDVHDj4`D`q0qPe z&|!}L{m-(V$y!UHP{0^dGVyqPs9Y|O6pO{)WzoMT8jY5d$>h*a2>*Vc6V*ch00000 LNkvXXu0mjfEw5?t diff --git a/src/_h5ai/client/icons/16x16/readme.png b/src/_h5ai/client/icons/16x16/readme.png deleted file mode 100644 index 3ae48cd0f2bc062c5a7440855f857300a6a3016a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 384 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p zUk71ECym(^Ktah8*NBqf{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$mfQtTlx;Tbd z^qvh^-PhtEux4&alY@d=f}y%4f1R*MeDQDb-=-Wqe2oXsE<BL%vvuaYheuk^zH3u# z-|eUM^2_3&(CPc$uRl{$ey;YB3#X!pU~TNJZK0l%mK4f3b9`K${#<5S>Oq_H_m^z- zTRP=J)O<k(P1R$CJ}0BNv)`^vXSngNW9G(nuiph;FJ)-3IbZ($43E*V3eIgi^YeQc zBeVCiM^2L!l8IWe>ea>RsV}!Gm^GD)xPDAZ<v;T#{DaNs$RF}7_jqP4tCYD`T05uF zkj>@Gp?@-u=5eL{3w3Z=9K;osoqy~7g(zoDRwXG-p2N3Ie7`43*p>BGX>l}Zb}hQi Zuj(nc_WMVsJYYaDc)I$ztaD0e0s!<Gn5h5& diff --git a/src/_h5ai/client/icons/16x16/rpm.png b/src/_h5ai/client/icons/16x16/rpm.png deleted file mode 100644 index 64699ac0c7120a604b6483d9ad619b7b5c55c2c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 660 zcmV;F0&D$=P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10uf0>K~y-6m61P4TTv9oe|f#{CLzTKP5p;fBGOT(PPUtAJ2>bN z3hkEBRqEv6ltqMgNmt2|cCd5{S^E$&1QlMK5(q+Yu)LvANa%a_<#Z@{G+Imj;BXI| zd%o{G=OmiV=5u4r!EiWS;SR7Y%Tr3dO}MV><#M^@>FH@K%lfb8;c&>+)fE>P7cCV8 z!E!d6B?yAM7$BR?(r&kxRTM=;Q8ZTUcDuN)OTXV|<m}1H3XhhS;y<H4WsE^Y05~~0 zp;Ri7&*v!?i=@+O00x5r{jV<HKYk+f<~3?@5ddQhDhxwJgjTD?#>NJRhlk|zd4QNW zl}eF%`GTMKGkhz&;=%iOB%eJc3`49aiVzXDwzf#8)2ywnAtHYby}HW1xjBB6KOiFG zBUGzZ=I7^Q)!Xp!%V%UTKtz6zFe2F7+XG;Gdz=0JeR8=R>+9>x%*;?Km6)BK<?`~9 zg@pwYi3Gd5yBK4jQmKgV`vOS4UXSxyttMJ)IXXI$$;nA+G#a9{mebQy0mS!xsZ=Ur z{dt9{si`<WK0ao1bCZdQiLr%_aASmCuZPwe5us2hP%IX490w8M?CcENw&`}e*tSit z*SkrewT_v~<?@)SZQEn-NGK)<!w{v^KevA!#u$t-SW2n3=XnG{aO?fAM-T*fo`+JZ utumR+PN&m3I6pssd>04FWU}Kp&dx7k_+PkE38Rt#0000<MNUMnLSTZpjVLGp diff --git a/src/_h5ai/client/icons/16x16/rss.png b/src/_h5ai/client/icons/16x16/rss.png deleted file mode 100644 index a1130a1035d5a1915ad0ad36270b427c43905208..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 660 zcmV;F0&D$=P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10uf0>K~y-6m6Fd(R8bViKli=+9K~p$CrwGBiz2B;A=<RCERc|> zD2rO=-%z@!MO2Fn%&=9f7PjdJQuKomLdc4sp&z_)H3MeaqFL6W8Q;C{o))Gsj6!qZ zY!2sq&i8xnRk>WQ&ssa`oa>^F@H{WlT3=K%Gc!>~M@Kf3$>4e3e+@h5D3wag&(G&| z9LL!(42k2o9sz`5NTE>3>Lf`>k^}(z_%JHmjcVD0YRRHn_XBE8z{;Gq)*>Ry#a|`( zRf4%`0MwR!=$`ASjcsc}thIQ?7(@gSL7#n%-#dodbsh;ekt}{>>Cp*nG=Yd)?ORD> z3|^8Xs|A~XfZ*eG528;$fo+Fy<udV`8`!V+YXCJC;tzM1wFONCJ;Mb3cd(!CVcy+h z>FsSA+Yh4BZPgZ503w1ua2ap=QCy|M($p0yFD~Hk9YnSF;>v%hyt-6nr3T=4pCjlW zA$4W~Y21v-zr=ibNYHl;X$Z03a@e`|>jO+-n)1_Oq+tUM$H#DqM`daRaf07@3}*!U zBdP*a-JtyZD)Rd$k_e3_Z{qLl$3)Mt3!hP2vpD0hixI)U{@NRKor0zee&-QH1l8KT zymcYMYwf}r!F<nGDNy6%<1#QXfY!RMuWYSla&i(+Yh8$<h&YaG-g&)@<CrLl&{`LC ub93`hu~;0Pot@oLkAhSxRZOSTLw^Bf<Awv^Wvcf80000<MNUMnLSTY_XeqS- diff --git a/src/_h5ai/client/icons/16x16/rtf.png b/src/_h5ai/client/icons/16x16/rtf.png deleted file mode 100644 index 25c8373c61a921752a7e6a7177817212e9e5bfcf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 627 zcmV-(0*w8MP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10q{vgK~y-6jgw7o(_j#WA4eat6UX_f6Oq!8wh|O|Q6!MK0bOta zR;;)Jq6_ZOYp~)9h(%a-0df~ePDN7)399o`yJ`HJd@K@D5JL4Ujb<~Nd0x$oa&&aG zpCrj)=JfPovbjkbiL*22+uN29;<eIhwXChJt-U*{id<Vu)j%1I=!GGjPUl!eQM6~8 zCNtY6%I8xx$o6`eJ3H96y(j!2qWg0U=N?gR$lDJ+YNadycWWBood5vGjd*;o$ZoSh z_S}Qw7(a**8AVdB8mJcq!u1MoUQ})*P_KrBRf7{nBH}nkN(r#aX(Xj2j$?!$#`GN* z9FH(J<jc1!x=ZYV7gH_XqEXZ6IsuKE#%@zbbv!7#_+gC5Fz2>ukaG?EdWB~FW(&FL z7~eF=Fh?Xwf|PO<Y4N3$BuRqsgNVN4k{L`0v=Q$=jaP+@s><iDlZB0{N_P<Q^ic(E zFkx=Ei!CTi3wcjxS}*hRS^2MN`%nHQ$opfarh)ROh2Lmtb!{Px={p|6xn!Ch@$RF8 zSrlxTDnEuH02`*tgU0oh=ABCt-CJxyku%JaM!8yGQZMuBdHH`sS1N=q7bOiv&d3NM zY|FBUmIsw4qBzE~EQAoY&~^Qw-EJSA^!xXNl;5b0M#%N`cBxc4_yuKO75A(Q8La>S N002ovPDHLkV1h8F5N7}Y diff --git a/src/_h5ai/client/icons/16x16/script.png b/src/_h5ai/client/icons/16x16/script.png deleted file mode 100644 index 1099b5fe5b173d0c312ad7022c892e7773784a18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 613 zcmV-r0-F7aP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10pdwSK~y-6m6E+{Q(+XwfA@XQ{Rk=PaK(}>i!L@rbgBeekXZkP zVE%(r6#J2GBCegKgsKz~ahFa)xm_HhOOh!8>Doo@PzlNVzSkjN9eWR)<-qx!=R7=K ztJSI+V-B2iD`Y68R9i%LytA{jcBxb<FD)&hl)BNfbB>FP3(n8aJ2D&&%W)ht91gPx zAdX{ty<S<YwbW`gk|fClSX*0Tb8{1AjLEzVkR%Dl7}RJqnhgtuLMF&)G(uTxXM;|s zL!;54P$=Me3avC+3!;5Q`)Dm_rSZJ6+1A?e3)8AUtFyZLh<3Zfeq*0o@ol0YM-)yv z$PorPq97s+B8)MJF$SeHqJ<x=pVVu0ww`a%*x#dAEb{u*8$3J!Qc}`1#W{yd?Hu4s zfM}sosj$8ClJZKKqvku_9~~0~IhX(-#iecxaMu8$1reX)k01E_=?mL0_PG3WiBdus z<nX+Sg6VZ<u-5?qqJ+om8~pu!iHP9)A<6e|EG*<_9<4rDA78c_Gq{=qsvA{KzMk;! z*A;5wyjGg~_a35@o<)2r-8##Yr`0*&@bE2B6lKc5U@)NBY$77kJ3T$UyS%)N@B23n zP`BGfM0%3X=Xd-4{z13fy^}>j7>51D#l_wKj`-jB7Uotb00000NkvXXu0mjf53dke diff --git a/src/_h5ai/client/icons/16x16/source.png b/src/_h5ai/client/icons/16x16/source.png deleted file mode 100644 index 5bef920766b333d4917efaf794b054b46632771c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 586 zcmV-Q0=4~#P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10mn&1K~y-6osltXT2T~$zxQ||M2N#1q@9!yiACcZGANi<T3Q5= zkfFt;q(8x-wzNMX1~NI94AR&P5wd70MXcc9BKAS44%(>*9Rs1h``+!4`b3(7@xbNY z%Q@%cJNGKxZuhYe;>dBFZEg{&s`fQad#SWqt$r{Vj0FM#R8?K7*>M~ulL_PT_^URZ zPGh>R^XTM+UBlo@ug9)o@HP_R*ZVAY?>zuu8h^C_(RH1{U=ULpjfPAnlee*Vqtof2 z2_cYDl07{oWf-)3JyM3jo2@Op{SrUFwYU?x55Vv3;sQVjfl{m0WICN*$)MS6qS>~M zlyW72ZQJt^a%X1%q~dX2hr?LUE!MN^T;;FGeav0wHdC~RZ7!Z%%txqHDl(JFtYlEH z*XIU>LX|{f2Y`HjgF>MSKq9e2KEH7zKnO7h93MY(6F1%e2T*5#*|HC8>;s#%>Y96& zQnL4HkHhidLhXXVER=T&0GC{%JXKtS^M~jE*tiCkWw}(}2OrK0XJMC8vj2IX(vOl` zXIa+uFO<vW@1amA9F0ctcsxtJzGYdMrpahD8fZSBuQ(hIk4)3tT&nwTc)i}C-|sK} Y0gYY+-^ZXOod5s;07*qoM6N<$f=^8ZdH?_b diff --git a/src/_h5ai/client/icons/16x16/sql.png b/src/_h5ai/client/icons/16x16/sql.png deleted file mode 100644 index b3b1467bf98bd154dc51b007806acb26795f3110..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 510 zcmV<a0RjGrP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10eeYAK~y-6oszwd;y@6DYsT%djgyfhJ0K)MVqbvx-spnMPMhzu zkRy?RL`1gx1js_R69|xhrag=|0`2K`b?d9VO7&H@I2;Z?oO3VExhIT}l=4+d`BUt6 zyVo>L7t`q!MD#7QwHA4vqb$oeGR7>@GzBw*nZMm2O;a3?#|1GnthE@1VGIF;5MX8y zGo$bOQRcgt8RVRUwf4UPoO2)m@H}r6KL9AD002}~6|~j}f?!mDF$Pstf$F-(>2yMt zWiZA(aHN!f)dc_|LJ$NfiUM_AgOVh{^?F5FmbhQ!Uja%f#Bq!yNkEs&1@rkFzVDAh z==&a<%?8xAE%H1^mSyO=?r~Bf#2<$HpZLCyFbq)?1=_X+X{{d!A2;|)_YLAWhSnO? zG!166877m-D1@eIuwJi0Q51FC?KWI4m$24?nK2B*rwBp_D5XF|*zfm<qNo$A)#}&z zeE!{aUC7M1-EMHseHtL8gy(rsN+ArxE=iK-chAYpe1jS0@c;k-07*qoM6N<$f+lg* AtpET3 diff --git a/src/_h5ai/client/icons/16x16/tar.png b/src/_h5ai/client/icons/16x16/tar.png deleted file mode 100644 index bab3b6ad861ad869683a74723f11c37a07820ec3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 406 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p zUk71ECym(^Ktah8*NBqf{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$m7#J9ZJzX3_ zEPCfoGR!*cAmF<H+UlcPIn9Djt}F-l7BOD8bk>`s<ldpUT_~D+&Ml2Y>tar<i9In( zc5P6{l5elRzyHXlrg8ey)Q){^i4~2<n-p$nFTKaS_N$%eB%9MlXVNyeKiK!a&_=G% zZvOt%+uJH<EmKgM&#)x3YuCEslV@K1zQ_Gf+Spm>VhW?6V_7VF+B}sPyZA0eS?@d$ z#eMQj!8u<c1LGydd7n7X?F<xXQ+)S*x46yx^X`p?Y+jm23g4*ih+A)P%z;a>z(S^A z_uV}#-A9?6IzIB7&E}nUdTF_1ph&V~XsE%l3eK?ASL+YHEZS+4yFI!k@rOXp+SY4Q yE+t%LyYEI{HkqG$+wQlBOW>EyaqI2t7#)vK+t0cw<25i089ZJ6T-G@yGywqaxuc5! diff --git a/src/_h5ai/client/icons/16x16/tex.png b/src/_h5ai/client/icons/16x16/tex.png deleted file mode 100644 index 1487b253863859568538f1edba54dcb97e424039..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 677 zcmV;W0$TlvP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10wPI7K~y-6m6I_`BT*EEznQrciv%r#Mo5!{S<{%s^rlFW;2%h( z!CtUXR>&_93$f8ou+raPpEihLl!RnVkbp=UZGytgo4hS{6E_Hp9=OHh-E-c#ocoMM zqft^y9goN3pL_$RX}Tiv%c$4uZYq_^B@zit)BF;7JRUO~4tachyc6H|bMbf_-}k>` zfOtGkx7*E07>0yl_$@NPgeOWVE-o&3dwU}cLn4s~@9*zyZEdl*xClVKUgzfKhH|+~ zI-TbH{G4nyODq<{41$2+aLCTi4xLViN~MD1I6OZ;qqRnBO`%Z0vMgGy7O$_b*tSiv zSR@DnBn(3~Ha5^&1E95LWo3o4vokW83?f3i-DYoZkHf=5dc7X|`}>H<#|XJxZu*+m z8pm-+CX<v(C6<<!@H~%~mlq0!0=Kuf7>0q?8l@DbQff+^IG9wc)#CK@lzcvqX_~}h zF;-VsxxBob3dls@;o*VNXhgHwq*yEhAR<_nh3mRpU0rc>bcEKLYPCutk(d<#*xlWo zapO1+>+9=uIvrA}6oz47Sr)Zg4Z|=P3<e(pnM`Jy@zc{2y<U&&>ucuc=V>$=Y;SL4 zSr!0mYij`X`~6u56D%(;b8>PrJ#TJqV%zqozUc@-5FjEmm$q$x+P;4Ulv00E5RtCy zy7<07lfeJV_kCQ~MMSz1jYbbV&pW=qzyI;2Pw*FWb93Ip!otCC_u5Q_pbG<S00000 LNkvXXu0mjfP|YdO diff --git a/src/_h5ai/client/icons/16x16/text.png b/src/_h5ai/client/icons/16x16/text.png deleted file mode 100644 index 1d48677c65ee9c3c3237780ad1dc32fcde4f0ad9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 463 zcmV;=0WkiFP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10Zd6mK~y-6m5@D(!ax+qe})GZ78X$?Q)n!<bZfQWO3=%!x9~6u zp1?v2yR22xSSf-hn2%(eP1tPWq7Q}{hX3bl9FNBjYwapc(|2AN&+{S?`E2ZVyC@99 zQLop-^Sr0XX_|7o-8i4mU!t`h`M!_V`jr6qzE2#-BXQ2*oO_83kn_Y^OO|B-tk-M0 z-EIL=N^!YdN^hkU!{HDBYb|1oDFhaaMa3x$!^%6y8)FdXT=B8lYygTBN-2QCIZrd4 zPKz3)3iJ8Aw(nptDBU^UT3Z&_@AoCAN4v<YR0JlINy(`$#lHy-heL^Uzuy7qbUFY8 zK>+YL!FW8b-ND~^m|(lzR@|=FD?t#{)+z*yF^CAW*{lNU_xmN+-(+hoo`}Rz6rr^y z%d)4A)|x1a5Rq6~t=2M0lGW*SdV6XCKhtbBlXknk{07ed_tgh+a3uf$002ovPDHLk FV1o4Y#MS@+ diff --git a/src/_h5ai/client/icons/16x16/tiff.png b/src/_h5ai/client/icons/16x16/tiff.png deleted file mode 100644 index 819e64cdf7aa0880edaddfdcae40cbecb88bf435..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 654 zcmV;90&)F`P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10t-n*K~y-6m6AVCQ(+Xwf9HMgd+#mOBHTbt#59^<VnTIx*U>NH zX2R|l;8VCb8dq0Vhz1)6OG2v&wNWZiNZa?XLx(yUd#1BIzdYwWj~pHzKDXBHr<5ME z#E8gop67dVaBy(kYPH(UW)r2<e~Dv^42MJd{r>07THCIw3Ty2$2B@lvZnxXcy!RY` z_{95{Z%DcX(MWViun?yxEGjv)SQH*D0e}~8U*o+e^WJkY_|10X4rB!hjdL@IQ%XHS zVTnE<DPWXGs|di&XpFCUGUpt(q+n}v9c>IDB!bsy379;fMFTm0BIqO(g#i&%5S(*! z2f3-S^Xw5frz51uus??=HN(^bN*T1dO_&tKi6LJtP^BS?nV%3sKr4kBPuYIj;<|T1 zDA&jvtH|t(VzXk}n<3>o)K@4TY#>?~i4a0SdG8ScNsz1ugxb9=?AbNp%HW2Ud~Jh# zWd$)AVLWB}{SruvCnky9{5WTNc}1`R_jQ8!87d3pS2L0u5`0OD3N_Fmpwj9B5VOd5 zFhFM+F-E*~cxw^m&<awLMFW}dmE8XeP&$4MdnnPw6bZqRlK*Fs8s07d_2xR?&U;HW z@yX^Ie$=0*aJT)CSEuim0*uFF!k3R^N~!MA(b3NC?k>id{}Mar=yW<LrMg+YUf(-8 oIoa=YIy=iaD9f_jXf*cz0MpbK@1RhUA^-pY07*qoM6N<$g0`U<uK)l5 diff --git a/src/_h5ai/client/icons/16x16/unknown.png b/src/_h5ai/client/icons/16x16/unknown.png deleted file mode 100644 index b1dcc3f6eabf24311b4e1033e798326e43073797..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 556 zcmV+{0@MA8P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10jWtuK~y-6l~T=$;y@Uz#Ev-#Mv171AuY0t2NfT{lQM6#^A__^ z;!$te93*1=J+vZ-q9Ex`dJjv&xMSSig74B*Us3hZ%5*w?6GD7MQPjnMKvh+T5b{GA zkH-$Bv{R{6psMOWEk{v={eF+tYW0%@LC`Tx6G0Fpg6(z-#u$#rBeK~ns?{ni%R)Y% zPc)`!!t=b28ipalFocv6QcC!~kI7^LMNu#q44`QmX0sVaqY<vxYod$yR3Sw2D5b>V zZ~y@8b~`AFf_l9U0N|X1G4`MpLV$42A*D>BQA%+>pHV0jkjZ3lxm*&iSS&thIp-j8 z{1~ND3B%zK03f9VV+;ULE|*~##)CEtLy)+_Gn`H*+-^72YBltFy)QZ;#A}1iW&_){ z(d~AVM1LB5IpXJGjG@(PrSgAG(C_y_2ubB%8m!lAEEWscwvA@9nQD+)VYyu5e!s)_ z{g)L~Aq3*T@Odbu&~+V+M&s!+=lpjCLWt)$&i8h^4NcRMc$Q_svaF}q=bXcJT@XS% ulFQ}Z=kxi8>$=~b7EOV!>vO{}-hTnuq;A%qk8}k90000<MNUMnLSTX_Lhl0r diff --git a/src/_h5ai/client/icons/16x16/vcal.png b/src/_h5ai/client/icons/16x16/vcal.png deleted file mode 100644 index 3d8145584d9b5499e73d17a8cf779727508997e9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 556 zcmV+{0@MA8P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10jWtuK~y-6osvOo8bKI_pU9M;Y@<-60UKx!IeEx!e?$cR1HvNs z19}m}o^t4|cMp5eKOn`udiLPn1oaX~Hw01(TOwO)*_mXfhvK4GXw3%$-#6d9&&<3t zN27N8{rAb_<Ld4%!vSHPovmM8TzokCe0jNkeSDmLd2(`yo*z-fw>bVK9&T^bZ%$A7 zd4GQp;Du%Juvny1kH+w{S{)<?cv`J^GzOuJ;cFZp3;<BZAPQGkygfgE9^m>KA*G~P zEItb`o6Sf`DbZS^wI&QhT-T*mtKqsXVHhU8$z(#a*-UD!HBw51QVL@X0G&<;-}fn% zN_d{fVzHpzZqsVDm`<kv$yxxV6e5mewAMsX#CSZWUawQBRPa2HZnw*FxlF_WTI(c_ z<CxUu1RL@u->wIPK_c4jE2aLJsI|tjENt7R*X!Z?KJ)n;+qSVRYiHN(e9wbMqd}oi zU^E(0E|;lRt2=l8s|QlbWHOh_;W!SC<Ln9g{r(<6N=ZrxaT5f=&hz}w2!a41#Er;i uv(4df_-Vafzx&t6*^W#m^Ch3pH-7_N=q}?@-w>7n0000<MNUMnLSTZU-}27@ diff --git a/src/_h5ai/client/icons/16x16/video.png b/src/_h5ai/client/icons/16x16/video.png deleted file mode 100644 index f92f7e1eb247a75de4ed66bd5b7faec131c7759d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 739 zcmV<90v!E`P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10$@o*K~y-6m6N@08%Gp{znPt#-4$0POErWO7zqnSh88K+2odrQ zd<nU--@<OJmk9C@ftsxe#6>_G$Pd)0ltf5e&YhnWvk7c>zU^S{oO8Z2>f++!XYc(R zrPPa;-~2_<ROrf5*b-G50Frou6XM<xc6;9a{Vge_-;FV^%x<@P+xPv+<>e(mK0l<e z7G0I-(x3{R7lcR@PuvT^IeuuLadma|;_U3~t?}NUtX3=T?(TR9@3FO|sPgMdj|*bV zD)xdK93TI5tX3<$_b2M~^fay4YtGNl`I@=DzNYIs)ba6gn$2baT%G(wU6*KU(WQpb z0wEG55}jihgv<BO0Jy)uM|<z-`yLVDa8gpYHO;i9nN2vDw;aq{n%RVAT2r?*hm#T! zq3?UV_ZaUzUDpAitCFI&6iuCJj1;1H!frq25fBl&uETqe77^C#H6ns43Y00(rJ<-S zWqUx`9#B*^Q!xdqDERb_@!qpsF0<F9NHLL8BE^jEe+ns)VuF+q5thqkR^Yv7v)Ldb znY9RUaQLSI**+rMNBq-399%vVkBG3@Y;p!61Qv@$4tr3b6vTucE#)GGoWtG`28T#u zu~-m7$QEvHZa6wRV*iw|qjYVG&x#a%AUeSff{5bw_Llj4j%wRBS!=(lME{L*E-Tn> zw@jx~ep^kbn+k19bXk1y7qWt3x96u{9(j0pplKRR2;oCjRo`o^nH|=-1GPol5@p5= zM)_fIR7N3kM^#m%ls=dk<LemX8>Q5Dzy9%rwjNy?bXk6(V5H<6&N)&_AGOx6{{@fk VbEjPP6gB_=002ovPDHLkV1im-P$mEX diff --git a/src/_h5ai/client/icons/16x16/xml.png b/src/_h5ai/client/icons/16x16/xml.png deleted file mode 100644 index 83a83df91a6742767efeb2be12dcefdb9e5c8d6b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 585 zcmV-P0=E5$P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10mey0K~y-6m6Fd&TVW8zfA`CGbA!QLn_EaBAlVcoG~M_NE?l_i z3-}cEEqnl9q<abICPm>kv~VLT#6P4fg9gd>=S~+fH;pZ&8JNWkXU?2COwjA~cARsE zd7gh{g-}YRTI<h2x7$rytyZVeXrPq(ui-q;8I49<UtfRI#+Xi$Bp72>5kQh8WLehH z-g~_FD-8q8=d^PU5qYIiKm`B<6GLD<d970P=HZ+}S!)rIBFiUNsJn4dSH65l_wP}6 zW6CF2OIT|y%6nflqV6T(`7OS_HdFO%(LY9*b^~8uBRsz)>RuLj?>%aMLUepVcsAs5 zf15liAtHqRd;HrfKCX~QB_8*;3D1T^#}|kQ&bfsL!P680q!bjMgkOi4&bx(2r2v5$ z_JyEOFxlP0Zf>xCbP7{PFn&g7Kbg)6rjGTaQ|#sjlijU92}Fd+UK`ttQ8y2idqZri zj<1#x5!B5Cwiz?oYZv&X6Xx;s=>viFh*pd3fNR#UtvB!+_OAp0q7`|w_EJdE;}xzT zu-2lrUg;B^b2AUL)>)dS7-N>6<X>rwAx%@X)|swWs|SO@;IQBCzh6Z`6h(tLjt_nT XjRR+gDFH-y00000NkvXXu0mjfvlaK* diff --git a/src/_h5ai/client/icons/16x16/zip.png b/src/_h5ai/client/icons/16x16/zip.png deleted file mode 100644 index cc196c1eeeecf71a4ad125c1e8ce6414aa2e7112..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 617 zcmV-v0+#)WP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10p>|WK~y-6m5;wq6j2mL&n$NrSwmn&HYkx&LLdPfEhM&9J2w6S zCMIeutf;K0tfa)m%Fc?IIIEqlg_3AkF%(;9ASfY77G{^3H}99l7!t#70$=iqcawX* zbA#rG2e&h0pF8ho=$4?w-G^_f)oK9L>vdLM-l2eAFG=5mbUN*&3)L&rV-u4Uq<9ig zI7h4_?mc<}!0R{fn4G=E&d;@({oSo4QJr*pbfk<s{DSlLq(HF(K&4VSp83uOqa$U0 z|466BWGOz`#CKT+2p9xld3l*eqXB@+6kh+rWGMx$6jrsdS<>}6YXA@t78e(DfHhdv zMk|FFmEy9auI>2=IUo!}qA1EwFb0<$VN^=NDAlt)H*f$%QA8Mq{|p>9OE5|yI#akT z>1p7sJz?Oi#bpUPQ;4;KRlNa08Z$pvJ#L?$t76j_s}iggB-I1>Ai$~pt^nU^@?v3% zpm;t1>loc?LNGw8J<@K)nEo3Kj*s`W_&=8@4qYYQ+os+6galGzbL}HX2dz^A@|1^$ z38aizt(lm;$>7D)8sv%hwpri&jCd)r^?jAjpZ8}1oFA#;rG$8OxYH?3ja>_Ci1eLm z*%-^$)o*yUu@k&{eEELsz&%S8)w383^s_rWRCxLqgntx*WUqE=00000NkvXXu0mjf D(KZJc diff --git a/src/_h5ai/client/icons/48x48/archive.png b/src/_h5ai/client/icons/48x48/archive.png deleted file mode 100644 index b3c07d56cd597311f40738d9f70c606b52e4c64f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1433 zcmV;K1!nq*P)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00004b3#c}2nYxW zd<bNS00009a7bBm000K;000K;0UmWYH2?qr8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H11r|v}K~!jg?V3-B6IUF^KW}C-nTf1P)@imYD>PV7y|h?S@L)j^ zMFcNiq|mzuZ{9@lpq@SJ!IKve3cd9t6a){e-9x~|KXf-j(ykC<)@3u9H?N1}O=t3d zTQ`Z&FFbbUy_cEqZ{GL!eQ(~ZP)hMR!<aUK{|YO9B7`sj2e6sF;6lI$wv|#cs#QwS zkx}~M#fx9Rd-v|Q?d|QBlu}74RS*P2ORLoyT72IhTAn|Dt}>a7%49NX|Ni~=i^bx7 zeg5IY2i0sgRkPVt^?H4~R4V;^`t<1{kk-6~Qc6GhFJ8TR^-Hl>{9a1Qq;jKFDsk%6 zDNdd|iR-#}p2v$9FIZVwVQp;<+qM(^S5{VjJ$m%$Pr!y!N@|(7z~X@e2fhn}fG`ZB zk(opZf`BVmuHd>Zb8~atxpSvSA-Wtobm#|QvBNpaffTUMvMkg0{oQ@!1K>Cg2M-=3 zm&>td&mM#j06j`@9LEOs0e`?h0hmC#-w$>h`hG$Pjvqgc=XtbRt)BKSq-k@G0uY@t z@c=Z!FyzUTCkP=pckWzNKY&lf*XnMW)(9x2c=+%k^YinZIddke8^tFcfDymoBq4-g zb90ji4<29`2J7qVgki`KKG7UC6C+^THn(owBAd<f?AbG#%_f#*jm0NE+eSGs$)e%9 zE{ltcT)TFSTrQUgu+MLVZjUGNR3tR&enTWQ8%eBj`0!y)oH)Ua8#i{u$LKzuw1hOl z<>h4_KYq-mOP6{A=+l38l6VxxwNZm9=RiLR^_vGeON@x`%(&1FCDh|Wi2!B^LzWUi z?;F|7yO3U`YW(j)yNz*OXlgUD#<(sN8-d7<G=$E9S#}}KRUdqI66!vm`WspIM0WG$ z&4kkovC*EzoS3GKE-x>$y1I(%x<dmPG?7jHo!Iw%&YwR|KA-36)vIVOI~jqgy3imD zaUoy^lGrp&GMNl--@fJg_3J=;ww;@si#FJXp=Sek(l(mU=ed0OGEzz!jRuWI1EmzV zZ{KEfb912WYD|4GXIT~(E?nU3*|S)dg>Bo|wvCjMAP9Q;k4)lez_P4p7XnD^%ypyV zP!Zq6Vs2||i*!1@J1jo|48!2#$Bz)>omfh|e*GHH^JX##!!WRIn{v4f10=-DmoHgb zTB1-W^z6&WlW5fOZuOH=vazwDDfQ08d-v|8TrRV;w1f}>-}mu-pCAYr=et4oO~<Lz z$NH}jB9Y9l>*BgDrfE{GR>@|w14qCRLg0BG@87?tUa!+?wP>|kNGXw05{6;Io5vwJ zs;&DvLI_OLB$Y~G+cxQR8pm;%pP$F`JgU_y4BFVL)oQq|%fiCKST~O2Q`PGrbTJGA z!)T{!qtT#Nt0np-B$UhLA_+lzeWFJ}OK6yk`UO31A6+kmNIZSlb;)Ehn5IdkQqlXS z{dXk>Nhk<{NJgWG_G^pR4Qtm(rBXdXbV;ah0AZz4kw=akF?S-Nok(QdzTNVPOK5Fv zP162moCu%^)Ze^$vtBNji*X6XT}UVLzm>^2#W0M%5=x~~R4Nr#S6A18dWUlqz!vbw z-Me=m6$*tPj~zQ!P)b>YB=jle(_OD^G?hw44&*ovLWtn$)2DykyLayq?JtyDK=h$o z01Lo3z_-9xK(_CAPY-q4#D51$z@JJfC1U<-0D0g`+T`v2*O?l8+Cfx-no=r+&IrUI ngs^B!YZm|6BTz~u*4Tdo3%glH0qGNo00000NkvXXu0mjfiN~Xe diff --git a/src/_h5ai/client/icons/48x48/audio.png b/src/_h5ai/client/icons/48x48/audio.png deleted file mode 100644 index 20c14897c231f863dcdfe6227a8ab46ec733734c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2062 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 diff --git a/src/_h5ai/client/icons/48x48/authors.png b/src/_h5ai/client/icons/48x48/authors.png deleted file mode 100644 index 90ff6b3a1282397820cabae3c9bac9c1380e746e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1508 zcmV<A1snQ_P)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00004b3#c}2nYxW zd<bNS00009a7bBm000K;000K;0UmWYH2?qr8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H11z|}<K~!jg)mlAo>oycUlwwPcKkCLv@?PK|4+szsUAkq+lKG7t zvh^2aFZvUT&dHFuTZY2_;APF$rFfG82N{yKfnz(dY*{AR!KNNfk(A{)&FcXK%M!(V zE_rzGrEJ1E$Nw45TN8LG*5ogQ5Ep<CAdj!lIR;=1V8l76;$rLoA;dd6I(m10e*W{` z-rf(zVsYy&Seh^x4F0~kx%vI{^z;`($UWyg1OUQ07bCxUb#?XY;o;$rj4_zj1|j5C ziQ4Qsj)Uv#>)(!#kADL259gc;nG^uLZ!{VoDW!={2qE$D+A!JToP$z|Mx*f&!222J zSVB1fwQ99mqm(8(w0&PS<iR6^BnGout=0h40JMQG4!8h3&bhXO|6=5I5L{$VvvUtq z&andov-Kb#NUNXf`Kk$vzQwuxDLFu9$9xz~BmY`*669>;b#hW2a8wDclH{_GIZ5Yn zj!Mix+GsE0kg3fgp;<TDwzVibkhq&Abjs}pg8`nNo-mnArbgD*P%f8IEEZFp(e<fm z8yk}su~tH&BbyH8cAZWKVHhHx&m))1#rOLCKEg1>#>NIrc2ws?J575>II(cOW19&v zQ$Y|QiX!B4xrFgtE{7<J5ClQ$%w}14j^R8rIOm9>2(IfI+qkZaD2f)6PYU#lSd7*p zQc<5HgkUn6fH7vZEY^jte>GvL^3grxNS_POfXTTu^2_vTK+Jb83d!E8p)GD?hzyJ| zP)bwvD<othY#MFlnM4$tySNM-$ARa07>!2Oc5*0v0b;IJ+2}^fHr1t4Db;eJP_Wud zv#-KhO6cTbTi~wi!uNdyL0}~Bx^89(X>x&+I8h(U3Spp9sU(cb_ZAt|G&?ec0|Xjp zOcF{Xpp#OmRD$D}6>GDlu@`6JL==j@WQ;=c{V0kOAysTuvy>4Q2Nzq!HUlbYaSVq; z1VNCHPY?tM!_d0FUPfATJ2F#erpzl}e|~<(!@~n8rSLp2VTe+So0}W>zK^Y~EqI=% z+i4~27-menBg-Tqfyc*3bUGaXKt7+3ql^x|?*l;W$mZrI3Wb7h&zm`sC1yZ=P`A0^ zoTJ@tgE1DD&5KGvIC6V?3*Yy#ySu9m&zAnQGvLT%btQ$2e!mZ38vB>6f%5r0D5dCj zyQo&H+BT|$tXs-OqYWVh;{DMIO5=C{)XFm@nI#>NVVeO_`>%pL0Bc`qVb{2bb&#DI zjYcmjpJk{8pe~Ec*P+P+#zm|H=iHiAv%+y4YdF<Fzlddmy4WwHUa#Zs?hb>&U@6i9 z<#HL@+uL)qnYLSlVG*ZFNCsmJ^?DtQG2GwZqu1+Y;f->+jGdhwIF2*726U29ufdQ9 zw2&9G>fm@h1|bBcQVHE|H<JUEN(GeC#2(ocg)~TJViR%k-Lw}d7K=DIH~^&-<M9|_ z7-BdaVmKTEnC=4#g#tX!i?g)|#isgSJ~xySkR6zNv88*}r@r2k9g+?BzK`|wb<}FL zxwee4_>gmmDf?<<qi$%DZ>QA}wvD>nq3W>uBZ=-A^<3wGu8kU8v=TCnw8@z?BR0ae zb{1##Zza@eTSWh_g_N1nZfIDm)#|IA*h1Q>30pF6j2Xu`X$S{G0KI0j`Po$anCkOY z9clJ}sWh9-=4SxC8Ru9+0f6?|+1aNkii#&ECm;6r_e<g-xr4N8x_de~*mSPD)@rq$ zFE20K7Z(?wF#Uxx0KWXtO#o~I_zuAL06qZtCNTtWiyo%L{{ZkOfWJ8BJT4yyAr63V z0ldSMeEw~C8ZpMyiF*K#oO1?f>K{VL8m7|v8vpDu;haz8i~j-}UCNuH6_Kd`0000< KMNUMnLSTYQ(76Ku diff --git a/src/_h5ai/client/icons/48x48/bin.png b/src/_h5ai/client/icons/48x48/bin.png deleted file mode 100644 index f623dceb7cfc2bb1121689f8f8568ef4966807d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1767 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 JPDHLkV1hDZRLcMW diff --git a/src/_h5ai/client/icons/48x48/blank.png b/src/_h5ai/client/icons/48x48/blank.png deleted file mode 100644 index 78363b0fa9bdf9c2cee469b23446f8fab17af6ba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 236 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sjKx9jP7LeL$-D$|>;rs4T)%(+ z@#oK<-@kwV{rmUbyEh*{zW@65+ow+-e*F0P<HwKh-@pI-`Sb1D*FS&$`uFeOuV25u zef$3T^OrAQzJC7v@&Et-!G|sPgUl@n@(X5gcy=QV#7XjYcVXyYmGuB}I14-?iy0WW zg+Z8+Vb&Z8pdfpRr>`sfZFW|EeWqh`ON4+zlAbP(As)xy9&7}17!EJ^8GQc%ODH45 Z2OdrX2F6Qkg>QkxJzf1=);T3K0RRgwW}N^4 diff --git a/src/_h5ai/client/icons/48x48/bmp.png b/src/_h5ai/client/icons/48x48/bmp.png deleted file mode 100644 index 675cbf66755c34f459458f70596e3432917ecf35..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2899 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 diff --git a/src/_h5ai/client/icons/48x48/c.png b/src/_h5ai/client/icons/48x48/c.png deleted file mode 100644 index 87ade51ccc9b1c8c569b662d7b12ff1100023657..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2763 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 R+$jJ6002ovPDHLkV1j(0HBkTn diff --git a/src/_h5ai/client/icons/48x48/calc.png b/src/_h5ai/client/icons/48x48/calc.png deleted file mode 100644 index af88f8350dd374b10cb587b9537c203610357abf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2007 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 diff --git a/src/_h5ai/client/icons/48x48/cd.png b/src/_h5ai/client/icons/48x48/cd.png deleted file mode 100644 index 7c73c4871869a62f6176e0657a49b960cdc638c0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3047 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 diff --git a/src/_h5ai/client/icons/48x48/copying.png b/src/_h5ai/client/icons/48x48/copying.png deleted file mode 100644 index 199d436ca04dc67ccf601d520315469b39f0ad85..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1980 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 O0000<MNUMnLSTaaLCkLe diff --git a/src/_h5ai/client/icons/48x48/cpp.png b/src/_h5ai/client/icons/48x48/cpp.png deleted file mode 100644 index 29b438730b04f118949decff839bd6940c3263b0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2685 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 diff --git a/src/_h5ai/client/icons/48x48/css.png b/src/_h5ai/client/icons/48x48/css.png deleted file mode 100644 index b0d09ee24c066ec8fa94b77cf7e10cf2b16c2640..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1745 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 diff --git a/src/_h5ai/client/icons/48x48/deb.png b/src/_h5ai/client/icons/48x48/deb.png deleted file mode 100644 index a28064340fdb13bc56c42ed8695e395dd5d4b054..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2317 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 diff --git a/src/_h5ai/client/icons/48x48/default.png b/src/_h5ai/client/icons/48x48/default.png deleted file mode 100644 index ec5c158d0b71565e472ff64eaa809580b88d9e3f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 997 zcmV<B0~-8^P)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00004b3#c}2nYxW zd<bNS00009a7bBm000K;000K;0UmWYH2?qr8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H117b-;K~!jg)mc4H95E1mvk*vhk#f-~2~;3aT#+Un1r0SN1zmmt zeUzUNrM@eu(@{kC51^$>6H%Q69Z8CaD2Kww?xfhYG2R*P9jy0`C#}}&yB)u=pJ!|@ zF*6=Bl4%ooDCXS<BANs66u<&z&$$f16@Y)toSI7O01+*2Y-}v``~8nAD=XWrR_paN zSZWxJMn6waPrvT&?tUVoGiJU70Agm-^REsM4?nN3ufNZ-4BFfvqNqee?IuZrqoboQ zo12>-0Q_R+)X3x+faPwtyOpMC$p{hID>k&Ym>FrBqTB6m0az|LTM0b@&}p~Zoit5L z21Czv!|gmGDs^VN-R=PB05}0|9hd{K$jqXFCVF0i;o@>C%8ST3TL%cmd@wMi{kvbT zo3OEM%I@89fQsvG7_A~7OHPJdh`b~x-+{!JP@N?23zw5qwmGUa0#&^o!y(tE)Z3xC z=w{o}uT6zc4T1J;r8|j52^m8n9o7wBG6Jup;5`0%r^%6+q^(3L&pPBuY=){zDlzkb z&&7{IJ`(3X_6Wq72NT+~eBBWs*IPfd**`hSCI+<L_9n6=7Yw5_4AFrSq_7$@j8^oz zh~QE}l1uDdpsheXZb_-&zcj1xIo`>{+8?C}U3VyzI#0>MfRl+!QOG_#!YDLR12J$P z+jn+knlWjE-2?&>5_e=1NhlU3m5@3D?u)UV(MB{d(&7jt{-(N$WK(+s;Z#CjjT(fa zO_Qrp|5?iesxgUdlL@bCIiXJCD#T7?+J3+}7XmQGBp$cHhGF@NTS_ghH-$0U7bo#V z5{ik?se~^f<B2Mtsy%7l5cIC0oQWkv(s^ZUgu-co@WGaJ)YsHeyEFoV0>tHXsfU~F zb+=9F?s9Y?O2}VQO!H{buk*R8$10i=O(8%YP&PE#a5((q8wrK9x(Np|uSLNz^BuSZ za6T9ej<vN<RjPmJRn;Dl>whp990NEnI9mx_066LOdI#6n*R7qMoz=Cqwddv~*FaUB z^qVAykj|yL;c)nOe}DgEZ*T7a`4`Fy;Pyi|0eA!8Er53bRsp;yb-{FTj-2>60N(-p zU}m<<2O>%Uyacd>oczLcc&fNU?!*~@-^`o=!up4Z=8;Ql*1i{H0B)H1#;yDhY<w@o TDM-|D00000NkvXXu0mjf$aT61 diff --git a/src/_h5ai/client/icons/48x48/diff.png b/src/_h5ai/client/icons/48x48/diff.png deleted file mode 100644 index c7bf4344add881dbc398c15a2b4c13446a1a05b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2443 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 JPDHLkV1n+ynA-pV diff --git a/src/_h5ai/client/icons/48x48/doc.png b/src/_h5ai/client/icons/48x48/doc.png deleted file mode 100644 index da78212372170494e2a78502c14c1d8d6ea448cd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3298 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 diff --git a/src/_h5ai/client/icons/48x48/draw.png b/src/_h5ai/client/icons/48x48/draw.png deleted file mode 100644 index 60c4836c32b8c92d242472328214a458f47e5c84..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1833 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 X#P`09H^i%C00000NkvXXu0mjf=JAFF diff --git a/src/_h5ai/client/icons/48x48/eps.png b/src/_h5ai/client/icons/48x48/eps.png deleted file mode 100644 index f5ebfe61cc23673991943812f564116cd9b2868d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2120 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 diff --git a/src/_h5ai/client/icons/48x48/exe.png b/src/_h5ai/client/icons/48x48/exe.png deleted file mode 100644 index 0860f77cf811a111cdcda353f989731bc8b75fcd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2764 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 Sc0l?70000<MNUMnLSTXx=@+yB diff --git a/src/_h5ai/client/icons/48x48/folder-0.png b/src/_h5ai/client/icons/48x48/folder-0.png deleted file mode 100644 index f47e7e13caf09c921cab286694c6d9e5cdb82f7b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1516 zcmV<I1rz#-P)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00004b3#c}2nYxW zd<bNS00009a7bBm000K;000K;0UmWYH2?qr8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H11!+k{K~!jg)tXO;RaG3vKfn7%$MOHjn2CX<Np6yaimXMOf?DVz z2v-q7(W;dZMbz~MY0Fj-1ho)y;ie#%g@n<<Tm&tY5+ZTR5dSoP9Os|&?)kMif9|>G zJ!htL?yDbM&VBdZckcIle*e#VQWORMXUTdE;7+A4y^!a*0IS@wRDuf319L@D+`4=4 z7MB_U2Y&F)SD)K+;F-tXxo2?T=~hen7n@{$zP$10wW;9)uOEFY&-1HAQOqtI;zUvn z3;>&+dSvI3wT$hX9vfZiJnJ_PtUUPjCx;$5boBVkd7fXtix?GX1JgjeC<={lrUd$d zE%$EV(V3g$|M*R7v%beaKm5Wk{}yRCG0NPv@%it+`R?pTpPo4VBXA?WpAu*R>&Hh& zSIpl0>u%z>6X{3f*}c2BtOZ`m^L(x-iaCEX5Xkd<#hyJ6t$Xi{g9mp%{2;5>4fX`> z?PPj#?1`^-?tT04$6tP!=lP|gDB1v06a{&nw}8zjK70SjzP-C%xivkCX*cGFOOmW_ z6)RV7;)kDp{o=*fK6n?nS`<a;!(>0Ob=Qt<`)4LDQMPC7RS|b&Jv!X`fwDcr%)}*j z?bx;-*y1n;6Y2+sHm=Er=BES@6g%3l3)LXYyw+;tPW7oK8`oq*z-C|snDzwvfB{Sy zCXfJDqVpz1+^ZB-K~Q&YM~jgGhdF4#ExV!)ydrM>y*8+8W7$OAstbPo)ty@oTH#Fy zWNM6KD*h{oWn(95N(r$EskI1Id#=WSEpciD05I;!um&PHK2EDmFz`!<BO(^KWneKz z5);TU#!?jpjGaI-`%(Oi4LC6tf})_tV)1IIG|)i+Rck^Lw4jhMUVhOqsJ95MMpaXL zy6yvx02+f&2{c4#VFF!!Kr8{1V031q(p)5U4p0#=;IKIY0ZEMjr2*qsUHsuGG;2ye zfTGc16w2EZz^FmBM2*elc7n{2XetXtX9{4d@Tnzc0UwYm4;btCl7Sd!KAOB>nZ?IZ zXF}GDLLTTyWB{UC*1TL%#78Wj0~%9-TQCni_(54ik(3f9ia-X)Y#f#<tvBil9*f7N zJ}-3FfGZ_j(jdd?z$db%LQn<Xu2rmoS}6gfPHYUu7(}vQ^N1l7Rt?ueK8*TmRMjA+ zyAuP5mTk*WK*beuaWxtW!R19?k3?}IGiceafvD$!-~-P7-5kCcYBmn}FdEr@-3Nd) zjD}3-Oh#Qx7gwRpC4vAxE-7>&CpN)}vkHGY>#~>Bbq&Y0nX2_sx;U{dmR%lD*N@p+ z+;wIR2cb~Rb!egVPjogkRV_pXSTs0s^OE>M$WN8joY;g+9MCsgg{BhPGS?5In1wR2 zF{SNz#F>uo!Ws#msYJn4V^gZ|LYGYJsDj_t2wN&mcV->~)w>sIDW!_HgwjEqD&kT} zin?lHvl^PDA1Fax1o9h1y(r>RQJ+FPTim3S@P%BOxOyFh{HK8JcIC9ocCL^U-%s{* z`J?JcgJpN!nX76c-^WKcdm$Zr3qYiSZXH>)?-Dt0PuD+n<^`Nsl+KN#-sFJV%j+WD zeLw;8`<2Ow`-TQKENP-1$sboHCkT6uRYI5pCQhEYcs|QoRT%vb9fFW$El!@fcpjK= zn1cqUfRW=Te?HYVX3g_Y?%ck8>&A8Be&!L}=zeahjR@hn^nNJDZGu#dM{lm0T#xQY z{qV@;@yX%Szm1&u_WUXAuQO9AfeW*@+NX{UpSyl+_}u+K7gOq~OaK>wv%m!$0rCG< z$@4q|27#?u@GE+OasipglDG_v6-8lNv-Iyad7k%SHPdPu;UZFE|7y^VFa8Z<uab7~ S#)aqr0000<MNUMnLSTZGIK+ei diff --git a/src/_h5ai/client/icons/48x48/folder-page-0.png b/src/_h5ai/client/icons/48x48/folder-page-0.png deleted file mode 100644 index cd2175a9ed958bce9c8850e259dcd6585aec0839..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2161 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 diff --git a/src/_h5ai/client/icons/48x48/folder-page.png b/src/_h5ai/client/icons/48x48/folder-page.png deleted file mode 100644 index 6a3ca2be7d8f8520fbf7a28ea6508525619044a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 443 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTCmSQK*5Dp-y;YjHK@;M7UB8wRq zG}}O!QR&V79-yFPiEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$Qb0xWAVndW zB{``K?s@sSsS3fBxk>psnaK*C$@zH-AsMN;seMZ{S2Hj$@_M>BhGaCpofWvQ$$`f; z|7z=AU!K^$$3<QdExQvezaCC7;V(VV=r?(uKgZK~TRhbngF-8wCCEMqzr#J}nVwN` z*wx~<(*-ZOx)hzA_1|hkXaz&SRb%7lvrOYzw(-~pMn6*A;Qpg?mJoZw{SU%hRr(%V zyp#Laxj#`tV`)ijbVHEWI`f&oZ3URFwKSM+PFG}j@q6Aku8*hXvKBEbP3nBH>Df&+ zmWHoF`R*@fu6w;ofA>y7(TQiyL>T#<ElEhqRG%fxFwN6MlVOUti8jL&PZM2+n&}yF z3_HB{?0)X_K=>VNm)K3QDLTg|eV*}~4`_vAf-gseFxWQ5gx>1L9|sb9s~NlI+x8Ud a7ci%>6-7qhJNEz>h76vrelF{r5}E+d$Ed~t diff --git a/src/_h5ai/client/icons/48x48/folder-parent-0.png b/src/_h5ai/client/icons/48x48/folder-parent-0.png deleted file mode 100644 index 0ae73de193c3df277c7f040bd12e04792e240661..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1227 zcmV;+1T_1JP)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00004b3#c}2nYxW zd<bNS00009a7bBm000K;000K;0UmWYH2?qr8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H11V~9lK~!jg-CECU8&?qi=Dn4@wt^x@wo|Mi6bMO)bFfuJoTyMt zLA?p2yRJr{^Imn44!TQ!hyMXnD5dn)QVPB2Qd3h(YD42{^WIJmyV|TIJJxDfKhh5d zNvpRz-@JJ<@6AZW%=nZcmQ5fkjNk_%k^oEqYgj$w8~`?ef0<biFVb)c5z#t;jFj>V zA}TO*b~!w61`++v%s*?be**9qGY<gI1K!MUNhyz*`5Ub@0IXVY><J<Eq?8G*^^ZjK zCo}8eGT8vI!^{Vc<1CZpN8vaQnE3#}4qVRuI!^%D2Jmo6+``}?T&@Y=g8>r2=CT;g zfK9lZeFMmoPX#{TRZEqjA#Qme7o;a~LrlDx17y41K5DnyN0^Th07eanH3ste{7$`I ze_F5CpXT%Voj9M30M}p;$LWpre!qWYnr6Z@%|yT7KLW5G<MRdP7{sE{XzUjXg<Y*R zwALsT3cHO)V}Bm{Vh`d}DwS$Bn=h177#g6ILbKU?kxHdfap=GtgE-Oa^<F2FNmD6> zpd^z?v)AjrhPQ*p1rd0SY7A8>l_#ZADLb6`aVeEb*-EAI1kn?Q&vzsXMLEbBhOuc` z)}d00ZZkkBMV4h98iq0RvBl#!k%dMs&ceUj?Y_)pGWTvHKa@-+bFbU&zQkBD6%scZ zFf)q9;-hl8{5Tl6AMpap<?`cVvG^zs-Em~0jaI8w)LP5C$OlBWTCF0yGkp}^Q9U3n z%R0<vvs>d?=Pt=+vs;#B9U|f}BhpTs%jLGK)#@|bwx^wWUu@e(wOW0a%jLFb<UO$y zhYjMjPN(yVnG<2j4~3Z%olfT!+%8BM_*`er1fo`}Jx{0856;ie{T9dW?ye-ddmb(> zF8q7a>GXqIt@ix%^z>J_t&>n7W(E=M0r(ogms8%CfLogegOJY7&b~4X<4y~XkB`5@ zXxHN!zy*N!Q|kW#z_-kN9`rz%CG_4?7`*4c)*91z0Ki)Smx0d?02M<2#1fjNCLW(H zRw@h!*dg@=;qwi8Ao8Xb!UIv^bB(f{Phf!t`1oHL5LxpA4TvR(CvbIj1u5s&fCyqP zLF}BIoP0m+*oeAr3}O;OAVN{|H-LYp7{>tgouh7n$MMD`6crADK@88C7L$iLT67AT z0UpP>H@4=Dxi+>IijgHG#OmAQag4nyv1r_AfFp#M_B_5ccpUv)KQv$f;8JUSZJMT# zQm&jgq?BZurqEhn!>uJg{7wwu9e_7Vsn3aMYhz<Wt*xyYL_~&RfQU#+NkRxnDM?C6 zM1<fqZ;U^7_&oq<t(lpJuk6*sthHvxaYnu$yT(c>Ff-e>tp<aER7$-A@W$ipmy`sz zMBE2(03Z+G{sJd>8eGC9{tJNL09-IL2mfjy0BiyH3@-Vwoq~D8hHJzh0NygQ+aw+T pyA2T;aF^Dq<x~fNV&;*$^*@%#Uv&dBtSA5g002ovPDHLkV1hyhEM))y diff --git a/src/_h5ai/client/icons/48x48/folder-parent.png b/src/_h5ai/client/icons/48x48/folder-parent.png deleted file mode 100644 index 6a8ec84b2bee41e6e007fb3ad98945f13497d3f0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 519 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTCmSQK*5Dp-y;YjHK@;M7UB8wRq zG}}O!QR&V79-yFPiEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$Qb0xWAVndW zB{``K?s@sSsS3fBxk>psnaK*C$@zH-AsMN;seMZ{S2Hj$MtZt9hGaCpy%m^uSb>Kv z;s48bQ)3Pl%$e|5;VIuqzlpbx)Jg_#U;36wjidAb#?XWFD-O7|b_AS#=_Nj4)+<JN zcloI7xg9;XW;4#%^WCrbtiAe#)fGxgf|6^u0(tTcbB?xWDDPto7m;7o`J!W;uAK{a z;q7g2KRuE+I`f$)EiPG{!8p8ja%erjiNi}EN?~P~!Qf;0-6H3i$)_7TBC|EG$4-9A zQdd6rUiI|XDpwfKM?H(-2tBa7&Ys<g_rv`}SLuaJ7S@@WN|P8jCNC0G;+$ahI7?v> zV-$0hmJ-*3zq=+hS@53tXyPQ&AF!8wMy0{AHRt!4A6s+ACgWYDRDnrP`yoahmn-{! zRPrZSHXX6kaWO59=eYH~mh}O{9<5&*jGr`>*1g`Pxb0^5J2%%9mI=2KzcEakBL2zj z!W2K|DSlrYzHN!H;thbJtIQYvy$Q6q%KYx^q&+F0AI(|{j1LA+S3j3^P6<r_f&<Tp diff --git a/src/_h5ai/client/icons/48x48/folder.png b/src/_h5ai/client/icons/48x48/folder.png deleted file mode 100644 index bf477170418a9320f06780ee139d54f66ca1773f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 353 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTCmSQK*5Dp-y;YjHK@;M7UB8wRq zG}}O!QR&V79-yFPiEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$Qb0xWAVndW zB{``K?s@sSsS3fBxk>psnaK*C$@zH-AsMN;seMZ{R|A!9_H=O!$!L6gYa{O=1A*3u zyALGj6z(caI=1nN;*CR(W3-e7LJB@kUiy8i=A7@^t+O*+PMk9P(onA}U-0+ag}dG^ zZ*J-bU#(udHD%t<kF4jU^p%7JckiBl#`r$dIT`yDcN^xk9(f~Wvxz$&x3B5&eqa0R zhxqnuvu53Ve4Y8qnQ8k@PTS8e(Qu5xgl&N#LoZ_nk3%wp6!QhFLd*W#WX}27!2F@W W=~;cm<Y_?XGkCiCxvX<aXaWF=JA~^1 diff --git a/src/_h5ai/client/icons/48x48/gif.png b/src/_h5ai/client/icons/48x48/gif.png deleted file mode 100644 index 0c525a1d7a005bd08110df572cc73aa136a799b8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2690 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 diff --git a/src/_h5ai/client/icons/48x48/gzip.png b/src/_h5ai/client/icons/48x48/gzip.png deleted file mode 100644 index 6048579edbe894f7276038a93907e8646f91425e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1836 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 a=YIh^e%wUk`9O^T0000<MNUMnLSTZNt8L!^ diff --git a/src/_h5ai/client/icons/48x48/h.png b/src/_h5ai/client/icons/48x48/h.png deleted file mode 100644 index 7999fc64b4c83f3cdc4d342d1541025dbaa1d1c4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2513 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 bix&PHuIS@bf7l$J00000NkvXXu0mjfk*%`~ diff --git a/src/_h5ai/client/icons/48x48/hpp.png b/src/_h5ai/client/icons/48x48/hpp.png deleted file mode 100644 index a1f607563ed26df9fcfbbac09d616d53f1f72261..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2707 zcmV;E3T*X>P)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00004b3#c}2nYxW zd<bNS00009a7bBm000K;000K;0UmWYH2?qr8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H13J^&|K~!jg)tXC;97h>|zv`audGze;?9OXvH-7EIvWf76C`u#< zkpdx*Tq48)q#Sa{5rGmo@W=rW;*dzm1u0Tw`2eTLC=$Wg1Wdq4fKUV?wj<2ScI>su z?%1)nJv+~y?kWy5UE4D|<HtH7=9fyYt^e=8{&)RVW1*Dd{~3&rTYx)-So9Aegb5@7 z`{kEkF50$z*C=@O=+V`~hYzm-Eu~bT5lSg~VHD5j^V6qJoqDxetzPkcU)@ck)oQht zmX;2`^wLZFfp{plP)dcCFC02_=vz-d`Q*1FO5HUegg^+v($dnO=jP_V0$fo_1!0IJ zf%3k6`@Srt)WV1VM%O}SQcBHK2tg188W(;O#oy`}1xhKTluS=gKlt#&4=?m&);VAS zImdA(!Vlhg=N*#CB<*&aLZQI5YuB)Co0XLn9(dpZYPA}xtE)5`4IIZoN=dujW_)~{ zX0u5qlc7{9ZOYP7p$EY<P4oWy@BhT{<Ht`$6)=H#)Y5zQ?9mLBQj|(1gb>Wn&m)9j za&nT1iHW{V+wC?&2yENFZNWzgJxmGD^X#6?S^?1;8WtB9$!4?E>val+0@Z4jL?XfR z@-n-2?ZS0ku3o)LDwU#Et5GhO@jQ<p2*~I2n^qz;Mksh_zyYPSys-g<o^RW>jYgwE zu~<Y(Nh*~BU}k0p%d#jIi&&P0l#)y)gX1{(zE3O`+qCe5d3GZuLWtIRLn$Rf!fLgO zVHmVpEp3%VB0;OwLQ2Wy%a<`tQzvk(R>Lq1s?{nNFJ9E;`F6%IWumxn?)$!umOc+e z!S{W9-v_|5EE<gljYfldy-ulAqF5~Q{`>D^+cv)M<9QxRDH4eU$z<||6=fJ~wrocg z5P;@VE|;|sLI|?ite%H3Jw1IJ0!jkeEwzR)FbuN~zg~U=O(zf-hB-_*ErbzSFh;pG z%3w30p_HQ9botJaeLVZd0+(wSM$)aduJhfa`+4qHJGoL{8cHLjG(sf?dmS;X4*R}; z$0xH=0UclB2hi!XH$^urETbW0NGWv^pFDXIDJAiEoOnD=v)LpF0%m7tIk$KQ1EG^S zJ2^oh6gzkB#C2U<*TuGNIvtOF`}cDC^uNiMvvmA`Kq(a92OWd}Aq)h9K>C0{p$KGm zNTulb9$mQwhA?|ds+%Wqc#wsfhowvi!QSmV37$Tr@#aq-gstPWJ&$xc&D`7^0M+Iy z-*|l=Ex!&Y)_MQnw_nurAAjjBQdXAl9eJor7l9ugdtA?d_=VpwmDw@U0|wn3&~dW3 zxQK1r7{+>(1wlZ$T;}5GMdkvj*DstoOR0D-wR(+uy^ia;wA*cxnHU{k60A4B8{ob3 zXDN)&+?37_JU#E_fDu&yKtw}m%a$!P8V%y{IHqahd0htac${Lfi1ODJ7$47|l+xjr z%jF1yfVx-ZxzGL#r6g->YrOLJuhWq&zWM1_5q=D%6y=E>jHR=h4&cS(PvZqmo_**5 z3DW@}9iNEi;m{E3%aBAOK_ZdR;S-+30NHF7KjMLGHVesQmx1hUVhF}X2C2$`pf=&6 z-i9Dhl*aF&JU-u-15Rl#N<ppdA_GMbD00peQ<*uP10jsefm^LKN-2nV00r`275L*h z)Vmc}Yr*zOVo!YvV<C?)x~+>Z!4E(wh?!O&KSRWNG7hI3C0kz=iq`&iyG=YE*NNL~ zHi2#k8A?IK19D{z`IA4uTBPiqyGG|P=i!CN5qqYPf#Uf`e@?sI!m+dZjxl%-FoenX zKi>_fOfsj1A2^FfdO%ZEDivJUrP*wf%jKxmYK)DIF+V@g*|TTa9`V513&$`LG1|Kd zB<m9U)Cb*As(E;?{2BAbCs<m#M9fMMkEL0@@B!zVmv9`1QmMq`<fP{1*kjBVdaXR8 zo47#*^hq4T)~#EanVG>fO$@{6v%>uRJbv&eO`94^V?6%|=|URW?4S<5jr#Rz0POd! zV=0q8d-iIJ-w1>-h?z!c(4h)MPvX8Lj()JXxQGyf>({R{K0c1?x;T!*?%lgNf96b| z2bS(l(yFgunMsndIL2;=;xBvn)h5kaor_m4;(4A{Ae~OLb?erlN({CzLln9BLAJ24 zK)qgPc6OFnEY=sRv$M0v;4MvC_{?s`_Ah{GfK&vnI4byC7a2g@jx#?q-*;K*bULH9 zzAfmxkx41FW<m(k>2#mq(WHx>15PQ65~5c`1i}=^XqBSBkGavc^H#2uy|s-YH2A^b zO(^_(Lm3UfQ>-`S5quYS>&@WJLMRA=4Iw1x=76TUdi5%nFzK{C9LK?RT|~?zUn<b7 zR&j!U1zgu<Vsc_#g8}@91rh6S@Ic>{QYpm;=Pt72Yrg@Y1gswUD%L#~%dU$Pv9RCq z@jRt1t)%+MJkXo#25n>#=W;n>t8G-olF3Ap!1vj*WeY)M-84-Kg+jj&ACU(Jq3=Q? zW&fs^FJJCjvNtM~3cl}i<;s=5^`USx{D%Z1&jEmioeRicOzH}<V>S=*IE7LX`TA3u zPGytbtB9f-LfIrDf=ArmrTrE{Xm}D2GWz{L{>oU&A)n8a&1NxF3#T39Ki8Jov3J|L ze5L_mnG^ysnS$}ex<IC}k@+3Ks4}XL=MWxw^m7}UEg=N63v)N#A!Z<AoBL_u7SDm9 zNi3poqm@d9bUMwYOP8>1n^-J{<2Y0*6>_;8`FtMBvIcqIF${YFiLOVjA61}th_2sz zZQCXuk5ev}@qM3UGKuf|OixeaI1a5=i&(7t`RzVp4HNceiVUG2eiDa}&1MlokjZ5F z9=Jk?wgPwh<T3~&1dif|dZ6!FC1eow%B{4+cM2myW^hdxouQc)jXlrvXt&$?1|_9L zN~s@tUDw6;eHx7hQc8j#(0JE%ky28t)ih2iMWfNsboF{&?-%ln?lma<AdC#5^XJdw z`#zRsVOf@b+^W~>v|254xg6DMRkzxPVGslXi9~{_sVQo;ntrKHrBYO@RdTr;>2#WO zI?aU(7icsZOioTBrNl4{R#sN9EDOUhn3|fR(P&^829{-EntgAn!(Sz$mfyCmTjvKu z=4K%j1OcXLV%s*kT&@on3L51fh3(t7_gOlXN^J-wA%uQ4hyD<fCr+GL9b`JJF5hT` z*Uw?J(RO^)xY6DK)oRr{cI?>lpaN~+`oV(-PYv5R8khfzF={`6H{X2oY_(dw+LKxT zPCN#D5_saV#~yp+nP;Baao>ISO@{7{meFwD!->IDdXR3=bAy)c%~hDNqYkg-<>lsU zuf2BRz<~ot>h<~?z)7XlTBv}a+w$KF>;tv~;~V_<@xpcBJn&E8U7(^=<N_mvFn|eQ zimvdR|E=_+0gtW{E5NGiJ*4&>TmV9d7~Sf0*ZfD19!S7fO8L>n{{nMbo20Q-5nKQO N002ovPDHLkV1j;d6xRR% diff --git a/src/_h5ai/client/icons/48x48/html.png b/src/_h5ai/client/icons/48x48/html.png deleted file mode 100644 index 36a1338c6a3f5997d7ada44b146bec6b745648bb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3352 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 diff --git a/src/_h5ai/client/icons/48x48/ico.png b/src/_h5ai/client/icons/48x48/ico.png deleted file mode 100644 index 3c32c9857c3e7b775ee6ec72fbdb29e06a7f4cb7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3408 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 diff --git a/src/_h5ai/client/icons/48x48/image.png b/src/_h5ai/client/icons/48x48/image.png deleted file mode 100644 index 69bd44e7d07d2a4d49509bc5db192a883f796c8f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2556 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 Sc_jt_0000<MNUMnLSTZXr^K58 diff --git a/src/_h5ai/client/icons/48x48/install.png b/src/_h5ai/client/icons/48x48/install.png deleted file mode 100644 index 0eb4fe1c41616cbe67f408b1eb291fe5f7ebf139..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2159 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 diff --git a/src/_h5ai/client/icons/48x48/java.png b/src/_h5ai/client/icons/48x48/java.png deleted file mode 100644 index b52c20ab1793aef77488cc10aeef9fa0690e77bc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2645 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 Dvy%4Z diff --git a/src/_h5ai/client/icons/48x48/jpg.png b/src/_h5ai/client/icons/48x48/jpg.png deleted file mode 100644 index f1d14cbedda6fb7900803252baf24ae682ab2ad7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2996 zcmV;l3rqBgP)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00004b3#c}2nYxW zd<bNS00009a7bBm000K;000K;0UmWYH2?qr8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H13o%JVK~!jg)tOyv9M^TnfA?c{mt1~|k}1`)>R73qL}?OKQCh%_ z3J0|l2Thy?sQU%C4@FSaZ*AI_6h@F1C{Q4I6AbvZh@0AN6V*WK^r01^CRQ9fMO>$q zC7Q7$OBN|o<nD5JXJ_um>BG#fmR!=ZQNUCVu$-McoSpywoc}rZ+&fA{_*pi++W`K* zW`|FdQU<626>dLr5y*j_h=l&&fPhk}df$Eb?SJBlC%$y((4pU~*X#Rs1LaQE>2y{u zU%vdU#~yp^Z<JC?B9Z|p5$St=-<dOKzIy!l@!yXz?lRo%O>51IFTVKHi4!OO99R*N z(3i;=aNx+1BM;rK-~nQc96562A>aT7=7G)=U~Xn+X3uVcd%IR*oTI=z$N>XXMTFbE ztd{ty6qpAQP?Y&_yIYA-m7m+LRK8;yo(J@>gr5H1DZcg6bEM9JGN3J>K^c@%K<Nz$ zK!oUTeivUJLpc^eVsRvne$>v9uO&4;|FPfWw?F>q&1Vid-fq325ANx+-zHWJsx}5H zK`Db$7PJ9X-Y*eiK*S>wK-}OQDToMt0s-lhkWhjiCbYeE#q*8teS_aQ@dvkzfEvEw zyrVK!0Sww`w6<tti%5te3WVrEfkXijh^9!bD2M=}5sLHvuNMkdC9%FU18-%S&$bQ? zu-c&k4TBI-s~RT860EUUYfw5tYlA2YsvzJ!gdpTTBGEt;v<M1=Mo?%#kdknW5C{3E zxGAAcz8kS5-jsH!5Zxy+BB8#`j2kBE25St~ShO}MWlHZ!K_Du;*LZKqeS`=`z#u3D zT>=#pB8q?_ipE7jP@oj5JoZg1g()Q(5kw-X-<ja1Bp$vnIcAxzTM}b2x=%nu>DwSe zh#K!TE=I&F#4AD&j8bUPCG_HNL>IC{2m(%YAtR;HO0Y&_jK(Tm@=<^gL}-U}EAH)+ zcz7O|s#&JTDkR2WwLxoBdP*ZgNkH&HAweNt6Qjlli#S)1=t~Gy+=C*hNC3PD4u#TC zwO~zx)f%HUx?kle+6SA<wit&A=&cc$s2QeerG&J>=zjTBWdcWhR7liFfZ#!bB6=Zc zKm;We5l{t*prBHjpjw+^xqX$WBH9=#ws=OOO-Z1XkQ5T4=eLW1-WmZl%y7J7nXDBO zvf5yj8F(g^5%3`(Q4xY6>Oc${F@|7;=pu?ZD7jG;nttzH$FNC_>J4c0mQiJnCAxf; zx=CQ7Hb*19j_Zc4Njy@8HVqa84ENk|FMH|-c=N_j5XnnP6hI<|nw=o+t&#RNh)NTJ zM!ZIpCMsQ)_ku*w5LLvvRgz>MMs>LNz=v7hconTHRE)){zO#xVGghq<rAk)Gw?<%F z0>cccC5HFx`w$gdgRnufb7>HPikV`fevtL{W$*@-Xrk5xrI9kpMHwUrNit4ULLO71 zR<zo$(daH<ji%K(PrXuMX5tVbbRl}Iwpe8V5W3VWHQGsUfNQJm*h<u_VYT%tGvoV_ z&|=T{J`jfsT|(^A>RcfDF0&JN5XNR%Yc8U6g}J>)>9&{HXk5aWaq1KMsMKa?=htbZ zSFjp_5wtaEYf;8fvk6`$)RQ^9-=JnEh|y84%+k)+X(XMk$-8qa(YHivy1mQz{2EiW zJE&LZkeH%mmQKD#&v((r;QbojJE~Swug)_&eTd1iy=0v$SQHhl386&@>r@g&G#W9& z-0b_&+OVF!P99fCbV6bc<CS^#PyZ6$w`q1SQni+f-4W*KOgtc96p1M+gT^7T%|z|z zuy&H9H_46m0!lnCWN4L<7)|b0NYg8%-DQ$QAu%TlD~Je2=hUl{<g^hDo%}VFHrT|V zlxMO!PjG7_Y6c-E#*}utKqe_ZG>9>xlp1d4MrPto>j9+{T0u3LCWI7EK&tx?1m|1D z9IGvJlkcU~zDPH&5PZgJ^Cu8IVvG49r;GO;CZ>O$JNMtu*>jKMb;j8EJeBGk8|gKy znP5EGLy(kC`wd#%3&fb?V@@tPoxDj1VStOBl6Z(AAqXKBB@@6!A<fos-K*rjO9VtG zq<Ir<CsBF>(GllU+TAzFdrf+I10TAG7HIxAuPvV@l@`$m(^Ge2R2`9&UY@buU7@PS z*f(<@S604Dj5(2r6Gxhj%mdp>Xj7U8DQ3$~-k_o^Xho~HT3(B|7#SZsK%;$$Zf}L_ z>*vT^i{LV1$O*yWgTvT_BZq#2^H-mx-D?t!;61$2xWIVr4jR1`Gz#Zl$Et*8x<;Bc z%N9iN;_2ig1O|9_l#mMrNF@QZA_$nWk?Z9fw6irfR$ij#I=GPGeGl&gJ_JJfaUr0h zXJP4iHnNnc1s{s$x#_N<%qrR>Bsw9>n<U!ON;ismpj1PUKqt?(R-tX%=}i&HeIWCm zsKDrmcO7!qBFme&nB!w4kDe?zTyO;Mao+R5N4~_fFFcM?mQNr5GDSn?S?^ro?84vC z&AWW=_+O)Rf>7-BEG#|G`K8m$j?eMY_xu)n>UXi$zQozZr|7vZ?bN-k2yCiCne+6V zqvh7v=w5^9hI%2vOTYzB9vpe_xZv>KQ?1O<$~{U9Hksm?=l>F=G{+8qj=Sd{<OhqV zs8;s!^|N0gM2A+IC^;gYPygZ{@#D+Sab@j)`QX9(IWqrA&RqC=T0;cha!ENHrnSx* ztv4^?L$7G)HuXY+mxvFZJOr}f$h;%>jyyzebaN`UiVMQk#ti_bm(O!>?tL^;!3SZv zv5Jp<V2WRu{~$}vtGx93_fbl5<J`CT*gX%i*3M{kMkF+_kr_fn2qAFp%~#kvUoU!; zvOiHn1cF3-2;?D<2T$%DS#ab*SnUSJ67Zs#nz)yV+AK%!dVn8YJVUz&KENm5|A*xo z8UFR<uT!)0TwJ-tYAa)+Iz^IH`R@6DXT6ir>D;;s0VwbNpx!n+Il65~j3qI;B+w^W zR-zC~83l4*NY434rzd3@R{Zke&k`l@Ul)JKf1djfd@RcI!nN~+SUjtp2C^Iy4ed1Y z@gom%^x!e3$M^8~KYoEU8`*H%K8gF_0UGTb8Pg=jV@=WG>hiY!dLYDz3xTQey;QAb zY5k}8Af!EkDC911@;iS!;<XUq?D^+$;ik4PuUz5RKJY2hp76~Vp5~h`Jk4J{a+0(s z^m-%mxpflX*vQGNn#5?V)@ZE<wEHV1AB!m5IeU-~9Q-ir8~;M1)1=!gc2z=zZf^uX zAwt#8VN^jN_c^azdX>)}dz9n%{5n7S=?lE?&Z8Jrq1%IeWK&}MB;GU+q&>lJ6c5l! zp|#qS#4!r7{Qn;=yv#@MIl-Si@E82^5B`a6Pmmb7-dLqO>OHPER{6pw{&aBu%H@~& zhwned*Pi_<zx%6?^5BOaX5rcemeyD3_5}A966(JnxC?k_d3pKC{)JC|`F=Xd#;E&t z!Rl_3fBVYm!TJ3B{2v3)iO3r}uE_rE;V<&UcfLlW(|DI)Zf`U786JE1i(7}c-`E-s z)2EJohR^)U=XYEQy;~+CIOo{%;${1dt>JDo#z>ZpX3uWhR)-E(p51lzJG1R~C4Ls( z(3CbHFdTunxVYHb1u*Z(N{oYq=o83*=BZPs&h2*6zLhDZICbjOIiN{_c_5)KaPj2H zlc$|?^+z6g<nF_V4^Q-O8vcP>jcs>rSeE_oTaULITU=ahKl98p7oU9c$<x5a67ygp zQ@}iM6!-{mH!%ISUGwf(lLGjUf&T%PMMMVegDUpUXMz0`;48a>b4SZ5NGt*CQug8_ quU3^(mO@&$+Z)UXcoEsOIQT#G?`pt^9Qq3Y0000<MNUMnLSTX^$g#Kp diff --git a/src/_h5ai/client/icons/48x48/js.png b/src/_h5ai/client/icons/48x48/js.png deleted file mode 100644 index dbe9da6549f82f6c124597afb10e541efa95cbe8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3023 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 R>8$_&002ovPDHLkV1j14zVrY9 diff --git a/src/_h5ai/client/icons/48x48/json.png b/src/_h5ai/client/icons/48x48/json.png deleted file mode 100644 index dbe9da6549f82f6c124597afb10e541efa95cbe8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3023 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 R>8$_&002ovPDHLkV1j14zVrY9 diff --git a/src/_h5ai/client/icons/48x48/log.png b/src/_h5ai/client/icons/48x48/log.png deleted file mode 100644 index 23ac5af9bd3f24aabd9b1505ad8551a06ff8ad7d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1350 zcmV-M1-bf(P)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00004b3#c}2nYxW zd<bNS00009a7bBm000K;000K;0UmWYH2?qr8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H11j9*0K~!jg)mpu7>oyoYq;6ydy+P6>cIBVoULd$rmyQ99jD3eJ zeT_au$1Hw;E}8rS9qy1NV_~4ULlYo_W5;%a!p22m(X!aVA}>XelI++{dH_N)@rgX& z$McaCWx_ef{~7eP3A_~V)E|Tp2Y?5_#oKc(0>A)FIp=d(%Q;6Zqf)ck{LtxiT9e6S z5QZUtOJy>d3_6`otJ!RR08kRV3FllyzI=Us{oC2u*)NJyZw7=A5JGTsbMyQ8`T4H^ zMx67xaNs?FPs8ExkNy4qqr8STiM+s#$K&TprSda?zd7e$h0b>X9331S7|9FoH%-1s zUopocEI7*~cA)4=Z&0n<_6S%;q=W@$In$81B%qSr_6V3bsAh3VPNRB5wnjGPh(6Nd zx2^&essmI`O@@b6(%YD!L?3Ej%Dr5ptRs+zb&tZTK~Yy*YYuE97i`+k$N>P~Mu0$( zklwH=p>@m077SHF2077~b9%qCjhRO8Ycv|+`T4o9y$Wi%-#7%B;c$pB48a(~)6-MY z$IVG>o5t1&Rf?n02=n<IlrH!LL4eU{gmSqoZA`O~3aVT;J_4!)MC3)FIOlL22aGWc zhr^V;2FX_)0b=t~Ul&$|m<$GkfsDM~C#4j7dwZ$KYj&wwC{bC2#3~?!;PLShVHm=3 z9OJ&{`1lyE>mrJxED0MOC`>{n0|377=jMyBpUq}Q@&F|HWpXbu3kfai$zw{UUatqn z7#L&d_xmYZ{keX>55}03jb8M~+c?B^l6Pj}nj%36LBHR}Y&HX>6qHiwgh^V$z9@OU z-@MUKx6_%<2y(q%4?z$l$WTfV1Oa-zUgCv>5Ms1fOSxROlF#9tT8T*!2^}6Df>Meo ziV{UQ(d~AneYe|{<aPTficqOkq~`NvtJSTR#GG?@o(JFerS219iRJY0@Bjc{j9C-b z_x(iVS4HL<nMsRL6v1^}RI62^Bq*hrPN$eor&ihczK>F=WF%kkl~VFuN<yMUQG}hH z9jg<L<H*RH$m^PaiG&g(P;~wkPPnd%TCHZ(x2aUCRT+7e;4)AgNR2@5UP$jyI8m?H zbII3gHLGm0`mn&f4%il=tl<?-G#U--bM<;XL4KJ&Y&J#*mW7%VrBcc0M5EDw=Xo!Z zO%^hfxM%@jbV4PsI{eZC%RBMP`()0)9mRN_hm(^N0Ko3<?y@UvQ5X-lQgRZ+Y`=9| zarHb805G4=jkZ}RxDFU!DGN`dd02(GfXYEnY~^Z{kTftIrDPqetonkJ6)@cqgMCUu zMiwTAmLakVEQD3q54QA%RPtF)tP2*&==X9vZQPBT<fC3UjU4g`SS4h0LdCj9!$dBJ zy!}){e^5`}O&_!8O`~!Dsof|5M7OuMlOhdnvSjrQ05M0oBNPq<0LJZh`-@2yo7lr- z!PXxk1nqYF3xF{eoTY^R1#o|PdHH!Zn|*h2aq;o=^z^;$Gn4I;ldaws*{q1`_jh-9 zU$3sN?pv+aX8`vxXZfL<0QdpGj{trG@Dad%Dg>{KF&4!C1n?Jt0q2~{?E@i%0{9+) zj|F-6b$D9AuyEoLz(1Vx2r%q_2qEvVkk(uLvq#7|57o;50CmzD3G*#7&;S4c07*qo IM6N<$f<vNo2LJ#7 diff --git a/src/_h5ai/client/icons/48x48/makefile.png b/src/_h5ai/client/icons/48x48/makefile.png deleted file mode 100644 index 93187aa4f9a0ae9c6431d6bea8bc5d202352ac2c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1713 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 Hu0mjfqXiYZ diff --git a/src/_h5ai/client/icons/48x48/markdown.png b/src/_h5ai/client/icons/48x48/markdown.png deleted file mode 100644 index 62ed33c904707f4fbdca3f97b897dc1c3266a6bf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2680 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 diff --git a/src/_h5ai/client/icons/48x48/package.png b/src/_h5ai/client/icons/48x48/package.png deleted file mode 100644 index f9b43e9af6ff22483e0a7a7f9599a973dc24aac8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2686 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 diff --git a/src/_h5ai/client/icons/48x48/pdf.png b/src/_h5ai/client/icons/48x48/pdf.png deleted file mode 100644 index 6bb7ab285c58a6498c3c74ea1fc62b29a8aba6ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2806 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 IM6N<$f=|as+5i9m diff --git a/src/_h5ai/client/icons/48x48/php.png b/src/_h5ai/client/icons/48x48/php.png deleted file mode 100644 index 1bac2ec1b555014024caf83df9c9f8321e56cc21..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3358 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 diff --git a/src/_h5ai/client/icons/48x48/playlist.png b/src/_h5ai/client/icons/48x48/playlist.png deleted file mode 100644 index 19ffe58c91c99fd6a9893b287eb0e94b139e87e0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2484 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 diff --git a/src/_h5ai/client/icons/48x48/png.png b/src/_h5ai/client/icons/48x48/png.png deleted file mode 100644 index 90b70598ea080d62459fad039a92ea6422595696..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2998 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 diff --git a/src/_h5ai/client/icons/48x48/pres.png b/src/_h5ai/client/icons/48x48/pres.png deleted file mode 100644 index d08d1b172fad0dec688a2ecca5b5c7bc67b7b0d4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2586 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 diff --git a/src/_h5ai/client/icons/48x48/ps.png b/src/_h5ai/client/icons/48x48/ps.png deleted file mode 100644 index 52c3049296f04f35fc2a63d0c7a26c51f9e06845..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2975 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 V3vJSipojnf002ovPDHLkV1i&J$L9b5 diff --git a/src/_h5ai/client/icons/48x48/psd.png b/src/_h5ai/client/icons/48x48/psd.png deleted file mode 100644 index caae25896382e49d5be32854d2e69f365e49f8f3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2195 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 VIZ%>^<hK9-002ovPDHLkV1h&}4SN6p diff --git a/src/_h5ai/client/icons/48x48/py.png b/src/_h5ai/client/icons/48x48/py.png deleted file mode 100644 index adc5570583f0b1debf3b9ff3fa13f2770f0a7056..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3129 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 TX@XK200000NkvXXu0mjfV|(#f diff --git a/src/_h5ai/client/icons/48x48/rar.png b/src/_h5ai/client/icons/48x48/rar.png deleted file mode 100644 index a9b49d1f2a20b3ae0c484d263a473eba9385310d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2309 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 diff --git a/src/_h5ai/client/icons/48x48/rb.png b/src/_h5ai/client/icons/48x48/rb.png deleted file mode 100644 index 69e0da5284436a8d6ac536801d863292222c513e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3220 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 GLSTZR_aTe` diff --git a/src/_h5ai/client/icons/48x48/readme.png b/src/_h5ai/client/icons/48x48/readme.png deleted file mode 100644 index 84d994d834709c560b24d592b5c0da298505a15e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1346 zcmV-I1-<%-P)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00004b3#c}2nYxW zd<bNS00009a7bBm000K;000K;0UmWYH2?qr8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H11iwi{K~!jg)mpu7BR3HKW>;ECmTf5(>;x`+2iU37q%<J7%saTr zYvdtPy72>~aiteXafKU~fq>wO$bj7WFOIZ6Nm=c3nL;8#?UK8cwDLJ0KpeF@JN$+- zoFVBW&N=?iaK1Kybx~4(5RnU@3c$nrGcE=&1@JHDoXMx0bIil2(r&jubi3V4-}fJ) zDB|y_`M&?q?RGEQ?e+%%6~UW0=VIpfudlCvJv}}BSuyI}fQUduxVgFc?d<IA7XVM3 zb0!Sf2Jrpk<Kyp*Mx&LdXp_jBxZ!a4_rbxzPXPYnoPQB<UIx%=Hk(@V!um~<w;5~B zv4t6DxrkjTag|i4K6`5q7(7zJjI+!%G;a$~$-cD*bR1N%d0R}QNkt|ln=&NnY4JN5 z1u9en9GRLlAFHI7%}`kcOc3(wcS>K@D5D2#NEIo+YT8x}Fs=cMnABo48sYWz6=4{n zR;!`eY@$@s&zaDx^Ss75NkU!3GKAEoDi!^_1^`hM!S{W*u8V553eGtOgF&ty^}R`M z&YM&NQZunGCX-2Owi#oXPNysD)NykR{k2i4R8lkNx-LA=D?+_~5u4K3D)2lH<#HK8 z5Xfh{ySv)3)FCOCmqr~F>;cX>_V)G=$1xaVGMoz9C`!HyS;(X~Sr_skWaBsn0JyFz z`?lYTzQF^ML}nT_4UlDo?w#$7FX0)j0oKrYgNP6W0fxgNf*?Q`hHzaM^?DtxR^|?U zt&mD>B~;|?MAdiwejki6RI61Gk<2#Z@fbl6;PCKpX-_0;fyz~9fL2j*52Onb#u$!{ zj^H>BqA0@s{k?ogL^A)E%Vlfwrr${{RN`Fi29!!AIL_?za=8r8^HSB-b`e`bR^rSo zqzfUNFkp<O<XqPUU>ENeA++8iHVr8HK@g-Cc&Sv{$VEZsiEP<;BqB^E6Dcd&*4CCa zA<HqfC$hCdNW7a&CMlU(t!BN2P-T`0Arc0xx*HYWjz*)@f)y#Xh!C3VkRDiSH=0Kv z3`0z((}nQyJa4J^x0K7@jp~pWLgVo`rKeV_Nskm!$dWn=$wC5R_EmVE2O=uE4oFz- zM)M#%!x&2uWsEJz2xN_A;Q{TLc<r;KIQy#Y>FEiB!2qMt2+z;YMIBk~7O`y|5YHQp z1{}v(Fdz&=+}+)w*XyNj9<p@hjHzA3D~FI6h=_1<a)Ota7x=yp#u&D@x3ROcgL=IV zB0>~J)&}SnZ!(0`I<P=QtqI9~66(7+j?rqhu)n`A7cXN>yFXgS5RH7g5}Oq1t{1b2 zL{VfVXM#o5)_Ndyph=RqsnqLMTSLes``Ybvin!WW|J^il$S=ScLM9_r6m^TIBbP(o zd@GUsP<QE?HSoH~Tj=xgQ-urw;$E-k+bG;*%NiR1<{V|Y7X}0XhMi95v*}*vEn+`! zJR(A;)A<Zwh#6-YLSq2^i;Ig-VHnoW&(A*|A0Ka<{w`qplauMWX=bx#JlVg!z5Q}^ zb=AMTy!-^9Kj$nDF$CaS06zfu5x_?Pjnou;T?{cJ{s(|R0X%Tdx!gVwkptix0N-Io zzL0zH0x`wRh<gD4aL!{ue-18T7FzG|KYK)+^Mx}1A40Cc+X?Y;M*si-07*qoM6N<$ Ef(#&OrT_o{ diff --git a/src/_h5ai/client/icons/48x48/rpm.png b/src/_h5ai/client/icons/48x48/rpm.png deleted file mode 100644 index 1264e621a9e0cc5c8816d50083baab0dc2f1a0ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2020 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 Ccfs@k diff --git a/src/_h5ai/client/icons/48x48/rss.png b/src/_h5ai/client/icons/48x48/rss.png deleted file mode 100644 index ccf5882cae543799185ab062fdc469c5460d98ad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1839 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 diff --git a/src/_h5ai/client/icons/48x48/rtf.png b/src/_h5ai/client/icons/48x48/rtf.png deleted file mode 100644 index 62ed33c904707f4fbdca3f97b897dc1c3266a6bf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2680 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 diff --git a/src/_h5ai/client/icons/48x48/script.png b/src/_h5ai/client/icons/48x48/script.png deleted file mode 100644 index cbae3e1c25d2e00d8b0d7d4555fab0b32fb32119..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1881 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 TP)On~00000NkvXXu0mjf-b<G` diff --git a/src/_h5ai/client/icons/48x48/source.png b/src/_h5ai/client/icons/48x48/source.png deleted file mode 100644 index c7bf4344add881dbc398c15a2b4c13446a1a05b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2443 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 JPDHLkV1n+ynA-pV diff --git a/src/_h5ai/client/icons/48x48/sql.png b/src/_h5ai/client/icons/48x48/sql.png deleted file mode 100644 index ca3fa0e5f1290fac3175fa2db78338055871ad2c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1286 zcmV+h1^N1kP)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00004b3#c}2nYxW zd<bNS00009a7bBm000K;000K;0UmWYH2?qr8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H11cOOLK~!jg-I~u%TSpYef9LxCGpR(Z7^qMdtwdJYG%I)lo}yCo zN?GR-vgx|&nq8}kh!u(wB1Nw2pb7)A@89Xdo}0PXbA4?C!SqNYxMO?xzB%W7=gb&U zO7W1*xo-eBHP?I)krogFKI=y=2V!8Xl*)=(r4-XJ3SPc^`K;gX|Cy#~t}K@4xpib& zHZ#&RwT>i7tRs$N>xiOAMNy<KE-uC=Cnvui9v=P(1RA#}rS#5kot>Ti{`Be7=Sh-~ z=lQ*CbCbP&`}Vi}{rz8nfl?~d1ik~FB}wu}k|eUO-~q<taop{84}epp)RoQw4|w9b zu8c;bdxY0)zVG|M6W{}UP2v_10BajM6$_YPE(pkUkY!oTXV%IJyl(ZC2jYRkOacx( z7y?C&n(@H8hmeSro=pM*>+gXnfr5pZ#1A5brUV>pNjw^ja9x)uitYhgvxx}T*Vm=F zQWC#=_l~{2J<iY1*N%ja{ZF4hL0u9bA0M;3yUW(r7L$TEYr2WL>j9H+*3Ye03#AnO ze!qlA6L0`0%QD8}F~09}b#+A?$E0aWnx@5K-@-%$$8m677tizXeIMWV84iaUgEJka zo?mQ>t*I4Q|5pS^lH}V%S<<Q)O#)84-Tt;{R<J3?0(Z#+olb|rV6b))3J^sRgTa7K zr&F3QRbtQc=ytn&{`{HYa7dCQq-jc)Wp}DV)pfNBwOTDa&%<?HHa9m5Y}8a@>GgWN zc=3Xrot<J~z4%>AsJXr_S|U;mfZ=dRuh#=hFH|g|>p&dGw^9ep&)7D@_PgGFvkrt| z$ap-S!7y_oyA7)XU512yHob2#>xoQmDx)U2RY{15wXM)L#b|A(WmOri16)U9UI^)U zcO1t`WQx)10Y}Sd5Ck(PpGAPr1H3GW>dseW)ZUFQDx-DbFb{AOcr%1d3H3aWAP9K; z_^~OYg_Q^_Bcn}<bd%Rj`P77zQe0kMY8kZ>ka;qiWtlZ5>z?a2pvgM`uIu8uF23&* z1OZ_f(r&j+8MP<z+%2nsZ6dHL2@xqBWNOsNp2Rj8t^R>|faiH(Q4)1)YMWxTCULEd z*6qe3^L2#kNL1ysO3;we5&?m)-Dp)tR|UUnp4doOy3yH6Y?IMAj>)pDB&EybKohB| zr$wYBp<x&jh9R9!$COd~#a5k++5p+?w&qRw)IR}JM(r0{N_~~lD2j;Vm?TMxf|lob zadT%2q1(t4^EN{7{>H`zj~+dm+l|5!-RL~PP48=(Z>soJtc~61BB8Sku_jXU-UGAU zsCg#NfyTS_MRtDK&n)UufH;n`Db^B!2)KCv{{6>Q4)x0tS`@T7uVwV~^z<WeF~wYj z&==stt5>hyY;SM>d~k5Et(0=j1lCfzY|@%@b->Me5h;>b_d#J8A|mP0(a}GzU%!6C z<QvK_K=DPl06V~Q;3wb*U~?%q+`U~e0sa?o0`!$qO7sqhhy!$h@0ozNUr*nk#Y{;2 w4g9N=%3<mO(?rB&5?br{&mO5#Dm5qn0}aNL;nT4k)c^nh07*qoM6N<$f(Nx>uK)l5 diff --git a/src/_h5ai/client/icons/48x48/tar.png b/src/_h5ai/client/icons/48x48/tar.png deleted file mode 100644 index ba2a7738328f7fb6cab46131cc26063c85c6bfc1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1013 zcmV<R0}A|!P)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00004b3#c}2nYxW zd<bNS00009a7bBm000K;000K;0UmWYH2?qr8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H119C}3K~!jg?V8U{<5m>Lf9Lu?svwhbLl>!37F~7IMG<)sc9r@J zJPBgWq7N|3*^K%CY`Q6nN+3WQCaBH~NKr%y!Lfb2NbGTp1D?)QiKBj!73bWm>+kdV z&b^LrL~Bi*p%zWxb7AJch=>8WfX(uWOMnm<X|3Zlm<bROXLon^+x`9hUwz;2Se9i1 zJZG`bZLivAG#WizU0uD|+uPd{k-xOo4*;UIPVfBJXJ==xx3;!^isQJ_po_rq@$qjv zJ3GGs*IMg174Q}C{b)4$9Wa)aJiz_^eb{U^JHVON`tQ_27Vy$EO(P7$1=4#SuIt*s zOW-YhtN{aXpqd|-01gw*nE;s{brF#9HH$4Z5s)D-KtXK;WNXw)WuR^~0L&I~-7NHf z5ib&}SHy~%WI#k9$9H9Bp)6Qu0f@-b3z%9cL+xgvDZka5g=(`B=Q8kUC6+qWz!c?0 z47JHXhL!q7RtpPF`ISCS*FFPvn}vWH7I6_PC7>2HP%PrqOOg*RGo}x78Q=UKfEo^m zIF7RjUX`Gf;_mJaa=h~b<ox^`-}jeNgi;FIw&`}eFlQa$<m7~QyG^Ur!nW<10kqax zeLQ#mU-gUQnCt87l+xpsczu1HZnsOj-9|(R!;mlxiK2)oib#@VX3*kMyl9nJdY*oY z2&QRb+cvgs<9QyQ=V2HIy<U%vjg7e(P$Giw``p~zFc=INkH?J1W8yd_j$@J}$wWML zx5|jkYb%Z;A{d5&Wm(v^jpI1Du1mAo#P@xAy&lYavDNSQ@jQ>s&CN;|&f`nPQxWN* zltQUVsovh+((m_Y`p#IW(P(5A0tmw}%R*|Qr)*Rvx@w;^E+R8`-}5}y*48i#gCGcK zG#W7Pt;9SFMNyR5=sBWgZTZ+!?I|qFdL*J?p;7@!5Crk|_O|gU7Wx#6RP9@|Pu@b8 zmzOb<J>wYx55VB!;^JMm+uh1rC_f9Oh5T=AQsq!em0HNMEP^25^z`%{Fqm@A1Pp<< z2L}hQTCLX4old8vwKnHj=u6tC7*D5B%d)Z=$aP&rBsw}e`fzx7_=?F6<q$q@bPKQv z`~dt2d<Sfl=6i7%Fd_a2@F(zIYpo?W|0>`G@C_64cKJ99L&!u#59n*H6PRWo4-qk$ jSZf*o>=9|LqkQlmEopF4<ycqt00000NkvXXu0mjff=Sj6 diff --git a/src/_h5ai/client/icons/48x48/tex.png b/src/_h5ai/client/icons/48x48/tex.png deleted file mode 100644 index 66e57411296d0ae4e5ec9d3c47dc9b1df3cbbb01..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2160 zcmV-$2#@!PP)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00004b3#c}2nYxW zd<bNS00009a7bBm000K;000K;0UmWYH2?qr8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H12kl8jK~!jg)tOsp6JH+3KW8SBG-;Exv2JUt;-Xb(S!umdFCb{K z;G$K#T2Vn1FE2ib?vvny4<aHeD2Obgg1)GTxQJRQ3c?>1v9@mOy|iASredwBHAyow zXCK<kPMW0tTU~9xFwD%!Idgu$^Sgb|iI7q<nxXt|0e%z?`->1l1u_8V(W6KI;&eJk zjDk0A-1vO$+O=*VBBeB}AEcD@yOAq5H@Bdvsp(&#Q0Sws>vAMrkw_%+_U+qiM~)mR z16*;rg_JVB@?$Suy0m-6iWUE~DK%msgg^+v+qZB3m^^v%KY))?N+a$fZeUz#Y3VA{ zG)J89(B~<pX;M&7P`+^C!Xo-)wt`p##$;w@=KMAZ|0GmZRcFthT}+?MRuHRzYoxCJ zK=k(ZI_Z<yvViEnMg^plmb}V<AAXBKKLUFlP^6S%G$^6#y5%jS-U4<71Tb1Ouq@!P zH7NE17SFpwfubk~kv<os`sTnfsWPFestNC=X)19g61b3kqF1k8as2pkgb;YWUOXNT zQc8lsAc~@ppPx@G7Ne)9hi~7$k(HIj-o1PAcsyx^4+evrJ9m!u_I9GtD5|QmapOix zOG{Bz6)7d}-@oVZ;lt><4nTQ%IcwIe!R2zL{BA-Jo2DtGlo*D=yLa#S^5qL#w{E4d zun<L2Fbsp;yLU5b(j?ZcTZd_yn5IcXLjz~doFN*G;&!`JP6Xg`xu~hB;l+y=96WfC zxpU_-apFXak4Y)<dc71E7xUu93u<a=7(aeI1F21a8ck9lVYRxtx~Q(MX2y&eXqtu) zf^ayD*Xt!GCx@|P$D(N(rfCug1ZZw<CK8Fz&#h7_;Pd&&%F4p;_fuV6&BcossjjXj z5C{N$d`HtXIy*brwQCn+#*9JJG!!L0DOPNEMcUL1g+ff9J{_0Kg{EmZ9ErLrih{%8 z!0B}2@pzavZ5mx&U4v$__!y7J!>U!QC@L!A(4j+gcXtDz>pGV&UuN;*#RLKYGBPqy zRW)fr`eQ&DXaNy-A=5O`G!3uUix46qu;X{TS-ZQt5km0%`Ez=Ed($caP*6}nAP~Uo z^|F2YcJ}Pq!>LoJ*s)^=&z?O)O3BozQ*pUmgDpl%7fMib(V|6`>kJ0NF!=cKBOg9| z;P&m?^z`(wa^*@Z=uFe3v$K=7wl<oYn%K5&8#OgGxLhu#Oqs&kwQD(Z<_xoD&Emm> z2W;H95s%07y=;~`2I3k!91e1Ga|iXkI21);!h{KI*sy`Ft}dQFeaf0OYpm24|7JKG z=E8*w1cN~<PCOnDOP4OCzP_G)`}T3*zyW+dUy{2HI=}td?iO+1v%AZHOklmc-EQ1& zw<WZys`z|9d_Et3zaO8^M<5Vj_3G8=x^CrqMN#m2y;M|GpsFg@uU|(|l%zRRT)&P= z^!D}=4u{b+jm*qUva_=>jQ?$E!{IQkt*va@w23=+?r`_+-60iFJDpa3wgOU0o;`cU zg9i_+#86UFVhI?F#kh3o5|x#eR8&+jXU-gsA3sh<N5`PwwO8T<F7zi%mmu6=zv;S8 zEEePO<Hs0=fs_)b(@9B537V#17zX$6-zPsmpK;^H;q`jiym>PK$BrE%8jTJnLuwcL z83=_!oI7`p6DLlve*JpRo;_=2lz41791cEx`b1-6BlG9a$K&zfbUG<4EM(KBP29V8 zkGi_L1XoK3JDC%vY5wr8%;)p5Y}qoTl+2qqkE>U&CdF1H65;&$^Q>60f~>48E8Dr< zZWb(9z@tZxIC=6U)2C0Tu&^*GrP{49kWQyGSu`4@v$K<ymKHiXI%sQa<IS5lghC;7 zT~Bf&zu!+mK>@|Z#VlUD*kYmIzI~&yv5}oSchb<%fXn5wNL)NCc|0D<%ggER?q>h~ z{j{{S@b&9gD|7X8wUl&P$bm~mUm<$;?j5zYwFn_tx^yW3b#-;9s><56Yw`JfNtSRp z94LxHQBe`0Pzb{?Xl`!i)~#FQ<>ir+lf%oGFUif#Mbk8ETr?V`rKN@C%a@}l3O8@w zq`0`41q&9SX_|fYljwBXEoEL_9_!byPihBnI-N;D9Jizpg6!;U{C+<Uhl6R;rt$jq zYs$*X$j{HW4y){AHBC#JYhXVqrR6!_EqOu+GBY#3*DWnFGBT`ZMNz1)uV=}UB^J+0 z)!#nmdq_}Vs5>w_q?E*Bu_WRbf7W%K+S*!z!C*>;Ib0-=x#66NN-1e=ZRN_9D?EJo zkVquL>C>mJRWuBPj*brAzkg3_Yb#}CWme!07pchHun)FO)5PcVQB_q%RaMn@`#YV^ zq&@CXVNat8LCi3eP*s)e?Cg}8C>4YdLt>k$kS>VDaL-0nRUPuG{vhv4q7nl5X@T{N zkh&6&2BZt(QFAt$_H=qQVpO^i=}skvQ^<Zbgb>!TBP3eDeDdVU=U*?<&=3lRdh6=y z+T-tW1){*0)2B~2LFzrhNVouMYinCVq0py(nXUhcy};jqzgJdPF50qX%U@^CoEeDk zl;ZUvPHSy#B1Kz5zc}nd*zf(%GDTa$y}i9XeBr`{H>XaWy57^%^KalkQp)bQ0s_bb zN`O*e65t=Mng37t0<-}QKr;}O_Pj5IP=FjDpFZK8zemor=%r7I55Q+Br3w8mWQP#K mL0@(nX*I$GbSb57Z~QM(9y&048=>I<0000<MNUMnLSTZJ@D(Wl diff --git a/src/_h5ai/client/icons/48x48/text.png b/src/_h5ai/client/icons/48x48/text.png deleted file mode 100644 index fefa360d0e18e5a0ea2b7a8ef3e375b02767af58..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2754 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 IM6N<$f?91m%K!iX diff --git a/src/_h5ai/client/icons/48x48/tiff.png b/src/_h5ai/client/icons/48x48/tiff.png deleted file mode 100644 index 6bf950b7f5e8f280e0152fa8b5a40f951f442eac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2690 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 diff --git a/src/_h5ai/client/icons/48x48/unknown.png b/src/_h5ai/client/icons/48x48/unknown.png deleted file mode 100644 index 41c53cdfcfe88f4ba4b5df56ec77eea30985042e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1420 zcmV;71#|j|P)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00004b3#c}2nYxW zd<bNS00009a7bBm000K;000K;0UmWYH2?qr8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H11qn$+K~!jg)mpu7>oyerC`ys-II&|pcDH*0qf?iT0gQ}&hb(=K zK19bXet<5S`~n^BkR@YbptwU5AVU!32Zb$Lw)`WB9c&7eOiEO2C+P<Wq5jVK4*4A( zQVwB^;r|TdqX}#aQ#>JrPyhu02l#x!g#Z=+W{j~Qy2=>CT1IxK)A`cx_q(If=-Kyu z_L+{+X!P9g_q&}==L-Ov^CpZj-t(u|*Vn(Fot^zE1ode^2mv7kH#awboS&cn2H=%3 z7VrSd0DgRVdHJ(asnoL!?GsrY=Qz&4&1Ul#0RJ$?T&{BqK)qV6O3Cx+_f1~M*P3G; zE6!08QwX|B8WgX+_XsFP#KwwqG}Dmv5ratfy+=UCL40g|#HZ1uA(fGR1(F<Tex6i; z2r&R7nwlgpi=?v>O%`C@S&ct0z9+P!8l@b8EM$!Wzb|$~8s0i>ivcKeKtq!e#^W)j z(<y==fbaV&C#DHXDN3ahj*gC`@5usAszJup6fPKPvry7O((z<6!C)|eWm%w<qF5|q zu~@{OpG+oj90&D!9mQf%YL7#dkVH-fR7w1n1m(nR+Xeufo}NZ_=JPp*!yy2GQVL2b z27>`i(}ZPNx%|ku8H#o;gRbksG|i~Do}Qi%h9SZ*gk@PU3?sV77=vk=7z_qVQW`Ke z8USKWlIN;pxm<2s3xWXS@i?+uC={g6gkh-VL&lAROUOtDqYFyuMxq&p5%oGhm*tM{ z`?+P5<SUXUIz1qQCwIAA-gurTDFAq$C$-CEm$aFs07zz`*u^x+idv~uf^FMyT^E*R zp;#=&W-ZV2HneWr_QuHNs0Gphw2>@Mj4@D3QLR>EJw*tC=XnUj5QY&~=<)HfwA$vy z#!^B=)=E^T_gvTAu+wNXV45bvFqFQN3``<ly`_XqE_tTC#bN=^^FS$Gc{L2QS}jmY zGs&yYlZaJfZDtxEgkU%vMl(>MP(Y*6001TV9FSIGq9Y+4y%It&pU*L!PGJ}ZN~IDS zjfS@7H6*lM66;_#n}HA#^}K8v-UU*3WO?-{f>-Fn!^2$UHGN8VWIK^iav3ZZtGq$v zkr3elY`b0LHcn1XP_NgOYnW~9Ll}WvtI<3pbQAuKKIC;kR~~8ifmQK(eSO7rIz^>Y zL9^M67Hv8N(<GF9f2VUlV+_9U<Kf`}K@h;UZOmpfJU%{Zlh2FPB+dig`;Oy)QW_(> zSS&D`&0yR1u0}wf#BXLV;NajuO42lUT5|M~I8Pnm_sZom2qDpyG7Ll1YBlNFKg~{t zPiYcwB_ZyN5Q28QjnQZX$8peVwP4$Jw0+dEA+}|5f<i(u5@JnAwv&*3wX0MrsMTul zeP2mlXGA6BBe!Azu^^I$WS<wahy+1^AP7>QQ9+|}t3Pa|k=L!%+elF%nPgl2VM`<~ zw#C2uMh5v9loC<}A!1jb*|YLPa$o&bBKcz4SLS_;M%FaC_8*ZD=l<~a_I9LWaGyt- zZva?xjP|5FfH?rC*Xw;({W$R++RySw2tlvc`wqatigP5PDS-RS%gb-e<?`_2;^J$& z-7c$s7f}7=q`I!^*|Z){w(sul+^egr`);@U4Z!`HbF_&e09pWk0`N0{uK+3=UGTAR zup<5!fWHAeGsal7d?17v08Rk>fED?JkKw7r0;?dN01OyoAt2uen^;NfGyb!O&lvN? ai~j*7Y8IT}<AhEC0000<MNUMnLSTYzl7pZC diff --git a/src/_h5ai/client/icons/48x48/vcal.png b/src/_h5ai/client/icons/48x48/vcal.png deleted file mode 100644 index d026cbf6620e285944e82ba725a0c21adc20d606..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2736 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 diff --git a/src/_h5ai/client/icons/48x48/video.png b/src/_h5ai/client/icons/48x48/video.png deleted file mode 100644 index 6b8f79c05ebe2c5e0b58cc77cb595d7e36d0afea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3265 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 diff --git a/src/_h5ai/client/icons/48x48/xml.png b/src/_h5ai/client/icons/48x48/xml.png deleted file mode 100644 index 5cda3e624fdac0f56ddd2cb690b50db0f56675d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2954 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 APyhe` diff --git a/src/_h5ai/client/icons/48x48/zip.png b/src/_h5ai/client/icons/48x48/zip.png deleted file mode 100644 index 4d2c42ba2732c598104b4c4a54d08601ce5b10d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2232 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 GLSTXdODb*v diff --git a/src/_h5ai/client/icons/96/7zip.png b/src/_h5ai/client/icons/96/7zip.png new file mode 100644 index 0000000000000000000000000000000000000000..fc84a3e786141b4bd4a212eead110743d5b05dcf GIT binary patch literal 3559 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/ace.png b/src/_h5ai/client/icons/96/ace.png new file mode 100644 index 0000000000000000000000000000000000000000..5b24492218cdb4aafb3e4364c78be3508d6b8236 GIT binary patch literal 3370 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/archive.png b/src/_h5ai/client/icons/96/archive.png new file mode 100644 index 0000000000000000000000000000000000000000..e8f8587752eb39cde41af4ed2befbf04a66f7732 GIT binary patch literal 3051 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 RbNrQ}80eU27i&6({0A@)fI<KO literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/audio.png b/src/_h5ai/client/icons/96/audio.png new file mode 100644 index 0000000000000000000000000000000000000000..a59842ae544576a19ec45d47ee49f83570781927 GIT binary patch literal 3263 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 P`TBLWj5I6M9b^9kK5F&w literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/authors.png b/src/_h5ai/client/icons/96/authors.png new file mode 100644 index 0000000000000000000000000000000000000000..02663d26114877426634133fdcf247aec352c685 GIT binary patch literal 2656 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/bak.png b/src/_h5ai/client/icons/96/bak.png new file mode 100644 index 0000000000000000000000000000000000000000..916f486c935eb0f5295b9a843b6b50bae60696d4 GIT binary patch literal 3764 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/bin.png b/src/_h5ai/client/icons/96/bin.png new file mode 100644 index 0000000000000000000000000000000000000000..d6a19fa8127c6bcd1f8e7ad11ec41577dec93cad GIT binary patch literal 3189 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/blank.png b/src/_h5ai/client/icons/96/blank.png new file mode 100644 index 0000000000000000000000000000000000000000..3418e3e242cfd92f3a7cbd47cad9ca410dd863b6 GIT binary patch literal 119 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeK3?y%aJ*@^(Ea{HEjtmSN`?>!lvI6<c0X`wF zKzezV?JXe1SQ6wH%;50sMjDVK<muuVVsSb-L4tL0f=Ex(Lrw;k2MmmtzP~F0$})Jm L`njxgN@xNA7*rm6 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/bmp.png b/src/_h5ai/client/icons/96/bmp.png new file mode 100644 index 0000000000000000000000000000000000000000..325022cc484b67571b84b283bd7ee9689bfc8599 GIT binary patch literal 3499 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/c.png b/src/_h5ai/client/icons/96/c.png new file mode 100644 index 0000000000000000000000000000000000000000..2b9a8ea9a0b6dcbf7cbdbaac3358f7ef653cb4f2 GIT binary patch literal 3742 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/calc.png b/src/_h5ai/client/icons/96/calc.png new file mode 100644 index 0000000000000000000000000000000000000000..b73524acac6414c7569e17cf3876621d0d009899 GIT binary patch literal 3237 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 Nzp0UxVWmDM^nY9V`Sbt) literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/cd.png b/src/_h5ai/client/icons/96/cd.png new file mode 100644 index 0000000000000000000000000000000000000000..402e2136f609938e4f423fb04101b30377eb2a99 GIT binary patch literal 4200 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 JtCelT{|7_pJk|gJ literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/copying.png b/src/_h5ai/client/icons/96/copying.png new file mode 100644 index 0000000000000000000000000000000000000000..f0baf60bd9e4ded7abb24eb4081295c6fda7087b GIT binary patch literal 3178 zcmeH}_dDC`8^=G15F%-*y{Xz%m!d{(QJYe&J=&&9YnC`1sokm`w6(r9t5y$!4mG1@ zj8c1x8nF|K2oc|$>s;S+UFU!JKG*f!_x-%z_b<==dVYAGSy>n(V1h6J01zff0~<zm z`)ji@G2)0({9gv-zOK10095_KPIG4l0I<82*-b-9Ny*yUS}+)lMx&dXn;C659ByW2 z1_S~H1qCsV43`oAUJQM4adB^N?|;I-a!*eWD=RCRO#WMqi;H6vJ3BjYIQ(CI05Cm0 z{g1+EVAO|)hyN)5FaDlDM@L6%Yb#^^jg5_+ot<rMZ6_xu?d|RL_4N!!eSLksy}fum zzNx9HtE=nVw{P9u-770AtE;PPYimRz@%#7h!^6YJ$H)Es{ey#p>+9>2lamt@6LdO# zVPRo*c6MlJXliPT!Q#h{A3uNoWWXICA14q9b8~Z}qoWMaV`F0@BO?O?1Ix?HOG``h z^Ya@U8#Ee?L?SWX!2bUJ*4Ebc_V%w|zZlRN95**NcXxLw6w1-j(ZRt1l}cq`waH4! zWZdUjkd1}ym$kQjq$JWo<@nnT`|{eud5Qy{in6M+TK@U@Yi>qQ=ETgxeha*phIw#* zG-B7!(DPzUu(qr(J1<h&#me0a9L09dH3V&`_t-$kBpP}u(#L}(=&q@GIO@?u-QUmJ zJcS5^s$Vw>(1#gYTWE;f5EIuD7L|~a;XW;ShEt9U!I7ZQXb0yJ1OYd?-_QVnP0YkV z_a<s~Gm99>)yW%YLTaSU3dL9;Sy!thIErsg6|y0#7C3y)I#OJ)^F@QsJb1nKwHbMZ z&2Dc;dRcE~_Q-c${P@c6^(5%YJ>mvBcXjg9$Dds%4hr<sY7ccR$42+!Ckyu+>%)RD zO1x9#xY??!r6H}@zUo+(prjYGlrApIi@t-lmYM-`E68-%ir_}$kxNl|9c62_<vcU? zZXsn~gFh~PQaZ<dtF|%3iyh=(q&m}q^l+5A_{CT7Qx`^b3fDKb)8UwQPXAiuW*^gM zQTTY%T;2AyRj27b{=s0O@}n=FxKW`;lf7?i8bK{SO{;O`{C=p7j`hr|<Lex~d#W!* zzF|_t9yiAFaVsSnNU6LyaC~&^9|JUnz8pJJZr(=V0$nqJ?+;#ogdhlan-KJC;FADb zOr1o(&9x{_KcaKPk6hQ(7Z7@d1`jS|PFr~-<tFkKSI4;50;@Zh->aOH{rY>Dv}Gmn zKG0*+B6?32Q>=JnBfndwEmke>S#y^Zaat~2VJXKnz#}k<lRT<(!Vb&34UNf6xX$x} z7(Vf*GT-SUT8cov9Unl}JHa_3FkRKbm-?k^#P5mZgkIH`6QZb97f|7Dl4(3bn3kvX z5H_9bebp@=CG-4cUSK@$404n#GZAL!Pg@KDwd|y@Q~_HlE$h$tgO7lf5JDz>u*%1_ zeNgJTxQ%Bah=yHuzYJJpn;da}DP_j59<M7`+TO{qSqonkc$3GZ*{}>{CNC}Mr7&B= z;q&*;m=wSkf(wWuqFN~zER=1n*SIb>EOUHYMjFm<E8F4XjevdS;sivz=BnK@lrY=- z?uH5~ggjpW<e0}t<Q0~DO6T-A18sef=E?%7%4fCm3UoXR(bvxL>&s!4ic&vSk!{8j zA82h|&%O&dx^{X7U&ch7hj(Agr|NBytgi6?5xbxpBEJ}~gj1_Ih*Pf@$fG+L=OzK# zREN_TxWx0J2+afHeXg(AvV^(V&p_)D+3u!QzXT6?TZS7`&XXd@+S}D0DE?FzpJ}C7 zY}e-c`kWDNDb&J-!k-~IGHwr$@7t<<h0)R1w{zud-ZWTB*RCa4wJ&jhc+f0L9$MEh z2lhkZknGAM|BLp&!m=%j$9fJ4@@L}sPql4IW3nqxyiS!c>7;s{fE8Q(AkW?LCZ|L? zGGk!;VNK#(Zm`!{K9KMl3w8{%HKk1#>{1bsQf%R0g5`6QBV-i6<V#_}ZVB;_t^M=k z3NN@N7fB}bvkZB2JiqNit&J)^3D6~nNp!_a@Moq$kx!tNu|JK=fr5-|CjWui%e4-L zIU0sPRu}Qq)_Ih@XucGX%Gu?ZtSXGm%XzyRPliDx@w^yU?caVO5CD;QHct=;ua)%% z<cs6psiQf6U{q&m8|l25&<hDW4k%Ay;crDikYr+1i(7*fA+tD1pPLnuLbf8<R14@} zP~vXF1;x46fWB*l^9Mz7ca{ksS*XCm2p=@jVIk8B9dp(r`oO*#kJSjZ^LC9?@q)>A zW8MnAXTAX-_2lv<ZS~$rvDO7%${UAc-GFm5k77!|ZZJj7KY0gMba^J~XH1yf+&M8b z3%ckbpsQY&xsHAKoY}jKPS3||<HyM?m|}DXQ&hWLn!mrrW#(z8q>X6Sm*2Z=&6q?d zm6%RR;xvqO<X}6kihTb5O(ngTK2BYvK9pr@sS`6cHNt7I`Z<7Z-rzacYsK-X%XFee zDLRp}42nk^&??!L%zuMLJsJ`1O}X*r9!78iJ|w4zdV)xo#_Q=t_P@|K<o4Kc9`a%z z?ggMOleLo&tCq|flpnJkQ+rz}^-|85#~KPOUv?&|>~^?gI|LiHU<zf;`z5NRBPwYL zzLGe{KT{k2^PmkMvp&3yzv4tCj0EvQH7D7UL6jhQOvGHX2av~A8WTv2zQ7*N;d+i% z^Gb#&Qp@i-0EZC$zZzugA#e(FBwNt?05-PEg7K-`X3-t5E+Ea+%I#8hNAUhmr*5oq zLbeEY=YL?F?<(nNr+TYR`CmC5K^~QS-DtT}&`q<3HkHZ6b0B0%-e9YG@nvE0G03iN z@_=OURbC{ddW0FTpnD|abP)Fz8BEv!CE)6h#m8bCwRu8!yP{@K^NVgUQ)1ZTXEdo9 zk57e??6fe7QgTXMbeiXl$d?w!+r=BXX@cxX_RzgXdmvMM*tyywC#M%%rtzOl&4|>P zwWzf@Zn93k)p^f^Uhxl~9Jp^sB1cPyIxQeI)H~%_NpIDj9CDZL*LYMRvvtNr8ep+d zZXCJjNbCxT11u(GpHJOhXcjx#{NmXxCYF0^tsuO04hSXF&08-Kh?MICOvC<XGRDJg z+xef0iYO7HDUpvr;*fEU?{~VVwe14sdvXuHfcaUyWegtUuRly~UgY`IH+DFLX|xOw zzJ=ou$X{nsKqpQN%)Qo|D7fXZmn5@Kh=J!$e*kOy0)mkDVqPX}FK!Vw)GcKf@e}GT zi7c+ZwH}sPmO$=RW)8hrX+U3(RDr~%B<|v5_q~q4fKhc;`RXdsDB|-brfax|8fw0L zy&P8zru@o|Z$fKDDy=b5pV`B}DiVk8s(YPJ5IFj$|A;M>jmR4Z>ldN!`VEztsfbQ# z)uA_k7jT;yLa5w{l6zOW2%l{34klG)fn>kgjF45qE^T()`B=^0x|_QjQILU{_ZN|{ zrAknEQ_@XuHdEeB*QL)97N9cpSp@3A*;0gzAlc{L9SKFwf_tS#{eu|O9qE`Q<la{U zkgz)T3F+mp5@eIeK6MSPv0tGjenJXEQP$Y6w9wS2B;(obNusGIA-=2Y<7j$p$qu}n zcILfh6PcDR62VLD8LYB{*57jSaVp+@rYjPbwU98&vK#K&P;f*jyU4I5Kj+im@HvM~ z@Qf+K1|q^#n4ALJ@20zatd8t5YQk;_e0ox`(L^iza55zA95J#qqo7g#POCfQFwJE> zOJQtta=-HGgQ<$(TNPFNcZOZ19InF4*H)$jvF4LQ6II@*=vcb5;UB(#KF-~n^GywQ zoy#aUrt~Clu0!LErwZp=_NL4urvhrt3$#u^;nL6B`5>HWfBi>I3@r>Q^xUHU3w4@| A^8f$< literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/cpp.png b/src/_h5ai/client/icons/96/cpp.png new file mode 100644 index 0000000000000000000000000000000000000000..41fda1e8fb93aca4a42de89e232c4c06777e1477 GIT binary patch literal 3666 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 AGXMYp literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/css.png b/src/_h5ai/client/icons/96/css.png new file mode 100644 index 0000000000000000000000000000000000000000..3aa68ea3e8023406aca7421763c458766d7e7759 GIT binary patch literal 2729 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 XGNpm57mn@y`R}mCIHS)74iWzbPR9s6 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/cue.png b/src/_h5ai/client/icons/96/cue.png new file mode 100644 index 0000000000000000000000000000000000000000..e2aa2000a8a2ed107697a583838a210bde7a32d8 GIT binary patch literal 4225 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/deb.png b/src/_h5ai/client/icons/96/deb.png new file mode 100644 index 0000000000000000000000000000000000000000..74ffc7e7e5bb74f350deb15f5b3537028bddad44 GIT binary patch literal 3254 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 M$<EET$vQamKa@WJIsgCw literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/default.png b/src/_h5ai/client/icons/96/default.png new file mode 100644 index 0000000000000000000000000000000000000000..485456062c3b46564a5005a3f859cad4f952ad1a GIT binary patch literal 2008 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 WhverrY4fX}zCC~MVCn-;M&Yl1ult(- literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/dia.png b/src/_h5ai/client/icons/96/dia.png new file mode 100644 index 0000000000000000000000000000000000000000..ea41ca8b1866fa6429026b258a70f0d127384f0a GIT binary patch literal 2690 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 F{{uo+gB$<= literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/diff.png b/src/_h5ai/client/icons/96/diff.png new file mode 100644 index 0000000000000000000000000000000000000000..b779bfb14841b1a074d84054ad288a1d68bb57d1 GIT binary patch literal 3434 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 YJ@8@HiH+&{|CSr0Yvu-Jdd_eD2k2MyX8-^I literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/doc.png b/src/_h5ai/client/icons/96/doc.png new file mode 100644 index 0000000000000000000000000000000000000000..f7a0e36ddcd8fd1064d684e7786677f02bb1d07a GIT binary patch literal 4607 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/draw.png b/src/_h5ai/client/icons/96/draw.png new file mode 100644 index 0000000000000000000000000000000000000000..0a615600d4877b92b285883473bc7dc3690dcca2 GIT binary patch literal 2889 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 Q{2dcb49yM7^^q_B2gLk`(*OVf literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/encrypted.png b/src/_h5ai/client/icons/96/encrypted.png new file mode 100644 index 0000000000000000000000000000000000000000..7325b5d4603aefe079aa1c755b12c630b1f199d3 GIT binary patch literal 2944 zcmeH}*H;tR7RE!U2I(aMLzf~g5D6urB+`ON2q;aEE>)OZ3`H3rba4g|6r=<!fQ$v{ z#T%4>peQP!G)aKak(LOUAX09;v+m3M4fm{d&i?j3`)Pl_hn<7R*^7YWK>z?i!~tvL z%8mZNt`INx9kI*)^}!d4al!xq4SB+Q0sH^}F93h$oUNLgT3lRQOG^v4VSIc%CMJd} z{!V##c)0q@moJ-}n_ThtnVFgC>+Abl3keCWudiojX0lkUqeqWUOiVDDOb&<hzutew zj*gChmj0jrcLI%#jp5<p@$vCuVq$bU{r2tK#l^+t<>lOwlF4K&7CSUF6dM~mFffpl zlhfVZ{p!^#TU%Q+8eLyspPijOH#g_$>AAPJ7aSa1T3YJn=9ZC>(bd&eSy>qs6=iL0 zO{38k78bbP;qmy{*;zX~J0g*2W@d&&BB!RN=I7_RR)RpFBS(&mj*bow4^K}|@9*!U zP^hu7F$ROdWdI6={`m3Z#EBE~^75LRnkFVDrlzKXf`XHilOrP|8X6iB5)#VF$_EDr z3JMBJN=oYL>WYers;a6gDk{Rl!XhFf$B!S^(b18Ulhf7Jg~4FP#>QOUxcJG)$bi9M zZEbBWEiFSsLn9+22n3?1r-wiwBqb$9MMaMtJ0>kHee&c<Sy@>wU2r&@3!AvOIGfGZ z*Vi{NFxc7IIXpaETwMJA{kxQu)b8%?w{PE8R#w*5*0?}&;apu^{rdGQ7h^82OG``J z+uIu(8(Ujj%gf7e)?<!vEl4A};?A~xSjpWPZ(nn-tKH?mJP|YZk^cHKcGF5lquZpo z@H0u5Z3#@WVNgb_rIv7%Nr2yxU_4d>nC5&uB>w7^Q#QY)qa6fAWm9|uF9}>s4kJ1_ z{*H-^R&`C4<1<UJva^l>p%h$j_NSFBpvsCW>YCDGYLXHsq(sE8>AY||DkIMW$Xq=X z0ssWd9c(b?!lu?I;yvX<q110g<_pfdFn5|!B_-Sl5w%tk@flNA)iPmJ`k>j#=<8G> zGo&p#mzJ@BzIg3ADUC#m7xckB^cP)TRpHs%e$ELS*c+;uUiy|VI6a-jH)C%4Fsfws z;l7xG0NfS)p4Q{KC0i8&1?tYQHeEjndudy!=e_Zg6suYUlT*4f!De174}@W+oyt}S zfvUx-yNMOIMn0lUEHn`y-M7wGKcS%(cJ;FEO!K9+?LBoVK#l)5x$o`;BTv7F>gqFW zNJo9yh#C~O=rTFk$rzRnEUH`5N0#^>Q^xuBT<9bNWvj@I^%cP{b~9_LbnlUzGHc3_ zGSo*kGSLr6d*Hk6{Stu|Z!S1@6dz9WJSzh+{{2dbd`0#oiTcz%TSl#zC$wCSzao)+ zJ`$jq`eSbz#Mc`Q&dOx;*N$2K^ic(b$EFOTTxw~U;{tRMegjwh{x?m^Ie1CLn5L44 zM*&2-9VI~$8g=iiTfE~SVRQbqN2lN9u^vgF@{_mt*xnlju4>xGke<I9nuG0aVMm_d zsZXbte<>OJ%&W4BT0rdxA>k6&S@E~Qm}o>?QV6@;kZKE-kWKbXyJjz{VRzb6T2VPH zI}nYFTeR4Y%-M7vsb0qVggx5*9HWay5uHQgL{BQu%WNzjv)8yd&y?LgrOT7iIol5> z!bwF*UJ@D*Ang6~lDJ2)6ui2Ovp|n)VSN@GW=}U?%G6@bCspNXJZ(Fb1<~LYuyG%X ztS(b!CKedtb!;9`2l3MAj21p`bT$4s0`JY_b;-hLOM=FMeNhX3srDzvJ2E54Xva?N z!=hjTR%3yF^#yrI?ZKbFL8m)PBgh7uR!`V`VX2O{8WW_bukr?gmJi~d2pM_~BQJol zHD|q#UJHxVvqRZfZW5s4o1bJroR|G66tPP$CHStrZ2Q4vZ-@<wIRTf)cCnZtZ}l+0 z%ACgyVtQAeV9}pGCh!_Es%ahq%6}v&t^M9~Q~^HH(mGm_HP~npKf3F4v!t-Cvj@Tw z=wMz-w7#)2fkB=-c->lyxpT*iwf#GUA<`ZZF?H+f1RD7z5mBfQCI%jSHe|SXh`TH6 z?g$|e>1USh(+B`0<EoJ%)y=00(Hs{?B(};o+xF_SQ{Ty3`!#`v>7jo;a^Oo?XsC{- zj{R&+QCW9=i+Qa76--MaFm6=mz37Ir1mcr}j2w=u=Gz3qlbfV`@&SYew?V(Y)e{Fe zx_$&OXQFpnCh;DL`B<kCy>WIR;f?Z@$)AE*$g<{p4?o^d-LGWjgjT$B0<dzkoRH63 zd8!Im&jhsPMNwhsGv{;d?hl4FYuGU28-)4NgF5AD2#`AVez?g2GFjxZ|GEsGdTj5* z;3NDB=Cp0iOxry%kWYg#@R9&^pFrhMY@ZF&&{wPJn-noox)|w$i}Lb)*fQuXrF6SB zn(~77@VAwMY~WzN0~He70#+MBii{_xScx0OYB?mRs09h8ikRq?its}_A++sDcEHUS z-qRs_y)&8b|NP)f{G4?}`G+J#oN%DKQUB%V2VUOAWJ;~|UeiecufD?#;A%xDe`|5r zk8o_@s*)lE3WaR6Ib<bAbos{*=?&EV!BgQfVUD9e`y9t96HL4+@L_-Qe7Qn=cgSq2 z+s)n}xAtmWfRf_!7fM^G|M;`Nniy_D;{I;t1|S~RX|J*mmgeo8JS(=SC@m_g@wB;+ z+-U%7hov-xE1NWLXAW3#L`v6NaohIvUT6Z#xbM8=VSo)ksUj(ny|&6jikKH9XVB}~ zEc&1XM&fWm0{X#JI*R^2)q8R~DX+~qVveaA6{K@u5xhLAb+c^;F2v}v#y-(F$a@-Y zd#YU!=+kNn19t3Dt($fBgLcMV$7Ncw4Mub(a{cBoR~h#OeM5xWFYH7&dsXIH3~iT& z5KT5VoA||dp5=??!dsu<Ban7+GkkO2^@}l9Q8=GK7lc+23Ux94ooZM4_SrjiIXs+C zu-a}Bq)WPLE5+UD8d0DlGkL}LHM*VO#G4wK*BU}t6TXpLMx#Cv?>F!*1TY?6i0HL4 zajX_ny(Nc%%cWtf7YF_oSsdM`AV_adQzUrIw9nlnbb#Q^vv#jZDbkVQ;azG@K4A@~ zLISC~&xK*^?C>omQ*lxI&hFv197m&*U>KQV2_$&bU`QziR#6BJi^t>)KjBpXpQ4|! z47Ksi9DsGtpF%Jvd_M>9c*ASoBnDOBZ@pAZ3F*y$I-SAF*BO03DSm~Cj9*_<+tU>e zIFx7_TeO>^EC#FBk_{Ei4>?V;<GE+<Ho#B(A!X)u-t=<NMDy3VJlzOQ{_D^Imp6U+ zcSv)v-bb95=wbd9?Un3dcmxTFzITvHT6cD&nKl{3G!lhjCYMKDG@+O24nymQ!X!x? za-&%4MrmP5f0=1OxeL{)qR@D*C&(}KQIIn^-&m)_`=*3N&49zwN3-OE#~14wha26t z^6tKJTI#VZq&mDUFS*@uRn4&$hbt{9>&`j!u@$H@h*aPpie{hnYtLVVZoa*_uobfj o^3;ZfPHlGXU+NDjx<0+=*QEU%fK{|u`?a|_*y3!So$^on4<cpT=l}o! literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/eps.png b/src/_h5ai/client/icons/96/eps.png new file mode 100644 index 0000000000000000000000000000000000000000..170594db8bcc285a972803cd775d25c45401ace4 GIT binary patch literal 3280 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 B0;K=| literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/exe.png b/src/_h5ai/client/icons/96/exe.png new file mode 100644 index 0000000000000000000000000000000000000000..2fb16639f38c54b7e17be5c65664993098fb9a27 GIT binary patch literal 3271 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 CsV4FO literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/flash.png b/src/_h5ai/client/icons/96/flash.png new file mode 100644 index 0000000000000000000000000000000000000000..0a3de67dd358707ac920814b9d76f56da14a66db GIT binary patch literal 3017 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 P_eM4`#2EaehmHCV9_mYy literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/folder-page.png b/src/_h5ai/client/icons/96/folder-page.png new file mode 100644 index 0000000000000000000000000000000000000000..5af90f7b88e09ead97eac86132b75057f9c3a154 GIT binary patch literal 262 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeG3?%1&o4*=Jv7|ftIx;Y9?C1WI$O`0h2Ka=y zhK7a$nLskp+^h=7Vk!yp3vOWW6$mW`@@9FuIEHu}e|yc4>#%`<%f+27`VSZ9>|8VZ zjyk(%qJdSaN7K@q5y9>(zQ4QlCm0-4Ym;}Lvdf(*zd&UJTWVqi=R1}u4>&9i3NB%B zoggIQ=oP>+Z=u@+Vcn*$+~+vDZnWqvX@AD$bg=SjxB=@r1&+M8Q%o;020s7_sb69S v)7F<*!L*swo^Ad!K5RF5u)X$#{Y>>Q&TNs4!PQrRu4M3Z^>bP0l+XkKVfk6w literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/folder-parent.png b/src/_h5ai/client/icons/96/folder-parent.png new file mode 100644 index 0000000000000000000000000000000000000000..f47cc6e0ea78d67d5f3da93970e07279fe6ce220 GIT binary patch literal 380 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeE3?v1%WpM*3mUKs7M+SzC{oH>NS%G~10G|-o zP#6FTfS9g9Ss<k)L4Lsp92yw<j?WcmU|{6%ba4!cIQ;g;X~AX#9+rTMjJ6B7rtsOk z+rLbJ=g5IqkG=IK>c{*^o2e32?X>=&>woSgi?+UKP}I;mz-ZC*g+a#AjiE<DnZa#> zXoJ!TE(gIBwgwI(W(Ss=jORI$*zYK>;9JMS$>#Xbal;7-jaN@5S(zCzb;ac`IluJC zLAz-(Y`-6Pi_9rL?^s~geZ(PLM}{f3)RQG<RyXs5OTCYpqfIw)=RMVytGHrq{h+X+ zgZF^u2{nf2Ya$rp#BMNruu`(p_;Kv8R)m3o_?fqcI}_@c?%b9>cTaehV6m-(@S~bF zum1_>G`-b-xA{MJnBq78<lFZftqPZ%uoB4L$HMvP*JOo*`HugJg(C9J=H;Au(QWkr P7)A`9u6{1-oD!M<EnbZ9 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/folder.png b/src/_h5ai/client/icons/96/folder.png new file mode 100644 index 0000000000000000000000000000000000000000..a7bf93340d58254503718eeddfc26d167f505ce5 GIT binary patch literal 206 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeG3?%1&o4*=Jv7|ftIx;Y9?C1WI$O`0h2Ka=y zhK7a$nLskp+^h=7Vk!yp3vOWW6$mW`@{&AV978;gzrD7Rx4}TbIZ*$gkfdrVi*l-f zRY`Er#LW|f*g1FC9?kDfHqvRcJ?7Uqt$_1N%MA%GNA(3P?gu#g9E3y~RWz7916X_$ vT^4lqEZFm)Q$fvGf`_g7A^(Sy>cz}F)wwsTdgk*1ZDa6s^>bP0l+XkKb*DUM literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/font.png b/src/_h5ai/client/icons/96/font.png new file mode 100644 index 0000000000000000000000000000000000000000..97d192bdd4192c95a2d08594fd02d4f91cab05c5 GIT binary patch literal 3042 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/gif.png b/src/_h5ai/client/icons/96/gif.png new file mode 100644 index 0000000000000000000000000000000000000000..eee13d670666e451fd520de094e739832ee81cb4 GIT binary patch literal 3503 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/glade.png b/src/_h5ai/client/icons/96/glade.png new file mode 100644 index 0000000000000000000000000000000000000000..b5f2467e833dcd167fd2087287a8d2013037de93 GIT binary patch literal 5141 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 R4*vT*Q&rSbsFAY{{~rqz=VSl? literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/gzip.png b/src/_h5ai/client/icons/96/gzip.png new file mode 100644 index 0000000000000000000000000000000000000000..282943a4edc5c790ef72bd3b9780692d94d34746 GIT binary patch literal 3429 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 A@Bjb+ literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/h.png b/src/_h5ai/client/icons/96/h.png new file mode 100644 index 0000000000000000000000000000000000000000..45fdc7cdebdb0c08c905342d7aa79571f9ed1701 GIT binary patch literal 3627 zcmb7{c{J2**vA<&9&1sfJR&@lC3}<}>oAC9O(}b1jbw>RVzNsnvL##A>|@CY!!Wk& z%h-*Hu{RjA+UlLod(QLE``7zB=e~aT@4CL%eeUzUKL7mUEzFE~xrDe_SXg+CZ$hn@ zZ|6UYgN+%nhOvJNKo7`m2n!1$nfurU#KOYHVqtp6ATBQM-o1Mc4i4(->YqP<78e(< zsj0EGwPotjXmoCF?vEcova+&DN=jyDXXobTs;jHDwY7zWgqVWZ*jO(wFQ%AErIJV_ zX6F0%?+65<r>CdCzrVe`y}Z1fsqgIUWH!#v&$F_!j*gBtHa0SkYH4YSh=|C^$zgUe zA7*uYd>o6#E-Wkz4GmRPR7_7#Gb6Kv$K(Gfm=|VagTY`p9PWQV|BDF;2{AD-004lQ zVRrqOXC9cIo}QeX{9oq(yJ24b|F$f=DqqQMUkoV5d*s(;7U6rwcZL?I&Df3CwT*A{ z2tGyBuM>FqSEiZd;{I*JG}5)?;qq@=ON8}>ACnpN_|netI`rYe0mUK*RZ!E{)=AC6 ztjyskwx6fJk1n<iwl_9sen=nf`JS7TOYy6wL^U%VD=I2lnO?w+P1EN$XvirFX`kFS zMK#Q#LNl3GA21HcGpiJ>4}+b()E`?EoizH?8b$p*We`WH9;vOZrC|vT_4OkoBUM#Z zb#-+IbVfr%1JkS0(o#B&wz086ZJ(+5Qr_L&O(9b#bz@|?gu%f<vTQulLk5XTmX4!n zq|zz0eTnG(i!iEQ26MR7Vf^s$Fj+p4IWOA!4s*oI%ggKQ>ohWjN}<v>_ZY<ewY4=G zmA16BM7jEIzhbbdsfkI*z`#Irb2AeFCI(EpdV71v#>S{yy95G(Io!U!J`4s!z7)HE zA#z_V3WY+^w)Z9{Cz&)d*_fJ|qHgYNZEca2k|=6$65k6FIBfrX`1bZTWqf&eclY@C z_~*}`M@L6HJ3D)OdrT~uaFWSnB9Ta^)A#rHDHIBgMq@A-2L}g-hleV`9)I|753(|| z)*l&cUBhe^*tUgWB3<Drx5X-w7O}b;*iYnT0%2usd4)!=p{&rC>oVUct*uh&gcZUn zkP+!8Si^7&4RrP{s|;tSsdJiAbBoL@buJi#4bSLlo)zQ0C@skscg3L1hFgG@g)EEw z&cedwW(<Yg@x&27J`bB)6Nzm(LcM63pOZJLZ}e(uq*^t3Wym`&6ekf?hoam3;ujY~ zcCUJ6YY;rYK5|$P#vqjyl!r9yg0DOkf%<3!+4p3+USM}g@wH{;6c^{DVy{Gk`UKB> zJ*i(Ovu?jCrXSrrB$+rP@sYok&L2Bje9bSZ4)?{D)l|svHDH@6Jx?Z^Dh!AT>4(>v z^ZjhLx00RG)$Qar26Se>mHSy)Ok2I&T=l3hSw7n+AABD&Up{xF12|-qi+@T?##Vc$ z0;yF)qGo$p<(+wLmCcQg;K_zcM@j*dbXmYsRr5VEDEJmHcv9X*ZBfqmJvety@}_yD zWq*<ST#E4<k97CFeUY%`!t&x^3kxTWkbY|I1a7?)Fr_`d8z{l9(G{!5?}HK6{U-mf zYZQHUv`s*`XVzzZYDynH*JB_G28EkvRO@&)l)Yh1tv8xktX13Cw>#2J<|G}orG5HR zKds<x&kd>&I{%9L!YpFVO0pLr*AFwWDg)#cL??NjYfLXsl*<@MVS(9z03FR~whA(r z;=0@HRZ`!cnov!GecKA+8E~tVW;^E<TWo5;3CWOoTXy^X+odIshTxu1;nzyXbz_?x z`>g}{9*hK@`0fDoP_4Q7-(ei(2Esiq$+Hl0eAL*sZlj-KVMxnaYinoeb8;EL=cPK9 z{M|8_<<<LWZ!s2+9QHQgUs6Jfd7g6erdLM`6xVs;6^&ThLl3s}BHNZkNAf%k6R-N} zCUJZxJK)|0cw6XoJe8O`j!(ZSD9oPcYuk3+xu9`w-y5zb&DjBUMMDek|J(J*)<wG4 zBlMjFI`FfbO^LvQSUStpfo5W*bmnWefpM#x5#NggG*NcM<F$4v&n&P%md`&Gmi{}E zWnnx<r9bez8yLh(Zs!5LJX(xw>pOMg-`+ej;3{(RN~mFeZ1X8n(_Ck9Wy)4nL1JV+ zG`DWEYl2&d07wA|Hb8=#ibMJ~cb8m-8NLsUl6TPlqhA|cm+<&Qs+L`+Lz`yJJBik= zl{?>-;x_fbw*mst088C*Nn1#Lr!Vhg-mibruU+d(YWyt}5OfUA>Q_>gs<eJlpCW~9 zvF$KJS&#)6eqZS0W-~Hrzwps4KUvxRpVfyH9_|ERUfx2(8Z&bP_Uouq&ja*<LvF%j zd_!A;F+-RaXx>lC*`;SIAKUKTm)_v;#%j4sVYewEu`0jb=VR9ve?ZmV=$r$YKYkYZ z^7V(!U0&dA$ZNy%b<qwG9&7Mu$o0xWuANk%K0-T3YtvBpF7(1kCb0)DkhsOuWp~*T zrirk=08loa@o9L#FIjlKSxb8fTpEWu(r%6rXKj`xoL}z4|5}1L3g+L+`DNb<@2;KT zKx(4%#4Z6BRAD1vZuLv(_k&NIG!*=y%I%tv_pBVJbR7lN!^7zH^G&|<;hw+o{HtM) z&{YYrg<3?HhgiGdOdBx*8R~x2@w7Vb3n<TAIYLJG2HM<AGw^aRx#h1?lk;^}MX(N& zqH)1nwck{|=mE|Hs$KustEg#{t`Yh@aOsGulhBW*6Gd{b|Ai=dt9-!<Rajpgj}DZO zh}0eR)WZ(n-Zs-moxYgd8uVa!aD?W|t1)r72^ylC0Kk@ZIc5ArZgJ_}<`ciBzj<v# zqMrGIB~E_|XS6J7&_-!Sn6;4*ke>DuTu#Ty{|UJWFZ+cZamS?f#y~kANG(*KkmV{x z+tm)+o1LhohG~>t9k7w)OEeu-H8W=8v?VO*<3cy~`VnXZ?d(X`+IF4FL@_ADG0lwC z-tmr)-jQ-PKhe+=%=@<%j$al(+eA7Ij}={PtPp)pM2Mb%uPx0W6Vt^VVNpTiSBAoF zD=+|H!B)i!Et5jA_4U)b6TdP<-bJ)`6+R`}(T(~}=gv*KmTs<3omf5AX(XosSnof8 zo6zsKx+Rz@7g@xEku&vP?vgkDC0*~UC%SefT%S*lC!P&pwG+E3!x8WZj*BsFRe5I1 zqZzb+yWnK5!_rvk#SY+_)1F5kg4I&##hu3kpr0RL*C774Rd^##sjT+}cn2+u!d<1D z1m>P3T@;v?>M`$cdXph0?$Bpa0)otg0d*F8=lc+;PfP%a97VAKu+qAO^9SI-$80X3 zdcPI;r3nky#XN?Fq!c4<M%(tm=wz$h6{J2G$yYz+w$trv7})eOXdT6C_sn-jbujmV z)4K>c8HOrYkS|GT?B}pqtV`v|5?pl0wb1S|W>x=2<V-bGR}vKGsMslKZR}rSSUej4 zH06HY*`NGYjv^zRn2ac3E0A+jN%nyHkX4S2P4T7fo?;(HI@K;097lY!@<f0z0EFh^ z15-MjaXvhoRd>ht7&kbrCOBUl!hQ`wf+K!Df4rQ>XDOy&&V_k43u_60xja!{zLrf~ z!<)%a#sWa5@9_$tNL2wraY_w5-cqG0Y>!a!86VYPcGs<>0e|@|3qe>{<<~Nh&`mmi zB>qUXeTdLm93;-&6#x?$3Xvb=`pVuyL=L?-p+4`;n^#q+jdh{DO?<n<Usy*ZX-#n4 zjRRndbgK|vKSkL6*GVde!#@-63OQu<C`D_505*t-j&VUVXa67}S6MN&ocw$a0}WfV zFh`WV|43)Hzi`lj%tKG0h`2PDL=eeM^LEj9shr`SH<CQPr1>40GnraY%<7y^eQ>nM zN53~Yda{Wb&zy|?6GMUL0G!*V-};moVeWg~7ET7F@$L4gj)c`Mu~Rqi^|+x@bd_$x z+=}~~PclRz>hPL8`(coXRp2d~TWgDYmLHslF2;C%;n4d^M)HNspTUl6LQn-NvFduc zI>ox~WgqNOFuZp`VnX*r<lno!wVs;ird^fqh;|WCWw=vQo9IhXdmEa{|L8(xv< z#D%&aqTukVWX!U<K(F+kDLRbn_ro!M3rK1p=F2ulY1+T^nGsUTlc<^{oJ}p!HHw`t zzO?Ybx5G;Xd7VDT<^mhtY?^CvWrshZWShSF6|VIzlOHOoc+Nf~*uG=sD%8G5ESesp zm+s%^c8dD(<OB`B<rC*D<nPQ{xVXzA%A;?2THUO`mkR_?-{FN0{#%&#Sxz4({)#8Y zk_%8^2UP6gzL?&c4i(PRBt_V#)QS06q?`5=%8+&VWhCr}J$yAx_l#yO&mbXWU<y;g zFIu|Hy=y6d_IC&`4&|h7gi;B|k;Hy{)Y$bs_dCR)z0L(KunWjhzCq%W5e_?w<`%k} z;G{OCHtcZq$<(DL>x23mzZ1kA#<&!I?fXQ9owJ@y+s$fn_bX&Pl3{?6VZRLOaUrCm znon9s+5cR}g|1u|3tSt_R1RFr0Q&tE1`<1t7P;y%oT=>b4k;oi#+#${l9smH<~C(O z&fv~tEyypi!K%K-3Dl#k)!ZGFpM<BDH(ox<34c{p?lM#rVo$G<eYz;pRPANK=|ppX zoo2B#r`c5C)&EfzQS`;7ni2hSCqzI^KIuxf4gDUc4f%Ud`bU^k%w(1C{jmp^?lx3b iSs(k}vP*+|pxAEGfHA%t58nLwi!nAZgI4P~!~O@r<wW8D literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/hpp.png b/src/_h5ai/client/icons/96/hpp.png new file mode 100644 index 0000000000000000000000000000000000000000..a1f91ce3da8c6096b2b88bff2b331c826901924c GIT binary patch literal 3676 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 Aod5s; literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/html.png b/src/_h5ai/client/icons/96/html.png new file mode 100644 index 0000000000000000000000000000000000000000..89b5d567f3ca0f53cdef059332377baaf1744bda GIT binary patch literal 4963 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/ico.png b/src/_h5ai/client/icons/96/ico.png new file mode 100644 index 0000000000000000000000000000000000000000..f5eb99c4b012cb596f5b5b402721e430b1a82eb9 GIT binary patch literal 3377 zcmb_fi8Is>8~?6t5!MxQRqJP+okDVD3Av9@yd<d{rChbvy<1q3tYvfNSdn9qHnJ=h zx$o9}vwqHU<yc3&n)hFLpPA>F=a^^anP)!FJZ~(_Zb3OjIRF5F8XD-{KGsfunH_vA z`}MJZ11DUyO|=1_G?w$=0R#ZRfQ5;*p0M-{NlD4FvN9wR>Eq*bY_zqtVX@fJ(NQXu zdR%o(V`F2htE>OB|Bq7BH`z5Z?+J<Sn?HW(PMCsukh*)KrBAX`UUzVMiJo($Jt1A@ zPF!XO-3(b^_?{|Z9&H#`bI~EqwW#U3TcJX1s(y5}^20n;Z;}c=!!VI*m`F3hHtJ!h zj&V7T#k6}-l?8P}V(M<Xe$<PuZ!UO5U2=X?J-B?2IMTDQ=AP7yp-p;!?27H2jBA{9 zepj3HW5y=BR3A_IP}Uw=T<=0`ET7y;>|B+)i+mbQvCpqgu5Z8Qj=P&u@wj*z?h;Vi zzk;VuB6Au;D;gc5((VT)dz7`i<I41dGF#@EMFVU3olCYE6)F#Lepwaa<QCh6awDId z;GABEqFU3Jd8uXe(DGit)Yg}TuQA14WcrM1K>lm$fUNy{#mMB#ZXYzzBn0-WN(xce zE5k0gDzdH%lS$JLs<wGuDj$JIAiv7KB|MC)vx@7=>llw}9rGu47=-1-*3vKAzd@Ie z1b^;ItDAU{-~a4=RakY~(@*55nV+@qym(U3iZ7#k#@3*#`c+=w{VHhkA-Dhng-9Fm ziYYn&GA8HyWK!Fxq)!N;u;oQj6*jlU=L1dF$nQCUWSQRbq_|AQ_fvM;f>H=UKlW1? zdD5@4KcKM9^G)Hq#-+r{VIM*RlgWe`y*d9NF{^R5V0i9UN})0Fi&sUbc}#0y$<W)Z zS|4JM`<K=z+N@(hPFlx!ZtsFUD*IFK3}tK~qk9@%(D%A{7~kCg07HTqN2%V!E8L03 zew+T(|L^^vyzshV`Mb#?H_>&|ze4JV*VfjEKNvrM{^Y%AYlqBSUS4*I_#&c%o|~In zSy@?HS`xewxVX5uxw(0CbhNj(x3RG?KR>^)u&}kYb?mH4EQ&ndX}K4-&8!B$Ep-n4 z%)XVlnpV6qp~z-t`N}9*Ut8VzrH8B}&pH0c>hm_D0$d=VNSlux08V}~)YZ0joA@=t zW^Lsz#J0AmDE}CMd|Wi*pCeVOFLezC+Eooz4H0r>Wo6~{N;$V9W#fnvM3@^5Eqewk zq|YY}=M}sl8&!d9B=3amI-(-bmA_rO)5#OQhx5VrS$1|Ng6m$x?;mW+44%%w#InAP ziGidED$zmWC(46v#FA%zKZ9_4&}?bn_UqO<pT1j)ndU(TVZ6^cd9?3OtSNtb%+%~2 zNIFiZUW+LCJ>hNZUjiLnYf0ecT`Q_>XMELS_n)-;4H2ac4Rp1j8HX@o;o)f<@05M2 zCaT$A^9p&+3O(2aj}3%%e}tNY*-`r2p{!1x-%nZ4>aVU!%@bVR*F~6GEI$F%>oTut zot=0Y^TV6wW9zCNBs=nz=qsPhGX@grA4LG<7W$M7G4_nQP?_(1SKoM*Up!5X<D5FE z`+@#DaXB#s=P-}HJj*X&Htz2apO05IzH>x7*hnJ2o`t2e*!3iQpm#*xIGGt~!q&0} zr)jDMJh!&)8_VnKqvVh1#x)bCRa=yjO`2w{gMtq7Nu&$o7k+>|%4n@**X(N^L%5NW z`&x_dFWNgx<W~o58HG0!yV5nqVpIb*^SBf}Cp3mP{%vO{sCZ61n)mz<t(+US6V7rQ zaF&BT1_^t*y)ys+5EL|$>cB>Q2;_6~asvKbsaCX92o7O|RHCVC-krKcIFyfx`J;SC z=63#zOQ$?NJv)><SJCbuP>Q%#NZJRzfMNt#T+{FQUSss>@k{qAzr%&Lg%>Hl^9I|i zldCayUmmrt7ukQqlN>1ckH<4Y{p=H-(#IHxe!-ex=ioi!r&ti|oa}bh0WaAB6p1H^ z9*Dpg2=N+%zOe%Q9B>fsBV@uZWe{{n6fwt;eEasT04p2YdAF9cjJY}KP0YN+&EQ<~ zb14Z4N=k5e*oi^XBX^*1kA{ET{?B|z@+s<*etCWe&(ZRW{A7>es~Nk$=i^DXrS-0D z337(&$e-*OI8@{++^aiX6CN*Zx<^p}QX`;eH7dB!SB3bw5O8`L#EC@?))d6f{yO3@ z`xW+AKp2RZ3n8q_g@6H=3y1?t^o0u^&+P1y)5D6OoDcOb2t|Rx;TR0&ri4zZE%lm= z3|3#f2R1d4eQUVv=^+2<%Z_QN-HpdwD~17^3w+4g7CyX)qDv%WX6Cy*!AJx7({{bT z@UAcS88x_%w|6V1Y|jd<JEq94)I1B|8dyH(N3#4AjD~VLrJPo%)70b7Qq}*?;$w>z z2UNvA_d?X9rQZt(3K9h52vSDucJc7{@F#;r{y2m0DU=pVI9|Pt{zII8#mB#y6%$%7 z5-XypPw||rDcIjxJzrQ*kRT-`r6(dH;v~PGmv-IT*-~2@<95JYpY1R<Hr6`^9ry6? zaL3`{VaLzgJz(l1u#Fm;U+keJ!p_2r9mEHj?djtL%z>!(_I72O@gFpvMG&xlun07Y zW}-o}YG~JN#H}RtO%f?D4_2ovYO}dsFf-FOGvk~_&US$NBrq(~=NA6`*XFnrrSIg- z;-VlC{Pl}_orAVM>$_a%joH>+0)a3qpG2!cja7IzdgV5<@tjR)u)$3oWN9Q`y0>(q zt}rqa!I^p|2E1EQ%wwVpGX*E)PNQy|#Tf_$0455{9MmN=i+>gJ*X-JmiHwX49>OVP z;vcnzhJFporm%59l7mA+YNR(Et=(KoV(zAl^)}{=aXy!AqFhlQ^`GlVHiHijgLq2Q z%Sk*_g0w>E(E6~GyK6>mwZ8Lakg+k2>+-NiO4t#k7bat5^Zean8fTtT@ajahQ-Z6y zx;kUnHTJA#z!4VBaR!kEdKEQ-G>|hlG?Zh@v}Th%0ZU~uJ_N%gOP^u6wR;X=5iIfo zfPpJ0Jcb3uBfycQN@2SmI(FW8<pf0T6@cZFLYPO&gATJKF`88Tl%s%<8iNz~TwB9) z9hT`YNZH?&gY%#4N`uQ9+<pO<k~#)z5dIj9cDGi>?Fl$srl^t|?#cf4ubKudPxHe? z8V0<cp1`P>V(zHXFrW!H4D7l+hpdpFL0zc<um*;uvD5&}+d!;5;PnWlWu$e2T`sdC z-aAGK%LMV7f$npJ=`bvSwFOQzhv!}(?WT~EJ}B8@K~?}yDQTn_!$Wkm5Dg6tr|K0I z8CP%KWauO__nUVgI{jK+F07W3C#?R%k<<?sdhFt?I32fp5B_I=XD3zdWx?cJXKI5) za*1O#ho<kGiQ8mN@Sg{!KaSCOEL}5jX5=*a>EI=k{U+c#T_ogQ<%{)fz@6JWoV6HW zTER{?u;?iCXnd8J0to@$ikWi2G!O<xq*%d3&<=o)94{Eb1yDK!wS7(Yn{D^dq%>NE zNt$w(hK3ax`7*}W)XXuS>rG^&ZG38Km9&bqiz$~n)AnA-02p`3Gm@dos5~BNhiU4y zIGSiPp6bnLV%K17Ee|$Nt*?w%B@GJ?F%)tGcUCBylm{nJ4m_wml#o(GZcmynTM`tY zdzEuv5d&O`*xb1PoV($Ie#C)O2KWFJO=S?Uczw%_2qm+j?W{6)18G)4d8azAzv@z_ zJYS(}XlR)A_w@yNs4ardYBh*%w_oNveaQh<S31SlHIn^wuo#705>t7OBWr{nYMc!0 zCQV;|s}z_EVGd|r3vB|<_Vm4mpr&jA3oEpEmc-u#J6i0(!5#t%(ePUF`c5fS1#=hn zf9g|Hv?=Vb9j^)AxALjbp6dNQ|1Co+w7AA^^=#|$f%FPJ19tWMQ2qSTkpa)zD*>RE zaa#NLC~g^;N<Se={r1;SH`TI$-nW2uhGMP3h;3oFwTa5O;0D_C($ZwX5sG^ml<r;( z=x>AxQt=T3P))X8hdRYSK-WF7fODJ0Vgbe8Q@z;@;va7~IqwmLq6=$V@h+E5OqW1u z1Fln{(7fPw|NcWi5O@UyW@Y9J9>7BzccuD5AX=?O3rCywUk~;m%{srLOQr|??Dyt_ zeG79<pFEvBj3x)z+mC+CC#e4UU8B(5GO^h%&20PU$UxgYgwi))^(<}@D6`oSoE2MB zH{^8dpEb4$l-zTa?r5q1@{;UXqwKVI1VXd3PKMA)WjPSDNPrnqlH*Qy37saTC@Yus zQAZ2?&F|C5<)6PjaUV&^zWU7lvFC%BRiZ+M5%1cww;i1(KUL*VDf&u^ZA4UU`wBLd zYp9DYUlS*k#hm$L!m=MP!R&<=x7~3f?T{~WiwjoG*MhPP5g&-)G~2(wi=m#GZn2Kj GtN#M4zEuMN literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/image.png b/src/_h5ai/client/icons/96/image.png new file mode 100644 index 0000000000000000000000000000000000000000..bdf05c6e614db52fdc9dd73041d4c97b7a282975 GIT binary patch literal 3365 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 J3ROhd{{S8mEf@d* literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/install.png b/src/_h5ai/client/icons/96/install.png new file mode 100644 index 0000000000000000000000000000000000000000..174858d8ee5eed8ee5324fc2f9f7f6300faa174d GIT binary patch literal 3298 zcmbuBXD}RU8;03Mu!v6BwM~yCB&3KCHCmKNB$8EPiQZzB#ZgulC3@QkVHeTM!BJun zqPLug9yQV1YP&0Z&Ybyve?Pu==DDAH-usz(|6DWg6K!PhfSpx{m5z>%T}NBv(RsJ} zr<j4~`b{hHpMb$m^`R;qT~z|;<Rv2=9gxmQ|FP!zJr;{aB9Q<9;M~v5%wRB>bMvo1 z*QKSUb3HgXIM=?uK4xa-h=_>k>FK?_Jt~z-B9R&z8qTAC&+hK-f9?P1|33FWhW@|U zBMVaVIT~MUXB~87VeOk=nxbpGSaiNc`#|Lpm24ZP&^1yww?4Rg@M~@7N8>=&*h2gJ zTA!YYk0uxdzU2iv5|Lc&J~=<+lVt3b1Agd!sj(;HIaccAH|_HXF(gMVxf4lj^z$c( zJn@E>HmA79E1@GK%iF^@c7BaceJ*Z^q|vCf6G~(~BD5MF-vUo0!B;k?{XalllY~Mm zp=l*Pi62qsp&|!IyI!esr>CdngDukl@bcQs@6+Ek9a*n)puPmCUlH6X4(X62;t&Il zse>hVAR?-v9_d0m<ki3;NG#DLEKeI126l)8cYmvKNPq->ghtfCol+of+0Z9`LS{G! zu1o}z4L0-?ifM#D_7!?p>*|~V_0EG@$ADkpgl!UG8GXp~9#La&A*(1ben`wB67noa z*d+}TTmknlfd`hulR8CHx<oPgh^&6eoB@S`VYT8B!}7mTwPOy;+rzUP9UJ87zs9}C zSL(>et0POr)RV)$d3@^>u5&iQCIO0$6G`k4b<TpnjD@ClBOTLWP8o1-0>b@0Jnj?n zRT9iD1?Kqy9#VzCRU>1XkP-FB=tgALplD{lsC_EzbuK)fgbe=^xxT*c_6`<Wi*U_` z`4uDHwj*O(kdY0@KS~ikMEJ(W#`gC1IjH9lo}8Q<9v&VY9c^uG?eFiOot=@%<ei<J zb7*Na+UDlw@$oT*LOBO`Y12sO95WrvBLkC~fqH!0@wh3TdTn0d=vm%Xt+cWI?RB|w z$vH0ujGjG|>Atdstu>2?ht6$vUS9*8v63^GJ5Wjs#>2sm6z7b({G<iMCqz$IJ67#S zN5^toM?>|o{p@Cz4~oY@Bywh!HficTL%RC14bUe&x~;?#Sa&q*?6l3kifGZ@)~*0# z2g~@k)Q7R(1pJB)zQ8P~D+vf$n#C5jkOxIM2Y&kuK>_4!in80U&}2s8voA8otyZ%D zP@-?>1m_zW*^v72ubq0<H=9vPowG&vmwwuk_iqe2_J6J!QgT^b7Pn?ZJnb<Va_H~% zG}J+9){>?k?umAPUmJ+v7tBd%z?uN6(!cNswG5W7C>Z+sM(c!x7skyXpPyb4Z}Ugd zqTa<7GV(^5Do!X9Taz*H$Wyr&g{cThP8Dip=+F2?ENfgxM?y@VRp{p}kGM+<a^XKc z?)ETAy891oiEYXZxMaSK%z$m`c~|_k%UJ(|eHtdykZ-&o#K8D7bLkG_Mg(3WqpdPH zxk7>E6Ft{>vtt<)Sjjy*Vck4$ugC@;-5;x%6y#?9k{?N^wC12!dGAs>9PMnyVc#(g zkWt323m4y2TUb>0F8EZXVD?N-g+9kngYqedf4g<!8UZF(1?zOH2@058{{&`qnggL+ zN-c<t00?X$bRqeKn<pT^0MCTq+11hB*NeHhr^)tAfVr*D^k#YN{acEPS_3!Ma~XOF zyW#XK%7xiO7EW$wr?kUEC%bGznkWNrSGu^<u&*?PDK363i~(<8M43V-vvM2An}#~4 z9j<lpurTUWO&J46PbeVyrt6Qm|L``gCl}4GCTAp7>7hRcPuTCYB^RGEvJ_@lu#5&M z=8;qmMA5@=^k=SSNl_U2hk>-@R*5p`Sd7V|tg)g2w(8PF;%V+?P8;G#;C3foQc8W! zyq8@<KhW9^s{p9KlomE5b`;G|EO#+132yEUF;U)jS)%2WzSClAe*4HFZ9Z7}Yv~$1 zMcUYXb(78VPD(Aur^IfGgRBDg?lu9bK`@6k+7&HJo+oP;$A24Kx8>ybReW(3%EOt$ zkE3@)tgcfbS^_50gI8tvIAgEWV-5=#<I&CVQEC@e?C{7Kb8yCz-}<KfK!Vyyb;PR6 z|BPbQl8B(M1$e`YWS5@_3@n$NksACmr9||k*gh!U@8U7z$@gS#ujvKGT>H9z@q`DR z`(BFwLW*6uFkk5$3x*2RY4W6ADqlK*EROTlW!2nWrMsgBZes=F<i<m5+c)r+*?{+g zI#(`PmE4&Kcc{F8CJTW3Cs8Wysq^EzDrm4um+6JITXqontAaUrIwKD2*t(x-_3V|X ziZh_rZ?A%B)0`&0c+N}%n};02d@FkEAEr(RM!)X($3}=0O!J#Rb^HKhW-hM*w^AO& zW`9Y%&dIRK&N|jm;TtZY4aAA0)p-WB-Tor=;5%WLp`z5?68(%5z;I^m5Opf7g#kWd z!f~Q;UMTu!TGVkxuRnxU)jJ;IR$d5>?7UV7HWyo%3zSIkb3Lf!;L_JO1mvQ5UH=@P zUWxF#uipQZtDcQ}_X!*JDaKW1`c=N{yY8$USy90VbS<(REPqkn@|_Q<a_)XkR&$Ax z>jiM$OLd$M>TMRE7m!0uAG;+GvDeytB_ZV2OjNIKCu4FKBjFNu&6DBQ-^Nu?mR~`< z0)$WWZjXN1rU>yV4e<q=DWi;ic9}$pO4pXqc_#_#d%fsx|Ept9z+;IfB-WflhFKi0 zf3jgvklX9A`J{2+=}2v(q=J{89m<86OUmZgPtXVEq6N3YhAa4H1ip!uVa*5ust%?W zm%TbVT|2+$xeKs$U=U6=lW(nXsG|2z@op{JBW9+%QaNW1nr0H_ZucyA@1P3udD;O} zwkZ0M@O}*TD1o<Z2GaK4gRBDDT5%<;&+P5%Hv&toGRurrU%PKo^vZbOwOpa8sFGDC zevD4(JiYd=g5BVz_)evHIEW<wfOxrA(V?-Amo{rh{_&$wa{X0|ZOp#*9)6D5bi%I^ zmsre2hcWuq>AVtH{PBqUp&M$msc_}QWP7X&E|!W3T9NV8<(v;L=8Ct9kr4c9+w17* z-{jD{lp5*KHm{4lWU?|)mTJ4!<%^S22M|FLM^8*K``0m#Q*4qbnPPkp75MkdNAGOz z%DU0ZhDAP+exfphGWxcKebXJ}WLUNa@H8WovVkIboHcd;S78@)f>!hiYF;5k^_<gJ zD`hY8+=zX5Gu}vRE@!Iy`2{!N1Y%j4LvL~mJ|FyAlv4fh#~<}N#K&^!&+i8oq}@TX zfg&P^#N05<Fgce-)DTZCQIz~xAQloLHY!cEOGQavrf5Z;W`(S3j16-l-MRQlzuj%z z9zJXQpsNYLI9o0D%;4-XLHlCKgn!ucGc|yKZl&Lqt5$4T>i&b>1-e*Jfo|seic&;t z`ej1(4Sx=Y;edFnO-D4KEBD^9Dtn$$ZwcLNLUjz4b-_vbcG2>ZFwYL#{_AfJ%G0JM zh`w|{^rK=U&NE#Cr8+6g1?q^|*!xWW3wQp1!zJN-(;lND(K6B>rC5@ee-#4v$hI%V z6f`vxAJmSo80~6sGxPGxGQBE@`c`m{>N1!9A|{xL?vpd+`p#7T^VbLZ)w_?$zj%$9 z;?<yBT&J_Mq=!>=F09iu3tx?}9H?Pg5E@`0KuqMpkNYZ?i37kzg$ViQ5Q+qy=S{;! z2q$;0x!}B@;04y|y~IN#WR5kW!JKqgb?{btkB$ZT4#eu|NH2loaPh{C8;jbvv_b54 z29<Jl8EQfo7dIej<)VxR1;I|7-g8&9zWzlCBk5=d3;Mb*`pQxw7^2$Vwlk|w2dL6J z$_}XB!!3b84NS?ZWVyC}7~=yQp}+I>lPZI6W=Ot#FT~3~eM{1+0WyxK*|&8m=sm44 z4|~isz@>7##(r~+uw;3=d}}>zrc;Vz)<a3V!D&L#XYXv|^I%&1kqm>tS?G0p#Bm2` z+oKjEZmAF>`sVx8kCwNs1|yqqzz^{GfElKhfNRZDfxoR;DAkz!!lu-N7QHRY{b4*{ zqdpzprv7Hj@^!_ZsZA0G?UU_&J!6xnZDOFnm*V^~*x}j9v7SC$VBxj2+h+IX8hTId zUbP3NE&@#rxaDZY3{~kgYrPkd2d~=O#$H$54VWJcC~t2!S=gB0_q;K`G%vGTOH#gs sn4DW%uoXw4ZbdPuOf9&G5BHw|@NvuUY8CJ+|Lp%dng$x>YF4=a0L%3ZU;qFB literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/jar.png b/src/_h5ai/client/icons/96/jar.png new file mode 100644 index 0000000000000000000000000000000000000000..f41814a086065dc732a0ed89fe74e05106ace0be GIT binary patch literal 3494 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/java.png b/src/_h5ai/client/icons/96/java.png new file mode 100644 index 0000000000000000000000000000000000000000..06658cac4bf7ed24cd3523ff57780b5fc2a21fa5 GIT binary patch literal 4151 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 A)c^nh literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/jpg.png b/src/_h5ai/client/icons/96/jpg.png new file mode 100644 index 0000000000000000000000000000000000000000..63af404cdf437e5490e7cdf4289aab25ff3f35c3 GIT binary patch literal 3677 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 CyuIZB literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/js.png b/src/_h5ai/client/icons/96/js.png new file mode 100644 index 0000000000000000000000000000000000000000..35e58fa5bfac16ab694e504da5f1106891ac6aa4 GIT binary patch literal 4277 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 CkZ<Pz literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/json.png b/src/_h5ai/client/icons/96/json.png new file mode 100644 index 0000000000000000000000000000000000000000..35e58fa5bfac16ab694e504da5f1106891ac6aa4 GIT binary patch literal 4277 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 CkZ<Pz literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/log.png b/src/_h5ai/client/icons/96/log.png new file mode 100644 index 0000000000000000000000000000000000000000..4a686016945bc4932730330b090de3ce0a207f04 GIT binary patch literal 2374 zcmeH|_fykb8pgj#fP@}es6wRcT?9diAc4>XL_$ZdNL!@bOUKZQ389EyMa6)wQKKlh z>Qa;vQ6K^eUJ;Ol9=bq4S|BD60&W~<@67!l_RO63edcqXnRDiSemF%QSSM)-H3<L! zq+OgHyo5dE$A&?Kb>Kwdj{}iNTQ^$(s4bQhgo*+HSj*#-k0X^zO;1k;gTXpFI<2j( zG#X9l93LMCfj~GMPN;<jVg0#;{L7aw-@bkOANX7U`0*nQ23ucW|49o93WQ=~V?#<x z>Tf;(U^1D15urh-`F#Fg<p1L51m@@GdwP0$dwUla7W(@7=H}*v!~gvGGo4PKot^FP z@1K~M`1<wh%*@Q-;NZ~E(Dd~5$jHdl)YRzcD1*V6oSYmO7!XD#oc8eW@YvYc^767k zAXr;lTU}jcv)RI=R#sMcJl^K!=FZNJFo><KEiRYK;c$czZ*Ol4LwVTG`|+3}oEO%6 z=@YqeZSBfd^|0SE`9D<tG|$*y`6%jG;DbZcmLVrnCbdpwWS);G#Yg@&n9WIW3_F~c zY;71TiE!2r@(4W#&K1`UPEB{Wi+8}d5TP;`V*V+H3wL$Pii(T2&C&KEh^VGn*qlhR zmvHjL9^ZFT3yIdy+^=V#D61nccR)cJe({%PUnwOu5YSILW(NRbXcq@tpQwqIQC=`T zO`|iBnYq@?1CLzPj#JI08W>f9W#Dp`@+bCrp_LTbk8YZddP&66NdiI{+ihbzf>ifv za&`C4+c)=O=?KlfKYG8jP4}P?Qn!9TxoM+TC+Jrz5izVCJ}%iULyS1YstY)Y^q>#C z{7SnXmP1Tg?ji)D1CMHZ(Bmdr=<%$SI8@`%I>x0eeG}1opCY9`&5Iw2Sv_cre_R<= za$j3|-`u1RBWxNdX%62#X}1@Qb4#(TP0GGJ-T@}XHnjQrSSITc&-g|~KRZY0uYY!V z_qT=cyw<dDqh5$DmVe{>cubJp*3k3wS?35<jq2v|o;e3xrgZl^#4y(zBth<2x&E9b zR1kngdjkC#HxodR9tAOu9yl>b2_AgSjO=g?63{5OVf`RFi7?zif(A8Px#hEpoYjiq z>Y=|g7R#y`cw801G~uq-awSeWjnH&Y%9$;%3+;c?l{9t6byHQ-WaifnNaVi)s>A`+ z%lUoDgXts!eksNfp(9FZe!Q&@=Ga_;S->4>pXN)sI8YUu<0ea4$S>e)4xvCu5*}r- z;|-?n)l^pZ?x1X^l?h_pg*VfL%EE_5DrO<w-4AwJtTTG7_bmQ=zo_@H@ZKd_U^r$6 zs=)Z(6IbId#&na#Wb;z%YS+jiiZrxcdDVSEPO-oTvg{UKXm1H(@HUb&>~~uaBXQK{ zAFkq|ykzj%?`1sHa9;u(x@rSp{&A0D05|hswRrzQSHH?1iSF)Ld>7_|k9x63Jr7eK zJ1sU5Smg)g@uWz5$cwVFvW0?~lADmH#;x9Bb~S5kLvarKZ79{VqFUxnR|zC5vJcWy zjGvXrmTz`JBG>X^OxL_wP6E-o9c6B5IZw1nywo{uCn9bP&?O93^+30JVCT88L$FRI zzL^;HYUUT^*K(*mIJ<MZC_8+rz5Lnfn*fh?>`ben$?jfa%wcd&r6S>%(^}acQ0M-m zNOLjfj9C|&GI1J$)#wDxmp0|3(Q>F;);Y}Cw|tcZfrzaCeRQ!?8^<3qUf4zLg^C*U z;OXJJhG}WHtQ0Dhi)=1L_=?DDV6JIuovki=wL1~COetP0><B21YXQUG16<D=;@BHF z{Y87^bLpDgUTNOIqTtfLg!UGFk5+dua{p4w+wAS!UAo>{7_B8kX3GJBdIT7!9WD5# zgjYYZUIf+lmdkj49f;4oS#XVlQF(V;crQxH6SBqgEu}ofl0NX6nNQ^V601xC<U(Kv zk32b6q1A36`a-fd8A-`1RK&O4YV+Z%)RdE<XM%%0AS(OK%Ud+4>rK8Q6&01N+7o0{ zTK=Ug&WK8kx5f^lgK>M1qbRaek%$TCV?jciu%h@>TR8u%51%E&5`o+4iRIPq=CvKc z2Pi+rH&I49@s}IxfLH6pyD7m+!)6v1=ug^Y0^Iq!I0I^t75bp3PTzpHj*0xd+I$Ac z2=!o3Ow^nR7F!+<WPAXv#ZO)bhc1rbND?o1seiV4P4%qs)bKYjH;Qz#jWGI#axNSG zTHq^A5CTp2azY*+R#Ja1%sp)LRFRBktRkThjD%gUsdDVFmbLN`y$1h$$Eo*%5%5}) zZ@|@~J$?%0C|7uOw;zW;X%fM^2o62crdi)nz&9{wh=dRm6(E)9jf+)drkSVK9BaG+ ziIJ}FmOI-QnGi|KG4U7+@do25sdm9K<ZxL~sA;_w3kr#x0~9%`EXBS~e5Vo%d5ERC z4238agWzOLJ2Kn8QbG?#R+QPy#X4BIO5M$)<%)~$Cl%clwOW6r(^z{Dk`>-|QQ%-w z{`7Doac8`~-Z~S(eOFYsi3{~hX(kED<9|QT;GX4A*(4}f8lclxmzQ4XOY%CsocvN( z$mtsk2eLYWN$sgSV~Sa-w6ExRY;0;NaVKms@^!t%`MowrS3g}*-N|MKUda_<M7}=~ zQ(tc5e<vem?smOvnbG%;6r<pVI`fyz!LXU{74e71k`N06zJk!cgG(ETh2d@l+grR8 z9PRgOx_zT<w4w3G7YP5Ug@dP3oV=f{xDz9yW0Qv6Znzit%r~ZTRqA@Uf|Kuh8?sEJ bYPO9{yW^s|s!vP)_}*L`u?|&sA-Vqr8Vu`Q literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/makefile.png b/src/_h5ai/client/icons/96/makefile.png new file mode 100644 index 0000000000000000000000000000000000000000..b385d0c065f135d2d237265abf1f53a62a83ceec GIT binary patch literal 2894 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/markdown.png b/src/_h5ai/client/icons/96/markdown.png new file mode 100644 index 0000000000000000000000000000000000000000..1500792495a9171e21e05c761a8d4a2d8130f3ba GIT binary patch literal 3781 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 S@3a1YY1Daas8OnJ7xI55Q$~vb literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/message.png b/src/_h5ai/client/icons/96/message.png new file mode 100644 index 0000000000000000000000000000000000000000..5ee14d953f025cda2ae189de4318664f5594b91b GIT binary patch literal 2852 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/mp3.png b/src/_h5ai/client/icons/96/mp3.png new file mode 100644 index 0000000000000000000000000000000000000000..b26a96670788241e9d39fa40668ed677f7219965 GIT binary patch literal 3498 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 I)N_gZ4|NTCsQ>@~ literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/ogg.png b/src/_h5ai/client/icons/96/ogg.png new file mode 100644 index 0000000000000000000000000000000000000000..34a7185c93924b236bc3f164696e0ac3ad7d4705 GIT binary patch literal 3470 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 b3+YfE{9PZu`nx^&pC-mwAEQ^MV;}Kv5OIxy literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/package.png b/src/_h5ai/client/icons/96/package.png new file mode 100644 index 0000000000000000000000000000000000000000..d75909d3e1cdd315005ea7b66dfd61e71eb7abcd GIT binary patch literal 4167 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 LP4%jDkc9sN@&K*S literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/pdf.png b/src/_h5ai/client/icons/96/pdf.png new file mode 100644 index 0000000000000000000000000000000000000000..551c133c55a7f676aa9b9af827d8ae6c9bc93748 GIT binary patch literal 3670 zcmcJSS636-7KL{bN+5u=NWf4;dX?TKNJpv#JSY-Hq)11kLudyO5fl(nq=||hqzN1# zqF|&4Lhm)9CDhR6a>jkRf8ee$_S$pJ{kXq}xsq+IP1#umSOEa+=4M70k8kY12M#;# zeI|+jJ}|f$SQ!9NmWDXE$p`=p*jipTKK3grDnvy^gMxyNwV$6~d3pKz`uee+nwo;c z;Ry)|G#YJtd%Lc#?$|u8!NEZyk$7zWcl>XMLZSaV{{Qp<AA)w<rmv%Yhfb$Dn&R(z z;BBqvOWy7@R!>>z{Y*`rc=4jUp<#kZ9JDbW#NJreK8;7QtVps<W;`zEg5v#sDG3q1 z5dm#iFRWUtbqT{;MMS3G7QPoot*3-{>PW6Xf7F)q?1!@h$sM~<_U<JY)BBTLctd@n z;+Yy%xm6O8WT>-Gqt5q{Dy_}xIY16S&+3Qbg`CGTer|i48>9CFmj(w`3!YAD$!>&u zjC_2*wXrcK0Bx2L=*fJ%y0k={pR2v)TxqN`R8d|hi2Uj5G?4zFD>jV2yfhIPMIRu| zR+o>;qBFS>+i8*e+uPKsDMEbICkvA{u`>(5er_#NHfk%DD$0KGfFfD(USY23`r1-S z;T~>=c^8L)E7k)qo(-QtZqle7$?=`?@{67A{rq4C1qRh+N9}EfUlp{3-fv?En=Rkp zYAEH42>jpxL@g~!!#{WiP{Rya85`*#5<5FPGgu&HEMR+f`rzQ8OIbM|4oX;|9a54# z7|hQ22+7!Z^)whA9o^mC?d$8C6##PrfXE7{B4Akvw6?a+p8~V9vy&(PrHFD0jE|2m z3WE9hc@l{<%?EnfKo0_t*ugLt7&rkYkf5Cz3~~Yj1NhAdMz}$LfB!ESXn}$;9?;DK z+K$bUkzc=l5eS5Vfq_mq=;r{<5U{qkHat8`rBcac@-ehSLqjVoD~pSZOG`_~e6Fsp z?(gj_FE1}FEKn$vV{UhLb~ZLPHa9ovbow#UTU%SF>!;zzu<G2qXnpDRVs%IA;PUp> zDFu`MO<L~f-Q3Bu{5M#H!u9;43~#wHVq)zq(86BU_f51o#6_hzd6H!7uLvO7AfV&4 zBR>GFwdO_!m)*x#hJ&wX1Pd{*Qk^7uAILLR*dpNLFCUIO(LRUQd3rkq(eymWPWjX9 zkR(HT8G~GfS*)amK#Vp*RPz>kC@vji7BDfP65W+SW(iZIHtru3HtL4vb?py@is;hm zN1ADe!XfS$(Y2J7(j9X#U6D@3_s$P}?=d%Pym8KSMst|mayh80-~77un7dItnZGfk z!nN%w?_OV<V$eofa#kr$Y;?Ps+Hcy?o=Q`iS@zZN8Pz-$UcR5wFvTs9l(H3BSa)Uq z-p2Ii^P6wm=7}>ug^zz!{VSt&PUSwLq0FCml8=XIHShUj#z)_<wY6tqZL$|+PBSX} zRh@*==T0};P1Kv%b6@e<o-cHD)hSUbgCMT^XxR7cMLdhnjAytd8m_+-^)qUFa`C|z zO61qYd&b7iVX94zc`JhahR~>nbM?1>{?xf`{cTK=I%-##Bpf@1L?TLV(#hRv>NrC} z*zV3A7sl(}U?3VZb-(S33=MNo^ni5_WmEFGWTz-;9L*G>AgBG5VH_U*x-aHDJ-@eZ z>`~yXL=w~x`?~k{)N_}!c~iG*1#de#vxFO>(u=mz!zN+{4ZHI6t{JhBKgUlwl)qeF ztcI05??x6#K(fvHFX!p)H|w}p+&}UF7F^9p2C$Ao5o9fAkf=xf&r$OFOh34kvlB&F z-R&CN`exY)=j@%F4*66aD^Ho^TbUSIaxxLhOVE3%CeIonkWWqg?4SA&*wQcofvl?9 zt1;sYY^x^__ZGHDN~Pb0lu=lo_8V1L&G(1>a}R|5gqU<(FY682pdt0+NYuO{z#IR~ zQ7ZJ5z&94FTaozQw4(Fy4Yz@Pb_%jYP>huTDY^KLw-l2qRa(2QJ6rejFlDl_(K}W; z*J+krb71~{ZP&ZYlDVbbEJ~9ii~9Ku2dIPnq1yohXVPEbnRCO|wQ+Uv8Q-i3H~DK& zrPbW7B%e*+cb1%fl$UIrRACHE=Gz5LVuQon59Lzn*u%9HIF4dd-E+x2X3Vq`503m! z+AiIc98)TIq4p8FjOJ-qL^3fsC>tEM*BE<)vbar8j_zJ7s3QYDf;H<s`l;=Q>*w*s z(Y>K3Xk-XAFAozJ2Sxkk%9kb?P(%lnGN}_DbN>*}VT&MqqsgkJN%nBfdsC|XH}p@G zmSNx^j6rkQ9e>T_(&5C~URegbb#^@ua$1#>RBpw7nq@K67>zoz5zP|XPdt}^-Ri47 z8QLZC1y{luy$sEv?H;1A>IVau9@P7zCP#mKiHC<>1v8vg=V|t6ag1n`KJ03yye6kO z6wWD~)2nb+dah3eXFPl!VyDU}!?yaQ`kx*A7cYshb_~?&A`B8gjeErs%XOacT<NdI zX>)S+%u*Ng<_dIVJM;Rk;Mb{O?Iuw92VFp0x{kq^q1Ena$h>Tf5`ryrQ+#_Z*m-S{ zdtuIBfI{(Yj&F~&O}(B(Hi3<uL+~u?c_K4v+SX((=0*B;%0~sabt~<-kS##T6yU;m z$6y)u+48?hlxrfk<YU86=vGi&aes}HLkEunYX2w{3*xxf?Zq>Txq|eqpBAzNeo?{u z--ymQpA73s1XVUxQo5M_Y{%c^qe#o6j@|2cu`3T?dYV95&MDU}{aUbK!n@$QL?^cZ z6m6g_t3;SNEChl^WUoj|b=Ee039cI`!;EoPO~60U7(+go@-U&TI?SXLMxBBa2x+e+ zua&923`*#*3o9}%yvz!GZ{my*WpZQHA(Ny9M)6*SOUMnkkCg$@4SGqC9|Utxt+7s$ z1|}1YUCL{3UtnQmY!-+0Q06q+<+P;(tNk+`LYBH2B2zOL$UuN&)zIGFaX9BgkR`_n z$LO9#uMNVD`%i1*{1!)ETU1RTN+H)i`}`?*X>6}qnz!Yxqu{cUDrs$H-6-X^Ba`!^ z{LaVxNbc6;#0VP^+Mg@x9>Rf(HMs9aFn_RF7{eYoO|DuHEXoN%cA2qjpln?$HX$O9 zAk>T+)lbFPJ(6K^7}qQ%Qup0xKvlzaA5~8+jB?dg$D965q?Nry@Hc#u2b0Rx1P(>R zw#$5mmHf%=f6<O|)LE4|-ZA1<(38y8da%*TQ!E9+M*2)=Jzs2kciMlbbZ=SP&$fGm zbW<P&7O5}t$|}s5?-TGWEER*5dALvfZ}62~{+gd&^mkdBq_`oy#w@e1d9BM-<RP^1 zbC(qgNFtcGNYEO6_pBK*ppKtv<{A7!PLPWa!SlqDE>KfsVeU}u7vn$JdY5<pPDLEA z?Zm?-NR*+pqObe6@M^|>qxXT!!+vYi%@xz1<a2{8YY4x|!3!F^>fbIk!P=bORXO33 z3MJOY>a!J`WZI>CzXwpbB|Xj%jb1m6#|w=vQ;b#EpVh-kf73gDn+;~9K~ie)uk9=n ztUpNf#^;&Moiv!dVi?B^x)?7!%GU~%2<~zoGXK!!r()1y@<`pJ4f<soS2Of6L$+98 z)BJnCbaq5+Je$ABU13B4dr4UmkWeY+@9eviVI`TkVIq@YT5__ZXZBjP5Ascul9GF7 zkBo7v{0)0GV%e(;m<#={)Oncx`3<GSu}6mVNNWRmm$%)D<-2%`JL59byv;Eh9wOYZ zhq{<XgyW(LCEIitGjn=T@Jua}*H5(;@EC;^#ob}W$J5d#>Vg$Dvcj^0)AIdEIsue{ zZf3BhF9&p3JT2y*C_W7VHJ1kU#P}F*ln+^E8lah=g+=3xYFlk34&l3)m5Jm9$9vi8 zz09E1t7<?O@C2eXV`oCVy;lZb&!((Z9xQ7VEvQo*dYJKI9B@{i!g&)Jt-M*ttXSbf zzz)hDHN@^NjECRip=Zp*Rpz|_fu64cq5e2~3%1cms(s0F5;z;*a4|PTyNkQXIjOQJ z1#A-#^JCc(qvT-N$RW_`MkSBRRRd=q7i$rQXDAVguMVXhKGh>$q#C2qj?|E^$H^)1 zZ2_@1tZSA{^?BRW9dkivQru!}xN!>{mKX0D5gF;iEf6UUNNHJ11&z&KbdC`C)$RvJ zF!t#LT&`;XP|b}}!ky#Qbs4C<J78aAFs@dZ`4M2ug`MnhNHeI5y5WUR){2R!lTe@A z^Dz7ZAH&%gaWgX3#l=NNpfJWQpn9Gxt97W0|9mD+i_LiUf;)dAQy@c3%aar9YL``< z#NoD3!?V8|{AXG$RCiYY#tK;;5%3FSh*OYmOd2}j3EGj{!sqXp-Y-iQFyB|QyZ&`J zoFwgg9J7}259|i)F|W_u=7_MVgYvG9PDn&Fcld?$QnmBHSXFn-Ev5cySqR}4n)p32 zw41<?aGzS-+lM8F-ad7?xZwNSTll!?n8Edz+KEgF>CS2vMUi{V`o!dNveojZwA#B5 z|ICrzB~b2fQ>6)t>CpyJv1qM;SvNwJx3gOmCjS-P+J<3!J6WPpE+HQZgXS-;Z>l(j zf=DIK7Bn~~<`XfEAILewQm~|A6C5gY796sf0m}Y3ezMc)59#JYkCtZoK~?sF^+cD3 zazV6v{-pjr+t~eh`iUeXXL?U`)+Ar=fMiMVmp_7;H|pae_PCwDsYE-RPJY0VoOIyA zEUqjnrft!5)RsQD8l@zd88ubL{k_pUd8uIX<q-tUbw%ya>f+JAo13|@wbAGE*x3I7 DF>lq1 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/pgp.png b/src/_h5ai/client/icons/96/pgp.png new file mode 100644 index 0000000000000000000000000000000000000000..8a4b2554ae339451331456f5d38e33d75f049dc8 GIT binary patch literal 4899 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 G!u|t}lpR$7 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/php.png b/src/_h5ai/client/icons/96/php.png new file mode 100644 index 0000000000000000000000000000000000000000..6cfd766e620569f98daa44a41c48a588fe059e8a GIT binary patch literal 4387 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/playlist.png b/src/_h5ai/client/icons/96/playlist.png new file mode 100644 index 0000000000000000000000000000000000000000..3fa9edfbbdad3a37b4351a1a611b64ab52a517ab GIT binary patch literal 3552 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 R_1`a&xv{lTm4SQoe*gz3c}@TT literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/png.png b/src/_h5ai/client/icons/96/png.png new file mode 100644 index 0000000000000000000000000000000000000000..ce7f88a1d017fe2bc03a49412355e8cf2bf9d157 GIT binary patch literal 3688 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 Oe^1r*)#_E?VgCb5(B>-u literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/pres.png b/src/_h5ai/client/icons/96/pres.png new file mode 100644 index 0000000000000000000000000000000000000000..e2a1f2c152c693e9347d4c5325d770061f12462b GIT binary patch literal 3576 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 bq0!84)N0AY6(7$3KCEk3txal;P_h35d?~5n literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/ps.png b/src/_h5ai/client/icons/96/ps.png new file mode 100644 index 0000000000000000000000000000000000000000..cbc672416bd6d780cd3795157b639b9cf02df221 GIT binary patch literal 3950 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 Jvr^qA{D01{xz7Lq literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/psd.png b/src/_h5ai/client/icons/96/psd.png new file mode 100644 index 0000000000000000000000000000000000000000..91b43f46addf00ab5127397b589c6387fcca1dcc GIT binary patch literal 3399 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 L3~5?z>>2YPG=4m# literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/py.png b/src/_h5ai/client/icons/96/py.png new file mode 100644 index 0000000000000000000000000000000000000000..d0e410efe520b790c5880abab0f5bc1df53b4774 GIT binary patch literal 4203 zcmb7{^;eV))5ot3!lgr{LrMe$0TrZnSyF);P-GR5P-$tA5TpcYm77qcL^>B(X_i=# zmX(lnX?CS$>9}6*^Zo_ToHH|L<~u)r&dix;V<TNA1P=lL049AsEz`4X^Pkhh&f<tp z)PDlp0cD5+0Bj<|u`LY%zyM=|d)hNIBwt_OGu6w>>+j#cv$M0WU%%ei*x1|KYier3 z;c#ct`1m-HNIYvYGc%u+|C2!=kpF3(Lhzz4cOLF;R5!LcJLt4E*CZz=*H-3$gN9kb z;tPYh+gt00)TPs{9`H}(G*-8^y|=kIauF-t{jFKU%I~0*Yk6g(E#0KQrwv^4n5(}I zQi3+}F05|;{n=A*Y;i9uE35oDea$PL(Z=Z7>}TpG55UQ^txmJh)RL}`%9Bk2rd|nX z&s310J=vML)}aTEKciG@JW1;)Zt7jz*!<O&)?Z}v8QUVIYyEe7r_=)gyN$s0<d($i zAPCk+NstCA0>5;25y$bp!|Mdq<d<><1qJ3Ixx|`)jzlhS@yQ45H|L0t_DS`YvDH7u zXXbykSOul6E=?pC;O25TF>hN8qv}@HHvB%|PWxT)VQ{Yxb=7{*p>!^AGUioQ1K5JJ zjV=L+o_?9lV>64QI!`vYw!x{8<==f^-%~})V6g2DI<R={&q7~3ozCm}t#!&msf?~) z4rOjg+v!cjmsVA~h|VY|NHAU{lV+Ay!0+ZR@x|TUJ>a}$d_}K$M6pqD{+r@XnMYC6 z)6+`cd2UHnV2do+Z6&B?KJ*?c_aqT)xB`y61WD#+gdjt3KY#vI^2nBY5K<RJySTUr zwkuqJ_NlkGcYc2U63Pl3Ga4Km1ZzaVVg2=0GB~KE;#;WdU)tW@-qqFB-`_u;1_Qq< zOBlF-Q+L5W4M}6q^78VL;UV=P?BwL6f^%wpeO*mW&FJW;w3#0skN@`V8;SILe0*$n zc5Z2D2^CfcR`M+`FCQKruB@#5`Sa%t<F&Ol3Wc)1zP`G;y1l)<wY7C{a6l%LH#ax` zpKU6Yy1To(v$G?Dm4AE&sGN_f(cP{7__4iNol)w>%BO=*GuUf1oF+En?A~k~_WqKF z&x8a}p(=W!EN_~n%+B*LKmhj(K92x^aYA1Ub<gql+QbXY-DN24=B{tU6*gR99nf40 z-SuB5|L$lg%PlKerzwlc=H%3VT32aDqtz6G2osWIE)ElcvvM%fq$7!<d{qPbT<`U} zT1XGN_4PQLroi<Qmdl^EPyYsyxI-7}Z-U?b*Fj_jgh!@M5S?2O+zk)Xp`qQefa)H= z|H*^a%(R|EKl0!4)L0xbk2IiX%vS~`7P3>V1E(td*A}z871`5x_^6#OiH&79QZa!U z0)f67!E5nCt|`VsN*;u_Zq=`OCKU)pty5}Gv~1*<2VaWs<DZ<$P6l!<r5;P{4|>?7 zxwppNNDY?w_Lnhi?HfR{Rbu5MFHXk?ZOKGpF0tyy*z&5F3M1j~3`$aRabDU%7@Eex zwYAp+YzVl&VOyvk7AehsjbNGnzKtye@5N_BeVVt{%2^=<O`Fk}ntDwKX0qAsQG_n_ zZZ$_=+4ca>sR7@4Fh_iJv)q-KG(WtVEL|hlf|YB@xT_*bd;Q}US3eK+ZUNDN>9q&F z8^925s0;UDhG8||8F<p&wR;;K!N;vDW85WbnGix3%Vf#aH~;YgB6)lY=E*(<k=N_v zNbVAqE(w$35SGVWwTos=%S{osJlE&?mZ)5IsXp$iC(H&eSx47J1MoJiPW<^hUOJRM z4ZqkWTnAh^k3|rm=|_B0<B8{s?zur+>F;lTcfD?rWhf-xB@)7ngfsB8M8a*d)*qdE zW?uRMr~@T>1COgXne2};{al5Got(UvzPyg0a#`NgZjG8jU?dfujF|3;3fSpAoR#p5 z-CMk^kaGT8nV~*|CyyXXssG&wvq9#J#>DLp!X+y(*p9bdto#=t|9XE@^{y(Mx2u}2 zP5!{U=QUtNH#4#Vnl#+=zBc$7_R90O+W9FMvMYycM4!QPeS&(CVl8>*Kx+Aipo(v$ zqqWZ6p_YFYtA`L{bRmXsZ*MS;$ssSZN|A3!^*tW6Rbce=x8$-D@(Qqw^m$<7wvK87 zXK*gsy$6QYUn1&MSXM*&nS@Z7!^RsWn*9-EdMn{nw6R11Lqb=f>Q^aoRn^Yl*3=<0 zC+9vz3v0;B^Oi;mlc7o!oK>S;t*gH9QKBG7`7@HAKUVVyIuFTi2V!}JzIbHS)Ya8_ z^rmPIzJjmd;egYh378v%fwmBk%Y=(3d?lki+U>(F#9}Ih$6Ql{?4>eJ5~t$k=A>L0 z7+z#l?!mI<pJTNOLqrid51-tq7Gq6UjcDzl!^UNj&&^cQXr_D&huHsahzIJRqkDvC zk=;}8n-EqGNscXy^woA#R0{3W4TxT-k5d`Fy4%q7KVAyumXM@~OW%zw(MPhfc>n4u zd(Yd^4INK3rR6<x%!DEz!3Zbp2E|OxN(AUkQxIG?!Mfq)fh7ZiaDL*`hLZpwXx{pz z_2xf!#xXT4qUew5Q4%7L5Ax=-1sMUDw9bwD?hP(g^{|(EHlH|zG?nPl?(?pFN$+PL zJ2^Y|panH<0RZ8pdQd><X5Z0sJD2d7?yvR0d?7NGEkYD?<67)f3%UW)XDOSd+Gmrr z_6~dN(}BCI^$|NHm$rOIU6GXPJ0dGQrA)4|xdP8tyrB2)0fEr>_qjyWOjgVBP-^(S zlyyhT=762?{m#xrZ>8Ju{Y#96s<1+v4;O^{Wv>4Is<K7eRrTAPsf~#V^wU5PULCE~ zMomo4_o}OJt9#-%t^>5K8m3M82P|*t92GvsAZkDXqnXwpwP&lGxA!+%S_eoAU@2vw zgJFiI;?DVg4ikO&@XD1tq<HYafpK5nr5le?eHxCMV;f9IUe@|m6MsBE*^{0w88IX@ zV5XRCpV7=@8p|x~Qf^#MB#Y@Z2|OFpVAGSb>?37h)}>YVnNC8=I~VUPU%7KLxvVMZ zDAn3nNPVSQ;X)5Wl^>H@m59$TYnn1rln`G>v4|ckSp`?i<9u|-i>#UXZ$&_>w^K(c zYOo|rK!{JTJ6XI2hkK`K2MzGAi^*rd<4kF)8i``gxb-}j-zwsmNqK|g1r#AiIfpD& zlx<|X*ppt(!ERB0o5;b<kcBU*@p&|AQghnr#Oe6M`mgfOMQ(b(X)@Fxc5xXuD=F)K zXMbKC-<f%KKMl8i|K)Fncx|;mXY7i}TtRSIvt$F}GW4(0E~HC56G<9;i7T@Io#1%f zGl+?NdfgH4H``8m$aq=hlXs+PB2JA>iM6q`NHv}O!%cr0Uaqp`u=b#t-CZN-@V<(A zSO+BtHkwCJJV61`i^m^d@Zw<-Bi)l^&uBxn`&pmj_I`a`*4?8q&S{++j?pUBP&s<k zuffX_dYI&>Hp(KP{_r1a?XTbmIC#b-vkl1Op3dR)@wB&NzBuv2YJn4ygoO3?Wqk9= z=xQ<3ks9>wG~}@Tjd-v>^hVf?)BMh42^3h&tC4*mAX<NTST^wxT4<P15p%_Z!9WaB z#uK4QX2SNGT2ygVnPgMaJ2#9nEq4a8ghob2exclQip1V5>>d|a8pz}cxOhW{$5L5o z<C>lhGn{wj=3`6kahJ5Nwl{<_mj+PD#4Napp_sEvl7ocIxJ8uJ^5u{T=C~SIB{HNn zK+Rn1VsE>Mm&^W5tVM6WdrymnnKjt;y6|)s`Z2b^x%&NurQxC}Kt$h$kr~O)o{OrG zwH4vfJMHe2bv8{O3=Cod*1<=K9Eo~!KPJgVzFTt?i|V8sQRhEVAaPijh+YT==EHWc zvwahH%{nBOx$EXrsaJGG6)zZb8xHC0t~t*qz5o1kh3Xc<#*B=L6urepb^0FKzWD~% zI7pDWG8qi2qX^5n%5ixJLsL_;;oo7md@cs6-CyQrMKitCD==65LU4<F!@zP;wrApW z^E9Zh5L~^SSz20JTuj68)ouECq`moQCC(48o1KK%q}tv3r$U!N=L2ns>%O23nGx1M zcFQU(rir}})Nneq^8~LjNa1d+9ZfnaWJs}phW9RzFu`3{lW=e|LWvVMxVcui0pbPe ze$wd*KLY!wgN4}f)!D^}|IMhLzv4Zc(!kcMm!lK8D!0wUknt?Ft_Rtt83CNFU!4Z4 z$LWb15M$pk<8!R<Ec?z2L6Z)*wGR{=0Ek$n?J8Yshf1PmZA*p|CrU?T3c*Vm4yZA7 zqSH}^`G!iq>$c4|DEe^fbV|(781Q1{Ro_2~OxpVq8NB10!3MEtM_{9ks49@$0O+vr zjFUEE>8i4-_j0MA#>Z>0>%r6YUTtBCf^JzFue4G8U(fYA-V@q|)Y1LRg&cU7WK-Jv zfGudB+>ueOe#q9VTWzm8CBT16!`VGQrRqaB7H|ZIAk=HNfyD|#7v0K>Z{6}1^P}2) zUa$DX&Ck=Ij8HobWN=ix-QJo4L2JF`dQTLav3^byXzn`3com^<MkGchX`<1~?g`Lk zbMdeI++~j;$PYSbnqxVnlQpeDh$wp!CKig+W3dp#&6f0ABrVAT7o(U=Ryuw%$Q!C1 zT|-7gg4Y2Fh!$$qDz#oC$Q?5lv%_$)+!}jH+SUE=wC`3~RPc+CD!T0F6Z~TG47<x; z!WR}+WxIUtZa^<fhTH_E=>5jZ5HwRg3fH?9rE~Z`3|u%*KhDb7DQ+_LG!^NZ5Lx6x zRtEC2YUz*#zL$6im1!N3Y**2M3ytcB`{EqfI{C8umpMG!>IXQk!D+eh-Q+1~$IIpu zMcQywu5g0b+!8WU(v~P@`9@+^STn~mKUWIlm1B8Tmd)Fbbsr%*%U!oG6QUHXh{?#R z-H_WuvdmG0|70;zSr56EgZ}~QIhn)z7ZE<ULTOVr7x>sTb#0W<1&`&0l^L;0e9WRl z6rqNQ@o~v{#mYt2&*V+G68uvucix*{IYZG(&}-<??m?};aP~|iiN|tqXy_Z^`JetT zRIVW<=Mc&U^tQD;su0dLl#uj|eU_4lb8c7oe4`1i6wcd9HvQuU;Sv2Q)&3cTg)Sz& zk{nzvu7k;j+=}*G9UelvC2knrucx7JGop&o76f0k@ra5Y)Foh3n;qrOH7WmmQA$FF z^Ugk)E955M9DN~rs-m*FdgvcNZ^3_JOtKwRWy!Rf$5%55Xn0O#LuMMw5`0wAg^j$7 zFxvQZB>`|pU8c(=hBOFS|DlLG>2bK^o|mvvy>0e+C>R-93_+jd`_atGri5idPolu5 zWCj?WN|wV9xJ~;^s4U}2ug5E@1ClYD=8%?gk5`fEev*<CejG`+Py4g$7d1Tm<w-#t z@BH4c;22Vx=iTEV;xD`I7h-TaqrV@yX4LYs=J@4^F6_HujVD3p6|=IpL|&4}1^WqH zf(vNxAP2q81(VQ|e@&9Yo!m&1^0+L`wPO~!UzeDRTOcF<z3}?lMq1^XHevq<L5>En literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/rar.png b/src/_h5ai/client/icons/96/rar.png new file mode 100644 index 0000000000000000000000000000000000000000..0d0faa58544223fa7bfe4c60b78e0f53b8a472ad GIT binary patch literal 3058 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 CihX1N literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/rb.png b/src/_h5ai/client/icons/96/rb.png new file mode 100644 index 0000000000000000000000000000000000000000..9fcc9953a90f0ef9b828c2af32579e719a769252 GIT binary patch literal 4253 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/readme.png b/src/_h5ai/client/icons/96/readme.png new file mode 100644 index 0000000000000000000000000000000000000000..82ff8f9a2a61754b11af1b4aaf093d03b0dd9369 GIT binary patch literal 2541 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/rpm.png b/src/_h5ai/client/icons/96/rpm.png new file mode 100644 index 0000000000000000000000000000000000000000..a5bf2f14db741547fdad85e1a31787851004e785 GIT binary patch literal 2885 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 Q@aMN_XH6kKu%xB^4+S3DO#lD@ literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/rss.png b/src/_h5ai/client/icons/96/rss.png new file mode 100644 index 0000000000000000000000000000000000000000..6720f0845c11779ab8121e9ec4b5f763fd3d71dc GIT binary patch literal 2837 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 U%JYBy`|bh;*Nt^5v@vo2189*eTmS$7 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/rtf.png b/src/_h5ai/client/icons/96/rtf.png new file mode 100644 index 0000000000000000000000000000000000000000..1500792495a9171e21e05c761a8d4a2d8130f3ba GIT binary patch literal 3781 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 S@3a1YY1Daas8OnJ7xI55Q$~vb literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/script.png b/src/_h5ai/client/icons/96/script.png new file mode 100644 index 0000000000000000000000000000000000000000..b53f0a6af86f5d7ed0acae90b8d057b5b4bb967a GIT binary patch literal 3437 zcmcha`8O19`^RUouVddCGYqrui+$fJk`j_;EG28QOJziwqVh<o$Wkdqws?|th$x?w zWQ`CNhG8sO5?{~v`3Jr~eXn!w_x(QSx~_BG=RU9dhx@9li-WX;x�Kkalvkb=%un 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/source.png b/src/_h5ai/client/icons/96/source.png new file mode 100644 index 0000000000000000000000000000000000000000..b779bfb14841b1a074d84054ad288a1d68bb57d1 GIT binary patch literal 3434 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 YJ@8@HiH+&{|CSr0Yvu-Jdd_eD2k2MyX8-^I literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/sql.png b/src/_h5ai/client/icons/96/sql.png new file mode 100644 index 0000000000000000000000000000000000000000..e897b24206efd4941c8d595a32533a755ebb633a GIT binary patch literal 3218 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 Sn)-j2sJhw)S_K-m*#7`(R>BMb literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/svg.png b/src/_h5ai/client/icons/96/svg.png new file mode 100644 index 0000000000000000000000000000000000000000..0a615600d4877b92b285883473bc7dc3690dcca2 GIT binary patch literal 2889 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 Q{2dcb49yM7^^q_B2gLk`(*OVf literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/tar.png b/src/_h5ai/client/icons/96/tar.png new file mode 100644 index 0000000000000000000000000000000000000000..e8f8587752eb39cde41af4ed2befbf04a66f7732 GIT binary patch literal 3051 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 RbNrQ}80eU27i&6({0A@)fI<KO literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/tex-bib.png b/src/_h5ai/client/icons/96/tex-bib.png new file mode 100644 index 0000000000000000000000000000000000000000..22ca5e7b23db5069f92b44151e8254c4eb86f731 GIT binary patch literal 3200 zcmb`JX*`r&AIGoD7-H;_B}7z&J3_W>F*Ia|EO%~8+4m(<h#^b16o$%_rHP^t3L#_P zL-w%`Lt|$wW6N{hpXW_)o_Ejn`CR8Z=luWI|D5yt{$89o6SO`nvj8&y0IaC%x~9<A z{@?cm3~C4UV*d@$yJ#C}1Hk8G#Niz{0Kfo~8@G@)Ha3=)mb|>YiHV6$PEN|o$~-(g z!otG2xw+on-lC$Sk&%(b#l==uR$X0PBO@dA_4P0qY-VQ0+S-~*rJ9+U<>lq=?CfM` zXBQO}?eFhvXlT5D{~lVdy}cc3zkK;JF)@L|;i{{vTUuIrdU~MwoSdB6+S-kc4I+^U z<^1^!4-Z#WRW&s=L6d`ngV54YPFY!5e}6v|8X6iJA0LNipqhPseVv`11OfpB!QS3p zD8I0<@Xu0E9}b6)jg3JaEEb!RlJaM?prGK-VQg$HG#nirjf#qjkB^_4n)+|T&!0b` zZD24MDEji{%coDD{`uGcr4Q-$zv|%ec<4~ipFf8-56PmZrxzL;ibNu9ZEY(mDoRUB zZ{EBKiD_hH<ml+=@9!TM7YE^}tgOt+%7T=En3|iL2L=Y#)YQCq@xsT)2U-i_2pz4w zyxhRR0FnhF5*!>H6chvz?C$P{K*z+yI6FIQYHAu98V(E$<mcx@3aF~8LLx&tWM*bU zvO_j#XlQ^CxVgDOSdER1b#-->l$4T_lUrL`O-)T9**!cw?CtH<)zw2nLT=x_t)QTw zt*uQallArWA(Wn;o)E;z$w|l$&CSh+hldb!i0u9Q_uJaqAp6bE&NenSLLea5)z#I_ z&CO+GWK2&_L*9ctKq8Um=jRs}7bz6V!otF@U%w#lEiElUb+)#)<mKfdcWrNPZ*Fcv z=7fy8wzjsnx3{~yyS~1@va&*>(UzB&S65d_{MJ*D`tbp#XtS=K&yxc+(fIkHrg2IR zb)r_L$!Jl*fvjdk6S<bOSvfl&N+Qk8Vo8I~ahA4<LFAcP4f4!9X?te}Dm*twD&7hq z+q*uNMV;Dp%F4O>ARvtFXG*VG7_nRQo<>sJ-ubMD!}DvYGpGo9>N6SXm>7tj6cgt< ze}+?to0UzH1No#@%A5xQ0`eg@PXNFPEJ|1Vmh0pSkuiXK0c7<3wmT{ImU6>2^{awV zVtF3wv(f1j;^=I+fvb~lB0-J~eRYm45!JvF@>s4>RQN&L1JX)x+vc<ABpJg~DQKlo z<0(`hr_Ji-#B1@aC{Nvcq}n<1@tdiMM@vCd6m(Fjf`fIM{47l5u88&r;zjFQ9Z?)2 zme|*v$FJ9Z8@>sZ*ATPDO2N}!s!-TNXA3;{c8;bx+HaxhI;5M2SL-f%oEJ86lswY% z&LbJx#W-DN;IgxHoZkn`(ZomG+)9q!O@qaG<oCKFqH2#Oc%6jLFmv0Xde9sI`TX|& zC0(%6xE3V|6wpTI)+U~*TZRjsF6P2~if0TL;F;ELwgB5gy(fCYj=nCxq_uuqxU31B zWegLxu^)7}30mw$Y?&t?Ey|3-BDT~RrGwXC$-3Na26hJv`jctuO2135s4x8hHBWZn z(t_eEb%Lu8dCKcL_+6K9T)uMK!;Sfo_(-s2+|;-Bn`-g&AoH#F{-2RDW7L8|#BG+3 z_bw8Wc<6vvnZ%ucs{Bn51n)|T@4ZZ&9f|++(u6mco26<?=(gUJ^xmB!B7DuphQiZ) zW9csa-~yR_K&;Iy>tjVE(&Z9p0`flo#2W3D-QPkFb3Ir>&W21+3SQ#%VpsK)fHf~L zBy@rHLkVHi6wRYaxXw~R`Ci7#d8xY!uZlp~7(UKS^J0F=5D}H3fF8OdN3>=KWZmm) zt}#($Utd*m{K_AQ*LS7v%o@ki;Z|=|j7FwNcRov30%WtL8%xB!RT&mhE+ty`Sgx!a z$V&{;+{foAld~}T&R!Dj4%qq5{WMA?+8p$yI>=Qz2MI0uMaTHPC<H2Xdr9eE{07jz zsRx`ahu2*n2PCU0XGrn+KD=($`mpN}_q6!)PA}kON+_0hEby~&tHHbqlViSkJmBFm zU_W4lNkF27MBiruywR_AEFymdD}Rg~uP$!UGsxc?nvIhj4HH4pe@wb>mzm99lHT}G znKyW)K1NXEA380@A5|kWh&|Z*Va0RnunQ~&ns4>h4_~FqHI%uYcsqSDT7Ws|^+iF} zc4Y$<^>q;*n6HpSocuZG2N?WAYE}-0QApVX`8o%1X;<rIx}?@?Hr}0|RJREzyWSCb zN=dee><}o=J-AF7tMDbX;O#b%_~ymw24I_22M#C*=tY&Y2|ePsjXv-^WRtI~f@4Uz zh+>Ldu{`|<A9Lm3DI4ST512AhnhXRiSjdqYR=MVB>yjKd=VBz#sWv@ltEk4eAOoVr zF{xrGPYz5N{kgqtiFoVI>hhI_z9^TU6w_>VcX9Q8y6|=SSR}22xk1YNA(Jr1Mf8jk znJjDVRR-RpX0H3Ifm)eKto-$}`{AI5g7;+Euw?>qhtT;cDw|9v5r1Zo7}%wq5C}h- zHPQ;XjWbc6ewUVHtj8v+D!&-B4Zk2Q7*6ONf-z9#WF-1im0*|Pm@Hjp!f8Wn^oDOb zHFk#Xio&U6HZigb@at@)WQ5{#m~HFcUr`Z=?xho<Hg2RQ#U!}A;uhVCZ6Y(n5G`Ur z(Ku{MNYIqt)i2=`m}d9IbM2ayQZ)ZITgyuG)3wu|?@CYpE<Lp@sP|4s`S|PkKrR|m z9AH?}u(A_luXJN^kW_N_QX59gdJp8PzzL$bhe}$zRfmU`1%|IMz==Cg3N9wWS1Wks zS<^vZHY%EJrphKe|Lt3co(Kb)`&qoza`Szhbm^TmtuI*~4C-X72lhwYoPZ@Q=vxdi zWgftcp5A5Sz?HDE|NLvDrQQIuefC)=Y}d42+iU&B&<w7!c}5I4?D4+*l7V<BtIAa; z+Vtno@J~Hwi_8@66u8k(^VRRg`ck!u&d`zq0$x4#xw77+kyIwQ!U|YKCcE7NTp5sT z5la>gOH1@U_#+_TE7#o&3c%8*Fy|9nfqmK_l+jJk4amlCrnFEwrk{Kll6ki-ydj`{ z5bUSxrCGy{75*S|VZ`2^iqHn~$EF4bq?{L4Qx8j0fo3a#qA?Q|m687bs<IFHETV_i zPBKz5D{k(Q<lqLznvzk*CUtR;&*5lfq__7O_?tC}e_5A<pt8Tnnbw<}h!xziM2IfO zsE+t}ek}5~QubbTAsuQFsqE^~;5w+*1+diVM!INmJ{hckrWbOM!~C6i>P1BNs$sP` zu3o+;9|g2iPsAJQ5Egh^`j|oP`eA=Q?O+u;r7uECn}dnPygE1Tb9P8bmeB631w5zw z-Xlb#I43>LaYISHn##S9Fv&w$WV7LGp}2*>K`9@0`}J@0Y-+1mrtH7<WkM6LaN_tF z8h0%tmA0a;0!F{~1*Y!>`@BX!VA^)zky)=tlv{mni_k2>=d-v=gERh3F@62>#bF|1 zUX1~O^Cy1xjNqsmc!{Wt7#E=Us?nKH-v;xI5)1YAi#p37!l|+41sGcRZ!Y|xGn|^$ z+Dy@Z3ySOWX2S^Q12;?GB`(jrF|zOpJ_ZoEY*z(rra!<9{~m3;dN6RnOuK#()3b;1 z${akM-evE2ChLgCu<g7Net&)AsIk-O6yN;hg`xcT<1({%;^(^$Ii$s%5Q3h~7gD&) znu-Om@gp*wcQw9UyBcyXNM~cCWjCU2w?5&x<dU8=`_*&??@uIi-`&=9uQ>B3cIn=o zXq)O^MK6rQ=gYFPG>_Lp!w_Y`+l!-R;f!UWd*f9I-oJ42E|WD6rJ@K}m3#Jm<5is* zR2k=<n4~?8YYThSg{h-<<L2=%u3qk6*APolf`Q|?PVx?`d&xJdE;!GZBK;O|^v6N_ z7o&rR((%oR-!f*Wq|wC7hM!D~eqYq)$r8xq%cw!-iMO6>$!jUZ*A-rGv%up&97~xE zxJkw@M?JHPk*IKXnrll-{P?M(q|U1yEBRAy3Jmkhy=z|?E%fiD6@^6W7G1NC{11e7 B|Fr-B literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/tex.png b/src/_h5ai/client/icons/96/tex.png new file mode 100644 index 0000000000000000000000000000000000000000..3347e9d7a12043462a58212d705711b4e7aac3ef GIT binary patch literal 4730 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/text.png b/src/_h5ai/client/icons/96/text.png new file mode 100644 index 0000000000000000000000000000000000000000..e0b6abce54a26d04a90e0c00fcf96699bc237b5c GIT binary patch literal 3902 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/theme.png b/src/_h5ai/client/icons/96/theme.png new file mode 100644 index 0000000000000000000000000000000000000000..dd0d6386442cc1d3848efe7a7f4f4ceb827f8cc5 GIT binary patch literal 3707 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/tiff.png b/src/_h5ai/client/icons/96/tiff.png new file mode 100644 index 0000000000000000000000000000000000000000..a1474df7697acd891e5b8085878954e6f4c32651 GIT binary patch literal 3392 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/torrent.png b/src/_h5ai/client/icons/96/torrent.png new file mode 100644 index 0000000000000000000000000000000000000000..134b233845b43aa366b4f291f08f1f035d6b7fcc GIT binary patch literal 3496 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 Q*58i>rlF@^qh=NQ9|!w-<p2Nx literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/unknown.png b/src/_h5ai/client/icons/96/unknown.png new file mode 100644 index 0000000000000000000000000000000000000000..2accf9347d0b351d3da6c51aaa68e3bec0aa8018 GIT binary patch literal 2614 zcmeHJ{X5g^AOCE|Mr0l%Vl3fXgoF~!(^yPn6o)+4@zldaMT!yg&~ef!iKwBHB0Z-w zY-$}sVV>H^HqVTiW+p~weY?Kr{1e~%y6*S;b-nJ_5AW;sy081Xb8+78N(!45002<J zc)0pXd)SW+labawboP$}NR$)S2>_m6*&qp*1pqJx=jG>yL?V-ulc`iH7!0njucy&y zQstK~UqB#GVq&5cOG#<{xum=lh(w~Xv9bSg|MvFwb{GsM5D0!!BoavqzJC3xsHpg_ z=)Y)aXy_kCDv;upm6d;(|AU_n%*@O*H8s6||NiaUw{$vP8cjz>M@vh~)YO#J>dDE; z*4EbE-rniy>At?c{{H??pFRx?46s<NwY4=SliAtXIXF1@`SWLKY77QreSKYOdrwc# z@bGX~R~MVj?(Xj9a5y|3Z+v{5%jHf?Oh{uL9UUDR8JV4(l}IG>^YeT@e_>%kn(5r! zoKPr~hPAr7y12L~y#q^2OJcEjd3pKUw{Oz;f-!Y?>D;-AzTWuPALmPF=JS{9K9|lO zs;ytyE#?MnvfXKSq}-glHw=B2t$*GtCE?c_#F(i5i;D!eNXyJKjwUBIXnJf5!G#|M zXUK02J(qmY`IIXPa|yaJ?RbP-;xSL`h3J!UPN{~z=@9LtJ^Rt8T@>7XyzRFf&__7v z>KPart1BZ_RZP{C;5pkH{S`Gfg8+;+Is^cqG8k7Uzv$sP)?{c;Gyo+8PY$QdH==AR za)L+*KBn291~PPh+C{;44NjuT?paou&M`e@+hT-8N4_3)z}$u?G@cWuyqmoC2ivw& zco##)CavllbJN0xh~-;t*UpswaXTmi2kb$6;?aR|rM@@1k6KR9P?&`FiLw-NWPICt zqrL5G>mm;n#)V131_VEkaS3$E1;(t4Y6CBa+iiKx(Ry_j8<?<BSu5z-p~yt*$K_A^ z0?p7HEdpYTb~g7>Rq=k5QO_F#zbFDGHMUXa_l<jgx0-riJh9>ojF|^r&By*3;ugl- zeq$WWIm4^C7oa<%0eO|^!;1r~_XoXExB@FKfXr>x<UTs&7&nnl$&Nqvovs`L*~oSS zu9X<QLCAP>;-?P7mgTXi^De*dQgBkL3A*xVb>U`(ra;7la26_&*6&@N6CYbeeuSHZ z4^APk=*5AiVi#*nWUUG5=%s_vN|5v>3r%v(Rr94kJuPgA{Fdm>f&?0C^<Lbv3*s*F zLAvneZg*K!91uWXsBYv9avr?nZhjIp$RaIf)4=X=v7MJu*SDIcmK8qg;Cm~kKC?%Y z?d(~k=<x{Q964uerC}E?C?OXLuTq&h#f#+aU(Gm~^TbC1wD*E$y&rzi!Uk9wEIV%W z<sAtwUzA@8gZqQ-<`*YtM`k+Y6Kb;0!s3-$v*B429&-Dz%yMWwiu#VJ0%~VYYh*dr z={-S?R|7+XY6c!Q1qOCWbpDvt(EGB$7x)efb1IuKN6yQcePaw7=mI=BO+Mu(X&=h| zQ0;ObX&Wqt1nU@cv^92hfRGH$?_;37CVfh$FAFz7x<-K=eaRHl6Nnkr(J{>gKURed zjv{<$wvQkrZ6sdQ<Ta4@TbY2aZzPOvgA{~k<a)Gv8x8I5$kstc2mI#w&7!&Q`H}F` zim3C%@K2tP&GJArGmuN0yS%kP;$;aYX6iA7=5RiDC1!xEbw}d36Pnk#&s`=qoqyEa zxolSZ!(w)A1Xbp+7@3|O<AE?tQGloJh0=+&g84S$i)>Xw8H`jMt^EYeq^E)hqN6Ao z^fL}b2E_66>T)K5$;B@KH~%`@lxo4MzO831_`3Aw`G1HEKz9opRa$0O5h_>eaBlV3 zZ@_bKX#G0sN<^|K{Sven$bys}ve)soba19B+7WPomsmg3#c3N2ZhoMRSaR^VLqb)i zr)hO*ZB%=4=38a{tpcDN^o0K4<)cUKS=@)GL5LSbG8m<B^+DP6{JV;hH4AtttgFAf zTg6Sx18WTW1Gy#T<d3mijt)1KtXYMn$U+;!iI+!Z8f<QTth5ER30FbGFjVWN2(V%X zT*a=26AsiRb^6N9!dOi6P>&6;IGN_9rL$CXI2x4Svg=xloR;(nsB`TS#Ul0ylaR_| zr~JSW)f|h1RX%1!99TyvOXh$05D%8<Bwe6=Fg~No5w6|@kUO-V5&elP@~$+aoD)$L ziKCW@xINvX;?CW-{bK5Rzx`d=%yA+$SOyjg^itUSQ|I_;-=pkvHQ$a%ynryscYSt> zljD-l-d&jx^E<xa83Wwfg|t)i?9^IND-mBLB0f0{&_lmOpjBL8JaEuHJ*qyUv>E9f z5I#jww>PzMmd~3zUexm34Jdi`>ZFd207Z-oroE~S#Oex0+Wd{kaIK6P{w6g<pNJeP z7u@*O8H&qK*Hu}iU{o(k{v;kKP=jF7zGWXQ@WtYAUzBD1R~tg=pa@+9!vZ(-iBRTZ zN=2rhsqC!W40GFkLTDjmNEPIRga76vN+MC_?!=eiUMGkoTp`U2OWfpFiC|LI2nTpm zS;A1|0wpKCbydU0TkxwZ8nkJ{x(hJJyMW?yj=x9%G`Lk6(2)8W{fG>f=vgYx7%Zx0 zQX0}xv<*s^@DX|Xdy{alx7)wGEz?nWZ&vdS{8sZENDOVbSNN+sApaCSdswE0w#`G} zRiihfoOGoc6p-_gb1r@57_AJPS{a<Phmb}KB0$05la5v<uLP7ltOdbiXa~&FkP+hB zZJ>2?8Vys+?cIe3hHdU2(!gei#J5xqZ@C%bSIBBzn`il5-RHJck-`vpy}Lf9peClq zMV<*+cv0Q)mw_E$t8yrL=EX=uEK(dE6UTVO$kd(@sy9WT2JDwdCN8n%1m`<FOfDAo zwp|QZ>5q7bk%afpzS+<MQ9rlSEQ~wEe4gr2V;Q)tT%%+*A)zz&2scS|t9IPnUuA8{ z9*TfF_SoJi#!uWU+$7PeQommH(bKX>``#%dtzBN2<Zp#_BiGv`4O{UfmGzLUX2vf^ zqSj5lEeHHx|Du?8illzu*7_yg6st6y)jI#GAs5g2lm_Zc5w--VM_2s#TVUM0T^~D# GW&90}aA1Z2 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/vcal.png b/src/_h5ai/client/icons/96/vcal.png new file mode 100644 index 0000000000000000000000000000000000000000..0b6ed0632d3cf236e1cd0d9cf4698ade4cb93ebe GIT binary patch literal 4229 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/video.png b/src/_h5ai/client/icons/96/video.png new file mode 100644 index 0000000000000000000000000000000000000000..79d44630d8d56087fd32d245c4fbf68ae3e15b09 GIT binary patch literal 4364 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 VE-Io3_4?1xfVr`iQKJD8_a7)aoxT77 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/wav.png b/src/_h5ai/client/icons/96/wav.png new file mode 100644 index 0000000000000000000000000000000000000000..60a843dc9563299d9f79e84307ce5559afc0bb93 GIT binary patch literal 4800 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/wma.png b/src/_h5ai/client/icons/96/wma.png new file mode 100644 index 0000000000000000000000000000000000000000..c2e17911ee03a7a2d4e653dc8f282deb4e55ac33 GIT binary patch literal 3563 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 D;Mk;y literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/xcf.png b/src/_h5ai/client/icons/96/xcf.png new file mode 100644 index 0000000000000000000000000000000000000000..41335b872c937820e12d182ccbc92fda73ce344d GIT binary patch literal 3680 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/xhtml.png b/src/_h5ai/client/icons/96/xhtml.png new file mode 100644 index 0000000000000000000000000000000000000000..27cc3369db103717a04731d11d258d4a6d13b75a GIT binary patch literal 4693 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/xml.png b/src/_h5ai/client/icons/96/xml.png new file mode 100644 index 0000000000000000000000000000000000000000..b566c54e3b8b347ddcf046525516cd653d364633 GIT binary patch literal 4004 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 literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/icons/96/zip.png b/src/_h5ai/client/icons/96/zip.png new file mode 100644 index 0000000000000000000000000000000000000000..ff94ba80c2d1ea5341d3d52bd4218f27c975eaa1 GIT binary patch literal 3061 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 E1HSQ`A^-pY literal 0 HcmV?d00001 diff --git a/src/_h5ai/client/js/inc/core/resource.js b/src/_h5ai/client/js/inc/core/resource.js index db012abe..c448465a 100644 --- a/src/_h5ai/client/js/inc/core/resource.js +++ b/src/_h5ai/client/js/inc/core/resource.js @@ -8,7 +8,7 @@ modulejs.define('core/resource', ['core/settings'], function (settings) { icon = function (id, big) { - return settings.h5aiAbsHref + 'client/icons/' + (big ? '48x48' : '16x16') + '/' + id + '.png'; + return settings.h5aiAbsHref + 'client/icons/96/' + id + '.png'; }; return { diff --git a/src/_h5ai/client/js/inc/ext/select.js b/src/_h5ai/client/js/inc/ext/select.js index 003e2da9..f07e3906 100644 --- a/src/_h5ai/client/js/inc/ext/select.js +++ b/src/_h5ai/client/js/inc/ext/select.js @@ -114,7 +114,7 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/resource', 'core initItem = function (item) { if (item.$view) { - item.$view + item.$view.find('a') .on('mouseenter', function () { $('#selector').remove(); @@ -142,7 +142,7 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/resource', 'core onLocationChanged = function (item) { - _.each(item.content, initItem); + // _.each(item.content, initItem); publish(); }, @@ -150,7 +150,7 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/resource', 'core var selectionChanged = false; - _.each(added, initItem); + // _.each(added, initItem); _.each(removed, function (item) { if (item.$view && item.$view.hasClass('selected')) { diff --git a/src/_h5ai/client/js/inc/ext/thumbnails.js b/src/_h5ai/client/js/inc/ext/thumbnails.js index fd4849f7..c5c65547 100644 --- a/src/_h5ai/client/js/inc/ext/thumbnails.js +++ b/src/_h5ai/client/js/inc/ext/thumbnails.js @@ -9,17 +9,17 @@ modulejs.define('ext/thumbnails', ['_', 'core/settings', 'core/event', 'core/ser delay: 1000 }, allsettings.thumbnails), - requestThumbSmall = function (type, href, callback) { + requestThumbSquare = function (type, href, callback) { - server.request({action: 'getThumbHref', type: type, href: href, mode: 'square', width: 16, height: 16}, function (json) { + server.request({action: 'getThumbHref', type: type, href: href, mode: 'square', width: 96, height: 96}, function (json) { callback(json && json.code === 0 ? json.absHref : null); }); }, - requestThumbBig = function (type, href, callback) { + requestThumbRational = function (type, href, callback) { - server.request({action: 'getThumbHref', type: type, href: href, mode: 'rational', width: 100, height: 48}, function (json) { + server.request({action: 'getThumbHref', type: type, href: href, mode: 'rational', width: 96 * 2, height: 96}, function (json) { callback(json && json.code === 0 ? json.absHref : null); }); @@ -38,25 +38,25 @@ modulejs.define('ext/thumbnails', ['_', 'core/settings', 'core/event', 'core/ser } if (type) { - if (item.thumbSmall) { - item.$view.find('.icon.small img').addClass('thumb').attr('src', item.thumbSmall); + if (item.thumbSquare) { + item.$view.find('.icon.square img').addClass('thumb').attr('src', item.thumbSquare); } else { - requestThumbSmall(type, item.absHref, function (src) { + requestThumbSquare(type, item.absHref, function (src) { if (src && item.$view) { - item.thumbSmall = src; - item.$view.find('.icon.small img').addClass('thumb').attr('src', src); + item.thumbSquare = src; + item.$view.find('.icon.square img').addClass('thumb').attr('src', src); } }); } - if (item.thumbBig) { - item.$view.find('.icon.big img').addClass('thumb').attr('src', item.thumbBig); + if (item.thumbRational) { + item.$view.find('.icon.rational img').addClass('thumb').attr('src', item.thumbRational); } else { - requestThumbBig(type, item.absHref, function (src) { + requestThumbRational(type, item.absHref, function (src) { if (src && item.$view) { - item.thumbBig = src; - item.$view.find('.icon.big img').addClass('thumb').attr('src', src); + item.thumbRational = src; + item.$view.find('.icon.rational img').addClass('thumb').attr('src', src); } }); } diff --git a/src/_h5ai/client/js/inc/view/items.js b/src/_h5ai/client/js/inc/view/items.js index 1629f434..a5dd4430 100644 --- a/src/_h5ai/client/js/inc/view/items.js +++ b/src/_h5ai/client/js/inc/view/items.js @@ -9,8 +9,8 @@ modulejs.define('view/items', ['_', '$', 'core/settings', 'core/resource', 'core itemTemplate = '<li class="item">' + '<a>' + - '<span class="icon small"><img/></span>' + - '<span class="icon big"><img/></span>' + + '<span class="icon square"><img/></span>' + + '<span class="icon rational"><img/></span>' + '<span class="label"/>' + '<span class="date"/>' + '<span class="size"/>' + @@ -39,8 +39,8 @@ modulejs.define('view/items', ['_', '$', 'core/settings', 'core/resource', 'core var $html = $(itemTemplate), $a = $html.find('a'), - $imgSmall = $html.find('.icon.small img'), - $imgBig = $html.find('.icon.big img'), + $imgSquare = $html.find('.icon.square img'), + $imgRational = $html.find('.icon.rational img'), $label = $html.find('.label'), $date = $html.find('.date'), $size = $html.find('.size'); @@ -51,8 +51,8 @@ modulejs.define('view/items', ['_', '$', 'core/settings', 'core/resource', 'core location.setLink($a, item); - $imgSmall.attr('src', resource.icon(item.type)).attr('alt', item.type); - $imgBig.attr('src', resource.icon(item.type, true)).attr('alt', item.type); + $imgSquare.attr('src', resource.icon(item.type)).attr('alt', item.type); + $imgRational.attr('src', resource.icon(item.type)).attr('alt', item.type); $label.text(item.label); $date.data('time', item.time).text(format.formatDate(item.time)); $size.data('bytes', item.size).text(format.formatSize(item.size)); @@ -60,8 +60,8 @@ modulejs.define('view/items', ['_', '$', 'core/settings', 'core/resource', 'core if (item.isFolder() && _.isNumber(item.status)) { if (item.status === 200) { $html.addClass('page'); - $imgSmall.attr('src', resource.icon('folder-page')); - $imgBig.attr('src', resource.icon('folder-page', true)); + $imgSquare.attr('src', resource.icon('folder-page')); + $imgRational.attr('src', resource.icon('folder-page')); } else { $html.addClass('error'); $label.append($(hintTemplate).text(' ' + item.status + ' ')); @@ -69,8 +69,8 @@ modulejs.define('view/items', ['_', '$', 'core/settings', 'core/resource', 'core } if (item.isCurrentParentFolder()) { - $imgSmall.attr('src', resource.icon('folder-parent')); - $imgBig.attr('src', resource.icon('folder-parent', true)); + $imgSquare.attr('src', resource.icon('folder-parent')); + $imgRational.attr('src', resource.icon('folder-parent')); if (!settings.setParentFolderLabels) { $label.addClass('l10n-parentDirectory'); } From 21528dc50bcf638f62b94c35ab38d73a89c7e731 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Tue, 27 Aug 2013 21:27:31 +0200 Subject: [PATCH 52/83] Updates thumbs. --- src/_h5ai/client/css/inc/view-details.less | 2 +- src/_h5ai/client/css/inc/view-list.less | 2 +- src/_h5ai/client/css/inc/view.less | 3 ++- src/_h5ai/client/js/inc/ext/thumbnails.js | 26 +++++++++++----------- src/_h5ai/conf/options.json | 4 +++- 5 files changed, 20 insertions(+), 17 deletions(-) diff --git a/src/_h5ai/client/css/inc/view-details.less b/src/_h5ai/client/css/inc/view-details.less index e438d0eb..ae81517b 100644 --- a/src/_h5ai/client/css/inc/view-details.less +++ b/src/_h5ai/client/css/inc/view-details.less @@ -49,7 +49,7 @@ } .label { - margin: 0 230px 0 (@small-icon-size + 8px); + margin: 0 230px 0 (@small-icon-size + 16px); } .date { diff --git a/src/_h5ai/client/css/inc/view-list.less b/src/_h5ai/client/css/inc/view-list.less index e73a46b2..4c2cd539 100644 --- a/src/_h5ai/client/css/inc/view-list.less +++ b/src/_h5ai/client/css/inc/view-list.less @@ -49,7 +49,7 @@ } .label { - margin: 0 230px 0 (@big-icon-size + 8px); + margin: 0 230px 0 (@big-icon-size + 16px); } .date { diff --git a/src/_h5ai/client/css/inc/view.less b/src/_h5ai/client/css/inc/view.less index 88ed55f8..44ee1f15 100644 --- a/src/_h5ai/client/css/inc/view.less +++ b/src/_h5ai/client/css/inc/view.less @@ -56,9 +56,10 @@ @item-background-col-sel: rgba(0,0,0,0.02); @item-border-col-sel: @col-border-strong; -@small-icon-size: 32px; // @small-icon-size: 16px; +@small-icon-size: 32px; @big-icon-size: 48px; +// @big-icon-size: 56px; // @big-icon-size: 64px; // @big-icon-size: 80px; // @big-icon-size: 96px; diff --git a/src/_h5ai/client/js/inc/ext/thumbnails.js b/src/_h5ai/client/js/inc/ext/thumbnails.js index c5c65547..22379989 100644 --- a/src/_h5ai/client/js/inc/ext/thumbnails.js +++ b/src/_h5ai/client/js/inc/ext/thumbnails.js @@ -6,20 +6,20 @@ modulejs.define('ext/thumbnails', ['_', 'core/settings', 'core/event', 'core/ser img: ['bmp', 'gif', 'ico', 'image', 'jpg', 'png', 'tiff'], mov: ['video'], doc: ['pdf', 'ps'], - delay: 1000 + delay: 1000, + size: 96 }, allsettings.thumbnails), - requestThumbSquare = function (type, href, callback) { + requestThumb = function (type, href, mode, ratio, callback) { - server.request({action: 'getThumbHref', type: type, href: href, mode: 'square', width: 96, height: 96}, function (json) { - - callback(json && json.code === 0 ? json.absHref : null); - }); - }, - - requestThumbRational = function (type, href, callback) { - - server.request({action: 'getThumbHref', type: type, href: href, mode: 'rational', width: 96 * 2, height: 96}, function (json) { + server.request({ + action: 'getThumbHref', + type: type, + href: href, + mode: mode, + width: settings.size * ratio, + height: settings.size + }, function (json) { callback(json && json.code === 0 ? json.absHref : null); }); @@ -41,7 +41,7 @@ modulejs.define('ext/thumbnails', ['_', 'core/settings', 'core/event', 'core/ser if (item.thumbSquare) { item.$view.find('.icon.square img').addClass('thumb').attr('src', item.thumbSquare); } else { - requestThumbSquare(type, item.absHref, function (src) { + requestThumb(type, item.absHref, 'square', 1, function (src) { if (src && item.$view) { item.thumbSquare = src; @@ -52,7 +52,7 @@ modulejs.define('ext/thumbnails', ['_', 'core/settings', 'core/event', 'core/ser if (item.thumbRational) { item.$view.find('.icon.rational img').addClass('thumb').attr('src', item.thumbRational); } else { - requestThumbRational(type, item.absHref, function (src) { + requestThumb(type, item.absHref, 'rational', 2, function (src) { if (src && item.$view) { item.thumbRational = src; diff --git a/src/_h5ai/conf/options.json b/src/_h5ai/conf/options.json index 9eb71d72..ba881e15 100644 --- a/src/_h5ai/conf/options.json +++ b/src/_h5ai/conf/options.json @@ -301,13 +301,15 @@ Options - mov: array of types - doc: array of types - delay: delay in milliseconds after "dom-ready" before thumb-requesting starts + - size: number, size in pixel of the generated thumbnails */ "thumbnails": { "enabled": true, "img": ["bmp", "gif", "ico", "image", "jpg", "png"], "mov": ["video"], "doc": ["pdf", "ps"], - "delay": 1 + "delay": 1, + "size": 96 }, /* From 7b3daeb17ba1dac15f0a1f61c021857e9ce83653 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Tue, 27 Aug 2013 21:29:29 +0200 Subject: [PATCH 53/83] Updates thumbs. --- src/_h5ai/client/js/inc/ext/thumbnails.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_h5ai/client/js/inc/ext/thumbnails.js b/src/_h5ai/client/js/inc/ext/thumbnails.js index 22379989..d1a2f9ad 100644 --- a/src/_h5ai/client/js/inc/ext/thumbnails.js +++ b/src/_h5ai/client/js/inc/ext/thumbnails.js @@ -3,7 +3,7 @@ modulejs.define('ext/thumbnails', ['_', 'core/settings', 'core/event', 'core/ser var settings = _.extend({ enabled: false, - img: ['bmp', 'gif', 'ico', 'image', 'jpg', 'png', 'tiff'], + img: ['bmp', 'gif', 'ico', 'image', 'jpg', 'png'], mov: ['video'], doc: ['pdf', 'ps'], delay: 1000, From 4d4e41a637e08f923bd5b1180e42e7c9f84281b7 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Tue, 27 Aug 2013 22:38:44 +0200 Subject: [PATCH 54/83] Refactors. --- src/_h5ai/client/js/inc/core/resource.js | 6 +++--- src/_h5ai/client/js/inc/ext/delete.js | 2 +- src/_h5ai/client/js/inc/ext/thumbnails.js | 6 +++--- src/_h5ai/client/js/inc/ext/tree.js | 2 -- src/_h5ai/client/js/inc/view/items.js | 12 ++++-------- 5 files changed, 11 insertions(+), 17 deletions(-) diff --git a/src/_h5ai/client/js/inc/core/resource.js b/src/_h5ai/client/js/inc/core/resource.js index c448465a..152dc6de 100644 --- a/src/_h5ai/client/js/inc/core/resource.js +++ b/src/_h5ai/client/js/inc/core/resource.js @@ -1,12 +1,12 @@ modulejs.define('core/resource', ['core/settings'], function (settings) { - var image = function (id, customExt) { + var image = function (id) { - return settings.h5aiAbsHref + 'client/images/' + id + (customExt ? '' : '.svg'); + return settings.h5aiAbsHref + 'client/images/' + id + '.svg'; }, - icon = function (id, big) { + icon = function (id) { return settings.h5aiAbsHref + 'client/icons/96/' + id + '.png'; }; diff --git a/src/_h5ai/client/js/inc/ext/delete.js b/src/_h5ai/client/js/inc/ext/delete.js index afacfa7b..5158e2ed 100644 --- a/src/_h5ai/client/js/inc/ext/delete.js +++ b/src/_h5ai/client/js/inc/ext/delete.js @@ -37,7 +37,7 @@ modulejs.define('ext/delete', ['_', '$', 'core/settings', 'core/event', 'core/re requestDeletion = function (hrefsStr) { $delete.addClass('current'); - $img.attr('src', resource.image('loading.gif', true)); + $img.attr('src', resource.image('loading')); server.request({action: 'delete', hrefs: hrefsStr}, handleResponse); }, diff --git a/src/_h5ai/client/js/inc/ext/thumbnails.js b/src/_h5ai/client/js/inc/ext/thumbnails.js index d1a2f9ad..28d4d566 100644 --- a/src/_h5ai/client/js/inc/ext/thumbnails.js +++ b/src/_h5ai/client/js/inc/ext/thumbnails.js @@ -29,11 +29,11 @@ modulejs.define('ext/thumbnails', ['_', 'core/settings', 'core/event', 'core/ser var type = null; - if (_.indexOf(settings.img, item.type) >= 0) { + if (_.contains(settings.img, item.type)) { type = 'img'; - } else if (_.indexOf(settings.mov, item.type) >= 0) { + } else if (_.contains(settings.mov, item.type)) { type = 'mov'; - } else if (_.indexOf(settings.doc, item.type) >= 0) { + } else if (_.contains(settings.doc, item.type)) { type = 'doc'; } diff --git a/src/_h5ai/client/js/inc/ext/tree.js b/src/_h5ai/client/js/inc/ext/tree.js index e07645b3..5ab8c6bc 100644 --- a/src/_h5ai/client/js/inc/ext/tree.js +++ b/src/_h5ai/client/js/inc/ext/tree.js @@ -34,7 +34,6 @@ modulejs.define('ext/tree', ['_', '$', 'core/settings', 'core/resource', 'core/e .data('status', item.status); location.setLink($a, item); - // $img.attr('src', resource.icon(item.type)); $img.attr('src', resource.image('folder')); $label.text(item.label); @@ -95,7 +94,6 @@ modulejs.define('ext/tree', ['_', '$', 'core/settings', 'core/resource', 'core/e // reflect folder status if (_.isNumber(item.status)) { if (item.status === 200) { - // $img.attr('src', resource.icon('folder-page')); $img.attr('src', resource.image('folder-page')); } else { $html.addClass('error'); diff --git a/src/_h5ai/client/js/inc/view/items.js b/src/_h5ai/client/js/inc/view/items.js index a5dd4430..80400724 100644 --- a/src/_h5ai/client/js/inc/view/items.js +++ b/src/_h5ai/client/js/inc/view/items.js @@ -39,8 +39,7 @@ modulejs.define('view/items', ['_', '$', 'core/settings', 'core/resource', 'core var $html = $(itemTemplate), $a = $html.find('a'), - $imgSquare = $html.find('.icon.square img'), - $imgRational = $html.find('.icon.rational img'), + $iconImg = $html.find('.icon img'), $label = $html.find('.label'), $date = $html.find('.date'), $size = $html.find('.size'); @@ -51,8 +50,7 @@ modulejs.define('view/items', ['_', '$', 'core/settings', 'core/resource', 'core location.setLink($a, item); - $imgSquare.attr('src', resource.icon(item.type)).attr('alt', item.type); - $imgRational.attr('src', resource.icon(item.type)).attr('alt', item.type); + $iconImg.attr('src', resource.icon(item.type)).attr('alt', item.type); $label.text(item.label); $date.data('time', item.time).text(format.formatDate(item.time)); $size.data('bytes', item.size).text(format.formatSize(item.size)); @@ -60,8 +58,7 @@ modulejs.define('view/items', ['_', '$', 'core/settings', 'core/resource', 'core if (item.isFolder() && _.isNumber(item.status)) { if (item.status === 200) { $html.addClass('page'); - $imgSquare.attr('src', resource.icon('folder-page')); - $imgRational.attr('src', resource.icon('folder-page')); + $iconImg.attr('src', resource.icon('folder-page')); } else { $html.addClass('error'); $label.append($(hintTemplate).text(' ' + item.status + ' ')); @@ -69,8 +66,7 @@ modulejs.define('view/items', ['_', '$', 'core/settings', 'core/resource', 'core } if (item.isCurrentParentFolder()) { - $imgSquare.attr('src', resource.icon('folder-parent')); - $imgRational.attr('src', resource.icon('folder-parent')); + $iconImg.attr('src', resource.icon('folder-parent')); if (!settings.setParentFolderLabels) { $label.addClass('l10n-parentDirectory'); } From c2f5c46451545eafb6e58eae835e866a96bd340f Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Wed, 28 Aug 2013 00:36:05 +0200 Subject: [PATCH 55/83] Remove gif. --- src/_h5ai/client/images/loading.gif | Bin 847 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 src/_h5ai/client/images/loading.gif diff --git a/src/_h5ai/client/images/loading.gif b/src/_h5ai/client/images/loading.gif deleted file mode 100644 index 1b3280ef98d672fb8c8e80e41dd92fe664d6e0e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 847 zcmZ?wbhEHb6krfw_`<;O|NnnuW8<Gcf5ykh&zUpF+}u1cF!0{JdpmdTba8Q+IB{Z2 zOUuibFW0PDbMfNEoSdBU@^S`JfZ~5{Ki808XU70nBRvCVMxb8Be^Smxsfi`2DGKG8 zB^e5dS&0=n`H3ldnR#jX42nNlIJtnTbU?O%9Lc~MprFu~k~wdwfk=*`R!hRFwKGJH zO_VZi_`r6vqanJN#fB-fHDIDZD`RKtqP{hnIt`vtKNhJZec0tOX@W(|3R5-NicZsP z1sh?JPnEJq-}gIVvm`@7q09YJPllG%(FZG5IH<VR9yoCD+EFHso+%Bf86rYF2M;JX z2y*!xX!wvE=-$lawB_lx0Mi)?HmgiSQv$bXzfjt@IDLx23bA#I7WO-43!GPWWZ<?5 zFgIYg;bdtr;EQCl(BkE6S60Mkc>>Uf%AY4_+!FE7;yMx_!l}EY-SE9}BbSx)X+!TV z9xY7|**x@SsNCFG$-p77@8TKO8(G|Xjo~g1claV178!VOinZz(^f_JO>dO}JdiItl z)ZVn5nWaW0n>R+2pQjtEr9qHjZBUrPWGHgfVMVjE9NQZ4W7*wJa~Kt!o+Q{aG;U|w zH$mC8$)d_BFrp!OckZGxZXu<G3NH^WPH0SM;|+CNCRubxl5c6jYt7GT{~NGc1M(X% z_EtFXxEcx^Iw_GGD{*|Mgh$VXwi_Dk0$nU7ObX96bR?F!DJFU_L<G;^Xv{TTvXwE( z#bXN_!>XN$NjhA8stpCkV#!C8H>m&MeWS!~VrCworWK*zpwZK-g4NP^sHGl2k8vz> zFkv{f>6oLE=R}STvlb?B*yXjddK##7Nc75in{VRv&|yE=saw*l)zs`NB_goou<pf# q6&(o&n0^Wvc5+B;nC{Te=WL$Ap>N2N#u}s9-J_<+U=2#1U;qF@#0NM4 From aa725f11f80f6430fa3c40c7dff3761efa8e6dbf Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Wed, 28 Aug 2013 17:12:30 +0200 Subject: [PATCH 56/83] Adds variable icon sizes. --- src/_h5ai/client/css/inc/view-details.less | 58 ++++++ src/_h5ai/client/css/inc/view-grid.less | 61 ++++++- src/_h5ai/client/css/inc/view-icons.less | 56 ++++++ src/_h5ai/client/css/inc/view-list.less | 67 ------- src/_h5ai/client/css/inc/view.less | 37 ---- src/_h5ai/client/css/styles.less | 1 - src/_h5ai/client/images/size.svg | 194 +++++++++++++++++++++ src/_h5ai/client/js/inc/view/viewmode.js | 101 +++++++++-- src/_h5ai/conf/options.json | 7 +- 9 files changed, 458 insertions(+), 124 deletions(-) delete mode 100644 src/_h5ai/client/css/inc/view-list.less create mode 100644 src/_h5ai/client/images/size.svg diff --git a/src/_h5ai/client/css/inc/view-details.less b/src/_h5ai/client/css/inc/view-details.less index ae81517b..2348cf3c 100644 --- a/src/_h5ai/client/css/inc/view-details.less +++ b/src/_h5ai/client/css/inc/view-details.less @@ -65,3 +65,61 @@ } } } + + +.view-details-sized(@size) { + + li { + + &.item { + + a, a:active, a:visited { + height: @size + 6px; + } + + .label, .date, .size { + padding: ((@size - 16px)/2) 8px; + } + } + + .icon.square { + width: @size; + + img { + width: @size; + height: @size; + } + } + + .label { + margin: 0 230px 0 (@size + 16px); + } + } +} + + +#view.view-details { + &.size-16 { + .view-details-sized(16px) + } + + &.size-24 { + .view-details-sized(24px) + } + + &.size-32 { + .view-details-sized(32px) + } + + &.size-48 { + .view-details-sized(48px) + } + + &.size-64 { + .view-details-sized(64px) + } + + &.size-96 { + .view-details-sized(96px) + } +} diff --git a/src/_h5ai/client/css/inc/view-grid.less b/src/_h5ai/client/css/inc/view-grid.less index 1dca6349..225edad0 100644 --- a/src/_h5ai/client/css/inc/view-grid.less +++ b/src/_h5ai/client/css/inc/view-grid.less @@ -9,7 +9,7 @@ a, a:active, a:visited { float: left; margin: 2px; - width: 218px; + width: @small-icon-size + 186px; height: @small-icon-size + 6px; border: 1px solid rgba(0,0,0,0); @@ -50,3 +50,62 @@ } } } + + +.view-grid-sized(@size) { + + li { + + &.item { + + a, a:active, a:visited { + width: @size + 186px; + height: @size + 6px; + } + + .label, .date, .size { + padding: ((@size - 16px)/2) 8px; + } + } + + .icon.square { + width: @size; + + img { + width: @size; + height: @size; + } + } + + .label { + margin: 0 0 0 (@size + 8px); + } + } +} + + +#view.view-grid { + &.size-16 { + .view-grid-sized(16px) + } + + &.size-24 { + .view-grid-sized(24px) + } + + &.size-32 { + .view-grid-sized(32px) + } + + &.size-48 { + .view-grid-sized(48px) + } + + &.size-64 { + .view-grid-sized(64px) + } + + &.size-96 { + .view-grid-sized(96px) + } +} diff --git a/src/_h5ai/client/css/inc/view-icons.less b/src/_h5ai/client/css/inc/view-icons.less index 14148613..a5f48cea 100644 --- a/src/_h5ai/client/css/inc/view-icons.less +++ b/src/_h5ai/client/css/inc/view-icons.less @@ -25,6 +25,11 @@ display: block; height: @big-icon-size; margin-bottom: 6px; + + img { + max-width: @big-icon-size * 2; + max-height: @big-icon-size; + } } .label { @@ -44,3 +49,54 @@ height: 120px; } } + + +.view-icons-sized(@size) { + + li { + + &.item { + + a, a:active, a:visited { + width: @size * 2; + height: @size + 72px; + } + } + + .icon.rational { + height: @size; + + img { + max-width: @size * 2; + max-height: @size; + } + } + } +} + + +#view.view-icons { + &.size-16 { + .view-icons-sized(16px) + } + + &.size-24 { + .view-icons-sized(24px) + } + + &.size-32 { + .view-icons-sized(32px) + } + + &.size-48 { + .view-icons-sized(48px) + } + + &.size-64 { + .view-icons-sized(64px) + } + + &.size-96 { + .view-icons-sized(96px) + } +} diff --git a/src/_h5ai/client/css/inc/view-list.less b/src/_h5ai/client/css/inc/view-list.less deleted file mode 100644 index 4c2cd539..00000000 --- a/src/_h5ai/client/css/inc/view-list.less +++ /dev/null @@ -1,67 +0,0 @@ - -#view.view-list { - - li { - - &.header { - display: list-item; - } - - &.item { - - a, a:active, a:visited { - border-top: 1px solid @item-border-col-sep; - border-bottom: 1px solid @item-border-col-sep; - height: @big-icon-size + 6px; - - &:hover, &.hover { - border-color: @item-border-col-hover; - } - } - - // needs to be here, to not conflict with header fields - .icon { - padding: 8px; - } - .label, .date, .size { - padding: ((@big-icon-size - 16px)/2) 8px; - } - } - - &.item + .item { - - a, a:active, a:visited { - border-top: none; - } - } - - .icon.square { - display: inline-block; - position: absolute; - left: 0; - top: -5px; - width: @big-icon-size; - - img { - width: @big-icon-size; - height: @big-icon-size; - } - } - - .label { - margin: 0 230px 0 (@big-icon-size + 16px); - } - - .date { - position: absolute; - right: 100px; - top: 0; - } - - .size { - position: absolute; - right: 0; - top: 0; - } - } -} diff --git a/src/_h5ai/client/css/inc/view.less b/src/_h5ai/client/css/inc/view.less index 44ee1f15..c26bd130 100644 --- a/src/_h5ai/client/css/inc/view.less +++ b/src/_h5ai/client/css/inc/view.less @@ -56,13 +56,8 @@ @item-background-col-sel: rgba(0,0,0,0.02); @item-border-col-sel: @col-border-strong; -// @small-icon-size: 16px; @small-icon-size: 32px; @big-icon-size: 48px; -// @big-icon-size: 56px; -// @big-icon-size: 64px; -// @big-icon-size: 80px; -// @big-icon-size: 96px; #view { @@ -178,38 +173,6 @@ box-shadow: 0 0 0 1px #ddd; } } - - &.small { - - img { - max-width: @small-icon-size * 2; - max-height: @small-icon-size; - } - } - - &.big { - - img { - max-width: @big-icon-size * 2; - max-height: @big-icon-size; - } - } - - &.square { - - img { - max-width: @big-icon-size; - max-height: @big-icon-size; - } - } - - &.rational { - - img { - max-width: @big-icon-size * 2; - max-height: @big-icon-size; - } - } } .label { diff --git a/src/_h5ai/client/css/styles.less b/src/_h5ai/client/css/styles.less index 057d3dc3..b2fba482 100644 --- a/src/_h5ai/client/css/styles.less +++ b/src/_h5ai/client/css/styles.less @@ -20,7 +20,6 @@ @import "inc/view"; @import "inc/view-details"; @import "inc/view-icons"; -@import "inc/view-list"; @import "inc/view-grid"; // @import "inc/context-menu"; @import "inc/dropbox"; diff --git a/src/_h5ai/client/images/size.svg b/src/_h5ai/client/images/size.svg new file mode 100644 index 00000000..4d2b849b --- /dev/null +++ b/src/_h5ai/client/images/size.svg @@ -0,0 +1,194 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + sodipodi:docname="size.svg" + height="16" + id="svg7384" + inkscape:version="0.48.4 r9939" + version="1.1" + width="16"> + <metadata + id="metadata90"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title>Gnome Symbolic Icon Theme</dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <sodipodi:namedview + inkscape:bbox-nodes="true" + inkscape:bbox-paths="true" + bordercolor="#666666" + borderopacity="1" + inkscape:current-layer="layer12" + inkscape:cx="0.26014369" + inkscape:cy="4.4087936" + gridtolerance="10" + inkscape:guide-bbox="true" + guidetolerance="10" + id="namedview88" + inkscape:object-nodes="false" + inkscape:object-paths="false" + objecttolerance="10" + pagecolor="#3a3b39" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + showborder="true" + showgrid="false" + showguides="true" + inkscape:snap-bbox="true" + inkscape:snap-bbox-midpoints="false" + inkscape:snap-global="true" + inkscape:snap-grids="true" + inkscape:snap-nodes="false" + inkscape:snap-others="false" + inkscape:snap-to-guides="true" + inkscape:window-height="1056" + inkscape:window-maximized="1" + inkscape:window-width="1871" + inkscape:window-x="49" + inkscape:window-y="24" + inkscape:zoom="22.627417" + borderlayer="true"> + <inkscape:grid + empspacing="2" + enabled="true" + id="grid4866" + originx="200px" + originy="550px" + snapvisiblegridlinesonly="true" + spacingx="1px" + spacingy="1px" + type="xygrid" + visible="true" /> + </sodipodi:namedview> + <title + id="title9167">Gnome Symbolic Icon Theme</title> + <defs + id="defs7386" /> + <g + inkscape:groupmode="layer" + id="layer9" + inkscape:label="status" + style="display:inline" + transform="translate(-41.0002,-767)" /> + <g + inkscape:groupmode="layer" + id="layer10" + inkscape:label="devices" + transform="translate(-41.0002,-767)" /> + <g + inkscape:groupmode="layer" + id="layer11" + inkscape:label="apps" + transform="translate(-41.0002,-767)" /> + <g + inkscape:groupmode="layer" + id="layer13" + inkscape:label="places" + transform="translate(-41.0002,-767)" /> + <g + inkscape:groupmode="layer" + id="layer14" + inkscape:label="mimetypes" + transform="translate(-41.0002,-767)" /> + <g + inkscape:groupmode="layer" + id="layer15" + inkscape:label="emblems" + style="display:inline" + transform="translate(-41.0002,-767)" /> + <g + inkscape:groupmode="layer" + id="g71291" + inkscape:label="emotes" + style="display:inline" + transform="translate(-41.0002,-767)" /> + <g + inkscape:groupmode="layer" + id="g4953" + inkscape:label="categories" + style="display:inline" + transform="translate(-41.0002,-767)" /> + <g + inkscape:groupmode="layer" + id="layer12" + inkscape:label="actions" + style="display:inline" + transform="translate(-41.0002,-767)"> + <path + inkscape:connector-curvature="0" + d="M 42.78125,776 A 1.0001,1.0001 0 0 0 42,777 l 0,4 a 1.0001,1.0001 0 0 0 1,1 l 4,0 a 1.0001,1.0001 0 1 0 0,-2 l -3,0 0,-3 a 1.0001,1.0001 0 0 0 -1.21875,-1 z" + id="path12113" + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#555555;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new;font-family:Sans;-inkscape-font-specification:Sans" /> + <path + inkscape:connector-curvature="0" + d="m 47.375,775.5 a 1.0001,1.0001 0 0 0 -0.59375,0.28125 l -4.5,4.5 a 1.016466,1.016466 0 1 0 1.4375,1.4375 l 4.5,-4.5 A 1.0001,1.0001 0 0 0 47.375,775.5 z" + id="path12147" + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#555555;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new;font-family:Sans;-inkscape-font-specification:Sans" /> + <rect + height="1" + id="rect12919" + style="color:#000000;fill:#555555;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new" + width="1" + x="42.000198" + y="781" /> + <path + inkscape:connector-curvature="0" + d="M 50.90625,768 A 1.001098,1.001098 0 1 0 51,770 l 3,0 0,3 a 1.0001,1.0001 0 1 0 2,0 l 0,-4 a 1.0001,1.0001 0 0 0 -1,-1 l -4,0 a 1.0001,1.0001 0 0 0 -0.09375,0 z" + id="path12111" + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#555555;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new;font-family:Sans;-inkscape-font-specification:Sans" /> + <rect + height="1" + id="rect12923" + style="color:#000000;fill:#555555;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new" + width="1" + x="55.000198" + y="768" /> + <path + inkscape:connector-curvature="0" + d="m 54.78125,768 a 1.0001,1.0001 0 0 0 -0.5,0.28125 l -4.5,4.46875 a 1.016466,1.016466 0 1 0 1.4375,1.4375 l 4.5,-4.46875 A 1.0001,1.0001 0 0 0 54.78125,768 z" + id="path12925" + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#555555;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new;font-family:Sans;-inkscape-font-specification:Sans" /> + <rect + height="1" + id="rect4479-2" + style="color:#000000;fill:#555555;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" + width="1" + x="42.000198" + y="776" /> + <rect + height="1" + id="rect4479-2-9" + style="color:#000000;fill:#555555;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" + width="1" + x="47.000198" + y="781" /> + <rect + height="1" + id="rect4479-2-9-9-0-8" + style="color:#000000;fill:#555555;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" + width="1" + x="55.000198" + y="773" /> + <rect + height="1" + id="rect4479-2-9-9-0-8-1" + style="color:#000000;fill:#555555;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" + width="1" + x="50.000198" + y="768" /> + </g> +</svg> diff --git a/src/_h5ai/client/js/inc/view/viewmode.js b/src/_h5ai/client/js/inc/view/viewmode.js index 045f8bf9..35048745 100644 --- a/src/_h5ai/client/js/inc/view/viewmode.js +++ b/src/_h5ai/client/js/inc/view/viewmode.js @@ -1,10 +1,12 @@ modulejs.define('view/viewmode', ['_', '$', 'core/settings', 'core/resource', 'core/store', 'core/event'], function (_, $, allsettings, resource, store, event) { - var modes = ['details', 'list', 'grid', 'icons'], + var modes = ['details', 'grid', 'icons'], + sizes = [16, 24, 32, 48, 64, 96], settings = _.extend({}, { - modes: modes + modes: modes, + sizes: sizes }, allsettings.view), storekey = 'viewmode', @@ -16,6 +18,32 @@ modulejs.define('view/viewmode', ['_', '$', 'core/settings', 'core/resource', 'c '</a>' + '</li>', + sizeTemplate = '<li id="view-[SIZE]" class="view">' + + '<a href="#">' + + '<img src="' + resource.image('size') + '" alt="size"/>' + + '<span>[SIZE]</span>' + + '</a>' + + '</li>', + + // sizeSelectorTemplate = '<li id="sizeSelector" class="view">' + + // '<span class="element">' + + // '<img src="' + resource.image('size') + '" alt="size"/>' + + // '<span class="size-current">small</span>' + + // '</span>' + + // '<span class="sizeOptions hidden"><ul/></span>' + + // '</li>', + // sizeOptionTemplate = '<li class="sizeOption"/>', + + // viewSelectorTemplate = '<li id="viewSelector" class="view">' + + // '<span class="element">' + + // '<img src="' + resource.image('view-details') + '" alt="view-details"/>' + + // '<span class="view-current">details</span>' + + // '</span>' + + // '<span class="viewOptions hidden"><ul/></span>' + + // '</li>', + // viewOptionTemplate = '<li class="viewOption"/>', + + adjustSpacing = function () { var contentWidth = $('#content').width(), @@ -25,20 +53,40 @@ modulejs.define('view/viewmode', ['_', '$', 'core/settings', 'core/resource', 'c $view.width(Math.floor(contentWidth / itemWidth) * itemWidth); }, - update = function (viewmode) { + updateMode = function (mode) { var $view = $('#view'); - viewmode = _.indexOf(settings.modes, viewmode) >= 0 ? viewmode : settings.modes[0]; - store.put(storekey, viewmode); + mode = _.contains(settings.modes, mode) ? mode : settings.modes[0]; + store.put(storekey, mode); - _.each(modes, function (mode) { - if (mode === viewmode) { - $('#view-' + mode).addClass('current'); - $view.addClass('view-' + mode).show(); + _.each(modes, function (m) { + if (m === mode) { + $('#view-' + m).addClass('current'); + $view.addClass('view-' + m).show(); } else { - $('#view-' + mode).removeClass('current'); - $view.removeClass('view-' + mode); + $('#view-' + m).removeClass('current'); + $view.removeClass('view-' + m); + } + }); + + adjustSpacing(); + }, + + updateSize = function (size) { + + var $view = $('#view'); + + size = _.contains(settings.sizes, size) ? size : settings.sizes[0]; + // store.put(storekey, viewmode); + + _.each(sizes, function (s) { + if (s === size) { + $('#view-' + s).addClass('current'); + $view.addClass('size-' + s).show(); + } else { + $('#view-' + s).removeClass('current'); + $view.removeClass('size-' + s); } }); @@ -51,20 +99,41 @@ modulejs.define('view/viewmode', ['_', '$', 'core/settings', 'core/resource', 'c settings.modes = _.intersection(settings.modes, modes); - if (settings.modes.length > 1) { - _.each(modes.reverse(), function (mode) { - if (_.indexOf(settings.modes, mode) >= 0) { + if (settings.modes.length) { + _.each(modes.slice(0).reverse(), function (mode) { + if (_.contains(settings.modes, mode)) { $(template.replace(/\[MODE\]/g, mode)) .appendTo($navbar) .on('click', 'a', function (event) { - update(mode); + updateMode(mode); event.preventDefault(); }); } }); } - update(store.get(storekey)); + + if (settings.sizes.length) { + _.each(sizes.slice(0).reverse(), function (size) { + if (_.contains(settings.sizes, size)) { + $(sizeTemplate.replace(/\[SIZE\]/g, size)) + .appendTo($navbar) + .on('click', 'a', function (event) { + updateSize(size); + event.preventDefault(); + }); + } + }); + } + + // $(sizeSelectorTemplate) + // .appendTo($navbar); + + // $(viewSelectorTemplate) + // .appendTo($navbar); + + updateMode(store.get(storekey)); + updateSize(sizes[0]); event.sub('location.changed', adjustSpacing); $(window).on('resize', adjustSpacing); diff --git a/src/_h5ai/conf/options.json b/src/_h5ai/conf/options.json index ba881e15..e91dbd30 100644 --- a/src/_h5ai/conf/options.json +++ b/src/_h5ai/conf/options.json @@ -23,11 +23,13 @@ Options /* General view options. - - modes: array of "details", "icons", "grid" and/or "list" + - modes: array of "details", "grid" and/or "icons" the first value indicates the default view mode. If only one value is given the view mode is fixed and the selector buttons are hidden. The user selected view mode is also stored local in modern browsers so that it will be persistent. + - sizes: array of numbers + the numbers seen below are the only accepted values, you may only remove some - setParentFolderLabels: set parent folder labels to real folder names - hideParentFolderLinks: hide parent folder links - binaryPrefix: set to true uses 1024B=1KiB when formatting file sizes (see http://en.wikipedia.org/wiki/Binary_prefix) @@ -37,7 +39,8 @@ Options - extInNewWindow: open non-h5ai links in new window/tab */ "view": { - "modes": ["details", "icons", "grid", "list"], + "modes": ["details", "grid", "icons"], + "sizes": [16, 24, 32, 48, 64, 96], "setParentFolderLabels": true, "hideParentFolderLinks": false, "binaryPrefix": false, From 24b4f4ce8a2a6a3254764021432fd7362cd1e24c Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Wed, 28 Aug 2013 23:56:09 +0200 Subject: [PATCH 57/83] Cleans and refactors. --- src/_h5ai/client/js/inc/ext/l10n.js | 2 +- src/_h5ai/client/js/inc/ext/preview.js | 2 +- src/_h5ai/client/js/inc/ext/sort.js | 2 +- src/_h5ai/client/js/inc/view/viewmode.js | 57 +++++------------------- src/_h5ai/conf/options.json | 11 +++-- 5 files changed, 22 insertions(+), 52 deletions(-) diff --git a/src/_h5ai/client/js/inc/ext/l10n.js b/src/_h5ai/client/js/inc/ext/l10n.js index c2abc220..dd9bb961 100644 --- a/src/_h5ai/client/js/inc/ext/l10n.js +++ b/src/_h5ai/client/js/inc/ext/l10n.js @@ -34,7 +34,7 @@ modulejs.define('ext/l10n', ['_', '$', 'core/settings', 'core/langs', 'core/form '</span>', langOptionTemplate = '<li class="langOption"/>', - storekey = 'l10n.lang', + storekey = 'ext/l10n', loaded = { en: _.extend({}, defaultTranslations) diff --git a/src/_h5ai/client/js/inc/ext/preview.js b/src/_h5ai/client/js/inc/ext/preview.js index 6e7d0624..6a1feab5 100644 --- a/src/_h5ai/client/js/inc/ext/preview.js +++ b/src/_h5ai/client/js/inc/ext/preview.js @@ -23,7 +23,7 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor '</div>' + '</div>', - storekey = 'preview.isFullscreen', + storekey = 'ext/preview', currentEntries = [], currentIdx = 0, diff --git a/src/_h5ai/client/js/inc/ext/sort.js b/src/_h5ai/client/js/inc/ext/sort.js index 32443c68..862d8086 100644 --- a/src/_h5ai/client/js/inc/ext/sort.js +++ b/src/_h5ai/client/js/inc/ext/sort.js @@ -9,7 +9,7 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e natural: false }, allsettings.sort), - storekey = 'sort.order', + storekey = 'ext/sort', template = '<img src="' + resource.image('ascending') + '" class="sort ascending" alt="ascending" />' + '<img src="' + resource.image('descending') + '" class="sort descending" alt="descending" />', diff --git a/src/_h5ai/client/js/inc/view/viewmode.js b/src/_h5ai/client/js/inc/view/viewmode.js index 35048745..e0714c17 100644 --- a/src/_h5ai/client/js/inc/view/viewmode.js +++ b/src/_h5ai/client/js/inc/view/viewmode.js @@ -25,25 +25,6 @@ modulejs.define('view/viewmode', ['_', '$', 'core/settings', 'core/resource', 'c '</a>' + '</li>', - // sizeSelectorTemplate = '<li id="sizeSelector" class="view">' + - // '<span class="element">' + - // '<img src="' + resource.image('size') + '" alt="size"/>' + - // '<span class="size-current">small</span>' + - // '</span>' + - // '<span class="sizeOptions hidden"><ul/></span>' + - // '</li>', - // sizeOptionTemplate = '<li class="sizeOption"/>', - - // viewSelectorTemplate = '<li id="viewSelector" class="view">' + - // '<span class="element">' + - // '<img src="' + resource.image('view-details') + '" alt="view-details"/>' + - // '<span class="view-current">details</span>' + - // '</span>' + - // '<span class="viewOptions hidden"><ul/></span>' + - // '</li>', - // viewOptionTemplate = '<li class="viewOption"/>', - - adjustSpacing = function () { var contentWidth = $('#content').width(), @@ -53,12 +34,16 @@ modulejs.define('view/viewmode', ['_', '$', 'core/settings', 'core/resource', 'c $view.width(Math.floor(contentWidth / itemWidth) * itemWidth); }, - updateMode = function (mode) { + update = function (mode, size) { - var $view = $('#view'); + var $view = $('#view'), + stored = store.get(storekey); + mode = mode || stored && stored.mode; + size = size || stored && stored.size; mode = _.contains(settings.modes, mode) ? mode : settings.modes[0]; - store.put(storekey, mode); + size = _.contains(settings.sizes, size) ? size : settings.sizes[0]; + store.put(storekey, {mode: mode, size: size}); _.each(modes, function (m) { if (m === mode) { @@ -70,16 +55,6 @@ modulejs.define('view/viewmode', ['_', '$', 'core/settings', 'core/resource', 'c } }); - adjustSpacing(); - }, - - updateSize = function (size) { - - var $view = $('#view'); - - size = _.contains(settings.sizes, size) ? size : settings.sizes[0]; - // store.put(storekey, viewmode); - _.each(sizes, function (s) { if (s === size) { $('#view-' + s).addClass('current'); @@ -99,41 +74,33 @@ modulejs.define('view/viewmode', ['_', '$', 'core/settings', 'core/resource', 'c settings.modes = _.intersection(settings.modes, modes); - if (settings.modes.length) { + if (settings.modes.length > 1) { _.each(modes.slice(0).reverse(), function (mode) { if (_.contains(settings.modes, mode)) { $(template.replace(/\[MODE\]/g, mode)) .appendTo($navbar) .on('click', 'a', function (event) { - updateMode(mode); + update(mode); event.preventDefault(); }); } }); } - - if (settings.sizes.length) { + if (settings.sizes.length > 1) { _.each(sizes.slice(0).reverse(), function (size) { if (_.contains(settings.sizes, size)) { $(sizeTemplate.replace(/\[SIZE\]/g, size)) .appendTo($navbar) .on('click', 'a', function (event) { - updateSize(size); + update(null, size); event.preventDefault(); }); } }); } - // $(sizeSelectorTemplate) - // .appendTo($navbar); - - // $(viewSelectorTemplate) - // .appendTo($navbar); - - updateMode(store.get(storekey)); - updateSize(sizes[0]); + update(); event.sub('location.changed', adjustSpacing); $(window).on('resize', adjustSpacing); diff --git a/src/_h5ai/conf/options.json b/src/_h5ai/conf/options.json index e91dbd30..3f43a398 100644 --- a/src/_h5ai/conf/options.json +++ b/src/_h5ai/conf/options.json @@ -23,13 +23,16 @@ Options /* General view options. - - modes: array of "details", "grid" and/or "icons" + - modes: array, subset of ["details", "grid", "icons"] + the first value indicates the default view mode. If only one value + is given the view mode is fixed and the selector buttons are hidden. + The user selected view mode is also stored local in modern browsers + so that it will be persistent. + - sizes: array, subset of [16, 24, 32, 48, 64, 96] the first value indicates the default view mode. If only one value is given the view mode is fixed and the selector buttons are hidden. The user selected view mode is also stored local in modern browsers so that it will be persistent. - - sizes: array of numbers - the numbers seen below are the only accepted values, you may only remove some - setParentFolderLabels: set parent folder labels to real folder names - hideParentFolderLinks: hide parent folder links - binaryPrefix: set to true uses 1024B=1KiB when formatting file sizes (see http://en.wikipedia.org/wiki/Binary_prefix) @@ -40,7 +43,7 @@ Options */ "view": { "modes": ["details", "grid", "icons"], - "sizes": [16, 24, 32, 48, 64, 96], + "sizes": [48, 24, 96], "setParentFolderLabels": true, "hideParentFolderLinks": false, "binaryPrefix": false, From e3d19a9175aa204b3091647dc4229d4971b1bd62 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Thu, 29 Aug 2013 03:15:31 +0200 Subject: [PATCH 58/83] Updates. --- src/_h5ai/client/css/inc/view-details.less | 12 ++++++------ src/_h5ai/client/css/inc/view-grid.less | 14 +++++++------- src/_h5ai/client/css/inc/view-icons.less | 11 ++++++----- src/_h5ai/client/css/inc/view.less | 3 +-- src/_h5ai/client/images/view-list.svg | 11 ----------- src/_h5ai/client/js/inc/view/spacing.js | 4 ++-- 6 files changed, 22 insertions(+), 33 deletions(-) delete mode 100644 src/_h5ai/client/images/view-list.svg diff --git a/src/_h5ai/client/css/inc/view-details.less b/src/_h5ai/client/css/inc/view-details.less index 2348cf3c..97dbe45c 100644 --- a/src/_h5ai/client/css/inc/view-details.less +++ b/src/_h5ai/client/css/inc/view-details.less @@ -12,7 +12,7 @@ a, a:active, a:visited { border-top: 1px solid @item-border-col-sep; border-bottom: 1px solid @item-border-col-sep; - height: @small-icon-size + 6px; + height: @icon-size + 6px; &:hover, &.hover { border-color: @item-border-col-hover; @@ -24,7 +24,7 @@ padding: 8px; } .label, .date, .size { - padding: ((@small-icon-size - 16px)/2) 8px; + padding: ((@icon-size - 16px)/2) 8px; } } @@ -40,16 +40,16 @@ position: absolute; left: 0; top: -5px; - width: @small-icon-size; + width: @icon-size; img { - width: @small-icon-size; - height: @small-icon-size; + width: @icon-size; + height: @icon-size; } } .label { - margin: 0 230px 0 (@small-icon-size + 16px); + margin: 0 230px 0 (@icon-size + 16px); } .date { diff --git a/src/_h5ai/client/css/inc/view-grid.less b/src/_h5ai/client/css/inc/view-grid.less index 225edad0..4a67e115 100644 --- a/src/_h5ai/client/css/inc/view-grid.less +++ b/src/_h5ai/client/css/inc/view-grid.less @@ -9,8 +9,8 @@ a, a:active, a:visited { float: left; margin: 2px; - width: @small-icon-size + 186px; - height: @small-icon-size + 6px; + width: @icon-size + 186px; + height: @icon-size + 6px; border: 1px solid rgba(0,0,0,0); &:hover, &.hover { @@ -23,7 +23,7 @@ padding: 8px; } .label, .date, .size { - padding: ((@small-icon-size - 16px)/2) 8px; + padding: ((@icon-size - 16px)/2) 8px; } } @@ -32,17 +32,17 @@ position: absolute; left: 0; top: -2px; - width: @small-icon-size; + width: @icon-size; img { - width: @small-icon-size; - height: @small-icon-size; + width: @icon-size; + height: @icon-size; } } .label { display: block; - margin: 0 0 0 (@small-icon-size + 8px); + margin: 0 0 0 (@icon-size + 8px); } .date, .size { diff --git a/src/_h5ai/client/css/inc/view-icons.less b/src/_h5ai/client/css/inc/view-icons.less index a5f48cea..44b104dd 100644 --- a/src/_h5ai/client/css/inc/view-icons.less +++ b/src/_h5ai/client/css/inc/view-icons.less @@ -11,8 +11,9 @@ float: left; margin: 8px; padding: 8px; - width: @big-icon-size * 2; - height: @big-icon-size + 72px; + min-width: 96px; + width: @icon-size * 2; + height: @icon-size + 72px; border: 1px solid rgba(0,0,0,0); &:hover, &.hover { @@ -23,12 +24,12 @@ .icon.rational { display: block; - height: @big-icon-size; + height: @icon-size; margin-bottom: 6px; img { - max-width: @big-icon-size * 2; - max-height: @big-icon-size; + max-width: @icon-size * 2; + max-height: @icon-size; } } diff --git a/src/_h5ai/client/css/inc/view.less b/src/_h5ai/client/css/inc/view.less index c26bd130..ee71d8ea 100644 --- a/src/_h5ai/client/css/inc/view.less +++ b/src/_h5ai/client/css/inc/view.less @@ -56,8 +56,7 @@ @item-background-col-sel: rgba(0,0,0,0.02); @item-border-col-sel: @col-border-strong; -@small-icon-size: 32px; -@big-icon-size: 48px; +@icon-size: 48px; #view { diff --git a/src/_h5ai/client/images/view-list.svg b/src/_h5ai/client/images/view-list.svg deleted file mode 100644 index 4079bd01..00000000 --- a/src/_h5ai/client/images/view-list.svg +++ /dev/null @@ -1,11 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> - -<svg - xmlns="http://www.w3.org/2000/svg" - version="1.1" - width="16" - height="16" -> - <rect x="3" y="4" width="10" height="3" style="fill:#555555" /> - <rect x="3" y="10" width="10" height="3" style="fill:#555555" /> -</svg> diff --git a/src/_h5ai/client/js/inc/view/spacing.js b/src/_h5ai/client/js/inc/view/spacing.js index 98fd353f..805752ce 100644 --- a/src/_h5ai/client/js/inc/view/spacing.js +++ b/src/_h5ai/client/js/inc/view/spacing.js @@ -4,9 +4,9 @@ modulejs.define('view/spacing', ['_', '$', 'core/settings', 'core/event'], funct var settings = _.extend({ maxWidth: 960, top: 50, - right: "auto", + right: 'auto', bottom: 50, - left: "auto" + left: 'auto' }, allsettings.spacing), adjustSpacing = function () { From aeab3670d03f9c3971277a8973bdac8fcc7efc8f Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Thu, 29 Aug 2013 10:53:34 +0200 Subject: [PATCH 59/83] Updates fallback. --- src/_h5ai/client/css/inc/fallback.less | 9 +++------ src/_h5ai/server/php/inc/App.php | 4 ++-- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/src/_h5ai/client/css/inc/fallback.less b/src/_h5ai/client/css/inc/fallback.less index 9c0c50e0..f73ef3eb 100644 --- a/src/_h5ai/client/css/inc/fallback.less +++ b/src/_h5ai/client/css/inc/fallback.less @@ -54,14 +54,11 @@ } } td:nth-child(1), th:nth-child(1) { - text-align: center; - width: 16px; - color: #ccc; - font-size: 0.9em; + width: 24px; img { - width: 16px; - height: 16px; + width: 24px; + height: 24px; } } td:nth-child(2), th:nth-child(2) { diff --git a/src/_h5ai/server/php/inc/App.php b/src/_h5ai/server/php/inc/App.php index a7c8e2aa..c353f3c9 100644 --- a/src/_h5ai/server/php/inc/App.php +++ b/src/_h5ai/server/php/inc/App.php @@ -209,13 +209,13 @@ class App { $html = "<table>"; $html .= "<tr><th></th><th><span>Name</span></th><th><span>Last modified</span></th><th><span>Size</span></th></tr>"; if ($folder->get_parent($cache)) { - $html .= "<tr><td><img src=\"" . $this->app_abs_href . "client/icons/16x16/folder-parent.png\" alt=\"folder-parent\"/></td><td><a href=\"..\">Parent Directory</a></td><td></td><td></td></tr>"; + $html .= "<tr><td><img src=\"" . $this->app_abs_href . "client/icons/96/folder-parent.png\" alt=\"folder-parent\"/></td><td><a href=\"..\">Parent Directory</a></td><td></td><td></td></tr>"; } foreach ($items as $item) { $type = $item->is_folder ? "folder" : "default"; $html .= "<tr>"; - $html .= "<td><img src=\"" . $this->app_abs_href . "client/icons/16x16/" . $type . ".png\" alt=\"" . $type . "\"/></td>"; + $html .= "<td><img src=\"" . $this->app_abs_href . "client/icons/96/" . $type . ".png\" alt=\"" . $type . "\"/></td>"; $html .= "<td><a href=\"" . $item->abs_href . "\">" . basename($item->abs_path) . "</a></td>"; $html .= "<td>" . date("Y-m-d H:i", $item->date) . "</td>"; $html .= "<td>" . ($item->size !== null ? intval($item->size / 1000) . " KB" : "" ) . "</td>"; From 593c828b6703598f41dca235496f936dcea675e9 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Thu, 29 Aug 2013 23:16:42 +0200 Subject: [PATCH 60/83] Minor changes. --- src/_h5ai/client/css/inc/responsive.less | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/_h5ai/client/css/inc/responsive.less b/src/_h5ai/client/css/inc/responsive.less index 2002a07a..d83d01d2 100644 --- a/src/_h5ai/client/css/inc/responsive.less +++ b/src/_h5ai/client/css/inc/responsive.less @@ -11,9 +11,9 @@ display: none; } } -#view.view-details, #view.view-list { +#view.view-details { .header .label, .item .label { - margin-right: 110px; + margin-right: 80px !important; } .header .date, .item .date { display: none; From 9c6fe572790f01e6e6313fa21dfa16b82f4ac858 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 30 Aug 2013 12:59:39 +0200 Subject: [PATCH 61/83] Removes unused code. --- src/_h5ai/server/php/inc/Thumb.php | 60 ------------------------------ 1 file changed, 60 deletions(-) diff --git a/src/_h5ai/server/php/inc/Thumb.php b/src/_h5ai/server/php/inc/Thumb.php index a98423d0..d227279c 100644 --- a/src/_h5ai/server/php/inc/Thumb.php +++ b/src/_h5ai/server/php/inc/Thumb.php @@ -94,66 +94,6 @@ class Thumb { } - -class Magic { - - private static $GET_SIZE_CMD = "identify -format \"%w %h\" [SOURCE]"; - private static $RESIZE_CMD = "convert -strip -transparent-color \"#ffffff\" -resize [WIDTH]x[HEIGHT] -quality 80 [SOURCE] [TARGET]"; - private static $SQUARE_CMD = "convert -strip -transparent-color \"#ffffff\" -crop [CWIDTH]x[CWIDTH]+[CLEFT]+[CTOP] -resize [WIDTH]x[WIDTH] -quality 80 [SOURCE] [TARGET]"; - - - private static final function img_size($source) { - - $cmd = str_replace("[SOURCE]", escapeshellarg($source), Magic::$GET_SIZE_CMD); - $size = explode(" ", `$cmd`); - $size[0] = intval($size[0]); - $size[1] = intval($size[1]); - return $size; - } - - private static final function rational($source, $target, $width, $height) { - - $cmd = str_replace("[SOURCE]", escapeshellarg($source), Magic::$RESIZE_CMD); - $cmd = str_replace("[TARGET]", escapeshellarg($target), $cmd); - $cmd = str_replace("[WIDTH]", escapeshellarg($width), $cmd); - $cmd = str_replace("[HEIGHT]", escapeshellarg($height), $cmd); - `$cmd`; - } - - private static final function square($source, $target, $width) { - - $size = Magic::img_size($source); - $w = $size[0]; - $h = $size[1]; - - $cwidth = min($w, $h); - $cleft = ($w - $cwidth) / 2; - $ctop = ($h - $cwidth) / 2; - - $cmd = str_replace("[SOURCE]", escapeshellarg($source), Magic::$SQUARE_CMD); - $cmd = str_replace("[TARGET]", escapeshellarg($target), $cmd); - $cmd = str_replace("[CWIDTH]", escapeshellarg($cwidth), $cmd); - $cmd = str_replace("[CLEFT]", escapeshellarg($cleft), $cmd); - $cmd = str_replace("[CTOP]", escapeshellarg($ctop), $cmd); - $cmd = str_replace("[WIDTH]", escapeshellarg($width), $cmd); - `$cmd`; - } - - public static final function thumb($mode, $source, $target, $width, $height = null, $color = null) { - - if ($height === null) { - $height = $width; - } - if ($mode === "square") { - Magic::square($source, $target, $width); - } elseif ($mode === "rational") { - Magic::rational($source, $target, $width, $height); - } - } -} - - - class Image { private $source_file, $source, $width, $height, $type, $dest; From a62d9311e16b9ac5b0f44fbbad6d9ffeb460333a Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 30 Aug 2013 13:36:16 +0200 Subject: [PATCH 62/83] Removes unused code. --- src/_h5ai/server/php/inc/util.php | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/_h5ai/server/php/inc/util.php b/src/_h5ai/server/php/inc/util.php index e952499b..db5294dc 100644 --- a/src/_h5ai/server/php/inc/util.php +++ b/src/_h5ai/server/php/inc/util.php @@ -48,11 +48,6 @@ function use_optional_request_params($keys) { return $values; } -function delete_tempfile($file) { - - @unlink($file); -} - function starts_with($sequence, $head) { return substr($sequence, 0, strlen($head)) === $head; From da297f03f7695ad52aee362f78473cc6c6b4183d Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 30 Aug 2013 17:56:24 +0200 Subject: [PATCH 63/83] Updates select. --- src/_h5ai/client/css/inc/view.less | 17 +++++++++-------- src/_h5ai/client/js/inc/ext/select.js | 8 +++++--- src/_h5ai/server/php/inc/Archive.php | 2 +- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/src/_h5ai/client/css/inc/view.less b/src/_h5ai/client/css/inc/view.less index ee71d8ea..85cde7ba 100644 --- a/src/_h5ai/client/css/inc/view.less +++ b/src/_h5ai/client/css/inc/view.less @@ -11,20 +11,21 @@ #selector { position: absolute; - left: 8px; - top: 8px; - width: 16px; - height: 16px; + left: 0; + top: 0; + margin-top: -3px; + margin-left: -3px; background-color: #fff; border: 1px solid #555; - border-radius: 100px; - opacity: 0.7; + border-radius: 3px; + opacity: 0.6; cursor: pointer; + .transition(all 0.2s ease-in-out); .on-selected, .on-not-selected { display: block; - width: 16px; - height: 16px; + width: 24px; + height: 24px; } &:hover { diff --git a/src/_h5ai/client/js/inc/ext/select.js b/src/_h5ai/client/js/inc/ext/select.js index f07e3906..c979df19 100644 --- a/src/_h5ai/client/js/inc/ext/select.js +++ b/src/_h5ai/client/js/inc/ext/select.js @@ -117,6 +117,8 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/resource', 'core item.$view.find('a') .on('mouseenter', function () { + var $icon = item.$view.find('.icon'); + $('#selector').remove(); $('<div id="selector">' + '<img src="' + resource.image('select') + '" class="on-selected" alt="selected" />' + @@ -126,7 +128,6 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/resource', 'core event.stopImmediatePropagation(); event.preventDefault(); - console.log('icon', event); item.$view.toggleClass('selected'); publish(); @@ -135,6 +136,7 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/resource', 'core }) .on('mouseleave', function () { + item.$view.find('a').removeClass('hover'); $('#selector').remove(); }); } @@ -142,7 +144,7 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/resource', 'core onLocationChanged = function (item) { - // _.each(item.content, initItem); + _.each(item.content, initItem); publish(); }, @@ -150,7 +152,7 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/resource', 'core var selectionChanged = false; - // _.each(added, initItem); + _.each(added, initItem); _.each(removed, function (item) { if (item.$view && item.$view.hasClass('selected')) { diff --git a/src/_h5ai/server/php/inc/Archive.php b/src/_h5ai/server/php/inc/Archive.php index d441884b..92fd30f0 100644 --- a/src/_h5ai/server/php/inc/Archive.php +++ b/src/_h5ai/server/php/inc/Archive.php @@ -113,7 +113,7 @@ class Archive { . str_repeat("\0", 100) // linkname [100] . "ustar\0" // magic [6] . "00" // version [2] - . str_repeat("\0", 80) // uname, gname, defmajor, devminor [32 + 32 + 8 + 8] ?92? + . str_repeat("\0", 80) // uname, gname, defmajor, devminor [32 + 32 + 8 + 8] . str_pad($prefix, 155, "\0") // filename [155] . str_repeat("\0", 12); // fill [12] assert(strlen($header) === 512); From 3d3d5ba883f067f9b4c2bda8940b1aba0bc70c3b Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 30 Aug 2013 19:06:50 +0200 Subject: [PATCH 64/83] Border collapse for list view. --- src/_h5ai/client/css/inc/view-details.less | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_h5ai/client/css/inc/view-details.less b/src/_h5ai/client/css/inc/view-details.less index 97dbe45c..ec2c8694 100644 --- a/src/_h5ai/client/css/inc/view-details.less +++ b/src/_h5ai/client/css/inc/view-details.less @@ -31,7 +31,7 @@ &.item + .item { a, a:active, a:visited { - border-top: none; + margin-top: -1px; } } From f72a09fde05c96b7412767c11c3ebb553b635edf Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 30 Aug 2013 20:06:39 +0200 Subject: [PATCH 65/83] Adds optional checkboxes for selecting item. --- src/_h5ai/client/css/inc/view.less | 33 +++++++++++++++------------ src/_h5ai/client/js/inc/ext/select.js | 11 ++++++--- src/_h5ai/conf/options.json | 8 +++++-- 3 files changed, 32 insertions(+), 20 deletions(-) diff --git a/src/_h5ai/client/css/inc/view.less b/src/_h5ai/client/css/inc/view.less index 85cde7ba..6147427b 100644 --- a/src/_h5ai/client/css/inc/view.less +++ b/src/_h5ai/client/css/inc/view.less @@ -1,4 +1,16 @@ + +@item-border-col-sep: @col-border; + +@item-background-col-hover: rgba(0,0,0,0.02); +@item-border-col-hover: @col-border; + +@item-background-col-sel: rgba(0,0,0,0.02); +@item-border-col-sel: @col-border-strong; + +@icon-size: 48px; + + #selection-rect { display: none; position: absolute; @@ -13,10 +25,12 @@ position: absolute; left: 0; top: 0; + width: 24px; + height: 24px; margin-top: -3px; margin-left: -3px; - background-color: #fff; - border: 1px solid #555; + background-color: #f8f8f8; + border: 1px solid rgba(0,0,0,0.3); border-radius: 3px; opacity: 0.6; cursor: pointer; @@ -24,8 +38,8 @@ .on-selected, .on-not-selected { display: block; - width: 24px; - height: 24px; + width: 100%; + height: 100%; } &:hover { @@ -49,17 +63,6 @@ } -@item-border-col-sep: @col-border; - -@item-background-col-hover: rgba(0,0,0,0.02); -@item-border-col-hover: @col-border; - -@item-background-col-sel: rgba(0,0,0,0.02); -@item-border-col-sel: @col-border-strong; - -@icon-size: 48px; - - #view { display: none; margin: 0 auto; diff --git a/src/_h5ai/client/js/inc/ext/select.js b/src/_h5ai/client/js/inc/ext/select.js index c979df19..07297a6a 100644 --- a/src/_h5ai/client/js/inc/ext/select.js +++ b/src/_h5ai/client/js/inc/ext/select.js @@ -2,7 +2,8 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/resource', 'core/event'], function (_, $, allsettings, resource, event) { var settings = _.extend({ - enabled: false + enabled: false, + checkboxes: false }, allsettings.select), x = 0, y = 0, @@ -144,7 +145,9 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/resource', 'core onLocationChanged = function (item) { - _.each(item.content, initItem); + if (settings.checkboxes) { + _.each(item.content, initItem); + } publish(); }, @@ -152,7 +155,9 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/resource', 'core var selectionChanged = false; - _.each(added, initItem); + if (settings.checkboxes) { + _.each(added, initItem); + } _.each(removed, function (item) { if (item.$view && item.$view.hasClass('selected')) { diff --git a/src/_h5ai/conf/options.json b/src/_h5ai/conf/options.json index 3f43a398..cb05ee63 100644 --- a/src/_h5ai/conf/options.json +++ b/src/_h5ai/conf/options.json @@ -269,10 +269,14 @@ Options }, /* - Make entries selectable. At the moment only needed for packaged download and delete. + Make entries selectable (first mouse button + drag). + At the moment only needed for packaged download and delete. + + - checkboxes: boolean, show a checkbox on mouse over item */ "select": { - "enabled": true + "enabled": true, + "checkboxes": true }, /* From 8639e40631ffd8ea3c27a2a82c936afdcbde4243 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Fri, 30 Aug 2013 20:10:38 +0200 Subject: [PATCH 66/83] Updates readme. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 59c791d5..13af57a4 100644 --- a/README.md +++ b/README.md @@ -58,6 +58,7 @@ It profits from these great projects: * updates image and text preview * adds optional natural sort of items +* adds optional checkboxes to select items * fixes file deletion of multiple files * fixes `setParentFolderLabels = false` * fixes shell-arg and RegExp escape issues From 00cc9fb713f719aaa5a23ad2b922ef3a5192b8e1 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sat, 31 Aug 2013 14:19:45 +0200 Subject: [PATCH 67/83] Minor fix. --- src/_h5ai/client/js/inc/ext/select.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_h5ai/client/js/inc/ext/select.js b/src/_h5ai/client/js/inc/ext/select.js index 07297a6a..1fed50dc 100644 --- a/src/_h5ai/client/js/inc/ext/select.js +++ b/src/_h5ai/client/js/inc/ext/select.js @@ -137,7 +137,7 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/resource', 'core }) .on('mouseleave', function () { - item.$view.find('a').removeClass('hover'); + $('.hover').removeClass('hover'); $('#selector').remove(); }); } From 8b2852ec9d457cf113da4db82dc2c1e776060890 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sat, 31 Aug 2013 14:34:42 +0200 Subject: [PATCH 68/83] Use of EXIF thumbnails optional (opt-out). --- src/_h5ai/conf/options.json | 4 +++- src/_h5ai/server/php/inc/Thumb.php | 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/_h5ai/conf/options.json b/src/_h5ai/conf/options.json index cb05ee63..06562ed7 100644 --- a/src/_h5ai/conf/options.json +++ b/src/_h5ai/conf/options.json @@ -312,6 +312,7 @@ Options - doc: array of types - delay: delay in milliseconds after "dom-ready" before thumb-requesting starts - size: number, size in pixel of the generated thumbnails + - exif: boolean, use included EXIF thumbs if possible */ "thumbnails": { "enabled": true, @@ -319,7 +320,8 @@ Options "mov": ["video"], "doc": ["pdf", "ps"], "delay": 1, - "size": 96 + "size": 96, + "exif": true }, /* diff --git a/src/_h5ai/server/php/inc/Thumb.php b/src/_h5ai/server/php/inc/Thumb.php index d227279c..7476575e 100644 --- a/src/_h5ai/server/php/inc/Thumb.php +++ b/src/_h5ai/server/php/inc/Thumb.php @@ -56,7 +56,8 @@ class Thumb { $image = new Image(); $et = false; - if (function_exists("exif_thumbnail")) { + $opts = $this->app->get_options(); + if ($opts["thumbnails"]["exif"] === true && function_exists("exif_thumbnail")) { $et = @exif_thumbnail($source_abs_path); } if($et !== false) { From c8d0f5500e7924d79030b3b6879f715c984429d4 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sat, 31 Aug 2013 15:27:46 +0200 Subject: [PATCH 69/83] Additional text preview modes: none, fixed, markdown. --- src/_h5ai/client/js/inc/ext/preview-img.js | 2 +- src/_h5ai/client/js/inc/ext/preview-txt.js | 34 +++++++--------------- src/_h5ai/conf/options.json | 25 +++++++++------- 3 files changed, 25 insertions(+), 36 deletions(-) diff --git a/src/_h5ai/client/js/inc/ext/preview-img.js b/src/_h5ai/client/js/inc/ext/preview-img.js index a9dc5a4a..d118a95e 100644 --- a/src/_h5ai/client/js/inc/ext/preview-img.js +++ b/src/_h5ai/client/js/inc/ext/preview-img.js @@ -3,7 +3,7 @@ modulejs.define('ext/preview-img', ['_', '$', 'core/settings', 'core/event', 'ex var settings = _.extend({ enabled: false, - types: ['bmp', 'gif', 'ico', 'image', 'jpg', 'png', 'tiff'] + types: [] }, allsettings['preview-img']), preloadImg = function (src, callback) { diff --git a/src/_h5ai/client/js/inc/ext/preview-txt.js b/src/_h5ai/client/js/inc/ext/preview-txt.js index ef5fcf12..a6a85a2c 100644 --- a/src/_h5ai/client/js/inc/ext/preview-txt.js +++ b/src/_h5ai/client/js/inc/ext/preview-txt.js @@ -3,29 +3,7 @@ modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/event', 'ex var settings = _.extend({ enabled: false, - types: { - authors: 'plain', - copying: 'plain', - c: 'c', - cpp: 'cpp', - css: 'css', - h: 'c', - hpp: 'cpp', - install: 'plain', - log: 'plain', - java: 'java', - makefile: 'xml', - markdown: 'plain', - // php: 'php', - python: 'python', - readme: 'plain', - rb: 'ruby', - rtf: 'plain', - script: 'shell', - text: 'plain', - js: 'js', - xml: 'xml' - } + types: {} }, allsettings['preview-txt']), templateText = '<pre id="pv-txt-text" class="highlighted"/>', @@ -142,7 +120,15 @@ modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/event', 'ex var $text; - if (currentItem.type === 'markdown') { + if (settings.types[currentItem.type] === 'none') { + + $text = $(templateMarkdown).text(textContent); + + } else if (settings.types[currentItem.type] === 'fixed') { + + $text = $(templateText).text(textContent); + + } else if (settings.types[currentItem.type] === 'markdown') { $text = $(templateMarkdown).text(textContent); diff --git a/src/_h5ai/conf/options.json b/src/_h5ai/conf/options.json index 06562ed7..3f037a41 100644 --- a/src/_h5ai/conf/options.json +++ b/src/_h5ai/conf/options.json @@ -214,38 +214,41 @@ Options /* Show text file preview on click. - "types" maps file types to SyntaxHighligher brushes. Special case: "markdown" will - be rendered as HTML. - + "types" maps file types to SyntaxHighligher brushes. For available brushes see http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/ + Additional type are: + - "markdown" to render Markdown text + - "none" for floating text + - "fixed" for fixed width text + - types: maps types to brushes */ "preview-txt": { "enabled": true, "types": { - "authors": "plain", - "copying": "plain", + "authors": "fixed", + "copying": "fixed", "c": "c", "cpp": "cpp", "css": "css", "diff": "diff", "h": "c", "hpp": "cpp", - "install": "plain", - "log": "plain", + "install": "fixed", + "log": "fixed", "java": "java", "js": "js", "json": "js", "makefile": "xml", - "markdown": "plain", + "markdown": "markdown", // "php": "php", "python": "python", - "readme": "plain", + "readme": "fixed", "rb": "ruby", - "rtf": "plain", + "rtf": "fixed", "script": "shell", - "text": "plain", + "text": "fixed", "xml": "xml" } }, From fef8e2a2542195484e7758e50738e47c1b7ea6e6 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sat, 31 Aug 2013 17:17:27 +0200 Subject: [PATCH 70/83] Updates readme. --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 13af57a4..583d5fba 100644 --- a/README.md +++ b/README.md @@ -59,6 +59,8 @@ It profits from these great projects: * updates image and text preview * adds optional natural sort of items * adds optional checkboxes to select items +* adds text preview modes: none, fixed, markdown +* makes use of EXIF thumbnails optional * fixes file deletion of multiple files * fixes `setParentFolderLabels = false` * fixes shell-arg and RegExp escape issues From 5c5d050218b9b171497d85e5c740a5fde6961ca8 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sat, 31 Aug 2013 17:47:35 +0200 Subject: [PATCH 71/83] Optionally hide folders in the main view. --- src/_h5ai/client/js/inc/view/items.js | 9 +++++++-- src/_h5ai/conf/options.json | 4 +++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/_h5ai/client/js/inc/view/items.js b/src/_h5ai/client/js/inc/view/items.js index 80400724..58008e33 100644 --- a/src/_h5ai/client/js/inc/view/items.js +++ b/src/_h5ai/client/js/inc/view/items.js @@ -4,6 +4,7 @@ modulejs.define('view/items', ['_', '$', 'core/settings', 'core/resource', 'core var settings = _.extend({ setParentFolderLabels: false, hideParentFolderLinks: false, + hideFolders: false, binaryPrefix: false }, allsettings.view), @@ -106,7 +107,9 @@ modulejs.define('view/items', ['_', '$', 'core/settings', 'core/resource', 'core _.each(item.content, function (e) { - $items.append(update(e, true)); + if (!(e.isFolder() && settings.hideFolders)) { + $items.append(update(e, true)); + } }); if (item.isEmpty()) { @@ -123,7 +126,9 @@ modulejs.define('view/items', ['_', '$', 'core/settings', 'core/resource', 'core _.each(added, function (item) { - update(item, true).hide().appendTo($items).fadeIn(400); + if (!(item.isFolder() && settings.hideFolders)) { + update(item, true).hide().appendTo($items).fadeIn(400); + } }); _.each(removed, function (item) { diff --git a/src/_h5ai/conf/options.json b/src/_h5ai/conf/options.json index 3f037a41..7058782e 100644 --- a/src/_h5ai/conf/options.json +++ b/src/_h5ai/conf/options.json @@ -34,7 +34,8 @@ Options The user selected view mode is also stored local in modern browsers so that it will be persistent. - setParentFolderLabels: set parent folder labels to real folder names - - hideParentFolderLinks: hide parent folder links + - hideParentFolderLinks: hide parent folder links in the main view + - hideFolders: hide all folders in the main view - binaryPrefix: set to true uses 1024B=1KiB when formatting file sizes (see http://en.wikipedia.org/wiki/Binary_prefix) - indexFiles: consider folder with those files as non {{pkg.name}} folders - ignore: don't list items matching these regular expressions @@ -46,6 +47,7 @@ Options "sizes": [48, 24, 96], "setParentFolderLabels": true, "hideParentFolderLinks": false, + "hideFolders": false, "binaryPrefix": false, "indexFiles": ["index.html", "index.htm", "index.php"], "ignore": ["^\\.", "^_{{pkg.name}}"], From cadc1f49983e63b724a47d7ea91e63c1504880e9 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sat, 31 Aug 2013 23:08:09 +0200 Subject: [PATCH 72/83] Place thumbs in subfolder. --- src/_h5ai/server/php/inc/Thumb.php | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/_h5ai/server/php/inc/Thumb.php b/src/_h5ai/server/php/inc/Thumb.php index 7476575e..5912f376 100644 --- a/src/_h5ai/server/php/inc/Thumb.php +++ b/src/_h5ai/server/php/inc/Thumb.php @@ -4,6 +4,7 @@ class Thumb { private static $FFMPEG_CMD = "ffmpeg -i [SOURCE] -an -ss 3 -vframes 1 [TARGET]"; private static $CONVERT_CMD = "convert -strip [SOURCE][0] [TARGET]"; + private static $THUMB_CACHE = "thumbs"; public static final function is_supported() { @@ -22,6 +23,8 @@ class Thumb { public function __construct($app) { $this->app = $app; + $this->thumbs_path = $this->app->get_cache_abs_path() . "/" . Thumb::$THUMB_CACHE; + $this->thumbs_href = $this->app->get_cache_abs_href() . Thumb::$THUMB_CACHE; } @@ -47,9 +50,13 @@ class Thumb { return null; } + if (!is_dir($this->thumbs_path)) { + @mkdir($this->thumbs_path, 0755, true); + } + $name = "thumb-" . sha1("$source_abs_path-$width-$height-$mode") . ".jpg"; - $thumb_abs_path = $this->app->get_cache_abs_path() . "/" . $name; - $thumb_abs_href = $this->app->get_cache_abs_href() . $name; + $thumb_abs_path = $this->thumbs_path . "/" . $name; + $thumb_abs_href = $this->thumbs_href . "/" . $name; if (!file_exists($thumb_abs_path) || filemtime($source_abs_path) >= filemtime($thumb_abs_path)) { From 131d94563809aca3cc2d19455bdfc830e7740d8d Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Sun, 1 Sep 2013 12:44:40 +0200 Subject: [PATCH 73/83] Missing semicolon. --- src/_h5ai/client/js/inc/ext/download.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_h5ai/client/js/inc/ext/download.js b/src/_h5ai/client/js/inc/ext/download.js index 01400677..4b1278d7 100644 --- a/src/_h5ai/client/js/inc/ext/download.js +++ b/src/_h5ai/client/js/inc/ext/download.js @@ -54,7 +54,7 @@ modulejs.define('ext/download', ['_', '$', 'core/settings', 'core/resource', 'co $form = $('<form action="#" method="post" style="display:none;" />'); for (var key in query) { - $form.append('<input type="hidden" name="' + key + '" value="' + query[key] + '" />') + $form.append('<input type="hidden" name="' + key + '" value="' + query[key] + '" />'); } $form.appendTo('body').submit().remove(); }, From 19d53b4c147beabba2ada4484597cba828c077ca Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Mon, 2 Sep 2013 21:46:47 +0200 Subject: [PATCH 74/83] Lighter font. --- src/_h5ai/client/css/inc/general.less | 2 ++ src/_h5ai/index.html.jade | 2 +- src/_h5ai/server/php/inc/page.php.jade | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/_h5ai/client/css/inc/general.less b/src/_h5ai/client/css/inc/general.less index 88efdf55..ae557f20 100644 --- a/src/_h5ai/client/css/inc/general.less +++ b/src/_h5ai/client/css/inc/general.less @@ -24,6 +24,7 @@ @border-widget-sep: 1px solid @col-widget-sep; @font-family: Ubuntu, sans-serif; +@font-weight: 300; @font-family-mono: "Ubuntu Mono", monospace; @@ -57,6 +58,7 @@ html { body { font-family: @font-family; font-size: 13px; + font-weight: @font-weight; color: @col; background-color: @col-back; margin: 30px; diff --git a/src/_h5ai/index.html.jade b/src/_h5ai/index.html.jade index b317940f..eea96a56 100644 --- a/src/_h5ai/index.html.jade +++ b/src/_h5ai/index.html.jade @@ -17,7 +17,7 @@ html.no-js.browser( lang="en" ) link( rel="apple-touch-icon-precomposed", sizes="72x72", type="image/png", href="client/images/app-72x72.png" ) link( rel="apple-touch-icon-precomposed", sizes="114x114", type="image/png", href="client/images/app-114x114.png" ) link( rel="apple-touch-icon-precomposed", sizes="144x144", type="image/png", href="client/images/app-144x144.png" ) - link( rel="stylesheet", href="//fonts.googleapis.com/css?family=Ubuntu+Mono:400,700,400italic,700italic|Ubuntu:400,700,400italic,700italic" ) + link( rel="stylesheet", href="//fonts.googleapis.com/css?family=Ubuntu+Mono:400,700,400italic,700italic|Ubuntu:300italic,700italic,300,700" ) link( rel="stylesheet", href="client/css/styles.css" ) script( src="client/js/scripts.js", data-mode="info" ) diff --git a/src/_h5ai/server/php/inc/page.php.jade b/src/_h5ai/server/php/inc/page.php.jade index 06a6c61e..f49aec7e 100644 --- a/src/_h5ai/server/php/inc/page.php.jade +++ b/src/_h5ai/server/php/inc/page.php.jade @@ -21,7 +21,7 @@ html.no-js.browser( lang="en" ) link( rel="apple-touch-icon-precomposed", sizes="72x72", type="image/png", href!="#{href}client/images/app-72x72.png" ) link( rel="apple-touch-icon-precomposed", sizes="114x114", type="image/png", href!="#{href}client/images/app-114x114.png" ) link( rel="apple-touch-icon-precomposed", sizes="144x144", type="image/png", href!="#{href}client/images/app-144x144.png" ) - link( rel="stylesheet", href="//fonts.googleapis.com/css?family=Ubuntu+Mono:400,700,400italic,700italic|Ubuntu:400,700,400italic,700italic" ) + link( rel="stylesheet", href="//fonts.googleapis.com/css?family=Ubuntu+Mono:400,700,400italic,700italic|Ubuntu:300italic,700italic,300,700" ) link( rel="stylesheet", href!="#{href}client/css/styles.css" ) script( src!="#{href}client/js/scripts.js" ) From f0d7ec72cf16373011d23b6f14bb633620be295c Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Tue, 3 Sep 2013 12:33:46 +0200 Subject: [PATCH 75/83] Fix natural sort for file size. --- src/_h5ai/client/js/inc/ext/sort.js | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/_h5ai/client/js/inc/ext/sort.js b/src/_h5ai/client/js/inc/ext/sort.js index 862d8086..4d99a698 100644 --- a/src/_h5ai/client/js/inc/ext/sort.js +++ b/src/_h5ai/client/js/inc/ext/sort.js @@ -107,12 +107,17 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e return res; } - val1 = '' + getValue(item1); - val2 = '' + getValue(item2); + val1 = getValue(item1); + val2 = getValue(item2); - if (ignorecase) { - val1 = val1.toLowerCase(); - val2 = val2.toLowerCase(); + if (isNaN(val1) || isNaN(val2)) { + val1 = '' + val1; + val2 = '' + val2; + + if (ignorecase) { + val1 = val1.toLowerCase(); + val2 = val2.toLowerCase(); + } } if (natural) { @@ -130,7 +135,7 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e var headers = $('#items li.header a'), header = $('#items li.header a.' + columnClasses[column]), - fn = cmpFn(columnGetters[column], reverse, settings.ignorecase, settings.natural), + fn = cmpFn(columnGetters[column], reverse, settings.ignorecase, column === 0 && settings.natural), current = $('#items .item'), sorted = $('#items .item').sort(fn); From ad845dbe6667dabed24eb7fc3e47846dd65a294c Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Tue, 3 Sep 2013 13:40:07 +0200 Subject: [PATCH 76/83] Cleans view styles. --- src/_h5ai/client/css/inc/view-details.less | 7 ++----- src/_h5ai/client/css/inc/view-grid.less | 5 ++--- src/_h5ai/client/css/inc/view-icons.less | 3 +-- 3 files changed, 5 insertions(+), 10 deletions(-) diff --git a/src/_h5ai/client/css/inc/view-details.less b/src/_h5ai/client/css/inc/view-details.less index ec2c8694..22cd0072 100644 --- a/src/_h5ai/client/css/inc/view-details.less +++ b/src/_h5ai/client/css/inc/view-details.less @@ -29,17 +29,14 @@ } &.item + .item { - - a, a:active, a:visited { - margin-top: -1px; - } + margin-top: -1px; } .icon.square { display: inline-block; position: absolute; left: 0; - top: -5px; + top: -4px; width: @icon-size; img { diff --git a/src/_h5ai/client/css/inc/view-grid.less b/src/_h5ai/client/css/inc/view-grid.less index 4a67e115..e532ebd8 100644 --- a/src/_h5ai/client/css/inc/view-grid.less +++ b/src/_h5ai/client/css/inc/view-grid.less @@ -5,10 +5,9 @@ &.item { float: left; + margin: 2px; a, a:active, a:visited { - float: left; - margin: 2px; width: @icon-size + 186px; height: @icon-size + 6px; border: 1px solid rgba(0,0,0,0); @@ -31,7 +30,7 @@ display: inline-block; position: absolute; left: 0; - top: -2px; + top: -4px; width: @icon-size; img { diff --git a/src/_h5ai/client/css/inc/view-icons.less b/src/_h5ai/client/css/inc/view-icons.less index 44b104dd..ecbab927 100644 --- a/src/_h5ai/client/css/inc/view-icons.less +++ b/src/_h5ai/client/css/inc/view-icons.less @@ -6,10 +6,9 @@ &.item { float: left; + margin: 8px; a, a:active, a:visited { - float: left; - margin: 8px; padding: 8px; min-width: 96px; width: @icon-size * 2; From 66e9dafaa51016a1a46d4fa81959cf2e4ae26000 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Tue, 3 Sep 2013 16:12:31 +0200 Subject: [PATCH 77/83] Improves selectors. --- src/_h5ai/client/css/inc/general.less | 1 + src/_h5ai/client/css/inc/view-grid.less | 4 +- src/_h5ai/client/css/inc/view.less | 77 +++++++++++------------- src/_h5ai/client/js/inc/ext/select.js | 29 ++------- src/_h5ai/client/js/inc/view/items.js | 4 ++ src/_h5ai/client/js/inc/view/viewmode.js | 2 +- 6 files changed, 50 insertions(+), 67 deletions(-) diff --git a/src/_h5ai/client/css/inc/general.less b/src/_h5ai/client/css/inc/general.less index ae557f20..5b34da55 100644 --- a/src/_h5ai/client/css/inc/general.less +++ b/src/_h5ai/client/css/inc/general.less @@ -4,6 +4,7 @@ @col-hover: rgb(29,119,194); @col-border: rgba(0,0,0,0.05); @col-border-strong: rgba(0,0,0,0.15); +@col-border-stronger: rgba(0,0,0,0.3); @col-error: rgb(204,51,51); diff --git a/src/_h5ai/client/css/inc/view-grid.less b/src/_h5ai/client/css/inc/view-grid.less index e532ebd8..9cb71c0b 100644 --- a/src/_h5ai/client/css/inc/view-grid.less +++ b/src/_h5ai/client/css/inc/view-grid.less @@ -8,7 +8,7 @@ margin: 2px; a, a:active, a:visited { - width: @icon-size + 186px; + width: @icon-size + 182px; height: @icon-size + 6px; border: 1px solid rgba(0,0,0,0); @@ -58,7 +58,7 @@ &.item { a, a:active, a:visited { - width: @size + 186px; + width: @size + 182px; height: @size + 6px; } diff --git a/src/_h5ai/client/css/inc/view.less b/src/_h5ai/client/css/inc/view.less index 6147427b..6e008f63 100644 --- a/src/_h5ai/client/css/inc/view.less +++ b/src/_h5ai/client/css/inc/view.less @@ -21,47 +21,6 @@ background-color: rgba(0,0,0,0.01); } -#selector { - position: absolute; - left: 0; - top: 0; - width: 24px; - height: 24px; - margin-top: -3px; - margin-left: -3px; - background-color: #f8f8f8; - border: 1px solid rgba(0,0,0,0.3); - border-radius: 3px; - opacity: 0.6; - cursor: pointer; - .transition(all 0.2s ease-in-out); - - .on-selected, .on-not-selected { - display: block; - width: 100%; - height: 100%; - } - - &:hover { - opacity: 1; - } -} - -.item.selected { - #selector { - .on-not-selected { - display: none; - } - } -} -.item:not(.selected) { - #selector { - .on-selected { - display: none; - } - } -} - #view { display: none; @@ -124,6 +83,10 @@ color: @col-hover; background-color: @item-background-col-hover; border-color: @item-border-col-hover; + + .selector { + display: block; + } } } @@ -138,6 +101,15 @@ border-color: @item-border-col-sel; } } + + .selector { + display: block; + // border-color: @col-border-stronger; + + img { + display: block; + } + } } } @@ -194,6 +166,29 @@ text-align: right; width: 80px; } + + .selector { + display: none; + position: absolute; + left: 0; + top: 0; + width: 18px; + height: 18px; + background-color: #fff; + border: 1px solid @col-border-strong; + cursor: pointer; + .transition(all 0.2s ease-in-out); + + &:hover { + border-color: @col-border-stronger; + } + + img { + display: none; + width: 100%; + height: 100%; + } + } } .empty, .no-match { diff --git a/src/_h5ai/client/js/inc/ext/select.js b/src/_h5ai/client/js/inc/ext/select.js index 1fed50dc..5bf66993 100644 --- a/src/_h5ai/client/js/inc/ext/select.js +++ b/src/_h5ai/client/js/inc/ext/select.js @@ -115,31 +115,14 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/resource', 'core initItem = function (item) { if (item.$view) { - item.$view.find('a') - .on('mouseenter', function () { + item.$view.find('.selector').on('click', function (event) { - var $icon = item.$view.find('.icon'); + event.stopImmediatePropagation(); + event.preventDefault(); - $('#selector').remove(); - $('<div id="selector">' + - '<img src="' + resource.image('select') + '" class="on-selected" alt="selected" />' + - '<img src="' + resource.image('blank') + '" class="on-not-selected" alt="not-selected" />' + - '</div>') - .on('click', function (event) { - - event.stopImmediatePropagation(); - event.preventDefault(); - - item.$view.toggleClass('selected'); - publish(); - }) - .appendTo(item.$view.find('a')); - }) - .on('mouseleave', function () { - - $('.hover').removeClass('hover'); - $('#selector').remove(); - }); + item.$view.toggleClass('selected'); + publish(); + }); } }, diff --git a/src/_h5ai/client/js/inc/view/items.js b/src/_h5ai/client/js/inc/view/items.js index 58008e33..5334516a 100644 --- a/src/_h5ai/client/js/inc/view/items.js +++ b/src/_h5ai/client/js/inc/view/items.js @@ -15,6 +15,9 @@ modulejs.define('view/items', ['_', '$', 'core/settings', 'core/resource', 'core '<span class="label"/>' + '<span class="date"/>' + '<span class="size"/>' + + '<span class="selector">' + + '<img src="' + resource.image('select') + '" alt="selected"/>' + + '</span>' + '</a>' + '</li>', hintTemplate = '<span class="hint"/>', @@ -72,6 +75,7 @@ modulejs.define('view/items', ['_', '$', 'core/settings', 'core/resource', 'core $label.addClass('l10n-parentDirectory'); } $html.addClass('folder-parent'); + $html.find('.selector').remove(); } if (item.$view) { diff --git a/src/_h5ai/client/js/inc/view/viewmode.js b/src/_h5ai/client/js/inc/view/viewmode.js index e0714c17..16189501 100644 --- a/src/_h5ai/client/js/inc/view/viewmode.js +++ b/src/_h5ai/client/js/inc/view/viewmode.js @@ -29,7 +29,7 @@ modulejs.define('view/viewmode', ['_', '$', 'core/settings', 'core/resource', 'c var contentWidth = $('#content').width(), $view = $('#view'), - itemWidth = ($view.hasClass('view-icons') || $view.hasClass('view-grid')) ? ($view.find('.item').eq(0).width() || 1) : 1; + itemWidth = ($view.hasClass('view-icons') || $view.hasClass('view-grid')) ? ($view.find('.item').eq(0).outerWidth(true) || 1) : 1; $view.width(Math.floor(contentWidth / itemWidth) * itemWidth); }, From c3ea2480da7c5f76d73e245857b90180f6c2864a Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Tue, 3 Sep 2013 17:59:10 +0200 Subject: [PATCH 78/83] Refactors. --- README.md | 1 + .../client/images/{select.svg => selected.svg} | 0 src/_h5ai/client/js/inc/ext/select.js | 17 +++++++++++------ src/_h5ai/client/js/inc/view/items.js | 4 ---- 4 files changed, 12 insertions(+), 10 deletions(-) rename src/_h5ai/client/images/{select.svg => selected.svg} (100%) diff --git a/README.md b/README.md index 583d5fba..d3318467 100644 --- a/README.md +++ b/README.md @@ -60,6 +60,7 @@ It profits from these great projects: * adds optional natural sort of items * adds optional checkboxes to select items * adds text preview modes: none, fixed, markdown +* optionally hide folders in main view * makes use of EXIF thumbnails optional * fixes file deletion of multiple files * fixes `setParentFolderLabels = false` diff --git a/src/_h5ai/client/images/select.svg b/src/_h5ai/client/images/selected.svg similarity index 100% rename from src/_h5ai/client/images/select.svg rename to src/_h5ai/client/images/selected.svg diff --git a/src/_h5ai/client/js/inc/ext/select.js b/src/_h5ai/client/js/inc/ext/select.js index 5bf66993..b1287a1d 100644 --- a/src/_h5ai/client/js/inc/ext/select.js +++ b/src/_h5ai/client/js/inc/ext/select.js @@ -6,6 +6,8 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/resource', 'core checkboxes: false }, allsettings.select), + template = '<span class="selector"><img src="' + resource.image('selected') + '" alt="selected"/></span>', + x = 0, y = 0, l = 0, t = 0, w = 0, h = 0, shrink = 1/3, @@ -115,14 +117,17 @@ modulejs.define('ext/select', ['_', '$', 'core/settings', 'core/resource', 'core initItem = function (item) { if (item.$view) { - item.$view.find('.selector').on('click', function (event) { - event.stopImmediatePropagation(); - event.preventDefault(); + $(template) + .appendTo(item.$view.find('a')) + .on('click', function (event) { - item.$view.toggleClass('selected'); - publish(); - }); + event.stopImmediatePropagation(); + event.preventDefault(); + + item.$view.toggleClass('selected'); + publish(); + }); } }, diff --git a/src/_h5ai/client/js/inc/view/items.js b/src/_h5ai/client/js/inc/view/items.js index 5334516a..58008e33 100644 --- a/src/_h5ai/client/js/inc/view/items.js +++ b/src/_h5ai/client/js/inc/view/items.js @@ -15,9 +15,6 @@ modulejs.define('view/items', ['_', '$', 'core/settings', 'core/resource', 'core '<span class="label"/>' + '<span class="date"/>' + '<span class="size"/>' + - '<span class="selector">' + - '<img src="' + resource.image('select') + '" alt="selected"/>' + - '</span>' + '</a>' + '</li>', hintTemplate = '<span class="hint"/>', @@ -75,7 +72,6 @@ modulejs.define('view/items', ['_', '$', 'core/settings', 'core/resource', 'core $label.addClass('l10n-parentDirectory'); } $html.addClass('folder-parent'); - $html.find('.selector').remove(); } if (item.$view) { From f2d28d6970af865d0e99367a796b3b77353311a8 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Tue, 3 Sep 2013 23:07:30 +0200 Subject: [PATCH 79/83] Smaller font for costum content. --- src/_h5ai/client/css/inc/content.less | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_h5ai/client/css/inc/content.less b/src/_h5ai/client/css/inc/content.less index 1059d0f0..ddda9b97 100644 --- a/src/_h5ai/client/css/inc/content.less +++ b/src/_h5ai/client/css/inc/content.less @@ -2,7 +2,7 @@ #content { max-width: 960px; margin: 50px auto; - font-size: 16px; + font-size: 15px; } #content-header, #content-footer { From 94595597d570f06b0a1697a094023ccae9a4e0b5 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Wed, 4 Sep 2013 14:17:29 +0200 Subject: [PATCH 80/83] Fixes hover states. --- src/_h5ai/client/css/inc/view.less | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/_h5ai/client/css/inc/view.less b/src/_h5ai/client/css/inc/view.less index 6e008f63..39edaa8a 100644 --- a/src/_h5ai/client/css/inc/view.less +++ b/src/_h5ai/client/css/inc/view.less @@ -83,7 +83,9 @@ color: @col-hover; background-color: @item-background-col-hover; border-color: @item-border-col-hover; + } + &:hover { .selector { display: block; } From 32d9d59a4ee5078b3945ba635f515b57ddccec65 Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Wed, 4 Sep 2013 15:30:16 +0200 Subject: [PATCH 81/83] Styles. --- src/_h5ai/client/css/inc/view-details.less | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/_h5ai/client/css/inc/view-details.less b/src/_h5ai/client/css/inc/view-details.less index 22cd0072..c4c636a3 100644 --- a/src/_h5ai/client/css/inc/view-details.less +++ b/src/_h5ai/client/css/inc/view-details.less @@ -10,7 +10,6 @@ &.item { a, a:active, a:visited { - border-top: 1px solid @item-border-col-sep; border-bottom: 1px solid @item-border-col-sep; height: @icon-size + 6px; @@ -28,10 +27,6 @@ } } - &.item + .item { - margin-top: -1px; - } - .icon.square { display: inline-block; position: absolute; @@ -60,6 +55,10 @@ right: 0; top: 0; } + + .selector { + margin-top: -1px; + } } } From b5367d999a04922d423ca079f400b4eb6aceceab Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Wed, 4 Sep 2013 15:57:48 +0200 Subject: [PATCH 82/83] Updates readme. --- README.md | 47 ++++++++++++++++++++++++----------------------- 1 file changed, 24 insertions(+), 23 deletions(-) diff --git a/README.md b/README.md index d3318467..2b638b23 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # h5ai **h5ai** is a modern HTTP web server index for Apache httpd, lighttpd, nginx and Cherokee. The preferred way to report a bug or make a feature request is to -create [a new issue](http://github.com/lrsjng/h5ai/issues/new) on GitHub! +create [a new issue](https://github.com/lrsjng/h5ai/issues/new) on GitHub! ## Install @@ -30,7 +30,7 @@ You'll find a new directory `build` including a fresh zipball. ## License -**h5ai** is provided under the terms of the [MIT License](http://github.com/lrsjng/h5ai/blob/develop/LICENSE.md). +**h5ai** is provided under the terms of the [MIT License](https://github.com/lrsjng/h5ai/blob/develop/LICENSE.md). It profits from these great projects: [Faenza icon set](http://tiheum.deviantart.com/art/Faenza-Icons-173323228) (GPL), @@ -39,10 +39,10 @@ It profits from these great projects: [jQuery](http://jquery.com) (MIT), [jQuery.filedrop](http://www.github.com/weixiyen/jquery-filedrop) (MIT), [jQuery.fracs](http://larsjung.de/fracs/) (MIT), -[jQuery.mousewheel](http://github.com/brandonaaron/jquery-mousewheel) (MIT), +[jQuery.mousewheel](https://github.com/brandonaaron/jquery-mousewheel) (MIT), [jQuery.qrcode](http://larsjung.de/qrcode/) (MIT), [jQuery.scrollpanel](http://larsjung.de/scrollpanel/) (MIT), -[markdown-js](http://github.com/evilstreak/markdown-js) (MIT), +[markdown-js](https://github.com/evilstreak/markdown-js) (MIT), [Modernizr](http://www.modernizr.com) (MIT/BSD), [modulejs](http://larsjung.de/modulejs/) (MIT), [Moment.js](http://momentjs.com) (MIT), @@ -57,6 +57,7 @@ It profits from these great projects: ### develop branch * updates image and text preview +* adds variable icon sizes * adds optional natural sort of items * adds optional checkboxes to select items * adds text preview modes: none, fixed, markdown @@ -140,11 +141,11 @@ It profits from these great projects: * improves filter (now ignorecase, now only checks if chars in right order) * adds keyboard support to image preview (space, enter, backspace, left, right, up, down, f, esc) * adds text file preview and highlighting with [SyntaxHighlighter](http://alexgorbatchev.com/SyntaxHighlighter/) (same keys as img preview) -* adds Markdown preview with [markdown-js](http://github.com/evilstreak/markdown-js) +* adds Markdown preview with [markdown-js](https://github.com/evilstreak/markdown-js) * adds new type `markdown` * changes language code `gr` to `el` * adds localization for filter placeholder -* adds `hu` translation by [Rodolffo](http://github.com/Rodolffo) +* adds `hu` translation by [Rodolffo](https://github.com/Rodolffo) * updates to [jQuery.qrcode](http://larsjung.de/qrcode/) 0.2 * updates to [jQuery.scrollpanel](http://larsjung.de/scrollpanel/) 0.1 * updates to [modulejs](http://larsjung.de/modulejs/) 0.2 @@ -181,13 +182,13 @@ It profits from these great projects: * adds `index.php` to use h5ai in non-Apache environments * switches from [Datejs](http://www.datejs.com) to [Moment.js](http://momentjs.com) * adds [underscore.js](http://underscorejs.org) -* fixes mousewheel problems, updates [jQuery.mousewheel](http://github.com/brandonaaron/jquery-mousewheel) to 3.0.6 +* fixes mousewheel problems, updates [jQuery.mousewheel](https://github.com/brandonaaron/jquery-mousewheel) to 3.0.6 * updates `lv` translation -* adds `ro` translation by [Jakob Cosoroabă](http://github.com/midday) -* adds `ja` translation by [metasta](http://github.com/metasta) -* adds `nb` translation by [Sindre Sorhus](http://github.com/sindresorhus) -* adds `sr` translation by [vBm](http://github.com/vBm) -* adds `gr` translation by [xhmikosr](http://github.com/xhmikosr) +* adds `ro` translation by [Jakob Cosoroabă](https://github.com/midday) +* adds `ja` translation by [metasta](https://github.com/metasta) +* adds `nb` translation by [Sindre Sorhus](https://github.com/sindresorhus) +* adds `sr` translation by [vBm](https://github.com/vBm) +* adds `gr` translation by [xhmikosr](https://github.com/xhmikosr) ### v0.18 - *2012-02-24* @@ -207,7 +208,7 @@ It profits from these great projects: * improves url hashes * updates year in `LICENSE.TXT` * updates es translation -* adds `zh-tw` translation by [Yao Wei](http://github.com/medicalwei) +* adds `zh-tw` translation by [Yao Wei](https://github.com/medicalwei) * updates `zh-cn` translation @@ -243,7 +244,7 @@ It profits from these great projects: ### v0.15.2 - *2011-09-18* -* adds `it` translation by [Salvo Gentile](http://github.com/SalvoGentile) and [Marco Patriarca](http://github.com/Fexys) +* adds `it` translation by [Salvo Gentile](https://github.com/SalvoGentile) and [Marco Patriarca](https://github.com/Fexys) * switches build process from scripp to wepp @@ -262,7 +263,7 @@ It profits from these great projects: ### v0.14.1 - *2011-09-01* * display meta information in bottom bar (icon view) -* adds `zh-cn` translation by [Dongsheng Cai](http://github.com/dongsheng) +* adds `zh-cn` translation by [Dongsheng Cai](https://github.com/dongsheng) * adds `pl` translation by Radosław Zając * adds `ru` translation by Богдан Илюхин @@ -296,13 +297,13 @@ It profits from these great projects: * changes value of option `lang` from `undefined` to `null` * adds some new keys to `h5aiLangs` * adds browser caching rules for css and js -* adds `pt` translation by [Jonnathan](http://github.com/jonnsl) +* adds `pt` translation by [Jonnathan](https://github.com/jonnsl) * adds `bg` translation by George Andonov ### v0.12.3 - *2011-07-30* -* adds `tr` translation by [Batuhan Icoz](http://github.com/batuhanicoz) +* adds `tr` translation by [Batuhan Icoz](https://github.com/batuhanicoz) ### v0.12.2 - *2011-07-30* @@ -338,9 +339,9 @@ It profits from these great projects: ### v0.10 - *2011-07-24* * fixes problems with XAMPP on Windows (see `dot.htaccess` comments for instructions) -* fixes tree fade-in-fade-out effect for small displays ([issue #6](http://github.com/lrsjng/h5ai/issues/6)) -* adds custom scrollbar to tree ([issue #6](http://github.com/lrsjng/h5ai/issues/6)) -* fixes broken links caused by URI encoding/decoding ([issue #9](http://github.com/lrsjng/h5ai/issues/9)) +* fixes tree fade-in-fade-out effect for small displays ([issue #6](https://github.com/lrsjng/h5ai/issues/6)) +* adds custom scrollbar to tree ([issue #6](https://github.com/lrsjng/h5ai/issues/6)) +* fixes broken links caused by URI encoding/decoding ([issue #9](https://github.com/lrsjng/h5ai/issues/9)) * adds "empty" to localization (hope Google Translate did a good job here) @@ -350,8 +351,8 @@ It profits from these great projects: * fixes size of tree view (now there's a ugly scrollbar, hopefully will be fixed) * refactores js to improve performance and cleaned code * adds caching for folder status codes and content -* adds `fr` translation by [Nicolas](http://github.com/Nicosmos) -* adds `nl` translation by [Stefan de Konink](http://github.com/skinkie) +* adds `fr` translation by [Nicolas](https://github.com/Nicosmos) +* adds `nl` translation by [Stefan de Konink](https://github.com/skinkie) * adds `sv` translation by Oscar Carlsson @@ -439,7 +440,7 @@ It profits from these great projects: ### v0.2.2 - *2011-06-16* * refactores a lot, adds some comments -* includes fixes from [NumEricR](http://github.com/NumEricR) +* includes fixes from [NumEricR](https://github.com/NumEricR) * adds top/bottom message support, only basicly styled From 571089cda48e34e89e86681960aee6d61fd8789d Mon Sep 17 00:00:00 2001 From: Lars Jung <lrsjng@gmail.com> Date: Wed, 4 Sep 2013 16:12:46 +0200 Subject: [PATCH 83/83] Prepares release. --- README.md | 2 +- package.json | 2 +- src/_h5ai/conf/options.json | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 2b638b23..99aa3ffc 100644 --- a/README.md +++ b/README.md @@ -54,7 +54,7 @@ It profits from these great projects: **h5ai** uses [semantic versioning](http://semver.org/). -### develop branch +### v0.24.0 - *2013-09-04* * updates image and text preview * adds variable icon sizes diff --git a/package.json b/package.json index 028a1094..b2c56528 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "h5ai", - "version": "0.23.0+", + "version": "0.24.0", "description": "a modern HTTP web server index", "url": "http://larsjung.de/h5ai/", "author": "Lars Jung", diff --git a/src/_h5ai/conf/options.json b/src/_h5ai/conf/options.json index 7058782e..12f3f40c 100644 --- a/src/_h5ai/conf/options.json +++ b/src/_h5ai/conf/options.json @@ -65,7 +65,7 @@ Options - interval: number, update interval in milliseconds, at least 1000 */ "autorefresh": { - "enabled": true, + "enabled": false, "interval": 5000 }, @@ -92,7 +92,7 @@ Options Allow file deletion. */ "delete": { - "enabled": true + "enabled": false }, /* [EXPERIMENTAL] @@ -103,7 +103,7 @@ Options - maxfilesize: number, file size is in MB */ "dropbox": { - "enabled": true, + "enabled": false, "maxfiles": 10, "maxfilesize": 1000 }, @@ -115,7 +115,7 @@ Options - packageName: basename of the download package, null for current foldername */ "download": { - "enabled": true, + "enabled": false, "type": "php-tar", "packageName": null }, @@ -137,7 +137,7 @@ Options Calc the size of folders. */ "foldersize": { - "enabled": true + "enabled": false }, /*