devexpress-reporting-react 24.2.6 → 24.2.8

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.
@@ -13,6 +13,6 @@ const CharacterComb = ({ data }) => {
13
13
  (!data.active || data.field.readOnly) &&
14
14
  data.cells.map((cell, index) => (React.createElement("div", { key: index, className: "dxrp-editing-field-charactercomb-cell", style: processStyles(cell.style) }, cell.text))),
15
15
  data.active && !data.field.readOnly &&
16
- React.createElement("textarea", { className: "dxrp-editing-field-text dxrd-background-white", value: value, onChange: handleValueChanged, style: processStyles(data.textStyle), onBlur: () => data.hideEditor(true), onKeyUp: event => data.keypressAction(data, event.nativeEvent) })));
16
+ React.createElement("textarea", { className: "dxrp-editing-field-text dxrd-background-white", value: value, onChange: handleValueChanged, style: processStyles(data.textStyle), onBlur: () => data.hideEditor(true), onKeyUp: event => data.keypressAction(data, event.nativeEvent), onInput: event => data.onInput(data, event.nativeEvent) })));
17
17
  };
18
18
  export default CharacterComb;
@@ -14,7 +14,7 @@ const ExportTool = ({ data }) => {
14
14
  }, [data]);
15
15
  return (React.createElement("div", { ref: elementRef },
16
16
  React.createElement("div", { className: "dxrd-visually-hidden" },
17
- React.createElement("form", { action: "data.exportActionUri", method: "post" }, data.exportFormData.map(item => (React.createElement("input", { key: item.name, name: item.name, value: item.value }))))),
17
+ React.createElement("form", { method: "post" })),
18
18
  React.createElement(Popup, { width: data.popupOptions.width, height: data.popupOptions.height, title: data.popupOptions.title, visible: data.popupOptions.visible, showCloseButton: true, onHidden: () => data.popupOptions.onHidden(), toolbarItems: data.popupOptions.toolbarItems, wrapperAttr: data.popupOptions.wrapperAttr, container: popupOptions?.container, position: popupOptions?.position },
19
19
  React.createElement("div", { className: "dxrd-print-dialog-content" },
20
20
  React.createElement("div", null, data.printingTexts.caption),
@@ -5,6 +5,6 @@ const TextEditingField = ({ data }) => {
5
5
  setValue(value);
6
6
  data.value = value;
7
7
  };
8
- return (React.createElement("textarea", { className: "dxrp-editing-field-text", value: value, onChange: e => handleValueChanged(e.target.value), style: data.textStyle, onBlur: () => data.hideEditor(true), onKeyUp: event => data.keypressAction(data, event.nativeEvent) }));
8
+ return (React.createElement("textarea", { className: "dxrp-editing-field-text", value: value, onChange: e => handleValueChanged(e.target.value), style: data.textStyle, onBlur: () => data.hideEditor(true), onKeyUp: event => data.keypressAction(data, event.nativeEvent), onInput: event => data.onInput(data, event.nativeEvent) }));
9
9
  };
10
10
  export default TextEditingField;
@@ -32,6 +32,8 @@ const DateRange = ({ viewModel }) => {
32
32
  buttonAction: processClickEvent,
33
33
  value: viewModel.displayValue,
34
34
  readOnly: true,
35
+ disabled: viewModel.disabled,
36
+ visible: viewModel.visible,
35
37
  openOnFieldClick: true,
36
38
  inputAttr: { 'aria-label': viewModel._displayName, id: viewModel._editorInputId }
37
39
  });
@@ -23,6 +23,6 @@ const ParametersPanel = React.forwardRef(({ data }, ref) => {
23
23
  React.createElement(Template, { template: "dx-propertieseditor", data: data.propertyGrid })),
24
24
  React.createElement("div", { className: "dxrd-preview-parameter-actions-container", hidden: !data.model.showButtons },
25
25
  React.createElement(LoadIndicator, { className: "dxrd-preview-parameter-action dxrd-preview-loading", visible: data.model.parametersLoading }),
26
- data.model.buttons.map((button, index) => (React.createElement(Button, { key: index, className: "dxrd-preview-parameter-action dxrdp-parameters-reset dx-accessibility-focus-border-accented", text: button.text, onClick: button.onClick }))))))));
26
+ data.model.buttons.map((button, index) => (React.createElement(Button, { key: index, className: "dxrd-preview-parameter-action dx-accessibility-focus-border-accented", elementAttr: button.elementAttr, text: button.text, onClick: button.onClick }))))))));
27
27
  });
28
28
  export default ParametersPanel;
@@ -5,6 +5,7 @@ import useDxMutationObserver from '../../../../hooks/dxMutationObserver';
5
5
  import useDxAutoFit from '../../../../hooks/dxAutoFit';
6
6
  import useDxLazyImages from '../../../../hooks/dxLazyImages';
7
7
  import useDxToView from '../../../../hooks/dxToView';
