@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,493 +0,0 @@
1
- import { escapeHtml } from './utils.js';
2
- import { stringResources } from './stringResources.js';
3
- import { ParameterValidators } from './parameterValidators.js';
4
- import { ParameterEditors } from './parameters.js';
5
- import { ParametersAreaPositions } from './enums.js';
6
- import { GlobalSettings } from './globalSettings.js';
7
-
8
- var defaultOptions = {};
9
- var Events = {
10
- PARAMETERS_READY: "pa.parametersReady",
11
- ERROR: "pa.Error"
12
- };
13
- function ParametersArea(placeholder, options, otherOptions) {
14
- options = $.extend({}, defaultOptions, options, otherOptions);
15
- var parametersArea = {};
16
- var $parametersArea = $(parametersArea);
17
- var editors = {};
18
- var controller = options.controller;
19
- if (!controller) {
20
- throw "No controller (telerikReporting.reportViewerController) has been specified.";
21
- }
22
- var parameterEditors = ParameterEditors;
23
- if (options.parameterEditors && options.parameterEditors.length > 0) {
24
- parameterEditors = [].concat(options.parameterEditors, ParameterEditors);
25
- }
26
- var recentParameterValues;
27
- var parameters;
28
- var initialParameterValues;
29
- var processedParameterValues = void 0;
30
- var $placeholder = $(placeholder);
31
- var $content = $placeholder.find(".trv-parameters-area-content");
32
- var $errorMessage = $placeholder.find(".trv-error-message");
33
- var $previewButton = $placeholder.find(".trv-parameters-area-preview-button");
34
- $previewButton.text(stringResources[$previewButton.text()]);
35
- $previewButton.attr("aria-label", stringResources[$previewButton.attr("aria-label")]);
36
- $previewButton.on("click", function(e) {
37
- e.preventDefault();
38
- if (allParametersValid()) {
39
- applyParameters();
40
- }
41
- });
42
- var parameterContainerTemplate = options.templates["trv-parameter"];
43
- var parametersAreaVisible = options.parametersAreaVisible !== false;
44
- var enableAccessibility = options.enableAccessibility;
45
- init();
46
- function init() {
47
- replaceStringResources($placeholder);
48
- }
49
- function replaceStringResources($paramsArea) {
50
- var $previewButton2 = $paramsArea.find(".trv-parameters-area-preview-button");
51
- if (!$previewButton2) {
52
- return;
53
- }
54
- $previewButton2.attr("aria-label", stringResources[$previewButton2.attr("aria-label")]);
55
- $previewButton2.text(stringResources[$previewButton2.text()]);
56
- }
57
- function toggleElementDisplay(el, shouldHide) {
58
- el.style.display = shouldHide ? "none" : "";
59
- }
60
- function createParameterContainer() {
61
- return $(parameterContainerTemplate);
62
- }
63
- function createParameterUI(parameter) {
64
- var $container = createParameterContainer();
65
- var $editorPlaceholder = $container.find(".trv-parameter-value");
66
- var $title = $container.find(".trv-parameter-title");
67
- var $error = $container.find(".trv-parameter-error");
68
- var $errorMessage2 = $container.find(".trv-parameter-error-message");
69
- var $useDefaultValueCheckbox = $container.find(".trv-parameter-use-default input");
70
- var editorsTypes = options.parameters && options.parameters.editors ? options.parameters.editors : null;
71
- var editorFactory = selectParameterEditorFactory(parameter, editorsTypes);
72
- var parameterText = escapeHtml(parameter.text);
73
- var isHiddenParameter = !parameter.isVisible;
74
- if (isHiddenParameter) {
75
- parameterText += " [<b>hidden</b>]";
76
- }
77
- $title.html(parameterText).attr("title", parameterText);
78
- $errorMessage2.text(parameter.Error);
79
- (parameter.Error ? $.fn.show : $.fn.hide).call($error);
80
- var editor = editorFactory.createEditor(
81
- $editorPlaceholder,
82
- {
83
- templates: options.templates,
84
- parameterChanged: function(parameter2, newValue) {
85
- var invalidParameterLI = document.querySelector(".trv-pages-area .trv-error-message ul li." + parameter2.name);
86
- try {
87
- newValue = ParameterValidators.validate(parameter2, newValue);
88
- $error.hide();
89
- if (invalidParameterLI) {
90
- toggleElementDisplay(invalidParameterLI, true);
91
- }
92
- onParameterChanged(parameter2, newValue);
93
- } catch (error) {
94
- if (invalidParameterLI) {
95
- toggleElementDisplay(invalidParameterLI, false);
96
- }
97
- parameter2.Error = error;
98
- parameter2.value = [];
99
- $errorMessage2.text(error);
100
- $error.show();
101
- enablePreviewButton(false);
102
- } finally {
103
- setAccessibilityErrorState(parameter2);
104
- }
105
- },
106
- enableAccessibility
107
- }
108
- );
109
- editors[parameter.id] = editor;
110
- editor.beginEdit(parameter);
111
- if (enableAccessibility && !isHiddenParameter) {
112
- editor.addAccessibility(parameter);
113
- }
114
- if ($useDefaultValueCheckbox.length > 0) {
115
- $useDefaultValueCheckbox.on(
116
- "click",
117
- function() {
118
- var useDefaultValue = $(this).is(":checked");
119
- if (useDefaultValue) {
120
- delete recentParameterValues[parameter.id];
121
- delete initialParameterValues[parameter.id];
122
- invalidateChildParameters(parameter);
123
- updateParameters(onLoadParametersSuccess);
124
- } else {
125
- recentParameterValues[parameter.id] = parameter.value;
126
- initialParameterValues[parameter.id] = parameter.value;
127
- }
128
- editor.enable(!useDefaultValue);
129
- raiseParametersReady();
130
- }
131
- );
132
- var hasInitialValues = initialParameterValues !== null;
133
- if (hasInitialValues) {
134
- if (!(parameter.id in initialParameterValues)) {
135
- $useDefaultValueCheckbox.prop("checked", true);
136
- editor.enable(false);
137
- }
138
- } else if (isHiddenParameter) {
139
- $useDefaultValueCheckbox.prop("checked", true);
140
- editor.enable(false);
141
- }
142
- }
143
- return $container;
144
- }
145
- function setAccessibilityErrorState(parameter) {
146
- var editor = editors[parameter.id];
147
- if (!editor || !enableAccessibility) {
148
- return;
149
- }
150
- editor.setAccessibilityErrorState(parameter);
151
- }
152
- function enablePreviewButton(enabled) {
153
- if (enabled) {
154
- $previewButton.prop("disabled", false);
155
- $previewButton.removeClass("k-disabled");
156
- } else {
157
- $previewButton.prop("disabled", true);
158
- $previewButton.addClass("k-disabled");
159
- }
160
- }
161
- function selectParameterEditorFactory(parameter, editorsType) {
162
- var factory = Array.from(parameterEditors).find((editor) => {
163
- return editor.match(parameter, editorsType);
164
- });
165
- return factory;
166
- }
167
- function showError(error) {
168
- $errorMessage.text(error);
169
- (error ? $.fn.addClass : $.fn.removeClass).call($placeholder, "trv-error");
170
- }
171
- function showPreviewButton() {
172
- (allParametersAutoRefresh() && controller.isReportAutoRun() ? $.fn.removeClass : $.fn.addClass).call($placeholder, "preview");
173
- }
174
- function allParametersAutoRefresh() {
175
- var allAuto = Array.from(parameters).every((parameter) => {
176
- return !parameter.isVisible || parameter.autoRefresh;
177
- });
178
- return allAuto;
179
- }
180
- function allParametersValid() {
181
- var allValid = Array.from(parameters).every((parameter) => {
182
- return !parameter.Error;
183
- });
184
- return allValid;
185
- }
186
- function clearEditors() {
187
- Object.entries(editors).forEach(([key, editor]) => {
188
- if (typeof editor.destroy === "function") {
189
- editor.destroy();
190
- }
191
- });
192
- editors = {};
193
- }
194
- function fill(newParameters) {
195
- recentParameterValues = {};
196
- processedParameterValues = {};
197
- parameters = newParameters || [];
198
- clearEditors();
199
- var $parameterContainer;
200
- var $tempContainer = $("<div></div>");
201
- Array.from(parameters).forEach((parameter) => {
202
- try {
203
- parameter.value = ParameterValidators.validate(parameter, parameter.value);
204
- } catch (e) {
205
- parameter.Error = parameter.Error || e;
206
- }
207
- var hasError = Boolean(parameter.Error);
208
- var hasValue = !hasError;
209
- if (hasValue) {
210
- recentParameterValues[parameter.id] = parameter.value;
211
- } else {
212
- parameter.Error = stringResources.invalidParameter;
213
- }
214
- if (parameter.availableValues) {
215
- processedParameterValues[parameter.id] = { valueMember: parameter.value, displayMember: parameter.label, availableValues: parameter.availableValues, multivalue: parameter.multivalue };
216
- } else {
217
- processedParameterValues[parameter.id] = parameter.value;
218
- }
219
- if (parameter.isVisible || options.showHiddenParameters) {
220
- $parameterContainer = createParameterUI(parameter);
221
- if ($parameterContainer) {
222
- $tempContainer.append($parameterContainer);
223
- }
224
- }
225
- });
226
- if (initialParameterValues !== void 0) {
227
- if (null === initialParameterValues) {
228
- initialParameterValues = {};
229
- Array.from(parameters).forEach((parameter) => {
230
- if (parameter.isVisible) {
231
- initialParameterValues[parameter.id] = parameter.value;
232
- } else {
233
- delete recentParameterValues[parameter.id];
234
- }
235
- });
236
- } else {
237
- Array.from(parameters).forEach((parameter) => {
238
- if (!(parameter.id in initialParameterValues)) {
239
- delete recentParameterValues[parameter.id];
240
- }
241
- });
242
- }
243
- }
244
- $content.empty();
245
- if (parameters.length > 0) {
246
- $content.append($tempContainer.children());
247
- if (enableAccessibility) {
248
- $content.attr("aria-label", "Parameters area. Contains " + parameters.length + " parameters.");
249
- }
250
- }
251
- showPreviewButton();
252
- var allValid = allParametersValid();
253
- enablePreviewButton(allValid);
254
- applyProcessedParameters();
255
- }
256
- function applyParameters() {
257
- controller.setParameters($.extend({}, recentParameterValues));
258
- controller.previewReport(false);
259
- }
260
- function applyProcessedParameters() {
261
- controller.setProcessedParameter($.extend({}, processedParameterValues));
262
- }
263
- function allParametersValidForAutoRefresh() {
264
- var triggerAutoUpdate = true;
265
- for (var i = parameters.length - 1; triggerAutoUpdate && i >= 0; i--) {
266
- var p = parameters[i];
267
- triggerAutoUpdate = p.id in recentParameterValues && (Boolean(p.autoRefresh) || !p.isVisible);
268
- }
269
- return triggerAutoUpdate;
270
- }
271
- function raiseParametersReady() {
272
- parametersArea.parametersReady(recentParameterValues);
273
- }
274
- function tryRefreshReport() {
275
- raiseParametersReady();
276
- if (allParametersValidForAutoRefresh()) {
277
- applyParameters();
278
- }
279
- }
280
- function invalidateChildParameters(parameter) {
281
- if (parameter.childParameters) {
282
- Array.from(parameter.childParameters).forEach((parameterId) => {
283
- var childParameter = getParameterById(parameterId);
284
- if (childParameter) {
285
- invalidateChildParameters(childParameter);
286
- }
287
- delete recentParameterValues[parameterId];
288
- resetPendingParameterChange(parameterId);
289
- });
290
- }
291
- }
292
- function resetPendingParameterChange(parameterId) {
293
- if (editors) {
294
- var editor = editors[parameterId];
295
- if (editor && typeof editor.clearPendingChange === "function") {
296
- editor.clearPendingChange();
297
- }
298
- }
299
- }
300
- function onParameterChanged(parameter, newValue) {
301
- delete parameter["Error"];
302
- parameter.value = newValue;
303
- recentParameterValues[parameter.id] = newValue;
304
- if (initialParameterValues !== void 0) {
305
- if (parameter.id in initialParameterValues) {
306
- recentParameterValues[parameter.id] = newValue;
307
- }
308
- } else {
309
- recentParameterValues[parameter.id] = newValue;
310
- }
311
- invalidateChildParameters(parameter);
312
- if (parameter.childParameters) {
313
- updateParameters(tryRefreshReport);
314
- } else {
315
- var allValid = allParametersValid();
316
- enablePreviewButton(allValid);
317
- if (allValid) {
318
- var errorMsg = document.querySelector(".trv-pages-area .trv-error-message");
319
- if ($previewButton.is(":visible") && errorMsg) {
320
- errorMsg.textContent = stringResources.tryReportPreview;
321
- }
322
- tryRefreshReport();
323
- }
324
- }
325
- }
326
- function getParameterById(parameterId) {
327
- if (parameters) {
328
- for (var i = 0; i < parameters.length; i++) {
329
- var p = parameters[i];
330
- if (p.id === parameterId) {
331
- return p;
332
- }
333
- }
334
- }
335
- return null;
336
- }
337
- function hasVisibleParameters(params) {
338
- if (!params || null === params) {
339
- return false;
340
- }
341
- var hasVisible = Array.from(params).some((parameter) => {
342
- return parameter.isVisible;
343
- });
344
- return hasVisible;
345
- }
346
- var loadingCount = 0;
347
- function beginLoad() {
348
- loadingCount++;
349
- $placeholder.addClass("trv-loading");
350
- }
351
- function endLoad() {
352
- if (loadingCount > 0) {
353
- if (0 === --loadingCount) {
354
- $placeholder.removeClass("trv-loading");
355
- }
356
- }
357
- }
358
- var parametersAreaNecessary = false;
359
- function onLoadParametersComplete(params, successAction) {
360
- showParametersAreaIfNecessary(params);
361
- fill(params);
362
- showError("");
363
- if (parametersAreaNecessary && parametersAreaVisible) {
364
- showParametersArea(true);
365
- if (enableAccessibility) {
366
- setSplitbarAccessibilityAttributes();
367
- }
368
- }
369
- controller.updateUIInternal();
370
- if (typeof successAction === "function") {
371
- successAction();
372
- }
373
- endLoad();
374
- }
375
- function showParametersAreaIfNecessary(params) {
376
- parametersAreaNecessary = hasVisibleParameters(params) || !controller.isReportAutoRun();
377
- showParametersArea(parametersAreaVisible && parametersAreaNecessary);
378
- }
379
- function updateParameters(successAction) {
380
- acceptParameters(controller.loadParameters(recentParameterValues), successAction);
381
- }
382
- function acceptParameters(controllerLoadParametersPromise, successAction) {
383
- beginLoad();
384
- controllerLoadParametersPromise.then(function(parameters2) {
385
- onLoadParametersComplete(parameters2, successAction);
386
- }).catch(function(error) {
387
- endLoad();
388
- clear();
389
- if (!$placeholder.hasClass("trv-hidden")) {
390
- showError(error);
391
- }
392
- parametersArea.error(error);
393
- });
394
- }
395
- function getEventHandlerFromArguments(args) {
396
- var arg0;
397
- if (args && args.length) {
398
- arg0 = args[0];
399
- }
400
- if (typeof arg0 === "function") {
401
- return arg0;
402
- }
403
- return null;
404
- }
405
- function eventFactory(event, args) {
406
- var h = getEventHandlerFromArguments(args);
407
- if (h) {
408
- $parametersArea.on(event, h);
409
- } else {
410
- $parametersArea.trigger(event, args);
411
- }
412
- return controller;
413
- }
414
- function onLoadParametersSuccess() {
415
- if (initialParameterValues === null) {
416
- initialParameterValues = $.extend({}, recentParameterValues);
417
- }
418
- raiseParametersReady();
419
- }
420
- function showParametersArea(show) {
421
- var splitter = GlobalSettings.viewerInstances.find((element) => element.id === options.viewerSelector + "-parameters-splitter");
422
- if (!splitter) {
423
- return;
424
- }
425
- var sibling = $placeholder.prev();
426
- if (options.parametersAreaPosition === ParametersAreaPositions.TOP || options.parametersAreaPosition === ParametersAreaPositions.LEFT) {
427
- sibling = $placeholder.next();
428
- }
429
- (parametersAreaNecessary ? $.fn.removeClass : $.fn.addClass).call(sibling, "trv-hidden");
430
- splitter.instance.toggle(".trv-parameters-area", show);
431
- }
432
- function setSplitbarAccessibilityAttributes() {
433
- var splitbar = $placeholder.prev();
434
- var tabIndex = $placeholder.find(".trv-parameters-area-content").attr("tabIndex");
435
- if (options.parametersAreaPosition === ParametersAreaPositions.TOP || options.parametersAreaPosition === ParametersAreaPositions.LEFT) {
436
- splitbar = $placeholder.next();
437
- }
438
- splitbar.attr("aria-label", stringResources.ariaLabelParametersAreaSplitter);
439
- splitbar.attr("tabIndex", tabIndex);
440
- }
441
- function onReloadParameters(event, controllerLoadParametersPromise) {
442
- showError();
443
- $content.empty();
444
- acceptParameters(controllerLoadParametersPromise, onLoadParametersSuccess);
445
- }
446
- controller.reloadParameters(onReloadParameters).beforeLoadReport(function() {
447
- loadingCount = 0;
448
- beginLoad();
449
- }).reportLoadComplete(function() {
450
- showParametersAreaIfNecessary(parameters);
451
- showPreviewButton();
452
- }).error(endLoad).pageReady(endLoad);
453
- controller.getParametersAreaState(function(event, args) {
454
- var parametersAreaNecessary2 = false;
455
- if (parameters) {
456
- parametersAreaNecessary2 = hasVisibleParameters(parameters) || !controller.isReportAutoRun();
457
- }
458
- args.enabled = parametersAreaNecessary2;
459
- args.visible = parametersAreaVisible;
460
- }).setParametersAreaVisible(function(event, args) {
461
- parametersAreaVisible = args.visible;
462
- showParametersArea(args.visible && (hasVisibleParameters(parameters) || !controller.isReportAutoRun()));
463
- });
464
- function clear() {
465
- fill([]);
466
- }
467
- $.extend(
468
- parametersArea,
469
- {
470
- allParametersValid: function() {
471
- return allParametersValid();
472
- },
473
- clear: function() {
474
- clear();
475
- },
476
- error: function() {
477
- return eventFactory(Events.ERROR, arguments);
478
- },
479
- parametersReady: function() {
480
- return eventFactory(Events.PARAMETERS_READY, arguments);
481
- },
482
- fill: function(parameters2) {
483
- return fill(parameters2);
484
- },
485
- setParameters: function(parameterValues) {
486
- initialParameterValues = null === parameterValues ? null : $.extend({}, parameterValues);
487
- }
488
- }
489
- );
490
- return parametersArea;
491
- }
492
-
493
- export { ParametersArea };
@@ -1,134 +0,0 @@
1
- function PerspectiveManager(dom, controller) {
2
- var smallMenu = dom.querySelectorAll ? dom.querySelectorAll(".trv-menu-small")[0] : false;
3
- var perspectives = {
4
- "small": {
5
- documentMapVisible: false,
6
- parametersAreaVisible: false,
7
- onDocumentMapVisibleChanged: function(e, args) {
8
- if (args.visible) {
9
- controller.setParametersAreaVisible({ visible: false });
10
- }
11
- },
12
- onParameterAreaVisibleChanged: function(e, args) {
13
- if (args.visible) {
14
- controller.setDocumentMapVisible({ visible: false });
15
- }
16
- },
17
- onBeforeLoadReport: function() {
18
- controller.setParametersAreaVisible({ visible: false });
19
- controller.setDocumentMapVisible({ visible: false });
20
- },
21
- onNavigateToPage: function() {
22
- controller.setParametersAreaVisible({ visible: false });
23
- controller.setDocumentMapVisible({ visible: false });
24
- }
25
- },
26
- "large": {
27
- documentMapVisible: true,
28
- parametersAreaVisible: true
29
- }
30
- };
31
- var currentPerspective;
32
- function init() {
33
- currentPerspective = getPerspective();
34
- initStateFromController(perspectives["large"]);
35
- }
36
- function setPerspective(beforeApplyState) {
37
- var perspective = getPerspective();
38
- if (perspective !== currentPerspective) {
39
- var oldState = perspectives[currentPerspective];
40
- var newState = perspectives[perspective];
41
- currentPerspective = perspective;
42
- if (beforeApplyState) {
43
- beforeApplyState.call(void 0, oldState, newState);
44
- }
45
- applyState(newState);
46
- }
47
- }
48
- function onDocumentMapVisibleChanged(e, args) {
49
- dispatch("onDocumentMapVisibleChanged", arguments);
50
- }
51
- function onParameterAreaVisibleChanged(e, args) {
52
- dispatch("onParameterAreaVisibleChanged", arguments);
53
- }
54
- function onBeforeLoadReport() {
55
- dispatch("onBeforeLoadReport", arguments);
56
- }
57
- function onNavigateToPage() {
58
- dispatch("onNavigateToPage", arguments);
59
- }
60
- function onReportLoadComplete() {
61
- dispatch("onReportLoadComplete", arguments);
62
- }
63
- function onWindowResize() {
64
- setPerspective(
65
- function(oldState, newState) {
66
- initStateFromController(oldState);
67
- }
68
- );
69
- }
70
- function onCssLoaded() {
71
- setPerspective(null);
72
- }
73
- function dispatch(func, args) {
74
- var activePerspective = perspectives[currentPerspective];
75
- var handler = activePerspective[func];
76
- if (typeof handler === "function") {
77
- handler.apply(activePerspective, args);
78
- }
79
- }
80
- function attach() {
81
- window.addEventListener("resize", onWindowResize);
82
- controller.setDocumentMapVisible(onDocumentMapVisibleChanged);
83
- controller.setParametersAreaVisible(onParameterAreaVisibleChanged);
84
- controller.beforeLoadReport(onBeforeLoadReport);
85
- controller.navigateToPage(onNavigateToPage);
86
- controller.reportLoadComplete(onReportLoadComplete);
87
- controller.cssLoaded(onCssLoaded);
88
- }
89
- function dispose() {
90
- window.removeEventListener("resize", onWindowResize);
91
- }
92
- function getPerspective() {
93
- var windowWidthInEm = $(window).width() / parseFloat($("body").css("font-size"));
94
- var windowMinWidth = 40.5;
95
- return smallMenu && windowWidthInEm <= windowMinWidth ? "small" : "large";
96
- }
97
- function initStateFromController(state) {
98
- state.documentMapVisible = documentMapVisible();
99
- state.parametersAreaVisible = parametersAreaVisible();
100
- }
101
- function applyState(state) {
102
- documentMapVisible(state.documentMapVisible);
103
- parametersAreaVisible(state.parametersAreaVisible);
104
- }
105
- function documentMapVisible() {
106
- if (arguments.length === 0) {
107
- var args1 = {};
108
- controller.getDocumentMapState(args1);
109
- return args1.visible;
110
- }
111
- controller.setDocumentMapVisible({
112
- visible: Boolean(arguments[0])
113
- });
114
- return this;
115
- }
116
- function parametersAreaVisible() {
117
- if (arguments.length === 0) {
118
- var args1 = {};
119
- controller.getParametersAreaState(args1);
120
- return args1.visible;
121
- }
122
- controller.setParametersAreaVisible({
123
- visible: Boolean(arguments[0])
124
- });
125
- return this;
126
- }
127
- init();
128
- return {
129
- attach,
130
- dispose
131
- };
132
- }
133
-
134
- export { PerspectiveManager };