-- Leo's gemini proxy

-- Connecting to git.thebackupbox.net:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini

repo: janusweb
action: commit
revision:
path_from:
revision_from: 4a5b288ce4efd54a5bc2d08a1964909d660fcb3e:
path_to:
revision_to:

git.thebackupbox.net

janusweb

git://git.thebackupbox.net/janusweb

commit 4a5b288ce4efd54a5bc2d08a1964909d660fcb3e
Author: James Baicoianu <james_github@baicoianu.com>
Date:   Tue Aug 4 00:54:42 2020 -0700

    Added room assets to inventory

diff --git a/media/assets/webui/apps/inventory/inventory.css b/media/assets/webui/apps/inventory/inventory.css

index aea895d1d6623670203d4bbc3a1e270241ca31e9..

index ..221dbf9c70937f49fa4a6225e48e72ffc2526b07 100644

--- a/media/assets/webui/apps/inventory/inventory.css
+++ b/media/assets/webui/apps/inventory/inventory.css
@@ -41,9 +41,11 @@ ui-grid.models>* h3 {
 }
 ui-grid.models>* img {
   width: 100%;
+  max-height: 100%;
   border-radius: .5em;
   margin: 0 auto;
   display: block;
+  object-fit: contain;
 }
 ui-grid.models>* a {
   margin: 0;
@@ -97,3 +99,15 @@ janus-ui-inventory ui-flexpanel {
   max-height: 20vh;
   width: 100%;
 }
+
+janus-ui-inventory-roomassets {
+  display: block;
+  height: 20vh;
+  overflow-x: hidden;
+  overflow-y: scroll;
+}
+janus-ui-inventory-roomassets ui-grid.models {
+  height: auto;
+  overflow-x: visible;
+  overflow-y: visible;
+}
diff --git a/media/assets/webui/apps/inventory/inventory.html b/media/assets/webui/apps/inventory/inventory.html

index 05bdc8c6b9c324e90bdb1b6c9534c5ebface416e..

index ..cbe174c23fced6024d1a3136db37b070d7bfebd0 100644

--- a/media/assets/webui/apps/inventory/inventory.html
+++ b/media/assets/webui/apps/inventory/inventory.html
@@ -34,6 +34,9 @@
           <ui-item><a href="janus:light/light_cone_angle=1">directional light</a></ui-item>
         </ui-grid>
       </ui-tab>
+      <ui-tab label="Room Assets">
+        <janus-ui-inventory-roomassets></janus-ui-inventory-roomassets>
+      </ui-tab>
       <ui-tab label="Google Poly">
         <ui-flexpanel id="poly" vertical>
           <ui-input noflex placeholder="Search for Google Poly models" onaccept="let models = document.getElementById('models'); models.apiargs.keywords = this.value; delete models.apiargs.pageToken; document.getElementById('itemlist').clear(); models.load(); pagination.disabled = false;"></ui-input>
diff --git a/media/assets/webui/apps/inventory/inventory.js b/media/assets/webui/apps/inventory/inventory.js

index ed330aa96e6f6cdb5ad0feb5fc2f1fb20df1fec6..

index ..6f1fa542ee275f51c2b1bf85d45679c50ef0ab32 100644

--- a/media/assets/webui/apps/inventory/inventory.js
+++ b/media/assets/webui/apps/inventory/inventory.js
@@ -41,3 +41,42 @@ elation.elements.define('janus.ui.inventory.item.poly', class extends elation.el
     elation.events.add(this, 'click', (ev) => this.click(ev));
   }
 });
+elation.elements.define('janus.ui.inventory.roomassets', class extends elation.elements.base {
+  create() {
+    this.elements = elation.elements.fromTemplate('janus.ui.inventory.roomassets', this);
+  }
+});
+elation.elements.define('janus.ui.inventory.roomassets.list', class extends elation.elements.base {
+  constructor() {
+    super();
+    this.defineAttribute('assettype', { type: 'string' });
+  }
+  create() {
+    this.list = elation.elements.create('ui-grid', {
+      append: this,
+      class: 'models',
+      selectable: 1,
+      draggable: 1,
+      itemcomponent: 'janus.ui.inventory.item.roomasset',
+    });
+    this.updateList();
+    elation.events.add(janus._target, 'room_change', (ev) => this.updateList());
+  }
+  updateList() {
+    this.list.clear();
+    this.list.innerHTML = '';
+    this.list.setItems(this.getAssetList());
+  }
+  getAssetList() {
+    if (room.assetpack.assetmap[this.assettype]) {
+      return room.assetpack.assetmap[this.assettype];
+    }
+    return {};
+  }
+});
+elation.elements.define('janus.ui.inventory.item.roomasset', class extends elation.elements.ui.item {
+  create() {
+    let elements = elation.elements.fromTemplate('janus.ui.inventory.item.roomasset', this);
+    elation.events.add(this, 'click', (ev) => this.click(ev));
+  }
+});
diff --git a/media/assets/webui/apps/inventory/inventory.json b/media/assets/webui/apps/inventory/inventory.json

index 99d9519a0a6e588bb3fa5203f89a5d1dac5e4f1b..

index ..939d7389cbefa5cfaed200d63c3880d91889b19a 100644

--- a/media/assets/webui/apps/inventory/inventory.json
+++ b/media/assets/webui/apps/inventory/inventory.json
@@ -1,7 +1,9 @@
 {
   "templates": {
     "janus.ui.inventory": "./inventory.html",
-    "janus.ui.inventory.item.poly": "./inventory-item-poly.html"
+    "janus.ui.inventory.roomassets": "./roomassets.html",
+    "janus.ui.inventory.item.poly": "./inventory-item-poly.html",
+    "janus.ui.inventory.item.roomasset": "./inventory-item-roomasset.html"
   },
   "scripts":  ["./inventory.js"],
   "css":      ["./inventory.css"],

-----END OF PAGE-----

-- Response ended

-- Page fetched on Sun Jun 2 17:02:10 2024