@topconsultnpm/sdkui-react-beta 6.9.44 → 6.9.45

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.
@@ -25,7 +25,7 @@ export declare const colorX = "rgb(246, 245, 242)";
25
25
  export declare enum Descriptors {
26
26
  Query = 3
27
27
  }
28
- export declare function useOrchApplyForm<T>(d: Descriptors, formMode: FormModes, inputData: T | undefined, onApplied?: (newDescriptor: T) => void, parameters?: any[]): {
28
+ export declare function useQueryApplyForm<T>(d: Descriptors, formMode: FormModes, inputData: T | undefined, onApplied?: (newDescriptor: T) => void, parameters?: any[]): {
29
29
  formData: T;
30
30
  setFormData: React.Dispatch<React.SetStateAction<T>>;
31
31
  formDataOrig: T;
@@ -35,7 +35,6 @@ export declare function useOrchApplyForm<T>(d: Descriptors, formMode: FormModes,
35
35
  applyData: () => void;
36
36
  };
37
37
  interface ITMQueryEditor extends ITMApplyFormProps<QueryDescriptor> {
38
- runQdImmediately?: boolean;
39
38
  validateSelect?: boolean;
40
39
  validateOrderBy?: boolean;
41
40
  showDistinct?: boolean;
@@ -51,7 +51,7 @@ export var Descriptors;
51
51
  (function (Descriptors) {
52
52
  Descriptors[Descriptors["Query"] = 3] = "Query";
53
53
  })(Descriptors || (Descriptors = {}));
54
- export function useOrchApplyForm(d, formMode, inputData, onApplied, parameters) {
54
+ export function useQueryApplyForm(d, formMode, inputData, onApplied, parameters) {
55
55
  const newData = () => {
56
56
  switch (d) {
57
57
  case Descriptors.Query: return SearchEngine.NewQueryDescriptor();
@@ -62,9 +62,9 @@ export function useOrchApplyForm(d, formMode, inputData, onApplied, parameters)
62
62
  const [validationItems, setValidationItems] = useState([]);
63
63
  return { formData, setFormData, formDataOrig, validationItems, setValidationItems, exception, applyData };
64
64
  }
65
- const TMQueryEditor = ({ formMode, inputData, onQDChanged, runQdImmediately = false, isModal, showDistinct = false, showToolbar = true, validateSelect = true, validateOrderBy = true, raiseWarningForOnlyMetadataDcmtTypes = false, onApplied, onClose, height = 'auto', borderRadius = '4px', searchText, showApply, showUndo, showBack, onFromTIDChanged }) => {
65
+ const TMQueryEditor = ({ formMode, inputData, onQDChanged, isModal, showDistinct = false, showToolbar = true, validateSelect = true, validateOrderBy = true, raiseWarningForOnlyMetadataDcmtTypes = false, onApplied, onClose, height = 'auto', borderRadius = '4px', searchText, showApply, showUndo, showBack, onFromTIDChanged }) => {
66
66
  const [confirmQueryParams, ConfirmQueryParamsDialog] = useQueryParametersDialog();
67
- const { formData, setFormData, formDataOrig, validationItems, setValidationItems, exception, applyData } = useOrchApplyForm(Descriptors.Query, formMode, inputData, onApplied);
67
+ const { formData, setFormData, formDataOrig, validationItems, setValidationItems, exception, applyData } = useQueryApplyForm(Descriptors.Query, formMode, inputData, onApplied);
68
68
  const [dcmtTypesList, setDcmtTypesList] = useState([]);
69
69
  const [lastQdParams, setLastQdParams] = useState([]);
70
70
  const [resultSearch, setResultSearch] = useState();
@@ -74,7 +74,7 @@ const TMQueryEditor = ({ formMode, inputData, onQDChanged, runQdImmediately = fa
74
74
  const [showCompleteMetadataName, setShowCompleteMetadataName] = useState(false);
75
75
  const [showResultSearch, setShowResultSearch] = useState(false);
76
76
  const [fromCount, setFromCount] = useState(0);
77
- useEffect(() => { setShowResultSearch(false); }, [inputData]);
77
+ useEffect(() => { setShowResultSearch(false); }, [JSON.stringify(inputData)]);
78
78
  useEffect(() => {
79
79
  if (!formData)
80
80
  return;
@@ -85,9 +85,7 @@ const TMQueryEditor = ({ formMode, inputData, onQDChanged, runQdImmediately = fa
85
85
  useEffect(() => { validateQd(); }, [formData.select, formData.where, formData.orderBy, formData.maxDcmtsToBeReturned]);
86
86
  //Se non c'è la toolbar significa che il qd deve essere gestito dall'esterno
87
87
  useEffect(() => { if (!showToolbar)
88
- onQDChanged?.(formData); }, [formData]);
89
- useEffect(() => { if (runQdImmediately)
90
- onSearchAsync().catch((err) => { TMExceptionBoxManager.show({ exception: err }); }); }, [runQdImmediately]);
88
+ onQDChanged?.(formData); }, [JSON.stringify(formData)]);
91
89
  const validateQd = () => {
92
90
  let vil = [];
93
91
  let qvo = new QueryValidatorOptions();
@@ -573,28 +571,28 @@ const TMQueryEditor = ({ formMode, inputData, onQDChanged, runQdImmediately = fa
573
571
  // #endregion
574
572
  // #region Ricerca
575
573
  const renderResultSearchForm = _jsx(TMQueryResultForm, { context: SearchResultContext.METADATA_SEARCH, onClose: () => { setShowResultSearch(false); }, isModal: isModal, result1: resultSearch, elapsedTime: elapsedTime, searchText: searchText });
576
- const onSearchAsync = async () => {
574
+ const onSearchAsync = async (qdInput) => {
577
575
  try {
578
576
  const startTime = new Date().getTime();
579
- let qd = await prepareQdForSearchAsync(formData);
580
- if (IsParametricQuery(qd)) {
581
- const qdParams = await confirmQueryParams(qd, lastQdParams);
577
+ let qdSearch = await prepareQdForSearchAsync(qdInput);
578
+ if (IsParametricQuery(qdSearch)) {
579
+ const qdParams = await confirmQueryParams(qdSearch, lastQdParams);
582
580
  setLastQdParams(qdParams);
583
581
  if (!qdParams || qdParams.length <= 0)
584
582
  return;
585
583
  for (const qpd of qdParams) {
586
- let wi = qd.where?.find(o => o.value1 == qpd.name);
584
+ let wi = qdSearch.where?.find(o => o.value1 == qpd.name);
587
585
  if (wi)
588
586
  wi.value1 = wi.value1?.replace(wi.value1, !qpd.value ? '' : qpd.value.toString());
589
587
  else {
590
- wi = qd.where?.find(o => o.value2 == qpd.name);
588
+ wi = qdSearch.where?.find(o => o.value2 == qpd.name);
591
589
  if (wi)
592
590
  wi.value2 = wi.value2?.replace(wi.value2, !qpd.value ? '' : qpd.value.toString());
593
591
  }
594
592
  }
595
593
  }
596
594
  TMSpinner.show({ description: `${SDKUI_Localizator.Search} ...`, backgroundColor: 'transparent' });
597
- let result = await SDK_Globals.tmSession?.NewSearchEngine().SearchByIDAsync(qd);
595
+ let result = await SDK_Globals.tmSession?.NewSearchEngine().SearchByIDAsync(qdSearch);
598
596
  let dcmtsFound = result?.dcmtsFound ?? 0;
599
597
  if (dcmtsFound <= 0)
600
598
  ShowAlert({ message: SDKUI_Localizator.NoDcmtFound, mode: 'info', title: SDKUI_Localizator.SearchResult, duration: 3000 });
@@ -679,7 +677,7 @@ const TMQueryEditor = ({ formMode, inputData, onQDChanged, runQdImmediately = fa
679
677
  }
680
678
  };
681
679
  // #endregion
682
- return (_jsxs(_Fragment, { children: [_jsxs(TMApplyForm, { isModal: false, formMode: formMode, isModified: calcIsModified(formData, formDataOrig), exception: exception, validationItems: validationItems, hasNavigation: false, customToolbarElements: _jsxs(_Fragment, { children: [_jsx(TMButton, { btnStyle: 'toolbar', caption: SDKUI_Localizator.Search, color: 'tertiary', icon: _jsx(IconSearch, {}), disabled: errorsCount > 0, onClick: onSearchAsync }), _jsx(TMButton, { btnStyle: 'toolbar', caption: SDKUI_Localizator.Count, icon: _jsx(IconCount, {}), disabled: errorsCount > 0, onClick: () => getQueryCountAsync(formData, true) }), SDK_Globals.tmSession?.SessionDescr?.appModuleID == AppModules.SURFER && _jsx(TMButton, { caption: "Passa ad archiviazione", icon: _jsx(IconArchiveDoc, {}), btnStyle: 'toolbar', fontSize: '1.3rem', onClick: () => { ShowAlert({ message: "TODO Passa ad archiviazione", mode: 'info', title: `${"TODO"}`, duration: 3000 }); } }), SDK_Globals.tmSession?.SessionDescr?.appModuleID == AppModules.SURFER && _jsx(TMButton, { caption: "Vai a risultato", icon: _jsx(IconArrowRight, {}), btnStyle: 'toolbar', fontSize: '1.3rem', onClick: () => { ShowAlert({ message: "TODO Vai a risultato", mode: 'info', title: `${"TODO"}`, duration: 3000 }); } })] }), showToolbar: showToolbar, showApply: showApply, showUndo: showUndo, showBack: showBack, onApply: () => applyData(), onClose: () => onClose?.(), onUndo: () => setFormData(formDataOrig), children: [_jsxs(Accordion, { elementAttr: { class: 'tm-query-dx-accordion' }, height: height, multiple: true, collapsible: true, repaintChangesOnly: true, deferRendering: false, animationDuration: 0, onContentReady: (e) => {
680
+ return (_jsxs(_Fragment, { children: [_jsxs(TMApplyForm, { isModal: false, formMode: formMode, isModified: calcIsModified(formData, formDataOrig), exception: exception, validationItems: validationItems, hasNavigation: false, customToolbarElements: _jsxs(_Fragment, { children: [_jsx(TMButton, { btnStyle: 'toolbar', caption: SDKUI_Localizator.Search, color: 'tertiary', icon: _jsx(IconSearch, {}), disabled: errorsCount > 0, onClick: async () => await onSearchAsync(formData) }), _jsx(TMButton, { btnStyle: 'toolbar', caption: SDKUI_Localizator.Count, icon: _jsx(IconCount, {}), disabled: errorsCount > 0, onClick: () => getQueryCountAsync(formData, true) }), SDK_Globals.tmSession?.SessionDescr?.appModuleID == AppModules.SURFER && _jsx(TMButton, { caption: "Passa ad archiviazione", icon: _jsx(IconArchiveDoc, {}), btnStyle: 'toolbar', fontSize: '1.3rem', onClick: () => { ShowAlert({ message: "TODO Passa ad archiviazione", mode: 'info', title: `${"TODO"}`, duration: 3000 }); } }), SDK_Globals.tmSession?.SessionDescr?.appModuleID == AppModules.SURFER && _jsx(TMButton, { caption: "Vai a risultato", icon: _jsx(IconArrowRight, {}), btnStyle: 'toolbar', fontSize: '1.3rem', onClick: () => { ShowAlert({ message: "TODO Vai a risultato", mode: 'info', title: `${"TODO"}`, duration: 3000 }); } })] }), showToolbar: showToolbar, showApply: showApply, showUndo: showUndo, showBack: showBack, onApply: () => applyData(), onClose: () => onClose?.(), onUndo: () => setFormData(formDataOrig), children: [_jsxs(Accordion, { elementAttr: { class: 'tm-query-dx-accordion' }, height: height, multiple: true, collapsible: true, repaintChangesOnly: true, deferRendering: false, animationDuration: 0, onContentReady: (e) => {
683
681
  let items = e.component.option("items");
684
682
  if (items && items.length > 0) {
685
683
  for (let i = 0; i < items.length; i++) {
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useState } from "react";
2
+ import { useEffect, useState } from "react";
3
3
  import { QueryParameterDescriptor } from '@topconsultnpm/sdk-ts-beta';
4
4
  import { TMModal, TMTextBox, TMButton } from "../components";
5
5
  import { IconApply, IconCloseOutline, SDKUI_Localizator } from "../helper";
@@ -10,6 +10,11 @@ export const useQueryParametersDialog = () => {
10
10
  const [open, setOpen] = useState(false);
11
11
  const [qdParams, setQdParams] = useState([]);
12
12
  let qdParamsOut = [];
13
+ useEffect(() => {
14
+ for (const qdp of qdParams) {
15
+ qdParamsOut.push(qdp);
16
+ }
17
+ }, [qdParams]);
13
18
  const confirmQueryParams = (inputQd, lastQdParams) => new Promise((resolve, reject) => {
14
19
  if (inputQd.where) {
15
20
  let newQueryParams = [];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@topconsultnpm/sdkui-react-beta",
3
- "version": "6.9.44",
3
+ "version": "6.9.45",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "test": "echo \"Error: no test specified\" && exit 1",