Skip to content

Commit

Permalink
Merge pull request #3 from trusz/pr/danyill/1287-1
Browse files Browse the repository at this point in the history
ref: separate ui and business logic
  • Loading branch information
danyill committed Sep 25, 2023
2 parents ace451a + 2664171 commit f3fb3b1
Showing 1 changed file with 17 additions and 18 deletions.
35 changes: 17 additions & 18 deletions src/editors/IED.ts
Original file line number Diff line number Diff line change
Expand Up @@ -129,12 +129,22 @@ export default class IedPlugin extends LitElement {
this.selectedIEDs = [iedName];
}
}
this.selectedLNClasses = this.lnClassList.map(
lnClassInfo => lnClassInfo[0]
);
}
}

private calcSelectedLNClasses(): string[] {
const somethingSelected = this.selectedLNClasses.length > 0;
const lnClasses = this.lnClassList.map( lnClassInfo => lnClassInfo[0] );

let selectedLNClasses = lnClasses;

if(somethingSelected){
selectedLNClasses = lnClasses.filter( lnClass => this.selectedLNClasses.includes(lnClass));
}

return selectedLNClasses;
}

render(): TemplateResult {
const iedList = this.iedList;
if (iedList.length > 0) {
Expand Down Expand Up @@ -165,9 +175,7 @@ export default class IedPlugin extends LitElement {
this.lNClassListOpenedOnce = false;
this.selectedIEDs = e.detail.selectedItems;
this.selectedLNClasses = this.lnClassList.map(
lnClassInfo => lnClassInfo[0]
);
this.selectedLNClasses = [];
this.requestUpdate('selectedIed');
}}"
>
Expand Down Expand Up @@ -195,17 +203,9 @@ export default class IedPlugin extends LitElement {
multi="true"
.header="${translate('iededitor.lnFilter')}"
@selected-items-changed="${(e: SelectedItemsChangedEvent) => {
let selectedItems = e.detail.selectedItems;
const nothingSelected = selectedItems.length === 0;
if (nothingSelected) {
selectedItems = this.lnClassList.map(
lnClassInfo => lnClassInfo[0]
);
}
this.selectedLNClasses = selectedItems;
this.selectedLNClasses = e.detail.selectedItems;
this.requestUpdate('selectedIed');
this.lNClassListOpenedOnce = true;
}}"
>
<span slot="icon">${getIcon('lNIcon')}</span>
Expand All @@ -214,8 +214,7 @@ export default class IedPlugin extends LitElement {
const label = lnClassInfo[1];
return html`<mwc-check-list-item
value="${value}"
?selected="${this.lNClassListOpenedOnce &&
this.selectedLNClasses.includes(value)}"
?selected="${this.selectedLNClasses.includes(value)}"
>
${label}
</mwc-check-list-item>`;
Expand All @@ -229,7 +228,7 @@ export default class IedPlugin extends LitElement {
.editCount=${this.editCount}
.doc=${this.doc}
.element=${this.selectedIed}
.selectedLNClasses=${this.selectedLNClasses}
.selectedLNClasses=${this.calcSelectedLNClasses()}
.nsdoc=${this.nsdoc}
></ied-container>
</section>`;
Expand Down

0 comments on commit f3fb3b1

Please sign in to comment.