@topconsultnpm/sdkui-react 6.22.0-dev2.4 → 6.22.0-dev2.41

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 (124) hide show
  1. package/lib/components/NewComponents/ContextMenu/TMContextMenu.js +1 -1
  2. package/lib/components/NewComponents/FloatingMenuBar/TMFloatingMenuBar.js +1 -1
  3. package/lib/components/base/TMButton.d.ts +13 -0
  4. package/lib/components/base/TMButton.js +137 -5
  5. package/lib/components/base/TMDataGrid.d.ts +2 -0
  6. package/lib/components/base/TMDataGrid.js +81 -8
  7. package/lib/components/base/TMEditorBase.d.ts +2 -0
  8. package/lib/components/base/TMFileManager.js +5 -3
  9. package/lib/components/base/TMFileManagerUtils.d.ts +1 -0
  10. package/lib/components/base/TMFileManagerUtils.js +16 -0
  11. package/lib/components/base/TMModal.d.ts +11 -0
  12. package/lib/components/base/TMModal.js +47 -13
  13. package/lib/components/base/TMPanel.d.ts +1 -0
  14. package/lib/components/base/TMPanel.js +79 -20
  15. package/lib/components/base/TMPopUp.js +3 -0
  16. package/lib/components/base/TMTooltip.d.ts +2 -1
  17. package/lib/components/base/TMTooltip.js +23 -6
  18. package/lib/components/base/TMTreeView.js +108 -67
  19. package/lib/components/choosers/TMDcmtTypeChooser.js +4 -3
  20. package/lib/components/choosers/TMDistinctValues.d.ts +9 -7
  21. package/lib/components/choosers/TMDistinctValues.js +149 -142
  22. package/lib/components/choosers/TMMetadataChooser.js +1 -1
  23. package/lib/components/choosers/TMQuickSearchInfo.d.ts +12 -0
  24. package/lib/components/choosers/TMQuickSearchInfo.js +279 -0
  25. package/lib/components/choosers/TMQuickSearchSettingsForm.d.ts +16 -0
  26. package/lib/components/choosers/TMQuickSearchSettingsForm.js +94 -0
  27. package/lib/components/choosers/TMSelectedValuesSummary.d.ts +13 -0
  28. package/lib/components/choosers/TMSelectedValuesSummary.js +91 -0
  29. package/lib/components/editors/TMDropDown.d.ts +3 -0
  30. package/lib/components/editors/TMDropDown.js +197 -5
  31. package/lib/components/editors/TMMetadataEditor.d.ts +5 -1
  32. package/lib/components/editors/TMMetadataEditor.js +8 -3
  33. package/lib/components/editors/TMTextBox.js +2 -2
  34. package/lib/components/features/documents/TMBatchUpdateForm.js +19 -5
  35. package/lib/components/features/documents/TMDcmtBlog.d.ts +3 -0
  36. package/lib/components/features/documents/TMDcmtBlog.js +4 -4
  37. package/lib/components/features/documents/TMDcmtForm.d.ts +7 -0
  38. package/lib/components/features/documents/TMDcmtForm.js +112 -45
  39. package/lib/components/features/documents/TMDcmtFormActionButtons.d.ts +11 -0
  40. package/lib/components/features/documents/TMDcmtFormActionButtons.js +74 -7
  41. package/lib/components/features/documents/TMDcmtPreview.js +10 -6
  42. package/lib/components/features/documents/TMMasterDetailDcmts.js +95 -33
  43. package/lib/components/features/documents/TMMasterInfoFields.d.ts +19 -0
  44. package/lib/components/features/documents/TMMasterInfoFields.js +186 -0
  45. package/lib/components/features/documents/TMMergeToPdfForm.d.ts +1 -2
  46. package/lib/components/features/documents/TMMergeToPdfForm.js +30 -5
  47. package/lib/components/features/documents/TMMultiMasterDetailDcmtsForm.d.ts +45 -0
  48. package/lib/components/features/documents/TMMultiMasterDetailDcmtsForm.js +323 -0
  49. package/lib/components/features/documents/TMMultiMasterDetailDcmtsUtils.d.ts +370 -0
  50. package/lib/components/features/documents/TMMultiMasterDetailDcmtsUtils.js +283 -0
  51. package/lib/components/features/documents/TMRelationViewer.d.ts +14 -1
  52. package/lib/components/features/documents/TMRelationViewer.js +69 -20
  53. package/lib/components/features/search/TMSearch.js +31 -18
  54. package/lib/components/features/search/TMSearchQueryEditor.js +5 -3
  55. package/lib/components/features/search/TMSearchQueryPanel.d.ts +2 -1
  56. package/lib/components/features/search/TMSearchQueryPanel.js +45 -9
  57. package/lib/components/features/search/TMSearchResult.d.ts +15 -0
  58. package/lib/components/features/search/TMSearchResult.js +509 -187
  59. package/lib/components/features/search/TMTreeSelector.js +18 -5
  60. package/lib/components/features/workflow/TMWorkflowPopup.d.ts +10 -0
  61. package/lib/components/features/workflow/TMWorkflowPopup.js +8 -4
  62. package/lib/components/layout/panelManager/TMPanelManagerContainer.d.ts +1 -0
  63. package/lib/components/layout/panelManager/TMPanelManagerContainer.js +24 -14
  64. package/lib/components/layout/panelManager/TMPanelManagerContext.js +68 -93
  65. package/lib/components/layout/panelManager/TMPanelWrapper.js +2 -2
  66. package/lib/components/layout/panelManager/types.d.ts +3 -0
  67. package/lib/components/layout/panelManager/utils.js +13 -11
  68. package/lib/components/viewers/TMMidViewer.js +4 -1
  69. package/lib/components/viewers/TMTidViewer.js +25 -11
  70. package/lib/devextreme-license.d.ts +1 -0
  71. package/lib/devextreme-license.js +3 -0
  72. package/lib/helper/SDKUI_Globals.d.ts +109 -0
  73. package/lib/helper/SDKUI_Globals.js +150 -0
  74. package/lib/helper/SDKUI_Localizator.d.ts +34 -0
  75. package/lib/helper/SDKUI_Localizator.js +340 -0
  76. package/lib/helper/TMIcons.d.ts +1 -0
  77. package/lib/helper/TMIcons.js +3 -0
  78. package/lib/helper/dataGridSearchHelper.d.ts +28 -0
  79. package/lib/helper/dataGridSearchHelper.js +51 -0
  80. package/lib/helper/dcmtsHelper.d.ts +20 -0
  81. package/lib/helper/dcmtsHelper.js +58 -1
  82. package/lib/helper/helpers.d.ts +20 -0
  83. package/lib/helper/helpers.js +55 -1
  84. package/lib/helper/index.d.ts +1 -0
  85. package/lib/helper/index.js +1 -0
  86. package/lib/helper/queryHelper.d.ts +2 -0
  87. package/lib/helper/queryHelper.js +3 -1
  88. package/lib/hooks/tmDistinctValuesGridHelper.d.ts +16 -0
  89. package/lib/hooks/tmDistinctValuesGridHelper.js +31 -0
  90. package/lib/hooks/useArchiveListForm.d.ts +39 -0
  91. package/lib/hooks/useArchiveListForm.js +46 -0
  92. package/lib/hooks/useCaseFlowApprove.d.ts +56 -0
  93. package/lib/hooks/useCaseFlowApprove.js +157 -0
  94. package/lib/hooks/useDataUserIdItem.d.ts +1 -0
  95. package/lib/hooks/useDataUserIdItem.js +1 -0
  96. package/lib/hooks/useDocumentOperations.d.ts +4 -0
  97. package/lib/hooks/useDocumentOperations.js +41 -7
  98. package/lib/hooks/useMultiMasterDetailDcmts.d.ts +113 -0
  99. package/lib/hooks/useMultiMasterDetailDcmts.js +760 -0
  100. package/lib/hooks/useRelatedDocuments.js +2 -26
  101. package/lib/hooks/useShowDossiersV5.d.ts +12 -0
  102. package/lib/hooks/useShowDossiersV5.js +37 -0
  103. package/lib/hooks/useTMDistinctValuesMetadataDisplay.d.ts +18 -0
  104. package/lib/hooks/useTMDistinctValuesMetadataDisplay.js +103 -0
  105. package/lib/hooks/useTMDistinctValuesQuickSearch.d.ts +49 -0
  106. package/lib/hooks/useTMDistinctValuesQuickSearch.js +307 -0
  107. package/lib/hooks/useTMDistinctValuesSelection.d.ts +42 -0
  108. package/lib/hooks/useTMDistinctValuesSelection.js +103 -0
  109. package/lib/hooks/useTMDistinctValuesSource.d.ts +29 -0
  110. package/lib/hooks/useTMDistinctValuesSource.js +105 -0
  111. package/lib/index.d.ts +2 -0
  112. package/lib/index.js +5 -2
  113. package/lib/services/caseflow/CaseFlowService.d.ts +236 -0
  114. package/lib/services/caseflow/CaseFlowService.js +693 -0
  115. package/lib/services/caseflow/CaseFlowTemplateCacheService.d.ts +28 -0
  116. package/lib/services/caseflow/CaseFlowTemplateCacheService.js +121 -0
  117. package/lib/services/caseflow/caseFlowNameCache.d.ts +32 -0
  118. package/lib/services/caseflow/caseFlowNameCache.js +116 -0
  119. package/lib/services/caseflow/caseFlowWorkItemUtils.d.ts +61 -0
  120. package/lib/services/caseflow/caseFlowWorkItemUtils.js +113 -0
  121. package/lib/services/index.d.ts +4 -0
  122. package/lib/services/index.js +4 -0
  123. package/lib/services/platform_services.d.ts +1 -1
  124. package/package.json +9 -5
