Make 'Refresh' update database list
Summary: Previously it only reloaded the current page. Reviewed By: danielbuechele Differential Revision: D15535168 fbshipit-source-id: b8252c24ffa74fdf22b2d4b6d5b7f99b40db8e47
This commit is contained in:
committed by
Facebook Github Bot
parent
592bd2671f
commit
b78fb88dd7
@@ -43,6 +43,7 @@ type DatabasesPluginState = {|
|
|||||||
selectedDatabaseTable: ?string,
|
selectedDatabaseTable: ?string,
|
||||||
pageRowNumber: number,
|
pageRowNumber: number,
|
||||||
databases: Array<DatabaseEntry>,
|
databases: Array<DatabaseEntry>,
|
||||||
|
outdatedDatabaseList: boolean,
|
||||||
viewMode: 'data' | 'structure',
|
viewMode: 'data' | 'structure',
|
||||||
error: ?null,
|
error: ?null,
|
||||||
currentPage: ?Page,
|
currentPage: ?Page,
|
||||||
@@ -316,6 +317,7 @@ export default class DatabasesPlugin extends FlipperPlugin<
|
|||||||
selectedDatabaseTable: null,
|
selectedDatabaseTable: null,
|
||||||
pageRowNumber: 0,
|
pageRowNumber: 0,
|
||||||
databases: [],
|
databases: [],
|
||||||
|
outdatedDatabaseList: true,
|
||||||
viewMode: 'data',
|
viewMode: 'data',
|
||||||
error: null,
|
error: null,
|
||||||
currentPage: null,
|
currentPage: null,
|
||||||
@@ -333,17 +335,25 @@ export default class DatabasesPlugin extends FlipperPlugin<
|
|||||||
const updates = results.databases;
|
const updates = results.databases;
|
||||||
const databases = updates;
|
const databases = updates;
|
||||||
const selectedDatabase =
|
const selectedDatabase =
|
||||||
state.selectedDatabase || Object.values(databases)[0]
|
state.selectedDatabase ||
|
||||||
|
(Object.values(databases)[0]
|
||||||
? // $FlowFixMe
|
? // $FlowFixMe
|
||||||
Object.values(databases)[0].id
|
Object.values(databases)[0].id
|
||||||
: 0;
|
: 0);
|
||||||
const selectedTable = databases[selectedDatabase - 1].tables[0];
|
const selectedTable =
|
||||||
|
state.selectedDatabaseTable &&
|
||||||
|
databases[selectedDatabase - 1].tables.includes(
|
||||||
|
state.selectedDatabaseTable,
|
||||||
|
)
|
||||||
|
? state.selectedDatabaseTable
|
||||||
|
: databases[selectedDatabase - 1].tables[0];
|
||||||
const sameTableSelected =
|
const sameTableSelected =
|
||||||
selectedDatabase === state.selectedDatabase &&
|
selectedDatabase === state.selectedDatabase &&
|
||||||
selectedTable === state.selectedDatabaseTable;
|
selectedTable === state.selectedDatabaseTable;
|
||||||
return {
|
return {
|
||||||
...state,
|
...state,
|
||||||
databases,
|
databases,
|
||||||
|
outdatedDatabaseList: false,
|
||||||
selectedDatabase: selectedDatabase,
|
selectedDatabase: selectedDatabase,
|
||||||
selectedDatabaseTable: selectedTable,
|
selectedDatabaseTable: selectedTable,
|
||||||
pageRowNumber: 0,
|
pageRowNumber: 0,
|
||||||
@@ -496,6 +506,7 @@ export default class DatabasesPlugin extends FlipperPlugin<
|
|||||||
): DatabasesPluginState => {
|
): DatabasesPluginState => {
|
||||||
return {
|
return {
|
||||||
...state,
|
...state,
|
||||||
|
outdatedDatabaseList: true,
|
||||||
currentPage: null,
|
currentPage: null,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
@@ -600,12 +611,19 @@ export default class DatabasesPlugin extends FlipperPlugin<
|
|||||||
this.setState({error: e});
|
this.setState({error: e});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
if (!previousState.outdatedDatabaseList && newState.outdatedDatabaseList) {
|
||||||
|
this.databaseClient.getDatabases({}).then(databases => {
|
||||||
|
this.dispatchAction({
|
||||||
|
type: 'UpdateDatabases',
|
||||||
|
databases,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
init() {
|
init() {
|
||||||
this.databaseClient = new DatabaseClient(this.client);
|
this.databaseClient = new DatabaseClient(this.client);
|
||||||
this.databaseClient.getDatabases({}).then(databases => {
|
this.databaseClient.getDatabases({}).then(databases => {
|
||||||
console.log(databases);
|
|
||||||
this.dispatchAction({
|
this.dispatchAction({
|
||||||
type: 'UpdateDatabases',
|
type: 'UpdateDatabases',
|
||||||
databases,
|
databases,
|
||||||
|
|||||||
Reference in New Issue
Block a user