@progress/telerik-jquery-report-viewer 25.25.211 → 26.25.521

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 (103) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/accessibility.js +22 -64
  3. package/dist/cjs/aiPrompt.js +311 -0
  4. package/dist/cjs/base-component.js +8 -11
  5. package/dist/cjs/binder.js +12 -12
  6. package/dist/cjs/command.js +44 -25
  7. package/dist/cjs/commandSet.js +78 -53
  8. package/dist/cjs/components/button.js +41 -0
  9. package/dist/cjs/components/toggle-button.js +47 -0
  10. package/dist/cjs/constants.js +22 -0
  11. package/dist/cjs/documentMapArea.js +114 -93
  12. package/dist/cjs/event-emitter.js +2 -8
  13. package/dist/cjs/history.js +13 -12
  14. package/dist/cjs/index.js +4 -12
  15. package/dist/cjs/mainMenu.js +38 -28
  16. package/dist/cjs/mem-storage.js +7 -13
  17. package/dist/cjs/notificationService.js +128 -0
  18. package/dist/cjs/parameterValidators.js +26 -25
  19. package/dist/cjs/parameters.js +180 -161
  20. package/dist/cjs/parametersArea.js +306 -298
  21. package/dist/cjs/perspectives.js +23 -27
  22. package/dist/cjs/report-viewer/report-viewer-settings.js +4 -10
  23. package/dist/cjs/reportViewer.js +441 -190
  24. package/dist/cjs/search.js +218 -328
  25. package/dist/cjs/sendEmail.js +259 -264
  26. package/dist/cjs/service-client-sentinel.js +1 -1
  27. package/dist/cjs/sideMenu.js +20 -16
  28. package/dist/cjs/sr.js +9 -5
  29. package/dist/cjs/template-cache.js +2 -2
  30. package/dist/cjs/toolbar/button.js +18 -0
  31. package/dist/cjs/toolbar/link-button.js +6 -12
  32. package/dist/cjs/toolbar/page-count-label.js +1 -1
  33. package/dist/cjs/toolbar/page-number-input.js +16 -14
  34. package/dist/cjs/toolbar.js +186 -0
  35. package/dist/cjs/touch.js +8 -8
  36. package/dist/cjs/uiController.js +70 -57
  37. package/dist/cjs/utils.js +20 -207
  38. package/dist/font/font-icons.css +25 -222
  39. package/dist/font/font-icons.min.css +3 -3
  40. package/dist/js/telerikReportViewer.js +8173 -9110
  41. package/dist/js/telerikReportViewer.kendo.js +105616 -60642
  42. package/dist/js/telerikReportViewer.kendo.min.js +2 -2
  43. package/dist/js/telerikReportViewer.min.js +1 -1
  44. package/dist/js/telerikReportViewer.stringResources.js +9 -5
  45. package/dist/styles/telerikReportViewer.css +3 -3
  46. package/dist/styles/telerikReportViewer.min.css +3 -3
  47. package/dist/templates/telerikReportViewerTemplate.html +299 -238
  48. package/package.json +2 -3
  49. package/dist/cjs/controller.js +0 -1226
  50. package/dist/cjs/kendo-jquery.js +0 -4
  51. package/dist/cjs/pagesArea.js +0 -625
  52. package/dist/cjs/print.js +0 -165
  53. package/dist/cjs/scroll.js +0 -535
  54. package/dist/cjs/serviceClient.js +0 -311
  55. package/dist/cjs/telerikReportViewer.kendo.js +0 -60196
  56. package/dist/cjs/telerikReportViewer.kendo.min.js +0 -19776
  57. package/dist/cjs/uiFreezeCoordinator.js +0 -282
  58. package/dist/es/accessibility.js +0 -204
  59. package/dist/es/base-component.js +0 -22
  60. package/dist/es/binder.js +0 -75
  61. package/dist/es/command.js +0 -28
  62. package/dist/es/commandSet.js +0 -163
  63. package/dist/es/controller.js +0 -1222
  64. package/dist/es/documentMapArea.js +0 -161
  65. package/dist/es/domUtils.js +0 -43
  66. package/dist/es/enums.js +0 -41
  67. package/dist/es/event-emitter.js +0 -127
  68. package/dist/es/events.js +0 -20
  69. package/dist/es/globalSettings.js +0 -5
  70. package/dist/es/history.js +0 -131
  71. package/dist/es/index.js +0 -25
  72. package/dist/es/jqueryThrottleDebounce.js +0 -46
  73. package/dist/es/kendo-jquery.js +0 -1
  74. package/dist/es/mainMenu.js +0 -319
  75. package/dist/es/mem-storage.js +0 -40
  76. package/dist/es/pagesArea.js +0 -621
  77. package/dist/es/parameterValidators.js +0 -160
  78. package/dist/es/parameters.js +0 -916
  79. package/dist/es/parametersArea.js +0 -493
  80. package/dist/es/perspectives.js +0 -134
  81. package/dist/es/print.js +0 -161
  82. package/dist/es/report-viewer/report-viewer-settings.js +0 -134
  83. package/dist/es/reportViewer.js +0 -666
  84. package/dist/es/scroll.js +0 -531
  85. package/dist/es/search.js +0 -580
  86. package/dist/es/sendEmail.js +0 -388
  87. package/dist/es/service-client-sentinel.js +0 -49
  88. package/dist/es/serviceClient.js +0 -307
  89. package/dist/es/sideMenu.js +0 -212
  90. package/dist/es/sr.js +0 -164
  91. package/dist/es/stringResources.js +0 -7
  92. package/dist/es/telerikReportViewer.kendo.js +0 -60194
  93. package/dist/es/telerikReportViewer.kendo.min.js +0 -19774
  94. package/dist/es/template-cache.js +0 -35
  95. package/dist/es/toolbar/link-button.js +0 -38
  96. package/dist/es/toolbar/page-count-label.js +0 -14
  97. package/dist/es/toolbar/page-number-input.js +0 -60
  98. package/dist/es/touch.js +0 -82
  99. package/dist/es/uiController.js +0 -138
  100. package/dist/es/uiFreezeCoordinator.js +0 -278
  101. package/dist/es/utils.js +0 -444
  102. package/dist/templates/telerikReportViewerTemplate-FA.html +0 -317
  103. /package/dist/font/{ReportingIcons-19.0.25.211.ttf → ReportingIcons-19.1.25.521.ttf} +0 -0