@@ -444,6 +444,16 @@ export class SDKUI_Localizator {
444
444
  default: return "Consenti solo archiviazioni di metadati";
445
445
  }
446
446
  }
447
+ static get ArchivedDetails() {
448
+ switch (this._cultureID) {
449
+ case CultureIDs.De_DE: return "Bereits archivierte Details";
450
+ case CultureIDs.En_US: return "Already archived details";
451
+ case CultureIDs.Es_ES: return "Detalles ya archivados";
452
+ case CultureIDs.Fr_FR: return "Détails déjà archivés";
453
+ case CultureIDs.Pt_PT: return "Detalhes já arquivados";
454
+ default: return "Dettagli già archiviati";
455
+ }
456
+ }
447
457
  static get ArchivedDocuments() {
448
458
  switch (this._cultureID) {
449
459
  case CultureIDs.De_DE: return "Archivierte Dokumente";
@@ -484,6 +494,46 @@ export class SDKUI_Localizator {
484
494
  default: return "Archivia documento master";
485
495
  }
486
496
  }
497
+ static get ArchiveMultipleDetailDocuments() {
498
+ switch (this._cultureID) {
499
+ case CultureIDs.De_DE: return "Mehrere Details archivieren";
500
+ case CultureIDs.En_US: return "Archive multiple details";
501
+ case CultureIDs.Es_ES: return "Archivar múltiples detalles";
502
+ case CultureIDs.Fr_FR: return "Archiver plusieurs détails";
503
+ case CultureIDs.Pt_PT: return "Arquivar múltiplos detalhes";
504
+ default: return "Archivia dettagli multipli";
505
+ }
506
+ }
507
+ static get ArchiveMasterAndMultipleDetailDocuments() {
508
+ switch (this._cultureID) {
509
+ case CultureIDs.De_DE: return "Master mit mehreren Details archivieren";
510
+ case CultureIDs.En_US: return "Archive master with multiple details";
511
+ case CultureIDs.Es_ES: return "Archivar maestro con múltiples detalles";
512
+ case CultureIDs.Fr_FR: return "Archiver le maître avec plusieurs détails";
513
+ case CultureIDs.Pt_PT: return "Arquivar mestre com múltiplos detalhes";
514
+ default: return "Archivia master con dettagli multipli";
515
+ }
516
+ }
517
+ static get ArchiveMasterAndDetails_Confirm() {
518
+ switch (this._cultureID) {
519
+ case CultureIDs.De_DE: return "Master archivieren und mit den Details fortfahren?";
520
+ case CultureIDs.En_US: return "Archive the master and proceed with the details?";
521
+ case CultureIDs.Es_ES: return "¿Archivar el maestro y continuar con los detalles?";
522
+ case CultureIDs.Fr_FR: return "Archiver le maître et poursuivre avec les détails ?";
523
+ case CultureIDs.Pt_PT: return "Arquivar o mestre e prosseguir com os detalhes?";
524
+ default: return "Archiviare il master e proseguire con i dettagli?";
525
+ }
526
+ }
527
+ static get ExitWithoutArchiving_Confirm() {
528
+ switch (this._cultureID) {
529
+ case CultureIDs.De_DE: return "Möchten Sie wirklich beenden? Die eingegebenen Dokumente werden nicht archiviert. Fortfahren?";
530
+ case CultureIDs.En_US: return "Are you sure you want to exit? The entered documents will not be archived. Continue?";
531
+ case CultureIDs.Es_ES: return "¿Está seguro de que desea salir? Los documentos introducidos no se archivarán. ¿Continuar?";
532
+ case CultureIDs.Fr_FR: return "Êtes-vous sûr de vouloir quitter ? Les documents saisis ne seront pas archivés. Continuer ?";
533
+ case CultureIDs.Pt_PT: return "Tem a certeza de que pretende sair? Os documentos introduzidos não serão arquivados. Continuar?";
534
+ default: return "Sei sicuro di voler uscire? I documenti inseriti non verranno archiviati. Continuare?";
535
+ }
536
+ }
487
537
  static get Archiving() {
488
538
  switch (this._cultureID) {
489
539
  case CultureIDs.De_DE: return "Archivierung";
@@ -715,6 +765,16 @@ export class SDKUI_Localizator {
715
765
  default: return "Indietro";
716
766
  }
717
767
  }
768
+ static get BackToResult() {
769
+ switch (this._cultureID) {
770
+ case CultureIDs.De_DE: return "Zum Ergebnis";
771
+ case CultureIDs.En_US: return "Go to result";
772
+ case CultureIDs.Es_ES: return "Ir al resultado";
773
+ case CultureIDs.Fr_FR: return "Aller au résultat";
774
+ case CultureIDs.Pt_PT: return "Ir para o resultado";
775
+ default: return "Vai a risultato";
776
+ }
777
+ }
718
778
  static get BatchUpdate() {
719
779
  switch (this._cultureID) {
720
780
  case CultureIDs.De_DE: return "Mehrfachbearbeitung";
@@ -855,6 +915,16 @@ export class SDKUI_Localizator {
855
915
  default: return "Annulla e chiudi";
856
916
  }
857
917
  }
918
+ static get ChangeMasterWithoutArchiving_Confirm() {
919
+ switch (this._cultureID) {
920
+ case CultureIDs.De_DE: return "Beim Wechsel des Dokuments werden die eingegebenen Details verworfen und nicht archiviert. Fortfahren?";
921
+ case CultureIDs.En_US: return "Changing document will discard the entered details without archiving them. Continue?";
922
+ case CultureIDs.Es_ES: return "Al cambiar de documento, los detalles introducidos se descartarán sin archivarse. ¿Continuar?";
923
+ case CultureIDs.Fr_FR: return "En changeant de document, les détails saisis seront abandonnés sans être archivés. Continuer ?";
924
+ case CultureIDs.Pt_PT: return "Ao mudar de documento, os detalhes introduzidos serão descartados sem serem arquivados. Continuar?";
925
+ default: return "Cambiando documento, i dettagli inseriti verranno scartati senza essere archiviati. Continuare?";
926
+ }
927
+ }
858
928
  static get ChangePassword() {
859
929
  switch (this._cultureID) {
860
930
  case CultureIDs.De_DE: return "Kennwort ändern";
@@ -1652,6 +1722,66 @@ export class SDKUI_Localizator {
1652
1722
  return "Cartella di default";
1653
1723
  }
1654
1724
  }
1725
+ static get DcmtTypeStructureNotRetrieved() {
1726
+ switch (this._cultureID) {
1727
+ case CultureIDs.De_DE: return "Die Struktur des Dokumenttyps konnte nicht abgerufen werden.";
1728
+ case CultureIDs.En_US: return "Unable to retrieve the document type structure.";
1729
+ case CultureIDs.Es_ES: return "No se ha podido recuperar la estructura del tipo de documento.";
1730
+ case CultureIDs.Fr_FR: return "Impossible de récupérer la structure du type de document.";
1731
+ case CultureIDs.Pt_PT: return "Não foi possível recuperar a estrutura do tipo de documento.";
1732
+ default: return "Non è stato possibile recuperare la struttura del tipo documento.";
1733
+ }
1734
+ }
1735
+ static get DetailCopiedToArchiveList() {
1736
+ switch (this._cultureID) {
1737
+ case CultureIDs.De_DE: return "Detail zu den zu archivierenden Details kopiert";
1738
+ case CultureIDs.En_US: return "Detail copied to the details to archive";
1739
+ case CultureIDs.Es_ES: return "Detalle copiado a los detalles a archivar";
1740
+ case CultureIDs.Fr_FR: return "Détail copié dans les détails à archiver";
1741
+ case CultureIDs.Pt_PT: return "Detalhe copiado para os detalhes a arquivar";
1742
+ default: return "Dettaglio copiato tra i dettagli da archiviare";
1743
+ }
1744
+ }
1745
+ static get DetailFileNotRetrieved() {
1746
+ switch (this._cultureID) {
1747
+ case CultureIDs.De_DE: return "Datei des Details nicht abgerufen";
1748
+ case CultureIDs.En_US: return "Detail file not retrieved";
1749
+ case CultureIDs.Es_ES: return "Archivo del detalle no recuperado";
1750
+ case CultureIDs.Fr_FR: return "Fichier du détail non récupéré";
1751
+ case CultureIDs.Pt_PT: return "Ficheiro do detalhe não recuperado";
1752
+ default: return "File del dettaglio non recuperato";
1753
+ }
1754
+ }
1755
+ static get DetailFileToAddFromRowForm() {
1756
+ switch (this._cultureID) {
1757
+ case CultureIDs.De_DE: return "Der Dokumenttyp erfordert eine Datei: Fügen Sie sie über das Formular der Zeile hinzu.";
1758
+ case CultureIDs.En_US: return "The document type requires a file: add it from the row form.";
1759
+ case CultureIDs.Es_ES: return "El tipo de documento requiere un archivo: añádelo desde el formulario de la fila.";
1760
+ case CultureIDs.Fr_FR: return "Le type de document exige un fichier : ajoutez-le depuis le formulaire de la ligne.";
1761
+ case CultureIDs.Pt_PT: return "O tipo de documento exige um ficheiro: adicione-o a partir do formulário da linha.";
1762
+ default: return "Il tipo documento richiede un file: aggiungilo dal form della riga.";
1763
+ }
1764
+ }
1765
+ static get DetailMetadataNotRetrieved() {
1766
+ switch (this._cultureID) {
1767
+ case CultureIDs.De_DE: return "Die Metadaten des Details konnten nicht abgerufen werden.";
1768
+ case CultureIDs.En_US: return "Unable to retrieve the detail metadata.";
1769
+ case CultureIDs.Es_ES: return "No se han podido recuperar los metadatos del detalle.";
1770
+ case CultureIDs.Fr_FR: return "Impossible de récupérer les métadonnées du détail.";
1771
+ case CultureIDs.Pt_PT: return "Não foi possível recuperar os metadados do detalhe.";
1772
+ default: return "Non è stato possibile recuperare i metadati del dettaglio.";
1773
+ }
1774
+ }
1775
+ static get DetailNotOfSelectedDcmtType() {
1776
+ switch (this._cultureID) {
1777
+ case CultureIDs.De_DE: return "Das Detail gehört nicht zum ausgewählten Dokumenttyp.";
1778
+ case CultureIDs.En_US: return "The detail does not belong to the selected document type.";
1779
+ case CultureIDs.Es_ES: return "El detalle no pertenece al tipo de documento seleccionado.";
1780
+ case CultureIDs.Fr_FR: return "Le détail n'appartient pas au type de document sélectionné.";
1781
+ case CultureIDs.Pt_PT: return "O detalhe não pertence ao tipo de documento selecionado.";
1782
+ default: return "Il dettaglio non è del tipo documento selezionato.";
1783
+ }
1784
+ }
1655
1785
  static get Details() {
1656
1786
  switch (this._cultureID) {
1657
1787
  case CultureIDs.De_DE: return "Einzelheiten";
@@ -1662,6 +1792,16 @@ export class SDKUI_Localizator {
1662
1792
  default: return "Dettagli";
1663
1793
  }
1664
1794
  }
1795
+ static get DetailsToArchive() {
1796
+ switch (this._cultureID) {
1797
+ case CultureIDs.De_DE: return "Zu archivierende Details";
1798
+ case CultureIDs.En_US: return "Details to archive";
1799
+ case CultureIDs.Es_ES: return "Detalles a archivar";
1800
+ case CultureIDs.Fr_FR: return "Détails à archiver";
1801
+ case CultureIDs.Pt_PT: return "Detalhes a arquivar";
1802
+ default: return "Dettagli da archiviare";
1803
+ }
1804
+ }
1665
1805
  static get Delete() {
1666
1806
  switch (this._cultureID) {
1667
1807
  case CultureIDs.De_DE: return "Löschen";
@@ -1702,6 +1842,16 @@ export class SDKUI_Localizator {
1702
1842
  default: return "Eliminare il commento?";
1703
1843
  }
1704
1844
  }
1845
+ static get DeleteAllRowsToChangeDcmtType() {
1846
+ switch (this._cultureID) {
1847
+ case CultureIDs.De_DE: return "Löschen Sie alle Zeilen, um den Dokumenttyp zu ändern";
1848
+ case CultureIDs.En_US: return "Delete all rows to change the document type";
1849
+ case CultureIDs.Es_ES: return "Elimine todas las filas para poder cambiar el tipo de documento";
1850
+ case CultureIDs.Fr_FR: return "Supprimez toutes les lignes pour pouvoir changer le type de document";
1851
+ case CultureIDs.Pt_PT: return "Elimine todas as linhas para poder alterar o tipo de documento";
1852
+ default: return "Elimina tutte le righe per poter cambiare tipo documento";
1853
+ }
1854
+ }
1705
1855
  static get DeleteDeletedMessages() {
1706
1856
  switch (this._cultureID) {
1707
1857
  case CultureIDs.De_DE: return "Gelöschte Nachrichten löschen";
@@ -4008,6 +4158,36 @@ export class SDKUI_Localizator {
4008
4158
  default: return "Nascondi tutti";
4009
4159
  }
4010
4160
  }
4161
+ static get HideArchivedDetails() {
4162
+ switch (this._cultureID) {
4163
+ case CultureIDs.De_DE: return "Bereits archivierte Details ausblenden";
4164
+ case CultureIDs.En_US: return "Hide already archived details";
4165
+ case CultureIDs.Es_ES: return "Ocultar los detalles ya archivados";
4166
+ case CultureIDs.Fr_FR: return "Masquer les détails déjà archivés";
4167
+ case CultureIDs.Pt_PT: return "Ocultar os detalhes já arquivados";
4168
+ default: return "Nascondi i dettagli già archiviati";
4169
+ }
4170
+ }
4171
+ static get HideDcmtTypes() {
4172
+ switch (this._cultureID) {
4173
+ case CultureIDs.De_DE: return "Dokumenttypen ausblenden";
4174
+ case CultureIDs.En_US: return "Hide document types";
4175
+ case CultureIDs.Es_ES: return "Ocultar tipos de documento";
4176
+ case CultureIDs.Fr_FR: return "Masquer les types de document";
4177
+ case CultureIDs.Pt_PT: return "Ocultar tipos de documento";
4178
+ default: return "Nascondi tipi documento";
4179
+ }
4180
+ }
4181
+ static get HideDetailsToArchive() {
4182
+ switch (this._cultureID) {
4183
+ case CultureIDs.De_DE: return "Zu archivierende Details ausblenden";
4184
+ case CultureIDs.En_US: return "Hide details to archive";
4185
+ case CultureIDs.Es_ES: return "Ocultar los detalles a archivar";
4186
+ case CultureIDs.Fr_FR: return "Masquer les détails à archiver";
4187
+ case CultureIDs.Pt_PT: return "Ocultar os detalhes a arquivar";
4188
+ default: return "Nascondi i dettagli da archiviare";
4189
+ }
4190
+ }
4011
4191
  static get HideDetailsWithZeroDocs() {
4012
4192
  switch (this._cultureID) {
4013
4193
  case CultureIDs.De_DE: return "Details mit 0 Dokumenten ausblenden";
@@ -4058,6 +4238,16 @@ export class SDKUI_Localizator {
4058
4238
  default: return "Nascondi opzioni di formattazione";
4059
4239
  }
4060
4240
  }
4241
+ static get HideMasterInfo() {
4242
+ switch (this._cultureID) {
4243
+ case CultureIDs.De_DE: return "Master-Informationen ausblenden";
4244
+ case CultureIDs.En_US: return "Hide master information";
4245
+ case CultureIDs.Es_ES: return "Ocultar la información del maestro";
4246
+ case CultureIDs.Fr_FR: return "Masquer les informations du maître";
4247
+ case CultureIDs.Pt_PT: return "Ocultar as informações do mestre";
4248
+ default: return "Nascondi le informazioni del master";
4249
+ }
4250
+ }
4061
4251
  static get HideMetadata() {
4062
4252
  switch (this._cultureID) {
4063
4253
  case CultureIDs.De_DE: return "Metadaten ausblenden";
@@ -4388,6 +4578,16 @@ export class SDKUI_Localizator {
4388
4578
  default: return "Ultimi";
4389
4579
  }
4390
4580
  }
4581
+ static get LayoutRemoved() {
4582
+ switch (this._cultureID) {
4583
+ case CultureIDs.De_DE: return "Layout entfernt";
4584
+ case CultureIDs.En_US: return "Layout removed";
4585
+ case CultureIDs.Es_ES: return "Diseño eliminado";
4586
+ case CultureIDs.Fr_FR: return "Mise en page supprimée";
4587
+ case CultureIDs.Pt_PT: return "Layout removido";
4588
+ default: return "Layout rimosso";
4589
+ }
4590
+ }
4391
4591
  static get LexProt() {
4392
4592
  switch (this._cultureID) {
4393
4593
  case CultureIDs.De_DE: return "Lex-Schutz";
@@ -6522,6 +6722,16 @@ export class SDKUI_Localizator {
6522
6722
  default: return "Valorizza parametri query";
6523
6723
  }
6524
6724
  }
6725
+ static get QuickSearchSettings_DeleteConfirmFor1() {
6726
+ switch (this._cultureID) {
6727
+ case CultureIDs.De_DE: return "Schnellsuche-Konfiguration für '{{0}}' löschen?";
6728
+ case CultureIDs.En_US: return "Delete the quick search setup for '{{0}}'?";
6729
+ case CultureIDs.Es_ES: return "¿Eliminar la configuración de la búsqueda rápida de '{{0}}'?";
6730
+ case CultureIDs.Fr_FR: return "Supprimer la configuration de la recherche rapide de '{{0}}' ?";
6731
+ case CultureIDs.Pt_PT: return "Eliminar a configuração da pesquisa rápida de '{{0}}'?";
6732
+ default: return "Eliminare la configurazione della ricerca rapida di '{{0}}'?";
6733
+ }
6734
+ }
6525
6735
  static get ReadOnly() {
6526
6736
  switch (this._cultureID) {
6527
6737
  case CultureIDs.De_DE: return "Nur Lesen";
@@ -6623,6 +6833,26 @@ export class SDKUI_Localizator {
6623
6833
  default: return "Nessuna correlazione trovata";
6624
6834
  }
6625
6835
  }
6836
+ static get StopRelationsCalculation() {
6837
+ switch (this._cultureID) {
6838
+ case CultureIDs.De_DE: return "Berechnung unterbrechen und die bereits berechneten Korrelationen anzeigen";
6839
+ case CultureIDs.En_US: return "Stop the calculation and show the already calculated correlations";
6840
+ case CultureIDs.Es_ES: return "Interrumpir el cálculo y mostrar las correlaciones ya calculadas";
6841
+ case CultureIDs.Fr_FR: return "Interrompre le calcul et afficher les corrélations déjà calculées";
6842
+ case CultureIDs.Pt_PT: return "Interromper o cálculo e mostrar as correlações já calculadas";
6843
+ default: return "Interrompi il calcolo e mostra le correlazioni già calcolate";
6844
+ }
6845
+ }
6846
+ static get RelationsCalculationStopped() {
6847
+ switch (this._cultureID) {
6848
+ case CultureIDs.De_DE: return "Berechnung der Korrelationen unterbrochen: Es werden nur die bereits berechneten Korrelationen angezeigt.";
6849
+ case CultureIDs.En_US: return "Correlations calculation stopped: only the already calculated correlations are shown.";
6850
+ case CultureIDs.Es_ES: return "Cálculo de correlaciones interrumpido: solo se muestran las correlaciones ya calculadas.";
6851
+ case CultureIDs.Fr_FR: return "Calcul des corrélations interrompu : seules les corrélations déjà calculées sont affichées.";
6852
+ case CultureIDs.Pt_PT: return "Cálculo das correlações interrompido: são mostradas apenas as correlações já calculadas.";
6853
+ default: return "Calcolo delle correlazioni interrotto: vengono mostrate solo le correlazioni già calcolate.";
6854
+ }
6855
+ }
6626
6856
  static get RelatedDcmtsNotFound() {
6627
6857
  switch (this._cultureID) {
6628
6858
  case CultureIDs.De_DE: return "Für das ausgewählte Dokument wurden keine zugehörigen Dokumente gefunden.";
@@ -6663,6 +6893,16 @@ export class SDKUI_Localizator {
6663
6893
  default: return "Rimuovi filtro contestuale";
6664
6894
  }
6665
6895
  }
6896
+ static get RemoveDetailFromSummary_Confirm() {
6897
+ switch (this._cultureID) {
6898
+ case CultureIDs.De_DE: return "Detail entfernen? Es wird nicht archiviert.";
6899
+ case CultureIDs.En_US: return "Remove this detail? It won't be archived.";
6900
+ case CultureIDs.Es_ES: return "¿Eliminar este detalle? No se archivará.";
6901
+ case CultureIDs.Fr_FR: return "Supprimer ce détail ? Il ne sera pas archivé.";
6902
+ case CultureIDs.Pt_PT: return "Remover este detalhe? Não será arquivado.";
6903
+ default: return "Rimuovere questo dettaglio? Non verrà archiviato.";
6904
+ }
6905
+ }
6666
6906
  static get RemoveFromCache() {
6667
6907
  switch (this._cultureID) {
6668
6908
  case CultureIDs.De_DE: return "Element aus Cache entfernen";
@@ -6719,6 +6959,16 @@ export class SDKUI_Localizator {
6719
6959
  default: return "Rimuovi Layout";
6720
6960
  }
6721
6961
  }
6962
+ static get RemoveLayout_Confirm() {
6963
+ switch (this._cultureID) {
6964
+ case CultureIDs.De_DE: return "Möchten Sie das Layout entfernen?";
6965
+ case CultureIDs.En_US: return "Do you want to remove the layout?";
6966
+ case CultureIDs.Es_ES: return "¿Desea eliminar el diseño?";
6967
+ case CultureIDs.Fr_FR: return "Voulez-vous supprimer la mise en page ?";
6968
+ case CultureIDs.Pt_PT: return "Deseja remover o layout?";
6969
+ default: return "Vuoi rimuovere il layout?";
6970
+ }
6971
+ }
6722
6972
  static get RemovingFromList() {
6723
6973
  switch (this._cultureID) {
6724
6974
  case CultureIDs.De_DE: return "Wird aus der Liste entfernt";
@@ -7149,6 +7399,16 @@ export class SDKUI_Localizator {
7149
7399
  default: return "Cerca";
7150
7400
  }
7151
7401
  }
7402
+ static get SearchAndAppend() {
7403
+ switch (this._cultureID) {
7404
+ case CultureIDs.De_DE: return "Suchen und anhängen";
7405
+ case CultureIDs.En_US: return "Search and append";
7406
+ case CultureIDs.Es_ES: return "Buscar y añadir";
7407
+ case CultureIDs.Fr_FR: return "Rechercher et ajouter";
7408
+ case CultureIDs.Pt_PT: return "Pesquisar e acrescentar";
7409
+ default: return "Ricerca e accoda";
7410
+ }
7411
+ }
7152
7412
  static get Search_Advanced() {
7153
7413
  switch (this._cultureID) {
7154
7414
  case CultureIDs.De_DE: return "Erweiterte Suche";
@@ -7259,6 +7519,16 @@ export class SDKUI_Localizator {
7259
7519
  default: return "Seleziona un documento per visualizzare i dettagli";
7260
7520
  }
7261
7521
  }
7522
+ static get SelectDcmtTypeForDetailArchiving() {
7523
+ switch (this._cultureID) {
7524
+ case CultureIDs.De_DE: return "Dokumenttyp auswählen, für den die Details archiviert werden sollen";
7525
+ case CultureIDs.En_US: return "Select the document type for which to archive the details";
7526
+ case CultureIDs.Es_ES: return "Seleccionar el tipo de documento sobre el cual archivar los detalles";
7527
+ case CultureIDs.Fr_FR: return "Sélectionner le type de document sur lequel archiver les détails";
7528
+ case CultureIDs.Pt_PT: return "Selecionar o tipo de documento no qual arquivar os detalhes";
7529
+ default: return "Selezionare il tipo documento sul quale effettuare l'archiviazione dei dettagli";
7530
+ }
7531
+ }
7262
7532
  static get SelectArchiveToStart() {
7263
7533
  switch (this._cultureID) {
7264
7534
  case CultureIDs.De_DE: return "Klicken Sie auf Archivieren, um zu beginnen.";
@@ -7590,6 +7860,16 @@ export class SDKUI_Localizator {
7590
7860
  default: return "Mostra tutti";
7591
7861
  }
7592
7862
  }
7863
+ static get ShowArchivedDetails() {
7864
+ switch (this._cultureID) {
7865
+ case CultureIDs.De_DE: return "Bereits archivierte Details anzeigen";
7866
+ case CultureIDs.En_US: return "Show already archived details";
7867
+ case CultureIDs.Es_ES: return "Mostrar los detalles ya archivados";
7868
+ case CultureIDs.Fr_FR: return "Afficher les détails déjà archivés";
7869
+ case CultureIDs.Pt_PT: return "Mostrar os detalhes já arquivados";
7870
+ default: return "Mostra i dettagli già archiviati";
7871
+ }
7872
+ }
7593
7873
  static get ShowColumnSelection() {
7594
7874
  switch (this._cultureID) {
7595
7875
  case CultureIDs.De_DE: return "Spaltenauswahl anzeigen";
@@ -7600,6 +7880,16 @@ export class SDKUI_Localizator {
7600
7880
  default: return "Mostra selezione colonne";
7601
7881
  }
7602
7882
  }
7883
+ static get ShowDcmtTypes() {
7884
+ switch (this._cultureID) {
7885
+ case CultureIDs.De_DE: return "Dokumenttypen anzeigen";
7886
+ case CultureIDs.En_US: return "Show document types";
7887
+ case CultureIDs.Es_ES: return "Mostrar tipos de documento";
7888
+ case CultureIDs.Fr_FR: return "Afficher les types de document";
7889
+ case CultureIDs.Pt_PT: return "Mostrar tipos de documento";
7890
+ default: return "Mostra tipi documento";
7891
+ }
7892
+ }
7603
7893
  static get ShowFloatingBar() {
7604
7894
  switch (this._cultureID) {
7605
7895
  case CultureIDs.De_DE: return "Floating-Leiste anzeigen";
@@ -7640,6 +7930,16 @@ export class SDKUI_Localizator {
7640
7930
  default: return "Mostra dettagli";
7641
7931
  }
7642
7932
  }
7933
+ static get ShowDetailsToArchive() {
7934
+ switch (this._cultureID) {
7935
+ case CultureIDs.De_DE: return "Zu archivierende Details anzeigen";
7936
+ case CultureIDs.En_US: return "Show details to archive";
7937
+ case CultureIDs.Es_ES: return "Mostrar los detalles a archivar";
7938
+ case CultureIDs.Fr_FR: return "Afficher les détails à archiver";
7939
+ case CultureIDs.Pt_PT: return "Mostrar os detalhes a arquivar";
7940
+ default: return "Mostra i dettagli da archiviare";
7941
+ }
7942
+ }
7643
7943
  static get ShowDetailsWithZeroDocs() {
7644
7944
  switch (this._cultureID) {
7645
7945
  case CultureIDs.De_DE: return "Details mit 0 Dokumenten anzeigen";
@@ -7690,6 +7990,26 @@ export class SDKUI_Localizator {
7690
7990
  default: return "Mostra il pannello sinistro";
7691
7991
  }
7692
7992
  }
7993
+ static get ShowMasterInfo() {
7994
+ switch (this._cultureID) {
7995
+ case CultureIDs.De_DE: return "Master-Informationen anzeigen";
7996
+ case CultureIDs.En_US: return "Show master information";
7997
+ case CultureIDs.Es_ES: return "Mostrar la información del maestro";
7998
+ case CultureIDs.Fr_FR: return "Afficher les informations du maître";
7999
+ case CultureIDs.Pt_PT: return "Mostrar as informações do mestre";
8000
+ default: return "Mostra le informazioni del master";
8001
+ }
8002
+ }
8003
+ static get ShowPartialResults() {
8004
+ switch (this._cultureID) {
8005
+ case CultureIDs.De_DE: return "Teilergebnisse anzeigen";
8006
+ case CultureIDs.En_US: return "Show partial results";
8007
+ case CultureIDs.Es_ES: return "Mostrar resultados parciales";
8008
+ case CultureIDs.Fr_FR: return "Afficher les résultats partiels";
8009
+ case CultureIDs.Pt_PT: return "Mostrar resultados parciais";
8010
+ default: return "Mostra risultati parziali";
8011
+ }
8012
+ }
7693
8013
  static get ShowSearch() {
7694
8014
  switch (this._cultureID) {
7695
8015
  case CultureIDs.De_DE: return "Suche anzeigen";
@@ -7950,6 +8270,16 @@ export class SDKUI_Localizator {
7950
8270
  default: return "Stato e risposta";
7951
8271
  }
7952
8272
  }
8273
+ static get StopOnFirstError() {
8274
+ switch (this._cultureID) {
8275
+ case CultureIDs.De_DE: return "Beim ersten Fehler abbrechen";
8276
+ case CultureIDs.En_US: return "Stop at the first error";
8277
+ case CultureIDs.Es_ES: return "Detener en el primer error";
8278
+ case CultureIDs.Fr_FR: return "Arrêter à la première erreur";
8279
+ case CultureIDs.Pt_PT: return "Parar no primeiro erro";
8280
+ default: return "Interrompi al primo errore";
8281
+ }
8282
+ }
7953
8283
  static get Subject() {
7954
8284
  switch (this._cultureID) {
7955
8285
  case CultureIDs.De_DE: return "Betreff";
@@ -9452,6 +9782,16 @@ export class SDKUI_Localizator {
9452
9782
  default: return "Non hai i permessi per archiviare documenti master di questo tipo.";
9453
9783
  }
9454
9784
  }
9785
+ static get YouDoNotHavePermissionsToRetrieveTheFile() {
9786
+ switch (this._cultureID) {
9787
+ case CultureIDs.De_DE: return "Sie haben keine Berechtigung, die Datei abzurufen.";
9788
+ case CultureIDs.En_US: return "You do not have permissions to retrieve the file.";
9789
+ case CultureIDs.Es_ES: return "No tienes permisos para recuperar el archivo.";
9790
+ case CultureIDs.Fr_FR: return "Vous n'avez pas les permissions pour récupérer le fichier.";
9791
+ case CultureIDs.Pt_PT: return "Você não tem permissões para recuperar o ficheiro.";
9792
+ default: return "Non hai i permessi per recuperare il file.";
9793
+ }
9794
+ }
9455
9795
  static get Yes() {
9456
9796
  switch (this._cultureID) {
9457
9797
  case CultureIDs.De_DE: return "Ja";
@@ -271,6 +271,7 @@ export declare function IconWizard4(props: React.SVGProps<SVGSVGElement>): impor
271
271
  export declare function IconNew(props: React.SVGProps<SVGSVGElement>): import("react/jsx-runtime").JSX.Element;
272
272
  export declare function IconFileOpenOutline(props: Readonly<React.SVGProps<SVGSVGElement>>): import("react/jsx-runtime").JSX.Element;
273
273
  export declare function IconArchiveDetail(props: React.SVGProps<SVGSVGElement>): import("react/jsx-runtime").JSX.Element;
274
+ export declare function IconArchiveMultipleDetailDocuments(props: React.SVGProps<SVGSVGElement>): import("react/jsx-runtime").JSX.Element;
274
275
  export declare function IconArchiveMaster(props: React.SVGProps<SVGSVGElement>): import("react/jsx-runtime").JSX.Element;
275
276
  export declare function IconPair(props: React.SVGProps<SVGSVGElement>): import("react/jsx-runtime").JSX.Element;
276
277
  export declare function IconUnpair(props: React.SVGProps<SVGSVGElement>): import("react/jsx-runtime").JSX.Element;
@@ -673,6 +673,9 @@ export function IconFileOpenOutline(props) {
673
673
  export function IconArchiveDetail(props) {
674
674
  return (_jsxs("svg", { fontSize: props.fontSize ?? FONTSIZE, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", width: "1em", height: "1em", ...props, children: [" ", _jsx("path", { fill: "currentColor", d: "m20.54 5.23l-1.39-1.68C18.88 3.21 18.47 3 18 3H6c-.47 0-.88.21-1.16.55L3.46 5.23C3.17 5.57 3 6.02 3 6.5V19c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6.5c0-.48-.17-.93-.46-1.27M12 17.5L6.5 12H10v-2h4v2h3.5zM5.12 5l.81-1h12l.94 1z" }), " "] }));
675
675
  }
676
+ export function IconArchiveMultipleDetailDocuments(props) {
677
+ return (_jsxs("svg", { fontSize: props.fontSize ?? FONTSIZE, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 48 48", width: "1em", height: "1em", ...props, children: [_jsx("path", { fill: "currentColor", d: "M40,35v5H8v-5H4v5c0,2.2,1.8,4,4,4h32c2.2,0,4-1.8,4-4v-5H40z" }), _jsxs("g", { fill: "currentColor", children: [_jsx("polygon", { points: "24,23.4 17,15 31,15" }), _jsx("rect", { x: "22", y: "4", width: "4", height: "14" }), _jsx("path", { d: "M31.5,26.9L30.8,28l3.5,1.9l0.6-1.2c1.6-3,2.6-4.7,3.5-5.2C39.3,23,41,23,44,23v-4C36.3,19,35.6,19.4,31.5,26.9z" }), _jsx("polygon", { points: "38.4,31 29.4,35 28,25" }), _jsx("path", { d: "M16.5,26.9l0.6,1.2L13.6,30L13,28.8c-1.6-3-2.6-4.7-3.5-5.2C8.7,23,7,23,4,23v-4C11.7,19,12.4,19.4,16.5,26.9z" }), _jsx("polygon", { points: "20,25 18.6,35 9.6,31" })] })] }));
678
+ }
676
679
  export function IconArchiveMaster(props) {
677
680
  return (_jsxs("svg", { fontSize: props.fontSize ?? FONTSIZE, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", width: "1em", height: "1em", ...props, children: [" ", _jsx("path", { fill: "currentColor", d: "m20.55 5.22l-1.39-1.68A1.51 1.51 0 0 0 18 3H6c-.47 0-.88.21-1.15.55L3.46 5.22C3.17 5.57 3 6.01 3 6.5V19a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V6.5c0-.49-.17-.93-.45-1.28M12 9.5l5.5 5.5H14v2h-4v-2H6.5zM5.12 5l.82-1h12l.93 1z" }), " "] }));
678
681
  }
@@ -0,0 +1,28 @@
1
+ import { MetadataFormats } from '@topconsultnpm/sdk-ts';
2
+ /** Testo mostrato in una colonna per una riga: è quello su cui va cercato ciò che l'utente digita */
3
+ export type SearchTextGetter = (rowData: any) => string;
4
+ /** Testo con cui una data viene mostrata nella griglia: è quello che l'utente vede e quindi quello che cerca */
5
+ export declare const getDateDisplayText: (value: any, format: MetadataFormats | undefined, formatCulture: string | undefined | null) => string;
6
+ /** Testo con cui un numero viene mostrato nella griglia (separatore delle migliaia, valuta, decimali) */
7
+ export declare const getNumberDisplayText: (value: any, format: MetadataFormats | undefined, formatCulture: string) => string;
8
+ /**
9
+ * Dirotta la ricerca della griglia sul testo mostrato, per le colonne indicate (chiave: il `dataField`).
10
+ *
11
+ * La ricerca di DevExtreme lavora sul valore archiviato, quindi non trova nulla dove il testo mostrato è
12
+ * diverso:
13
+ * - **date**, che nei dati sono stringhe ISO: DevExtreme prova a interpretare il testo digitato con il
14
+ * formato della colonna, non riesce (il formato è un formatter personalizzato, non un pattern) e scarta
15
+ * la colonna dalla ricerca — cercando `29/01/2023` non trova nulla;
16
+ * - **numeri formattati**, per lo stesso motivo (separatore delle migliaia, simbolo di valuta);
17
+ * - **liste dati e utenti**, dove viene confrontata la chiave archiviata invece della descrizione
18
+ * visualizzata — cercando `FATTURA` non trova nulla, cercando `TD01` sì.
19
+ *
20
+ * Da passare a `customizeColumns` della griglia. Va fatto lì perché solo lì è disponibile la
21
+ * `calculateFilterExpression` predefinita di DevExtreme, che resta in uso per il filtro di intestazione e
22
+ * per il generatore di filtri: quelli funzionano già correttamente e vanno lasciati intatti.
23
+ *
24
+ * @example
25
+ * const searchTextGetters = useMemo(() => new Map([['TM_1_2', (row) => getDateDisplayText(row?.TM_1_2, format, culture)]]), [...]);
26
+ * const customizeColumns = useMemo(() => customizeSearchByDisplayText(searchTextGetters), [searchTextGetters]);
27
+ */
28
+ export declare const customizeSearchByDisplayText: (searchTextGetters: Map<string, SearchTextGetter>) => (columns: Array<any>) => void;
@@ -0,0 +1,51 @@
1
+ import { formatDateTimeByMetadataFormat, formatNumberByMetadataFormat } from './TMUtils';
2
+ /** Testo con cui una data viene mostrata nella griglia: è quello che l'utente vede e quindi quello che cerca */
3
+ export const getDateDisplayText = (value, format, formatCulture) => {
4
+ if (value === undefined || value === null || value === '')
5
+ return '';
6
+ const date = value instanceof Date ? value : new Date(value);
7
+ return Number.isNaN(date.getTime()) ? '' : formatDateTimeByMetadataFormat(date, format, formatCulture);
8
+ };
9
+ /** Testo con cui un numero viene mostrato nella griglia (separatore delle migliaia, valuta, decimali) */
10
+ export const getNumberDisplayText = (value, format, formatCulture) => {
11
+ if (value === undefined || value === null || value === '')
12
+ return '';
13
+ return formatNumberByMetadataFormat(value, format, formatCulture);
14
+ };
15
+ /**
16
+ * Dirotta la ricerca della griglia sul testo mostrato, per le colonne indicate (chiave: il `dataField`).
17
+ *
18
+ * La ricerca di DevExtreme lavora sul valore archiviato, quindi non trova nulla dove il testo mostrato è
19
+ * diverso:
20
+ * - **date**, che nei dati sono stringhe ISO: DevExtreme prova a interpretare il testo digitato con il
21
+ * formato della colonna, non riesce (il formato è un formatter personalizzato, non un pattern) e scarta
22
+ * la colonna dalla ricerca — cercando `29/01/2023` non trova nulla;
23
+ * - **numeri formattati**, per lo stesso motivo (separatore delle migliaia, simbolo di valuta);
24
+ * - **liste dati e utenti**, dove viene confrontata la chiave archiviata invece della descrizione
25
+ * visualizzata — cercando `FATTURA` non trova nulla, cercando `TD01` sì.
26
+ *
27
+ * Da passare a `customizeColumns` della griglia. Va fatto lì perché solo lì è disponibile la
28
+ * `calculateFilterExpression` predefinita di DevExtreme, che resta in uso per il filtro di intestazione e
29
+ * per il generatore di filtri: quelli funzionano già correttamente e vanno lasciati intatti.
30
+ *
31
+ * @example
32
+ * const searchTextGetters = useMemo(() => new Map([['TM_1_2', (row) => getDateDisplayText(row?.TM_1_2, format, culture)]]), [...]);
33
+ * const customizeColumns = useMemo(() => customizeSearchByDisplayText(searchTextGetters), [searchTextGetters]);
34
+ */
35
+ export const customizeSearchByDisplayText = (searchTextGetters) => (columns) => {
36
+ columns.forEach((column) => {
37
+ const getSearchText = column?.dataField ? searchTextGetters.get(column.dataField) : undefined;
38
+ // customizeColumns viene richiamata a ogni aggiornamento delle colonne: senza il marcatore i wrapper si anniderebbero
39
+ if (!getSearchText || column.tmSearchByDisplayText)
40
+ return;
41
+ const defaultCalculateFilterExpression = column.calculateFilterExpression;
42
+ // Senza questo DevExtreme prova a convertire il testo digitato nel tipo della colonna e, non riuscendo, la scarta
43
+ column.parseValue = (text) => text;
44
+ column.calculateFilterExpression = function (filterValue, selectedFilterOperation, target) {
45
+ if (target === 'search')
46
+ return [getSearchText, 'contains', filterValue];
47
+ return defaultCalculateFilterExpression?.apply(this, arguments);
48
+ };
49
+ column.tmSearchByDisplayText = true;
50
+ });
51
+ };
@@ -1,8 +1,28 @@
1
+ import { DcmtTypeDescriptor, MetadataDataTypes, MetadataDescriptor, MetadataFormats, RelationDescriptor } from "@topconsultnpm/sdk-ts";
1
2
  import { MetadataValueDescriptorEx } from "../ts";
3
+ /** Metadati utente (esclusi quelli di sistema) del tipo documento, in ordine di visualizzazione */
4
+ export declare const getUserMetadataSorted: (dtd: DcmtTypeDescriptor | undefined) => Array<MetadataDescriptor>;
5
+ /** Formatta un valore scalare (non lista dati): date e numeri rispettano Format e FormatCulture del metadato */
6
+ export declare const formatScalarValue: (value: any, dataType: MetadataDataTypes | undefined, format: MetadataFormats | undefined, formatCulture: string | undefined) => string;
2
7
  /** Check if dcmtType (mTID) has configured Detail or Many-to-Many relations */
3
8
  export declare const hasDetailRelations: (mTID: number | undefined) => Promise<boolean>;
4
9
  /** Check if dcmtType (mTID) has configured Master or Many-to-Many relations */
5
10
  export declare const hasMasterRelations: (mTID: number | undefined) => Promise<boolean>;
11
+ export declare const getDcmtMetadataByMid: (dcmt: {
12
+ TID?: number;
13
+ DID?: number;
14
+ } | undefined) => Promise<Map<number, any>>;
15
+ export declare const mapAssociationsFromMetadata: (relation: RelationDescriptor, type: "detail" | "master", metadataByMid: Map<number, any>) => Array<{
16
+ mid: number;
17
+ value: string;
18
+ }>;
19
+ export declare const mapRelationAssociationsToMids: (relation: RelationDescriptor, type: "detail" | "master", dcmt: {
20
+ TID?: number;
21
+ DID?: number;
22
+ } | undefined) => Promise<Array<{
23
+ mid: number;
24
+ value: string;
25
+ }>>;
6
26
  export declare const isXMLFileExt: (fileExt: string | undefined) => boolean;
7
27
  export declare const getButtonAttributes: (args: string | undefined, formData: MetadataValueDescriptorEx[] | undefined, selectedItems: Array<any> | undefined) => Record<string, any> | undefined;
8
28
  export declare const getSelectedItem: (args: string | undefined, formData: MetadataValueDescriptorEx[] | undefined, item: any) => Record<string, any> | undefined;