mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-19 11:01:38 -05:00
Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
84009f65ec | ||
|
|
191648df0a | ||
|
|
1265a56ff4 | ||
|
|
2171d44922 | ||
|
|
812f315e69 | ||
|
|
d48258a0fb | ||
|
|
8ec78f67af | ||
|
|
348b03327e | ||
|
|
6497bbcc38 | ||
|
|
a1abca26df |
@@ -32,7 +32,7 @@ export class DeployConfigPage extends DacFxConfigPage {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async start(): Promise<boolean> {
|
async start(): Promise<boolean> {
|
||||||
let serverComponent = await this.createServerDropdown(true);
|
let serverComponent = await this.createServerDropdown(true);
|
||||||
let fileBrowserComponent = await this.createFileBrowser();
|
let fileBrowserComponent = await this.createFileBrowser();
|
||||||
this.databaseComponent = await this.createDatabaseTextBox();
|
this.databaseComponent = await this.createDatabaseTextBox();
|
||||||
this.databaseComponent.title = localize('dacFx.databaseNameTextBox', 'Database Name');
|
this.databaseComponent.title = localize('dacFx.databaseNameTextBox', 'Database Name');
|
||||||
@@ -131,7 +131,7 @@ export class DeployConfigPage extends DacFxConfigPage {
|
|||||||
this.model.database = this.databaseTextBox.value;
|
this.model.database = this.databaseTextBox.value;
|
||||||
});
|
});
|
||||||
|
|
||||||
// Initialize with upgrade existing true
|
//Initialize with upgrade existing true
|
||||||
upgradeRadioButton.checked = true;
|
upgradeRadioButton.checked = true;
|
||||||
this.model.upgradeExisting = true;
|
this.model.upgradeExisting = true;
|
||||||
|
|
||||||
@@ -149,10 +149,10 @@ export class DeployConfigPage extends DacFxConfigPage {
|
|||||||
}
|
}
|
||||||
|
|
||||||
protected async createDeployDatabaseDropdown(): Promise<sqlops.FormComponent> {
|
protected async createDeployDatabaseDropdown(): Promise<sqlops.FormComponent> {
|
||||||
this.databaseDropdown = this.view.modelBuilder.dropDown().withProperties({
|
this.databaseDropdown = this.view.modelBuilder.dropDown().withProperties({
|
||||||
required: true
|
required: true
|
||||||
}).component();
|
}).component();
|
||||||
// Handle database changes
|
//Handle database changes
|
||||||
this.databaseDropdown.onValueChanged(async () => {
|
this.databaseDropdown.onValueChanged(async () => {
|
||||||
this.model.database = (<sqlops.CategoryValue>this.databaseDropdown.value).name;
|
this.model.database = (<sqlops.CategoryValue>this.databaseDropdown.value).name;
|
||||||
});
|
});
|
||||||
@@ -172,7 +172,8 @@ export class DeployConfigPage extends DacFxConfigPage {
|
|||||||
}
|
}
|
||||||
let values = await this.getDatabaseValues();
|
let values = await this.getDatabaseValues();
|
||||||
|
|
||||||
if (this.model.database === undefined) {
|
//set the database to the first dropdown value if upgrading, otherwise it should get set to the textbox value
|
||||||
|
if (this.model.upgradeExisting) {
|
||||||
this.model.database = values[0].name;
|
this.model.database = values[0].name;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -105,10 +105,12 @@
|
|||||||
background: url('clear-search-results.svg');
|
background: url('clear-search-results.svg');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
.vs-dark .search-action.clear-search-results,
|
.vs-dark .search-action.clear-search-results,
|
||||||
.hc-black .search-action.clear-search-results {
|
.hc-black .search-action.clear-search-results {
|
||||||
background: url('clear-search-results-dark.svg');
|
background: url('clear-search-results-dark.svg');
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
.connection-details-title {
|
.connection-details-title {
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
|
|||||||
@@ -168,8 +168,7 @@ export const DashboardModule = (params, selector: string, instantiationService:
|
|||||||
if (e instanceof NavigationEnd) {
|
if (e instanceof NavigationEnd) {
|
||||||
this.navigations++;
|
this.navigations++;
|
||||||
TelemetryUtils.addTelemetry(this.telemetryService, TelemetryKeys.DashboardNavigated, {
|
TelemetryUtils.addTelemetry(this.telemetryService, TelemetryKeys.DashboardNavigated, {
|
||||||
numberOfNavigations: this.navigations,
|
numberOfNavigations: this.navigations
|
||||||
routeUrl: e.url
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -343,6 +343,9 @@ export class EditDataComponent extends GridParentComponent implements OnInit, On
|
|||||||
handleResultSet(self: EditDataComponent, event: any): void {
|
handleResultSet(self: EditDataComponent, event: any): void {
|
||||||
// Clone the data before altering it to avoid impacting other subscribers
|
// Clone the data before altering it to avoid impacting other subscribers
|
||||||
let resultSet = Object.assign({}, event.data);
|
let resultSet = Object.assign({}, event.data);
|
||||||
|
if (!resultSet.complete) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// Add an extra 'new row'
|
// Add an extra 'new row'
|
||||||
resultSet.rowCount++;
|
resultSet.rowCount++;
|
||||||
|
|||||||
@@ -308,7 +308,7 @@ let registryProperties = {
|
|||||||
'sql.results.streaming': {
|
'sql.results.streaming': {
|
||||||
'type': 'boolean',
|
'type': 'boolean',
|
||||||
'description': localize('sql.results.streaming', 'Enable results streaming; contains few minor visual issues'),
|
'description': localize('sql.results.streaming', 'Enable results streaming; contains few minor visual issues'),
|
||||||
'default': true
|
'default': false
|
||||||
},
|
},
|
||||||
'sql.copyIncludeHeaders': {
|
'sql.copyIncludeHeaders': {
|
||||||
'type': 'boolean',
|
'type': 'boolean',
|
||||||
|
|||||||
@@ -88,7 +88,8 @@ export class GridTableState extends Disposable {
|
|||||||
private _canBeMaximized: boolean;
|
private _canBeMaximized: boolean;
|
||||||
|
|
||||||
/* The top row of the current scroll */
|
/* The top row of the current scroll */
|
||||||
public scrollPosition = 0;
|
public scrollPositionY = 0;
|
||||||
|
public scrollPositionX = 0;
|
||||||
public selection: Slick.Range[];
|
public selection: Slick.Range[];
|
||||||
public activeCell: Slick.Cell;
|
public activeCell: Slick.Cell;
|
||||||
|
|
||||||
@@ -145,7 +146,7 @@ export class GridPanel extends ViewletPanel {
|
|||||||
super(options, keybindingService, contextMenuService, configurationService);
|
super(options, keybindingService, contextMenuService, configurationService);
|
||||||
this.splitView = new ScrollableSplitView(this.container, { enableResizing: false, verticalScrollbarVisibility: ScrollbarVisibility.Visible });
|
this.splitView = new ScrollableSplitView(this.container, { enableResizing: false, verticalScrollbarVisibility: ScrollbarVisibility.Visible });
|
||||||
this.splitView.onScroll(e => {
|
this.splitView.onScroll(e => {
|
||||||
if (this.state) {
|
if (this.state && this.splitView.length !== 0) {
|
||||||
this.state.scrollPosition = e;
|
this.state.scrollPosition = e;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -185,12 +186,31 @@ export class GridPanel extends ViewletPanel {
|
|||||||
}
|
}
|
||||||
this.reset();
|
this.reset();
|
||||||
}));
|
}));
|
||||||
|
this.addResultSet(this.runner.batchSets.reduce<sqlops.ResultSetSummary[]>((p, e) => {
|
||||||
|
if (this.configurationService.getValue<boolean>('sql.results.streaming')) {
|
||||||
|
p = p.concat(e.resultSetSummaries);
|
||||||
|
} else {
|
||||||
|
p = p.concat(e.resultSetSummaries.filter(c => c.complete));
|
||||||
|
}
|
||||||
|
return p;
|
||||||
|
}, []));
|
||||||
|
this.maximumBodySize = this.tables.reduce((p, c) => {
|
||||||
|
return p + c.maximumSize;
|
||||||
|
}, 0);
|
||||||
|
|
||||||
|
if (this.state && this.state.scrollPosition) {
|
||||||
|
this.splitView.setScrollPosition(this.state.scrollPosition);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private onResultSet(resultSet: sqlops.ResultSetSummary | sqlops.ResultSetSummary[]) {
|
private onResultSet(resultSet: sqlops.ResultSetSummary | sqlops.ResultSetSummary[]) {
|
||||||
if (this.configurationService.getValue<boolean>('sql.results.streaming')) {
|
let resultsToAdd: sqlops.ResultSetSummary[];
|
||||||
this.addResultSet(resultSet);
|
if (!Array.isArray(resultSet)) {
|
||||||
|
resultsToAdd = [resultSet];
|
||||||
|
} else {
|
||||||
|
resultsToAdd = resultSet.splice(0);
|
||||||
|
}
|
||||||
|
const sizeChanges = () => {
|
||||||
this.tables.map(t => {
|
this.tables.map(t => {
|
||||||
t.state.canBeMaximized = this.tables.length > 1;
|
t.state.canBeMaximized = this.tables.length > 1;
|
||||||
});
|
});
|
||||||
@@ -202,6 +222,17 @@ export class GridPanel extends ViewletPanel {
|
|||||||
if (this.state && this.state.scrollPosition) {
|
if (this.state && this.state.scrollPosition) {
|
||||||
this.splitView.setScrollPosition(this.state.scrollPosition);
|
this.splitView.setScrollPosition(this.state.scrollPosition);
|
||||||
}
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
if (this.configurationService.getValue<boolean>('sql.results.streaming')) {
|
||||||
|
this.addResultSet(resultsToAdd);
|
||||||
|
sizeChanges();
|
||||||
|
} else {
|
||||||
|
resultsToAdd = resultsToAdd.filter(e => e.complete);
|
||||||
|
if (resultsToAdd.length > 0) {
|
||||||
|
this.addResultSet(resultsToAdd);
|
||||||
|
}
|
||||||
|
sizeChanges();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -210,9 +241,19 @@ export class GridPanel extends ViewletPanel {
|
|||||||
if (!Array.isArray(resultSet)) {
|
if (!Array.isArray(resultSet)) {
|
||||||
resultsToUpdate = [resultSet];
|
resultsToUpdate = [resultSet];
|
||||||
} else {
|
} else {
|
||||||
resultsToUpdate = resultSet;
|
resultsToUpdate = resultSet.splice(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const sizeChanges = () => {
|
||||||
|
this.maximumBodySize = this.tables.reduce((p, c) => {
|
||||||
|
return p + c.maximumSize;
|
||||||
|
}, 0);
|
||||||
|
|
||||||
|
if (this.state && this.state.scrollPosition) {
|
||||||
|
this.splitView.setScrollPosition(this.state.scrollPosition);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
if (this.configurationService.getValue<boolean>('sql.results.streaming')) {
|
if (this.configurationService.getValue<boolean>('sql.results.streaming')) {
|
||||||
for (let set of resultsToUpdate) {
|
for (let set of resultsToUpdate) {
|
||||||
let table = this.tables.find(t => t.resultSet.batchId === set.batchId && t.resultSet.id === set.id);
|
let table = this.tables.find(t => t.resultSet.batchId === set.batchId && t.resultSet.id === set.id);
|
||||||
@@ -222,47 +263,20 @@ export class GridPanel extends ViewletPanel {
|
|||||||
warn('Got result set update request for non-existant table');
|
warn('Got result set update request for non-existant table');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
sizeChanges();
|
||||||
this.maximumBodySize = this.tables.reduce((p, c) => {
|
|
||||||
return p + c.maximumSize;
|
|
||||||
}, 0);
|
|
||||||
|
|
||||||
if (this.state && this.state.scrollPosition) {
|
|
||||||
this.splitView.setScrollPosition(this.state.scrollPosition);
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
let change = false;
|
resultsToUpdate = resultsToUpdate.filter(e => e.complete);
|
||||||
|
if (resultsToUpdate.length > 0) {
|
||||||
for (let set of resultsToUpdate) {
|
this.addResultSet(resultsToUpdate);
|
||||||
if (set.complete) {
|
|
||||||
this.addResultSet(set);
|
|
||||||
change = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (change) {
|
|
||||||
this.maximumBodySize = this.tables.reduce((p, c) => {
|
|
||||||
return p + c.maximumSize;
|
|
||||||
}, 0);
|
|
||||||
|
|
||||||
if (this.state && this.state.scrollPosition) {
|
|
||||||
this.splitView.setScrollPosition(this.state.scrollPosition);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
sizeChanges();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private addResultSet(resultSet: sqlops.ResultSetSummary | sqlops.ResultSetSummary[]) {
|
private addResultSet(resultSet: sqlops.ResultSetSummary[]) {
|
||||||
let resultsToAdd: sqlops.ResultSetSummary[];
|
|
||||||
if (!Array.isArray(resultSet)) {
|
|
||||||
resultsToAdd = [resultSet];
|
|
||||||
} else {
|
|
||||||
resultsToAdd = resultSet;
|
|
||||||
}
|
|
||||||
|
|
||||||
let tables: GridTable<any>[] = [];
|
let tables: GridTable<any>[] = [];
|
||||||
|
|
||||||
for (let set of resultsToAdd) {
|
for (let set of resultSet) {
|
||||||
let tableState: GridTableState;
|
let tableState: GridTableState;
|
||||||
if (this._state) {
|
if (this._state) {
|
||||||
tableState = this.state.tableStates.find(e => e.batchId === set.batchId && e.resultId === set.id);
|
tableState = this.state.tableStates.find(e => e.batchId === set.batchId && e.resultId === set.id);
|
||||||
@@ -442,6 +456,7 @@ class GridTable<T> extends Disposable implements IView {
|
|||||||
});
|
});
|
||||||
this.dataProvider.dataRows = collection;
|
this.dataProvider.dataRows = collection;
|
||||||
this.table.updateRowCount();
|
this.table.updateRowCount();
|
||||||
|
this.setupState();
|
||||||
}
|
}
|
||||||
|
|
||||||
public onRemove() {
|
public onRemove() {
|
||||||
@@ -535,12 +550,18 @@ class GridTable<T> extends Disposable implements IView {
|
|||||||
});
|
});
|
||||||
|
|
||||||
this.table.grid.onScroll.subscribe((e, data) => {
|
this.table.grid.onScroll.subscribe((e, data) => {
|
||||||
if (!this.scrolled && this.state.scrollPosition && isInDOM(this.container)) {
|
if (!this.visible) {
|
||||||
|
// If the grid is not set up yet it can get scroll events resetting the top to 0px,
|
||||||
|
// so ignore those events
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (!this.scrolled && (this.state.scrollPositionY || this.state.scrollPositionX) && isInDOM(this.container)) {
|
||||||
this.scrolled = true;
|
this.scrolled = true;
|
||||||
this.table.grid.scrollTo(this.state.scrollPosition);
|
this.restoreScrollState();
|
||||||
}
|
}
|
||||||
if (this.state && isInDOM(this.container)) {
|
if (this.state && isInDOM(this.container)) {
|
||||||
this.state.scrollPosition = data.scrollTop;
|
this.state.scrollPositionY = data.scrollTop;
|
||||||
|
this.state.scrollPositionX = data.scrollLeft;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -549,8 +570,13 @@ class GridTable<T> extends Disposable implements IView {
|
|||||||
this.state.activeCell = this.table.grid.getActiveCell();
|
this.state.activeCell = this.table.grid.getActiveCell();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
|
||||||
this.setupState();
|
private restoreScrollState() {
|
||||||
|
if (this.state.scrollPositionX || this.state.scrollPositionY) {
|
||||||
|
this.table.grid.scrollTo(this.state.scrollPositionY);
|
||||||
|
this.table.grid.getContainerNode().children[3].scrollLeft = this.state.scrollPositionX;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private setupState() {
|
private setupState() {
|
||||||
@@ -559,20 +585,18 @@ class GridTable<T> extends Disposable implements IView {
|
|||||||
|
|
||||||
this._register(this.state.onCanBeMaximizedChange(this.rebuildActionBar, this));
|
this._register(this.state.onCanBeMaximizedChange(this.rebuildActionBar, this));
|
||||||
|
|
||||||
if (this.state.scrollPosition) {
|
this.restoreScrollState();
|
||||||
// most of the time this won't do anything
|
|
||||||
this.table.grid.scrollTo(this.state.scrollPosition);
|
|
||||||
// the problem here is that the scrolling state slickgrid uses
|
|
||||||
// doesn't work with it offDOM.
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.state.selection) {
|
// Setting the active cell resets the selection so save it here
|
||||||
this.selectionModel.setSelectedRanges(this.state.selection);
|
let savedSelection = this.state.selection;
|
||||||
}
|
|
||||||
|
|
||||||
if (this.state.activeCell) {
|
if (this.state.activeCell) {
|
||||||
this.table.setActiveCell(this.state.activeCell.row, this.state.activeCell.cell);
|
this.table.setActiveCell(this.state.activeCell.row, this.state.activeCell.cell);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (savedSelection) {
|
||||||
|
this.selectionModel.setSelectedRanges(savedSelection);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public get state(): GridTableState {
|
public get state(): GridTableState {
|
||||||
|
|||||||
@@ -387,8 +387,14 @@ export class QueryModelService implements IQueryModelService {
|
|||||||
// We do not have a query runner for this editor, so create a new one
|
// We do not have a query runner for this editor, so create a new one
|
||||||
// and map it to the results uri
|
// and map it to the results uri
|
||||||
queryRunner = this._instantiationService.createInstance(QueryRunner, ownerUri);
|
queryRunner = this._instantiationService.createInstance(QueryRunner, ownerUri);
|
||||||
|
const resultSetEventType = 'resultSet';
|
||||||
queryRunner.addListener(QREvents.RESULT_SET, resultSet => {
|
queryRunner.addListener(QREvents.RESULT_SET, resultSet => {
|
||||||
this._fireQueryEvent(ownerUri, 'resultSet', resultSet);
|
this._fireQueryEvent(ownerUri, resultSetEventType, resultSet);
|
||||||
|
});
|
||||||
|
queryRunner.onResultSetUpdate(resultSetSummaries => {
|
||||||
|
resultSetSummaries.forEach(resultSet => {
|
||||||
|
this._fireQueryEvent(ownerUri, resultSetEventType, resultSet);
|
||||||
|
})
|
||||||
});
|
});
|
||||||
queryRunner.addListener(QREvents.BATCH_START, batch => {
|
queryRunner.addListener(QREvents.BATCH_START, batch => {
|
||||||
let link = undefined;
|
let link = undefined;
|
||||||
|
|||||||
@@ -97,8 +97,8 @@ export default class QueryRunner extends Disposable {
|
|||||||
return l.concat(e);
|
return l.concat(e);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
private _echoedResultSet = echo(this._debouncedResultSet.event);
|
// private _echoedResultSet = echo(this._debouncedResultSet.event);
|
||||||
public readonly onResultSet = this._echoedResultSet.event;
|
public readonly onResultSet = this._debouncedResultSet.event;
|
||||||
|
|
||||||
private _onResultSetUpdate = this._register(new Emitter<sqlops.ResultSetSummary>());
|
private _onResultSetUpdate = this._register(new Emitter<sqlops.ResultSetSummary>());
|
||||||
private _debouncedResultSetUpdate = debounceEvent<sqlops.ResultSetSummary, sqlops.ResultSetSummary[]>(this._onResultSetUpdate.event, (l, e) => {
|
private _debouncedResultSetUpdate = debounceEvent<sqlops.ResultSetSummary, sqlops.ResultSetSummary[]>(this._onResultSetUpdate.event, (l, e) => {
|
||||||
@@ -109,8 +109,8 @@ export default class QueryRunner extends Disposable {
|
|||||||
return l.concat(e);
|
return l.concat(e);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
private _echoedResultSetUpdate = echo(this._debouncedResultSetUpdate.event);
|
// private _echoedResultSetUpdate = echo(this._debouncedResultSetUpdate.event);
|
||||||
public readonly onResultSetUpdate = this._echoedResultSetUpdate.event;
|
public readonly onResultSetUpdate = this._debouncedResultSetUpdate.event;
|
||||||
|
|
||||||
private _onQueryStart = this._register(new Emitter<void>());
|
private _onQueryStart = this._register(new Emitter<void>());
|
||||||
public readonly onQueryStart: Event<void> = this._onQueryStart.event;
|
public readonly onQueryStart: Event<void> = this._onQueryStart.event;
|
||||||
@@ -203,9 +203,9 @@ export default class QueryRunner extends Disposable {
|
|||||||
return TPromise.as(undefined);
|
return TPromise.as(undefined);
|
||||||
}
|
}
|
||||||
this._echoedMessages.clear();
|
this._echoedMessages.clear();
|
||||||
this._echoedResultSet.clear();
|
// this._echoedResultSet.clear();
|
||||||
this._debouncedMessage.clear();
|
this._debouncedMessage.clear();
|
||||||
this._debouncedResultSet.clear();
|
// this._debouncedResultSet.clear();
|
||||||
this._planXml = new Deferred<string>();
|
this._planXml = new Deferred<string>();
|
||||||
this._batchSets = [];
|
this._batchSets = [];
|
||||||
this._hasCompleted = false;
|
this._hasCompleted = false;
|
||||||
@@ -434,10 +434,10 @@ export default class QueryRunner extends Disposable {
|
|||||||
};
|
};
|
||||||
|
|
||||||
return this._queryManagementService.getQueryRows(rowData).then(r => r, error => {
|
return this._queryManagementService.getQueryRows(rowData).then(r => r, error => {
|
||||||
this._notificationService.notify({
|
// this._notificationService.notify({
|
||||||
severity: Severity.Error,
|
// severity: Severity.Error,
|
||||||
message: nls.localize('query.gettingRowsFailedError', 'Something went wrong getting more rows: {0}', error)
|
// message: nls.localize('query.gettingRowsFailedError', 'Something went wrong getting more rows: {0}', error)
|
||||||
});
|
// });
|
||||||
return error;
|
return error;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -492,11 +492,11 @@ export default class QueryRunner extends Disposable {
|
|||||||
}
|
}
|
||||||
resolve(result);
|
resolve(result);
|
||||||
}, error => {
|
}, error => {
|
||||||
let errorMessage = nls.localize('query.moreRowsFailedError', 'Something went wrong getting more rows:');
|
// let errorMessage = nls.localize('query.moreRowsFailedError', 'Something went wrong getting more rows:');
|
||||||
self._notificationService.notify({
|
// self._notificationService.notify({
|
||||||
severity: Severity.Error,
|
// severity: Severity.Error,
|
||||||
message: `${errorMessage} ${error}`
|
// message: `${errorMessage} ${error}`
|
||||||
});
|
// });
|
||||||
reject(error);
|
reject(error);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ export function resolveCommonProperties(commit: string, version: string, machine
|
|||||||
result['sessionID'] = '';
|
result['sessionID'] = '';
|
||||||
|
|
||||||
// __GDPR__COMMON__ "commitHash" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" }
|
// __GDPR__COMMON__ "commitHash" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" }
|
||||||
result['commitHash'] = commit;
|
result['commitHash'] = '';
|
||||||
// __GDPR__COMMON__ "version" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" }
|
// __GDPR__COMMON__ "version" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" }
|
||||||
result['version'] = version;
|
result['version'] = version;
|
||||||
// __GDPR__COMMON__ "common.platformVersion" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" }
|
// __GDPR__COMMON__ "common.platformVersion" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" }
|
||||||
|
|||||||
Reference in New Issue
Block a user