Mercurial > hg > ng2-query-ismi
diff src/app/query-state.ts @ 57:d7c947909ab8 ng2-table
renamed query-app.module to app.module. loading query from url fragment works now.
author | casties |
---|---|
date | Wed, 29 Mar 2017 17:16:10 +0200 |
parents | 308c96f734c8 |
children |
line wrap: on
line diff
--- a/src/app/query-state.ts Tue Mar 28 20:03:36 2017 +0200 +++ b/src/app/query-state.ts Wed Mar 29 17:16:10 2017 +0200 @@ -21,6 +21,9 @@ public resultColumns: any[]; + /** + * Sets the query state from a string. + */ setStateFromString(newStateString: string) { try { // state string is json @@ -32,15 +35,17 @@ // step is an array [mode, params] if (!Array.isArray(elem)) return; let mode = elem[0]; + // get QueryMode object let qm: QueryMode = getQueryModeById(mode); let params = elem[1]; if (qm != null && params != null) { + // construct QueryStep let qs = new QueryStep(qm, params); newSteps.push(qs); } }); if (newSteps.length > 0) { - // set state + // set new state this.steps = newSteps; } } catch (e) { @@ -53,6 +58,15 @@ } /** + * Returns the current query state as a string. + */ + getStateAsString(): string { + let stateList = this.steps.map((qs) => [qs.mode.id, qs.params]); + let stateStr = JSON.stringify(stateList); + return stateStr; + } + + /** * Returns the cypher query as text for display. */ getQueryText() {