11import {
22 DbConfig ,
3+ ExpandedDbItem ,
34 ExpandedDbItemKind ,
45 LocalDatabase ,
56 LocalList ,
@@ -18,15 +19,18 @@ import {
1819 RootRemoteDbItem ,
1920} from "./db-item" ;
2021
21- export function createRemoteTree ( dbConfig : DbConfig ) : RootRemoteDbItem {
22+ export function createRemoteTree (
23+ dbConfig : DbConfig ,
24+ expandedItems : ExpandedDbItem [ ] ,
25+ ) : RootRemoteDbItem {
2226 const systemDefinedLists = [
2327 createSystemDefinedList ( 10 , dbConfig ) ,
2428 createSystemDefinedList ( 100 , dbConfig ) ,
2529 createSystemDefinedList ( 1000 , dbConfig ) ,
2630 ] ;
2731
2832 const userDefinedRepoLists = dbConfig . databases . remote . repositoryLists . map (
29- ( r ) => createRemoteUserDefinedList ( r , dbConfig ) ,
33+ ( r ) => createRemoteUserDefinedList ( r , dbConfig , expandedItems ) ,
3034 ) ;
3135 const owners = dbConfig . databases . remote . owners . map ( ( o ) =>
3236 createOwnerItem ( o , dbConfig ) ,
@@ -35,9 +39,9 @@ export function createRemoteTree(dbConfig: DbConfig): RootRemoteDbItem {
3539 createRepoItem ( r , dbConfig ) ,
3640 ) ;
3741
38- const expanded =
39- dbConfig . expanded &&
40- dbConfig . expanded . some ( ( e ) => e . kind === ExpandedDbItemKind . RootRemote ) ;
42+ const expanded = expandedItems . some (
43+ ( e ) => e . kind === ExpandedDbItemKind . RootRemote ,
44+ ) ;
4145
4246 return {
4347 kind : DbItemKind . RootRemote ,
@@ -51,17 +55,20 @@ export function createRemoteTree(dbConfig: DbConfig): RootRemoteDbItem {
5155 } ;
5256}
5357
54- export function createLocalTree ( dbConfig : DbConfig ) : RootLocalDbItem {
58+ export function createLocalTree (
59+ dbConfig : DbConfig ,
60+ expandedItems : ExpandedDbItem [ ] ,
61+ ) : RootLocalDbItem {
5562 const localLists = dbConfig . databases . local . lists . map ( ( l ) =>
56- createLocalList ( l , dbConfig ) ,
63+ createLocalList ( l , dbConfig , expandedItems ) ,
5764 ) ;
5865 const localDbs = dbConfig . databases . local . databases . map ( ( l ) =>
5966 createLocalDb ( l , dbConfig ) ,
6067 ) ;
6168
62- const expanded =
63- dbConfig . expanded &&
64- dbConfig . expanded . some ( ( e ) => e . kind === ExpandedDbItemKind . RootLocal ) ;
69+ const expanded = expandedItems . some (
70+ ( e ) => e . kind === ExpandedDbItemKind . RootLocal ,
71+ ) ;
6572
6673 return {
6774 kind : DbItemKind . RootLocal ,
@@ -93,19 +100,18 @@ function createSystemDefinedList(
93100function createRemoteUserDefinedList (
94101 list : RemoteRepositoryList ,
95102 dbConfig : DbConfig ,
103+ expandedItems : ExpandedDbItem [ ] ,
96104) : RemoteUserDefinedListDbItem {
97105 const selected =
98106 dbConfig . selected &&
99107 dbConfig . selected . kind === SelectedDbItemKind . RemoteUserDefinedList &&
100108 dbConfig . selected . listName === list . name ;
101109
102- const expanded =
103- dbConfig . expanded &&
104- dbConfig . expanded . some (
105- ( e ) =>
106- e . kind === ExpandedDbItemKind . RemoteUserDefinedList &&
107- e . listName === list . name ,
108- ) ;
110+ const expanded = expandedItems . some (
111+ ( e ) =>
112+ e . kind === ExpandedDbItemKind . RemoteUserDefinedList &&
113+ e . listName === list . name ,
114+ ) ;
109115
110116 return {
111117 kind : DbItemKind . RemoteUserDefinedList ,
@@ -148,19 +154,21 @@ function createRepoItem(
148154 } ;
149155}
150156
151- function createLocalList ( list : LocalList , dbConfig : DbConfig ) : LocalListDbItem {
157+ function createLocalList (
158+ list : LocalList ,
159+ dbConfig : DbConfig ,
160+ expandedItems : ExpandedDbItem [ ] ,
161+ ) : LocalListDbItem {
152162 const selected =
153163 dbConfig . selected &&
154164 dbConfig . selected . kind === SelectedDbItemKind . LocalUserDefinedList &&
155165 dbConfig . selected . listName === list . name ;
156166
157- const expanded =
158- dbConfig . expanded &&
159- dbConfig . expanded . some (
160- ( e ) =>
161- e . kind === ExpandedDbItemKind . LocalUserDefinedList &&
162- e . listName === list . name ,
163- ) ;
167+ const expanded = expandedItems . some (
168+ ( e ) =>
169+ e . kind === ExpandedDbItemKind . LocalUserDefinedList &&
170+ e . listName === list . name ,
171+ ) ;
164172
165173 return {
166174 kind : DbItemKind . LocalList ,
0 commit comments