@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.
- package/README.md +1 -1
- package/dist/cjs/accessibility.js +22 -64
- package/dist/cjs/aiPrompt.js +311 -0
- package/dist/cjs/base-component.js +8 -11
- package/dist/cjs/binder.js +12 -12
- package/dist/cjs/command.js +44 -25
- package/dist/cjs/commandSet.js +78 -53
- package/dist/cjs/components/button.js +41 -0
- package/dist/cjs/components/toggle-button.js +47 -0
- package/dist/cjs/constants.js +22 -0
- package/dist/cjs/documentMapArea.js +114 -93
- package/dist/cjs/event-emitter.js +2 -8
- package/dist/cjs/history.js +13 -12
- package/dist/cjs/index.js +4 -12
- package/dist/cjs/mainMenu.js +38 -28
- package/dist/cjs/mem-storage.js +7 -13
- package/dist/cjs/notificationService.js +128 -0
- package/dist/cjs/parameterValidators.js +26 -25
- package/dist/cjs/parameters.js +180 -161
- package/dist/cjs/parametersArea.js +306 -298
- package/dist/cjs/perspectives.js +23 -27
- package/dist/cjs/report-viewer/report-viewer-settings.js +4 -10
- package/dist/cjs/reportViewer.js +441 -190
- package/dist/cjs/search.js +218 -328
- package/dist/cjs/sendEmail.js +259 -264
- package/dist/cjs/service-client-sentinel.js +1 -1
- package/dist/cjs/sideMenu.js +20 -16
- package/dist/cjs/sr.js +9 -5
- package/dist/cjs/template-cache.js +2 -2
- package/dist/cjs/toolbar/button.js +18 -0
- package/dist/cjs/toolbar/link-button.js +6 -12
- package/dist/cjs/toolbar/page-count-label.js +1 -1
- package/dist/cjs/toolbar/page-number-input.js +16 -14
- package/dist/cjs/toolbar.js +186 -0
- package/dist/cjs/touch.js +8 -8
- package/dist/cjs/uiController.js +70 -57
- package/dist/cjs/utils.js +20 -207
- package/dist/font/font-icons.css +25 -222
- package/dist/font/font-icons.min.css +3 -3
- package/dist/js/telerikReportViewer.js +8173 -9110
- package/dist/js/telerikReportViewer.kendo.js +105616 -60642
- package/dist/js/telerikReportViewer.kendo.min.js +2 -2
- package/dist/js/telerikReportViewer.min.js +1 -1
- package/dist/js/telerikReportViewer.stringResources.js +9 -5
- package/dist/styles/telerikReportViewer.css +3 -3
- package/dist/styles/telerikReportViewer.min.css +3 -3
- package/dist/templates/telerikReportViewerTemplate.html +299 -238
- package/package.json +2 -3
- package/dist/cjs/controller.js +0 -1226
- package/dist/cjs/kendo-jquery.js +0 -4
- package/dist/cjs/pagesArea.js +0 -625
- package/dist/cjs/print.js +0 -165
- package/dist/cjs/scroll.js +0 -535
- package/dist/cjs/serviceClient.js +0 -311
- package/dist/cjs/telerikReportViewer.kendo.js +0 -60196
- package/dist/cjs/telerikReportViewer.kendo.min.js +0 -19776
- package/dist/cjs/uiFreezeCoordinator.js +0 -282
- package/dist/es/accessibility.js +0 -204
- package/dist/es/base-component.js +0 -22
- package/dist/es/binder.js +0 -75
- package/dist/es/command.js +0 -28
- package/dist/es/commandSet.js +0 -163
- package/dist/es/controller.js +0 -1222
- package/dist/es/documentMapArea.js +0 -161
- package/dist/es/domUtils.js +0 -43
- package/dist/es/enums.js +0 -41
- package/dist/es/event-emitter.js +0 -127
- package/dist/es/events.js +0 -20
- package/dist/es/globalSettings.js +0 -5
- package/dist/es/history.js +0 -131
- package/dist/es/index.js +0 -25
- package/dist/es/jqueryThrottleDebounce.js +0 -46
- package/dist/es/kendo-jquery.js +0 -1
- package/dist/es/mainMenu.js +0 -319
- package/dist/es/mem-storage.js +0 -40
- package/dist/es/pagesArea.js +0 -621
- package/dist/es/parameterValidators.js +0 -160
- package/dist/es/parameters.js +0 -916
- package/dist/es/parametersArea.js +0 -493
- package/dist/es/perspectives.js +0 -134
- package/dist/es/print.js +0 -161
- package/dist/es/report-viewer/report-viewer-settings.js +0 -134
- package/dist/es/reportViewer.js +0 -666
- package/dist/es/scroll.js +0 -531
- package/dist/es/search.js +0 -580
- package/dist/es/sendEmail.js +0 -388
- package/dist/es/service-client-sentinel.js +0 -49
- package/dist/es/serviceClient.js +0 -307
- package/dist/es/sideMenu.js +0 -212
- package/dist/es/sr.js +0 -164
- package/dist/es/stringResources.js +0 -7
- package/dist/es/telerikReportViewer.kendo.js +0 -60194
- package/dist/es/telerikReportViewer.kendo.min.js +0 -19774
- package/dist/es/template-cache.js +0 -35
- package/dist/es/toolbar/link-button.js +0 -38
- package/dist/es/toolbar/page-count-label.js +0 -14
- package/dist/es/toolbar/page-number-input.js +0 -60
- package/dist/es/touch.js +0 -82
- package/dist/es/uiController.js +0 -138
- package/dist/es/uiFreezeCoordinator.js +0 -278
- package/dist/es/utils.js +0 -444
- package/dist/templates/telerikReportViewerTemplate-FA.html +0 -317
- /package/dist/font/{ReportingIcons-19.0.25.211.ttf → ReportingIcons-19.1.25.521.ttf} +0 -0
package/dist/cjs/commandSet.js
CHANGED
@@ -2,71 +2,91 @@
|
|
2
2
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
|
-
var enums = require('./enums.js');
|
6
5
|
var command = require('./command.js');
|
6
|
+
var RCV = require('@progress/telerik-common-report-viewer');
|
7
|
+
|
8
|
+
function _interopNamespace(e) {
|
9
|
+
if (e && e.__esModule) return e;
|
10
|
+
var n = Object.create(null);
|
11
|
+
if (e) {
|
12
|
+
Object.keys(e).forEach(function (k) {
|
13
|
+
if (k !== 'default') {
|
14
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
15
|
+
Object.defineProperty(n, k, d.get ? d : {
|
16
|
+
enumerable: true,
|
17
|
+
get: function () { return e[k]; }
|
18
|
+
});
|
19
|
+
}
|
20
|
+
});
|
21
|
+
}
|
22
|
+
n["default"] = e;
|
23
|
+
return Object.freeze(n);
|
24
|
+
}
|
25
|
+
|
26
|
+
var RCV__namespace = /*#__PURE__*/_interopNamespace(RCV);
|
7
27
|
|
8
28
|
var scaleTransitionMap = {};
|
9
|
-
scaleTransitionMap[
|
10
|
-
scaleTransitionMap[
|
11
|
-
scaleTransitionMap[
|
29
|
+
scaleTransitionMap[RCV__namespace.ScaleMode.FitPage] = RCV__namespace.ScaleMode.FitPageWidth;
|
30
|
+
scaleTransitionMap[RCV__namespace.ScaleMode.FitPageWidth] = RCV__namespace.ScaleMode.Specific;
|
31
|
+
scaleTransitionMap[RCV__namespace.ScaleMode.Specific] = RCV__namespace.ScaleMode.FitPage;
|
12
32
|
var scaleValues = [0.1, 0.25, 0.5, 0.75, 1, 1.5, 2, 4, 8];
|
13
33
|
function CommandSet(options) {
|
14
34
|
var controller = options.controller;
|
15
35
|
if (!controller) {
|
16
36
|
throw "No options.controller.";
|
17
37
|
}
|
38
|
+
var notificationService = options.notificationService;
|
39
|
+
if (!notificationService) {
|
40
|
+
throw "No options.notificationService.";
|
41
|
+
}
|
18
42
|
var historyManager = options.history;
|
19
43
|
if (!historyManager) {
|
20
44
|
throw "No options.history.";
|
21
45
|
}
|
22
46
|
function getDocumentMapVisible() {
|
23
47
|
var args = {};
|
24
|
-
|
48
|
+
notificationService.getDocumentMapState(args);
|
25
49
|
return Boolean(args.visible);
|
26
50
|
}
|
27
51
|
function getParametersAreaVisible() {
|
28
52
|
var args = {};
|
29
|
-
|
30
|
-
return Boolean(args.visible);
|
31
|
-
}
|
32
|
-
function getSideMenuVisible() {
|
33
|
-
var args = {};
|
34
|
-
controller.getSideMenuVisible(args);
|
53
|
+
notificationService.getParametersAreaState(args);
|
35
54
|
return Boolean(args.visible);
|
36
55
|
}
|
37
56
|
function getSearchDialogVisible() {
|
38
|
-
|
39
|
-
controller.getSearchDialogState(args);
|
40
|
-
return Boolean(args.visible);
|
57
|
+
return Boolean(controller.getSearchInitiated());
|
41
58
|
}
|
42
59
|
function getSendEmailDialogVisible() {
|
43
60
|
var args = {};
|
44
|
-
|
61
|
+
notificationService.getSendEmailDialogState(args);
|
45
62
|
return Boolean(args.visible);
|
46
63
|
}
|
64
|
+
function getAiPromptDialogVisible() {
|
65
|
+
return Boolean(controller.getAiPromptInitiated());
|
66
|
+
}
|
47
67
|
return {
|
48
|
-
"historyBack": new command.Command(
|
68
|
+
"historyBack": new command.Command(() => {
|
49
69
|
historyManager.back();
|
50
70
|
}),
|
51
|
-
"historyForward": new command.Command(
|
71
|
+
"historyForward": new command.Command(() => {
|
52
72
|
historyManager.forward();
|
53
73
|
}),
|
54
|
-
"stopRendering": new command.Command(
|
74
|
+
"stopRendering": new command.Command(() => {
|
55
75
|
controller.stopRendering();
|
56
76
|
}),
|
57
|
-
"goToPrevPage": new command.Command(
|
77
|
+
"goToPrevPage": new command.Command(() => {
|
58
78
|
controller.navigateToPage(controller.getCurrentPageNumber() - 1);
|
59
79
|
}),
|
60
|
-
"goToNextPage": new command.Command(
|
80
|
+
"goToNextPage": new command.Command(() => {
|
61
81
|
controller.navigateToPage(controller.getCurrentPageNumber() + 1);
|
62
82
|
}),
|
63
|
-
"goToFirstPage": new command.Command(
|
83
|
+
"goToFirstPage": new command.Command(() => {
|
64
84
|
controller.navigateToPage(1);
|
65
85
|
}),
|
66
|
-
"goToLastPage": new command.Command(
|
86
|
+
"goToLastPage": new command.Command(() => {
|
67
87
|
controller.navigateToPage(controller.getPageCount());
|
68
88
|
}),
|
69
|
-
"goToPage": new command.Command(
|
89
|
+
"goToPage": new command.Command((pageNumber) => {
|
70
90
|
if (!isNaN(pageNumber)) {
|
71
91
|
var pageCount = controller.getPageCount();
|
72
92
|
if (pageNumber > pageCount) {
|
@@ -78,62 +98,67 @@ function CommandSet(options) {
|
|
78
98
|
return pageNumber;
|
79
99
|
}
|
80
100
|
}),
|
81
|
-
"refresh": new command.Command(
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
),
|
86
|
-
"export": new command.Command(function(format) {
|
101
|
+
"refresh": new command.Command(() => {
|
102
|
+
controller.refreshReport(true, "", false);
|
103
|
+
}),
|
104
|
+
"export": new command.Command((format) => {
|
87
105
|
if (format) {
|
88
106
|
controller.exportReport(format);
|
89
107
|
}
|
90
108
|
}),
|
91
|
-
"print": new command.Command(
|
109
|
+
"print": new command.Command(() => {
|
92
110
|
controller.printReport();
|
93
111
|
}),
|
94
|
-
"pageMode": new command.Command(
|
112
|
+
"pageMode": new command.Command(() => {
|
95
113
|
controller.setPageMode(
|
96
|
-
controller.getPageMode() ===
|
114
|
+
controller.getPageMode() === RCV__namespace.PageMode.SinglePage ? RCV__namespace.PageMode.ContinuousScroll : RCV__namespace.PageMode.SinglePage
|
97
115
|
);
|
116
|
+
controller.refreshReportCore(false, controller.getReportDocumentId());
|
98
117
|
}),
|
99
|
-
"togglePrintPreview": new command.Command(
|
118
|
+
"togglePrintPreview": new command.Command(() => {
|
100
119
|
controller.setViewMode(
|
101
|
-
controller.getViewMode() ===
|
120
|
+
controller.getViewMode() === RCV__namespace.ViewMode.PrintPreview ? RCV__namespace.ViewMode.Interactive : RCV__namespace.ViewMode.PrintPreview
|
102
121
|
);
|
122
|
+
controller.refreshReportCore(false, controller.getReportDocumentId());
|
103
123
|
}),
|
104
|
-
"toggleDocumentMap": new command.Command(
|
105
|
-
|
124
|
+
"toggleDocumentMap": new command.Command(() => {
|
125
|
+
notificationService.setDocumentMapVisible({ visible: !getDocumentMapVisible() });
|
106
126
|
}),
|
107
|
-
"toggleParametersArea": new command.Command(
|
108
|
-
|
127
|
+
"toggleParametersArea": new command.Command(() => {
|
128
|
+
notificationService.setParametersAreaVisible({ visible: !getParametersAreaVisible() });
|
109
129
|
}),
|
110
|
-
"zoom": new command.Command(
|
130
|
+
"zoom": new command.Command((scale) => {
|
131
|
+
controller.setScaleMode(RCV__namespace.ScaleMode.Specific);
|
111
132
|
controller.setScale(scale);
|
112
133
|
}),
|
113
|
-
"zoomIn": new command.Command(
|
134
|
+
"zoomIn": new command.Command(() => {
|
114
135
|
zoom(1);
|
115
136
|
}),
|
116
|
-
"zoomOut": new command.Command(
|
137
|
+
"zoomOut": new command.Command(() => {
|
117
138
|
zoom(-1);
|
118
139
|
}),
|
119
|
-
"
|
120
|
-
controller.setSideMenuVisible({ visible: !getSideMenuVisible() });
|
121
|
-
}),
|
122
|
-
"toggleZoomMode": new command.Command(function(e) {
|
123
|
-
var scale = controller.getScale();
|
140
|
+
"toggleZoomMode": new command.Command((e) => {
|
124
141
|
var scaleMode = controller.getScaleMode();
|
125
|
-
|
126
|
-
controller.setScaleMode(scaleTransitionMap[
|
142
|
+
var newScaleMode = scaleTransitionMap[scaleMode];
|
143
|
+
controller.setScaleMode(scaleTransitionMap[newScaleMode]);
|
144
|
+
if (newScaleMode === RCV__namespace.ScaleMode.Specific) {
|
145
|
+
controller.setScale(1);
|
146
|
+
}
|
147
|
+
}),
|
148
|
+
"toggleSearchDialog": new command.Command(() => {
|
149
|
+
notificationService.setSearchDialogVisible({ visible: !getSearchDialogVisible() });
|
127
150
|
}),
|
128
|
-
"
|
129
|
-
|
151
|
+
"toggleSendEmailDialog": new command.Command(() => {
|
152
|
+
notificationService.setSendEmailDialogVisible({ visible: !getSendEmailDialogVisible() });
|
130
153
|
}),
|
131
|
-
"
|
132
|
-
|
154
|
+
"toggleAiPromptDialog": new command.Command(() => {
|
155
|
+
notificationService.setAiPromptDialogVisible({ visible: !getAiPromptDialogVisible() });
|
133
156
|
})
|
134
157
|
};
|
135
158
|
function zoom(step) {
|
136
|
-
|
159
|
+
var scale = getZoomScale(controller.getScale(), step);
|
160
|
+
controller.setScale(scale);
|
161
|
+
controller.setScaleMode(RCV__namespace.ScaleMode.Specific);
|
137
162
|
}
|
138
163
|
function getZoomScale(scale, steps) {
|
139
164
|
var pos = -1;
|
@@ -0,0 +1,41 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
4
|
+
|
5
|
+
var baseComponent = require('../base-component.js');
|
6
|
+
|
7
|
+
class Button extends baseComponent.BaseComponent {
|
8
|
+
// #region fields
|
9
|
+
icon;
|
10
|
+
click;
|
11
|
+
component;
|
12
|
+
// #endregion
|
13
|
+
// #region constructors
|
14
|
+
constructor(element, options) {
|
15
|
+
super(element, options);
|
16
|
+
this.options.icon = element.dataset.icon;
|
17
|
+
this.options.fillMode = element.dataset.fillMode;
|
18
|
+
this.component = new kendo.ui.Button(element, this.options);
|
19
|
+
this._initCommand();
|
20
|
+
}
|
21
|
+
// #endregion
|
22
|
+
// #region methods
|
23
|
+
_initCommand() {
|
24
|
+
if (!this.options.command) {
|
25
|
+
return;
|
26
|
+
}
|
27
|
+
const command = this.options.command;
|
28
|
+
this.component.setOptions({
|
29
|
+
click: (event) => {
|
30
|
+
event.preventDefault();
|
31
|
+
command.exec();
|
32
|
+
}
|
33
|
+
});
|
34
|
+
$(command).on("enabledChanged", (event, newState) => {
|
35
|
+
this.component.enable(newState);
|
36
|
+
});
|
37
|
+
}
|
38
|
+
// #endregion
|
39
|
+
}
|
40
|
+
|
41
|
+
exports.Button = Button;
|
@@ -0,0 +1,47 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
4
|
+
|
5
|
+
var baseComponent = require('../base-component.js');
|
6
|
+
|
7
|
+
class ToggleButton extends baseComponent.BaseComponent {
|
8
|
+
// #region fields
|
9
|
+
icon;
|
10
|
+
click;
|
11
|
+
component;
|
12
|
+
// #endregion
|
13
|
+
// #region constructors
|
14
|
+
constructor(element, options) {
|
15
|
+
super(element, options);
|
16
|
+
this.options.icon = element.dataset.icon;
|
17
|
+
this.options.fillMode = element.dataset.fillMode;
|
18
|
+
this.component = new kendo.ui.Button(element, this.options);
|
19
|
+
this._initCommand();
|
20
|
+
}
|
21
|
+
// #endregion
|
22
|
+
// #region methods
|
23
|
+
_initCommand() {
|
24
|
+
if (!this.options.command) {
|
25
|
+
return;
|
26
|
+
}
|
27
|
+
const command = this.options.command;
|
28
|
+
this.component.setOptions({
|
29
|
+
click: (event) => {
|
30
|
+
event.preventDefault();
|
31
|
+
command.setChecked(command.getChecked() ? false : true);
|
32
|
+
}
|
33
|
+
});
|
34
|
+
$(command).on("enabledChanged", (event, newState) => {
|
35
|
+
this.component.enable(newState);
|
36
|
+
});
|
37
|
+
$(command).on("checkedChanged", (event, newState) => {
|
38
|
+
if (newState) {
|
39
|
+
this.component.element.addClass("k-selected");
|
40
|
+
} else {
|
41
|
+
this.component.element.removeClass("k-selected");
|
42
|
+
}
|
43
|
+
});
|
44
|
+
}
|
45
|
+
}
|
46
|
+
|
47
|
+
exports.ToggleButton = ToggleButton;
|
@@ -0,0 +1,22 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
4
|
+
|
5
|
+
const ToolBarConstants = {
|
6
|
+
TitleAttr: "title",
|
7
|
+
AriaLabelAttr: "aria-label",
|
8
|
+
DataCommandAttr: "data-command",
|
9
|
+
DataCommandParameterAttr: "data-command-parameter",
|
10
|
+
ExportDropdownId: "export-dropdown",
|
11
|
+
PageNumberInputDataRoleSelector: '[data-role="telerik_ReportViewer_PageNumberInput"]',
|
12
|
+
PageCountLabelDataRoleSelector: '[data-role="telerik_ReportViewer_PageCountLabel"]',
|
13
|
+
Button: "button",
|
14
|
+
ButtonGroup: "buttonGroup",
|
15
|
+
ToggleButton: "toggle-button",
|
16
|
+
DropDownButton: "dropDownButton",
|
17
|
+
MenuButton: "menu-button",
|
18
|
+
Separator: "separator",
|
19
|
+
CustomElement: "custom-element"
|
20
|
+
};
|
21
|
+
|
22
|
+
exports.ToolBarConstants = ToolBarConstants;
|
@@ -4,162 +4,183 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
5
5
|
var stringResources = require('./stringResources.js');
|
6
6
|
var enums = require('./enums.js');
|
7
|
-
var globalSettings = require('./globalSettings.js');
|
8
7
|
|
9
8
|
var defaultOptions = {};
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
9
|
+
class DocumentMapArea {
|
10
|
+
// #region fields element: HTMLElement;
|
11
|
+
options;
|
12
|
+
viewerOptions;
|
13
|
+
controller;
|
14
|
+
notificationService;
|
15
|
+
$element;
|
16
|
+
$documentMap;
|
17
|
+
documentMapVisible;
|
18
|
+
enableAccessibility;
|
19
|
+
currentReport;
|
20
|
+
documentMapNecessary;
|
21
|
+
// #endregion
|
22
|
+
// #region constructor
|
23
|
+
constructor(element, options, viewerOptions) {
|
24
|
+
this.element = element;
|
25
|
+
this.options = $.extend({}, defaultOptions, options, viewerOptions);
|
26
|
+
this.controller = this.options.controller;
|
27
|
+
if (!this.controller) {
|
28
|
+
throw "No controller (telerikReporting.reportViewerController) has been specified.";
|
29
|
+
}
|
30
|
+
this.notificationService = this.options.notificationService;
|
31
|
+
if (!this.notificationService) {
|
32
|
+
throw "No notificationService (telerikReporting.NotificationService) has been specified.";
|
33
|
+
}
|
34
|
+
this.$element = $(this.element);
|
35
|
+
this.$documentMap;
|
36
|
+
this.documentMapVisible = this.options.documentMapVisible !== false;
|
37
|
+
this.enableAccessibility = this.options.enableAccessibility;
|
38
|
+
this.currentReport = null;
|
39
|
+
this.documentMapNecessary = false;
|
40
|
+
this.init();
|
41
|
+
}
|
42
|
+
// #endregion
|
43
|
+
init() {
|
44
|
+
this.$documentMap = $('<div id="' + this.options.viewerSelector + '-documentMap" data-role="treeview"></div>');
|
45
|
+
this.$documentMap.appendTo(this.element);
|
46
|
+
this._attachEvents();
|
47
|
+
this.replaceStringResources(this.$element);
|
48
|
+
}
|
49
|
+
onTreeViewSelectionChanged(event) {
|
50
|
+
var documentMapNode = event.sender.dataItem(event.node);
|
31
51
|
var page = documentMapNode.page;
|
32
52
|
var id = documentMapNode.id;
|
33
|
-
controller.navigateToPage(page, {
|
53
|
+
this.controller.navigateToPage(page, {
|
34
54
|
type: "bookmark",
|
35
55
|
id
|
36
56
|
});
|
37
57
|
}
|
38
|
-
|
39
|
-
if (enableAccessibility) {
|
40
|
-
window.setTimeout(
|
41
|
-
setNodeAccessibilityAttributes(
|
58
|
+
onTreeViewNodeExpand(event) {
|
59
|
+
if (this.enableAccessibility) {
|
60
|
+
window.setTimeout(() => {
|
61
|
+
this.setNodeAccessibilityAttributes(event.node);
|
42
62
|
}, 100);
|
43
63
|
}
|
44
64
|
}
|
45
|
-
|
65
|
+
setNodeAccessibilityAttributes(node) {
|
46
66
|
var $items = $(node).find("li");
|
47
67
|
Array.from($items).forEach((item) => {
|
48
68
|
var $li = $(item);
|
49
69
|
$li.attr("aria-label", $li[0].innerText);
|
50
70
|
});
|
51
71
|
}
|
52
|
-
|
53
|
-
documentMapNecessary = false;
|
54
|
-
showDocumentMap(false);
|
55
|
-
|
56
|
-
|
57
|
-
currentReport = r;
|
72
|
+
resetReportAndClearItems() {
|
73
|
+
this.documentMapNecessary = false;
|
74
|
+
this.showDocumentMap(false);
|
75
|
+
const r = this.controller.getReportSource().report;
|
76
|
+
const clearMapItems = this.currentReport !== r || !this.isVisible();
|
77
|
+
this.currentReport = r;
|
58
78
|
if (clearMapItems) {
|
59
|
-
clearDocumentMap();
|
79
|
+
this.clearDocumentMap();
|
60
80
|
}
|
61
81
|
}
|
62
|
-
|
63
|
-
displayDocumentMap([]);
|
82
|
+
clearDocumentMap() {
|
83
|
+
this.displayDocumentMap([]);
|
64
84
|
}
|
65
|
-
|
85
|
+
displayDocumentMap(documentMap) {
|
66
86
|
var hasDocumentMap = documentMap && !$.isEmptyObject(documentMap);
|
67
|
-
var $treeView =
|
87
|
+
var $treeView = this.$documentMap.data("kendoTreeView");
|
68
88
|
if (!$treeView) {
|
69
89
|
try {
|
70
|
-
|
90
|
+
this.$documentMap.kendoTreeView({
|
71
91
|
dataTextField: "text",
|
72
|
-
select: onTreeViewSelectionChanged
|
92
|
+
select: this.onTreeViewSelectionChanged.bind(this)
|
73
93
|
});
|
74
|
-
$treeView =
|
94
|
+
$treeView = this.$documentMap.data("kendoTreeView");
|
75
95
|
} catch (e) {
|
76
96
|
console.error("Instantiation of Kendo TreeView as Document Map threw an exception", e);
|
77
97
|
throw e;
|
78
98
|
}
|
79
99
|
}
|
80
100
|
$treeView.setDataSource(documentMap);
|
81
|
-
if (enableAccessibility) {
|
82
|
-
setAccessibilityAttributes($treeView);
|
101
|
+
if (this.enableAccessibility) {
|
102
|
+
this.setAccessibilityAttributes($treeView);
|
83
103
|
}
|
84
|
-
showDocumentMap(hasDocumentMap);
|
104
|
+
this.showDocumentMap(hasDocumentMap);
|
85
105
|
}
|
86
|
-
|
87
|
-
treeView.bind("expand", onTreeViewNodeExpand);
|
106
|
+
setAccessibilityAttributes(treeView) {
|
107
|
+
treeView.bind("expand", this.onTreeViewNodeExpand.bind(this));
|
88
108
|
treeView.element.attr("aria-label", stringResources.stringResources.ariaLabelDocumentMap);
|
89
109
|
var listItems = treeView.element.find("ul");
|
90
110
|
Array.from(listItems).forEach((list) => {
|
91
|
-
setNodeAccessibilityAttributes(list);
|
111
|
+
this.setNodeAccessibilityAttributes(list);
|
92
112
|
});
|
93
|
-
if (documentMapNecessary) {
|
94
|
-
setSplitbarAccessibilityAttributes();
|
113
|
+
if (this.documentMapNecessary) {
|
114
|
+
this.setSplitbarAccessibilityAttributes();
|
95
115
|
}
|
96
116
|
}
|
97
|
-
|
98
|
-
var splitbar =
|
99
|
-
if (options.documentMapAreaPosition === enums.DocumentMapAreaPositions.RIGHT) {
|
100
|
-
splitbar =
|
117
|
+
setSplitbarAccessibilityAttributes() {
|
118
|
+
var splitbar = this.$element.next();
|
119
|
+
if (this.options.documentMapAreaPosition === enums.DocumentMapAreaPositions.RIGHT) {
|
120
|
+
splitbar = this.$element.prev();
|
101
121
|
}
|
102
122
|
splitbar.attr("aria-label", stringResources.stringResources.ariaLabelDocumentMapSplitter);
|
103
123
|
}
|
104
|
-
|
124
|
+
isVisible() {
|
105
125
|
var args = {};
|
106
|
-
|
126
|
+
this.notificationService.getDocumentMapState(args);
|
107
127
|
return args.visible;
|
108
128
|
}
|
109
|
-
|
110
|
-
|
129
|
+
beginLoad() {
|
130
|
+
this.$element.addClass("trv-loading");
|
111
131
|
}
|
112
|
-
|
113
|
-
|
132
|
+
endLoad() {
|
133
|
+
this.$element.removeClass("trv-loading");
|
114
134
|
}
|
115
|
-
|
116
|
-
var splitter =
|
117
|
-
var sibling =
|
118
|
-
if (options.documentMapAreaPosition === enums.DocumentMapAreaPositions.RIGHT) {
|
119
|
-
sibling =
|
135
|
+
showDocumentMap(show) {
|
136
|
+
var splitter = $("#" + this.options.viewerSelector + "-document-map-splitter").getKendoSplitter();
|
137
|
+
var sibling = this.$element.next();
|
138
|
+
if (this.options.documentMapAreaPosition === enums.DocumentMapAreaPositions.RIGHT) {
|
139
|
+
sibling = this.$element.prev();
|
120
140
|
}
|
121
141
|
if (splitter) {
|
122
|
-
(documentMapNecessary ? $.fn.removeClass : $.fn.addClass).call(sibling, "
|
142
|
+
(this.documentMapNecessary ? $.fn.removeClass : $.fn.addClass).call(sibling, "k-hidden");
|
123
143
|
splitter.toggle(".trv-document-map", show);
|
124
144
|
}
|
125
145
|
}
|
126
|
-
|
127
|
-
controller.beforeLoadParameters(
|
128
|
-
resetReportAndClearItems();
|
129
|
-
}).beginLoadReport(
|
130
|
-
beginLoad();
|
131
|
-
}).reportLoadComplete
|
132
|
-
if (
|
133
|
-
documentMapNecessary = true;
|
134
|
-
displayDocumentMap(
|
135
|
-
|
146
|
+
_attachEvents() {
|
147
|
+
this.controller.on("beforeLoadParameters", () => {
|
148
|
+
this.resetReportAndClearItems();
|
149
|
+
}).on("beginLoadReport", () => {
|
150
|
+
this.beginLoad();
|
151
|
+
}).onAsync("reportLoadComplete", async (reportInfo) => {
|
152
|
+
if (reportInfo.documentMapAvailable) {
|
153
|
+
this.documentMapNecessary = true;
|
154
|
+
this.displayDocumentMap(reportInfo.documentMapNodes);
|
155
|
+
this.notificationService.setDocumentMapVisible({ enabled: true, visible: this.documentMapVisible });
|
136
156
|
} else {
|
137
|
-
documentMapNecessary = false;
|
138
|
-
showDocumentMap(documentMapNecessary);
|
157
|
+
this.documentMapNecessary = false;
|
158
|
+
this.showDocumentMap(this.documentMapNecessary);
|
139
159
|
}
|
140
|
-
endLoad();
|
141
|
-
}).error
|
142
|
-
endLoad();
|
143
|
-
clearDocumentMap();
|
144
|
-
}).renderingStopped(
|
145
|
-
documentMapNecessary = false;
|
146
|
-
showDocumentMap(false);
|
160
|
+
this.endLoad();
|
161
|
+
}).on("error", () => {
|
162
|
+
this.endLoad();
|
163
|
+
this.clearDocumentMap();
|
164
|
+
}).on("renderingStopped", () => {
|
165
|
+
this.documentMapNecessary = false;
|
166
|
+
this.showDocumentMap(false);
|
147
167
|
});
|
148
|
-
|
149
|
-
documentMapVisible = args.visible;
|
150
|
-
showDocumentMap(documentMapVisible && documentMapNecessary);
|
151
|
-
}).getDocumentMapState(
|
152
|
-
args.enabled = documentMapNecessary;
|
153
|
-
args.visible = documentMapVisible;
|
168
|
+
this.notificationService.setDocumentMapVisible((event, args) => {
|
169
|
+
this.documentMapVisible = args.visible;
|
170
|
+
this.showDocumentMap(this.documentMapVisible && this.documentMapNecessary);
|
171
|
+
}).getDocumentMapState((event, args) => {
|
172
|
+
args.enabled = this.documentMapNecessary;
|
173
|
+
args.visible = this.documentMapVisible;
|
154
174
|
});
|
155
175
|
}
|
156
|
-
|
157
|
-
var $documentMapOverlay = $
|
176
|
+
replaceStringResources($documentMap) {
|
177
|
+
var $documentMapOverlay = $documentMap.find(".trv-document-map-overlay");
|
158
178
|
if (!$documentMapOverlay) {
|
159
179
|
return;
|
160
180
|
}
|
161
181
|
$documentMapOverlay.attr("aria-label", stringResources.stringResources[$documentMapOverlay.attr("aria-label")]);
|
162
182
|
}
|
183
|
+
// #endregion
|
163
184
|
}
|
164
185
|
|
165
186
|
exports.DocumentMapArea = DocumentMapArea;
|
@@ -2,17 +2,11 @@
|
|
2
2
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
|
-
var __defProp = Object.defineProperty;
|
6
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
7
|
-
var __publicField = (obj, key, value) => {
|
8
|
-
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
9
|
-
return value;
|
10
|
-
};
|
11
5
|
class EventEmitter extends EventTarget {
|
6
|
+
_events;
|
7
|
+
_eventsCount;
|
12
8
|
constructor() {
|
13
9
|
super();
|
14
|
-
__publicField(this, "_events");
|
15
|
-
__publicField(this, "_eventsCount");
|
16
10
|
this._events = {};
|
17
11
|
this._eventsCount = 0;
|
18
12
|
}
|