@progress/telerik-jquery-report-viewer 22.24.514 → 23.24.806

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/accessibility.js +28 -38
  3. package/dist/cjs/base-component.js +26 -0
  4. package/dist/cjs/binder.js +45 -138
  5. package/dist/cjs/controller.js +25 -25
  6. package/dist/cjs/documentMapArea.js +4 -13
  7. package/dist/cjs/event-emitter.js +124 -10
  8. package/dist/cjs/index.js +2 -0
  9. package/dist/cjs/mainMenu.js +22 -31
  10. package/dist/cjs/pagesArea.js +8 -27
  11. package/dist/cjs/parameterValidators.js +4 -7
  12. package/dist/cjs/parameters.js +13 -13
  13. package/dist/cjs/parametersArea.js +36 -49
  14. package/dist/cjs/print.js +3 -4
  15. package/dist/cjs/reportViewer.js +38 -27
  16. package/dist/cjs/scroll.js +4 -6
  17. package/dist/cjs/search.js +327 -377
  18. package/dist/cjs/sendEmail.js +52 -95
  19. package/dist/cjs/serviceClient.js +163 -257
  20. package/dist/cjs/sideMenu.js +15 -24
  21. package/dist/cjs/sr.js +4 -4
  22. package/dist/cjs/template-cache.js +6 -6
  23. package/dist/cjs/toolbar/link-button.js +42 -0
  24. package/dist/cjs/toolbar/page-count-label.js +18 -0
  25. package/dist/cjs/toolbar/page-number-input.js +64 -0
  26. package/dist/cjs/uiFreezeCoordinator.js +17 -16
  27. package/dist/cjs/utils.js +11 -14
  28. package/dist/es/accessibility.js +29 -39
  29. package/dist/es/base-component.js +22 -0
  30. package/dist/es/binder.js +45 -138
  31. package/dist/es/controller.js +26 -26
  32. package/dist/es/documentMapArea.js +4 -13
  33. package/dist/es/event-emitter.js +124 -10
  34. package/dist/es/index.js +1 -0
  35. package/dist/es/mainMenu.js +23 -32
  36. package/dist/es/pagesArea.js +9 -28
  37. package/dist/es/parameterValidators.js +5 -8
  38. package/dist/es/parameters.js +14 -14
  39. package/dist/es/parametersArea.js +37 -50
  40. package/dist/es/print.js +4 -5
  41. package/dist/es/reportViewer.js +39 -28
  42. package/dist/es/scroll.js +4 -6
  43. package/dist/es/search.js +328 -378
  44. package/dist/es/sendEmail.js +52 -95
  45. package/dist/es/serviceClient.js +164 -258
  46. package/dist/es/sideMenu.js +16 -25
  47. package/dist/es/sr.js +4 -4
  48. package/dist/es/template-cache.js +7 -7
  49. package/dist/es/toolbar/link-button.js +38 -0
  50. package/dist/es/toolbar/page-count-label.js +14 -0
  51. package/dist/es/toolbar/page-number-input.js +60 -0
  52. package/dist/es/uiFreezeCoordinator.js +17 -16
  53. package/dist/es/utils.js +11 -14
  54. package/dist/font/font-icons.css +4 -4
  55. package/dist/font/font-icons.min.css +3 -3
  56. package/dist/js/telerikReportViewer.js +1080 -1190
  57. package/dist/js/telerikReportViewer.min.js +1 -1
  58. package/dist/js/telerikReportViewer.stringResources.js +4 -4
  59. package/dist/styles/telerikReportViewer.css +3 -3
  60. package/dist/styles/telerikReportViewer.min.css +3 -3
  61. package/dist/templates/telerikReportViewerTemplate-FA.html +4 -4
  62. package/dist/templates/telerikReportViewerTemplate.html +6 -6
  63. package/package.json +3 -2
  64. /package/dist/font/{ReportingIcons-18.1.24.514.ttf → ReportingIcons-18.2.24.806.ttf} +0 -0
package/dist/es/binder.js CHANGED
@@ -1,56 +1,54 @@
1
- import { each, tryParseInt, isSpecialKey } from './utils.js';
2
1
  import { GlobalSettings } from './globalSettings.js';
