survey-analytics 2.3.4 → 2.3.6

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 (67) hide show
  1. package/fesm/shared.mjs +59 -1
  2. package/fesm/shared.mjs.map +1 -1
  3. package/fesm/shared2.mjs +166 -65
  4. package/fesm/shared2.mjs.map +1 -1
  5. package/fesm/survey.analytics.core.mjs +2 -2
  6. package/fesm/survey.analytics.mjs +12 -5
  7. package/fesm/survey.analytics.mjs.map +1 -1
  8. package/fesm/survey.analytics.tabulator.mjs +17 -4
  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 +2 -0
  12. package/survey-analytics-tabulator.types/analytics-localization/dutch.d.ts +2 -0
  13. package/survey-analytics-tabulator.types/analytics-localization/english.d.ts +2 -0
  14. package/survey-analytics-tabulator.types/analytics-localization/farsi.d.ts +2 -0
  15. package/survey-analytics-tabulator.types/analytics-localization/finnish.d.ts +2 -0
  16. package/survey-analytics-tabulator.types/analytics-localization/french.d.ts +2 -0
  17. package/survey-analytics-tabulator.types/analytics-localization/german.d.ts +2 -0
  18. package/survey-analytics-tabulator.types/analytics-localization/italian.d.ts +2 -0
  19. package/survey-analytics-tabulator.types/analytics-localization/japanese.d.ts +2 -0
  20. package/survey-analytics-tabulator.types/analytics-localization/norwegian.d.ts +2 -0
  21. package/survey-analytics-tabulator.types/analytics-localization/polish.d.ts +2 -0
  22. package/survey-analytics-tabulator.types/analytics-localization/portuguese.d.ts +2 -0
  23. package/survey-analytics-tabulator.types/analytics-localization/russian.d.ts +2 -0
  24. package/survey-analytics-tabulator.types/analytics-localization/spanish.d.ts +2 -0
  25. package/survey-analytics-tabulator.types/analytics-localization/swedish.d.ts +2 -0
  26. package/survey-analytics-tabulator.types/localizationManager.d.ts +2 -0
  27. package/survey-analytics-tabulator.types/tables/table.d.ts +6 -2
  28. package/survey-analytics.types/alternativeVizualizersWrapper.d.ts +9 -1
  29. package/survey-analytics.types/analytics-localization/arabic.d.ts +2 -0
  30. package/survey-analytics.types/analytics-localization/dutch.d.ts +2 -0
  31. package/survey-analytics.types/analytics-localization/english.d.ts +2 -0
  32. package/survey-analytics.types/analytics-localization/farsi.d.ts +2 -0
  33. package/survey-analytics.types/analytics-localization/finnish.d.ts +2 -0
  34. package/survey-analytics.types/analytics-localization/french.d.ts +2 -0
  35. package/survey-analytics.types/analytics-localization/german.d.ts +2 -0
  36. package/survey-analytics.types/analytics-localization/italian.d.ts +2 -0
  37. package/survey-analytics.types/analytics-localization/japanese.d.ts +2 -0
  38. package/survey-analytics.types/analytics-localization/norwegian.d.ts +2 -0
  39. package/survey-analytics.types/analytics-localization/polish.d.ts +2 -0
  40. package/survey-analytics.types/analytics-localization/portuguese.d.ts +2 -0
  41. package/survey-analytics.types/analytics-localization/russian.d.ts +2 -0
  42. package/survey-analytics.types/analytics-localization/spanish.d.ts +2 -0
  43. package/survey-analytics.types/analytics-localization/swedish.d.ts +2 -0
  44. package/survey-analytics.types/localizationManager.d.ts +2 -0
  45. package/survey-analytics.types/selectBase.d.ts +2 -1
  46. package/survey-analytics.types/statistics-table.d.ts +11 -1
  47. package/survey-analytics.types/visualizationManager.d.ts +2 -2
  48. package/survey-analytics.types/visualizationPanel.d.ts +2 -1
  49. package/survey-analytics.types/visualizerBase.d.ts +14 -0
  50. package/survey.analytics.core.css +1 -1
  51. package/survey.analytics.core.js +256 -77
  52. package/survey.analytics.core.js.map +1 -1
  53. package/survey.analytics.core.min.css +1 -1
  54. package/survey.analytics.core.min.js +1 -1
  55. package/survey.analytics.core.min.js.LICENSE.txt +1 -1
  56. package/survey.analytics.css +1 -1
  57. package/survey.analytics.js +266 -79
  58. package/survey.analytics.js.map +1 -1
  59. package/survey.analytics.min.css +1 -1
  60. package/survey.analytics.min.js +1 -1
  61. package/survey.analytics.min.js.LICENSE.txt +1 -1
  62. package/survey.analytics.tabulator.css +1 -1
  63. package/survey.analytics.tabulator.js +74 -3
  64. package/survey.analytics.tabulator.js.map +1 -1
  65. package/survey.analytics.tabulator.min.css +1 -1
  66. package/survey.analytics.tabulator.min.js +1 -1
  67. package/survey.analytics.tabulator.min.js.LICENSE.txt +1 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - SurveyJS Dashboard library v2.3.4
