devexpress-reporting-react 25.2.5 → 25.2.6

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.
@@ -1,4 +1,4 @@
1
- import React, { useMemo } from 'react';
1
+ import React, { useMemo, useRef } from 'react';
2
2
  import Button from 'devextreme-react/button';
3
3
  import CheckBox from 'devextreme-react/check-box';
4
4
  import LoadIndicator from 'devextreme-react/load-indicator';
@@ -7,6 +7,7 @@ import TextArea from 'devextreme-react/text-area';
7
7
  import Popup, { Position } from 'devextreme-react/popup';
8
8
  import Template from '../../core/Template';
9
9
  import { ViewModelChangedEvent } from '@devexpress/analytics-core/serializer/native/viewModels/viewModelGenerator';
10
+ import { LoadPanel } from 'devextreme-react';
10
11
  const AIPanel = ({ data }) => {
11
12
  const viewModel = data.model.getViewModel();
12
13
  React.useEffect(() => {
@@ -18,44 +19,47 @@ const AIPanel = ({ data }) => {
18
19
  class: 'dxrd-preview-ai-panel-warning-popup'
19
20
  };
20
21
  }, []);
22
+ const containerRef = useRef(null);
21
23
  return (React.createElement("div", { id: "dxrd-preview-ai-panel-id", className: "dxrd-preview-ai-panel", hidden: !(data.visible && data.active) },
22
24
  React.createElement("div", { className: "dxrd-right-panel-header dxd-text-primary" },
23
25
  React.createElement("span", null,
24
26
  " ",
25
27
  viewModel?.aiPanelHeaderLabel,
26
28
  " ")),
27
- !!viewModel && (React.createElement("div", null,
29
+ !!viewModel && (React.createElement("div", { className: 'dxrd-preview-ai-panel-wrapper' },
28
30
  React.createElement("div", { className: "dxrd-preview-ai-panel-wrapper dx-editors" },
29
31
  React.createElement("div", { className: "dx-fieldset" },
30
32
  React.createElement("div", { className: "dx-field dxrd-preview-ai-select-box" },
31
33
  React.createElement("label", { className: "dxrd-preview-ai-form-label", htmlFor: "dxrv-ai-target-select" },
32
34
  " ",
33
35
  viewModel.targetContentText),
34
- React.createElement(SelectBox, { id: "dxrv-ai-target-select", className: "dxrd-preview-ai-form-input", dataSource: viewModel.targetSelectBoxOptions.dataSource, onValueChanged: viewModel.targetSelectBoxOptions.onValueChanged, value: viewModel.targetSelectBoxOptions.value, displayExpr: viewModel.targetSelectBoxOptions.displayExpr, valueExpr: viewModel.targetSelectBoxOptions.valueExpr, inputAttr: viewModel.targetSelectBoxOptions.inputAttr })),
36
+ React.createElement(SelectBox, { id: "dxrv-ai-target-select", className: "dxrd-preview-ai-form-input", dataSource: viewModel.targetSelectBoxOptions.dataSource, onValueChanged: viewModel.targetSelectBoxOptions.onValueChanged, value: viewModel.targetSelectBoxOptions.value, displayExpr: viewModel.targetSelectBoxOptions.displayExpr, disabled: viewModel.targetSelectBoxOptions.disabled, valueExpr: viewModel.targetSelectBoxOptions.valueExpr, inputAttr: viewModel.targetSelectBoxOptions.inputAttr })),
35
37
  viewModel.languageSelectBoxOptions.visible && (React.createElement("div", { className: "dx-field dxrd-preview-ai-select-box" },
36
38
  React.createElement("label", { className: "dxrd-preview-ai-form-label", htmlFor: "dxrv-ai-language-select" },
37
39
  " ",
38
40
  viewModel.targetLanguageText,
39
41
  " "),
40
- React.createElement(SelectBox, { id: "dxrv-ai-language-select", className: "dxrd-preview-ai-form-input", dataSource: viewModel.languageSelectBoxOptions.dataSource, onValueChanged: viewModel.languageSelectBoxOptions.onValueChanged, value: viewModel.languageSelectBoxOptions.value, displayExpr: viewModel.languageSelectBoxOptions.displayExpr, valueExpr: viewModel.languageSelectBoxOptions.valueExpr, showClearButton: viewModel.languageSelectBoxOptions.showClearButton, inputAttr: viewModel.languageSelectBoxOptions.inputAttr }))),
42
+ React.createElement(SelectBox, { id: "dxrv-ai-language-select", className: "dxrd-preview-ai-form-input", dataSource: viewModel.languageSelectBoxOptions.dataSource, onValueChanged: viewModel.languageSelectBoxOptions.onValueChanged, value: viewModel.languageSelectBoxOptions.value, displayExpr: viewModel.languageSelectBoxOptions.displayExpr, disabled: viewModel.languageSelectBoxOptions.disabled, valueExpr: viewModel.languageSelectBoxOptions.valueExpr, showClearButton: viewModel.languageSelectBoxOptions.showClearButton, inputAttr: viewModel.languageSelectBoxOptions.inputAttr }))),
41
43
  viewModel.pageSelectBoxVisible && (React.createElement("div", { className: "dx-field dxrd-preview-ai-select-box" },
42
44
  React.createElement("label", { className: "dxrd-preview-ai-form-label", htmlFor: "dxrv-ai-page-select" },
43
45
  " ",
44
46
  viewModel.pageSelectText),
45
- React.createElement(SelectBox, { className: "dxrd-preview-ai-form-input", id: "dxrv-ai-page-select", dataSource: viewModel.pageSelectBoxOptions.dataSource, onValueChanged: viewModel.pageSelectBoxOptions.onValueChanged, value: viewModel.pageSelectBoxOptions.value, displayExpr: viewModel.pageSelectBoxOptions.displayExpr, valueExpr: viewModel.pageSelectBoxOptions.valueExpr, searchExpr: viewModel.pageSelectBoxOptions.searchExpr, searchEnabled: viewModel.pageSelectBoxOptions.searchEnabled, visible: viewModel.pageSelectBoxOptions.visible, inputAttr: viewModel.pageSelectBoxOptions.inputAttr }))),
47
+ React.createElement(SelectBox, { className: "dxrd-preview-ai-form-input", id: "dxrv-ai-page-select", dataSource: viewModel.pageSelectBoxOptions.dataSource, onValueChanged: viewModel.pageSelectBoxOptions.onValueChanged, value: viewModel.pageSelectBoxOptions.value, displayExpr: viewModel.pageSelectBoxOptions.displayExpr, disabled: viewModel.pageSelectBoxOptions.disabled, valueExpr: viewModel.pageSelectBoxOptions.valueExpr, searchExpr: viewModel.pageSelectBoxOptions.searchExpr, searchEnabled: viewModel.pageSelectBoxOptions.searchEnabled, visible: viewModel.pageSelectBoxOptions.visible, inputAttr: viewModel.pageSelectBoxOptions.inputAttr }))),
46
48
  React.createElement("div", { className: "dx-field" },
47
49
  React.createElement("div", { className: "dxrd-preview-ai-buttons-wrapper" },
48
- React.createElement(LoadIndicator, { className: "dxrd-preview-ai-buttons", visible: data.model.loading, height: 24, width: 24 }),
49
50
  React.createElement(Button, { className: "dxrd-preview-ai-buttons dx-accessibility-focus-border-accented", text: viewModel.buttons.translateTextButton.text, disabled: viewModel.buttons.translateTextButton.disabled, onClick: viewModel.buttons.translateTextButton.onClick, width: viewModel.buttons.translateTextButton.width, visible: viewModel.buttons.translateTextButton.visible }),
50
51
  React.createElement(Button, { className: "dxrd-preview-ai-buttons dx-accessibility-focus-border-accented", text: viewModel.buttons.summarizeTextButton.text, disabled: viewModel.buttons.summarizeTextButton.disabled, onClick: viewModel.buttons.summarizeTextButton.onClick, width: viewModel.buttons.summarizeTextButton.width, visible: viewModel.buttons.summarizeTextButton.visible })))),
51
- viewModel.resultVisible && (React.createElement("div", { className: "dxrd-right-panel-header dxd-text-primary dxd-border-primary dxrd-ai-result-text" },
52
- React.createElement("span", { className: "dxrd-right-panel-result-text" },
53
- " ",
54
- viewModel.textProcessingResultHeaderText,
55
- " "),
56
- React.createElement("div", { role: "button", className: "dxrd-right-panel-copy-button dx-accessibility-focus-border-accented", tabIndex: 0, onKeyDown: (e) => viewModel.copyText(data, e) },
57
- React.createElement(Template, { template: data.model?.copyButtonTemplate, className: "dxd-icon-highlighted", onClick: (e) => viewModel.buttons.copyResultButton.onClick(e) })))),
58
- React.createElement(TextArea, { id: "dxrd-ai-panel-text-area-id", tabIndex: 0, className: "dx-accessibility-focus-border-accented dxrd-preview-ai-panel-textarea dxd-back-primary2", value: viewModel.aiProcessingResultText, onInput: (e) => e.event.preventDefault(), onPaste: (e) => e.event.preventDefault(), onKeyDown: (e) => e.event.key !== 'Tab' && e.event.preventDefault(), hoverStateEnabled: false })),
52
+ React.createElement("div", { ref: containerRef, className: "dxrd-ai-panel-result-container" },
53
+ viewModel.resultVisible && (React.createElement("div", { className: "dxrd-right-panel-header dxd-text-primary dxd-border-primary dxrd-ai-result-text" },
54
+ React.createElement("span", { className: "dxrd-right-panel-result-text" },
55
+ " ",
56
+ viewModel.textProcessingResultHeaderText,
57
+ " "),
58
+ React.createElement("div", { role: "button", className: "dxrd-right-panel-copy-button dx-accessibility-focus-border-accented", tabIndex: 0, onKeyDown: (e) => viewModel.copyText(data, e) },
59
+ React.createElement(Template, { template: data.model?.copyButtonTemplate, className: "dxd-icon-highlighted", onClick: (e) => viewModel.buttons.copyResultButton.onClick(e) })))),
60
+ React.createElement(TextArea, { id: "dxrd-ai-panel-text-area-id", tabIndex: 0, className: "dx-accessibility-focus-border-accented dxrd-preview-ai-panel-textarea dxd-back-primary2", value: viewModel.aiProcessingResultText, onInput: (e) => e.event.preventDefault(), onPaste: (e) => e.event.preventDefault(), onKeyDown: (e) => e.event.key !== 'Tab' && e.event.preventDefault(), hoverStateEnabled: false })),
61
+ React.createElement(LoadPanel, { visible: viewModel.loading, showIndicator: false, container: containerRef.current, position: { of: containerRef.current }, showPane: false, height: '100%', width: '100%', message: '' },
62
+ React.createElement(LoadIndicator, { height: 90, width: 90, animationType: "sparkle" }))),
59
63
  React.createElement(Popup, { width: 350, height: 200, shading: false, focusStateEnabled: false, visible: viewModel.warningTextLimitPopupVisible, container: '#dxrd-preview-ai-panel-id', showCloseButton: false, showTitle: false, wrapperAttr: popupAttributes },
60
64
  React.createElement(Position, { at: "top", my: "top", of: "#dxrd-preview-ai-panel-id", collision: "fit" }),
61
65
  React.createElement("span", { className: "dxrd-preview-ai-panel-warning-popup-text" },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "devexpress-reporting-react",
3
- "version": "25.2.5",
3
+ "version": "25.2.6",
4
4
  "homepage": "https://www.devexpress.com/",
5
5
  "bugs": "https://www.devexpress.com/support/",
6
6
  "author": "Developer Express Inc.",
@@ -21,13 +21,13 @@
21
21
  "@types/prop-types": "15.7.13",
22
22
  "@types/react": ">=18.0.0",
23
23
  "@types/react-dom": ">=18.0.0",
24
- "devextreme-react": "25.2.5",
24
+ "devextreme-react": "25.2.6",
25
25
  "react": ">=18.0.0",
26
26
  "react-dom": ">=18.0.0",
27
- "@devexpress/analytics-core": "25.2.5",
28
- "devexpress-reporting": "25.2.5"
27
+ "@devexpress/analytics-core": "25.2.6",
28
+ "devexpress-reporting": "25.2.6"
29
29
  },
30
- "commitSHA": "84298dd4dd625d533a304d01286c833a968ba7a7",
30
+ "commitSHA": "3fc2e53a4e2bb8a8432d731634911295d9ee99b6",
31
31
  "scripts": {
32
32
  "build": "echo done"
33
33
  }