@progress/telerik-jquery-report-viewer 22.24.514 → 22.24.709
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +1 -1
- package/dist/cjs/accessibility.js +28 -38
- package/dist/cjs/base-component.js +26 -0
- package/dist/cjs/binder.js +45 -138
- package/dist/cjs/controller.js +22 -25
- package/dist/cjs/documentMapArea.js +4 -13
- package/dist/cjs/event-emitter.js +124 -10
- package/dist/cjs/mainMenu.js +22 -31
- package/dist/cjs/pagesArea.js +8 -27
- package/dist/cjs/parameterValidators.js +4 -7
- package/dist/cjs/parameters.js +13 -13
- package/dist/cjs/parametersArea.js +31 -47
- package/dist/cjs/print.js +3 -4
- package/dist/cjs/reportViewer.js +38 -27
- package/dist/cjs/scroll.js +4 -6
- package/dist/cjs/search.js +327 -377
- package/dist/cjs/sendEmail.js +52 -95
- package/dist/cjs/serviceClient.js +163 -257
- package/dist/cjs/sideMenu.js +15 -24
- package/dist/cjs/sr.js +4 -4
- package/dist/cjs/template-cache.js +6 -6
- package/dist/cjs/toolbar/link-button.js +42 -0
- package/dist/cjs/toolbar/page-count-label.js +18 -0
- package/dist/cjs/toolbar/page-number-input.js +64 -0
- package/dist/cjs/uiFreezeCoordinator.js +17 -16
- package/dist/cjs/utils.js +11 -14
- package/dist/es/accessibility.js +29 -39
- package/dist/es/base-component.js +22 -0
- package/dist/es/binder.js +45 -138
- package/dist/es/controller.js +23 -26
- package/dist/es/documentMapArea.js +4 -13
- package/dist/es/event-emitter.js +124 -10
- package/dist/es/mainMenu.js +23 -32
- package/dist/es/pagesArea.js +9 -28
- package/dist/es/parameterValidators.js +5 -8
- package/dist/es/parameters.js +14 -14
- package/dist/es/parametersArea.js +32 -48
- package/dist/es/print.js +4 -5
- package/dist/es/reportViewer.js +39 -28
- package/dist/es/scroll.js +4 -6
- package/dist/es/search.js +328 -378
- package/dist/es/sendEmail.js +52 -95
- package/dist/es/serviceClient.js +164 -258
- package/dist/es/sideMenu.js +16 -25
- package/dist/es/sr.js +4 -4
- package/dist/es/template-cache.js +7 -7
- package/dist/es/toolbar/link-button.js +38 -0
- package/dist/es/toolbar/page-count-label.js +14 -0
- package/dist/es/toolbar/page-number-input.js +60 -0
- package/dist/es/uiFreezeCoordinator.js +17 -16
- package/dist/es/utils.js +11 -14
- package/dist/font/font-icons.css +4 -4
- package/dist/font/font-icons.min.css +3 -3
- package/dist/js/telerikReportViewer.js +1071 -1188
- package/dist/js/telerikReportViewer.min.js +1 -1
- package/dist/js/telerikReportViewer.stringResources.js +4 -4
- package/dist/styles/telerikReportViewer.css +3 -3
- package/dist/styles/telerikReportViewer.min.css +3 -3
- package/dist/templates/telerikReportViewerTemplate-FA.html +4 -4
- package/dist/templates/telerikReportViewerTemplate.html +6 -6
- package/package.json +3 -2
- /package/dist/font/{ReportingIcons-18.1.24.514.ttf → ReportingIcons-18.1.24.709.ttf} +0 -0
package/dist/es/sr.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
var _a;
|
2
2
|
var sr = {
|
3
|
-
//warning and error string resources
|
3
|
+
// warning and error string resources
|
4
4
|
controllerNotInitialized: "Controller is not initialized.",
|
5
5
|
noReportInstance: "No report instance.",
|
6
6
|
missingTemplate: "!obsolete resource!",
|
@@ -33,7 +33,7 @@ var sr = {
|
|
33
33
|
promisesChainStopError: "Error shown. Throwing promises chain stop error.",
|
34
34
|
renderingCanceled: "Report processing was canceled.",
|
35
35
|
tryReportPreview: "The report may now be previewed.",
|
36
|
-
//viewer template string resources
|
36
|
+
// viewer template string resources
|
37
37
|
parameterEditorSelectNone: "clear selection",
|
38
38
|
parameterEditorSelectAll: "select all",
|
39
39
|
parametersAreaPreviewButton: "Preview",
|
@@ -77,7 +77,7 @@ var sr = {
|
|
77
77
|
sendEmailFormatLabel: "Format:",
|
78
78
|
sendEmailSendLabel: "Send",
|
79
79
|
sendEmailCancelLabel: "Cancel",
|
80
|
-
//accessibility string resources
|
80
|
+
// accessibility string resources
|
81
81
|
ariaLabelPageNumberSelector: "Page number selector. Showing page {0} of {1}.",
|
82
82
|
ariaLabelPageNumberEditor: "Page number editor",
|
83
83
|
ariaLabelExpandable: "Expandable",
|
@@ -137,7 +137,7 @@ var sr = {
|
|
137
137
|
ariaLabelSendEmailFormat: "Report format:",
|
138
138
|
ariaLabelSendEmailSend: "Send email",
|
139
139
|
ariaLabelSendEmailCancel: "Cancel sending email",
|
140
|
-
//search dialog resources
|
140
|
+
// search dialog resources
|
141
141
|
searchDialogTitle: "Search in report contents",
|
142
142
|
searchDialogSearchInProgress: "searching...",
|
143
143
|
searchDialogNoResultsLabel: "No results",
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { rTrim, replaceAll,
|
1
|
+
import { rTrim, replaceAll, trim, filterUniqueLastOccurrence } from './utils.js';
|
2
2
|
|
3
3
|
const TemplateCache = function() {
|
4
4
|
var cache = {};
|
@@ -13,14 +13,14 @@ const TemplateCache = function() {
|
|
13
13
|
html = replaceAll(html, "{service}/", baseUri);
|
14
14
|
html = replaceAll(html, "{service}", baseUri);
|
15
15
|
var viewerTemplate = $("<div></div>").html(html);
|
16
|
-
|
17
|
-
var $
|
18
|
-
templates[$
|
16
|
+
Array.from(viewerTemplate.find("template")).forEach((element) => {
|
17
|
+
var $element = $(element);
|
18
|
+
templates[$element.attr("id")] = trim($element.html(), "\n ");
|
19
19
|
});
|
20
|
-
|
21
|
-
styleSheets.push(trim(
|
20
|
+
Array.from(viewerTemplate.find("link")).forEach((element) => {
|
21
|
+
styleSheets.push(trim(element.outerHTML, "\n "));
|
22
22
|
});
|
23
|
-
styleSheets =
|
23
|
+
styleSheets = filterUniqueLastOccurrence(styleSheets);
|
24
24
|
return {
|
25
25
|
templates,
|
26
26
|
styleSheets
|
@@ -0,0 +1,38 @@
|
|
1
|
+
import { BaseComponent } from '../base-component.js';
|
2
|
+
|
3
|
+
var __defProp = Object.defineProperty;
|
4
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
5
|
+
var __publicField = (obj, key, value) => {
|
6
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
7
|
+
return value;
|
8
|
+
};
|
9
|
+
class LinkButton extends BaseComponent {
|
10
|
+
// #endregion
|
11
|
+
// #region constructor
|
12
|
+
constructor(element, options) {
|
13
|
+
super(element, options);
|
14
|
+
// #region fields
|
15
|
+
__publicField(this, "cmd");
|
16
|
+
var dataCommand = this.$element.attr("data-command");
|
17
|
+
if (dataCommand) {
|
18
|
+
this.cmd = this.options.commands[dataCommand];
|
19
|
+
}
|
20
|
+
if (this.cmd) {
|
21
|
+
this.$element.on("click", (event) => {
|
22
|
+
if (this.cmd.enabled()) {
|
23
|
+
this.cmd.exec($(this).attr("data-command-parameter"));
|
24
|
+
} else {
|
25
|
+
event.preventDefault();
|
26
|
+
}
|
27
|
+
});
|
28
|
+
$(this.cmd).on("enabledChanged", (event) => {
|
29
|
+
(this.cmd.enabled() ? $.fn.removeClass : $.fn.addClass).call(this.$element, "disabled");
|
30
|
+
}).on("checkedChanged", (event) => {
|
31
|
+
(this.cmd.checked() ? $.fn.addClass : $.fn.removeClass).call(this.$element, "checked");
|
32
|
+
});
|
33
|
+
}
|
34
|
+
}
|
35
|
+
// #endregion
|
36
|
+
}
|
37
|
+
|
38
|
+
export { LinkButton };
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import { BaseComponent } from '../base-component.js';
|
2
|
+
|
3
|
+
class PageCountLabel extends BaseComponent {
|
4
|
+
// #region constructor
|
5
|
+
constructor(element, options) {
|
6
|
+
super(element, options);
|
7
|
+
this.options.controller.pageCountChange((event, value) => {
|
8
|
+
this.$element.text(value);
|
9
|
+
});
|
10
|
+
}
|
11
|
+
// #endregion
|
12
|
+
}
|
13
|
+
|
14
|
+
export { PageCountLabel };
|
@@ -0,0 +1,60 @@
|
|
1
|
+
import { BaseComponent } from '../base-component.js';
|
2
|
+
import { tryParseInt } from '../utils.js';
|
3
|
+
|
4
|
+
var __defProp = Object.defineProperty;
|
5
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
6
|
+
var __publicField = (obj, key, value) => {
|
7
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
8
|
+
return value;
|
9
|
+
};
|
10
|
+
class PageNumberInput extends BaseComponent {
|
11
|
+
// #endregion
|
12
|
+
// #region constructor
|
13
|
+
constructor(element, options) {
|
14
|
+
super(element, options);
|
15
|
+
// #region fields
|
16
|
+
__publicField(this, "cmd");
|
17
|
+
__publicField(this, "_numeric");
|
18
|
+
this.cmd = this.options.commands["goToPage"];
|
19
|
+
this._numeric = new kendo.ui.NumericTextBox(this.element, {
|
20
|
+
format: "0",
|
21
|
+
decimals: 0,
|
22
|
+
min: 0,
|
23
|
+
spinners: false,
|
24
|
+
change: this._onChange.bind(this),
|
25
|
+
spin: this._onChange.bind(this)
|
26
|
+
});
|
27
|
+
this._numeric._text[0].dataset.role = "telerik_ReportViewer_PageNumberInput";
|
28
|
+
this._numeric.element[0].dataset.role = "";
|
29
|
+
this.options.controller.on("reportLoadComplete", (event, reportInfo) => {
|
30
|
+
this._numeric.max(reportInfo.pageCount);
|
31
|
+
this._numeric.min(Math.min(1, reportInfo.pageCount));
|
32
|
+
this._numeric.value(Math.min(1, reportInfo.pageCount));
|
33
|
+
}).on("loadedReportChange", (event) => {
|
34
|
+
this._numeric.min(0);
|
35
|
+
this._numeric.max(0);
|
36
|
+
this._numeric.value(0);
|
37
|
+
}).on("renderingStopped", (event) => {
|
38
|
+
this._numeric.min(0);
|
39
|
+
this._numeric.max(0);
|
40
|
+
this._numeric.value(0);
|
41
|
+
}).pageNumberChange((event, value) => {
|
42
|
+
this._numeric.value(value);
|
43
|
+
});
|
44
|
+
}
|
45
|
+
// #endregion
|
46
|
+
// #region event handlers
|
47
|
+
_onChange(event, data) {
|
48
|
+
var val = this._numeric.value();
|
49
|
+
var num = tryParseInt(val);
|
50
|
+
if (!isNaN(num)) {
|
51
|
+
this.cmd.exec(num);
|
52
|
+
}
|
53
|
+
}
|
54
|
+
_onSpin(event, data) {
|
55
|
+
return this._onChange(event, data);
|
56
|
+
}
|
57
|
+
// #endregion
|
58
|
+
}
|
59
|
+
|
60
|
+
export { PageNumberInput };
|
@@ -3,21 +3,21 @@ import { rectangle, getColorAlphaValue } from './utils.js';
|
|
3
3
|
var UIFreezeCoordinator = {
|
4
4
|
$placeholder: null,
|
5
5
|
$scrollableContainer: null,
|
6
|
-
itemsInitialState: {},
|
7
6
|
// Holds all items initial position per container
|
7
|
+
itemsInitialState: {},
|
8
|
+
// Holds the bounds of the frozen areas by X per container
|
8
9
|
xFrozenAreasBounds: {},
|
9
|
-
//Holds the bounds of the frozen areas by
|
10
|
+
// Holds the bounds of the frozen areas by Y per container
|
10
11
|
yFrozenAreasBounds: {},
|
11
|
-
//Holds the bounds of the frozen areas by Y per container
|
12
12
|
freezeMaxZIndex: {},
|
13
13
|
zIndex: 1,
|
14
|
-
freezeBGColor: {},
|
15
14
|
// Holds default background-color value per container
|
16
|
-
|
15
|
+
freezeBGColor: {},
|
16
|
+
// Holds whether freezing has been applied per container.
|
17
|
+
currentlyFrozenContainer: {
|
17
18
|
vertical: {},
|
18
19
|
horizontal: {}
|
19
20
|
},
|
20
|
-
//Holds whether freezing has been applied per container.
|
21
21
|
isInitialize: false,
|
22
22
|
scaleFactor: null,
|
23
23
|
/**
|
@@ -145,28 +145,28 @@ var UIFreezeCoordinator = {
|
|
145
145
|
var horizontalMoveOffset = scrollableContainerScrollLeft - elementWrapperLeftPosition;
|
146
146
|
if (hasFixColumn && verticalMoveOffset > 0) {
|
147
147
|
if (scrollableContainerScrollTop <= $elementWrapper.outerHeight() * this.scaleFactor + elementWrapperTopPosition - this.yFrozenAreasBounds[freezeItemsContainerID].height) {
|
148
|
-
this.
|
148
|
+
this.currentlyFrozenContainer.vertical[freezeItemsContainerID] = true;
|
149
149
|
this._updateUIElementsPosition($colHeaders, "top", verticalMoveOffset / this.scaleFactor, freezeItemsContainerID);
|
150
150
|
}
|
151
151
|
} else {
|
152
|
-
if (this.
|
153
|
-
delete this.
|
152
|
+
if (this.currentlyFrozenContainer.vertical[freezeItemsContainerID]) {
|
153
|
+
delete this.currentlyFrozenContainer.vertical[freezeItemsContainerID];
|
154
154
|
this._updateUIElementsPosition($colHeaders, "top", -1, freezeItemsContainerID);
|
155
155
|
}
|
156
156
|
}
|
157
157
|
if (hasFixRow && horizontalMoveOffset > 0) {
|
158
158
|
if (scrollableContainerScrollLeft <= $elementWrapper.outerWidth() * this.scaleFactor + elementWrapperLeftPosition - this.xFrozenAreasBounds[freezeItemsContainerID].width) {
|
159
|
-
this.
|
159
|
+
this.currentlyFrozenContainer.horizontal[freezeItemsContainerID] = true;
|
160
160
|
this._updateUIElementsPosition($rowHeaders, "left", horizontalMoveOffset / this.scaleFactor, freezeItemsContainerID);
|
161
161
|
}
|
162
162
|
} else {
|
163
|
-
if (this.
|
164
|
-
delete this.
|
163
|
+
if (this.currentlyFrozenContainer.horizontal[freezeItemsContainerID]) {
|
164
|
+
delete this.currentlyFrozenContainer.horizontal[freezeItemsContainerID];
|
165
165
|
this._updateUIElementsPosition($rowHeaders, "left", -1, freezeItemsContainerID);
|
166
166
|
}
|
167
167
|
}
|
168
168
|
} else {
|
169
|
-
if (this.
|
169
|
+
if (this.currentlyFrozenContainer.horizontal[freezeItemsContainerID] || this.currentlyFrozenContainer.vertical[freezeItemsContainerID]) {
|
170
170
|
this._resetToDefaultPosition(freezeItemsContainerID);
|
171
171
|
}
|
172
172
|
}
|
@@ -181,8 +181,8 @@ var UIFreezeCoordinator = {
|
|
181
181
|
var $colHeaders = $("[data-sticky-direction*='Vertical'][data-sticky-id='" + freezeItemsContainerID + "']");
|
182
182
|
this._updateUIElementsPosition($colHeaders, "top", -1, freezeItemsContainerID);
|
183
183
|
this._updateUIElementsPosition($rowHeaders, "left", -1, freezeItemsContainerID);
|
184
|
-
delete this.
|
185
|
-
delete this.
|
184
|
+
delete this.currentlyFrozenContainer.horizontal[freezeItemsContainerID];
|
185
|
+
delete this.currentlyFrozenContainer.vertical[freezeItemsContainerID];
|
186
186
|
},
|
187
187
|
/**
|
188
188
|
* Update the freeze elements position
|
@@ -225,6 +225,7 @@ var UIFreezeCoordinator = {
|
|
225
225
|
$item.css(newStyleRules);
|
226
226
|
}
|
227
227
|
},
|
228
|
+
// eslint-disable-next-line max-params
|
228
229
|
_applyBgColorOnScroll: function($item, isItemFrozenBothDirection, hasInitialBgColor, shouldApplyBGColor, freezeItemsContainerID) {
|
229
230
|
if ($item.is("img")) {
|
230
231
|
return true;
|
@@ -243,7 +244,7 @@ var UIFreezeCoordinator = {
|
|
243
244
|
return getColorAlphaValue(bgColorValue) > 0;
|
244
245
|
},
|
245
246
|
_isFrozen: function(freezeItemsContainerID) {
|
246
|
-
return this.
|
247
|
+
return this.currentlyFrozenContainer.horizontal[freezeItemsContainerID] || this.currentlyFrozenContainer.vertical[freezeItemsContainerID];
|
247
248
|
},
|
248
249
|
/**
|
249
250
|
* Checks if an UI element is in the visible part of the scrollable container
|
package/dist/es/utils.js
CHANGED
@@ -168,13 +168,11 @@ function areEqualArrays(array1, array2) {
|
|
168
168
|
if (array1 === null) {
|
169
169
|
if (array2 !== null) {
|
170
170
|
return false;
|
171
|
-
} else {
|
172
|
-
return true;
|
173
|
-
}
|
174
|
-
} else {
|
175
|
-
if (array2 === null) {
|
176
|
-
return false;
|
177
171
|
}
|
172
|
+
return true;
|
173
|
+
}
|
174
|
+
if (array2 === null) {
|
175
|
+
return false;
|
178
176
|
}
|
179
177
|
if (array1.length !== array2.length) {
|
180
178
|
return false;
|
@@ -300,7 +298,7 @@ function selector() {
|
|
300
298
|
function isArray(obj) {
|
301
299
|
if (Array.isArray(obj))
|
302
300
|
return true;
|
303
|
-
var length =
|
301
|
+
var length = Boolean(obj) && "length" in obj && obj.length;
|
304
302
|
if (typeof length === "number") {
|
305
303
|
return true;
|
306
304
|
}
|
@@ -320,12 +318,11 @@ function loadScriptWithCallback(src, done, version) {
|
|
320
318
|
function loadScript(url) {
|
321
319
|
var ajaxOptions = {
|
322
320
|
dataType: "script",
|
323
|
-
cache: true
|
324
|
-
url
|
321
|
+
cache: true
|
325
322
|
};
|
326
|
-
return $ajax(ajaxOptions);
|
323
|
+
return $ajax(url, ajaxOptions);
|
327
324
|
}
|
328
|
-
function
|
325
|
+
function filterUniqueLastOccurrence(array) {
|
329
326
|
function onlyLastUnique(value, index, self) {
|
330
327
|
return self.lastIndexOf(value) === index;
|
331
328
|
}
|
@@ -384,9 +381,9 @@ function getColorAlphaValue(color) {
|
|
384
381
|
var alpha = colorComponents.length === 4 ? parseFloat((parseFloat(colorComponents[3].replace(/[()]/g, "")) / 255).toFixed(2)) : 1;
|
385
382
|
return alpha;
|
386
383
|
}
|
387
|
-
function $ajax(ajaxSettings) {
|
384
|
+
function $ajax(url, ajaxSettings) {
|
388
385
|
return new Promise(function(resolve, reject) {
|
389
|
-
$.ajax(ajaxSettings).done(function(data) {
|
386
|
+
$.ajax(url, ajaxSettings).done(function(data) {
|
390
387
|
return resolve(data);
|
391
388
|
}).fail(function(xhr, status, error) {
|
392
389
|
reject(toXhrErrorData(xhr, status, error));
|
@@ -444,4 +441,4 @@ function isEqual(a, b) {
|
|
444
441
|
return false;
|
445
442
|
}
|
446
443
|
|
447
|
-
export { $ajax, adjustTimezone, areEqual, areEqualArrays, each, escapeHtml, exceptionTypeNamesMatch, extend,
|
444
|
+
export { $ajax, adjustTimezone, areEqual, areEqualArrays, each, escapeHtml, exceptionTypeNamesMatch, extend, filterUniqueLastOccurrence, findElement, generateGuidString, getColorAlphaValue, getExceptionInstance, isApplicationException, isApplicationExceptionInstance, isArray, isEqual, isExceptionOfType, isInternalServerError, isInvalidClientException, isRgbColor, isSpecialKey, isSvgSupported, isSystemArgumentException, lTrim, loadScript, loadScriptWithCallback, logError, parseJSON, parseToLocalDate, rTrim, rectangle, replaceAll, reportSourcesAreEqual, selector, stringFormat, toRgbColor, trim, tryParseFloat, tryParseInt, type, unadjustTimezone };
|
package/dist/font/font-icons.css
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*
|
2
|
-
* TelerikReporting v18.1.24.
|
2
|
+
* TelerikReporting v18.1.24.709 (https://www.telerik.com/products/reporting.aspx)
|
3
3
|
* Copyright 2024 Progress Software EAD. All rights reserved.
|
4
4
|
*
|
5
5
|
* Telerik Reporting commercial licenses may be obtained at
|
@@ -10,14 +10,14 @@
|
|
10
10
|
font-family: "ReportingIcons";
|
11
11
|
font-style: normal;
|
12
12
|
font-weight: normal;
|
13
|
-
src: url("../ReportingIcons-18.1.24.
|
13
|
+
src: url("../ReportingIcons-18.1.24.709.ttf/") format("truetype");
|
14
14
|
/*unicode-range: U+E0ED, U+E0EE, U+E0E6, U+E132, U+E12F, U+E008, U+E00B, U+E09C, U+E096, U+E07E, U+E086, U+E06C, U+E07F, U+E080, U+E081, U+E149, U+E087;*/
|
15
15
|
}
|
16
16
|
@font-face {
|
17
17
|
font-family: "WebComponentsIcons";
|
18
18
|
font-style: normal;
|
19
19
|
font-weight: normal;
|
20
|
-
src: url("../ReportingIcons-18.1.24.
|
20
|
+
src: url("../ReportingIcons-18.1.24.709.ttf/") format("truetype");
|
21
21
|
}
|
22
22
|
.k-icon {
|
23
23
|
/* use !important to prevent issues with browser extensions that change fonts */
|
@@ -4449,4 +4449,4 @@
|
|
4449
4449
|
.trv-report-viewer .k-splitbar-vertical .k-expand-next:before {
|
4450
4450
|
content: "\e004";
|
4451
4451
|
}
|
4452
|
-
/* DO NOT MODIFY OR DELETE THIS LINE! UPGRADE WIZARD CHECKSUM
|
4452
|
+
/* DO NOT MODIFY OR DELETE THIS LINE! UPGRADE WIZARD CHECKSUM ea50b677c266c4c95ae9fdfac554efbb */
|