2
+ * surveyjs - SurveyJS Dashboard library v2.3.6
3
3
  * Copyright (c) 2015-2025 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -6925,12 +6925,15 @@ var AlternativeVisualizersWrapper = /** @class */ (function (_super) {
6925
6925
  if (quiet === void 0) { quiet = false; }
6926
6926
  var visualizerCandidate = this.visualizers.filter(function (v) { return v.type === type; })[0];
6927
6927
  if (!!visualizerCandidate && visualizerCandidate !== this.visualizer) {
6928
+ var isFooterCollapsed = void 0;
6928
6929
  if (!!this.visualizer) {
6930
+ isFooterCollapsed = this.visualizer.isFooterCollapsed;
6929
6931
  this.visualizer.onStateChanged.remove(this.onVisualizerStateChangedCallback);
6930
6932
  this.visualizer.onAfterRender.remove(this.onAfterVisualizerRenderCallback);
6931
6933
  this.visualizer.destroy();
6932
6934
  }
6933
6935
  this.visualizer = visualizerCandidate;
6936
+ this.visualizer.isFooterCollapsed = isFooterCollapsed;
6934
6937
  this.refresh();
6935
6938
  this.visualizer.onAfterRender.add(this.onAfterVisualizerRenderCallback);
6936
6939
  this.visualizer.onStateChanged.add(this.onVisualizerStateChangedCallback);
@@ -6984,6 +6987,7 @@ var AlternativeVisualizersWrapper = /** @class */ (function (_super) {
6984
6987
  *
6985
6988
  * > This method is overriden in descendant classes.
6986
6989
  * @see setState
6990
+ * @see resetState
6987
6991
  */
6988
6992
  AlternativeVisualizersWrapper.prototype.getState = function () {
6989
6993
  var currentVisualizerState = this.visualizer.getState();
@@ -6998,8 +7002,8 @@ var AlternativeVisualizersWrapper = /** @class */ (function (_super) {
6998
7002
  /**
6999
7003
  * Sets the visualizer's state.
7000
7004
  *
7001
- * > This method is overriden in descendant classes.
7002
7005
  * @see getState
7006
+ * @see resetState
7003
7007
  */
7004
7008
  AlternativeVisualizersWrapper.prototype.setState = function (state) {
7005
7009
  if (!!state.visualizer) {
@@ -7009,6 +7013,17 @@ var AlternativeVisualizersWrapper = /** @class */ (function (_super) {
7009
7013
  this.visualizer.setState(state.state);
7010
7014
  }
7011
7015
  };
7016
+ /**
7017
+ * Resets the visualizer's state.
7018
+ *
7019
+ * @see getState
7020
+ * @see setState
7021
+ */
7022
+ AlternativeVisualizersWrapper.prototype.resetState = function () {
7023
+ _super.prototype.resetState.call(this);
7024
+ this.visualizers.forEach(function (visualizer) { return visualizer.resetState(); });
7025
+ this.setVisualizer(this.visualizers[0].type, true);
7026
+ };
7012
7027
  AlternativeVisualizersWrapper.prototype.getValues = function () {
7013
7028
  return this.visualizer.getValues();
7014
7029
  };
@@ -7192,6 +7207,10 @@ var arabicStrings = {
7192
7207
  responses: "الاستجابات",
7193
7208
  // [Auto-translated] "NPS"
7194
7209
  visualizer_nps: "NPS",
7210
+ // [Auto-translated] "Chart"
7211
+ visualizer_boolean: "جدول",
7212
+ // [Auto-translated] "Table"
7213
+ visualizer_options: "جدول",
7195
7214
  // [Auto-translated] "NPS"
7196
7215
  npsScore: "NPS",
7197
7216
  // [Auto-translated] "Promoters"
@@ -7372,6 +7391,10 @@ var dutchStrings = {
7372
7391
  responses: "Reacties",
7373
7392
  // [Auto-translated] "NPS"
7374
7393
  visualizer_nps: "NPS",
7394
+ // [Auto-translated] "Chart"
7395
+ visualizer_boolean: "Zeekaart",
7396
+ // [Auto-translated] "Table"
7397
+ visualizer_options: "Tafel",
7375
7398
  // [Auto-translated] "NPS"
7376
7399
  npsScore: "NPS",
7377
7400
  // [Auto-translated] "Promoters"
@@ -7481,6 +7504,8 @@ var englishStrings = {
7481
7504
  statistics_chart: "Chart",
7482
7505
  responses: "Responses",
7483
7506
  visualizer_nps: "NPS",
7507
+ visualizer_boolean: "Chart",
7508
+ visualizer_options: "Table",
7484
7509
  npsScore: "NPS",
7485
7510
  npsPromoters: "Promoters",
7486
7511
  npsPassives: "Passives",
@@ -7657,6 +7682,10 @@ var farsiStrings = {
7657
7682
  responses: "پاسخ",
7658
7683
  // [Auto-translated] "NPS"
7659
7684
  visualizer_nps: "NPS",
7685
+ // [Auto-translated] "Chart"
7686
+ visualizer_boolean: "نمودار",
7687
+ // [Auto-translated] "Table"
7688
+ visualizer_options: "جدول",
7660
7689
  // [Auto-translated] "NPS"
7661
7690
  npsScore: "NPS",
7662
7691
  // [Auto-translated] "Promoters"
@@ -7837,6 +7866,10 @@ var finnishStrings = {
7837
7866
  responses: "Vastaukset",
7838
7867
  // "NPS"
7839
7868
  visualizer_nps: "NPS",
7869
+ // [Auto-translated] "Chart"
7870
+ visualizer_boolean: "Kaavio",
7871
+ // [Auto-translated] "Table"
7872
+ visualizer_options: "Pöytä",
7840
7873
  // "NPS"
7841
7874
  npsScore: "NPS",
7842
7875
  // "Promoters"
@@ -8017,6 +8050,10 @@ var frenchStrings = {
8017
8050
  responses: "Réponses",
8018
8051
  // [Auto-translated] "NPS"
8019
8052
  visualizer_nps: "Le NPS",
8053
+ // [Auto-translated] "Chart"
8054
+ visualizer_boolean: "Graphique",
8055
+ // [Auto-translated] "Table"
8056
+ visualizer_options: "Table",
8020
8057
  // [Auto-translated] "NPS"
8021
8058
  npsScore: "Le NPS",
8022
8059
  // [Auto-translated] "Promoters"
@@ -8197,6 +8234,10 @@ var germanStrings = {
8197
8234
  responses: "Antworten",
8198
8235
  // [Auto-translated] "NPS"
8199
8236
  visualizer_nps: "NPS (NPS)",
8237
+ // [Auto-translated] "Chart"
8238
+ visualizer_boolean: "Diagramm",
8239
+ // [Auto-translated] "Table"
8240
+ visualizer_options: "Tisch",
8200
8241
  // [Auto-translated] "NPS"
8201
8242
  npsScore: "NPS (NPS)",
8202
8243
  // [Auto-translated] "Promoters"
@@ -8377,6 +8418,10 @@ var italianStrings = {
8377
8418
  responses: "Risposte",
8378
8419
  // [Auto-translated] "NPS"
8379
8420
  visualizer_nps: "Rete nazionale di dati",
8421
+ // [Auto-translated] "Chart"
8422
+ visualizer_boolean: "Tabella",
8423
+ // [Auto-translated] "Table"
8424
+ visualizer_options: "Tavolo",
8380
8425
  // [Auto-translated] "NPS"
8381
8426
  npsScore: "Rete nazionale di dati",
8382
8427
  // [Auto-translated] "Promoters"
@@ -8557,6 +8602,10 @@ var japaneseStrings = {
8557
8602
  responses: "回答数",
8558
8603
  // [Auto-translated] "NPS"
8559
8604
  visualizer_nps: "NPSの",
8605
+ // [Auto-translated] "Chart"
8606
+ visualizer_boolean: "チャート",
8607
+ // [Auto-translated] "Table"
8608
+ visualizer_options: "テーブル",
8560
8609
  // [Auto-translated] "NPS"
8561
8610
  npsScore: "NPSの",
8562
8611
  // [Auto-translated] "Promoters"
@@ -8737,6 +8786,10 @@ var norwegianStrings = {
8737
8786
  responses: "Svar",
8738
8787
  // [Auto-translated] "NPS"
8739
8788
  visualizer_nps: "NPS",
8789
+ // [Auto-translated] "Chart"
8790
+ visualizer_boolean: "Sjøkart",
8791
+ // [Auto-translated] "Table"
8792
+ visualizer_options: "Bord",
8740
8793
  // [Auto-translated] "NPS"
8741
8794
  npsScore: "NPS",
8742
8795
  // [Auto-translated] "Promoters"
@@ -8917,6 +8970,10 @@ var plStrings = {
8917
8970
  responses: "Odpowiedzi",
8918
8971
  // [Auto-translated] "NPS"
8919
8972
  visualizer_nps: "Wskaźnik NPS",
8973
+ // [Auto-translated] "Chart"
8974
+ visualizer_boolean: "Wykres",
8975
+ // [Auto-translated] "Table"
8976
+ visualizer_options: "Stół",
8920
8977
  // [Auto-translated] "NPS"
8921
8978
  npsScore: "Wskaźnik NPS",
8922
8979
  // [Auto-translated] "Promoters"
@@ -9097,6 +9154,10 @@ var portugueseStrings = {
9097
9154
  responses: "Respostas",
9098
9155
  // [Auto-translated] "NPS"
9099
9156
  visualizer_nps: "NPS",
9157
+ // [Auto-translated] "Chart"
9158
+ visualizer_boolean: "Gráfico",
9159
+ // [Auto-translated] "Table"
9160
+ visualizer_options: "Mesa",
9100
9161
  // [Auto-translated] "NPS"
9101
9162
  npsScore: "NPS",
9102
9163
  // [Auto-translated] "Promoters"
@@ -9277,6 +9338,10 @@ var russianStrings = {
9277
9338
  responses: "ответов",
9278
9339
  // [Auto-translated] "NPS"
9279
9340
  visualizer_nps: "NPS",
9341
+ // [Auto-translated] "Chart"
9342
+ visualizer_boolean: "Диаграмма",
9343
+ // [Auto-translated] "Table"
9344
+ visualizer_options: "Стол",
9280
9345
  // [Auto-translated] "NPS"
9281
9346
  npsScore: "NPS",
9282
9347
  // [Auto-translated] "Promoters"
@@ -9457,6 +9522,10 @@ var spanishStrings = {
9457
9522
  responses: "Respuestas",
9458
9523
  // [Auto-translated] "NPS"
9459
9524
  visualizer_nps: "NPS",
9525
+ // [Auto-translated] "Chart"
9526
+ visualizer_boolean: "Gráfico",
9527
+ // [Auto-translated] "Table"
9528
+ visualizer_options: "Mesa",
9460
9529
  // [Auto-translated] "NPS"
9461
9530
  npsScore: "NPS",
9462
9531
  // [Auto-translated] "Promoters"
@@ -9637,6 +9706,10 @@ var swedishStrings = {
9637
9706
  responses: "Svar",
9638
9707
  // "NPS"
9639
9708
  visualizer_nps: "NPS",
9709
+ // [Auto-translated] "Chart"
9710
+ visualizer_boolean: "Diagram",
9711
+ // [Auto-translated] "Table"
9712
+ visualizer_options: "Bord",
9640
9713
  // "NPS"
9641
9714
  npsScore: "NPS",
9642
9715
  // "Promoters"
@@ -10149,7 +10222,7 @@ var HistogramModel = /** @class */ (function (_super) {
10149
10222
 
10150
10223
  _visualizationManager__WEBPACK_IMPORTED_MODULE_4__.VisualizationManager.registerVisualizer("date", HistogramModel);
10151
10224
  _visualizationManager__WEBPACK_IMPORTED_MODULE_4__.VisualizationManager.registerVisualizer("number", HistogramModel, 100);
10152
- _visualizationManager__WEBPACK_IMPORTED_MODULE_4__.VisualizationManager.registerVisualizer("rating", HistogramModel, 100);
10225
+ _visualizationManager__WEBPACK_IMPORTED_MODULE_4__.VisualizationManager.registerVisualizer("rating", HistogramModel, 300);
10153
10226
 
10154
10227
 
10155
10228
  /***/ }),
@@ -11603,11 +11676,9 @@ var SelectBase = /** @class */ (function (_super) {
11603
11676
  _this.emptyAnswersBtn = undefined;
11604
11677
  _this.transposeDataBtn = undefined;
11605
11678
  _this.topNSelector = undefined;
11606
- _this._showPercentages = false;
11607
11679
  _this._showOnlyPercentages = false;
11608
- _this._percentagePrecision = 0;
11680
+ _this._percentagePrecision = 2;
11609
11681
  _this._answersOrder = "default";
11610
- _this._supportSelection = true;
11611
11682
  _this._hideEmptyAnswers = false;
11612
11683
  _this._topN = -1;
11613
11684
  _this.topNValues = [].concat(SelectBase.topNValuesDefaults);
@@ -11627,7 +11698,7 @@ var SelectBase = /** @class */ (function (_super) {
11627
11698
  _this.dataProvider.raiseDataChanged();
11628
11699
  };
11629
11700
  }
11630
- _this._showPercentages = _this.options.showPercentages === true;
11701
+ _this._supportSelection = true;
11631
11702
  _this._showOnlyPercentages = _this.options.showOnlyPercentages === true;
11632
11703
  if (_this.options.percentagePrecision) {
11633
11704
  _this._percentagePrecision = _this.options.percentagePrecision;
@@ -11885,12 +11956,23 @@ var SelectBase = /** @class */ (function (_super) {
11885
11956
  enumerable: false,
11886
11957
  configurable: true
11887
11958
  });
11959
+ SelectBase.prototype.getShowPercentagesDefault = function () {
11960
+ if (this.options.showPercentages === undefined) {
11961
+ return ["pie", "doughnut"].indexOf(this.chartType) !== -1;
11962
+ }
11963
+ return this.options.showPercentages === true;
11964
+ };
11888
11965
  Object.defineProperty(SelectBase.prototype, "showPercentages", {
11889
11966
  /**
11890
11967
  * Gets and sets whether chart should show values and percentages.
11891
11968
  */
11892
11969
  get: function () {
11893
- return this._showPercentages;
11970
+ if (this._showPercentages !== undefined) {
11971
+ return this._showPercentages;
11972
+ }
11973
+ else {
11974
+ return this.getShowPercentagesDefault();
11975
+ }
11894
11976
  },
11895
11977
  set: function (val) {
11896
11978
  this._showPercentages = val;
@@ -12052,12 +12134,10 @@ var SelectBase = /** @class */ (function (_super) {
12052
12134
  var percentages = [];
12053
12135
  var percentagePrecision = this._percentagePrecision;
12054
12136
  if (data.length < 2) {
12055
- data.forEach(function (res, index) {
12056
- var sum = res.reduce(function (sum, val) { return sum + val; }, 0);
12057
- percentages[index] = res.map(function (val) {
12058
- var value = percentagePrecision ? +(val / sum).toFixed(percentagePrecision) : Math.round((val / sum) * 10000);
12059
- return sum && (value / 100);
12060
- });
12137
+ var sum = data[0].reduce(function (sum, val) { return sum + val; }, 0);
12138
+ percentages[0] = data[0].map(function (val) {
12139
+ var value = percentagePrecision ? +(val / sum * 100).toFixed(percentagePrecision) : Math.round(val / sum * 100);
12140
+ return sum && value;
12061
12141
  });
12062
12142
  }
12063
12143
  else {
@@ -12069,7 +12149,7 @@ var SelectBase = /** @class */ (function (_super) {
12069
12149
  for (var j = 0; j < data.length; j++) {
12070
12150
  if (!Array.isArray(percentages[j]))
12071
12151
  percentages[j] = [];
12072
- var value = percentagePrecision ? +((data[j][i] / sum) * 100).toFixed(percentagePrecision) : Math.round((data[j][i] / sum) * 100);
12152
+ var value = percentagePrecision ? +(data[j][i] / sum * 100).toFixed(percentagePrecision) : Math.round(data[j][i] / sum * 100);
12073
12153
  percentages[j][i] = sum && value;
12074
12154
  }
12075
12155
  }
@@ -12097,7 +12177,7 @@ var SelectBase = /** @class */ (function (_super) {
12097
12177
  */
12098
12178
  SelectBase.prototype.getAnswersData = function () {
12099
12179
  return (0,tslib__WEBPACK_IMPORTED_MODULE_0__.__awaiter)(this, void 0, void 0, function () {
12100
- var seriesLabels, datasets, labels, colors, texts, temp, zippedArray, dict, unzippedArray, answersData;
12180
+ var seriesLabels, datasets, labels, colors, temp, texts, zippedArray, dict, unzippedArray, answersData;
12101
12181
  return (0,tslib__WEBPACK_IMPORTED_MODULE_0__.__generator)(this, function (_a) {
12102
12182
  switch (_a.label) {
12103
12183
  case 0:
@@ -12107,14 +12187,13 @@ var SelectBase = /** @class */ (function (_super) {
12107
12187
  datasets = (_a.sent());
12108
12188
  labels = this.getLabels();
12109
12189
  colors = this.getColors();
12110
- texts = this.showPercentages ? this.getPercentages(datasets) : datasets;
12111
12190
  if (this.transposeData) {
12112
12191
  datasets = this.transpose(datasets);
12113
- texts = this.transpose(texts);
12114
12192
  temp = seriesLabels;
12115
12193
  seriesLabels = labels;
12116
12194
  labels = temp;
12117
12195
  }
12196
+ texts = this.showPercentages ? this.getPercentages(datasets) : datasets;
12118
12197
  if (this.answersOrder == "asc" || this.answersOrder == "desc") {
12119
12198
  zippedArray = this.showPercentages
12120
12199
  ? _utils_index__WEBPACK_IMPORTED_MODULE_4__.DataHelper.zipArrays(labels, colors, texts[0])
@@ -12200,6 +12279,18 @@ var SelectBase = /** @class */ (function (_super) {
12200
12279
  var selectedItem = survey_core__WEBPACK_IMPORTED_MODULE_1__.ItemValue.getItemByValue(this.question.visibleChoices, state.filter);
12201
12280
  this.setSelection(selectedItem !== null && selectedItem !== void 0 ? selectedItem : undefined);
12202
12281
  };
12282
+ SelectBase.prototype.resetState = function () {
12283
+ _super.prototype.resetState.call(this);
12284
+ // this._showPercentages = this.options.showPercentages === true;
12285
+ // this._showOnlyPercentages = this.options.showOnlyPercentages === true;
12286
+ // this._showMissingAnswers = this.isSupportMissingAnswers() && this.options.showMissingAnswers === true;
12287
+ // this._transposeData = this.options.transposeData || false;
12288
+ this._hideEmptyAnswers = this.options.hideEmptyAnswers === true;
12289
+ this._answersOrder = this.options.answersOrder || "default";
12290
+ this._topN = -1;
12291
+ this.chartType = this.chartTypes[0];
12292
+ this.setSelection(undefined);
12293
+ };
12203
12294
  SelectBase.topNValuesDefaults = [-1, 5, 10, 20];
12204
12295
  SelectBase._stateProperties = ["chartType", "answersOrder", "hideEmptyAnswers", "topN"];
12205
12296
  return SelectBase;
@@ -12210,6 +12301,7 @@ _visualizationManager__WEBPACK_IMPORTED_MODULE_5__.VisualizationManager.register
12210
12301
  _visualizationManager__WEBPACK_IMPORTED_MODULE_5__.VisualizationManager.registerVisualizer("dropdown", SelectBase);
12211
12302
  _visualizationManager__WEBPACK_IMPORTED_MODULE_5__.VisualizationManager.registerVisualizer("imagepicker", SelectBase);
12212
12303
  _visualizationManager__WEBPACK_IMPORTED_MODULE_5__.VisualizationManager.registerVisualizer("tagbox", SelectBase);
12304
+ _visualizationManager__WEBPACK_IMPORTED_MODULE_5__.VisualizationManager.registerVisualizer("rating", SelectBase, 100);
12213
12305
 
12214
12306
 
12215
12307
  /***/ }),
@@ -12367,14 +12459,17 @@ __webpack_require__.r(__webpack_exports__);
12367
12459
  __webpack_require__.r(__webpack_exports__);
12368
12460
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
12369
12461
  /* harmony export */ StatisticsTable: () => (/* binding */ StatisticsTable),
12370
- /* harmony export */ StatisticsTableAdapter: () => (/* binding */ StatisticsTableAdapter)
12462
+ /* harmony export */ StatisticsTableAdapter: () => (/* binding */ StatisticsTableAdapter),
12463
+ /* harmony export */ StatisticsTableBoolean: () => (/* binding */ StatisticsTableBoolean)
12371
12464
  /* harmony export */ });
12372
12465
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./src/utils/helpers.ts");
12373
12466
  /* harmony import */ var _selectBase__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./selectBase */ "./src/selectBase.ts");
12374
- /* harmony import */ var _visualizationManager__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./visualizationManager */ "./src/visualizationManager.ts");
12375
- /* harmony import */ var _localizationManager__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./localizationManager */ "./src/localizationManager.ts");
12467
+ /* harmony import */ var _boolean__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./boolean */ "./src/boolean.ts");
12468
+ /* harmony import */ var _visualizationManager__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./visualizationManager */ "./src/visualizationManager.ts");
12376
12469
  /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils */ "./src/utils/index.ts");
12377
- /* harmony import */ var _statistics_table_scss__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./statistics-table.scss */ "./src/statistics-table.scss");
12470
+ /* harmony import */ var _localizationManager__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./localizationManager */ "./src/localizationManager.ts");
12471
+ /* harmony import */ var _statistics_table_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./statistics-table.scss */ "./src/statistics-table.scss");
12472
+
12378
12473
 
12379
12474
 
12380
12475
 
@@ -12396,7 +12491,7 @@ var StatisticsTableAdapter = /** @class */ (function () {
12396
12491
  _a = _b.sent(), datasets = _a.datasets, labels = _a.labels, colors = _a.colors, texts = _a.texts, seriesLabels = _a.seriesLabels;
12397
12492
  hasSeries = seriesLabels.length > 1;
12398
12493
  emptyTextNode = _utils__WEBPACK_IMPORTED_MODULE_4__.DocumentHelper.createElement("p", "", {
12399
- innerText: _localizationManager__WEBPACK_IMPORTED_MODULE_3__.localization.getString("noResults"),
12494
+ innerText: _localizationManager__WEBPACK_IMPORTED_MODULE_5__.localization.getString("noResults"),
12400
12495
  });
12401
12496
  if (datasets.length === 0 || datasets[0].length === 0) {
12402
12497
  container.appendChild(emptyTextNode);
@@ -12408,19 +12503,19 @@ var StatisticsTableAdapter = /** @class */ (function () {
12408
12503
  container.appendChild(tableNode);
12409
12504
  var headerRow = _utils__WEBPACK_IMPORTED_MODULE_4__.DocumentHelper.createElement("tr");
12410
12505
  var labelCell = _utils__WEBPACK_IMPORTED_MODULE_4__.DocumentHelper.createElement("th", "sa-statistics-table__cell-header", {
12411
- textContent: _localizationManager__WEBPACK_IMPORTED_MODULE_3__.localization.getString("answer"),
12506
+ textContent: _localizationManager__WEBPACK_IMPORTED_MODULE_5__.localization.getString("answer"),
12412
12507
  });
12413
12508
  headerRow.appendChild(labelCell);
12414
12509
  var sparklineCell = _utils__WEBPACK_IMPORTED_MODULE_4__.DocumentHelper.createElement("th", "sa-statistics-table__cell-header", {
12415
- textContent: _localizationManager__WEBPACK_IMPORTED_MODULE_3__.localization.getString("statistics_chart"),
12510
+ textContent: _localizationManager__WEBPACK_IMPORTED_MODULE_5__.localization.getString("statistics_chart"),
12416
12511
  });
12417
12512
  headerRow.appendChild(sparklineCell);
12418
12513
  var percentCell = _utils__WEBPACK_IMPORTED_MODULE_4__.DocumentHelper.createElement("th", "sa-statistics-table__cell-header", {
12419
- textContent: _localizationManager__WEBPACK_IMPORTED_MODULE_3__.localization.getString("percentage"),
12514
+ textContent: _localizationManager__WEBPACK_IMPORTED_MODULE_5__.localization.getString("percentage"),
12420
12515
  });
12421
12516
  headerRow.appendChild(percentCell);
12422
12517
  var valueCell = _utils__WEBPACK_IMPORTED_MODULE_4__.DocumentHelper.createElement("th", "sa-statistics-table__cell-header", {
12423
- textContent: _localizationManager__WEBPACK_IMPORTED_MODULE_3__.localization.getString("responses"),
12518
+ textContent: _localizationManager__WEBPACK_IMPORTED_MODULE_5__.localization.getString("responses"),
12424
12519
  });
12425
12520
  headerRow.appendChild(valueCell);
12426
12521
  tableNode.appendChild(headerRow);
@@ -12497,9 +12592,46 @@ var StatisticsTable = /** @class */ (function (_super) {
12497
12592
  return StatisticsTable;
12498
12593
  }(_selectBase__WEBPACK_IMPORTED_MODULE_1__.SelectBase));
12499
12594
 
12500
- _visualizationManager__WEBPACK_IMPORTED_MODULE_2__.VisualizationManager.registerVisualizer("radiogroup", StatisticsTable);
12501
- _visualizationManager__WEBPACK_IMPORTED_MODULE_2__.VisualizationManager.registerVisualizer("dropdown", StatisticsTable);
12502
- _visualizationManager__WEBPACK_IMPORTED_MODULE_2__.VisualizationManager.registerVisualizer("checkbox", StatisticsTable);
12595
+ var StatisticsTableBoolean = /** @class */ (function (_super) {
12596
+ (0,tslib__WEBPACK_IMPORTED_MODULE_0__.__extends)(StatisticsTableBoolean, _super);
12597
+ function StatisticsTableBoolean(question, data, options, name) {
12598
+ var _this = _super.call(this, question, data, options, name || "options") || this;
12599
+ _this._statisticsTableAdapter = new StatisticsTableAdapter(_this);
12600
+ _this.showPercentages = true;
12601
+ return _this;
12602
+ }
12603
+ StatisticsTableBoolean.prototype.destroyContent = function (container) {
12604
+ this._statisticsTableAdapter.destroy(container);
12605
+ _super.prototype.destroyContent.call(this, container);
12606
+ };
12607
+ StatisticsTableBoolean.prototype.renderContentAsync = function (container) {
12608
+ return (0,tslib__WEBPACK_IMPORTED_MODULE_0__.__awaiter)(this, void 0, void 0, function () {
12609
+ var tableNode;
12610
+ return (0,tslib__WEBPACK_IMPORTED_MODULE_0__.__generator)(this, function (_a) {
12611
+ switch (_a.label) {
12612
+ case 0:
12613
+ tableNode = _utils__WEBPACK_IMPORTED_MODULE_4__.DocumentHelper.createElement("div");
12614
+ return [4 /*yield*/, this._statisticsTableAdapter.create(tableNode)];
12615
+ case 1:
12616
+ _a.sent();
12617
+ container.innerHTML = "";
12618
+ container.appendChild(tableNode);
12619
+ return [2 /*return*/, container];
12620
+ }
12621
+ });
12622
+ });
12623
+ };
12624
+ StatisticsTableBoolean.prototype.destroy = function () {
12625
+ this._statisticsTableAdapter.destroy(this.contentContainer);
12626
+ _super.prototype.destroy.call(this);
12627
+ };
12628
+ return StatisticsTableBoolean;
12629
+ }(_boolean__WEBPACK_IMPORTED_MODULE_2__.BooleanModel));
12630
+
12631
+ _visualizationManager__WEBPACK_IMPORTED_MODULE_3__.VisualizationManager.registerVisualizer("radiogroup", StatisticsTable);
12632
+ _visualizationManager__WEBPACK_IMPORTED_MODULE_3__.VisualizationManager.registerVisualizer("dropdown", StatisticsTable);
12633
+ _visualizationManager__WEBPACK_IMPORTED_MODULE_3__.VisualizationManager.registerVisualizer("checkbox", StatisticsTable);
12634
+ _visualizationManager__WEBPACK_IMPORTED_MODULE_3__.VisualizationManager.registerVisualizer("boolean", StatisticsTableBoolean);
12503
12635
 
12504
12636
 
12505
12637
  /***/ }),
@@ -13198,7 +13330,7 @@ var VisualizationManager = /** @class */ (function () {
13198
13330
  if (constructor) {
13199
13331
  var visualizers = VisualizationManager.vizualizers[qType];
13200
13332
  if (!!visualizers) {
13201
- var vDescr = visualizers.filter(function (v) { return v.ctor === constructor || v.ctor.isPrototypeOf(constructor); })[0];
13333
+ var vDescr = visualizers.filter(function (v) { return v.ctor === constructor; })[0];
13202
13334
  if (!!vDescr) {
13203
13335
  var index = visualizers.indexOf(vDescr);
13204
13336
  if (index !== -1) {
@@ -13221,10 +13353,13 @@ var VisualizationManager = /** @class */ (function () {
13221
13353
  };
13222
13354
  /**
13223
13355
  * Returns all visualizer constructors for a specified question type.
13224
- * @param questionType A question [type](https://surveyjs.io/form-library/documentation/api-reference/question#getType).
13356
+ * @param visualizerType A question [type](https://surveyjs.io/form-library/documentation/api-reference/question#getType).
13225
13357
  */
13226
- VisualizationManager.getVisualizersByType = function (questionType) {
13227
- var vDescrs = VisualizationManager.vizualizers[questionType];
13358
+ VisualizationManager.getVisualizersByType = function (visualizerType, fallbackVisualizerType) {
13359
+ var vDescrs = VisualizationManager.vizualizers[visualizerType];
13360
+ if (!!fallbackVisualizerType && (!vDescrs || vDescrs.length == 0)) {
13361
+ vDescrs = VisualizationManager.vizualizers[fallbackVisualizerType];
13362
+ }
13228
13363
  if (!vDescrs) {
13229
13364
  if (VisualizationManager.defaultVisualizer.suppressVisualizerStubRendering) {
13230
13365
  return [];
@@ -13627,48 +13762,52 @@ var VisualizationPanel = /** @class */ (function (_super) {
13627
13762
  return (0,_utils_index__WEBPACK_IMPORTED_MODULE_5__.createCommercialLicenseLink)();
13628
13763
  });
13629
13764
  }
13630
- _this.registerToolbarItem("resetFilter", function () {
13631
- return _utils_index__WEBPACK_IMPORTED_MODULE_5__.DocumentHelper.createButton(function () {
13632
- _this.visualizers.forEach(function (visualizer) {
13633
- if (visualizer instanceof _selectBase__WEBPACK_IMPORTED_MODULE_3__.SelectBase || visualizer instanceof _alternativeVizualizersWrapper__WEBPACK_IMPORTED_MODULE_4__.AlternativeVisualizersWrapper) {
13634
- visualizer.setSelection(undefined);
13635
- }
13636
- });
13637
- }, _localizationManager__WEBPACK_IMPORTED_MODULE_6__.localization.getString("resetFilter"));
13638
- }, 900);
13765
+ _this._supportSelection = true;
13766
+ if (_this.supportSelection !== false) {
13767
+ _this.registerToolbarItem("resetFilter", function () {
13768
+ return _utils_index__WEBPACK_IMPORTED_MODULE_5__.DocumentHelper.createButton(function () {
13769
+ _this.visualizers.forEach(function (visualizer) {
13770
+ if (visualizer instanceof _selectBase__WEBPACK_IMPORTED_MODULE_3__.SelectBase || visualizer instanceof _alternativeVizualizersWrapper__WEBPACK_IMPORTED_MODULE_4__.AlternativeVisualizersWrapper) {
13771
+ visualizer.setSelection(undefined);
13772
+ }
13773
+ });
13774
+ }, _localizationManager__WEBPACK_IMPORTED_MODULE_6__.localization.getString("resetFilter"));
13775
+ }, 900);
13776
+ }
13639
13777
  _this.registerToolbarItem("addElement", function (toolbar) {
13640
13778
  if (_this.allowHideQuestions) {
13641
13779
  var addElementSelector_1 = undefined;
13642
13780
  var addElementSelectorUpdater = function (panel, options) {
13643
13781
  var hiddenElements = _this.hiddenElements;
13782
+ var selectWrapper = _utils_index__WEBPACK_IMPORTED_MODULE_5__.DocumentHelper.createSelector([
13783
+ {
13784
+ name: undefined,
13785
+ displayName: _localizationManager__WEBPACK_IMPORTED_MODULE_6__.localization.getString("addElement"),
13786
+ },
13787
+ ]
13788
+ .concat(hiddenElements)
13789
+ .map(function (element) {
13790
+ return {
13791
+ value: element.name,
13792
+ text: element.displayName,
13793
+ };
13794
+ }), function (option) { return false; }, function (e) {
13795
+ _this.showElement(e.target.value);
13796
+ });
13797
+ if (addElementSelector_1) {
13798
+ toolbar.replaceChild(selectWrapper, addElementSelector_1);
13799
+ }
13800
+ addElementSelector_1 = selectWrapper;
13644
13801
  if (hiddenElements.length > 0) {
13645
- var selectWrapper = _utils_index__WEBPACK_IMPORTED_MODULE_5__.DocumentHelper.createSelector([
13646
- {
13647
- name: undefined,
13648
- displayName: _localizationManager__WEBPACK_IMPORTED_MODULE_6__.localization.getString("addElement"),
13649
- },
13650
- ]
13651
- .concat(hiddenElements)
13652
- .map(function (element) {
13653
- return {
13654
- value: element.name,
13655
- text: element.displayName,
13656
- };
13657
- }), function (option) { return false; }, function (e) {
13658
- _this.showElement(e.target.value);
13659
- });
13660
- (addElementSelector_1 &&
13661
- toolbar.replaceChild(selectWrapper, addElementSelector_1)) ||
13662
- toolbar.appendChild(selectWrapper);
13663
- addElementSelector_1 = selectWrapper;
13802
+ addElementSelector_1.style.display = undefined;
13664
13803
  }
13665
- else {
13666
- addElementSelector_1 && toolbar.removeChild(addElementSelector_1);
13667
- addElementSelector_1 = undefined;
13804
+ else if (addElementSelector_1) {
13805
+ addElementSelector_1.style.display = "none";
13668
13806
  }
13669
13807
  };
13670
13808
  addElementSelectorUpdater(_this, {});
13671
13809
  _this.onVisibleElementsChanged.add(addElementSelectorUpdater);
13810
+ return addElementSelector_1;
13672
13811
  }
13673
13812
  return undefined;
13674
13813
  });
@@ -14191,6 +14330,18 @@ var VisualizationPanel = /** @class */ (function (_super) {
14191
14330
  enumerable: false,
14192
14331
  configurable: true
14193
14332
  });
14333
+ VisualizationPanel.prototype.resetState = function () {
14334
+ this._settingState = true;
14335
+ _super.prototype.resetState.call(this);
14336
+ try {
14337
+ this.visualizers.forEach(function (visualizer) { return visualizer.resetState(); });
14338
+ this.locale = survey_core__WEBPACK_IMPORTED_MODULE_1__.surveyLocalization.defaultLocale;
14339
+ }
14340
+ finally {
14341
+ this._settingState = false;
14342
+ }
14343
+ this.refresh();
14344
+ };
14194
14345
  Object.defineProperty(VisualizationPanel.prototype, "permissions", {
14195
14346
  get: function () {
14196
14347
  return this._elements.map(function (element) {
@@ -14424,6 +14575,7 @@ var VisualizerBase = /** @class */ (function () {
14424
14575
  this.footerContainer = undefined;
14425
14576
  this._supportSelection = false;
14426
14577
  this._chartAdapter = undefined;
14578
+ this._footerIsCollapsed = undefined;
14427
14579
  /**
14428
14580
  * An event that is raised after the visualizer's content is rendered.
14429
14581
  *
@@ -14595,9 +14747,9 @@ var VisualizerBase = /** @class */ (function () {
14595
14747
  * Indicates whether users can select series points to cross-filter charts. To allow or disallow selection, set the [`allowSelection`](https://surveyjs.io/dashboard/documentation/api-reference/ivisualizationpaneloptions#allowSelection) property of the `IVisualizationPanelOptions` object in the [`VisualizationPanel`](https://surveyjs.io/dashboard/documentation/api-reference/visualizationpanel) constructor.
14596
14748
  */
14597
14749
  get: function () {
14598
- return ((this.options.allowSelection === undefined ||
14750
+ return (this.options.allowSelection === undefined ||
14599
14751
  this.options.allowSelection) &&
14600
- this._supportSelection);
14752
+ this._supportSelection;
14601
14753
  },
14602
14754
  enumerable: false,
14603
14755
  configurable: true
@@ -14873,6 +15025,19 @@ var VisualizerBase = /** @class */ (function () {
14873
15025
  VisualizerBase.prototype.destroyFooter = function (container) {
14874
15026
  container.innerHTML = "";
14875
15027
  };
15028
+ Object.defineProperty(VisualizerBase.prototype, "isFooterCollapsed", {
15029
+ get: function () {
15030
+ if (this._footerIsCollapsed === undefined) {
15031
+ this._footerIsCollapsed = VisualizerBase.otherCommentCollapsed;
15032
+ }
15033
+ return this._footerIsCollapsed;
15034
+ },
15035
+ set: function (newVal) {
15036
+ this._footerIsCollapsed = newVal;
15037
+ },
15038
+ enumerable: false,
15039
+ configurable: true
15040
+ });
14876
15041
  VisualizerBase.prototype.renderFooter = function (container) {
14877
15042
  var _this = this;
14878
15043
  container.innerHTML = "";
@@ -14880,20 +15045,21 @@ var VisualizerBase = /** @class */ (function () {
14880
15045
  var footerTitleElement = _utils__WEBPACK_IMPORTED_MODULE_5__.DocumentHelper.createElement("h4", "sa-visualizer__footer-title", { innerText: _localizationManager__WEBPACK_IMPORTED_MODULE_6__.localization.getString("otherCommentTitle") });
14881
15046
  container.appendChild(footerTitleElement);
14882
15047
  var footerContentElement_1 = _utils__WEBPACK_IMPORTED_MODULE_5__.DocumentHelper.createElement("div", "sa-visualizer__footer-content");
14883
- footerContentElement_1.style.display = VisualizerBase.otherCommentCollapsed
14884
- ? "none"
14885
- : "block";
15048
+ footerContentElement_1.style.display = this.isFooterCollapsed ? "none" : "block";
15049
+ var visibilityButtonText = _localizationManager__WEBPACK_IMPORTED_MODULE_6__.localization.getString(this.isFooterCollapsed ? "showButton" : "hideButton");
14886
15050
  var visibilityButton_1 = _utils__WEBPACK_IMPORTED_MODULE_5__.DocumentHelper.createButton(function () {
14887
15051
  if (footerContentElement_1.style.display === "none") {
14888
15052
  footerContentElement_1.style.display = "block";
14889
15053
  visibilityButton_1.innerText = _localizationManager__WEBPACK_IMPORTED_MODULE_6__.localization.getString("hideButton");
15054
+ _this._footerIsCollapsed = false;
14890
15055
  }
14891
15056
  else {
14892
15057
  footerContentElement_1.style.display = "none";
14893
- visibilityButton_1.innerText = _localizationManager__WEBPACK_IMPORTED_MODULE_6__.localization.getString(VisualizerBase.otherCommentCollapsed ? "showButton" : "hideButton");
15058
+ visibilityButton_1.innerText = _localizationManager__WEBPACK_IMPORTED_MODULE_6__.localization.getString("showButton");
15059
+ _this._footerIsCollapsed = true;
14894
15060
  }
14895
15061
  _this.footerVisualizer.invokeOnUpdate();
14896
- }, _localizationManager__WEBPACK_IMPORTED_MODULE_6__.localization.getString("showButton") /*, "sa-toolbar__button--right"*/);
15062
+ }, visibilityButtonText /*, "sa-toolbar__button--right"*/);
14897
15063
  container.appendChild(visibilityButton_1);
14898
15064
  container.appendChild(footerContentElement_1);
14899
15065
  this.footerVisualizer.render(footerContentElement_1);
@@ -15103,6 +15269,7 @@ var VisualizerBase = /** @class */ (function () {
15103
15269
  *
15104
15270
  * > This method is overriden in classes descendant from `VisualizerBase`.
15105
15271
  * @see setState
15272
+ * @see resetState
15106
15273
  * @see onStateChanged
15107
15274
  */
15108
15275
  VisualizerBase.prototype.getState = function () {
@@ -15115,10 +15282,21 @@ var VisualizerBase = /** @class */ (function () {
15115
15282
  *
15116
15283
  * > This method is overriden in classes descendant from `VisualizerBase`.
15117
15284
  * @see getState
15285
+ * @see resetState
15118
15286
  * @see onStateChanged
15119
15287
  */
15120
15288
  VisualizerBase.prototype.setState = function (state) {
15121
15289
  };
15290
+ /**
15291
+ * Resets the visualizer's state.
15292
+ *
15293
+ * > This method is overriden in classes descendant from `VisualizerBase`.
15294
+ * @see getState
15295
+ * @see setState
15296
+ * @see onStateChanged
15297
+ */
15298
+ VisualizerBase.prototype.resetState = function () {
15299
+ };
15122
15300
  Object.defineProperty(VisualizerBase.prototype, "locale", {
15123
15301
  /**
15124
15302
  * Gets or sets the current locale.
@@ -15218,14 +15396,14 @@ var VisualizerFactory = /** @class */ (function () {
15218
15396
  * @param options An object with any custom properties you need within the visualizer.
15219
15397
  */
15220
15398
  VisualizerFactory.createVisualizer = function (question, data, options) {
15221
- var type;
15222
- if (question.getType() === "text" && question.inputType) {
15223
- type = question.inputType;
15399
+ var type = question.getType();
15400
+ var creators = [];
15401
+ if (type === "text" && question.inputType) {
15402
+ creators = _visualizationManager__WEBPACK_IMPORTED_MODULE_0__.VisualizationManager.getVisualizersByType(question.inputType, type);
15224
15403
  }
15225
15404
  else {
15226
- type = question.getType();
15405
+ creators = _visualizationManager__WEBPACK_IMPORTED_MODULE_0__.VisualizationManager.getVisualizersByType(type);
15227
15406
  }
15228
- var creators = _visualizationManager__WEBPACK_IMPORTED_MODULE_0__.VisualizationManager.getVisualizersByType(type);
15229
15407
  var visualizers = creators.map(function (creator) { return new creator(question, data, options); });
15230
15408
  if (visualizers.length > 1) {
15231
15409
  var alternativesVisualizerConstructor = _visualizationManager__WEBPACK_IMPORTED_MODULE_0__.VisualizationManager.getAltVisualizerSelector();
@@ -17158,6 +17336,7 @@ __webpack_require__.r(__webpack_exports__);
17158
17336
  /* harmony export */ SelectBase: () => (/* reexport safe */ _selectBase__WEBPACK_IMPORTED_MODULE_17__.SelectBase),
17159
17337
  /* harmony export */ StatisticsTable: () => (/* reexport safe */ _statistics_table__WEBPACK_IMPORTED_MODULE_32__.StatisticsTable),
17160
17338
  /* harmony export */ StatisticsTableAdapter: () => (/* reexport safe */ _statistics_table__WEBPACK_IMPORTED_MODULE_32__.StatisticsTableAdapter),
17339
+ /* harmony export */ StatisticsTableBoolean: () => (/* reexport safe */ _statistics_table__WEBPACK_IMPORTED_MODULE_32__.StatisticsTableBoolean),
17161
17340
  /* harmony export */ Text: () => (/* reexport safe */ _text__WEBPACK_IMPORTED_MODULE_31__.Text),
17162
17341
  /* harmony export */ TextTableAdapter: () => (/* reexport safe */ _text__WEBPACK_IMPORTED_MODULE_31__.TextTableAdapter),
17163
17342
  /* harmony export */ VisualizationManager: () => (/* reexport safe */ _visualizationManager__WEBPACK_IMPORTED_MODULE_23__.VisualizationManager),