3
2
 
4
- var Binder = {
5
- bind: function($element) {
6
- var args = Array.prototype.slice.call(arguments, 1);
7
- attachCommands($element, args);
8
- var result = $element.find('[data-role^="telerik_ReportViewer_"]');
9
- each(result, function() {
10
- var $this = $(this);
11
- var f = $.fn[$this.attr("data-role")];
12
- if (typeof f === "function") {
13
- f.apply($this, args);
3
+ class Binder {
4
+ static bind($element, ...args) {
5
+ const commands = args[0].commands;
6
+ const viewerOptions = args[1];
7
+ Binder.attachCommands($element, commands, viewerOptions);
8
+ var plugins = $element.find('[data-role^="telerik_ReportViewer_"]');
9
+ Array.from(plugins).forEach((element) => {
10
+ var $element2 = $(element);
11
+ var fn = $.fn[$element2.attr("data-role")];
12
+ if (typeof fn === "function") {
13
+ fn.apply($element2, args);
14
14
  }
15
15
  });
16
16
  }
17
- };
18
- function attachCommands($element, args) {
19
- var commands = args[0].commands;
20
- var viewerOptions = args[1];
21
- var elementSelector = '[data-command^="telerik_ReportViewer_"]';
22
- var customElementSelector = "[data-target-report-viewer]" + elementSelector;
23
- $element.on("click", elementSelector, commandHandler);
24
- if (!GlobalSettings.CommandHandlerAttached) {
25
- $(document.body).on("click", customElementSelector, customCommandHandler);
26
- GlobalSettings.CommandHandlerAttached = true;
27
- }
28
- each(commands, function(key, command) {
29
- attachCommand(key, command, viewerOptions, $element);
30
- });
31
- function commandHandler(e) {
32
- var prefixedDataCommand = $(this).attr("data-command");
33
- if (prefixedDataCommand) {
34
- var dataCommand = prefixedDataCommand.substring("telerik_ReportViewer_".length);
35
- var cmd = commands[dataCommand];
36
- if (cmd && cmd.enabled()) {
37
- cmd.exec($(this).attr("data-command-parameter"));
17
+ static attachCommands($element, commands, viewerOptions) {
18
+ var elementSelector = '[data-command^="telerik_ReportViewer_"]';
19
+ var customElementSelector = "[data-target-report-viewer]" + elementSelector;
20
+ $element.on("click", elementSelector, commandHandler);
21
+ if (!GlobalSettings.CommandHandlerAttached) {
22
+ $(document.body).on("click", customElementSelector, customCommandHandler);
23
+ GlobalSettings.CommandHandlerAttached = true;
24
+ }
25
+ Object.entries(commands).forEach(([key, command]) => {
26
+ attachCommand(key, command, viewerOptions, $element);
27
+ });
28
+ function commandHandler(event) {
29
+ var prefixedDataCommand = $(this).attr("data-command");
30
+ if (prefixedDataCommand) {
31
+ var dataCommand = prefixedDataCommand.substring("telerik_ReportViewer_".length);
32
+ var cmd = commands[dataCommand];
33
+ if (cmd && cmd.enabled()) {
34
+ cmd.exec($(this).attr("data-command-parameter"));
35
+ }
36
+ event.preventDefault();
38
37
  }
39
- e.preventDefault();
40
38
  }
41
- }
42
- function customCommandHandler(e) {
43
- var $this = $(this);
44
- var prefixedDataCommand = $this.attr("data-command");
45
- var reportViewerTarget = $this.attr("data-target-report-viewer");
46
- if (prefixedDataCommand && reportViewerTarget) {
47
- var dataCommand = prefixedDataCommand.substring("telerik_ReportViewer_".length);
48
- var reportViewer = $(reportViewerTarget).data("telerik_ReportViewer");
49
- var cmd = reportViewer.commands[dataCommand];
50
- if (cmd.enabled()) {
51
- cmd.exec($(this).attr("data-command-parameter"));
39
+ function customCommandHandler(event) {
40
+ var $this = $(this);
41
+ var prefixedDataCommand = $this.attr("data-command");
42
+ var reportViewerTarget = $this.attr("data-target-report-viewer");
43
+ if (prefixedDataCommand && reportViewerTarget) {
44
+ var dataCommand = prefixedDataCommand.substring("telerik_ReportViewer_".length);
45
+ var reportViewer = $(reportViewerTarget).data("telerik_ReportViewer");
46
+ var cmd = reportViewer.commands[dataCommand];
47
+ if (cmd.enabled()) {
48
+ cmd.exec($(this).attr("data-command-parameter"));
49
+ }
50
+ event.preventDefault();
52
51
  }
53
- e.preventDefault();
54
52
  }
55
53
  }
56
54
  }
@@ -60,10 +58,10 @@ function attachCommand(dataCommand, cmd, viewerOptions, $element) {
60
58
  var customElementSelector = '[data-target-report-viewer="' + viewerOptions.selector + '"]' + elementSelector;
61
59
  var $defaultElement = $element.find(elementSelector);
62
60
  var $customElement = $(customElementSelector);
63
- $(cmd).on("enabledChanged", function(e) {
61
+ $(cmd).on("enabledChanged", function(event) {
64
62
  (cmd.enabled() ? $.fn.removeClass : $.fn.addClass).call($defaultElement.parent("li"), "k-disabled");
65
63
  (cmd.enabled() ? $.fn.removeClass : $.fn.addClass).call($customElement, viewerOptions.disabledButtonClass);
66
- }).on("checkedChanged", function(e) {
64
+ }).on("checkedChanged", function(event) {
67
65
  var defaultTarget = $defaultElement.parent("li");
68
66
  (cmd.checked() ? $.fn.addClass : $.fn.removeClass).call(defaultTarget, getSelectedClassName(defaultTarget));
69
67
  (cmd.checked() ? $.fn.addClass : $.fn.removeClass).call($customElement, viewerOptions.checkedButtonClass);
@@ -73,96 +71,5 @@ function attachCommand(dataCommand, cmd, viewerOptions, $element) {
73
71
  function getSelectedClassName($element) {
74
72
  return $element.hasClass("trv-menu-toggleable") ? "k-selected !k-bg-primary" : "k-selected";
75
73
  }
76
- function LinkButton(dom, options) {
77
- var cmd;
78
- var $element = $(dom);
79
- var dataCommand = $element.attr("data-command");
80
- if (dataCommand) {
81
- cmd = options.commands[dataCommand];
82
- }
83
- if (cmd) {
84
- $element.click(function(e) {
85
- if (cmd.enabled()) {
86
- cmd.exec($(this).attr("data-command-parameter"));
87
- } else {
88
- e.preventDefault();
89
- }
90
- });
91
- $(cmd).on("enabledChanged", function(e) {
92
- (cmd.enabled() ? $.fn.removeClass : $.fn.addClass).call($element, "disabled");
93
- }).on("checkedChanged", function(e) {
94
- (cmd.checked() ? $.fn.addClass : $.fn.removeClass).call($element, "checked");
95
- });
96
- }
97
- }
98
- var linkButton_pluginName = "telerik_ReportViewer_LinkButton";
99
- $.fn[linkButton_pluginName] = function(options) {
100
- return each(this, function() {
101
- if (!$.data(this, linkButton_pluginName)) {
102
- $.data(this, linkButton_pluginName, new LinkButton(this, options));
103
- }
104
- });
105
- };
106
- function PageNumberInput(dom, options) {
107
- var $element = $(dom);
108
- var oldValue = 0;
109
- var cmd = options.commands["goToPage"];
110
- function setPageNumber(value) {
111
- if (oldValue !== value || !$element.is(":focus")) {
112
- $element.val(value);
113
- oldValue = value;
114
- }
115
- }
116
- options.controller.pageNumberChange(function(e, value) {
117
- setPageNumber(value);
118
- });
119
- $element.change(function() {
120
- var val = $(this).val();
121
- var num = tryParseInt(val);
122
- if (!isNaN(num)) {
123
- var result = cmd.exec(num);
124
- setPageNumber(result);
125
- }
126
- });
127
- $element.keydown(function(e) {
128
- if (e.which == 13) {
129
- $(this).change();
130
- return e.preventDefault();
131
- }
132
- });
133
- function validateValue(value) {
134
- return /^([0-9]+)$/.test(value);
135
- }
136
- $element.keypress(function(event) {
137
- if (isSpecialKey(event.keyCode)) {
138
- return true;
139
- }
140
- var newValue = $element.val() + String.fromCharCode(event.charCode);
141
- return validateValue(newValue);
142
- }).on("paste", function(event) {
143
- });
144
- }
145
- var pageNumberInput_pluginName = "telerik_ReportViewer_PageNumberInput";
146
- $.fn[pageNumberInput_pluginName] = function(options) {
147
- return each(this, function() {
148
- if (!$.data(this, pageNumberInput_pluginName)) {
149
- $.data(this, pageNumberInput_pluginName, new PageNumberInput(this, options));
150
- }
151
- });
152
- };
153
- function PageCountLabel(dom, options) {
154
- var $element = $(dom);
155
- options.controller.pageCountChange(function(e, value) {
156
- $element.text(value);
157
- });
158
- }
159
- var pageCountLabel_pluginName = "telerik_ReportViewer_PageCountLabel";
160
- $.fn[pageCountLabel_pluginName] = function(options) {
161
- return each(this, function() {
162
- if (!$.data(this, pageCountLabel_pluginName)) {
163
- $.data(this, pageCountLabel_pluginName, new PageCountLabel(this, options));
164
- }
165
- });
166
- };
167
74
 
168
75
  export { Binder };
@@ -1,4 +1,4 @@
1
- import { extend, tryParseInt, each, logError, isInvalidClientException, isInternalServerError, isApplicationException, getExceptionInstance, stringFormat, parseJSON, escapeHtml, isSystemArgumentException, exceptionTypeNamesMatch, isSvgSupported } from './utils.js';
1
+ import { tryParseInt, logError, isInvalidClientException, isInternalServerError, isApplicationException, getExceptionInstance, stringFormat, parseJSON, escapeHtml, isSystemArgumentException, exceptionTypeNamesMatch, isSvgSupported } from './utils.js';
2
2
  import { stringResources } from './stringResources.js';
3
3
  import { PrintManager } from './print.js';
4
4
  import { ParameterValidators } from './parameterValidators.js';
@@ -34,7 +34,7 @@ function ReportViewerController(options) {
34
34
  var eventEmitter = new EventEmitter();
35
35
  var serviceClientSentinel;
36
36
  clearReportState();
37
- options = extend({}, defaultOptions, options);
37
+ options = $.extend({}, defaultOptions, options);
38
38
  var settings = options.settings;
39
39
  if (typeof settings.getPrintMode === "function") {
40
40
  printMode = settings.getPrintMode();
@@ -173,18 +173,16 @@ function ReportViewerController(options) {
173
173
  return client.getDocumentInfo(clientId2, instanceId, documentId).catch(handleRequestError).then(function(info) {
174
174
  if (info && info.documentReady) {
175
175
  return info;
176
- } else {
177
- info["promise"] = new Promise(function(resolve, reject) {
178
- window.setTimeout(resolve, options2.documentInfoPollIntervalMs);
179
- }).then(function() {
180
- return getDocumentInfoRecursive(clientId2, instanceId, documentId, options2);
181
- });
182
- return info;
183
176
  }
177
+ info["promise"] = new Promise(function(resolve, reject) {
178
+ window.setTimeout(resolve, options2.documentInfoPollIntervalMs);
179
+ }).then(function() {
180
+ return getDocumentInfoRecursive(clientId2, instanceId, documentId, options2);
181
+ });
182
+ return info;
184
183
  });
185
- } else {
186
- return Promise.reject();
187
184
  }
185
+ return Promise.reject();
188
186
  }
189
187
  function ReportLoader(reportHost, useCache, baseDocumentId, actionId) {
190
188
  var loaderOptions = {};
@@ -542,7 +540,7 @@ function ReportViewerController(options) {
542
540
  if (typeof args[0] === "function") {
543
541
  eventEmitter.on(event, args[0]);
544
542
  } else {
545
- eventEmitter.trigger(event, args);
543
+ eventEmitter.trigger(event, ...args);
546
544
  }
547
545
  return controller;
548
546
  }
@@ -571,11 +569,10 @@ function ReportViewerController(options) {
571
569
  var node = nodes[i];
572
570
  if (node.id === id) {
573
571
  return node.page;
574
- } else {
575
- var page = getPageForBookmark(node.items, id);
576
- if (page) {
577
- return page;
578
- }
572
+ }
573
+ var page = getPageForBookmark(node.items, id);
574
+ if (page) {
575
+ return page;
579
576
  }
580
577
  }
581
578
  }
@@ -752,7 +749,7 @@ function ReportViewerController(options) {
752
749
  MISSING_OR_INVALID_PARAMETERS: "missingOrInvalidParameters",
753
750
  RENDERING_STOPPED: "renderingStopped"
754
751
  };
755
- extend(
752
+ $.extend(
756
753
  controller,
757
754
  {
758
755
  getPageData: function(pageNumber) {
@@ -767,7 +764,7 @@ function ReportViewerController(options) {
767
764
  }
768
765
  return {
769
766
  report,
770
- parameters: extend({}, parameterValues)
767
+ parameters: $.extend({}, parameterValues)
771
768
  };
772
769
  },
773
770
  setReportSource: function(rs) {
@@ -783,7 +780,7 @@ function ReportViewerController(options) {
783
780
  return this;
784
781
  },
785
782
  updateSettings: function(settings2) {
786
- options.settings = extend({}, settings2, options.settings);
783
+ options.settings = $.extend({}, settings2, options.settings);
787
784
  },
788
785
  clearReportSource: function() {
789
786
  report = parameterValues = null;
@@ -894,6 +891,9 @@ function ReportViewerController(options) {
894
891
  });
895
892
  },
896
893
  getReportParameters: function() {
894
+ if (!parameterValues) {
895
+ return [];
896
+ }
897
897
  var paramsToBeExposed = {};
898
898
  for (var key in processedParameterValues) {
899
899
  var processedParam = processedParameterValues[key];
@@ -925,13 +925,13 @@ function ReportViewerController(options) {
925
925
  var parameterValues2 = {};
926
926
  var invalidParameters = [];
927
927
  var hasError = false;
928
- each(parameters || [], function() {
928
+ Array.from(parameters || []).forEach((parameter) => {
929
929
  try {
930
- var value = parameterValidators.validate(this, this.value);
931
- parameterValues2[this.id] = value;
930
+ var value = parameterValidators.validate(parameter, parameter.value);
931
+ parameterValues2[parameter.id] = value;
932
932
  } catch (e) {
933
933
  hasError = true;
934
- invalidParameters.push(this);
934
+ invalidParameters.push(parameter);
935
935
  return;
936
936
  }
937
937
  });
@@ -1008,8 +1008,8 @@ function ReportViewerController(options) {
1008
1008
  eventEmitter.on(eventName, handler);
1009
1009
  return controller;
1010
1010
  },
1011
- trigger: function(eventName, args) {
1012
- eventEmitter.trigger(eventName, args);
1011
+ trigger: function(eventName, ...args) {
1012
+ eventEmitter.trigger(eventName, ...args);
1013
1013
  return controller;
1014
1014
  },
1015
1015
  showNotification: function(...args) {
@@ -1,4 +1,3 @@
1
- import { each } from './utils.js';
2
1
  import { stringResources } from './stringResources.js';
3
2
  import { DocumentMapAreaPositions } from './enums.js';
4
3
  import { GlobalSettings } from './globalSettings.js';
@@ -41,8 +40,8 @@ function DocumentMapArea(placeholder, options, otherOptions) {
41
40
  }
42
41
  function setNodeAccessibilityAttributes(node) {
43
42
  var $items = $(node).find("li");
44
- each($items, function() {
45
- var $li = $(this);
43
+ Array.from($items).forEach((item) => {
44
+ var $li = $(item);
46
45
  $li.attr("aria-label", $li[0].innerText);
47
46
  });
48
47
  }
@@ -74,8 +73,8 @@ function DocumentMapArea(placeholder, options, otherOptions) {
74
73
  treeView.bind("expand", onTreeViewNodeExpand);
75
74
  treeView.element.attr("aria-label", stringResources.ariaLabelDocumentMap);
76
75
  var listItems = treeView.element.find("ul");
77
- each(listItems, function() {
78
- setNodeAccessibilityAttributes(this);
76
+ Array.from(listItems).forEach((list) => {
77
+ setNodeAccessibilityAttributes(list);
79
78
  });
80
79
  if (documentMapNecessary) {
81
80
  setSplitbarAccessibilityAttributes();
@@ -152,13 +151,5 @@ function DocumentMapArea(placeholder, options, otherOptions) {
152
151
  $documentMapOverlay.attr("aria-label", stringResources[$documentMapOverlay.attr("aria-label")]);
153
152
  }
154
153
  }
155
- var pluginName = "telerik_ReportViewer_DocumentMapArea";
156
- $.fn[pluginName] = function(options, otherOptions) {
157
- return each(this, function() {
158
- if (!$.data(this, pluginName)) {
159
- $.data(this, pluginName, new DocumentMapArea(this, options, otherOptions));
160
- }
161
- });
162
- };
163
154
 
164
155
  export { DocumentMapArea };
@@ -1,13 +1,127 @@
1
- function EventEmitter() {
2
- var _emitter = $({});
3
- return {
4
- on: function(eventName, handler) {
5
- _emitter.on(eventName, handler);
6
- },
7
- trigger: function(eventName, ...args) {
8
- _emitter.trigger(eventName, ...args);
9
- }
10
- };
1
+ var __defProp = Object.defineProperty;
2
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
+ var __publicField = (obj, key, value) => {
4
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
+ return value;
6
+ };
7
+ class EventEmitter extends EventTarget {
8
+ constructor() {
9
+ super();
10
+ __publicField(this, "_events");
11
+ __publicField(this, "_eventsCount");
12
+ this._events = {};
13
+ this._eventsCount = 0;
14
+ }
15
+ /**
16
+ * @param {string} type
17
+ * @param {(event: CustomEvent, ...args: any[]) => void} listener
18
+ * @returns
19
+ */
20
+ addListener(type, listener) {
21
+ if (typeof listener !== "function") {
22
+ throw new TypeError("listener must be a function");
23
+ }
24
+ if (!this._events[type]) {
25
+ this._events[type] = [];
26
+ }
27
+ function wrappedListener(event) {
28
+ listener.call(this, event, ...event.detail);
29
+ }
30
+ wrappedListener.listener = listener;
31
+ this._events[type].push(wrappedListener);
32
+ this._eventsCount++;
33
+ this.addEventListener(type, wrappedListener.bind(this));
34
+ return this;
35
+ }
36
+ /**
37
+ * @alias addListener
38
+ * @param {string} type
39
+ * @param {(event: CustomEvent, ...args: any[]) => void} listener
40
+ * @returns
41
+ */
42
+ on(type, listener) {
43
+ return this.addListener(type, listener);
44
+ }
45
+ /**
46
+ * @param {string} type
47
+ * @param {any[]} args
48
+ * @returns
49
+ */
50
+ trigger(type, ...args) {
51
+ if (!this._events[type]) {
52
+ return void 0;
53
+ }
54
+ const event = new CustomEvent(type, {
55
+ detail: args,
56
+ cancelable: true
57
+ });
58
+ return this.dispatchEvent(event);
59
+ }
60
+ /**
61
+ * @alias trigger
62
+ * @param {string} type
63
+ * @param {any[]} args
64
+ * @returns
65
+ */
66
+ emit(type, ...args) {
67
+ return this.trigger(type, ...args);
68
+ }
69
+ /**
70
+ * @param {string} type
71
+ * @param {(event: CustomEvent, ...args: any[]) => void} listener
72
+ * @returns
73
+ */
74
+ removeListener(type, listener) {
75
+ if (!this._events[type]) {
76
+ return this;
77
+ }
78
+ this._events[type] = this._events[type].filter((wrappedListener) => {
79
+ if (wrappedListener.listener !== listener) {
80
+ return true;
81
+ }
82
+ this.removeEventListener(type, wrappedListener);
83
+ return false;
84
+ });
85
+ if (this._events[type].length === 0) {
86
+ delete this._events[type];
87
+ this._eventsCount--;
88
+ }
89
+ return this;
90
+ }
91
+ /**
92
+ * @param {string} type
93
+ * @returns
94
+ */
95
+ removeAllListeners(type) {
96
+ if (type === void 0) {
97
+ Object.keys(this._events).forEach((eventType) => {
98
+ this.removeAllListeners(eventType);
99
+ });
100
+ return this;
101
+ }
102
+ if (this._events[type]) {
103
+ this._events[type].forEach((wrappedListener) => {
104
+ this.removeEventListener(type, wrappedListener);
105
+ });
106
+ delete this._events[type];
107
+ this._eventsCount--;
108
+ }
109
+ return this;
110
+ }
111
+ /**
112
+ * @param {string} type
113
+ * @param {(event: CustomEvent, ...args: any[]) => void} listener
114
+ * @returns
115
+ */
116
+ off(type, listener) {
117
+ if (type === void 0) {
118
+ return this.removeAllListeners();
119
+ }
120
+ if (listener === void 0) {
121
+ return this.removeAllListeners(type);
122
+ }
123
+ return this.removeListener(type, listener);
124
+ }
11
125
  }
12
126
 
13
127
  export { EventEmitter };
package/dist/es/index.js CHANGED
@@ -22,3 +22,4 @@ import './sr.js';
22
22
  export { TouchBehavior } from './touch.js';
23
23
  export { UIController } from './uiController.js';
24
24
  export { UIFreezeCoordinator } from './uiFreezeCoordinator.js';
25
+ export { ParametersArea } from './parametersArea.js';
@@ -1,4 +1,4 @@
1
- import { each, tryParseInt, stringFormat, findElement } from './utils.js';
1
+ import { tryParseInt, stringFormat } from './utils.js';
2
2
  import { stringResources } from './stringResources.js';
3
3
 
4
4
  var lastSelectedMenuItem;
@@ -44,9 +44,9 @@ function MainMenu(dom, rootOptions, otherOptions) {
44
44
  replaceStringResources();
45
45
  }
46
46
  function setTabIndexes() {
47
- var $menus = $.find('[data-role="telerik_ReportViewer_MainMenu"]');
48
- each($menus, function() {
49
- var $menuArea = $(this);
47
+ var $menus = $('[data-role="telerik_ReportViewer_MainMenu"]');
48
+ Array.from($menus).forEach((menu2) => {
49
+ var $menuArea = $(menu2);
50
50
  var listItems = $menuArea.find("li");
51
51
  var menuTabIndex = 0;
52
52
  var tabIndexAttr = $menuArea.attr("tabIndex");
@@ -64,13 +64,13 @@ function MainMenu(dom, rootOptions, otherOptions) {
64
64
  });
65
65
  }
66
66
  function setMenuItemsTabIndexes(listItems, menuTabIndex) {
67
- each(listItems, function() {
68
- var $item = $(this);
67
+ Array.from(listItems).forEach((item) => {
68
+ var $item = $(item);
69
69
  $item.attr("tabindex", menuTabIndex);
70
- $item.focus(function() {
70
+ $item.on("focus", (event) => {
71
71
  $item.addClass("k-focus");
72
72
  });
73
- $item.blur(function() {
73
+ $item.on("blur", (event) => {
74
74
  $item.removeClass("k-focus");
75
75
  });
76
76
  var anchor = $item.children("a");
@@ -89,16 +89,15 @@ function MainMenu(dom, rootOptions, otherOptions) {
89
89
  });
90
90
  }
91
91
  function fillFormats(formats) {
92
- each($(dom).find("ul[data-command-list=export-format-list]"), function() {
93
- var $list = $(this);
92
+ Array.from($(dom).find("ul[data-command-list=export-format-list]")).forEach((list) => {
93
+ var $list = $(list);
94
94
  var $parent = $list.parents("li");
95
95
  var tabIndex = enableAccessibility ? $parent.attr("tabindex") : -1;
96
96
  if (!tabIndex) {
97
97
  tabIndex = 1;
98
98
  }
99
99
  $list.empty();
100
- each(formats, function() {
101
- var format = this;
100
+ Array.from(formats).forEach((format) => {
102
101
  var ariaLabel = enableAccessibility ? stringFormat('aria-label="{localizedName}" ', format) : " ";
103
102
  var li = "<li " + ariaLabel + stringFormat('tabindex="' + tabIndex + '"><a tabindex="-1" href="#" data-command="telerik_ReportViewer_export" data-command-parameter="{name}"><span>{localizedName}</span></a></li>', format);
104
103
  menu.append(li, $parent);
@@ -109,10 +108,10 @@ function MainMenu(dom, rootOptions, otherOptions) {
109
108
  });
110
109
  }
111
110
  function setInternalListAccessibilityKeyEvents(listItems) {
112
- each(listItems, function() {
113
- var $item = $(this);
111
+ Array.from(listItems).forEach((item) => {
112
+ var $item = $(item);
114
113
  $item.off("keydown");
115
- $item.on("keydown", function(event) {
114
+ $item.on("keydown", (event) => {
116
115
  switch (event.which) {
117
116
  case kendo.keys.ENTER:
118
117
  clickOnMenuItem($item);
@@ -120,17 +119,17 @@ function MainMenu(dom, rootOptions, otherOptions) {
120
119
  case kendo.keys.UP:
121
120
  var $prev = $item.prev();
122
121
  if ($prev.length > 0) {
123
- $prev.focus();
122
+ $prev.trigger("focus");
124
123
  } else {
125
- $item.parents("li").focus();
124
+ $item.parents("li").trigger("focus");
126
125
  }
127
126
  break;
128
127
  case kendo.keys.DOWN:
129
128
  var $next = $item.next();
130
129
  if ($next.length > 0) {
131
- $next.focus();
130
+ $next.trigger("focus");
132
131
  } else {
133
- $item.parent().children("li").first().focus();
132
+ $item.parent().children("li").first().trigger("focus");
134
133
  }
135
134
  break;
136
135
  }
@@ -294,12 +293,12 @@ function MainMenu(dom, rootOptions, otherOptions) {
294
293
  if (!menuAreas) {
295
294
  return;
296
295
  }
297
- each(menuAreas, function() {
298
- var $menu = $(this);
296
+ Array.from(menuAreas).forEach((menu2) => {
297
+ var $menu = $(menu2);
299
298
  var menuItems = $menu.children("li.k-item");
300
299
  $menu.attr("aria-label", stringResources[$menu.attr("aria-label")]);
301
- each(menuItems, function() {
302
- var $menuItem = $(this);
300
+ Array.from(menuItems).forEach((menuItem) => {
301
+ var $menuItem = $(menuItem);
303
302
  $menuItem.attr("aria-label", stringResources[$menuItem.attr("aria-label")]);
304
303
  if (!$menuItem.hasClass("trv-report-pager")) {
305
304
  var $a = $menuItem.find("a");
@@ -313,16 +312,8 @@ function MainMenu(dom, rootOptions, otherOptions) {
313
312
  });
314
313
  }
315
314
  function findMenuArea() {
316
- return findElement("ul[data-role=telerik_ReportViewer_MainMenu]");
315
+ return $("ul[data-role=telerik_ReportViewer_MainMenu]");
317
316
  }
318
317
  }
319
- var pluginName = "telerik_ReportViewer_MainMenu";
320
- $.fn[pluginName] = function(options, otherOptions) {
321
- return each(this, function() {
322
- if (!$.data(this, pluginName)) {
323
- $.data(this, pluginName, new MainMenu(this, options, otherOptions));
324
- }
325
- });
326
- };
327
318
 
328
319
  export { MainMenu };