@topconsultnpm/sdkui-react 6.17.0-test9

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 (698) hide show
  1. package/lib/assets/IconsS4t/add.svg +12 -0
  2. package/lib/assets/IconsS4t/aggiorna.svg +18 -0
  3. package/lib/assets/IconsS4t/bookmark.svg +42 -0
  4. package/lib/assets/IconsS4t/cancella.svg +15 -0
  5. package/lib/assets/IconsS4t/check-box.svg +19 -0
  6. package/lib/assets/IconsS4t/down-arrow-signBook.svg +40 -0
  7. package/lib/assets/IconsS4t/down.svg +28 -0
  8. package/lib/assets/IconsS4t/edit-file.svg +19 -0
  9. package/lib/assets/IconsS4t/edita.svg +32 -0
  10. package/lib/assets/IconsS4t/firma.svg +19 -0
  11. package/lib/assets/IconsS4t/icona_download.svg +16 -0
  12. package/lib/assets/IconsS4t/info.svg +51 -0
  13. package/lib/assets/IconsS4t/left.svg +20 -0
  14. package/lib/assets/IconsS4t/line.svg +40 -0
  15. package/lib/assets/IconsS4t/more.svg +19 -0
  16. package/lib/assets/IconsS4t/new-signature.svg +1 -0
  17. package/lib/assets/IconsS4t/plus.svg +23 -0
  18. package/lib/assets/IconsS4t/printer.svg +49 -0
  19. package/lib/assets/IconsS4t/radio-on-button.svg +25 -0
  20. package/lib/assets/IconsS4t/rectangle.svg +41 -0
  21. package/lib/assets/IconsS4t/redo.svg +19 -0
  22. package/lib/assets/IconsS4t/right-arrow-signBook-finish.svg +40 -0
  23. package/lib/assets/IconsS4t/right-arrow-signBook.svg +40 -0
  24. package/lib/assets/IconsS4t/right.svg +22 -0
  25. package/lib/assets/IconsS4t/searchbar.svg +21 -0
  26. package/lib/assets/IconsS4t/text-box.svg +36 -0
  27. package/lib/assets/IconsS4t/tick.svg +8 -0
  28. package/lib/assets/IconsS4t/trash-white.svg +11 -0
  29. package/lib/assets/IconsS4t/trash.svg +1 -0
  30. package/lib/assets/IconsS4t/undo.svg +19 -0
  31. package/lib/assets/IconsS4t/up.svg +32 -0
  32. package/lib/assets/IconsS4t/video-streaming.svg +2 -0
  33. package/lib/assets/IconsS4t/zoom-in.svg +58 -0
  34. package/lib/assets/IconsS4t/zoom-out.svg +56 -0
  35. package/lib/assets/ImageLibrary/arrow_001.png +0 -0
  36. package/lib/assets/ImageLibrary/arrow_002.png +0 -0
  37. package/lib/assets/ImageLibrary/arrow_003.png +0 -0
  38. package/lib/assets/ImageLibrary/arrow_004.png +0 -0
  39. package/lib/assets/ImageLibrary/arrow_005.png +0 -0
  40. package/lib/assets/ImageLibrary/arrow_006.png +0 -0
  41. package/lib/assets/ImageLibrary/arrow_007.png +0 -0
  42. package/lib/assets/ImageLibrary/arrow_008.png +0 -0
  43. package/lib/assets/ImageLibrary/arrow_009.png +0 -0
  44. package/lib/assets/ImageLibrary/arrow_010.png +0 -0
  45. package/lib/assets/ImageLibrary/arrow_011.png +0 -0
  46. package/lib/assets/ImageLibrary/arrow_012.png +0 -0
  47. package/lib/assets/ImageLibrary/book_001.png +0 -0
  48. package/lib/assets/ImageLibrary/book_002.png +0 -0
  49. package/lib/assets/ImageLibrary/book_003.png +0 -0
  50. package/lib/assets/ImageLibrary/book_004.png +0 -0
  51. package/lib/assets/ImageLibrary/book_005.png +0 -0
  52. package/lib/assets/ImageLibrary/book_006.png +0 -0
  53. package/lib/assets/ImageLibrary/book_007.png +0 -0
  54. package/lib/assets/ImageLibrary/clock_001.png +0 -0
  55. package/lib/assets/ImageLibrary/clock_002.png +0 -0
  56. package/lib/assets/ImageLibrary/clock_003.png +0 -0
  57. package/lib/assets/ImageLibrary/cube_001.png +0 -0
  58. package/lib/assets/ImageLibrary/cube_002.png +0 -0
  59. package/lib/assets/ImageLibrary/cube_003.png +0 -0
  60. package/lib/assets/ImageLibrary/dcmt_001.png +0 -0
  61. package/lib/assets/ImageLibrary/dcmt_002.png +0 -0
  62. package/lib/assets/ImageLibrary/dcmt_003.png +0 -0
  63. package/lib/assets/ImageLibrary/dcmt_004.png +0 -0
  64. package/lib/assets/ImageLibrary/dcmt_005.png +0 -0
  65. package/lib/assets/ImageLibrary/dcmt_006.png +0 -0
  66. package/lib/assets/ImageLibrary/dcmt_007.png +0 -0
  67. package/lib/assets/ImageLibrary/dcmt_008.png +0 -0
  68. package/lib/assets/ImageLibrary/emoticon_001.png +0 -0
  69. package/lib/assets/ImageLibrary/emoticon_002.png +0 -0
  70. package/lib/assets/ImageLibrary/emoticon_003.png +0 -0
  71. package/lib/assets/ImageLibrary/emoticon_004.png +0 -0
  72. package/lib/assets/ImageLibrary/fld_001.png +0 -0
  73. package/lib/assets/ImageLibrary/fld_002.png +0 -0
  74. package/lib/assets/ImageLibrary/fld_003.png +0 -0
  75. package/lib/assets/ImageLibrary/fld_004.png +0 -0
  76. package/lib/assets/ImageLibrary/fld_005.png +0 -0
  77. package/lib/assets/ImageLibrary/fld_006.png +0 -0
  78. package/lib/assets/ImageLibrary/fld_007.png +0 -0
  79. package/lib/assets/ImageLibrary/fld_008.png +0 -0
  80. package/lib/assets/ImageLibrary/fld_009.png +0 -0
  81. package/lib/assets/ImageLibrary/fld_010.png +0 -0
  82. package/lib/assets/ImageLibrary/fld_011.png +0 -0
  83. package/lib/assets/ImageLibrary/fld_012.png +0 -0
  84. package/lib/assets/ImageLibrary/fld_013.png +0 -0
  85. package/lib/assets/ImageLibrary/fld_014.png +0 -0
  86. package/lib/assets/ImageLibrary/fld_015.png +0 -0
  87. package/lib/assets/ImageLibrary/fld_016.png +0 -0
  88. package/lib/assets/ImageLibrary/fld_017.png +0 -0
  89. package/lib/assets/ImageLibrary/fld_018.png +0 -0
  90. package/lib/assets/ImageLibrary/fld_019.png +0 -0
  91. package/lib/assets/ImageLibrary/fld_020.png +0 -0
  92. package/lib/assets/ImageLibrary/fld_021.png +0 -0
  93. package/lib/assets/ImageLibrary/fld_022.png +0 -0
  94. package/lib/assets/ImageLibrary/fld_023.png +0 -0
  95. package/lib/assets/ImageLibrary/fld_024.png +0 -0
  96. package/lib/assets/ImageLibrary/fld_025.png +0 -0
  97. package/lib/assets/ImageLibrary/fld_026.png +0 -0
  98. package/lib/assets/ImageLibrary/fld_027.png +0 -0
  99. package/lib/assets/ImageLibrary/fld_028.png +0 -0
  100. package/lib/assets/ImageLibrary/fld_029.png +0 -0
  101. package/lib/assets/ImageLibrary/fld_030.png +0 -0
  102. package/lib/assets/ImageLibrary/fld_031.png +0 -0
  103. package/lib/assets/ImageLibrary/fld_032.png +0 -0
  104. package/lib/assets/ImageLibrary/fld_033.png +0 -0
  105. package/lib/assets/ImageLibrary/gen_001.png +0 -0
  106. package/lib/assets/ImageLibrary/gen_002.png +0 -0
  107. package/lib/assets/ImageLibrary/gen_003.png +0 -0
  108. package/lib/assets/ImageLibrary/gen_004.png +0 -0
  109. package/lib/assets/ImageLibrary/gen_005.png +0 -0
  110. package/lib/assets/ImageLibrary/gen_006.png +0 -0
  111. package/lib/assets/ImageLibrary/gen_007.png +0 -0
  112. package/lib/assets/ImageLibrary/gen_008.png +0 -0
  113. package/lib/assets/ImageLibrary/gen_009.png +0 -0
  114. package/lib/assets/ImageLibrary/gen_010.png +0 -0
  115. package/lib/assets/ImageLibrary/gen_011.png +0 -0
  116. package/lib/assets/ImageLibrary/gen_012.png +0 -0
  117. package/lib/assets/ImageLibrary/gen_013.png +0 -0
  118. package/lib/assets/ImageLibrary/gen_014.png +0 -0
  119. package/lib/assets/ImageLibrary/gen_015.png +0 -0
  120. package/lib/assets/ImageLibrary/gen_016.png +0 -0
  121. package/lib/assets/ImageLibrary/gen_017.png +0 -0
  122. package/lib/assets/ImageLibrary/gen_018.png +0 -0
  123. package/lib/assets/ImageLibrary/gen_019.png +0 -0
  124. package/lib/assets/ImageLibrary/gen_020.png +0 -0
  125. package/lib/assets/ImageLibrary/gen_021.png +0 -0
  126. package/lib/assets/ImageLibrary/gen_022.png +0 -0
  127. package/lib/assets/ImageLibrary/gen_023.png +0 -0
  128. package/lib/assets/ImageLibrary/gen_024.png +0 -0
  129. package/lib/assets/ImageLibrary/gen_025.png +0 -0
  130. package/lib/assets/ImageLibrary/gen_026.png +0 -0
  131. package/lib/assets/ImageLibrary/gen_027.png +0 -0
  132. package/lib/assets/ImageLibrary/gen_028.png +0 -0
  133. package/lib/assets/ImageLibrary/gen_029.png +0 -0
  134. package/lib/assets/ImageLibrary/gen_030.png +0 -0
  135. package/lib/assets/ImageLibrary/gen_031.png +0 -0
  136. package/lib/assets/ImageLibrary/gen_032.png +0 -0
  137. package/lib/assets/ImageLibrary/gen_033.png +0 -0
  138. package/lib/assets/ImageLibrary/gen_034.png +0 -0
  139. package/lib/assets/ImageLibrary/gen_035.png +0 -0
  140. package/lib/assets/ImageLibrary/gen_036.png +0 -0
  141. package/lib/assets/ImageLibrary/gen_037.png +0 -0
  142. package/lib/assets/ImageLibrary/gen_038.png +0 -0
  143. package/lib/assets/ImageLibrary/gen_039.png +0 -0
  144. package/lib/assets/ImageLibrary/gen_040.png +0 -0
  145. package/lib/assets/ImageLibrary/gen_041.png +0 -0
  146. package/lib/assets/ImageLibrary/gen_042.png +0 -0
  147. package/lib/assets/ImageLibrary/gen_043.png +0 -0
  148. package/lib/assets/ImageLibrary/gen_044.png +0 -0
  149. package/lib/assets/ImageLibrary/gen_045.png +0 -0
  150. package/lib/assets/ImageLibrary/gen_046.png +0 -0
  151. package/lib/assets/ImageLibrary/gen_047.png +0 -0
  152. package/lib/assets/ImageLibrary/gen_048.png +0 -0
  153. package/lib/assets/ImageLibrary/gen_049.png +0 -0
  154. package/lib/assets/ImageLibrary/gen_050.png +0 -0
  155. package/lib/assets/ImageLibrary/gen_051.png +0 -0
  156. package/lib/assets/ImageLibrary/gen_052.png +0 -0
  157. package/lib/assets/ImageLibrary/hand_001.png +0 -0
  158. package/lib/assets/ImageLibrary/hand_002.png +0 -0
  159. package/lib/assets/ImageLibrary/hand_003.png +0 -0
  160. package/lib/assets/ImageLibrary/hand_004.png +0 -0
  161. package/lib/assets/ImageLibrary/hand_005.png +0 -0
  162. package/lib/assets/ImageLibrary/hand_006.png +0 -0
  163. package/lib/assets/ImageLibrary/law_001.png +0 -0
  164. package/lib/assets/ImageLibrary/law_002.png +0 -0
  165. package/lib/assets/ImageLibrary/law_003.png +0 -0
  166. package/lib/assets/ImageLibrary/lock_001.png +0 -0
  167. package/lib/assets/ImageLibrary/lock_002.png +0 -0
  168. package/lib/assets/ImageLibrary/lock_003.png +0 -0
  169. package/lib/assets/ImageLibrary/mail_001.png +0 -0
  170. package/lib/assets/ImageLibrary/mail_002.png +0 -0
  171. package/lib/assets/ImageLibrary/mail_003.png +0 -0
  172. package/lib/assets/ImageLibrary/mail_004.png +0 -0
  173. package/lib/assets/ImageLibrary/mail_005.png +0 -0
  174. package/lib/assets/ImageLibrary/mail_006.png +0 -0
  175. package/lib/assets/ImageLibrary/mail_007.png +0 -0
  176. package/lib/assets/ImageLibrary/mail_008.png +0 -0
  177. package/lib/assets/ImageLibrary/mail_009.png +0 -0
  178. package/lib/assets/ImageLibrary/mail_010.png +0 -0
  179. package/lib/assets/ImageLibrary/mail_011.png +0 -0
  180. package/lib/assets/ImageLibrary/mail_012.png +0 -0
  181. package/lib/assets/ImageLibrary/mail_013.png +0 -0
  182. package/lib/assets/ImageLibrary/mail_014.png +0 -0
  183. package/lib/assets/ImageLibrary/mail_015.png +0 -0
  184. package/lib/assets/ImageLibrary/net_001.png +0 -0
  185. package/lib/assets/ImageLibrary/net_002.png +0 -0
  186. package/lib/assets/ImageLibrary/net_003.png +0 -0
  187. package/lib/assets/ImageLibrary/net_004.png +0 -0
  188. package/lib/assets/ImageLibrary/nmbr_001.png +0 -0
  189. package/lib/assets/ImageLibrary/nmbr_002.png +0 -0
  190. package/lib/assets/ImageLibrary/nmbr_003.png +0 -0
  191. package/lib/assets/ImageLibrary/nmbr_004.png +0 -0
  192. package/lib/assets/ImageLibrary/nmbr_005.png +0 -0
  193. package/lib/assets/ImageLibrary/nmbr_006.png +0 -0
  194. package/lib/assets/ImageLibrary/nmbr_007.png +0 -0
  195. package/lib/assets/ImageLibrary/nmbr_008.png +0 -0
  196. package/lib/assets/ImageLibrary/nmbr_009.png +0 -0
  197. package/lib/assets/ImageLibrary/note_001.png +0 -0
  198. package/lib/assets/ImageLibrary/note_002.png +0 -0
  199. package/lib/assets/ImageLibrary/note_003.png +0 -0
  200. package/lib/assets/ImageLibrary/note_004.png +0 -0
  201. package/lib/assets/ImageLibrary/note_005.png +0 -0
  202. package/lib/assets/ImageLibrary/note_006.png +0 -0
  203. package/lib/assets/ImageLibrary/note_007.png +0 -0
  204. package/lib/assets/ImageLibrary/note_008.png +0 -0
  205. package/lib/assets/ImageLibrary/note_009.png +0 -0
  206. package/lib/assets/ImageLibrary/note_010.png +0 -0
  207. package/lib/assets/ImageLibrary/note_011.png +0 -0
  208. package/lib/assets/ImageLibrary/note_012.png +0 -0
  209. package/lib/assets/ImageLibrary/note_013.png +0 -0
  210. package/lib/assets/ImageLibrary/note_014.png +0 -0
  211. package/lib/assets/ImageLibrary/note_015.png +0 -0
  212. package/lib/assets/ImageLibrary/note_016.png +0 -0
  213. package/lib/assets/ImageLibrary/run_001.png +0 -0
  214. package/lib/assets/ImageLibrary/run_002.png +0 -0
  215. package/lib/assets/ImageLibrary/run_003.png +0 -0
  216. package/lib/assets/ImageLibrary/sem_001.png +0 -0
  217. package/lib/assets/ImageLibrary/sem_002.png +0 -0
  218. package/lib/assets/ImageLibrary/sem_003.png +0 -0
  219. package/lib/assets/ImageLibrary/sem_004.png +0 -0
  220. package/lib/assets/ImageLibrary/sem_005.png +0 -0
  221. package/lib/assets/ImageLibrary/star_001.png +0 -0
  222. package/lib/assets/ImageLibrary/star_002.png +0 -0
  223. package/lib/assets/ImageLibrary/star_003.png +0 -0
  224. package/lib/assets/ImageLibrary/star_004.png +0 -0
  225. package/lib/assets/ImageLibrary/star_005.png +0 -0
  226. package/lib/assets/ImageLibrary/star_006.png +0 -0
  227. package/lib/assets/ImageLibrary/state_001.png +0 -0
  228. package/lib/assets/ImageLibrary/state_002.png +0 -0
  229. package/lib/assets/ImageLibrary/state_003.png +0 -0
  230. package/lib/assets/ImageLibrary/state_004.png +0 -0
  231. package/lib/assets/ImageLibrary/state_005.png +0 -0
  232. package/lib/assets/ImageLibrary/study_001.png +0 -0
  233. package/lib/assets/ImageLibrary/study_002.png +0 -0
  234. package/lib/assets/ImageLibrary/user_001.png +0 -0
  235. package/lib/assets/ImageLibrary/user_002.png +0 -0
  236. package/lib/assets/ImageLibrary/user_003.png +0 -0
  237. package/lib/assets/ImageLibrary/user_004.png +0 -0
  238. package/lib/assets/ImageLibrary/user_005.png +0 -0
  239. package/lib/assets/ImageLibrary/user_006.png +0 -0
  240. package/lib/assets/ImageLibrary/user_007.png +0 -0
  241. package/lib/assets/ImageLibrary/user_008.png +0 -0
  242. package/lib/assets/ImageLibrary/user_009.png +0 -0
  243. package/lib/assets/ImageLibrary/user_010.png +0 -0
  244. package/lib/assets/ImageLibrary/user_011.png +0 -0
  245. package/lib/assets/ImageLibrary/user_012.png +0 -0
  246. package/lib/assets/ImageLibrary/user_013.png +0 -0
  247. package/lib/assets/ImageLibrary/user_014.png +0 -0
  248. package/lib/assets/ImageLibrary/user_015.png +0 -0
  249. package/lib/assets/ImageLibrary/user_016.png +0 -0
  250. package/lib/assets/ImageLibrary/user_017.png +0 -0
  251. package/lib/assets/ImageLibrary/user_018.png +0 -0
  252. package/lib/assets/ImageLibrary/user_019.png +0 -0
  253. package/lib/assets/ImageLibrary/user_020.png +0 -0
  254. package/lib/assets/ImageLibrary/user_021.png +0 -0
  255. package/lib/assets/ImageLibrary/user_022.png +0 -0
  256. package/lib/assets/ImageLibrary/user_023.png +0 -0
  257. package/lib/assets/ImageLibrary/vehicle_001.png +0 -0
  258. package/lib/assets/ImageLibrary/vehicle_002.png +0 -0
  259. package/lib/assets/ImageLibrary/vehicle_003.png +0 -0
  260. package/lib/assets/ImageLibrary/vehicle_004.png +0 -0
  261. package/lib/assets/ImageLibrary/vehicle_005.png +0 -0
  262. package/lib/assets/ImageLibrary/vehicle_006.png +0 -0
  263. package/lib/assets/ImageLibrary/vehicle_007.png +0 -0
  264. package/lib/assets/ImageLibrary/vehicle_008.png +0 -0
  265. package/lib/assets/Toppy-generico.png +0 -0
  266. package/lib/assets/france.svg +1 -0
  267. package/lib/assets/german.svg +1 -0
  268. package/lib/assets/icomoon.eot +0 -0
  269. package/lib/assets/icomoon.svg +97 -0
  270. package/lib/assets/icomoon.ttf +0 -0
  271. package/lib/assets/icomoon.woff +0 -0
  272. package/lib/assets/italy.svg +16 -0
  273. package/lib/assets/loading.png +0 -0
  274. package/lib/assets/login-bg.png +0 -0
  275. package/lib/assets/multipleSelectionManager.jpg +0 -0
  276. package/lib/assets/portugal.svg +1 -0
  277. package/lib/assets/six.png +0 -0
  278. package/lib/assets/six.svg +4 -0
  279. package/lib/assets/spain.svg +1 -0
  280. package/lib/assets/thumbnails/dicom.png +0 -0
  281. package/lib/assets/thumbnails/doc.png +0 -0
  282. package/lib/assets/thumbnails/docx.png +0 -0
  283. package/lib/assets/thumbnails/dwg.png +0 -0
  284. package/lib/assets/thumbnails/email.png +0 -0
  285. package/lib/assets/thumbnails/exe.png +0 -0
  286. package/lib/assets/thumbnails/folder.png +0 -0
  287. package/lib/assets/thumbnails/html.png +0 -0
  288. package/lib/assets/thumbnails/image.png +0 -0
  289. package/lib/assets/thumbnails/index.d.ts +19 -0
  290. package/lib/assets/thumbnails/index.js +19 -0
  291. package/lib/assets/thumbnails/index.ts +39 -0
  292. package/lib/assets/thumbnails/mp4.png +0 -0
  293. package/lib/assets/thumbnails/other.png +0 -0
  294. package/lib/assets/thumbnails/p7m.png +0 -0
  295. package/lib/assets/thumbnails/pdf.png +0 -0
  296. package/lib/assets/thumbnails/ppt.png +0 -0
  297. package/lib/assets/thumbnails/slddrw.png +0 -0
  298. package/lib/assets/thumbnails/txt.png +0 -0
  299. package/lib/assets/thumbnails/xls.png +0 -0
  300. package/lib/assets/thumbnails/xml.png +0 -0
  301. package/lib/assets/thumbnails/zip.png +0 -0
  302. package/lib/assets/topmedia-six.svg +66 -0
  303. package/lib/assets/topmeida-six-bianco.svg +66 -0
  304. package/lib/assets/united-kingdom.svg +1 -0
  305. package/lib/components/base/Styled.d.ts +63 -0
  306. package/lib/components/base/Styled.js +337 -0
  307. package/lib/components/base/TMAccordion.d.ts +12 -0
  308. package/lib/components/base/TMAccordion.js +62 -0
  309. package/lib/components/base/TMAlert.d.ts +73 -0
  310. package/lib/components/base/TMAlert.js +77 -0
  311. package/lib/components/base/TMAreaManager.d.ts +25 -0
  312. package/lib/components/base/TMAreaManager.js +733 -0
  313. package/lib/components/base/TMButton.d.ts +21 -0
  314. package/lib/components/base/TMButton.js +174 -0
  315. package/lib/components/base/TMClosableList.d.ts +10 -0
  316. package/lib/components/base/TMClosableList.js +70 -0
  317. package/lib/components/base/TMConfirm.d.ts +13 -0
  318. package/lib/components/base/TMConfirm.js +119 -0
  319. package/lib/components/base/TMContextMenu.d.ts +25 -0
  320. package/lib/components/base/TMContextMenu.js +109 -0
  321. package/lib/components/base/TMContextMenuOLD.d.ts +26 -0
  322. package/lib/components/base/TMContextMenuOLD.js +56 -0
  323. package/lib/components/base/TMCounterBar.d.ts +10 -0
  324. package/lib/components/base/TMCounterBar.js +43 -0
  325. package/lib/components/base/TMCounterContainer.d.ts +23 -0
  326. package/lib/components/base/TMCounterContainer.js +58 -0
  327. package/lib/components/base/TMCustomButton.d.ts +11 -0
  328. package/lib/components/base/TMCustomButton.js +116 -0
  329. package/lib/components/base/TMDataGrid.d.ts +56 -0
  330. package/lib/components/base/TMDataGrid.js +237 -0
  331. package/lib/components/base/TMDataGridExportForm.d.ts +15 -0
  332. package/lib/components/base/TMDataGridExportForm.js +215 -0
  333. package/lib/components/base/TMDeviceProvider.d.ts +15 -0
  334. package/lib/components/base/TMDeviceProvider.js +41 -0
  335. package/lib/components/base/TMDropDownMenu.d.ts +23 -0
  336. package/lib/components/base/TMDropDownMenu.js +45 -0
  337. package/lib/components/base/TMEditorBase.d.ts +39 -0
  338. package/lib/components/base/TMEditorBase.js +1 -0
  339. package/lib/components/base/TMFileManager.d.ts +45 -0
  340. package/lib/components/base/TMFileManager.js +233 -0
  341. package/lib/components/base/TMFileManagerDataGridView.d.ts +16 -0
  342. package/lib/components/base/TMFileManagerDataGridView.js +101 -0
  343. package/lib/components/base/TMFileManagerThumbnailItems.d.ts +18 -0
  344. package/lib/components/base/TMFileManagerThumbnailItems.js +148 -0
  345. package/lib/components/base/TMFileManagerThumbnailsView.d.ts +19 -0
  346. package/lib/components/base/TMFileManagerThumbnailsView.js +46 -0
  347. package/lib/components/base/TMFileManagerUtils.d.ts +78 -0
  348. package/lib/components/base/TMFileManagerUtils.js +207 -0
  349. package/lib/components/base/TMFloatingToolbar.d.ts +9 -0
  350. package/lib/components/base/TMFloatingToolbar.js +101 -0
  351. package/lib/components/base/TMLayout.d.ts +55 -0
  352. package/lib/components/base/TMLayout.js +201 -0
  353. package/lib/components/base/TMList.d.ts +9 -0
  354. package/lib/components/base/TMList.js +54 -0
  355. package/lib/components/base/TMListView.d.ts +42 -0
  356. package/lib/components/base/TMListView.js +387 -0
  357. package/lib/components/base/TMModal.d.ts +16 -0
  358. package/lib/components/base/TMModal.js +70 -0
  359. package/lib/components/base/TMPanel.d.ts +32 -0
  360. package/lib/components/base/TMPanel.js +181 -0
  361. package/lib/components/base/TMPopUp.d.ts +33 -0
  362. package/lib/components/base/TMPopUp.js +267 -0
  363. package/lib/components/base/TMProgressBar.d.ts +11 -0
  364. package/lib/components/base/TMProgressBar.js +32 -0
  365. package/lib/components/base/TMResizableMenu.d.ts +20 -0
  366. package/lib/components/base/TMResizableMenu.js +98 -0
  367. package/lib/components/base/TMRightSidebar.d.ts +19 -0
  368. package/lib/components/base/TMRightSidebar.js +80 -0
  369. package/lib/components/base/TMShowAllOrMaxItemsButton.d.ts +8 -0
  370. package/lib/components/base/TMShowAllOrMaxItemsButton.js +20 -0
  371. package/lib/components/base/TMSpinner.d.ts +14 -0
  372. package/lib/components/base/TMSpinner.js +160 -0
  373. package/lib/components/base/TMTab.d.ts +20 -0
  374. package/lib/components/base/TMTab.js +42 -0
  375. package/lib/components/base/TMToggleButton.d.ts +10 -0
  376. package/lib/components/base/TMToggleButton.js +58 -0
  377. package/lib/components/base/TMToolbarCard.d.ts +19 -0
  378. package/lib/components/base/TMToolbarCard.js +51 -0
  379. package/lib/components/base/TMTooltip.d.ts +14 -0
  380. package/lib/components/base/TMTooltip.js +20 -0
  381. package/lib/components/base/TMTreeView.d.ts +32 -0
  382. package/lib/components/base/TMTreeView.js +356 -0
  383. package/lib/components/base/TMUserAvatar.d.ts +8 -0
  384. package/lib/components/base/TMUserAvatar.js +34 -0
  385. package/lib/components/base/TMVilViewer.d.ts +5 -0
  386. package/lib/components/base/TMVilViewer.js +22 -0
  387. package/lib/components/base/TMWaitPanel.d.ts +32 -0
  388. package/lib/components/base/TMWaitPanel.js +44 -0
  389. package/lib/components/choosers/TMCultureIDPicker.d.ts +9 -0
  390. package/lib/components/choosers/TMCultureIDPicker.js +72 -0
  391. package/lib/components/choosers/TMDataListItemChooser.d.ts +17 -0
  392. package/lib/components/choosers/TMDataListItemChooser.js +49 -0
  393. package/lib/components/choosers/TMDataListItemPicker.d.ts +9 -0
  394. package/lib/components/choosers/TMDataListItemPicker.js +96 -0
  395. package/lib/components/choosers/TMDcmtTypeChooser.d.ts +25 -0
  396. package/lib/components/choosers/TMDcmtTypeChooser.js +61 -0
  397. package/lib/components/choosers/TMDiskChooser.d.ts +10 -0
  398. package/lib/components/choosers/TMDiskChooser.js +41 -0
  399. package/lib/components/choosers/TMDistinctValues.d.ts +21 -0
  400. package/lib/components/choosers/TMDistinctValues.js +140 -0
  401. package/lib/components/choosers/TMDynDataListItemChooser.d.ts +40 -0
  402. package/lib/components/choosers/TMDynDataListItemChooser.js +159 -0
  403. package/lib/components/choosers/TMGroupChooser.d.ts +7 -0
  404. package/lib/components/choosers/TMGroupChooser.js +37 -0
  405. package/lib/components/choosers/TMInvoiceRetrieveFormats.d.ts +4 -0
  406. package/lib/components/choosers/TMInvoiceRetrieveFormats.js +22 -0
  407. package/lib/components/choosers/TMMetadataChooser.d.ts +54 -0
  408. package/lib/components/choosers/TMMetadataChooser.js +142 -0
  409. package/lib/components/choosers/TMOrderRetrieveFormats.d.ts +4 -0
  410. package/lib/components/choosers/TMOrderRetrieveFormats.js +22 -0
  411. package/lib/components/choosers/TMPathChooser.d.ts +12 -0
  412. package/lib/components/choosers/TMPathChooser.js +147 -0
  413. package/lib/components/choosers/TMRelationChooser.d.ts +31 -0
  414. package/lib/components/choosers/TMRelationChooser.js +94 -0
  415. package/lib/components/choosers/TMUserChooser.d.ts +40 -0
  416. package/lib/components/choosers/TMUserChooser.js +141 -0
  417. package/lib/components/editors/TMCheckBox.d.ts +9 -0
  418. package/lib/components/editors/TMCheckBox.js +90 -0
  419. package/lib/components/editors/TMDateBox.d.ts +17 -0
  420. package/lib/components/editors/TMDateBox.js +75 -0
  421. package/lib/components/editors/TMDropDown.d.ts +10 -0
  422. package/lib/components/editors/TMDropDown.js +62 -0
  423. package/lib/components/editors/TMEditorStyled.d.ts +41 -0
  424. package/lib/components/editors/TMEditorStyled.js +90 -0
  425. package/lib/components/editors/TMFormulaEditor.d.ts +49 -0
  426. package/lib/components/editors/TMFormulaEditor.js +727 -0
  427. package/lib/components/editors/TMHtmlContentDisplay.d.ts +7 -0
  428. package/lib/components/editors/TMHtmlContentDisplay.js +78 -0
  429. package/lib/components/editors/TMHtmlEditor.d.ts +38 -0
  430. package/lib/components/editors/TMHtmlEditor.js +203 -0
  431. package/lib/components/editors/TMLocalizedTextBox.d.ts +19 -0
  432. package/lib/components/editors/TMLocalizedTextBox.js +125 -0
  433. package/lib/components/editors/TMMetadataEditor.d.ts +29 -0
  434. package/lib/components/editors/TMMetadataEditor.js +140 -0
  435. package/lib/components/editors/TMMetadataValues.d.ts +46 -0
  436. package/lib/components/editors/TMMetadataValues.js +530 -0
  437. package/lib/components/editors/TMRadioButton.d.ts +10 -0
  438. package/lib/components/editors/TMRadioButton.js +57 -0
  439. package/lib/components/editors/TMSummary.d.ts +20 -0
  440. package/lib/components/editors/TMSummary.js +92 -0
  441. package/lib/components/editors/TMTextArea.d.ts +17 -0
  442. package/lib/components/editors/TMTextArea.js +155 -0
  443. package/lib/components/editors/TMTextBox.d.ts +20 -0
  444. package/lib/components/editors/TMTextBox.js +249 -0
  445. package/lib/components/editors/TMTextExpression.d.ts +25 -0
  446. package/lib/components/editors/TMTextExpression.js +174 -0
  447. package/lib/components/editors/TMTreeDropDown.d.ts +18 -0
  448. package/lib/components/editors/TMTreeDropDown.js +66 -0
  449. package/lib/components/features/archive/TMArchive.d.ts +29 -0
  450. package/lib/components/features/archive/TMArchive.js +193 -0
  451. package/lib/components/features/assistant/ToppyHelpCenter.d.ts +12 -0
  452. package/lib/components/features/assistant/ToppyHelpCenter.js +173 -0
  453. package/lib/components/features/blog/TMBlogCommentForm.d.ts +17 -0
  454. package/lib/components/features/blog/TMBlogCommentForm.js +333 -0
  455. package/lib/components/features/documents/TMBatchUpdateForm.d.ts +17 -0
  456. package/lib/components/features/documents/TMBatchUpdateForm.js +159 -0
  457. package/lib/components/features/documents/TMDcmtBlog.d.ts +23 -0
  458. package/lib/components/features/documents/TMDcmtBlog.js +65 -0
  459. package/lib/components/features/documents/TMDcmtForm.d.ts +64 -0
  460. package/lib/components/features/documents/TMDcmtForm.js +1245 -0
  461. package/lib/components/features/documents/TMDcmtIcon.d.ts +18 -0
  462. package/lib/components/features/documents/TMDcmtIcon.js +93 -0
  463. package/lib/components/features/documents/TMDcmtPreview.d.ts +31 -0
  464. package/lib/components/features/documents/TMDcmtPreview.js +446 -0
  465. package/lib/components/features/documents/TMDcmtTasks.d.ts +13 -0
  466. package/lib/components/features/documents/TMDcmtTasks.js +24 -0
  467. package/lib/components/features/documents/TMDragDropOverlay.d.ts +6 -0
  468. package/lib/components/features/documents/TMDragDropOverlay.js +97 -0
  469. package/lib/components/features/documents/TMFileUploader.d.ts +14 -0
  470. package/lib/components/features/documents/TMFileUploader.js +115 -0
  471. package/lib/components/features/documents/TMMasterDetailDcmts.d.ts +26 -0
  472. package/lib/components/features/documents/TMMasterDetailDcmts.js +288 -0
  473. package/lib/components/features/documents/TMRelationViewer.d.ts +121 -0
  474. package/lib/components/features/documents/TMRelationViewer.js +753 -0
  475. package/lib/components/features/search/TMSavedQueryForm.d.ts +9 -0
  476. package/lib/components/features/search/TMSavedQueryForm.js +41 -0
  477. package/lib/components/features/search/TMSavedQuerySelector.d.ts +16 -0
  478. package/lib/components/features/search/TMSavedQuerySelector.js +226 -0
  479. package/lib/components/features/search/TMSearch.d.ts +40 -0
  480. package/lib/components/features/search/TMSearch.js +253 -0
  481. package/lib/components/features/search/TMSearchQueryEditor.d.ts +15 -0
  482. package/lib/components/features/search/TMSearchQueryEditor.js +367 -0
  483. package/lib/components/features/search/TMSearchQueryPanel.d.ts +29 -0
  484. package/lib/components/features/search/TMSearchQueryPanel.js +438 -0
  485. package/lib/components/features/search/TMSearchResult.d.ts +53 -0
  486. package/lib/components/features/search/TMSearchResult.js +1092 -0
  487. package/lib/components/features/search/TMSearchResultFloatingActionButton.d.ts +16 -0
  488. package/lib/components/features/search/TMSearchResultFloatingActionButton.js +50 -0
  489. package/lib/components/features/search/TMSearchResultsMenuItems.d.ts +11 -0
  490. package/lib/components/features/search/TMSearchResultsMenuItems.js +725 -0
  491. package/lib/components/features/search/TMTreeSelector.d.ts +12 -0
  492. package/lib/components/features/search/TMTreeSelector.js +270 -0
  493. package/lib/components/features/tasks/TMTaskForm.d.ts +38 -0
  494. package/lib/components/features/tasks/TMTaskForm.js +387 -0
  495. package/lib/components/features/tasks/TMTasksAgenda.d.ts +17 -0
  496. package/lib/components/features/tasks/TMTasksAgenda.js +107 -0
  497. package/lib/components/features/tasks/TMTasksCalendar.d.ts +21 -0
  498. package/lib/components/features/tasks/TMTasksCalendar.js +240 -0
  499. package/lib/components/features/tasks/TMTasksHeader.d.ts +14 -0
  500. package/lib/components/features/tasks/TMTasksHeader.js +37 -0
  501. package/lib/components/features/tasks/TMTasksPanelContent.d.ts +20 -0
  502. package/lib/components/features/tasks/TMTasksPanelContent.js +65 -0
  503. package/lib/components/features/tasks/TMTasksUtils.d.ts +132 -0
  504. package/lib/components/features/tasks/TMTasksUtils.js +634 -0
  505. package/lib/components/features/tasks/TMTasksUtilsView.d.ts +39 -0
  506. package/lib/components/features/tasks/TMTasksUtilsView.js +140 -0
  507. package/lib/components/features/tasks/TMTasksView.d.ts +40 -0
  508. package/lib/components/features/tasks/TMTasksView.js +560 -0
  509. package/lib/components/features/wg/TMWGsCopyMoveForm.d.ts +39 -0
  510. package/lib/components/features/wg/TMWGsCopyMoveForm.js +439 -0
  511. package/lib/components/features/workflow/TMWorkflowPopup.d.ts +42 -0
  512. package/lib/components/features/workflow/TMWorkflowPopup.js +286 -0
  513. package/lib/components/features/workflow/diagram/ConnectionComponent.d.ts +14 -0
  514. package/lib/components/features/workflow/diagram/ConnectionComponent.js +90 -0
  515. package/lib/components/features/workflow/diagram/ConnectionForm.d.ts +9 -0
  516. package/lib/components/features/workflow/diagram/ConnectionForm.js +73 -0
  517. package/lib/components/features/workflow/diagram/DiagramItemComponent.d.ts +18 -0
  518. package/lib/components/features/workflow/diagram/DiagramItemComponent.js +264 -0
  519. package/lib/components/features/workflow/diagram/DiagramItemForm.d.ts +10 -0
  520. package/lib/components/features/workflow/diagram/DiagramItemForm.js +686 -0
  521. package/lib/components/features/workflow/diagram/DiagramItemSvgContent.d.ts +12 -0
  522. package/lib/components/features/workflow/diagram/DiagramItemSvgContent.js +97 -0
  523. package/lib/components/features/workflow/diagram/RecipientList.d.ts +27 -0
  524. package/lib/components/features/workflow/diagram/RecipientList.js +204 -0
  525. package/lib/components/features/workflow/diagram/WFDiagram.d.ts +9 -0
  526. package/lib/components/features/workflow/diagram/WFDiagram.js +1680 -0
  527. package/lib/components/features/workflow/diagram/WorkitemRecipientsEditor.d.ts +18 -0
  528. package/lib/components/features/workflow/diagram/WorkitemRecipientsEditor.js +97 -0
  529. package/lib/components/features/workflow/diagram/interfaces.d.ts +126 -0
  530. package/lib/components/features/workflow/diagram/interfaces.js +26 -0
  531. package/lib/components/features/workflow/diagram/metadataParser.d.ts +14 -0
  532. package/lib/components/features/workflow/diagram/metadataParser.js +54 -0
  533. package/lib/components/features/workflow/diagram/queryDescriptorParser.d.ts +3 -0
  534. package/lib/components/features/workflow/diagram/queryDescriptorParser.js +188 -0
  535. package/lib/components/features/workflow/diagram/workflowHelpers.d.ts +122 -0
  536. package/lib/components/features/workflow/diagram/workflowHelpers.js +488 -0
  537. package/lib/components/features/workflow/diagram/xmlParser.d.ts +10 -0
  538. package/lib/components/features/workflow/diagram/xmlParser.js +490 -0
  539. package/lib/components/filesystem/ProgressBar.d.ts +7 -0
  540. package/lib/components/filesystem/ProgressBar.js +25 -0
  541. package/lib/components/forms/Login/ChangePassword.d.ts +9 -0
  542. package/lib/components/forms/Login/ChangePassword.js +22 -0
  543. package/lib/components/forms/Login/ChangePasswordInputs.d.ts +14 -0
  544. package/lib/components/forms/Login/ChangePasswordInputs.js +80 -0
  545. package/lib/components/forms/Login/Chooser.d.ts +28 -0
  546. package/lib/components/forms/Login/Chooser.js +145 -0
  547. package/lib/components/forms/Login/LOGINLocalizator.d.ts +29 -0
  548. package/lib/components/forms/Login/LOGINLocalizator.js +247 -0
  549. package/lib/components/forms/Login/LoginValidatorService.d.ts +50 -0
  550. package/lib/components/forms/Login/LoginValidatorService.js +162 -0
  551. package/lib/components/forms/Login/Menu.d.ts +10 -0
  552. package/lib/components/forms/Login/Menu.js +48 -0
  553. package/lib/components/forms/Login/OTPReader.d.ts +14 -0
  554. package/lib/components/forms/Login/OTPReader.js +90 -0
  555. package/lib/components/forms/Login/PasswordStrengthChecker.d.ts +7 -0
  556. package/lib/components/forms/Login/PasswordStrengthChecker.js +45 -0
  557. package/lib/components/forms/Login/RapidAccessLogin.d.ts +25 -0
  558. package/lib/components/forms/Login/RapidAccessLogin.js +310 -0
  559. package/lib/components/forms/Login/RecoverPasswordFlow.d.ts +11 -0
  560. package/lib/components/forms/Login/RecoverPasswordFlow.js +111 -0
  561. package/lib/components/forms/Login/SelectBox.d.ts +23 -0
  562. package/lib/components/forms/Login/SelectBox.js +96 -0
  563. package/lib/components/forms/Login/StepIndicator.d.ts +7 -0
  564. package/lib/components/forms/Login/StepIndicator.js +19 -0
  565. package/lib/components/forms/Login/TMLoginForm.d.ts +44 -0
  566. package/lib/components/forms/Login/TMLoginForm.js +737 -0
  567. package/lib/components/forms/Login/TextBox.d.ts +27 -0
  568. package/lib/components/forms/Login/TextBox.js +111 -0
  569. package/lib/components/forms/TMApplyForm.d.ts +4 -0
  570. package/lib/components/forms/TMApplyForm.js +105 -0
  571. package/lib/components/forms/TMChooserForm.d.ts +3 -0
  572. package/lib/components/forms/TMChooserForm.js +94 -0
  573. package/lib/components/forms/TMResultDialog.d.ts +20 -0
  574. package/lib/components/forms/TMResultDialog.js +44 -0
  575. package/lib/components/forms/TMSaveForm.d.ts +31 -0
  576. package/lib/components/forms/TMSaveForm.js +176 -0
  577. package/lib/components/grids/TMBlogAttachments.d.ts +42 -0
  578. package/lib/components/grids/TMBlogAttachments.js +43 -0
  579. package/lib/components/grids/TMBlogHeader.d.ts +31 -0
  580. package/lib/components/grids/TMBlogHeader.js +41 -0
  581. package/lib/components/grids/TMBlogsPost.d.ts +87 -0
  582. package/lib/components/grids/TMBlogsPost.js +644 -0
  583. package/lib/components/grids/TMBlogsPostUtils.d.ts +113 -0
  584. package/lib/components/grids/TMBlogsPostUtils.js +250 -0
  585. package/lib/components/grids/TMRecentsManager.d.ts +13 -0
  586. package/lib/components/grids/TMRecentsManager.js +155 -0
  587. package/lib/components/grids/TMValidationItemsList.d.ts +6 -0
  588. package/lib/components/grids/TMValidationItemsList.js +82 -0
  589. package/lib/components/index.d.ts +115 -0
  590. package/lib/components/index.js +137 -0
  591. package/lib/components/layout/panelManager/TMPanelManagerContainer.d.ts +10 -0
  592. package/lib/components/layout/panelManager/TMPanelManagerContainer.js +215 -0
  593. package/lib/components/layout/panelManager/TMPanelManagerContext.d.ts +39 -0
  594. package/lib/components/layout/panelManager/TMPanelManagerContext.js +257 -0
  595. package/lib/components/layout/panelManager/TMPanelManagerToolbar.d.ts +11 -0
  596. package/lib/components/layout/panelManager/TMPanelManagerToolbar.js +83 -0
  597. package/lib/components/layout/panelManager/TMPanelManagerWithPersistenceProvider.d.ts +21 -0
  598. package/lib/components/layout/panelManager/TMPanelManagerWithPersistenceProvider.js +64 -0
  599. package/lib/components/layout/panelManager/TMPanelWrapper.d.ts +8 -0
  600. package/lib/components/layout/panelManager/TMPanelWrapper.js +59 -0
  601. package/lib/components/layout/panelManager/types.d.ts +42 -0
  602. package/lib/components/layout/panelManager/types.js +1 -0
  603. package/lib/components/layout/panelManager/utils.d.ts +21 -0
  604. package/lib/components/layout/panelManager/utils.js +208 -0
  605. package/lib/components/pages/TMPage.d.ts +38 -0
  606. package/lib/components/pages/TMPage.js +220 -0
  607. package/lib/components/query/TMQueryEditor.d.ts +58 -0
  608. package/lib/components/query/TMQueryEditor.js +1001 -0
  609. package/lib/components/query/TMQuerySummary.d.ts +16 -0
  610. package/lib/components/query/TMQuerySummary.js +35 -0
  611. package/lib/components/settings/SettingsAppearance.d.ts +14 -0
  612. package/lib/components/settings/SettingsAppearance.js +73 -0
  613. package/lib/components/sidebar/TMAboutApp.d.ts +8 -0
  614. package/lib/components/sidebar/TMAboutApp.js +14 -0
  615. package/lib/components/sidebar/TMCommandsPanel.d.ts +16 -0
  616. package/lib/components/sidebar/TMCommandsPanel.js +27 -0
  617. package/lib/components/sidebar/TMHeader.d.ts +43 -0
  618. package/lib/components/sidebar/TMHeader.js +616 -0
  619. package/lib/components/sidebar/TMSidebar.d.ts +21 -0
  620. package/lib/components/sidebar/TMSidebar.js +61 -0
  621. package/lib/components/sidebar/TMSidebarItem.d.ts +15 -0
  622. package/lib/components/sidebar/TMSidebarItem.js +39 -0
  623. package/lib/components/viewers/TMDataListItemViewer.d.ts +10 -0
  624. package/lib/components/viewers/TMDataListItemViewer.js +80 -0
  625. package/lib/components/viewers/TMMidViewer.d.ts +36 -0
  626. package/lib/components/viewers/TMMidViewer.js +128 -0
  627. package/lib/components/viewers/TMTidViewer.d.ts +256 -0
  628. package/lib/components/viewers/TMTidViewer.js +343 -0
  629. package/lib/components/wizard/TMStepIndicator.d.ts +11 -0
  630. package/lib/components/wizard/TMStepIndicator.js +165 -0
  631. package/lib/components/wizard/TMWizard.d.ts +18 -0
  632. package/lib/components/wizard/TMWizard.js +93 -0
  633. package/lib/css/tm-sdkui.css +1 -0
  634. package/lib/helper/DeepCompareHelper.d.ts +7 -0
  635. package/lib/helper/DeepCompareHelper.js +106 -0
  636. package/lib/helper/Enum_Localizator.d.ts +18 -0
  637. package/lib/helper/Enum_Localizator.js +247 -0
  638. package/lib/helper/GlobalStyles.d.ts +2 -0
  639. package/lib/helper/GlobalStyles.js +10 -0
  640. package/lib/helper/Globalization.d.ts +15 -0
  641. package/lib/helper/Globalization.js +110 -0
  642. package/lib/helper/SDKUI_Globals.d.ts +96 -0
  643. package/lib/helper/SDKUI_Globals.js +174 -0
  644. package/lib/helper/SDKUI_Localizator.d.ts +738 -0
  645. package/lib/helper/SDKUI_Localizator.js +7288 -0
  646. package/lib/helper/TMCommandsContextMenu.d.ts +14 -0
  647. package/lib/helper/TMCommandsContextMenu.js +6 -0
  648. package/lib/helper/TMConditionalWrapper.d.ts +8 -0
  649. package/lib/helper/TMConditionalWrapper.js +4 -0
  650. package/lib/helper/TMCustomSearchBar.d.ts +8 -0
  651. package/lib/helper/TMCustomSearchBar.js +54 -0
  652. package/lib/helper/TMIcons.d.ts +274 -0
  653. package/lib/helper/TMIcons.js +673 -0
  654. package/lib/helper/TMImageLibrary.d.ts +4 -0
  655. package/lib/helper/TMImageLibrary.js +466 -0
  656. package/lib/helper/TMToppyMessage.d.ts +7 -0
  657. package/lib/helper/TMToppyMessage.js +42 -0
  658. package/lib/helper/TMUtils.d.ts +26 -0
  659. package/lib/helper/TMUtils.js +212 -0
  660. package/lib/helper/dcmtsHelper.d.ts +8 -0
  661. package/lib/helper/dcmtsHelper.js +49 -0
  662. package/lib/helper/helpers.d.ts +84 -0
  663. package/lib/helper/helpers.js +826 -0
  664. package/lib/helper/index.d.ts +13 -0
  665. package/lib/helper/index.js +13 -0
  666. package/lib/helper/queryHelper.d.ts +19 -0
  667. package/lib/helper/queryHelper.js +336 -0
  668. package/lib/hooks/useDcmtOperations.d.ts +24 -0
  669. package/lib/hooks/useDcmtOperations.js +482 -0
  670. package/lib/hooks/useForm.d.ts +24 -0
  671. package/lib/hooks/useForm.js +157 -0
  672. package/lib/hooks/useInputDialog.d.ts +9 -0
  673. package/lib/hooks/useInputDialog.js +105 -0
  674. package/lib/hooks/useOutsideClick.d.ts +2 -0
  675. package/lib/hooks/useOutsideClick.js +38 -0
  676. package/lib/hooks/usePreventFileDrop.d.ts +3 -0
  677. package/lib/hooks/usePreventFileDrop.js +37 -0
  678. package/lib/hooks/useQueryParametersDialog.d.ts +2 -0
  679. package/lib/hooks/useQueryParametersDialog.js +71 -0
  680. package/lib/hooks/useRelatedDocuments.d.ts +72 -0
  681. package/lib/hooks/useRelatedDocuments.js +655 -0
  682. package/lib/hooks/useResizeObserver.d.ts +4 -0
  683. package/lib/hooks/useResizeObserver.js +22 -0
  684. package/lib/hooks/useWorkflowApprove.d.ts +11 -0
  685. package/lib/hooks/useWorkflowApprove.js +57 -0
  686. package/lib/index.d.ts +12 -0
  687. package/lib/index.js +15 -0
  688. package/lib/services/index.d.ts +1 -0
  689. package/lib/services/index.js +1 -0
  690. package/lib/services/platform_services.d.ts +18 -0
  691. package/lib/services/platform_services.js +492 -0
  692. package/lib/ts/index.d.ts +1 -0
  693. package/lib/ts/index.js +1 -0
  694. package/lib/ts/types.d.ts +310 -0
  695. package/lib/ts/types.js +100 -0
  696. package/lib/utils/theme.d.ts +69 -0
  697. package/lib/utils/theme.js +81 -0
  698. package/package.json +54 -0
