survey-analytics 2.5.35 → 2.5.37

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 (61) hide show
  1. package/fesm/shared.mjs +1 -175
  2. package/fesm/shared.mjs.map +1 -1
  3. package/fesm/shared2.mjs +5 -1
  4. package/fesm/shared2.mjs.map +1 -1
  5. package/fesm/survey.analytics.core.mjs +1 -1
  6. package/fesm/survey.analytics.mjs +1 -1
  7. package/fesm/survey.analytics.mongo.mjs +1 -1
  8. package/fesm/survey.analytics.tabulator.mjs +22 -7
  9. package/fesm/survey.analytics.tabulator.mjs.map +1 -1
  10. package/package.json +2 -2
  11. package/survey-analytics-tabulator.types/analytics-localization/arabic.d.ts +0 -6
  12. package/survey-analytics-tabulator.types/analytics-localization/dutch.d.ts +0 -6
  13. package/survey-analytics-tabulator.types/analytics-localization/english.d.ts +0 -6
  14. package/survey-analytics-tabulator.types/analytics-localization/farsi.d.ts +0 -6
  15. package/survey-analytics-tabulator.types/analytics-localization/finnish.d.ts +0 -6
  16. package/survey-analytics-tabulator.types/analytics-localization/french.d.ts +0 -6
  17. package/survey-analytics-tabulator.types/analytics-localization/german.d.ts +0 -6
  18. package/survey-analytics-tabulator.types/analytics-localization/italian.d.ts +0 -6
  19. package/survey-analytics-tabulator.types/analytics-localization/japanese.d.ts +0 -6
  20. package/survey-analytics-tabulator.types/analytics-localization/norwegian.d.ts +0 -6
  21. package/survey-analytics-tabulator.types/analytics-localization/polish.d.ts +0 -6
  22. package/survey-analytics-tabulator.types/analytics-localization/portuguese.d.ts +0 -6
  23. package/survey-analytics-tabulator.types/analytics-localization/russian.d.ts +0 -6
  24. package/survey-analytics-tabulator.types/analytics-localization/spanish.d.ts +0 -6
  25. package/survey-analytics-tabulator.types/analytics-localization/swedish.d.ts +0 -6
  26. package/survey-analytics-tabulator.types/localizationManager.d.ts +0 -6
  27. package/survey-analytics-tabulator.types/tables/table.d.ts +10 -0
  28. package/survey-analytics.types/alternativeVizualizersWrapper.d.ts +1 -0
  29. package/survey-analytics.types/analytics-localization/arabic.d.ts +0 -6
  30. package/survey-analytics.types/analytics-localization/dutch.d.ts +0 -6
  31. package/survey-analytics.types/analytics-localization/english.d.ts +0 -6
  32. package/survey-analytics.types/analytics-localization/farsi.d.ts +0 -6
  33. package/survey-analytics.types/analytics-localization/finnish.d.ts +0 -6
  34. package/survey-analytics.types/analytics-localization/french.d.ts +0 -6
  35. package/survey-analytics.types/analytics-localization/german.d.ts +0 -6
  36. package/survey-analytics.types/analytics-localization/italian.d.ts +0 -6
  37. package/survey-analytics.types/analytics-localization/japanese.d.ts +0 -6
  38. package/survey-analytics.types/analytics-localization/norwegian.d.ts +0 -6
  39. package/survey-analytics.types/analytics-localization/polish.d.ts +0 -6
  40. package/survey-analytics.types/analytics-localization/portuguese.d.ts +0 -6
  41. package/survey-analytics.types/analytics-localization/russian.d.ts +0 -6
  42. package/survey-analytics.types/analytics-localization/spanish.d.ts +0 -6
  43. package/survey-analytics.types/analytics-localization/swedish.d.ts +0 -6
  44. package/survey-analytics.types/dataProvider.d.ts +1 -0
  45. package/survey-analytics.types/localizationManager.d.ts +0 -6
  46. package/survey-analytics.types/visualizationPanel.d.ts +1 -0
  47. package/survey-analytics.types/visualizerBase.d.ts +2 -0
  48. package/survey.analytics.core.css.map +1 -1
  49. package/survey.analytics.core.js +5 -175
  50. package/survey.analytics.core.js.map +1 -1
  51. package/survey.analytics.core.min.js +2 -2
  52. package/survey.analytics.css.map +1 -1
  53. package/survey.analytics.js +5 -175
  54. package/survey.analytics.js.map +1 -1
  55. package/survey.analytics.min.js +2 -2
  56. package/survey.analytics.mongo.js +1 -1
  57. package/survey.analytics.mongo.min.js +1 -1
  58. package/survey.analytics.tabulator.css.map +1 -1
  59. package/survey.analytics.tabulator.js +26 -184
  60. package/survey.analytics.tabulator.js.map +1 -1
  61. package/survey.analytics.tabulator.min.js +2 -2
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - SurveyJS Dashboard library v2.5.35
2
+ * surveyjs - SurveyJS Dashboard library v2.5.37
3
3
  * Copyright (c) 2015-2026 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - SurveyJS Dashboard library v2.5.35
