diff --git a/src/store/page.tsx b/src/store/page.tsx
index 74926e2..a3269e1 100644
--- a/src/store/page.tsx
+++ b/src/store/page.tsx
@@ -1,4 +1,7 @@
-import { Component, Fragment } from "react";
+import { Component } from "react";
+import { HiDownload } from "react-icons/hi";
+
+import { PanelSectionRow, PanelSection, Focusable, staticClasses, DialogButton } from "decky-frontend-lib";
import * as backend from "../backend";
import { tr } from "usdpl-front";
@@ -22,27 +25,84 @@ export class StoreResultsPage extends Component {
if (storeItems) {
if (storeItems.length == 0) {
backend.log(backend.LogLevel.Warn, "No store results; got array with length 0 from cache");
- return (
+ return (
{ tr("No results") /* TODO translate */ }
- );
+ );
} else {
// TODO
- return storeItems.map((meta: backend.StoreMetadata) => {
-
-
{ meta.name }
-
{ tr("Created by") /* TODO translate */} { meta.steam_username }
-
{ meta.tags.map((tag: string) => {tag}) }
- Hey NG you should finish this page
-
- });
+ return (
+ {
+ storeItems.map((meta: backend.StoreMetadata) => {
+
+
+ {
+ backend.log(backend.LogLevel.Info, "Downloading settings " + meta.name + " (" + meta.id + ")");
+ backend.storeDownloadById(meta.id);
+ }}
+ >
+ { /* TODO make this responsive when clicked */}
+
+
+
+
+ { meta.name }
+
+
+ { tr("Created by") /* TODO translate */} { meta.steam_username }
+
+
+ { meta.tags.map((tag: string) => (
+ {tag}
+ )
+ ) }
+
+
+
+
+ })
+ }
+ );
}
} else {
backend.log(backend.LogLevel.Warn, "Store failed to load; got null from cache");
// store did not pre-load when the game started
- return (
+ return (
{ tr("Store failed to load") /* TODO translate */ }
- );
+ );
}
}
}