diff --git a/app/modules/tenancy/static/merchant/js/merchant-team.js b/app/modules/tenancy/static/merchant/js/merchant-team.js index f02176fa..b7db4dd5 100644 --- a/app/modules/tenancy/static/merchant/js/merchant-team.js +++ b/app/modules/tenancy/static/merchant/js/merchant-team.js @@ -131,6 +131,21 @@ function merchantTeam() { ); }, + /** + * Flatten members + their stores into a single row list for table rendering. + * Each row is either {type:'member', member, key} or {type:'store', member, store, key} + */ + get flattenedRows() { + const rows = []; + for (const member of this.filteredMembers) { + rows.push({ type: 'member', member, key: `m-${member.user_id}` }); + for (const store of member.stores) { + rows.push({ type: 'store', member, store, key: `s-${member.user_id}-${store.store_id}` }); + } + } + return rows; + }, + /** * Toggle expand/collapse for a member's store rows */ diff --git a/app/modules/tenancy/templates/tenancy/merchant/team.html b/app/modules/tenancy/templates/tenancy/merchant/team.html index b5c61c8c..cfed7e6f 100644 --- a/app/modules/tenancy/templates/tenancy/merchant/team.html +++ b/app/modules/tenancy/templates/tenancy/merchant/team.html @@ -87,157 +87,138 @@ -