2
+ * surveyjs - SurveyJS Dashboard library v2.5.37
3
3
  * Copyright (c) 2015-2026 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - SurveyJS Dashboard library v2.5.35
2
+ * surveyjs - SurveyJS Dashboard library v2.5.37
3
3
  * Copyright (c) 2015-2026 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - SurveyJS Dashboard library v2.5.35
2
+ * surveyjs - SurveyJS Dashboard library v2.5.37
3
3
  * Copyright (c) 2015-2026 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -963,6 +963,7 @@ class Table {
963
963
  this._options = _options;
964
964
  this._columnsData = _columnsData;
965
965
  this.haveCommercialLicense = false;
966
+ this._columnsByName = null;
966
967
  this.currentPageSize = 5;
967
968
  this._rows = [];
968
969
  this.isInitialized = false;
@@ -1011,7 +1012,7 @@ class Table {
1011
1012
  this.isInitialized = false;
1012
1013
  this.currentPageSize = this.options.pageSize || 5;
1013
1014
  this.currentPageNumber = 1;
1014
- this._columns = this.buildColumns(this._survey);
1015
+ this.setColumns(this.buildColumns(this._survey));
1015
1016
  this.initTableData(this.data);
1016
1017
  localization.currentLocale = this._survey.locale;
1017
1018
  if (this._columnsData.length !== 0) {
@@ -1092,10 +1093,17 @@ class Table {
1092
1093
  return [].concat(this._columns);
1093
1094
  }
1094
1095
  set columns(columns) {
1095
- this._columns = columns;
1096
+ this.setColumns(columns);
1096
1097
  this.refresh(true);
1097
1098
  this.stateChanged();
1098
1099
  }
1100
+ setColumns(columns) {
1101
+ this._columns = columns;
1102
+ this.invalidateColumnsByNameCache();
1103
+ }
1104
+ invalidateColumnsByNameCache() {
1105
+ this._columnsByName = null;
1106
+ }
1099
1107
  get isInitTableDataProcessing() { return this.isInitTableDataProcessingValue; }
1100
1108
  initTableData(data) {
1101
1109
  if (!Array.isArray(data)) {
@@ -1132,7 +1140,13 @@ class Table {
1132
1140
  this.stateChanged();
1133
1141
  }
1134
1142
  getColumnByName(columnName) {
1135
- return this._columns.filter((column) => column.name === columnName)[0];
1143
+ if (!this._columnsByName) {
1144
+ this._columnsByName = new Map();
1145
+ for (const column of this._columns) {
1146
+ this._columnsByName.set(column.name, column);
1147
+ }
1148
+ }
1149
+ return this._columnsByName.get(columnName);
1136
1150
  }
1137
1151
  setColumnVisibility(columnName, isVisible) {
1138
1152
  var column = this.getColumnByName(columnName);
@@ -1249,6 +1263,7 @@ class Table {
1249
1263
  }
1250
1264
  /**
1251
1265
  * Resets table state.
1266
+ * @since 2.3.5
1252
1267
  */
1253
1268
  resetState() {
1254
1269
  this._survey.locale = surveyLocalization.defaultLocale;
@@ -1274,7 +1289,7 @@ class Table {
1274
1289
  columns.push(column);
1275
1290
  }
1276
1291
  });
1277
- this._columns = this._columns.sort((col1, col2) => col1.visibleIndex - col2.visibleIndex);
1292
+ this.setColumns(this._columns.sort((col1, col2) => col1.visibleIndex - col2.visibleIndex));
1278
1293
  }
1279
1294
  /**
1280
1295
  * Gets table permissions.
@@ -1298,7 +1313,7 @@ class Table {
1298
1313
  });
1299
1314
  return column;
1300
1315
  });
1301
- this._columns = [].concat(updatedElements);
1316
+ this.setColumns([].concat(updatedElements));
1302
1317
  this.onPermissionsChangedCallback &&
1303
1318
  this.onPermissionsChangedCallback(this);
1304
1319
  }
@@ -1497,7 +1512,7 @@ class Tabulator extends Table {
1497
1512
  if (Array.isArray(this.data)) {
1498
1513
  const columnDefinition = columnComponent.getDefinition();
1499
1514
  const questionName = columnDefinition.field;
1500
- const column = this.columns.filter(col => col.name === questionName)[0];
1515
+ const column = this.getColumnByName(questionName);
1501
1516
  if (!!column && rowComponent) {
1502
1517
  const dataRow = rowComponent.getData().surveyOriginalData;
1503
1518
  const dataCell = dataRow[questionName];