8
+ import useDxTextCopier from '../../../../hooks/dxTextCopier';
8
9
  const MultiPageHolder = ({ lazyImagesOptions, pages }) => {
9
10
  const lazyImagesRef = React.useRef();
10
11
  useDxLazyImages(lazyImagesRef, lazyImagesOptions);
@@ -23,10 +24,12 @@ const Surface = ({ data }) => {
23
24
  const clipboardMessage = getLocalization('Clipboard', 'ASPxReportsStringId.WebDocumentViewer_AriaClipboard');
24
25
  const autoFitRef = React.useRef();
25
26
  useDxAutoFit(autoFitRef, data.currentPage?.autoFitOptions);
27
+ const textCopier = React.useRef();
28
+ useDxTextCopier(textCopier, { viewModel: data });
26
29
  const dxMutationObserverRef = React.useRef();
27
30
  useDxMutationObserver(dxMutationObserverRef, data.previewBrickKeyboardHelper);
28
31
  return (React.createElement(React.Fragment, null,
29
- React.createElement("div", { className: `dxrd-preview-wrapper ${data.rtlReport ? 'dx-rtl' : ''} ${data.editingFieldsHighlighted ? 'dxrp-editing-fields-hightlighted' : ''}`, "data-bind": "textCopier" },
32
+ React.createElement("div", { ref: textCopier, className: `dxrd-preview-wrapper ${data.rtlReport ? 'dx-rtl' : ''} ${data.editingFieldsHighlighted ? 'dxrp-editing-fields-hightlighted' : ''}`, "data-bind": "textCopier" },
30
33
  React.createElement(Template, { template: "dxrd-preview-progress-bar", data: data.progressBar }),
31
34
  React.createElement("div", { className: "dxrd-preview-surface", ref: dxMutationObserverRef },
32
35
  !data.showMultipagePreview && (React.createElement("div", { className: "dxrd-report-preview-holder", role: "list" }, (!!data.currentPage && (data.currentPage.pageLoading || (!data.currentPage.pageLoading && data.currentPage.pageLoaded))) && (React.createElement("div", { role: "listitem", className: "dxrd-report-preview dx-accessibility-page-item dx-accessibility-border-accented", ref: autoFitRef, style: { width: data.currentPage.width + 'px', height: data.currentPage.height + 'px' } },
@@ -12,9 +12,7 @@ const useDxEllipsisEditor = (options) => {
12
12
  };
13
13
  }, []);
14
14
  React.useEffect(() => {
15
- if (editor && editor.option('value') != options.value) {
16
- editor.option('value', options.value);
17
- }
15
+ editor?._updateOptions(options);
18
16
  });
19
17
  return ref;
20
18
  };
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { ITextCopierOptions } from 'devexpress-reporting/viewer/internal/_bindings';
3
+ declare const useDxTextCopier: (ref: React.MutableRefObject<HTMLElement>, options: ITextCopierOptions) => void;
4
+ export default useDxTextCopier;
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import { initializeTextCopierBinding } from 'devexpress-reporting/viewer/internal/_bindings';
3
+ const useDxTextCopier = (ref, options) => {
4
+ React.useEffect(() => options && ref.current && initializeTextCopierBinding(ref.current, options), []);
5
+ };
6
+ export default useDxTextCopier;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "devexpress-reporting-react",
3
- "version": "24.2.6",
3
+ "version": "24.2.8",
4
4
  "homepage": "https://www.devexpress.com/",
5
5
  "bugs": "https://www.devexpress.com/support/",
6
6
  "author": "Developer Express Inc.",
@@ -15,16 +15,16 @@
15
15
  "license": "SEE LICENSE IN README.md",
16
16
  "main": "./index.js",
17
17
  "dependencies": {
18
- "devexpress-reporting": "24.2.6",
18
+ "devexpress-reporting": "24.2.8",
19
19
  "prop-types": "^15.8.1"
20
20
  },
21
21
  "peerDependencies": {
22
- "devextreme-react": "24.2.6",
22
+ "devextreme-react": "24.2.8",
23
23
  "react": "^18.0.0 || ^19.0.0",
24
24
  "react-dom": "^18.0.0 || ^19.0.0"
25
25
  },
26
26
  "devDependencies": {
27
- "@devexpress/analytics-core": "24.2.6",
27
+ "@devexpress/analytics-core": "24.2.8",
28
28
  "@types/prop-types": "15.7.13",
29
29
  "@types/react": "^18.0.28",
30
30
  "@types/react-dom": "^18.0.28",
@@ -35,5 +35,5 @@
35
35
  "prebuild": "npx shx rm -rf dist && npx shx mkdir dist && npx shx cp README.md dist/ && npx shx cp package.json dist/",
36
36
  "build": "npx tsc --project tsconfig.lib.json"
37
37
  },
38
- "commitSHA": "edf23af9db6d66cd63e7dbb5eb65bc65486e1142"
38
+ "commitSHA": "c539731ec635e74dc182ff5129620cd205efbaf6"
39
39
  }