@@ -0,0 +1,753 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import React, { useCallback, useEffect, useMemo, useState } from 'react';
3
+ import { DcmtTypeListCacheService, SDK_Globals, DataColumnTypes, MetadataFormats, SystemMIDs, MetadataDataDomains, RelationCacheService, RelationTypes } from "@topconsultnpm/sdk-ts";
4
+ import { genUniqueId, IconFolder, IconBackhandIndexPointingRight } from '../../../helper';
5
+ import { TMColors } from '../../../utils/theme';
6
+ import { StyledDivHorizontal, StyledBadge } from '../../base/Styled';
7
+ import TMTreeView from '../../base/TMTreeView';
8
+ import { TMWaitPanel } from '../../base/TMWaitPanel';
9
+ import { TMUserIdViewer } from '../../choosers/TMUserChooser';
10
+ import TMDataListItemViewer from '../../viewers/TMDataListItemViewer';
11
+ import TMDcmtIcon from './TMDcmtIcon';
12
+ /**
13
+ * Check if document type has detail relations
14
+ */
15
+ export const hasDetailRelations = async (mTID) => {
16
+ if (!mTID)
17
+ return false;
18
+ const allRelations = await RelationCacheService.GetAllAsync();
19
+ const rdlOneToMany = allRelations?.filter(o => o.masterTID == mTID && o.relationType == RelationTypes.OneToMany) ?? [];
20
+ const rdlManyToMany = allRelations?.filter(o => o.relationType == RelationTypes.ManyToMany && (o.masterTID == mTID || o.detailTID == mTID)) ?? [];
21
+ return rdlManyToMany.length > 0 || rdlOneToMany.length > 0;
22
+ };
23
+ /**
24
+ * Check if document type has master relations
25
+ */
26
+ export const hasMasterRelations = async (dTID) => {
27
+ if (!dTID)
28
+ return false;
29
+ const allRelations = await RelationCacheService.GetAllAsync();
30
+ const rdlOneToMany = allRelations?.filter(o => o.detailTID == dTID && o.relationType == RelationTypes.OneToMany) ?? [];
31
+ const rdlManyToMany = allRelations?.filter(o => o.relationType == RelationTypes.ManyToMany && (o.masterTID == dTID || o.detailTID == dTID)) ?? [];
32
+ return rdlManyToMany.length > 0 || rdlOneToMany.length > 0;
33
+ };
34
+ /**
35
+ * Check if relation is ManyToMany
36
+ */
37
+ const isManyToManyRelation = async (relationID) => {
38
+ if (!relationID)
39
+ return false;
40
+ const allRelations = await RelationCacheService.GetAllAsync();
41
+ const rdlManyToMany = allRelations.filter(o => o.relationType == RelationTypes.ManyToMany && o.id === relationID) ?? [];
42
+ return rdlManyToMany.length > 0;
43
+ };
44
+ /**
45
+ * Get metadata keys excluding system metadata
46
+ */
47
+ export const getMetadataKeys = (obj) => {
48
+ if (!obj)
49
+ return [];
50
+ const keys = Object.keys(obj);
51
+ // Escludi metadati di sistema (MID < 100 che sono uppercase) e altri campi tecnici
52
+ const sysMIDs = Object.values(SystemMIDs).map(o => o.toUpperCase());
53
+ return keys.filter(k => obj?.[k].value && !sysMIDs.includes(k)).filter(o => o !== "rowIndex" && o !== "ISLEXPROT");
54
+ };
55
+ /**
56
+ * Get display value keys for a document (max 5, prioritize SYS_Abstract)
57
+ */
58
+ export const getDcmtDisplayValue = (obj) => {
59
+ if (!obj)
60
+ return [];
61
+ // Prima cerca SYS_Abstract
62
+ if (obj['SYS_Abstract']?.value) {
63
+ return ['SYS_Abstract'];
64
+ }
65
+ // Altrimenti prendi i primi 5 metadati non di sistema
66
+ const mdKeys = getMetadataKeys(obj);
67
+ return mdKeys.slice(0, 5);
68
+ };
69
+ /**
70
+ * Get display value formatted by column type
71
+ */
72
+ export const getDisplayValueByColumn = (col, value) => {
73
+ if (!value)
74
+ return value;
75
+ if (!col)
76
+ return value;
77
+ if (col.dataType === DataColumnTypes.Text)
78
+ return value;
79
+ const format = MetadataFormats[(col.extendedProperties?.["Format"] ?? "None")];
80
+ const formatCulture = col.extendedProperties?.["FormatCulture"] ?? window.navigator.language;
81
+ if (col.dataType === DataColumnTypes.DateTime) {
82
+ const date = new Date(value);
83
+ switch (format) {
84
+ case MetadataFormats.ShortDate: return date.toLocaleString(formatCulture, formatCulture == "it-IT" ? { year: "numeric", month: "2-digit", day: "2-digit" } : { dateStyle: 'short' });
85
+ case MetadataFormats.ShortTime: return date.toLocaleString(formatCulture, { timeStyle: 'short' });
86
+ case MetadataFormats.ShortDateLongTime: return date.toLocaleString(formatCulture, formatCulture == "it-IT" ? { year: "numeric", month: "2-digit", day: "2-digit", hour: '2-digit', minute: '2-digit', second: '2-digit' } : { dateStyle: 'short', timeStyle: 'medium' }).replace(',', '');
87
+ case MetadataFormats.ShortDateShortTime: return date.toLocaleString(formatCulture, formatCulture == "it-IT" ? { year: "numeric", month: "2-digit", day: "2-digit", hour: '2-digit', minute: '2-digit' } : { dateStyle: 'short', timeStyle: 'short' }).replace(',', '');
88
+ case MetadataFormats.LongDate: return date.toLocaleString(formatCulture, { weekday: "long", year: "numeric", month: "long", day: "numeric" });
89
+ case MetadataFormats.LongTime: return date.toLocaleString(formatCulture, { timeStyle: 'medium' });
90
+ case MetadataFormats.LongDateLongTime: return date.toLocaleString(formatCulture, { weekday: "long", year: "numeric", month: "long", day: "numeric", hour: '2-digit', minute: '2-digit', second: '2-digit' });
91
+ case MetadataFormats.LongDateShortTime: return date.toLocaleString(formatCulture, { weekday: "long", year: "numeric", month: "long", day: "numeric", hour: '2-digit', minute: '2-digit' });
92
+ default: return date.toLocaleString(formatCulture, { dateStyle: 'short' });
93
+ }
94
+ }
95
+ if (col.dataType === DataColumnTypes.Number) {
96
+ return value.toLocaleString(formatCulture, { useGrouping: format == MetadataFormats.NumberWithThousandsSeparator });
97
+ }
98
+ if (format == MetadataFormats.None)
99
+ return value;
100
+ if (format == MetadataFormats.CurrencyEuro)
101
+ return value.toLocaleString(formatCulture, { style: 'currency', currency: "EUR" });
102
+ if (format == MetadataFormats.CurrencyDollar)
103
+ return value.toLocaleString(formatCulture, { style: 'currency', currency: "USD" });
104
+ if (format == MetadataFormats.CurrencyPound)
105
+ return value.toLocaleString(formatCulture, { style: 'currency', currency: "GBP" });
106
+ if (format == MetadataFormats.CurrencyYen)
107
+ return value.toLocaleString(formatCulture, { style: 'currency', currency: "JPY" });
108
+ return value;
109
+ };
110
+ /**
111
+ * Convert SearchResultDescriptor to structured data source with metadata
112
+ */
113
+ export const searchResultToDataSource = async (searchResult, hideSysMetadata) => {
114
+ const rows = searchResult?.dtdResult?.rows ?? [];
115
+ const tid = searchResult?.fromTID;
116
+ const dtd = await DcmtTypeListCacheService.GetAsync(tid);
117
+ const output = [];
118
+ for (let index = 0; index < rows.length; index++) {
119
+ const item = { rowIndex: index };
120
+ const row = rows[index];
121
+ for (let i = 0; i < row.length; i++) {
122
+ const mid = Number(searchResult?.dtdResult?.columns?.[i]?.extendedProperties?.["MID"] ?? "0");
123
+ if (hideSysMetadata && mid < 100)
124
+ continue;
125
+ let key = searchResult?.dtdResult?.columns?.[i].caption ?? '';
126
+ if (mid <= 100)
127
+ key = key.toUpperCase();
128
+ const value = row[i];
129
+ const md = dtd?.metadata?.find(o => o.id == mid);
130
+ item[key] = {
131
+ md: md,
132
+ value: getDisplayValueByColumn(searchResult?.dtdResult?.columns?.[i], value)
133
+ };
134
+ }
135
+ output.push(item);
136
+ }
137
+ return output;
138
+ };
139
+ const TMRelationViewer = ({ inputDcmts, isForMaster = false, showCurrentDcmtIndicator = true, allowShowZeroDcmts = true, initialShowZeroDcmts = false, allowedTIDs, allowMultipleSelection = false, focusedItem, selectedItems, onFocusedItemChanged, onSelectedItemsChanged, onDocumentDoubleClick, customItemRender, customDocumentStyle, customMainContainerContent, customDocumentContent, showMetadataNames = false, maxDepthLevel = 2, invertMasterNavigation = true, additionalStaticItems, showMainDocument = true, labelMainContainer, }) => {
140
+ // State
141
+ const [dcmtTypes, setDcmtTypes] = useState([]);
142
+ const [treeData, setTreeData] = useState([]);
143
+ const [showZeroDcmts, setShowZeroDcmts] = useState(initialShowZeroDcmts);
144
+ const [staticItemsState, setStaticItemsState] = useState([]);
145
+ const [showWaitPanel, setShowWaitPanel] = useState(false);
146
+ const [waitPanelTextPrimary, setWaitPanelTextPrimary] = useState('');
147
+ const [waitPanelValuePrimary, setWaitPanelValuePrimary] = useState(0);
148
+ const [waitPanelMaxValuePrimary, setWaitPanelMaxValuePrimary] = useState(0);
149
+ const [abortController] = useState(new AbortController());
150
+ const [showExpansionWaitPanel, setShowExpansionWaitPanel] = useState(false);
151
+ const [expansionWaitPanelText, setExpansionWaitPanelText] = useState('');
152
+ const [expansionWaitPanelValue, setExpansionWaitPanelValue] = useState(0);
153
+ const [expansionWaitPanelMaxValue, setExpansionWaitPanelMaxValue] = useState(0);
154
+ const [expansionAbortController, setExpansionAbortController] = useState(undefined);
155
+ // Ref to track last loaded input to prevent unnecessary reloads
156
+ const lastLoadedInputRef = React.useRef('');
157
+ // Ref to track if user has manually expanded/collapsed static items
158
+ const userInteractedWithStaticItemsRef = React.useRef(false);
159
+ /**
160
+ * Generate a stable key from inputDcmts to detect real changes
161
+ */
162
+ const getInputKey = useCallback(() => {
163
+ if (!inputDcmts || inputDcmts.length === 0)
164
+ return '';
165
+ return inputDcmts.map(d => `${d.TID}-${d.DID}`).join('|') + `|${isForMaster}`;
166
+ }, [inputDcmts, isForMaster]);
167
+ // Load document types
168
+ useEffect(() => {
169
+ const loadDcmtTypes = async () => {
170
+ const types = await DcmtTypeListCacheService.GetAllWithoutMetadataAsync() || [];
171
+ setDcmtTypes(types);
172
+ };
173
+ loadDcmtTypes();
174
+ }, []);
175
+ useEffect(() => {
176
+ setShowZeroDcmts(initialShowZeroDcmts);
177
+ }, [initialShowZeroDcmts]);
178
+ /**
179
+ * Recursively retrieve detail documents (adapted from TMMasterDetailDcmts.tsx)
180
+ */
181
+ const getDetailDcmtsAsync = useCallback(async (mTID, mDID, maxLevel) => {
182
+ const items = [];
183
+ if (!mTID)
184
+ return [];
185
+ if (!mDID)
186
+ return [];
187
+ if (maxLevel <= 0)
188
+ return [];
189
+ const dcmtTypeHasRel = await hasDetailRelations(mTID);
190
+ if (!dcmtTypeHasRel)
191
+ return [];
192
+ try {
193
+ const searchEngine = SDK_Globals.tmSession?.NewSearchEngine();
194
+ if (!searchEngine)
195
+ return items;
196
+ const results = await searchEngine.GetAllDetailDcmtsAsync(mTID, mDID) ?? [];
197
+ for (const searchResult of results) {
198
+ // Skip if allowedTIDs is set and this TID is not allowed
199
+ if (allowedTIDs && searchResult.fromTID && !allowedTIDs.includes(searchResult.fromTID)) {
200
+ continue;
201
+ }
202
+ const containerGUID = genUniqueId();
203
+ const dtd = await DcmtTypeListCacheService.GetAsync(searchResult.fromTID);
204
+ const newDcmtTypeContainer = {
205
+ tid: searchResult.fromTID,
206
+ dtd: dtd,
207
+ did: undefined,
208
+ key: `${searchResult.fromTID}_${searchResult.relationID}_${mTID}_${mDID}_${containerGUID}`,
209
+ name: searchResult.fromName || dtd?.name || `TID: ${searchResult.fromTID}`,
210
+ isContainer: true,
211
+ relationId: searchResult.relationID,
212
+ isManyToMany: await isManyToManyRelation(searchResult.relationID),
213
+ searchResult: [searchResult],
214
+ isZero: (searchResult.dcmtsFound ?? 0) <= 0,
215
+ itemsCount: (searchResult.dcmtsFound ?? 0),
216
+ expanded: false,
217
+ hidden: false
218
+ };
219
+ const source = await searchResultToDataSource(searchResult);
220
+ if (source && source.length > 0) {
221
+ const dcmtDetails = [];
222
+ for (const row of source) {
223
+ const rowGUID = genUniqueId();
224
+ const tid = row?.TID?.value;
225
+ const did = row?.DID?.value;
226
+ dcmtDetails.push({
227
+ tid: tid,
228
+ did: did,
229
+ key: `${tid}_${did}_${searchResult.relationID}_${mTID}_${mDID}_${rowGUID}`,
230
+ isDcmt: true,
231
+ isContainer: false,
232
+ isZero: false, // Documents are never zero (they exist)
233
+ values: row,
234
+ searchResult: [searchResult],
235
+ itemsCount: 0,
236
+ expanded: false,
237
+ hidden: false,
238
+ name: row?.SYS_Abstract?.value || row?.SYS_SUBJECT?.value || `Documento ${did}`
239
+ // Note: Recursive loading on expansion is handled by calculateItemsForNode
240
+ });
241
+ }
242
+ newDcmtTypeContainer.items = dcmtDetails;
243
+ }
244
+ items.push(newDcmtTypeContainer);
245
+ }
246
+ }
247
+ catch (error) {
248
+ console.error('❌ Error loading detail documents:', error);
249
+ }
250
+ return items;
251
+ }, [allowedTIDs]);
252
+ /**
253
+ * Recursively retrieve master documents
254
+ */
255
+ const getMasterDcmtsAsync = useCallback(async (dTID, dDID, maxLevel) => {
256
+ const items = [];
257
+ if (!dTID)
258
+ return [];
259
+ if (!dDID)
260
+ return [];
261
+ if (maxLevel <= 0)
262
+ return [];
263
+ const dcmtTypeHasRel = await hasMasterRelations(dTID);
264
+ if (!dcmtTypeHasRel)
265
+ return [];
266
+ try {
267
+ const searchEngine = SDK_Globals.tmSession?.NewSearchEngine();
268
+ if (!searchEngine)
269
+ return items;
270
+ const results = await searchEngine.GetAllMasterDcmtsAsync(dTID, dDID) ?? [];
271
+ for (const searchResult of results) {
272
+ // Skip if allowedTIDs is set and this TID is not allowed
273
+ if (allowedTIDs && searchResult.fromTID && !allowedTIDs.includes(searchResult.fromTID)) {
274
+ continue;
275
+ }
276
+ const containerGUID = genUniqueId();
277
+ const dtd = await DcmtTypeListCacheService.GetAsync(searchResult.fromTID);
278
+ const newDcmtTypeContainer = {
279
+ tid: searchResult.fromTID,
280
+ dtd: dtd,
281
+ did: undefined,
282
+ key: `${searchResult.fromTID}_${searchResult.relationID}_${dTID}_${dDID}_${containerGUID}`,
283
+ name: searchResult.fromName || dtd?.name || `TID: ${searchResult.fromTID}`,
284
+ isContainer: true,
285
+ relationId: searchResult.relationID,
286
+ isManyToMany: await isManyToManyRelation(searchResult.relationID),
287
+ searchResult: [searchResult],
288
+ isZero: (searchResult.dcmtsFound ?? 0) <= 0,
289
+ itemsCount: (searchResult.dcmtsFound ?? 0),
290
+ expanded: false,
291
+ hidden: false
292
+ };
293
+ const source = await searchResultToDataSource(searchResult);
294
+ if (source && source.length > 0) {
295
+ const dcmtMasters = [];
296
+ for (const row of source) {
297
+ const rowGUID = genUniqueId();
298
+ const tid = row?.TID?.value;
299
+ const did = row?.DID?.value;
300
+ dcmtMasters.push({
301
+ tid: tid,
302
+ did: did,
303
+ key: `${tid}_${did}_${searchResult.relationID}_${dTID}_${dDID}_${rowGUID}`,
304
+ isDcmt: true,
305
+ isContainer: false,
306
+ isZero: false, // Documents are never zero (they exist)
307
+ values: row,
308
+ searchResult: [searchResult],
309
+ itemsCount: 0,
310
+ expanded: false,
311
+ hidden: false,
312
+ name: row?.SYS_Abstract?.value || row?.SYS_SUBJECT?.value || `Documento ${did}`
313
+ // Note: Recursive loading on expansion is handled by calculateItemsForNode
314
+ });
315
+ }
316
+ newDcmtTypeContainer.items = dcmtMasters;
317
+ }
318
+ items.push(newDcmtTypeContainer);
319
+ }
320
+ }
321
+ catch (error) {
322
+ console.error('❌ Error loading master documents:', error);
323
+ }
324
+ return items;
325
+ }, [allowedTIDs]);
326
+ /**
327
+ * Update hidden property based on showZeroDcmts (original simple logic)
328
+ */
329
+ const updateHiddenProperty = useCallback((nodes) => {
330
+ return nodes.map(node => {
331
+ const updatedNode = { ...node, hidden: !showZeroDcmts && node.isZero };
332
+ if (node.items) {
333
+ updatedNode.items = updateHiddenProperty(node.items);
334
+ }
335
+ return updatedNode;
336
+ });
337
+ }, [showZeroDcmts]);
338
+ /**
339
+ * Main data loading function
340
+ */
341
+ const loadData = useCallback(async () => {
342
+ if (!inputDcmts || inputDcmts.length === 0 || dcmtTypes.length === 0) {
343
+ setTreeData([]);
344
+ return;
345
+ }
346
+ const tree = [];
347
+ let processedCount = 0;
348
+ for (const dcmt of inputDcmts) {
349
+ // Check for abort
350
+ if (abortController.signal.aborted) {
351
+ console.warn(`⚠️ Operation aborted. Processed ${processedCount} documents`);
352
+ break;
353
+ }
354
+ // Update wait panel progress
355
+ setWaitPanelTextPrimary(`Caricamento correlazione ${processedCount + 1} di ${inputDcmts.length}`);
356
+ const searchEngine = SDK_Globals.tmSession?.NewSearchEngine();
357
+ if (!searchEngine)
358
+ continue;
359
+ // Load document metadata
360
+ const result = await searchEngine.GetMetadataAsync(dcmt.TID, dcmt.DID, false);
361
+ const dtd = await DcmtTypeListCacheService.GetAsync(dcmt.TID);
362
+ // Parse document values
363
+ const docValues = await searchResultToDataSource(result);
364
+ const docRow = docValues.length > 0 ? docValues[0] : undefined;
365
+ // Generate unique GUID for this container
366
+ const containerGUID = genUniqueId();
367
+ // ========================================================================
368
+ // MODALITÀ MASTER CON NAVIGAZIONE ORIGINALE (invertMasterNavigation=false)
369
+ // ========================================================================
370
+ if (isForMaster && !invertMasterNavigation) {
371
+ // Carica i master documents
372
+ const masterDocs = await getMasterDcmtsAsync(dcmt.TID, dcmt.DID, maxDepthLevel);
373
+ // Per ogni master, carica i suoi detail (incluso il documento corrente)
374
+ for (const masterContainer of masterDocs) {
375
+ if (!masterContainer.items)
376
+ continue;
377
+ // Per ogni master document nel container, carica i detail
378
+ for (const masterDoc of masterContainer.items) {
379
+ if (masterDoc.tid && masterDoc.did) {
380
+ // Carica i detail del master (incluso il documento di partenza)
381
+ const detailDocs = await getDetailDcmtsAsync(masterDoc.tid, masterDoc.did, 1);
382
+ masterDoc.items = detailDocs;
383
+ masterDoc.itemsCount = detailDocs.length;
384
+ masterDoc.isLoaded = true;
385
+ }
386
+ }
387
+ }
388
+ // Aggiungi i master come root
389
+ tree.push(...masterDocs);
390
+ }
391
+ // ========================================================================
392
+ // MODALITÀ STANDARD (detail o master invertito)
393
+ // ========================================================================
394
+ else {
395
+ // Load related documents (detail or master based on isForMaster flag)
396
+ const relatedDocs = isForMaster
397
+ ? await getMasterDcmtsAsync(dcmt.TID, dcmt.DID, maxDepthLevel)
398
+ : await getDetailDcmtsAsync(dcmt.TID, dcmt.DID, maxDepthLevel);
399
+ // Se showMainDocument è false, mostra i container dei dettagli direttamente sotto il container principale
400
+ if (!showMainDocument) {
401
+ // Create type container that contains detail containers directly
402
+ const typeContainer = {
403
+ key: `${isForMaster ? 'detail' : 'master'}-type-${dcmt.TID}-${containerGUID}`,
404
+ name: labelMainContainer || result?.fromName || dtd?.name || `TID: ${dcmt.TID}`,
405
+ tid: dcmt.TID,
406
+ dtd,
407
+ isContainer: true,
408
+ isRoot: true,
409
+ isLoaded: true,
410
+ isZero: false,
411
+ searchResult: result ? [result] : [],
412
+ items: relatedDocs, // Directly show detail containers
413
+ itemsCount: relatedDocs.length,
414
+ expanded: tree.length === 0,
415
+ hidden: false
416
+ };
417
+ tree.push(typeContainer);
418
+ }
419
+ else {
420
+ // MODALITÀ ORIGINALE: mostra il documento master come nodo intermedio
421
+ // Create document node WITH VALUES
422
+ const docNode = {
423
+ key: `${isForMaster ? 'detail' : 'master'}-doc-${dcmt.TID}-${dcmt.DID}-${containerGUID}`,
424
+ name: docRow?.SYS_Abstract?.value || docRow?.SYS_SUBJECT?.value || `Documento ${isForMaster ? 'Dettaglio' : 'Master'}`,
425
+ tid: dcmt.TID,
426
+ did: dcmt.DID,
427
+ isDcmt: true,
428
+ isContainer: false,
429
+ expanded: tree.length === 0,
430
+ isZero: dcmt.DID === 0,
431
+ isMaster: !isForMaster,
432
+ isRoot: true,
433
+ isLoaded: true,
434
+ hidden: false,
435
+ values: docRow,
436
+ searchResult: result ? [result] : [],
437
+ items: relatedDocs,
438
+ itemsCount: relatedDocs.length
439
+ };
440
+ // Create type container with unique key
441
+ const typeContainer = {
442
+ key: `${isForMaster ? 'detail' : 'master'}-type-${dcmt.TID}-${containerGUID}`,
443
+ name: labelMainContainer || result?.fromName || dtd?.name || `TID: ${dcmt.TID}`,
444
+ tid: dcmt.TID,
445
+ dtd,
446
+ isContainer: true,
447
+ isRoot: true,
448
+ isLoaded: true,
449
+ isZero: false, // Type container is never zero (contains documents)
450
+ searchResult: result ? [result] : [],
451
+ items: [docNode],
452
+ itemsCount: 1,
453
+ expanded: tree.length === 0,
454
+ hidden: false
455
+ };
456
+ tree.push(typeContainer);
457
+ }
458
+ }
459
+ // Update progress counter
460
+ processedCount++;
461
+ setWaitPanelValuePrimary(processedCount);
462
+ }
463
+ setTreeData(updateHiddenProperty(tree));
464
+ }, [inputDcmts, dcmtTypes, maxDepthLevel, isForMaster, invertMasterNavigation, getDetailDcmtsAsync, getMasterDcmtsAsync, abortController, updateHiddenProperty, showMainDocument, labelMainContainer]);
465
+ /**
466
+ * Merge main tree data with additional static items
467
+ */
468
+ const mergedTreeData = useMemo(() => {
469
+ if (!additionalStaticItems || additionalStaticItems.length === 0) {
470
+ return treeData;
471
+ }
472
+ // Use staticItemsState if available (preserves expanded state), otherwise use fresh additionalStaticItems
473
+ const itemsToMerge = staticItemsState.length > 0 ? staticItemsState : additionalStaticItems;
474
+ // Append additional static items at the end
475
+ // NOTE: Do NOT call updateHiddenProperty on static items - they are pre-processed by the parent
476
+ // and may contain custom properties that would be lost by the spread operator
477
+ return [...treeData, ...itemsToMerge];
478
+ }, [treeData, additionalStaticItems, staticItemsState]);
479
+ /**
480
+ * Load data when inputs change
481
+ */
482
+ useEffect(() => {
483
+ if (!inputDcmts || inputDcmts.length === 0 || dcmtTypes.length === 0) {
484
+ setTreeData([]);
485
+ lastLoadedInputRef.current = '';
486
+ userInteractedWithStaticItemsRef.current = false; // Reset interaction flag
487
+ return;
488
+ }
489
+ // Generate current input key
490
+ const currentKey = getInputKey();
491
+ // Skip if we already loaded this exact data
492
+ if (currentKey === lastLoadedInputRef.current && treeData.length > 0) {
493
+ return;
494
+ }
495
+ // Mark as loading this key
496
+ lastLoadedInputRef.current = currentKey;
497
+ // Reset interaction flag when loading new data
498
+ userInteractedWithStaticItemsRef.current = false;
499
+ setShowWaitPanel(true);
500
+ setWaitPanelMaxValuePrimary(inputDcmts.length);
501
+ setWaitPanelValuePrimary(0);
502
+ // Call loadData and use .then() instead of await to allow React to render
503
+ loadData().then(() => {
504
+ setShowWaitPanel(false);
505
+ setWaitPanelTextPrimary('');
506
+ setWaitPanelMaxValuePrimary(0);
507
+ setWaitPanelValuePrimary(0);
508
+ });
509
+ }, [inputDcmts, dcmtTypes, maxDepthLevel, getInputKey, loadData, treeData.length]);
510
+ /**
511
+ * Update tree when showZeroDcmts changes
512
+ */
513
+ useEffect(() => {
514
+ setTreeData(prevData => updateHiddenProperty(prevData));
515
+ }, [showZeroDcmts, updateHiddenProperty]);
516
+ /**
517
+ * Sync static items state when additionalStaticItems change
518
+ * IMPORTANT: Only update if user hasn't manually interacted with the tree,
519
+ * to preserve expand/collapse state
520
+ */
521
+ useEffect(() => {
522
+ // If user hasn't interacted yet, sync with incoming additionalStaticItems
523
+ if (!userInteractedWithStaticItemsRef.current) {
524
+ setStaticItemsState(additionalStaticItems || []);
525
+ }
526
+ // If user has interacted, we need to merge the new data with existing state
527
+ // to preserve expanded/collapsed state while updating content
528
+ else if (additionalStaticItems && additionalStaticItems.length > 0) {
529
+ setStaticItemsState(prevState => {
530
+ // Create a map of existing state by key
531
+ const stateMap = new Map(prevState.map(item => [item.key, item]));
532
+ // Merge: use existing state if available (preserves expanded), otherwise use new item
533
+ return additionalStaticItems.map(newItem => {
534
+ const existingItem = stateMap.get(newItem.key);
535
+ if (existingItem) {
536
+ // Preserve expanded state but update content
537
+ return {
538
+ ...newItem,
539
+ expanded: existingItem.expanded,
540
+ items: newItem.items // Always use fresh items from parent
541
+ };
542
+ }
543
+ return newItem;
544
+ });
545
+ });
546
+ }
547
+ }, [additionalStaticItems]);
548
+ /**
549
+ * Calculate items for node when expanded (lazy loading)
550
+ * Note: additionalStaticItems are already fully loaded, so skip calculation for them
551
+ */
552
+ const calculateItemsForNode = useCallback(async (node) => {
553
+ // Skip calculation for separator (it has no children)
554
+ if (node.isSeparator) {
555
+ return undefined;
556
+ }
557
+ // Skip calculation for additional static items (they're pre-loaded and should not trigger dynamic loading)
558
+ if (node.isStaticItem || node.isAdditionalContainer || node.isAdditional) {
559
+ return node.items;
560
+ }
561
+ // If it's a document, return existing items
562
+ if (node.isDcmt)
563
+ return node.items;
564
+ // If container is already loaded, return items
565
+ if (node.isLoaded)
566
+ return node.items;
567
+ const newAbortController = new AbortController();
568
+ setExpansionAbortController(newAbortController);
569
+ const itemsToLoad = node.items?.length ?? 0;
570
+ setShowExpansionWaitPanel(true);
571
+ setExpansionWaitPanelMaxValue(itemsToLoad);
572
+ setExpansionWaitPanelValue(0);
573
+ setExpansionWaitPanelText(`Caricamento documenti correlati...`);
574
+ try {
575
+ const newItems = [];
576
+ let processedCount = 0;
577
+ for (const dcmt of node.items ?? []) {
578
+ if (newAbortController.signal.aborted) {
579
+ console.log('Folder expansion aborted by user');
580
+ return node.items;
581
+ }
582
+ const item = { ...dcmt };
583
+ if (item.tid && item.did && !item.isLoaded) {
584
+ // Update progress
585
+ processedCount++;
586
+ setExpansionWaitPanelValue(processedCount);
587
+ setExpansionWaitPanelText(`Caricamento ${processedCount} di ${itemsToLoad}...`);
588
+ // Nella modalità originale (invertMasterNavigation=false),
589
+ // i documenti detail non devono caricare i master come figli
590
+ if (isForMaster && !invertMasterNavigation) {
591
+ // Carica i detail dei detail (navigazione naturale detail→detail)
592
+ const loadedItems = await getDetailDcmtsAsync(item.tid, item.did, 1);
593
+ item.items = updateHiddenProperty(loadedItems);
594
+ }
595
+ else {
596
+ // Modalità standard o invertita
597
+ const loadedItems = isForMaster
598
+ ? await getMasterDcmtsAsync(item.tid, item.did, 1)
599
+ : await getDetailDcmtsAsync(item.tid, item.did, 1);
600
+ item.items = updateHiddenProperty(loadedItems);
601
+ }
602
+ item.isLoaded = true;
603
+ }
604
+ newItems.push(item);
605
+ }
606
+ return newItems;
607
+ }
608
+ catch (error) {
609
+ console.error('Error loading folder contents:', error);
610
+ return node.items;
611
+ }
612
+ finally {
613
+ setShowExpansionWaitPanel(false);
614
+ setExpansionAbortController(undefined);
615
+ }
616
+ }, [isForMaster, invertMasterNavigation, getDetailDcmtsAsync, getMasterDcmtsAsync, updateHiddenProperty]);
617
+ /**
618
+ * Default item renderer with metadata display (adapted from TMMasterDetailDcmts.tsx)
619
+ */
620
+ const defaultItemRender = useCallback((item) => {
621
+ if (!item)
622
+ return _jsx("span", { children: "-" });
623
+ const handleDoubleClick = (e) => {
624
+ if (item.isContainer || !item.tid || !item.did)
625
+ return;
626
+ e.stopPropagation();
627
+ onDocumentDoubleClick?.(item.tid, item.did, item.name);
628
+ };
629
+ // Container rendering
630
+ if (item.isContainer || !item.isDcmt) {
631
+ const defaultContainerStyle = {
632
+ display: 'flex',
633
+ alignItems: 'center',
634
+ gap: '10px',
635
+ height: '32px',
636
+ padding: '6px 0',
637
+ opacity: item.isZero ? 0.4 : 1,
638
+ transition: 'opacity 0.2s ease-in-out'
639
+ };
640
+ // Se è il container principale (root) e showMainDocument è false,
641
+ // non mostrare il badge perché conterrebbe il numero di sotto-container, non di documenti
642
+ const shouldShowBadge = !(item.isRoot && !showMainDocument);
643
+ const defaultContent = (_jsxs(_Fragment, { children: [_jsx("div", { style: { position: 'relative' }, children: _jsx(IconFolder, { color: item.isManyToMany ? '#ff8f44' : TMColors.iconLight, fontSize: 24 }) }), _jsxs(StyledDivHorizontal, { style: { gap: 5, overflow: 'hidden', whiteSpace: 'nowrap', textOverflow: 'ellipsis' }, children: [_jsx("p", { style: {
644
+ whiteSpace: 'nowrap',
645
+ textOverflow: 'ellipsis',
646
+ fontSize: '1rem',
647
+ color: 'inherit'
648
+ }, children: item.name }), shouldShowBadge && (_jsx(StyledBadge, { "$backgroundColor": TMColors.info, children: item.items?.length ?? 0 }))] })] }));
649
+ // Se è il container principale (root) e abbiamo un custom renderer, usalo
650
+ const content = (item.isRoot && customMainContainerContent)
651
+ ? customMainContainerContent(item, defaultContent)
652
+ : defaultContent;
653
+ return (_jsx("div", { style: defaultContainerStyle, children: content }));
654
+ }
655
+ // Document rendering with full metadata display
656
+ const defaultDocumentStyle = {
657
+ minWidth: '90px',
658
+ width: '100%',
659
+ display: 'flex',
660
+ marginLeft: '5px',
661
+ marginTop: '5px',
662
+ marginBottom: '5px',
663
+ gap: '15px',
664
+ alignItems: 'center',
665
+ cursor: 'pointer',
666
+ userSelect: 'none',
667
+ opacity: item.isZero ? 0.4 : 1,
668
+ transition: 'opacity 0.2s ease-in-out'
669
+ };
670
+ const documentStyle = customDocumentStyle
671
+ ? { ...defaultDocumentStyle, ...customDocumentStyle(item) }
672
+ : defaultDocumentStyle;
673
+ const defaultMetadataContent = item.values && (_jsx(StyledDivHorizontal, { style: {
674
+ fontSize: '1rem',
675
+ overflow: 'hidden',
676
+ flex: 1,
677
+ minWidth: 0,
678
+ whiteSpace: 'nowrap'
679
+ }, children: getDcmtDisplayValue(item.values).map((key, index) => {
680
+ const md = item.values?.[key]?.md;
681
+ const value = item.values?.[key]?.value;
682
+ const displayValues = getDcmtDisplayValue(item.values);
683
+ const isLast = index === displayValues.length - 1;
684
+ return (_jsxs(StyledDivHorizontal, { style: {
685
+ flexShrink: isLast ? 1 : 0,
686
+ minWidth: isLast ? 0 : 'auto',
687
+ overflow: isLast ? 'hidden' : 'visible'
688
+ }, children: [index > 0 && _jsx("span", { style: { margin: '0 5px', color: '#999' }, children: "\u2022" }), showMetadataNames && (_jsxs("span", { style: { color: '#666', marginRight: '5px' }, children: [md?.name || key, ":"] })), md?.dataDomain === MetadataDataDomains.DataList ? (_jsx(TMDataListItemViewer, { dataListId: md.dataListID, viewMode: md.dataListViewMode, value: value })) : md?.dataDomain === MetadataDataDomains.UserID ? (_jsx(TMUserIdViewer, { userId: value, showIcon: true, noneSelectionText: '' })) : (_jsx("span", { style: {
689
+ fontWeight: 500,
690
+ overflow: isLast ? 'hidden' : 'visible',
691
+ textOverflow: isLast ? 'ellipsis' : 'clip',
692
+ whiteSpace: 'nowrap'
693
+ }, children: value }))] }, `${key}_${index}`));
694
+ }) }));
695
+ const metadataContent = customDocumentContent
696
+ ? customDocumentContent(item, defaultMetadataContent || _jsx(_Fragment, {}))
697
+ : defaultMetadataContent;
698
+ return (_jsxs("div", { onDoubleClick: handleDoubleClick, style: documentStyle, children: [item.did && showCurrentDcmtIndicator && item.did === inputDcmts?.[0].DID ? _jsx(IconBackhandIndexPointingRight, { fontSize: 22, overflow: 'visible' }) : _jsx(_Fragment, {}), item.values && (_jsx(TMDcmtIcon, { tid: item.values?.TID?.value, did: item.values?.DID?.value, fileExtension: item.values?.FILEEXT?.value, fileCount: item.values?.FILECOUNT?.value, isLexProt: item.values?.IsLexProt?.value, isMail: item.values?.ISMAIL?.value, isShared: item.values?.ISSHARED?.value, isSigned: item.values?.ISSIGNED?.value, downloadMode: 'openInNewWindow' })), metadataContent] }));
699
+ }, [onDocumentDoubleClick, showCurrentDcmtIndicator, inputDcmts, customMainContainerContent, customDocumentStyle, customDocumentContent, showMetadataNames, showMainDocument]);
700
+ /**
701
+ * Wrapper renderer that handles custom rendering if provided
702
+ */
703
+ const finalItemRender = useCallback((item) => {
704
+ if (!item)
705
+ return _jsx("span", { children: "-" });
706
+ // If customItemRender is provided, try it first
707
+ if (customItemRender) {
708
+ const customResult = customItemRender(item);
709
+ // If custom renderer returns something (not undefined), use it
710
+ if (customResult !== undefined) {
711
+ return customResult;
712
+ }
713
+ }
714
+ // Otherwise use default renderer
715
+ return defaultItemRender(item);
716
+ }, [customItemRender, defaultItemRender]);
717
+ /**
718
+ * Handle focused item changed
719
+ */
720
+ const handleFocusedItemChanged = useCallback((item) => {
721
+ onFocusedItemChanged?.(item);
722
+ }, [onFocusedItemChanged]);
723
+ /**
724
+ * Handle selected items changed
725
+ */
726
+ const handleSelectedItemsChanged = useCallback((items) => {
727
+ onSelectedItemsChanged?.(items);
728
+ }, [onSelectedItemsChanged]);
729
+ /**
730
+ * Handle data changed - separate static items from dynamic tree data
731
+ */
732
+ const handleDataChanged = useCallback((updatedData) => {
733
+ // Separate static items, separator, and dynamic correlations
734
+ const dynamicItems = updatedData.filter(item => !item.isStaticItem && !item.isSeparator);
735
+ const staticItems = updatedData.filter(item => item.isStaticItem);
736
+ setTreeData(dynamicItems);
737
+ setStaticItemsState(staticItems); // Preserve static items state (expanded/collapsed)
738
+ // Mark that user has interacted with the tree (expanded/collapsed nodes)
739
+ userInteractedWithStaticItemsRef.current = true;
740
+ }, []);
741
+ if (showWaitPanel) {
742
+ return _jsx("div", { style: { padding: '20px', textAlign: 'center' }, children: _jsx(TMWaitPanel, { title: 'Caricamento documenti dettaglio', showPrimary: true, textPrimary: waitPanelTextPrimary, valuePrimary: waitPanelValuePrimary, maxValuePrimary: waitPanelMaxValuePrimary, isCancelable: true, abortController: abortController, onAbortClick: (abortController) => { setTimeout(() => { abortController?.abort(); }, 1000); } }) });
743
+ }
744
+ if (mergedTreeData.length === 0) {
745
+ return _jsx("div", { style: { padding: '20px', textAlign: 'center', color: '#666' }, children: "Nessuna relazione disponibile." });
746
+ }
747
+ return (_jsxs(_Fragment, { children: [_jsx(TMTreeView, { dataSource: mergedTreeData, itemRender: finalItemRender, calculateItemsForNode: calculateItemsForNode, onDataChanged: handleDataChanged, focusedItem: focusedItem, onFocusedItemChanged: handleFocusedItemChanged, allowMultipleSelection: allowMultipleSelection, selectedItems: selectedItems, onSelectionChanged: handleSelectedItemsChanged }), showExpansionWaitPanel && (_jsx(TMWaitPanel, { title: isForMaster ? 'Caricamento documenti master' : 'Caricamento documenti dettaglio', showPrimary: true, textPrimary: expansionWaitPanelText, valuePrimary: expansionWaitPanelValue, maxValuePrimary: expansionWaitPanelMaxValue, isCancelable: true, abortController: expansionAbortController, onAbortClick: (abortController) => {
748
+ setTimeout(() => {
749
+ abortController?.abort();
750
+ }, 100);
751
+ } }))] }));
752
+ };
753
+ export default TMRelationViewer;