-
${data.name}
+
+ ${data.name}
+ ${when(
+ data.resource && data.resource.replicas.length > 0,
+ () => html`
+
+ `
+ )}
+
${data.description}
diff --git a/frontend/src/pages/org/crawl-detail.ts b/frontend/src/pages/org/crawl-detail.ts
index ef599dcd..3bd209e3 100644
--- a/frontend/src/pages/org/crawl-detail.ts
+++ b/frontend/src/pages/org/crawl-detail.ts
@@ -157,10 +157,7 @@ export class CrawlDetail extends LiteElement {
});
break;
case "files":
- sectionContent = this.renderPanel(
- msg("Download Files"),
- this.renderFiles()
- );
+ sectionContent = this.renderPanel(msg("Files"), this.renderFiles());
break;
case "logs":
sectionContent = this.renderPanel(
@@ -799,6 +796,15 @@ ${this.crawl?.description}
+ ${when(
+ file.numReplicas > 0,
+ () => html`
+
+ `
+ )}
diff --git a/frontend/src/types/crawler.ts b/frontend/src/types/crawler.ts
index 3fa47211..c2a954fb 100644
--- a/frontend/src/types/crawler.ts
+++ b/frontend/src/types/crawler.ts
@@ -83,6 +83,11 @@ export type Workflow = CrawlConfig & {
export type ListWorkflow = Omit
;
+export type ProfileReplica = {
+ name: string;
+ custom?: boolean;
+};
+
export type Profile = {
id: string;
name: string;
@@ -93,6 +98,13 @@ export type Profile = {
baseProfileName: string;
oid: string;
crawlconfigs: { id: string; name: string }[];
+ resource?: {
+ name: string;
+ path: string;
+ hash: string;
+ size: number;
+ replicas: ProfileReplica[];
+ };
};
export type CrawlState =
@@ -124,7 +136,13 @@ export type Crawl = CrawlConfig & {
state: CrawlState;
scale: number;
stats: { done: string; found: string; size: string } | null;
- resources?: { name: string; path: string; hash: string; size: number }[];
+ resources?: {
+ name: string;
+ path: string;
+ hash: string;
+ size: number;
+ numReplicas: number;
+ }[];
fileCount?: number;
fileSize?: number;
completions?: number;