diff --git a/packages/ecc-client-lit-ga4gh-tes/package.json b/packages/ecc-client-lit-ga4gh-tes/package.json index 35f49b2f..8757f99a 100644 --- a/packages/ecc-client-lit-ga4gh-tes/package.json +++ b/packages/ecc-client-lit-ga4gh-tes/package.json @@ -9,10 +9,7 @@ "types": "./dist/index.d.ts", "componentsPrefix": "ecc-client-lit-ga4gh-tes-", "exports": { - ".": { - "types": "./dist/index.d.ts", - "import": "./dist/index.js" - }, + ".": { "types": "./dist/index.d.ts", "import": "./dist/index.js" }, "./dist/custom-elements.json": "./dist/custom-elements.json", "./dist/index.js": "./dist/index.js", "./dist/components/*": "./dist/components/*", @@ -33,10 +30,7 @@ "lint:fix": "npm run lint -- --fix", "prepublish": "npm run build" }, - "dependencies": { - "@elixir-cloud/design": "*", - "lit": "^2.8.0" - }, + "dependencies": { "@elixir-cloud/design": "*", "lit": "^2.8.0" }, "devDependencies": { "@custom-elements-manifest/analyzer": "^0.4.17", "@open-wc/eslint-config": "^9.2.1", diff --git a/packages/ecc-client-lit-ga4gh-tes/src/components/runs/runs.ts b/packages/ecc-client-lit-ga4gh-tes/src/components/runs/runs.ts index a39b1bd2..d459d2c8 100644 --- a/packages/ecc-client-lit-ga4gh-tes/src/components/runs/runs.ts +++ b/packages/ecc-client-lit-ga4gh-tes/src/components/runs/runs.ts @@ -356,14 +356,14 @@ export default class ECCClientGa4ghTesRuns extends LitElement { } const { key } = detail; - const children = target.querySelectorAll(`[slot="${key}"]`); - const runData = await fetchTask(this.baseURL, detail.key); + const children = target!.shadowRoot?.querySelectorAll( + `slot[name='${key}']` + ); - if (this.cache.has(key)) return; - // Cache the run data if not present + const runData = await fetchTask(this.baseURL, detail.key); this.cache.set(key, runData); - if (children) { + if (children?.length) { try { const child = document.createElement("div"); child.setAttribute("slot", key); @@ -440,8 +440,11 @@ export default class ECCClientGa4ghTesRuns extends LitElement { @ecc-utils-page-change=${(event: CustomEvent) => { this._fetchData(event.detail.page); }} - @ecc-utils-expand=${(event: CustomEvent) => - this._handleExpandItem(event)} + @ecc-utils-expand=${(event: CustomEvent) => { + if (!this.cache.has(event.detail.key)) { + this._handleExpandItem(event); + } + }} > `; diff --git a/packages/ecc-client-lit-ga4gh-wes/src/components/runs/runs.ts b/packages/ecc-client-lit-ga4gh-wes/src/components/runs/runs.ts index dd303878..3f3bd4c6 100644 --- a/packages/ecc-client-lit-ga4gh-wes/src/components/runs/runs.ts +++ b/packages/ecc-client-lit-ga4gh-wes/src/components/runs/runs.ts @@ -343,14 +343,13 @@ export default class ECCClientGa4ghWesRuns extends LitElement { } const { key } = detail; - const children = target.querySelectorAll(`[slot="${key}"]`); + const children = target!.shadowRoot?.querySelectorAll( + `slot[name='${key}']` + ); const runData = await fetchWorkflow(this.baseURL, detail.key); - - if (this.cache.has(key)) return; - // Cache the run data if not present this.cache.set(key, runData); - if (children) { + if (children?.length) { try { const child = document.createElement("div"); child.setAttribute("slot", key); @@ -428,8 +427,11 @@ export default class ECCClientGa4ghWesRuns extends LitElement { @ecc-utils-page-change=${(event: CustomEvent) => { this._fetchData(event.detail.page); }} - @ecc-utils-expand=${(event: CustomEvent) => - this._handleExpandItem(event)} + @ecc-utils-expand=${(event: CustomEvent) => { + if (!this.cache.has(event.detail.key)) { + this._handleExpandItem(event); + } + }} > `;