@easyquery/ui 7.2.0-rc03 → 7.2.0-rc07

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/dist/assets/css/aggr-settings.css +6 -6
  2. package/dist/assets/css/easyfacets.css +2 -2
  3. package/dist/browser/eq.community.css.map +1 -1
  4. package/dist/browser/eq.community.js +450 -353
  5. package/dist/browser/eq.community.js.map +1 -1
  6. package/dist/browser/eq.community.min.js +3 -3
  7. package/dist/browser/eq.community.min.js.map +1 -1
  8. package/dist/browser/eq.core.css +14 -14
  9. package/dist/browser/eq.core.min.css +3 -3
  10. package/dist/browser/eq.view.css +2 -2
  11. package/dist/browser/eq.view.min.css +2 -2
  12. package/dist/bundles/easyquery.ui.js +65 -41
  13. package/dist/bundles/easyquery.ui.js.map +1 -1
  14. package/dist/bundles/easyquery.ui.min.js +1 -1
  15. package/dist/bundles/easyquery.ui.min.js.map +1 -1
  16. package/dist/lib/dialog/aggr_settings_dialog.js +3 -3
  17. package/dist/lib/dialog/aggr_settings_dialog.js.map +1 -1
  18. package/dist/lib/extensions.js +1 -1
  19. package/dist/lib/facets/pivot_table_facet.js +28 -5
  20. package/dist/lib/facets/pivot_table_facet.js.map +1 -1
  21. package/dist/lib/i18n/text_resources.js +1 -0
  22. package/dist/lib/i18n/text_resources.js.map +1 -1
  23. package/dist/lib/views/data_filter_view.d.ts +1 -0
  24. package/dist/lib/views/data_filter_view.js +3 -1
  25. package/dist/lib/views/data_filter_view.js.map +1 -1
  26. package/dist/lib/views/html_data_filter_view.js +3 -1
  27. package/dist/lib/views/html_data_filter_view.js.map +1 -1
  28. package/dist/lib/views/report_view.d.ts +3 -3
  29. package/dist/lib/views/report_view.js +14 -10
  30. package/dist/lib/views/report_view.js.map +1 -1
  31. package/dist/lib/views/view.js +4 -0
  32. package/dist/lib/views/view.js.map +1 -1
  33. package/dist/lib/views/view_options.d.ts +2 -1
  34. package/dist/lib/widgets/columns_bar.js.map +1 -1
  35. package/dist/lib/widgets/easy_grid_widget.js +0 -15
  36. package/dist/lib/widgets/easy_grid_widget.js.map +1 -1
  37. package/dist/lib/widgets/renderers/aggr_settings/aggr_settings_renderer.js +4 -4
  38. package/dist/lib/widgets/renderers/aggr_settings/aggr_settings_renderer.js.map +1 -1
  39. package/dist/lib/widgets/renderers/columnsbar/aggrfunc_column_renderer.js +0 -1
  40. package/dist/lib/widgets/renderers/columnsbar/aggrfunc_column_renderer.js.map +1 -1
  41. package/dist/lib/widgets/renderers/columnsbar/column_renderer_cb.js +0 -1
  42. package/dist/lib/widgets/renderers/columnsbar/column_renderer_cb.js.map +1 -1
  43. package/package.json +4 -4