@@ -1,388 +0,0 @@
1
- import { stringResources } from './stringResources.js';
2
- import { Binder } from './binder.js';
3
- import { Command } from './command.js';
4
-
5
- var defaultOptions = {};
6
- function replaceStringResources($sendEmailDialog) {
7
- if (!$sendEmailDialog) {
8
- return;
9
- }
10
- var labels = $sendEmailDialog.find(".trv-replace-string");
11
- var ariaLabel = $sendEmailDialog.find("[aria-label]");
12
- var titles = $sendEmailDialog.find("[title]");
13
- if (labels.length) {
14
- Array.from(labels).forEach((element) => {
15
- replaceText($(element));
16
- });
17
- }
18
- if (ariaLabel.length) {
19
- Array.from(ariaLabel).forEach((element) => {
20
- replaceAttribute($(element), "aria-label");
21
- });
22
- }
23
- if (titles.length) {
24
- Array.from(titles).forEach((element) => {
25
- replaceAttribute($(element), "title");
26
- });
27
- }
28
- }
29
- function replaceText($el) {
30
- if ($el) {
31
- $el.text(stringResources[$el.text()]);
32
- }
33
- }
34
- function replaceAttribute($el, attribute) {
35
- if ($el) {
36
- $el.attr(attribute, stringResources[$el.attr(attribute)]);
37
- }
38
- }
39
- function SendEmail(placeholder, options, viewerOptions) {
40
- options = $.extend({}, defaultOptions, options);
41
- var controller = options.controller;
42
- var initialized = false;
43
- var dialogVisible = false;
44
- var $placeholder;
45
- var kendoSendEmailDialog;
46
- var selector = viewerOptions.viewerSelector;
47
- var inputFrom;
48
- var inputTo;
49
- var inputCC;
50
- var inputSubject;
51
- var docFormat;
52
- var docFormatEl;
53
- var bodyEditorEl;
54
- var bodyEditor;
55
- var docFormatList;
56
- var optionsCommandSet;
57
- var windowLocation;
58
- var reportViewerWrapper = $("[data-selector='" + selector + "']").find(".trv-report-viewer");
59
- if (!controller) {
60
- throw "No controller (telerikReporting.ReportViewerController) has been specified.";
61
- }
62
- if (!viewerOptions.sendEmail || !viewerOptions.sendEmail.enabled) {
63
- var toolbarSendEmailItem = $("[data-selector='" + selector + "']").find("a[data-command='telerik_ReportViewer_toggleSendEmailDialog']").closest(".k-item ");
64
- toolbarSendEmailItem.hide();
65
- return;
66
- }
67
- controller.beginLoadReport(closeAndClear).viewModeChanged(closeAndClear);
68
- controller.getSendEmailDialogState(function(event, args) {
69
- args.visible = dialogVisible;
70
- }).setSendEmailDialogVisible(function(event, args) {
71
- toggle(args.visible);
72
- }).setSearchDialogVisible(function(event, args) {
73
- if (args.visible && dialogVisible) {
74
- toggle(!dialogVisible);
75
- }
76
- });
77
- controller.getDocumentFormats().then(function(formats) {
78
- docFormatList = formats;
79
- });
80
- function closeAndClear() {
81
- toggle(false);
82
- }
83
- function toggle(show) {
84
- dialogVisible = show;
85
- if (show) {
86
- ensureInitialized();
87
- setDefaultValues(viewerOptions.sendEmail);
88
- kendoSendEmailDialog.open();
89
- } else {
90
- if (kendoSendEmailDialog && kendoSendEmailDialog.options.visible) {
91
- kendoSendEmailDialog.close();
92
- }
93
- }
94
- }
95
- function getBody() {
96
- return bodyEditor ? bodyEditor.value() : "";
97
- }
98
- function ensureInitialized() {
99
- if (!initialized) {
100
- $placeholder = $(placeholder);
101
- inputFrom = $placeholder.find("[name='from']");
102
- inputTo = $placeholder.find("[name='to']");
103
- inputCC = $placeholder.find("[name='cc']");
104
- inputSubject = $placeholder.find("[name='subject']");
105
- docFormatEl = $placeholder.find("[name='format']");
106
- bodyEditorEl = $placeholder.find("textarea");
107
- setAttrs();
108
- initCommands();
109
- replaceStringResources($placeholder);
110
- try {
111
- kendoSendEmailDialog = reportViewerWrapper.find(".trv-send-email-window").kendoWindow({
112
- title: stringResources.sendEmailDialogTitle,
113
- minWidth: 350,
114
- minHeight: 350,
115
- maxHeight: 900,
116
- modal: true,
117
- close: function() {
118
- storeDialogPosition();
119
- clearValidation();
120
- },
121
- open: function() {
122
- adjustDialogSize();
123
- adjustDialogPosition();
124
- },
125
- deactivate: function() {
126
- controller.setSendEmailDialogVisible({
127
- visible: false
128
- });
129
- },
130
- activate: function() {
131
- kendoSendEmailDialog.wrapper.find(".trv-send-email-fields input[type='email']:visible").first().focus();
132
- setTimeout(function() {
133
- setValidation();
134
- }, 250);
135
- }
136
- }).data("kendoWindow");
137
- } catch (error) {
138
- console.error("Instantiation of Kendo Window for Send Email dialog threw an exception", error);
139
- throw error;
140
- }
141
- kendoSendEmailDialog.wrapper.addClass("trv-send-email");
142
- try {
143
- docFormat = docFormatEl.kendoComboBox({
144
- dataTextField: "localizedName",
145
- dataValueField: "name",
146
- dataSource: docFormatList || [],
147
- filter: "startswith",
148
- dataBound: function() {
149
- this.select(0);
150
- this.trigger("change");
151
- }
152
- }).data("kendoComboBox");
153
- } catch (error) {
154
- console.error("Instantiation of Kendo ComboBox as document format selector threw an exception", error);
155
- throw error;
156
- }
157
- $placeholder.on("keydown", '[name="format_input"]', function(event) {
158
- var tabkey = 9;
159
- if (event.keyCode === tabkey && bodyEditor) {
160
- setTimeout(function() {
161
- bodyEditor.focus();
162
- });
163
- }
164
- });
165
- try {
166
- bodyEditor = bodyEditorEl.kendoEditor({
167
- tools: [
168
- "bold",
169
- "italic",
170
- "underline",
171
- "strikethrough",
172
- "justifyLeft",
173
- "justifyCenter",
174
- "justifyRight",
175
- "justifyFull",
176
- "insertUnorderedList",
177
- "insertOrderedList",
178
- "indent",
179
- "outdent",
180
- "createLink",
181
- "unlink",
182
- "cleanFormatting",
183
- "formatting",
184
- "fontName",
185
- "fontSize",
186
- "foreColor",
187
- "backColor",
188
- "subscript",
189
- "superscript"
190
- ]
191
- }).data("kendoEditor");
192
- } catch (error) {
193
- console.error("Instantiation of Kendo Editor for Email body editor threw an exception", error);
194
- throw error;
195
- }
196
- setDefaultValues(viewerOptions.sendEmail);
197
- initialized = true;
198
- }
199
- }
200
- $(window).resize(function() {
201
- if (kendoSendEmailDialog && kendoSendEmailDialog.options.visible) {
202
- storeDialogPosition();
203
- adjustDialogSize();
204
- adjustDialogPosition();
205
- }
206
- });
207
- function setAttrs() {
208
- $placeholder.find(".trv-send-email-field input").each(function() {
209
- var el = $(this);
210
- var attrName = el.attr("name");
211
- el.attr("id", selector + "-" + attrName);
212
- });
213
- $placeholder.find(".trv-send-email-label label").each(function() {
214
- var el = $(this);
215
- var attrName = el.attr("for");
216
- el.attr("for", selector + "-" + attrName);
217
- });
218
- }
219
- function storeDialogPosition() {
220
- var kendoWindow = kendoSendEmailDialog.element.parent(".k-window");
221
- windowLocation = kendoWindow.offset();
222
- }
223
- function adjustDialogSize() {
224
- var kendoWindow = kendoSendEmailDialog.element.parent(".k-window");
225
- var windowWidth = $(window).width();
226
- var kendoWindowWidth = 350;
227
- if (windowWidth > 800) {
228
- kendoWindowWidth = 720;
229
- }
230
- kendoWindow.css({ width: kendoWindowWidth });
231
- kendoSendEmailDialog.refresh({
232
- width: kendoWindowWidth
233
- });
234
- }
235
- function adjustDialogPosition() {
236
- if (!windowLocation) {
237
- kendoSendEmailDialog.center();
238
- } else {
239
- var padding = 10;
240
- var windowWidth = $(window).innerWidth();
241
- var windowHeight = $(window).innerHeight();
242
- var kendoWindow = kendoSendEmailDialog.wrapper;
243
- var width = kendoWindow.outerWidth(true);
244
- var height = kendoWindow.outerHeight(true);
245
- var left = windowLocation.left;
246
- var top = windowLocation.top;
247
- var right = left + width;
248
- var bottom = top + height;
249
- if (right > windowWidth - padding) {
250
- left = Math.max(padding, windowWidth - width - padding);
251
- kendoWindow.css({ left });
252
- kendoSendEmailDialog.setOptions({
253
- position: {
254
- left
255
- }
256
- });
257
- }
258
- if (bottom > windowHeight - padding) {
259
- top = Math.max(padding, windowHeight - height - padding);
260
- kendoWindow.css({ top });
261
- kendoSendEmailDialog.setOptions({
262
- position: {
263
- top
264
- }
265
- });
266
- }
267
- }
268
- }
269
- function initCommands() {
270
- optionsCommandSet = {
271
- "sendEmail_Cancel": new Command(function() {
272
- closeWindow();
273
- }),
274
- "sendEmail_Send": new Command(function() {
275
- sendingEmail();
276
- })
277
- };
278
- Binder.attachCommands($placeholder.find(".trv-send-email-actions"), optionsCommandSet, viewerOptions);
279
- }
280
- function sendingEmail(cmd, args) {
281
- var sendEmailArgs = {
282
- from: inputFrom.val(),
283
- to: inputTo.val(),
284
- cc: inputCC.val(),
285
- subject: inputSubject.val(),
286
- format: docFormat.value(),
287
- body: getBody(),
288
- deviceInfo: {}
289
- };
290
- if (validateFields()) {
291
- controller.sendReport(sendEmailArgs);
292
- closeWindow();
293
- }
294
- }
295
- function setValidation() {
296
- inputFrom.off("blur").on("blur", function(event) {
297
- if (!isEmpty($(this))) {
298
- isValidEmail($(this), false);
299
- }
300
- });
301
- inputTo.off("blur").on("blur", function(event) {
302
- if (!isEmpty($(this))) {
303
- isValidEmail($(this), true);
304
- }
305
- });
306
- inputCC.off("blur").on("blur", function(event) {
307
- if ($(this).val().length) {
308
- isValidEmail($(this), true);
309
- } else {
310
- hideError($(this));
311
- }
312
- });
313
- }
314
- function validateFields() {
315
- var fromIsValid = isEmpty(inputFrom) || !isValidEmail(inputFrom, false);
316
- var toIsValid = isEmpty(inputTo) || !isValidEmail(inputTo, true);
317
- var ccIsValid = inputCC.val().length && !isValidEmail(inputCC, true);
318
- var hasFormat = docFormat.value().length;
319
- if (!hasFormat) {
320
- showError(docFormatEl, "data-required-msg");
321
- }
322
- if (fromIsValid || toIsValid || ccIsValid || !hasFormat) {
323
- return false;
324
- }
325
- return true;
326
- }
327
- function setDefaultValues(sendEmail) {
328
- inputFrom.val(sendEmail && sendEmail.from || "");
329
- inputTo.val(sendEmail && sendEmail.to || "");
330
- inputCC.val(sendEmail && sendEmail.cc || "");
331
- inputSubject.val(sendEmail && sendEmail.subject || "");
332
- if (sendEmail && sendEmail.format) {
333
- docFormat.value(sendEmail.format);
334
- } else {
335
- docFormat.select(0);
336
- }
337
- docFormat.trigger("change");
338
- bodyEditor.value(sendEmail && sendEmail.body || "");
339
- }
340
- function isEmpty($el) {
341
- if (!$el.val().length) {
342
- showError($el, "data-required-msg");
343
- return true;
344
- }
345
- hideError($el);
346
- return false;
347
- }
348
- function showError($el, tag) {
349
- var validationMsg = stringResources[$el.attr(tag)];
350
- $('[data-for="' + $el.attr("name") + '"]').addClass("-visible").text(validationMsg);
351
- }
352
- function hideError($el) {
353
- $('[data-for="' + $el.attr("name") + '"]').removeClass("-visible");
354
- }
355
- function isValidEmail($el, moreThenOneEmail) {
356
- var inputValue = $el.val();
357
- if (moreThenOneEmail) {
358
- var listEmailsAddress = inputValue.split(/[\s,;]+/);
359
- for (var i = 0; i < listEmailsAddress.length; i++) {
360
- if (!_validateEmail(listEmailsAddress[i].trim(), $el)) {
361
- return false;
362
- }
363
- }
364
- return true;
365
- }
366
- return _validateEmail(inputValue, $el);
367
- }
368
- function _validateEmail(email, $el) {
369
- var regexEmail = /\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/;
370
- if (email.indexOf(",") > -1 || email.indexOf(";") > -1) {
371
- showError($el, "data-single-email-msg");
372
- return false;
373
- }
374
- if (!regexEmail.test(email)) {
375
- showError($el, "data-email-msg");
376
- return false;
377
- }
378
- return true;
379
- }
380
- function closeWindow() {
381
- kendoSendEmailDialog.close();
382
- }
383
- function clearValidation() {
384
- $(".k-invalid-msg").removeClass("-visible");
385
- }
386
- }
387
-
388
- export { SendEmail };
@@ -1,49 +0,0 @@
1
- import { stringResources } from './stringResources.js';
2
-
3
- function isNumber(value) {
4
- return typeof value === "number" && isFinite(value);
5
- }
6
- function secondsToMilliseconds(seconds) {
7
- return seconds * 1e3;
8
- }
9
- function ServiceClientSentinel(serviceClient, clientID, sessionTimeoutSeconds) {
10
- if (!serviceClient) {
11
- throw stringResources.noServiceClient;
12
- }
13
- if (!isNumber(sessionTimeoutSeconds)) {
14
- throw "sessionTimeoutSeconds must a number and must be finite";
15
- }
16
- var interval;
17
- var pingMilliseconds;
18
- if (sessionTimeoutSeconds <= 120) {
19
- pingMilliseconds = secondsToMilliseconds(sessionTimeoutSeconds) / 2;
20
- } else {
21
- pingMilliseconds = secondsToMilliseconds(sessionTimeoutSeconds - 60);
22
- }
23
- function start() {
24
- if (pingMilliseconds <= 0) {
25
- return;
26
- }
27
- pingMilliseconds = Math.min(pingMilliseconds, 2147483647);
28
- interval = setInterval(function() {
29
- serviceClient.keepClientAlive(clientID);
30
- }, pingMilliseconds);
31
- }
32
- function restart() {
33
- stop();
34
- start();
35
- }
36
- function stop() {
37
- if (interval) {
38
- clearInterval(interval);
39
- interval = null;
40
- }
41
- }
42
- return {
43
- start,
44
- restart,
45
- stop
46
- };
47
- }
48
-
49
- export { ServiceClientSentinel };