From 70909a0dd465c6c5783777ec5970b0b5912192ea Mon Sep 17 00:00:00 2001 From: Jakob Vogel Date: Mon, 27 Feb 2023 22:50:21 +0100 Subject: [PATCH 01/23] =?UTF-8?q?Cleans=20up=20(currently=20unused)=20menu?= =?UTF-8?q?=20logo=20=F0=9F=A7=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit SIRI-721 --- src/main/resources/assets/images/menu_logo.svg | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/resources/assets/images/menu_logo.svg b/src/main/resources/assets/images/menu_logo.svg index c999e49..3a0f98f 100644 --- a/src/main/resources/assets/images/menu_logo.svg +++ b/src/main/resources/assets/images/menu_logo.svg @@ -1 +1,5 @@ -s3_ninja_menu \ No newline at end of file + + + From e58168e1220d35766750b0531ba76fc5101e928d Mon Sep 17 00:00:00 2001 From: Jakob Vogel Date: Mon, 27 Feb 2023 23:05:57 +0100 Subject: [PATCH 02/23] =?UTF-8?q?Bumps=20sirius=20=F0=9F=AA=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit SIRI-721 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index c7ecbb8..2a736a5 100644 --- a/pom.xml +++ b/pom.xml @@ -16,8 +16,8 @@ http://s3ninja.net - dev-34.8.0 - dev-63.0.1 + dev-35.0.0 + dev-64.0.0 From 9ff02359e3c4e0a253ea93642deb6d82810660fd Mon Sep 17 00:00:00 2001 From: Jakob Vogel Date: Tue, 28 Feb 2023 15:31:58 +0100 Subject: [PATCH 03/23] =?UTF-8?q?Sorts=20buckets=20by=20name=20?= =?UTF-8?q?=F0=9F=92=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit SIRI-721 --- src/main/java/ninja/Storage.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/ninja/Storage.java b/src/main/java/ninja/Storage.java index f1bbd28..38e9a28 100644 --- a/src/main/java/ninja/Storage.java +++ b/src/main/java/ninja/Storage.java @@ -104,6 +104,8 @@ public List getBuckets() { } } + result.sort((bucket1, bucket2) -> bucket1.getName().compareToIgnoreCase(bucket2.getName())); + return result; } From 332660d9f2603957667e89a8768253dc5cd7a890 Mon Sep 17 00:00:00 2001 From: Jakob Vogel Date: Tue, 28 Feb 2023 15:44:47 +0100 Subject: [PATCH 04/23] =?UTF-8?q?Migrates=20UI=20to=20Tycho=20=F0=9F=9A=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit SIRI-721 --- src/main/java/ninja/APILog.java | 6 +- src/main/resources/application.conf | 2 +- .../resources/assets/images/menu_logo.png | Bin 8288 -> 0 bytes .../assets/images/{logo.png => ninja.png} | Bin .../resources/assets/stylesheets/custom.scss | 90 ------ .../assets/{ => tycho}/images/favicon.ico | Bin .../assets/{ => tycho}/images/menu_logo.svg | 2 +- .../resources/assets/tycho/styles/custom.scss | 3 + .../tycho-page-menu/menu.html.pasta | 14 + .../wondergem-page-menu/menu.html.pasta | 14 - src/main/resources/templates/api.html.pasta | 17 +- .../resources/templates/bucket.html.pasta | 110 ++++--- .../resources/templates/footer.html.pasta | 11 +- .../resources/templates/header.html.pasta | 37 ++- src/main/resources/templates/index.html.pasta | 276 ++++++++++-------- .../resources/templates/license.html.pasta | 15 +- src/main/resources/templates/log.html.pasta | 78 +++-- 17 files changed, 349 insertions(+), 326 deletions(-) delete mode 100644 src/main/resources/assets/images/menu_logo.png rename src/main/resources/assets/images/{logo.png => ninja.png} (100%) delete mode 100644 src/main/resources/assets/stylesheets/custom.scss rename src/main/resources/assets/{ => tycho}/images/favicon.ico (100%) rename src/main/resources/assets/{ => tycho}/images/menu_logo.svg (99%) create mode 100644 src/main/resources/assets/tycho/styles/custom.scss create mode 100644 src/main/resources/extensions/tycho-page-menu/menu.html.pasta delete mode 100644 src/main/resources/extensions/wondergem-page-menu/menu.html.pasta diff --git a/src/main/java/ninja/APILog.java b/src/main/java/ninja/APILog.java index ad83b9f..bae9ec1 100644 --- a/src/main/java/ninja/APILog.java +++ b/src/main/java/ninja/APILog.java @@ -108,13 +108,13 @@ public String getTod() { */ public String getCSS() { if ("ERROR".equals(result)) { - return "error"; + return "sci-left-border-red"; } if ("REJECTED".equals(result)) { - return "warning"; + return "sci-left-border-yellow"; } - return ""; + return "sci-left-border-gray"; } } diff --git a/src/main/resources/application.conf b/src/main/resources/application.conf index 7d35c34..e9066dd 100644 --- a/src/main/resources/application.conf +++ b/src/main/resources/application.conf @@ -14,7 +14,7 @@ product { vcs = "${build.vcs.number}" tagLine = "S3 ninja emulates the S3 API for development and testing purposes." claim = "It is however not intended as production system as it neither provides scalability nor replication or proper security." - wondergemRoot = "/ui" + tychoRoot = "/ui" } http { diff --git a/src/main/resources/assets/images/menu_logo.png b/src/main/resources/assets/images/menu_logo.png deleted file mode 100644 index ad46f53c270dfe5caf3cf78d40bbe3db14962471..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8288 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 diff --git a/src/main/resources/assets/images/logo.png b/src/main/resources/assets/images/ninja.png similarity index 100% rename from src/main/resources/assets/images/logo.png rename to src/main/resources/assets/images/ninja.png diff --git a/src/main/resources/assets/stylesheets/custom.scss b/src/main/resources/assets/stylesheets/custom.scss deleted file mode 100644 index 4ed24f5..0000000 --- a/src/main/resources/assets/stylesheets/custom.scss +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Made with all the love in the world - * by scireum in Remshalden, Germany - * - * Copyright by scireum GmbH - * http://www.scireum.de - info@scireum.de - */ - -$primary-color: #9d2011; -$accent-color: $primary-color; -$linkColor: $primary-color; - -/* - * Fixes the margin set by .help-block for checkboxes - */ -.checkbox-help { - margin-top: 0; -} - -/* - * Sets the background color for required fields - */ -input.required { - background-color: #ffffef; -} - -/* - * Table columns with right alignment - */ -table td.align-right, table th.align-right, .align-right { - text-align: right; -} - -/* - * Table columns with centered alignment - */ -table td.align-center, table th.align-center, .align-center { - text-align: center; -} - -/* - * Removes the bottom margin of inline forms within wells - */ -.well .form-inline { - margin: 0; -} - -/* - * Used for thumbnails in tables or lists - */ -.list-thumbnail { - display: inline-block; - max-width: 140px; - max-height: 80px; -} - -.header { - min-height: 218px; - padding-top: 20px; - padding-bottom: 20px; - font-family: "Helvetica Neue", "Helvetica", sans-serif; - - h1 { - font-size: 60px; - line-height: 1; - text-align: left; - } - .lead { - color: #7D7E80; - font-size: 24px; - line-height: 1.25; - text-align: left; - } -} - -img#ninja { - max-height: 178px; -} - -#create-bucket .input-group { - .error { - border-color: $primary-color; - background-color: transparentize($primary-color, 0.9); - } - - .input-group-addon:hover { - cursor: pointer; - background-color: #858689; - } -} diff --git a/src/main/resources/assets/images/favicon.ico b/src/main/resources/assets/tycho/images/favicon.ico similarity index 100% rename from src/main/resources/assets/images/favicon.ico rename to src/main/resources/assets/tycho/images/favicon.ico diff --git a/src/main/resources/assets/images/menu_logo.svg b/src/main/resources/assets/tycho/images/menu_logo.svg similarity index 99% rename from src/main/resources/assets/images/menu_logo.svg rename to src/main/resources/assets/tycho/images/menu_logo.svg index 3a0f98f..267b410 100644 --- a/src/main/resources/assets/images/menu_logo.svg +++ b/src/main/resources/assets/tycho/images/menu_logo.svg @@ -1,5 +1,5 @@ - diff --git a/src/main/resources/assets/tycho/styles/custom.scss b/src/main/resources/assets/tycho/styles/custom.scss new file mode 100644 index 0000000..7950f9f --- /dev/null +++ b/src/main/resources/assets/tycho/styles/custom.scss @@ -0,0 +1,3 @@ +$primary-color: #9d2011; +$accent-color: $primary-color; +$linkColor: $primary-color; diff --git a/src/main/resources/extensions/tycho-page-menu/menu.html.pasta b/src/main/resources/extensions/tycho-page-menu/menu.html.pasta new file mode 100644 index 0000000..e752f59 --- /dev/null +++ b/src/main/resources/extensions/tycho-page-menu/menu.html.pasta @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/src/main/resources/extensions/wondergem-page-menu/menu.html.pasta b/src/main/resources/extensions/wondergem-page-menu/menu.html.pasta deleted file mode 100644 index 3c70f72..0000000 --- a/src/main/resources/extensions/wondergem-page-menu/menu.html.pasta +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - diff --git a/src/main/resources/templates/api.html.pasta b/src/main/resources/templates/api.html.pasta index 9112e92..570c286 100644 --- a/src/main/resources/templates/api.html.pasta +++ b/src/main/resources/templates/api.html.pasta @@ -1,16 +1,21 @@ - - + + +
  • + Supported API +
  • +
    - +
    -
    +

    Basically all object methods are supported. However, no ACLs are checked. If the bucket is public, everyone can access its contents. Otherwise, a valid hash has to be provided as Authorization header. The hash will be checked as - expected by amazon, but no multiline-headers are supported yet. (Multi-value headers are supported). + expected by amazon, but no multiline-headers are supported yet. (Multi-value headers are supported.)

    Supported Methods