@@ -1,6 +1,6 @@
1
1
  /**
2
- * EasyQuery.JS Community 7.2.0-rc03 (https://korzh.com/easyquery/javascript)
3
- * Copyright 2021 Korzh.com. All rights reserved.
2
+ * EasyQuery.JS Community 7.2.0-rc07 (https://korzh.com/easyquery/javascript)
3
+ * Copyright 2022 Korzh.com. All rights reserved.
4
4
  *
5
5
  * EasyQuery.JS commercial licenses may be obtained at
6
6
  * https://korzh.com/easyquery/javascript#LIC or as a part of
@@ -1,6 +1,6 @@
1
1
  /**
2
- * EasyQuery.JS Community 7.2.0-rc03 (https://korzh.com/easyquery/javascript)
3
- * Copyright 2021 Korzh.com. All rights reserved.
2
+ * EasyQuery.JS Community 7.2.0-rc07 (https://korzh.com/easyquery/javascript)
3
+ * Copyright 2022 Korzh.com. All rights reserved.
4
4
  *
5
5
  * EasyQuery.JS commercial licenses may be obtained at
6
6
  * https://korzh.com/easyquery/javascript#LIC or as a part of
@@ -1567,6 +1567,7 @@ var meta_entity_MetaEntityAttr = /** @class */ (function () {
1567
1567
  this.lookupEntity = dto.lent;
1568
1568
  this.dataAttr = dto.dattr;
1569
1569
  this.lookupDataAttr = dto.ldattr;
1570
+ this.defaultValue = dto.defVal;
1570
1571
  this.isNullable = utils_utils.getIfDefined(dto.nul, this.isNullable);
1571
1572
  this.isEditable = utils_utils.getIfDefined(dto.ied, this.isEditable);
1572
1573
  this.showOnView = utils_utils.getIfDefined(dto.ivis || dto.sov, this.showOnView);
@@ -3579,6 +3580,10 @@ var DomSelectElementBuilder = /** @class */ (function (_super) {
3579
3580
  this.element.appendChild(option);
3580
3581
  return this;
3581
3582
  };
3583
+ DomSelectElementBuilder.prototype.value = function (value) {
3584
+ this.element.value = value;
3585
+ return this;
3586
+ };
3582
3587
  return DomSelectElementBuilder;
3583
3588
  }(DomElementBuilder));
3584
3589
 
@@ -11331,7 +11336,6 @@ var column_renderer_cb_ColumnRendererCB = /** @class */ (function () {
11331
11336
  .toDOM();
11332
11337
  };
11333
11338
  ColumnRendererCB.prototype.getDefaultCaption = function () {
11334
- console.log('Calling getDefaultCaption() BASE');
11335
11339
  return this.getDefaultTitleText(this.baseAttr);
11336
11340
  };
11337
11341
  ColumnRendererCB.prototype.getDefaultTitleText = function (attr) {
@@ -11688,7 +11692,6 @@ var aggrfunc_column_renderer_AggrFuncColumnRendererCB = /** @class */ (function
11688
11692
  .getAttributeByIdSafe(this.column.expr.args[0].value);
11689
11693
  };
11690
11694
  AggrFuncColumnRendererCB.prototype.getDefaultCaption = function () {
11691
- console.log('Calling getDefaultCaption() AGGR');
11692
11695
  return this.getDefaultTitleText(this.baseAttr) + ' '
11693
11696
  + this.bar.getContext().getModel().getAggrFunctionCaption(this.column.expr.func);
11694
11697
  };
@@ -16436,21 +16439,6 @@ var easy_grid_widget_EasyGridWidget = /** @class */ (function (_super) {
16436
16439
  this.grid.refresh();
16437
16440
  };
16438
16441
  EasyGridWidget.prototype.attachQueryObserver = function () {
16439
- var _this = this;
16440
- var query = this.getQuery();
16441
- this.queryEventCallbackId = query.addChangedCallback(function (event) {
16442
- //if something has changed, and that change is related to columns
16443
- var edata = event.data;
16444
- if (!edata || (edata.part != external_easyqueryCore_["QueryChangePart"].Columns && edata.part != external_easyqueryCore_["QueryChangePart"].All)) {
16445
- return;
16446
- }
16447
- if (event.data.source == _this) {
16448
- _this.grid.refresh();
16449
- }
16450
- else {
16451
- _this.refresh();
16452
- }
16453
- });
16454
16442
  };
16455
16443
  EasyGridWidget.prototype.destroyCore = function () {
16456
16444
  this.detachQueryObserver();
@@ -18196,6 +18184,12 @@ var AggrFunc;
18196
18184
  AggrFunc["Max"] = "MAX";
18197
18185
  AggrFunc["Count"] = "COUNT";
18198
18186
  })(AggrFunc || (AggrFunc = {}));
18187
+ var FormFieldType;
18188
+ (function (FormFieldType) {
18189
+ FormFieldType[FormFieldType["ColumnField"] = 0] = "ColumnField";
18190
+ FormFieldType[FormFieldType["RowField"] = 1] = "RowField";
18191
+ FormFieldType[FormFieldType["CellData"] = 2] = "CellData";
18192
+ })(FormFieldType || (FormFieldType = {}));
18199
18193
  var DFMT_REGEX = /{0:(.*?)}/g;
18200
18194
  var pivot_table_facet_PivotTableFacet = /** @class */ (function (_super) {
18201
18195
  pivot_table_facet_extends(PivotTableFacet, _super);
@@ -18284,9 +18278,10 @@ var pivot_table_facet_PivotTableFacet = /** @class */ (function (_super) {
18284
18278
  }
18285
18279
  return csb;
18286
18280
  };
18287
- PivotTableFacet.prototype.createColumnsSelectBuilder = function (allowedTypes, colName) {
18281
+ PivotTableFacet.prototype.createColumnsSelectBuilder = function (allowedTypes, colName, formFieldType) {
18288
18282
  var dataTable = this.getContextDataTable();
18289
18283
  var csb = Object(lib_public_api["i" /* domel */])('select');
18284
+ var firstNumericColIndex = null;
18290
18285
  var _loop_2 = function (i) {
18291
18286
  var column = dataTable.columns.get(i);
18292
18287
  var colLabel = column.label;
@@ -18294,6 +18289,9 @@ var pivot_table_facet_PivotTableFacet = /** @class */ (function (_super) {
18294
18289
  var colId = column.id;
18295
18290
  if (allowedTypes && allowedTypes.indexOf(colType) < 0)
18296
18291
  return "continue";
18292
+ if (firstNumericColIndex === null && public_api["i" /* utils */].isNumericType(colType)) {
18293
+ firstNumericColIndex = i;
18294
+ }
18297
18295
  csb.addChild('option', function (b) {
18298
18296
  b
18299
18297
  .attr('value', colId)
@@ -18315,7 +18313,20 @@ var pivot_table_facet_PivotTableFacet = /** @class */ (function (_super) {
18315
18313
  }
18316
18314
  }
18317
18315
  else {
18318
- csb.toDOM().value = options[0].value;
18316
+ switch (formFieldType) {
18317
+ case FormFieldType.ColumnField: {
18318
+ csb.toDOM().value = options[0].value;
18319
+ break;
18320
+ }
18321
+ case FormFieldType.RowField: {
18322
+ csb.toDOM().value = options.length > 1 ? options[1].value : options[0].value;
18323
+ break;
18324
+ }
18325
+ case FormFieldType.CellData: {
18326
+ csb.toDOM().value = firstNumericColIndex === null ? options[0].value : options[firstNumericColIndex].value;
18327
+ break;
18328
+ }
18329
+ }
18319
18330
  }
18320
18331
  }
18321
18332
  return csb;
@@ -18360,7 +18371,7 @@ var pivot_table_facet_PivotTableFacet = /** @class */ (function (_super) {
18360
18371
  .addChild('div', function (b) { return b
18361
18372
  .addClass('kfrm-select')
18362
18373
  .attr('name', 'column_field')
18363
- .addChildElement(_this.createColumnsSelectBuilder(colTypes, settings.colName)
18374
+ .addChildElement(_this.createColumnsSelectBuilder(colTypes, settings.colName, FormFieldType.ColumnField)
18364
18375
  .id('pivotTableColFieldSelector')
18365
18376
  .toDOM()); })
18366
18377
  .addChild('button', function (b) { return b
@@ -18382,7 +18393,7 @@ var pivot_table_facet_PivotTableFacet = /** @class */ (function (_super) {
18382
18393
  .addChild('div', function (b) { return b
18383
18394
  .addClass('kfrm-select')
18384
18395
  .attr('name', 'row_field')
18385
- .addChildElement(_this.createColumnsSelectBuilder(colTypes, settings.rowName)
18396
+ .addChildElement(_this.createColumnsSelectBuilder(colTypes, settings.rowName, FormFieldType.RowField)
18386
18397
  .id('pivotTableRowFieldSelector')
18387
18398
  .toDOM()); });
18388
18399
  current = getCurrent();
@@ -18402,7 +18413,7 @@ var pivot_table_facet_PivotTableFacet = /** @class */ (function (_super) {
18402
18413
  .addChild('div', function (b) { return b
18403
18414
  .addClass('kfrm-select')
18404
18415
  .attr('name', 'data_column')
18405
- .addChildElement(_this.createColumnsSelectBuilder(fieldTypes, settings.fieldName)
18416
+ .addChildElement(_this.createColumnsSelectBuilder(fieldTypes, settings.fieldName, FormFieldType.CellData)
18406
18417
  .on('change', function (ev) {
18407
18418
  var colId = ev.target.value;
18408
18419
  _this.validateSelectedField(colId);
@@ -19678,10 +19689,10 @@ var aggr_settings_renderer_AggrSettingsRenderer = /** @class */ (function () {
19678
19689
  b.on('change', _this.countsCheckboxChangeHandler.bind(_this));
19679
19690
  })
19680
19691
  .addChild('span', function (b) { return b
19681
- .addClass('slider round'); }); })
19692
+ .addClass('slider round'); })
19682
19693
  .addChild('span', function (b) { return b
19683
19694
  .addClass('switch-text')
19684
- .addText(external_easyqueryCore_["i18n"].getText('AggrSettings', 'GroupCountsLabel')); }); })
19695
+ .addText(external_easyqueryCore_["i18n"].getText('AggrSettings', 'GroupCountsLabel')); }); }); })
19685
19696
  .addChild('div', function (b) { return b
19686
19697
  .addClass(_this.cssPrefix + "-grandtotals")
19687
19698
  .addChild('label', function (b) { return b
@@ -19694,10 +19705,10 @@ var aggr_settings_renderer_AggrSettingsRenderer = /** @class */ (function () {
19694
19705
  b.on('change', _this.grandCheckboxChangeHandler.bind(_this));
19695
19706
  })
19696
19707
  .addChild('span', function (b) { return b
19697
- .addClass('slider round'); }); })
19708
+ .addClass('slider round'); })
19698
19709
  .addChild('span', function (b) { return b
19699
19710
  .addClass('switch-text')
19700
- .addText(external_easyqueryCore_["i18n"].getText('AggrSettings', 'GrandTotalsLabel')); }); });
19711
+ .addText(external_easyqueryCore_["i18n"].getText('AggrSettings', 'GrandTotalsLabel')); }); }); });
19701
19712
  var groups = this.slot.querySelectorAll("." + this.cssPrefix + "-group");
19702
19713
  groups.forEach(function (el) {
19703
19714
  Object(lib_public_api["i" /* domel */])(el)
@@ -19985,7 +19996,7 @@ var aggr_settings_dialog_AggrSettingsDialog = /** @class */ (function () {
19985
19996
  var ds = _this.context.getServices().getDialogService();
19986
19997
  _this.body = _this.renderBody();
19987
19998
  var dlg = ds.open({
19988
- title: 'Aggregation settings',
19999
+ title: external_easyqueryCore_["i18n"].getText('AggrSettings', 'AggrDialogTitle'),
19989
20000
  body: _this.body,
19990
20001
  onSubmit: function () {
19991
20002
  if (_this.query.enableAggregation && !_this.renderer.isValid())
@@ -20046,10 +20057,10 @@ var aggr_settings_dialog_AggrSettingsDialog = /** @class */ (function () {
20046
20057
  b.on('change', _this.enableAggrCheckBoxChangeHandler.bind(_this));
20047
20058
  })
20048
20059
  .addChild('span', function (b) { return b
20049
- .addClass('slider round'); }); })
20060
+ .addClass('slider round'); })
20050
20061
  .addChild('span', function (b) { return b
20051
20062
  .addClass('switch-text')
20052
- .addText(external_easyqueryCore_["i18n"].getText('AggrSettings', 'EnableAggrLabel')); }); })
20063
+ .addText(external_easyqueryCore_["i18n"].getText('AggrSettings', 'EnableAggrLabel')); }); }); })
20053
20064
  .addChild('div', function (b) { return b
20054
20065
  .id('AggrSettingsComponent'); });
20055
20066
  return b.toDOM();
@@ -20684,6 +20695,10 @@ var view_View = /** @class */ (function () {
20684
20695
  View.prototype.fetchData = function (options) {
20685
20696
  var _this = this;
20686
20697
  options = options || { refresh: true };
20698
+ this.context.clearResult();
20699
+ //don't run fetch if the query is empty
20700
+ if (this.context.getQuery().isEmpty() && !this.resultOptions.fetchEmptyQueries)
20701
+ return;
20687
20702
  this.showResultSpinner();
20688
20703
  this.context.fetchData({
20689
20704
  elasticPaging: options.elasticPaging,
@@ -21693,7 +21708,9 @@ var data_filter_view_extends = (undefined && undefined.__extends) || (function (
21693
21708
  var data_filter_view_DataFilterView = /** @class */ (function (_super) {
21694
21709
  data_filter_view_extends(DataFilterView, _super);
21695
21710
  function DataFilterView() {
21696
- return _super !== null && _super.apply(this, arguments) || this;
21711
+ var _this = _super.call(this) || this;
21712
+ _this.resultOptions.fetchEmptyQueries = true;
21713
+ return _this;
21697
21714
  }
21698
21715
  DataFilterView.prototype.initOptions = function (options) {
21699
21716
  var _this = this;
@@ -21771,7 +21788,9 @@ var html_data_filter_view_extends = (undefined && undefined.__extends) || (funct
21771
21788
  var html_data_filter_view_HtmlDataFilterView = /** @class */ (function (_super) {
21772
21789
  html_data_filter_view_extends(HtmlDataFilterView, _super);
21773
21790
  function HtmlDataFilterView() {
21774
- return _super.call(this) || this;
21791
+ var _this = _super.call(this) || this;
21792
+ _this.resultOptions.fetchEmptyQueries = true;
21793
+ return _this;
21775
21794
  }
21776
21795
  /**
21777
21796
  * Creates the widget that represents Grid Widget.
@@ -21841,7 +21860,7 @@ var report_view_ReportView = /** @class */ (function (_super) {
21841
21860
  _this.loadReportButtonClickHandler = _this.loadReportButtonClick.bind(_this);
21842
21861
  _this.saveReportButtonClickHandler = _this.saveReportButtonClick.bind(_this);
21843
21862
  _this.removeReportButtonClickHandler = _this.removeReportButtonClick.bind(_this);
21844
- _this.updateReportButtonClickHandler = _this.updateReportButtonClick.bind(_this);
21863
+ _this.reloadReportDataButtonClickHandler = _this.reloadReportDataButtonClick.bind(_this);
21845
21864
  browser_utils["a" /* browserUtils */].onMobileModeChanged(function (_) {
21846
21865
  document.location.reload();
21847
21866
  });
@@ -21928,7 +21947,7 @@ var report_view_ReportView = /** @class */ (function (_super) {
21928
21947
  var loadReportButton = "LoadReportButton";
21929
21948
  var saveReportButton = "SaveReportButton";
21930
21949
  var removeReportButton = "RemoveReportButton";
21931
- var updateReportButton = "UpdateReportButton";
21950
+ var reloadReportDataButton = "ReloadReportDataButton";
21932
21951
  var resultCountSpan = "ResultCount";
21933
21952
  var exportButtons = "ResultExportButtons";
21934
21953
  var exportClass = this.exportClass;
@@ -21940,7 +21959,7 @@ var report_view_ReportView = /** @class */ (function (_super) {
21940
21959
  loadReportButton = options.slots.loadReportButton || loadReportButton;
21941
21960
  saveReportButton = options.slots.saveReportButton || saveReportButton;
21942
21961
  removeReportButton = options.slots.removeReportButton || removeReportButton;
21943
- updateReportButton = options.slots.updateReportButton || updateReportButton;
21962
+ reloadReportDataButton = options.slots.reloadReportDataButton || reloadReportDataButton;
21944
21963
  exportClass = options.slots.exportClass || exportClass;
21945
21964
  }
21946
21965
  this.exportButtons = this.domRoots.reduce(function (elems, root) {
@@ -21987,10 +22006,14 @@ var report_view_ReportView = /** @class */ (function (_super) {
21987
22006
  this.removeReportButton.addEventListener('click', this.removeReportButtonClickHandler);
21988
22007
  }
21989
22008
  }
21990
- if (!this.updateReportButton) {
21991
- this.updateReportButton = this.resolveElement(updateReportButton);
21992
- if (this.updateReportButton) {
21993
- this.updateReportButton.addEventListener('click', this.updateReportButtonClickHandler);
22009
+ if (!this.reloadReportDataButton) {
22010
+ this.reloadReportDataButton = this.resolveElement(reloadReportDataButton);
22011
+ //OBSOLETE: remove the next 3 lines. We just support the old default button ID here
22012
+ if (!this.reloadReportDataButton) {
22013
+ this.reloadReportDataButton = this.resolveElement('UpdateReportButton');
22014
+ }
22015
+ if (this.reloadReportDataButton) {
22016
+ this.reloadReportDataButton.addEventListener('click', this.reloadReportDataButtonClickHandler);
21994
22017
  }
21995
22018
  }
21996
22019
  this.reportListSlot = document.getElementById('ReportList');
@@ -22295,8 +22318,8 @@ var report_view_ReportView = /** @class */ (function (_super) {
22295
22318
  this.removeReportButton.removeEventListener('click', this.removeReportButtonClickHandler);
22296
22319
  this.removeReportButton = null;
22297
22320
  }
22298
- if (this.updateReportButton) {
22299
- this.updateReportButton.removeEventListener('click', this.updateReportButtonClickHandler);
22321
+ if (this.reloadReportDataButton) {
22322
+ this.reloadReportDataButton.removeEventListener('click', this.reloadReportDataButtonClickHandler);
22300
22323
  this.removeReportButton = null;
22301
22324
  }
22302
22325
  if (this.reportListSlot) {
@@ -22397,7 +22420,7 @@ var report_view_ReportView = /** @class */ (function (_super) {
22397
22420
  /**
22398
22421
  * The handler of the "Update" button click.
22399
22422
  */
22400
- ReportView.prototype.updateReportButtonClick = function () {
22423
+ ReportView.prototype.reloadReportDataButtonClick = function () {
22401
22424
  this.fetchData();
22402
22425
  };
22403
22426
  /**
@@ -22744,6 +22767,7 @@ function addEasyQueryUITexts() {
22744
22767
  UnaggrBtn: 'Remove column aggregation',
22745
22768
  GrandTotalsLabel: 'Show grand totals',
22746
22769
  GroupCountsLabel: 'Show record count for groups',
22770
+ AggrDialogTitle: 'Aggregation/grouping',
22747
22771
  EnableAggrLabel: 'Enable aggregation',
22748
22772
  SelectedError: 'Complete the action with selected column(s)',
22749
22773
  NoGroupsOrAggrError: 'Add at least one group or aggregation',