@topconsultnpm/sdkui-react 6.19.0-dev1.10

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 (682) 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 +62 -0
  306. package/lib/components/base/Styled.js +297 -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/TMDataGrid.d.ts +56 -0
  328. package/lib/components/base/TMDataGrid.js +237 -0
  329. package/lib/components/base/TMDataGridExportForm.d.ts +15 -0
  330. package/lib/components/base/TMDataGridExportForm.js +209 -0
  331. package/lib/components/base/TMDeviceProvider.d.ts +15 -0
  332. package/lib/components/base/TMDeviceProvider.js +41 -0
  333. package/lib/components/base/TMDropDownMenu.d.ts +23 -0
  334. package/lib/components/base/TMDropDownMenu.js +45 -0
  335. package/lib/components/base/TMEditorBase.d.ts +39 -0
  336. package/lib/components/base/TMEditorBase.js +1 -0
  337. package/lib/components/base/TMFileManager.d.ts +45 -0
  338. package/lib/components/base/TMFileManager.js +224 -0
  339. package/lib/components/base/TMFileManagerDataGridView.d.ts +14 -0
  340. package/lib/components/base/TMFileManagerDataGridView.js +89 -0
  341. package/lib/components/base/TMFileManagerThumbnailItems.d.ts +16 -0
  342. package/lib/components/base/TMFileManagerThumbnailItems.js +138 -0
  343. package/lib/components/base/TMFileManagerThumbnailsView.d.ts +17 -0
  344. package/lib/components/base/TMFileManagerThumbnailsView.js +46 -0
  345. package/lib/components/base/TMFileManagerUtils.d.ts +78 -0
  346. package/lib/components/base/TMFileManagerUtils.js +207 -0
  347. package/lib/components/base/TMFloatingToolbar.d.ts +9 -0
  348. package/lib/components/base/TMFloatingToolbar.js +101 -0
  349. package/lib/components/base/TMLayout.d.ts +54 -0
  350. package/lib/components/base/TMLayout.js +201 -0
  351. package/lib/components/base/TMList.d.ts +9 -0
  352. package/lib/components/base/TMList.js +54 -0
  353. package/lib/components/base/TMListView.d.ts +42 -0
  354. package/lib/components/base/TMListView.js +387 -0
  355. package/lib/components/base/TMModal.d.ts +16 -0
  356. package/lib/components/base/TMModal.js +70 -0
  357. package/lib/components/base/TMPanel.d.ts +32 -0
  358. package/lib/components/base/TMPanel.js +181 -0
  359. package/lib/components/base/TMPopUp.d.ts +33 -0
  360. package/lib/components/base/TMPopUp.js +280 -0
  361. package/lib/components/base/TMProgressBar.d.ts +11 -0
  362. package/lib/components/base/TMProgressBar.js +32 -0
  363. package/lib/components/base/TMResizableMenu.d.ts +20 -0
  364. package/lib/components/base/TMResizableMenu.js +98 -0
  365. package/lib/components/base/TMRightSidebar.d.ts +19 -0
  366. package/lib/components/base/TMRightSidebar.js +80 -0
  367. package/lib/components/base/TMShowAllOrMaxItemsButton.d.ts +8 -0
  368. package/lib/components/base/TMShowAllOrMaxItemsButton.js +20 -0
  369. package/lib/components/base/TMSpinner.d.ts +14 -0
  370. package/lib/components/base/TMSpinner.js +160 -0
  371. package/lib/components/base/TMTab.d.ts +20 -0
  372. package/lib/components/base/TMTab.js +42 -0
  373. package/lib/components/base/TMToggleButton.d.ts +10 -0
  374. package/lib/components/base/TMToggleButton.js +58 -0
  375. package/lib/components/base/TMToolbarCard.d.ts +19 -0
  376. package/lib/components/base/TMToolbarCard.js +51 -0
  377. package/lib/components/base/TMTooltip.d.ts +14 -0
  378. package/lib/components/base/TMTooltip.js +20 -0
  379. package/lib/components/base/TMTreeView.d.ts +32 -0
  380. package/lib/components/base/TMTreeView.js +355 -0
  381. package/lib/components/base/TMUserAvatar.d.ts +8 -0
  382. package/lib/components/base/TMUserAvatar.js +34 -0
  383. package/lib/components/base/TMVilViewer.d.ts +5 -0
  384. package/lib/components/base/TMVilViewer.js +22 -0
  385. package/lib/components/base/TMWaitPanel.d.ts +32 -0
  386. package/lib/components/base/TMWaitPanel.js +44 -0
  387. package/lib/components/choosers/TMCultureIDPicker.d.ts +9 -0
  388. package/lib/components/choosers/TMCultureIDPicker.js +72 -0
  389. package/lib/components/choosers/TMDataListItemChooser.d.ts +17 -0
  390. package/lib/components/choosers/TMDataListItemChooser.js +49 -0
  391. package/lib/components/choosers/TMDataListItemPicker.d.ts +9 -0
  392. package/lib/components/choosers/TMDataListItemPicker.js +96 -0
  393. package/lib/components/choosers/TMDcmtTypeChooser.d.ts +25 -0
  394. package/lib/components/choosers/TMDcmtTypeChooser.js +61 -0
  395. package/lib/components/choosers/TMDiskChooser.d.ts +10 -0
  396. package/lib/components/choosers/TMDiskChooser.js +41 -0
  397. package/lib/components/choosers/TMDistinctValues.d.ts +21 -0
  398. package/lib/components/choosers/TMDistinctValues.js +140 -0
  399. package/lib/components/choosers/TMDynDataListItemChooser.d.ts +40 -0
  400. package/lib/components/choosers/TMDynDataListItemChooser.js +159 -0
  401. package/lib/components/choosers/TMGroupChooser.d.ts +7 -0
  402. package/lib/components/choosers/TMGroupChooser.js +37 -0
  403. package/lib/components/choosers/TMInvoiceRetrieveFormats.d.ts +4 -0
  404. package/lib/components/choosers/TMInvoiceRetrieveFormats.js +22 -0
  405. package/lib/components/choosers/TMMetadataChooser.d.ts +51 -0
  406. package/lib/components/choosers/TMMetadataChooser.js +134 -0
  407. package/lib/components/choosers/TMOrderRetrieveFormats.d.ts +4 -0
  408. package/lib/components/choosers/TMOrderRetrieveFormats.js +22 -0
  409. package/lib/components/choosers/TMPathChooser.d.ts +12 -0
  410. package/lib/components/choosers/TMPathChooser.js +147 -0
  411. package/lib/components/choosers/TMRelationChooser.d.ts +31 -0
  412. package/lib/components/choosers/TMRelationChooser.js +94 -0
  413. package/lib/components/choosers/TMUserChooser.d.ts +40 -0
  414. package/lib/components/choosers/TMUserChooser.js +141 -0
  415. package/lib/components/editors/TMCheckBox.d.ts +9 -0
  416. package/lib/components/editors/TMCheckBox.js +90 -0
  417. package/lib/components/editors/TMDateBox.d.ts +17 -0
  418. package/lib/components/editors/TMDateBox.js +75 -0
  419. package/lib/components/editors/TMDropDown.d.ts +10 -0
  420. package/lib/components/editors/TMDropDown.js +62 -0
  421. package/lib/components/editors/TMEditorStyled.d.ts +41 -0
  422. package/lib/components/editors/TMEditorStyled.js +90 -0
  423. package/lib/components/editors/TMFormulaEditor.d.ts +49 -0
  424. package/lib/components/editors/TMFormulaEditor.js +727 -0
  425. package/lib/components/editors/TMHtmlContentDisplay.d.ts +7 -0
  426. package/lib/components/editors/TMHtmlContentDisplay.js +78 -0
  427. package/lib/components/editors/TMHtmlEditor.d.ts +33 -0
  428. package/lib/components/editors/TMHtmlEditor.js +143 -0
  429. package/lib/components/editors/TMLocalizedTextBox.d.ts +19 -0
  430. package/lib/components/editors/TMLocalizedTextBox.js +125 -0
  431. package/lib/components/editors/TMMetadataEditor.d.ts +29 -0
  432. package/lib/components/editors/TMMetadataEditor.js +140 -0
  433. package/lib/components/editors/TMMetadataValues.d.ts +46 -0
  434. package/lib/components/editors/TMMetadataValues.js +480 -0
  435. package/lib/components/editors/TMRadioButton.d.ts +10 -0
  436. package/lib/components/editors/TMRadioButton.js +57 -0
  437. package/lib/components/editors/TMSummary.d.ts +20 -0
  438. package/lib/components/editors/TMSummary.js +92 -0
  439. package/lib/components/editors/TMTextArea.d.ts +17 -0
  440. package/lib/components/editors/TMTextArea.js +155 -0
  441. package/lib/components/editors/TMTextBox.d.ts +20 -0
  442. package/lib/components/editors/TMTextBox.js +249 -0
  443. package/lib/components/editors/TMTextExpression.d.ts +25 -0
  444. package/lib/components/editors/TMTextExpression.js +174 -0
  445. package/lib/components/editors/TMTreeDropDown.d.ts +18 -0
  446. package/lib/components/editors/TMTreeDropDown.js +66 -0
  447. package/lib/components/features/archive/TMArchive.d.ts +19 -0
  448. package/lib/components/features/archive/TMArchive.js +162 -0
  449. package/lib/components/features/assistant/ToppyHelpCenter.d.ts +12 -0
  450. package/lib/components/features/assistant/ToppyHelpCenter.js +173 -0
  451. package/lib/components/features/blog/TMBlogCommentForm.d.ts +17 -0
  452. package/lib/components/features/blog/TMBlogCommentForm.js +308 -0
  453. package/lib/components/features/documents/TMBatchUpdateForm.d.ts +17 -0
  454. package/lib/components/features/documents/TMBatchUpdateForm.js +159 -0
  455. package/lib/components/features/documents/TMDcmtBlog.d.ts +8 -0
  456. package/lib/components/features/documents/TMDcmtBlog.js +77 -0
  457. package/lib/components/features/documents/TMDcmtForm.d.ts +50 -0
  458. package/lib/components/features/documents/TMDcmtForm.js +1083 -0
  459. package/lib/components/features/documents/TMDcmtIcon.d.ts +18 -0
  460. package/lib/components/features/documents/TMDcmtIcon.js +93 -0
  461. package/lib/components/features/documents/TMDcmtPreview.d.ts +31 -0
  462. package/lib/components/features/documents/TMDcmtPreview.js +446 -0
  463. package/lib/components/features/documents/TMDragDropOverlay.d.ts +6 -0
  464. package/lib/components/features/documents/TMDragDropOverlay.js +96 -0
  465. package/lib/components/features/documents/TMFileUploader.d.ts +14 -0
  466. package/lib/components/features/documents/TMFileUploader.js +115 -0
  467. package/lib/components/features/documents/TMMasterDetailDcmts.d.ts +19 -0
  468. package/lib/components/features/documents/TMMasterDetailDcmts.js +288 -0
  469. package/lib/components/features/documents/TMRelationViewer.d.ts +71 -0
  470. package/lib/components/features/documents/TMRelationViewer.js +573 -0
  471. package/lib/components/features/search/TMSavedQueryForm.d.ts +9 -0
  472. package/lib/components/features/search/TMSavedQueryForm.js +41 -0
  473. package/lib/components/features/search/TMSavedQuerySelector.d.ts +16 -0
  474. package/lib/components/features/search/TMSavedQuerySelector.js +226 -0
  475. package/lib/components/features/search/TMSearch.d.ts +31 -0
  476. package/lib/components/features/search/TMSearch.js +244 -0
  477. package/lib/components/features/search/TMSearchQueryEditor.d.ts +15 -0
  478. package/lib/components/features/search/TMSearchQueryEditor.js +367 -0
  479. package/lib/components/features/search/TMSearchQueryPanel.d.ts +29 -0
  480. package/lib/components/features/search/TMSearchQueryPanel.js +426 -0
  481. package/lib/components/features/search/TMSearchResult.d.ts +44 -0
  482. package/lib/components/features/search/TMSearchResult.js +1293 -0
  483. package/lib/components/features/search/TMSearchResultFloatingActionButton.d.ts +16 -0
  484. package/lib/components/features/search/TMSearchResultFloatingActionButton.js +50 -0
  485. package/lib/components/features/search/TMSearchResultsMenuItems.d.ts +10 -0
  486. package/lib/components/features/search/TMSearchResultsMenuItems.js +654 -0
  487. package/lib/components/features/search/TMTreeSelector.d.ts +12 -0
  488. package/lib/components/features/search/TMTreeSelector.js +270 -0
  489. package/lib/components/features/wg/TMWGsCopyMoveForm.d.ts +39 -0
  490. package/lib/components/features/wg/TMWGsCopyMoveForm.js +439 -0
  491. package/lib/components/features/workflow/TMWorkflowPopup.d.ts +40 -0
  492. package/lib/components/features/workflow/TMWorkflowPopup.js +273 -0
  493. package/lib/components/features/workflow/diagram/ConnectionComponent.d.ts +14 -0
  494. package/lib/components/features/workflow/diagram/ConnectionComponent.js +90 -0
  495. package/lib/components/features/workflow/diagram/ConnectionForm.d.ts +9 -0
  496. package/lib/components/features/workflow/diagram/ConnectionForm.js +73 -0
  497. package/lib/components/features/workflow/diagram/DiagramItemComponent.d.ts +18 -0
  498. package/lib/components/features/workflow/diagram/DiagramItemComponent.js +264 -0
  499. package/lib/components/features/workflow/diagram/DiagramItemForm.d.ts +10 -0
  500. package/lib/components/features/workflow/diagram/DiagramItemForm.js +681 -0
  501. package/lib/components/features/workflow/diagram/DiagramItemSvgContent.d.ts +12 -0
  502. package/lib/components/features/workflow/diagram/DiagramItemSvgContent.js +97 -0
  503. package/lib/components/features/workflow/diagram/RecipientList.d.ts +27 -0
  504. package/lib/components/features/workflow/diagram/RecipientList.js +203 -0
  505. package/lib/components/features/workflow/diagram/WFDiagram.d.ts +9 -0
  506. package/lib/components/features/workflow/diagram/WFDiagram.js +1666 -0
  507. package/lib/components/features/workflow/diagram/WorkitemRecipientsEditor.d.ts +18 -0
  508. package/lib/components/features/workflow/diagram/WorkitemRecipientsEditor.js +97 -0
  509. package/lib/components/features/workflow/diagram/interfaces.d.ts +126 -0
  510. package/lib/components/features/workflow/diagram/interfaces.js +26 -0
  511. package/lib/components/features/workflow/diagram/metadataParser.d.ts +14 -0
  512. package/lib/components/features/workflow/diagram/metadataParser.js +54 -0
  513. package/lib/components/features/workflow/diagram/queryDescriptorParser.d.ts +3 -0
  514. package/lib/components/features/workflow/diagram/queryDescriptorParser.js +188 -0
  515. package/lib/components/features/workflow/diagram/workflowHelpers.d.ts +122 -0
  516. package/lib/components/features/workflow/diagram/workflowHelpers.js +488 -0
  517. package/lib/components/features/workflow/diagram/xmlParser.d.ts +10 -0
  518. package/lib/components/features/workflow/diagram/xmlParser.js +490 -0
  519. package/lib/components/filesystem/ProgressBar.d.ts +7 -0
  520. package/lib/components/filesystem/ProgressBar.js +25 -0
  521. package/lib/components/forms/Login/ChangePassword.d.ts +9 -0
  522. package/lib/components/forms/Login/ChangePassword.js +22 -0
  523. package/lib/components/forms/Login/ChangePasswordInputs.d.ts +14 -0
  524. package/lib/components/forms/Login/ChangePasswordInputs.js +80 -0
  525. package/lib/components/forms/Login/Chooser.d.ts +28 -0
  526. package/lib/components/forms/Login/Chooser.js +145 -0
  527. package/lib/components/forms/Login/LOGINLocalizator.d.ts +29 -0
  528. package/lib/components/forms/Login/LOGINLocalizator.js +247 -0
  529. package/lib/components/forms/Login/LoginValidatorService.d.ts +50 -0
  530. package/lib/components/forms/Login/LoginValidatorService.js +162 -0
  531. package/lib/components/forms/Login/Menu.d.ts +10 -0
  532. package/lib/components/forms/Login/Menu.js +48 -0
  533. package/lib/components/forms/Login/OTPReader.d.ts +14 -0
  534. package/lib/components/forms/Login/OTPReader.js +90 -0
  535. package/lib/components/forms/Login/PasswordStrengthChecker.d.ts +7 -0
  536. package/lib/components/forms/Login/PasswordStrengthChecker.js +45 -0
  537. package/lib/components/forms/Login/RapidAccessLogin.d.ts +25 -0
  538. package/lib/components/forms/Login/RapidAccessLogin.js +310 -0
  539. package/lib/components/forms/Login/RecoverPasswordFlow.d.ts +11 -0
  540. package/lib/components/forms/Login/RecoverPasswordFlow.js +111 -0
  541. package/lib/components/forms/Login/SelectBox.d.ts +23 -0
  542. package/lib/components/forms/Login/SelectBox.js +96 -0
  543. package/lib/components/forms/Login/StepIndicator.d.ts +7 -0
  544. package/lib/components/forms/Login/StepIndicator.js +19 -0
  545. package/lib/components/forms/Login/TMLoginForm.d.ts +44 -0
  546. package/lib/components/forms/Login/TMLoginForm.js +737 -0
  547. package/lib/components/forms/Login/TextBox.d.ts +27 -0
  548. package/lib/components/forms/Login/TextBox.js +111 -0
  549. package/lib/components/forms/TMApplyForm.d.ts +4 -0
  550. package/lib/components/forms/TMApplyForm.js +105 -0
  551. package/lib/components/forms/TMChooserForm.d.ts +3 -0
  552. package/lib/components/forms/TMChooserForm.js +94 -0
  553. package/lib/components/forms/TMResultDialog.d.ts +20 -0
  554. package/lib/components/forms/TMResultDialog.js +38 -0
  555. package/lib/components/forms/TMSaveForm.d.ts +31 -0
  556. package/lib/components/forms/TMSaveForm.js +176 -0
  557. package/lib/components/grids/TMBlogs.d.ts +102 -0
  558. package/lib/components/grids/TMBlogs.js +721 -0
  559. package/lib/components/grids/TMBlogsUtils.d.ts +99 -0
  560. package/lib/components/grids/TMBlogsUtils.js +226 -0
  561. package/lib/components/grids/TMRecentsManager.d.ts +13 -0
  562. package/lib/components/grids/TMRecentsManager.js +155 -0
  563. package/lib/components/grids/TMValidationItemsList.d.ts +6 -0
  564. package/lib/components/grids/TMValidationItemsList.js +82 -0
  565. package/lib/components/index.d.ts +102 -0
  566. package/lib/components/index.js +123 -0
  567. package/lib/components/layout/panelManager/TMPanelManagerContainer.d.ts +9 -0
  568. package/lib/components/layout/panelManager/TMPanelManagerContainer.js +215 -0
  569. package/lib/components/layout/panelManager/TMPanelManagerContext.d.ts +39 -0
  570. package/lib/components/layout/panelManager/TMPanelManagerContext.js +251 -0
  571. package/lib/components/layout/panelManager/TMPanelManagerToolbar.d.ts +11 -0
  572. package/lib/components/layout/panelManager/TMPanelManagerToolbar.js +82 -0
  573. package/lib/components/layout/panelManager/TMPanelManagerWithPersistenceProvider.d.ts +21 -0
  574. package/lib/components/layout/panelManager/TMPanelManagerWithPersistenceProvider.js +64 -0
  575. package/lib/components/layout/panelManager/TMPanelWrapper.d.ts +8 -0
  576. package/lib/components/layout/panelManager/TMPanelWrapper.js +59 -0
  577. package/lib/components/layout/panelManager/types.d.ts +41 -0
  578. package/lib/components/layout/panelManager/types.js +1 -0
  579. package/lib/components/layout/panelManager/utils.d.ts +21 -0
  580. package/lib/components/layout/panelManager/utils.js +208 -0
  581. package/lib/components/pages/TMPage.d.ts +38 -0
  582. package/lib/components/pages/TMPage.js +220 -0
  583. package/lib/components/query/TMQueryEditor.d.ts +58 -0
  584. package/lib/components/query/TMQueryEditor.js +1001 -0
  585. package/lib/components/query/TMQuerySummary.d.ts +15 -0
  586. package/lib/components/query/TMQuerySummary.js +35 -0
  587. package/lib/components/settings/SettingsAppearance.d.ts +14 -0
  588. package/lib/components/settings/SettingsAppearance.js +65 -0
  589. package/lib/components/sidebar/TMAboutApp.d.ts +8 -0
  590. package/lib/components/sidebar/TMAboutApp.js +14 -0
  591. package/lib/components/sidebar/TMCommandsPanel.d.ts +16 -0
  592. package/lib/components/sidebar/TMCommandsPanel.js +27 -0
  593. package/lib/components/sidebar/TMHeader.d.ts +43 -0
  594. package/lib/components/sidebar/TMHeader.js +616 -0
  595. package/lib/components/sidebar/TMSidebar.d.ts +21 -0
  596. package/lib/components/sidebar/TMSidebar.js +61 -0
  597. package/lib/components/sidebar/TMSidebarItem.d.ts +15 -0
  598. package/lib/components/sidebar/TMSidebarItem.js +39 -0
  599. package/lib/components/viewers/TMDataListItemViewer.d.ts +10 -0
  600. package/lib/components/viewers/TMDataListItemViewer.js +80 -0
  601. package/lib/components/viewers/TMMidViewer.d.ts +36 -0
  602. package/lib/components/viewers/TMMidViewer.js +128 -0
  603. package/lib/components/viewers/TMTidViewer.d.ts +256 -0
  604. package/lib/components/viewers/TMTidViewer.js +341 -0
  605. package/lib/components/wizard/TMStepIndicator.d.ts +11 -0
  606. package/lib/components/wizard/TMStepIndicator.js +165 -0
  607. package/lib/components/wizard/TMWizard.d.ts +18 -0
  608. package/lib/components/wizard/TMWizard.js +93 -0
  609. package/lib/css/tm-sdkui.css +1 -0
  610. package/lib/helper/DeepCompareHelper.d.ts +7 -0
  611. package/lib/helper/DeepCompareHelper.js +106 -0
  612. package/lib/helper/Enum_Localizator.d.ts +18 -0
  613. package/lib/helper/Enum_Localizator.js +247 -0
  614. package/lib/helper/Globalization.d.ts +14 -0
  615. package/lib/helper/Globalization.js +80 -0
  616. package/lib/helper/SDKUI_Globals.d.ts +93 -0
  617. package/lib/helper/SDKUI_Globals.js +165 -0
  618. package/lib/helper/SDKUI_Localizator.d.ts +649 -0
  619. package/lib/helper/SDKUI_Localizator.js +6385 -0
  620. package/lib/helper/TMCommandsContextMenu.d.ts +14 -0
  621. package/lib/helper/TMCommandsContextMenu.js +6 -0
  622. package/lib/helper/TMConditionalWrapper.d.ts +8 -0
  623. package/lib/helper/TMConditionalWrapper.js +4 -0
  624. package/lib/helper/TMIcons.d.ts +271 -0
  625. package/lib/helper/TMIcons.js +664 -0
  626. package/lib/helper/TMImageLibrary.d.ts +3 -0
  627. package/lib/helper/TMImageLibrary.js +466 -0
  628. package/lib/helper/TMUtils.d.ts +20 -0
  629. package/lib/helper/TMUtils.js +176 -0
  630. package/lib/helper/dcmtsHelper.d.ts +5 -0
  631. package/lib/helper/dcmtsHelper.js +25 -0
  632. package/lib/helper/helpers.d.ts +84 -0
  633. package/lib/helper/helpers.js +824 -0
  634. package/lib/helper/index.d.ts +11 -0
  635. package/lib/helper/index.js +11 -0
  636. package/lib/helper/queryHelper.d.ts +19 -0
  637. package/lib/helper/queryHelper.js +336 -0
  638. package/lib/hooks/useDcmtOperations.d.ts +24 -0
  639. package/lib/hooks/useDcmtOperations.js +482 -0
  640. package/lib/hooks/useForm.d.ts +24 -0
  641. package/lib/hooks/useForm.js +157 -0
  642. package/lib/hooks/useInputDialog.d.ts +9 -0
  643. package/lib/hooks/useInputDialog.js +105 -0
  644. package/lib/hooks/useOutsideClick.d.ts +2 -0
  645. package/lib/hooks/useOutsideClick.js +38 -0
  646. package/lib/hooks/usePreventFileDrop.d.ts +3 -0
  647. package/lib/hooks/usePreventFileDrop.js +37 -0
  648. package/lib/hooks/useQueryParametersDialog.d.ts +2 -0
  649. package/lib/hooks/useQueryParametersDialog.js +71 -0
  650. package/lib/hooks/useResizeObserver.d.ts +4 -0
  651. package/lib/hooks/useResizeObserver.js +22 -0
  652. package/lib/hooks/useWorkflowApprove.d.ts +11 -0
  653. package/lib/hooks/useWorkflowApprove.js +57 -0
  654. package/lib/index.d.ts +11 -0
  655. package/lib/index.js +14 -0
  656. package/lib/services/index.d.ts +1 -0
  657. package/lib/services/index.js +1 -0
  658. package/lib/services/platform_services.d.ts +18 -0
  659. package/lib/services/platform_services.js +492 -0
  660. package/lib/stories/TMButton.stories.d.ts +4 -0
  661. package/lib/stories/TMButton.stories.js +29 -0
  662. package/lib/stories/TMDataGrid.stories.d.ts +9 -0
  663. package/lib/stories/TMDataGrid.stories.js +310 -0
  664. package/lib/stories/TMHtmlContentDisplay.stories.d.ts +6 -0
  665. package/lib/stories/TMHtmlContentDisplay.stories.js +45 -0
  666. package/lib/stories/TMHtmlEditor.stories.d.ts +6 -0
  667. package/lib/stories/TMHtmlEditor.stories.js +49 -0
  668. package/lib/stories/TMIcons.stories.d.ts +4 -0
  669. package/lib/stories/TMIcons.stories.js +13 -0
  670. package/lib/stories/TMSDKUI_Localizator.stories.d.ts +4 -0
  671. package/lib/stories/TMSDKUI_Localizator.stories.js +123 -0
  672. package/lib/stories/TMStoriesUtils.d.ts +1 -0
  673. package/lib/stories/TMStoriesUtils.js +10 -0
  674. package/lib/stories/TMUserAvatar.stories.d.ts +6 -0
  675. package/lib/stories/TMUserAvatar.stories.js +20 -0
  676. package/lib/ts/index.d.ts +1 -0
  677. package/lib/ts/index.js +1 -0
  678. package/lib/ts/types.d.ts +296 -0
  679. package/lib/ts/types.js +85 -0
  680. package/lib/utils/theme.d.ts +68 -0
  681. package/lib/utils/theme.js +80 -0
  682. package/package.json +54 -0
@@ -0,0 +1,573 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import React, { useCallback, useEffect, useState } from 'react';
3
+ import { DcmtTypeListCacheService, SDK_Globals, DataColumnTypes, MetadataFormats, SystemMIDs, MetadataDataDomains, RelationCacheService, RelationTypes } from "@topconsultnpm/sdk-ts";
4
+ import { genUniqueId, IconBackhandIndexPointingRight, IconFolder } 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
+ // UTILITY FUNCTIONS
14
+ // ============================================================================
15
+ /**
16
+ * Check if document type has detail relations
17
+ */
18
+ export const hasDetailRelations = async (mTID) => {
19
+ if (!mTID)
20
+ return false;
21
+ const allRelations = await RelationCacheService.GetAllAsync();
22
+ const rdlOneToMany = allRelations?.filter(o => o.masterTID == mTID && o.relationType == RelationTypes.OneToMany) ?? [];
23
+ const rdlManyToMany = allRelations?.filter(o => o.relationType == RelationTypes.ManyToMany && (o.masterTID == mTID || o.detailTID == mTID)) ?? [];
24
+ return rdlManyToMany.length > 0 || rdlOneToMany.length > 0;
25
+ };
26
+ /**
27
+ * Check if document type has master relations
28
+ */
29
+ export const hasMasterRelations = async (dTID) => {
30
+ if (!dTID)
31
+ return false;
32
+ const allRelations = await RelationCacheService.GetAllAsync();
33
+ const rdlOneToMany = allRelations?.filter(o => o.detailTID == dTID && o.relationType == RelationTypes.OneToMany) ?? [];
34
+ const rdlManyToMany = allRelations?.filter(o => o.relationType == RelationTypes.ManyToMany && (o.masterTID == dTID || o.detailTID == dTID)) ?? [];
35
+ return rdlManyToMany.length > 0 || rdlOneToMany.length > 0;
36
+ };
37
+ /**
38
+ * Check if relation is ManyToMany
39
+ */
40
+ const isManyToManyRelation = async (relationID) => {
41
+ if (!relationID)
42
+ return false;
43
+ const allRelations = await RelationCacheService.GetAllAsync();
44
+ const rdlManyToMany = allRelations.filter(o => o.relationType == RelationTypes.ManyToMany && o.id === relationID) ?? [];
45
+ return rdlManyToMany.length > 0;
46
+ };
47
+ /**
48
+ * Get metadata keys excluding system metadata
49
+ */
50
+ function getMetadataKeys(obj) {
51
+ if (!obj)
52
+ return [];
53
+ const keys = Object.keys(obj);
54
+ const sysMIDs = Object.values(SystemMIDs).map(o => o.toUpperCase());
55
+ return keys.filter(k => obj?.[k].value && !sysMIDs.includes(k)).filter(o => o !== "rowIndex" && o !== "ISLEXPROT");
56
+ }
57
+ /**
58
+ * Get display value keys for a document (max 5, prioritize SYS_Abstract)
59
+ */
60
+ function getDcmtDisplayValue(obj) {
61
+ const mdKeys = getMetadataKeys(obj);
62
+ if (mdKeys.includes("SYS_Abstract"))
63
+ return ["SYS_Abstract"];
64
+ return mdKeys.slice(0, 5);
65
+ }
66
+ /**
67
+ * Get display value formatted by column type
68
+ */
69
+ const getDisplayValueByColumn = (col, value) => {
70
+ if (!value)
71
+ return value;
72
+ if (!col)
73
+ return value;
74
+ if (col.dataType === DataColumnTypes.Text)
75
+ return value;
76
+ const format = MetadataFormats[(col.extendedProperties?.["Format"] ?? "None")];
77
+ const formatCulture = col.extendedProperties?.["FormatCulture"] ?? window.navigator.language;
78
+ if (col.dataType === DataColumnTypes.DateTime) {
79
+ const date = new Date(value);
80
+ switch (format) {
81
+ case MetadataFormats.ShortDate: return date.toLocaleString(formatCulture, formatCulture == "it-IT" ? { year: "numeric", month: "2-digit", day: "2-digit" } : { dateStyle: 'short' });
82
+ case MetadataFormats.ShortTime: return date.toLocaleString(formatCulture, { timeStyle: 'short' });
83
+ 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(',', '');
84
+ 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(',', '');
85
+ case MetadataFormats.LongDate: return date.toLocaleString(formatCulture, { weekday: "long", year: "numeric", month: "long", day: "numeric" });
86
+ case MetadataFormats.LongTime: return date.toLocaleString(formatCulture, { timeStyle: 'medium' });
87
+ case MetadataFormats.LongDateLongTime: return date.toLocaleString(formatCulture, { weekday: "long", year: "numeric", month: "long", day: "numeric", hour: '2-digit', minute: '2-digit', second: '2-digit' });
88
+ case MetadataFormats.LongDateShortTime: return date.toLocaleString(formatCulture, { weekday: "long", year: "numeric", month: "long", day: "numeric", hour: '2-digit', minute: '2-digit' });
89
+ default: return date.toLocaleString(formatCulture, { dateStyle: 'short' });
90
+ }
91
+ }
92
+ if (col.dataType === DataColumnTypes.Number) {
93
+ return value.toLocaleString(formatCulture, { useGrouping: format == MetadataFormats.NumberWithThousandsSeparator });
94
+ }
95
+ if (format == MetadataFormats.None)
96
+ return value;
97
+ if (format == MetadataFormats.CurrencyEuro)
98
+ return value.toLocaleString(formatCulture, { style: 'currency', currency: "EUR" });
99
+ if (format == MetadataFormats.CurrencyDollar)
100
+ return value.toLocaleString(formatCulture, { style: 'currency', currency: "USD" });
101
+ if (format == MetadataFormats.CurrencyPound)
102
+ return value.toLocaleString(formatCulture, { style: 'currency', currency: "GBP" });
103
+ if (format == MetadataFormats.CurrencyYen)
104
+ return value.toLocaleString(formatCulture, { style: 'currency', currency: "JPY" });
105
+ return value;
106
+ };
107
+ /**
108
+ * Convert SearchResultDescriptor to structured data source with metadata
109
+ */
110
+ const searchResultToDataSource = async (searchResult, hideSysMetadata) => {
111
+ const rows = searchResult?.dtdResult?.rows ?? [];
112
+ const tid = searchResult?.fromTID;
113
+ const dtd = await DcmtTypeListCacheService.GetAsync(tid);
114
+ const output = [];
115
+ for (let index = 0; index < rows.length; index++) {
116
+ const item = { rowIndex: index };
117
+ const row = rows[index];
118
+ for (let i = 0; i < row.length; i++) {
119
+ const mid = Number(searchResult?.dtdResult?.columns?.[i]?.extendedProperties?.["MID"] ?? "0");
120
+ if (hideSysMetadata && mid < 100)
121
+ continue;
122
+ let key = searchResult?.dtdResult?.columns?.[i].caption ?? '';
123
+ if (mid <= 100)
124
+ key = key.toUpperCase();
125
+ const value = row[i];
126
+ const md = dtd?.metadata?.find(o => o.id == mid);
127
+ item[key] = {
128
+ md: md,
129
+ value: getDisplayValueByColumn(searchResult?.dtdResult?.columns?.[i], value)
130
+ };
131
+ }
132
+ output.push(item);
133
+ }
134
+ return output;
135
+ };
136
+ const TMRelationViewer = ({ inputDcmts, isForMaster = false, showCurrentDcmtIndicator = true, allowShowZeroDcmts = true, initialShowZeroDcmts = false, allowedTIDs, allowMultipleSelection = false, focusedItem, selectedItems, onFocusedItemChanged, onSelectedItemsChanged, onDocumentDoubleClick, customItemRender, maxDepthLevel = 2, invertMasterNavigation = true, }) => {
137
+ // State
138
+ const [dcmtTypes, setDcmtTypes] = useState([]);
139
+ const [treeData, setTreeData] = useState([]);
140
+ const [showZeroDcmts, setShowZeroDcmts] = useState(initialShowZeroDcmts);
141
+ // Wait Panel State (only used if allowWaitPanel is true)
142
+ const [showWaitPanel, setShowWaitPanel] = useState(false);
143
+ const [waitPanelTextPrimary, setWaitPanelTextPrimary] = useState('');
144
+ const [waitPanelValuePrimary, setWaitPanelValuePrimary] = useState(0);
145
+ const [waitPanelMaxValuePrimary, setWaitPanelMaxValuePrimary] = useState(0);
146
+ const [abortController] = useState(new AbortController());
147
+ // Ref to track last loaded input to prevent unnecessary reloads
148
+ const lastLoadedInputRef = React.useRef('');
149
+ /**
150
+ * Generate a stable key from inputDcmts to detect real changes
151
+ */
152
+ const getInputKey = useCallback(() => {
153
+ if (!inputDcmts || inputDcmts.length === 0)
154
+ return '';
155
+ return inputDcmts.map(d => `${d.TID}-${d.DID}`).join('|') + `|${isForMaster}`;
156
+ }, [inputDcmts, isForMaster]);
157
+ // Load document types
158
+ useEffect(() => {
159
+ const loadDcmtTypes = async () => {
160
+ const types = await DcmtTypeListCacheService.GetAllWithoutMetadataAsync() || [];
161
+ setDcmtTypes(types);
162
+ };
163
+ loadDcmtTypes();
164
+ }, []);
165
+ useEffect(() => {
166
+ setShowZeroDcmts(initialShowZeroDcmts);
167
+ }, [initialShowZeroDcmts]);
168
+ /**
169
+ * Recursively retrieve detail documents (adapted from TMMasterDetailDcmts.tsx)
170
+ */
171
+ const getDetailDcmtsAsync = useCallback(async (mTID, mDID, maxLevel) => {
172
+ const items = [];
173
+ if (!mTID)
174
+ return [];
175
+ if (!mDID)
176
+ return [];
177
+ if (maxLevel <= 0)
178
+ return [];
179
+ const dcmtTypeHasRel = await hasDetailRelations(mTID);
180
+ if (!dcmtTypeHasRel)
181
+ return [];
182
+ try {
183
+ const searchEngine = SDK_Globals.tmSession?.NewSearchEngine();
184
+ if (!searchEngine)
185
+ return items;
186
+ const results = await searchEngine.GetAllDetailDcmtsAsync(mTID, mDID) ?? [];
187
+ for (const searchResult of results) {
188
+ // Skip if allowedTIDs is set and this TID is not allowed
189
+ if (allowedTIDs && searchResult.fromTID && !allowedTIDs.includes(searchResult.fromTID)) {
190
+ continue;
191
+ }
192
+ const containerGUID = genUniqueId();
193
+ const dtd = await DcmtTypeListCacheService.GetAsync(searchResult.fromTID);
194
+ const newDcmtTypeContainer = {
195
+ tid: searchResult.fromTID,
196
+ dtd: dtd,
197
+ did: undefined,
198
+ key: `${searchResult.fromTID}_${searchResult.relationID}_${mTID}_${mDID}_${containerGUID}`,
199
+ name: searchResult.fromName || dtd?.name || `TID: ${searchResult.fromTID}`,
200
+ isContainer: true,
201
+ relationId: searchResult.relationID,
202
+ isManyToMany: await isManyToManyRelation(searchResult.relationID),
203
+ searchResult: [searchResult],
204
+ isZero: (searchResult.dcmtsFound ?? 0) <= 0,
205
+ itemsCount: (searchResult.dcmtsFound ?? 0),
206
+ expanded: false,
207
+ hidden: false
208
+ };
209
+ const source = await searchResultToDataSource(searchResult);
210
+ if (source && source.length > 0) {
211
+ const dcmtDetails = [];
212
+ for (const row of source) {
213
+ const rowGUID = genUniqueId();
214
+ const tid = row?.TID?.value;
215
+ const did = row?.DID?.value;
216
+ dcmtDetails.push({
217
+ tid: tid,
218
+ did: did,
219
+ key: `${tid}_${did}_${searchResult.relationID}_${mTID}_${mDID}_${rowGUID}`,
220
+ isDcmt: true,
221
+ isContainer: false,
222
+ isZero: false, // Documents are never zero (they exist)
223
+ values: row,
224
+ searchResult: [searchResult],
225
+ itemsCount: 0,
226
+ expanded: false,
227
+ hidden: false,
228
+ name: row?.SYS_Abstract?.value || row?.SYS_SUBJECT?.value || `Documento ${did}`
229
+ // Note: Recursive loading on expansion is handled by calculateItemsForNode
230
+ });
231
+ }
232
+ newDcmtTypeContainer.items = dcmtDetails;
233
+ }
234
+ items.push(newDcmtTypeContainer);
235
+ }
236
+ }
237
+ catch (error) {
238
+ console.error('❌ Error loading detail documents:', error);
239
+ }
240
+ return items;
241
+ }, [allowedTIDs]);
242
+ /**
243
+ * Recursively retrieve master documents
244
+ */
245
+ const getMasterDcmtsAsync = useCallback(async (dTID, dDID, maxLevel) => {
246
+ const items = [];
247
+ if (!dTID)
248
+ return [];
249
+ if (!dDID)
250
+ return [];
251
+ if (maxLevel <= 0)
252
+ return [];
253
+ const dcmtTypeHasRel = await hasMasterRelations(dTID);
254
+ if (!dcmtTypeHasRel)
255
+ return [];
256
+ try {
257
+ const searchEngine = SDK_Globals.tmSession?.NewSearchEngine();
258
+ if (!searchEngine)
259
+ return items;
260
+ const results = await searchEngine.GetAllMasterDcmtsAsync(dTID, dDID) ?? [];
261
+ for (const searchResult of results) {
262
+ // Skip if allowedTIDs is set and this TID is not allowed
263
+ if (allowedTIDs && searchResult.fromTID && !allowedTIDs.includes(searchResult.fromTID)) {
264
+ continue;
265
+ }
266
+ const containerGUID = genUniqueId();
267
+ const dtd = await DcmtTypeListCacheService.GetAsync(searchResult.fromTID);
268
+ const newDcmtTypeContainer = {
269
+ tid: searchResult.fromTID,
270
+ dtd: dtd,
271
+ did: undefined,
272
+ key: `${searchResult.fromTID}_${searchResult.relationID}_${dTID}_${dDID}_${containerGUID}`,
273
+ name: searchResult.fromName || dtd?.name || `TID: ${searchResult.fromTID}`,
274
+ isContainer: true,
275
+ relationId: searchResult.relationID,
276
+ isManyToMany: await isManyToManyRelation(searchResult.relationID),
277
+ searchResult: [searchResult],
278
+ isZero: (searchResult.dcmtsFound ?? 0) <= 0,
279
+ itemsCount: (searchResult.dcmtsFound ?? 0),
280
+ expanded: false,
281
+ hidden: false
282
+ };
283
+ const source = await searchResultToDataSource(searchResult);
284
+ if (source && source.length > 0) {
285
+ const dcmtMasters = [];
286
+ for (const row of source) {
287
+ const rowGUID = genUniqueId();
288
+ const tid = row?.TID?.value;
289
+ const did = row?.DID?.value;
290
+ dcmtMasters.push({
291
+ tid: tid,
292
+ did: did,
293
+ key: `${tid}_${did}_${searchResult.relationID}_${dTID}_${dDID}_${rowGUID}`,
294
+ isDcmt: true,
295
+ isContainer: false,
296
+ isZero: false, // Documents are never zero (they exist)
297
+ values: row,
298
+ searchResult: [searchResult],
299
+ itemsCount: 0,
300
+ expanded: false,
301
+ hidden: false,
302
+ name: row?.SYS_Abstract?.value || row?.SYS_SUBJECT?.value || `Documento ${did}`
303
+ // Note: Recursive loading on expansion is handled by calculateItemsForNode
304
+ });
305
+ }
306
+ newDcmtTypeContainer.items = dcmtMasters;
307
+ }
308
+ items.push(newDcmtTypeContainer);
309
+ }
310
+ }
311
+ catch (error) {
312
+ console.error('❌ Error loading master documents:', error);
313
+ }
314
+ return items;
315
+ }, [allowedTIDs]);
316
+ /**
317
+ * Update hidden property based on showZeroDcmts (original simple logic)
318
+ */
319
+ const updateHiddenProperty = useCallback((nodes) => {
320
+ return nodes.map(node => {
321
+ const updatedNode = { ...node, hidden: !showZeroDcmts && node.isZero };
322
+ if (node.items) {
323
+ updatedNode.items = updateHiddenProperty(node.items);
324
+ }
325
+ return updatedNode;
326
+ });
327
+ }, [showZeroDcmts]);
328
+ /**
329
+ * Main data loading function
330
+ */
331
+ const loadData = useCallback(async () => {
332
+ if (!inputDcmts || inputDcmts.length === 0 || dcmtTypes.length === 0) {
333
+ setTreeData([]);
334
+ return;
335
+ }
336
+ const tree = [];
337
+ let processedCount = 0;
338
+ for (const dcmt of inputDcmts) {
339
+ // Check for abort
340
+ if (abortController.signal.aborted) {
341
+ console.warn(`⚠️ Operation aborted. Processed ${processedCount} documents`);
342
+ break;
343
+ }
344
+ // Update wait panel progress
345
+ setWaitPanelTextPrimary(`Caricamento correlazione ${processedCount + 1} di ${inputDcmts.length}`);
346
+ const searchEngine = SDK_Globals.tmSession?.NewSearchEngine();
347
+ if (!searchEngine)
348
+ continue;
349
+ // Load document metadata
350
+ const result = await searchEngine.GetMetadataAsync(dcmt.TID, dcmt.DID, false);
351
+ const dtd = await DcmtTypeListCacheService.GetAsync(dcmt.TID);
352
+ // Parse document values
353
+ const docValues = await searchResultToDataSource(result);
354
+ const docRow = docValues.length > 0 ? docValues[0] : undefined;
355
+ // Generate unique GUID for this container
356
+ const containerGUID = genUniqueId();
357
+ // ========================================================================
358
+ // MODALITÀ MASTER CON NAVIGAZIONE ORIGINALE (invertMasterNavigation=false)
359
+ // ========================================================================
360
+ if (isForMaster && !invertMasterNavigation) {
361
+ // Carica i master documents
362
+ const masterDocs = await getMasterDcmtsAsync(dcmt.TID, dcmt.DID, maxDepthLevel);
363
+ // Per ogni master, carica i suoi detail (incluso il documento corrente)
364
+ for (const masterContainer of masterDocs) {
365
+ if (!masterContainer.items)
366
+ continue;
367
+ // Per ogni master document nel container, carica i detail
368
+ for (const masterDoc of masterContainer.items) {
369
+ if (masterDoc.tid && masterDoc.did) {
370
+ // Carica i detail del master (incluso il documento di partenza)
371
+ const detailDocs = await getDetailDcmtsAsync(masterDoc.tid, masterDoc.did, 1);
372
+ masterDoc.items = detailDocs;
373
+ masterDoc.itemsCount = detailDocs.length;
374
+ masterDoc.isLoaded = true;
375
+ }
376
+ }
377
+ }
378
+ // Aggiungi i master come root
379
+ tree.push(...masterDocs);
380
+ }
381
+ // ========================================================================
382
+ // MODALITÀ STANDARD (detail o master invertito)
383
+ // ========================================================================
384
+ else {
385
+ // Load related documents (detail or master based on isForMaster flag)
386
+ const relatedDocs = isForMaster
387
+ ? await getMasterDcmtsAsync(dcmt.TID, dcmt.DID, maxDepthLevel)
388
+ : await getDetailDcmtsAsync(dcmt.TID, dcmt.DID, maxDepthLevel);
389
+ // Create document node WITH VALUES
390
+ const docNode = {
391
+ key: `${isForMaster ? 'detail' : 'master'}-doc-${dcmt.TID}-${dcmt.DID}-${containerGUID}`,
392
+ name: docRow?.SYS_Abstract?.value || docRow?.SYS_SUBJECT?.value || `Documento ${isForMaster ? 'Dettaglio' : 'Master'}`,
393
+ tid: dcmt.TID,
394
+ did: dcmt.DID,
395
+ isDcmt: true,
396
+ isContainer: false,
397
+ expanded: tree.length === 0,
398
+ isZero: dcmt.DID === 0,
399
+ isMaster: !isForMaster,
400
+ isRoot: true,
401
+ isLoaded: true,
402
+ hidden: false,
403
+ values: docRow,
404
+ searchResult: result ? [result] : [],
405
+ items: relatedDocs,
406
+ itemsCount: relatedDocs.length
407
+ };
408
+ // Create type container with unique key
409
+ const typeContainer = {
410
+ key: `${isForMaster ? 'detail' : 'master'}-type-${dcmt.TID}-${containerGUID}`,
411
+ name: result?.fromName || dtd?.name || `TID: ${dcmt.TID}`,
412
+ tid: dcmt.TID,
413
+ dtd,
414
+ isContainer: true,
415
+ isRoot: true,
416
+ isLoaded: true,
417
+ isZero: false, // Type container is never zero (contains documents)
418
+ searchResult: result ? [result] : [],
419
+ items: [docNode],
420
+ itemsCount: 1,
421
+ expanded: tree.length === 0
422
+ };
423
+ tree.push(typeContainer);
424
+ }
425
+ // Update progress counter
426
+ processedCount++;
427
+ setWaitPanelValuePrimary(processedCount);
428
+ }
429
+ setTreeData(updateHiddenProperty(tree));
430
+ }, [inputDcmts, dcmtTypes, maxDepthLevel, isForMaster, invertMasterNavigation, getDetailDcmtsAsync, getMasterDcmtsAsync, abortController, updateHiddenProperty]);
431
+ /**
432
+ * Load data when inputs change
433
+ */
434
+ useEffect(() => {
435
+ if (!inputDcmts || inputDcmts.length === 0 || dcmtTypes.length === 0) {
436
+ setTreeData([]);
437
+ lastLoadedInputRef.current = '';
438
+ return;
439
+ }
440
+ // Generate current input key
441
+ const currentKey = getInputKey();
442
+ // Skip if we already loaded this exact data
443
+ if (currentKey === lastLoadedInputRef.current && treeData.length > 0) {
444
+ return;
445
+ }
446
+ // Mark as loading this key
447
+ lastLoadedInputRef.current = currentKey;
448
+ setShowWaitPanel(true);
449
+ setWaitPanelMaxValuePrimary(inputDcmts.length);
450
+ setWaitPanelValuePrimary(0);
451
+ // Call loadData and use .then() instead of await to allow React to render
452
+ loadData().then(() => {
453
+ setShowWaitPanel(false);
454
+ setWaitPanelTextPrimary('');
455
+ setWaitPanelMaxValuePrimary(0);
456
+ setWaitPanelValuePrimary(0);
457
+ });
458
+ }, [inputDcmts, dcmtTypes, maxDepthLevel, getInputKey, loadData, treeData.length]);
459
+ /**
460
+ * Update tree when showZeroDcmts changes
461
+ */
462
+ useEffect(() => {
463
+ setTreeData(prevData => updateHiddenProperty(prevData));
464
+ }, [showZeroDcmts, updateHiddenProperty]);
465
+ /**
466
+ * Calculate items for node when expanded (lazy loading)
467
+ */
468
+ const calculateItemsForNode = useCallback(async (node) => {
469
+ // If it's a document, return existing items
470
+ if (node.isDcmt)
471
+ return node.items;
472
+ // If container is already loaded, return items
473
+ if (node.isLoaded)
474
+ return node.items;
475
+ // Load sub-documents for each document in the container
476
+ const newItems = [];
477
+ for (const dcmt of node.items ?? []) {
478
+ const item = { ...dcmt }; // Create a new reference
479
+ if (item.tid && item.did && !item.isLoaded) {
480
+ // Nella modalità originale (invertMasterNavigation=false),
481
+ // i documenti detail non devono caricare i master come figli
482
+ if (isForMaster && !invertMasterNavigation) {
483
+ // Carica i detail dei detail (navigazione naturale detail→detail)
484
+ const loadedItems = await getDetailDcmtsAsync(item.tid, item.did, 1);
485
+ item.items = updateHiddenProperty(loadedItems);
486
+ }
487
+ else {
488
+ // Modalità standard o invertita
489
+ const loadedItems = isForMaster
490
+ ? await getMasterDcmtsAsync(item.tid, item.did, 1)
491
+ : await getDetailDcmtsAsync(item.tid, item.did, 1);
492
+ item.items = updateHiddenProperty(loadedItems);
493
+ }
494
+ item.isLoaded = true;
495
+ }
496
+ newItems.push(item);
497
+ }
498
+ return newItems;
499
+ }, [isForMaster, invertMasterNavigation, getDetailDcmtsAsync, getMasterDcmtsAsync, updateHiddenProperty]);
500
+ /**
501
+ * Default item renderer with metadata display (adapted from TMMasterDetailDcmts.tsx)
502
+ */
503
+ const defaultItemRender = useCallback((item) => {
504
+ if (!item)
505
+ return _jsx("span", { children: "-" });
506
+ const handleDoubleClick = (e) => {
507
+ if (item.isContainer || !item.tid || !item.did)
508
+ return;
509
+ e.stopPropagation();
510
+ onDocumentDoubleClick?.(item.tid, item.did, item.name);
511
+ };
512
+ // Container rendering
513
+ if (item.isContainer || !item.isDcmt) {
514
+ return (_jsxs("div", { style: {
515
+ display: 'flex',
516
+ alignItems: 'center',
517
+ gap: '10px',
518
+ height: '32px',
519
+ padding: '6px 0',
520
+ opacity: item.isZero ? 0.4 : 1,
521
+ transition: 'opacity 0.2s ease-in-out'
522
+ }, 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: {
523
+ whiteSpace: 'nowrap',
524
+ textOverflow: 'ellipsis',
525
+ fontSize: '1rem',
526
+ color: 'inherit'
527
+ }, children: item.name }), _jsx(StyledBadge, { "$backgroundColor": TMColors.info, children: item.items?.length ?? 0 })] })] }));
528
+ }
529
+ // Document rendering with full metadata display
530
+ return (_jsxs("div", { onDoubleClick: handleDoubleClick, style: {
531
+ minWidth: '90px',
532
+ width: '100%',
533
+ display: 'flex',
534
+ marginLeft: '5px',
535
+ marginTop: '5px',
536
+ marginBottom: '5px',
537
+ gap: '15px',
538
+ alignItems: 'center',
539
+ cursor: 'pointer',
540
+ userSelect: 'none',
541
+ opacity: item.isZero ? 0.4 : 1,
542
+ transition: 'opacity 0.2s ease-in-out'
543
+ }, 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' })), item.values && (_jsx(StyledDivHorizontal, { style: {
544
+ whiteSpace: 'nowrap',
545
+ textOverflow: 'ellipsis',
546
+ fontSize: '1rem',
547
+ }, children: getDcmtDisplayValue(item.values).map((key, index) => {
548
+ const md = item.values?.[key]?.md;
549
+ const value = item.values?.[key]?.value;
550
+ return (_jsxs(StyledDivHorizontal, { children: [index > 0 && _jsx("p", { style: { marginRight: '2px' }, children: ";" }), 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("p", { style: { fontSize: '1rem' }, children: value }))] }, `${key}_${index}`));
551
+ }) }))] }));
552
+ }, [onDocumentDoubleClick]);
553
+ /**
554
+ * Handle focused item changed
555
+ */
556
+ const handleFocusedItemChanged = useCallback((item) => {
557
+ onFocusedItemChanged?.(item);
558
+ }, [onFocusedItemChanged]);
559
+ /**
560
+ * Handle selected items changed
561
+ */
562
+ const handleSelectedItemsChanged = useCallback((items) => {
563
+ onSelectedItemsChanged?.(items);
564
+ }, [onSelectedItemsChanged]);
565
+ if (showWaitPanel) {
566
+ 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); } }) });
567
+ }
568
+ if (treeData.length === 0) {
569
+ return _jsx("div", { style: { padding: '20px', textAlign: 'center', color: '#666' }, children: "Nessuna relazione disponibile." });
570
+ }
571
+ return (_jsx(TMTreeView, { dataSource: treeData, itemRender: customItemRender || defaultItemRender, calculateItemsForNode: calculateItemsForNode, onDataChanged: setTreeData, focusedItem: focusedItem, onFocusedItemChanged: handleFocusedItemChanged, allowMultipleSelection: allowMultipleSelection, selectedItems: selectedItems, onSelectionChanged: handleSelectedItemsChanged }));
572
+ };
573
+ export default TMRelationViewer;
@@ -0,0 +1,9 @@
1
+ import { FC } from 'react';
2
+ import { QueryDescriptor, SavedQueryDescriptor } from '@topconsultnpm/sdk-ts';
3
+ import { ITMSaveFormProps } from '../../../ts';
4
+ interface ISavedQueryFormProps extends ITMSaveFormProps<SavedQueryDescriptor> {
5
+ qd?: QueryDescriptor;
6
+ isAdvancedSearch?: boolean;
7
+ }
8
+ declare const TMSavedQueryForm: FC<ISavedQueryFormProps>;
9
+ export default TMSavedQueryForm;
@@ -0,0 +1,41 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { ObjectClasses, PlatformObjectValidator, SharingModes, SDK_Localizator, ValidationItem, ResultTypes, TMPropertyNames, SearchEngine } from '@topconsultnpm/sdk-ts';
3
+ import { LocalizeSharingModes } from '../../../helper/Enum_Localizator';
4
+ import { deepCompare, SDKUI_Localizator } from '../../../helper';
5
+ import { SaveFormOptions, useSaveForm } from '../../../hooks/useForm';
6
+ import { FormModes } from '../../../ts';
7
+ import TMLayoutContainer, { TMLayoutItem } from '../../base/TMLayout';
8
+ import TMUserChooser from '../../choosers/TMUserChooser';
9
+ import TMCheckBox from '../../editors/TMCheckBox';
10
+ import TMRadioButton from '../../editors/TMRadioButton';
11
+ import TMTextBox from '../../editors/TMTextBox';
12
+ import TMSaveForm from '../../forms/TMSaveForm';
13
+ const TMSavedQueryForm = ({ id, qd, isAdvancedSearch = false, title, width, height, onSaved, onCancel, onClose, onStatusChanged, isModal, formMode = FormModes.Update, showBackButton }) => {
14
+ const validator = async (d) => {
15
+ let vil = [];
16
+ if (!d.name)
17
+ vil.push(new ValidationItem(ResultTypes.ERROR, "name", `${SDK_Localizator.RequiredField}`));
18
+ else if (!PlatformObjectValidator.IsValidObjectName(d.name))
19
+ vil.push(new ValidationItem(ResultTypes.ERROR, "name", `${SDK_Localizator.InvalidName}`));
20
+ return vil;
21
+ };
22
+ const sfo = new SaveFormOptions();
23
+ sfo.objClass = ObjectClasses.SavedQuery;
24
+ const customizeFormData = (d) => { d.qd = qd; d.isEasyWhere = isAdvancedSearch ? 0 : 1; return d; };
25
+ const { formData, setFormData, formDataOrig, validationItems, exception, saveDataAsync } = useSaveForm(formMode, id, sfo, validator, onSaved, onStatusChanged, customizeFormData);
26
+ const isModified = () => {
27
+ let data = { ...formData };
28
+ data.qd = SearchEngine.NormalizeQueryDescriptor(data.qd);
29
+ let dataOrig = { ...formDataOrig };
30
+ dataOrig.qd = SearchEngine.NormalizeQueryDescriptor(dataOrig.qd);
31
+ return !deepCompare(data, dataOrig);
32
+ };
33
+ return (_jsx(TMSaveForm, { id: id, title: title, isModal: isModal, onClose: onClose, onCancel: onCancel, formMode: formMode, exception: exception, hasNavigation: false, width: width, height: height, showBackButton: showBackButton, validationItems: validationItems, onUndo: () => { setFormData(customizeFormData(formDataOrig)); }, onSaveAsync: async () => { await saveDataAsync(); onClose?.(); }, isModified: isModified(), children: _jsx(TMLayoutContainer, { direction: 'vertical', children: _jsx(TMLayoutItem, { height: 'max-content', children: _jsxs(TMLayoutContainer, { gap: 5, children: [_jsx(TMLayoutItem, { height: 'max-content', children: _jsx(TMTextBox, { value: formData?.name ?? '', label: SDKUI_Localizator.Name, isModifiedWhen: formData?.name !== formDataOrig?.name, validationItems: validationItems?.filter(o => o.PropertyName === TMPropertyNames.entityName), onValueChanged: (e) => { formData && setFormData({ ...formData, name: e.target.value }); } }) }), _jsx(TMLayoutItem, { height: 'max-content', children: _jsx(TMTextBox, { value: formData?.description ?? '', label: SDKUI_Localizator.Description, isModifiedWhen: formData?.description !== formDataOrig?.description, onValueChanged: (e) => { formData && setFormData({ ...formData, description: e.target.value }); } }) }), _jsx(TMLayoutItem, { height: 'max-content', children: _jsx(TMCheckBox, { value: formData?.runSearchWhenSelected ?? 0, label: 'Eseguire immediatamente la ricerca quando viene selezionata', isModifiedWhen: formData?.runSearchWhenSelected !== formDataOrig?.runSearchWhenSelected, onValueChanged: (newValue) => { setFormData({ ...formData, runSearchWhenSelected: newValue }); } }) }), _jsx(TMLayoutItem, { height: 'max-content', children: _jsx(TMRadioButton, { label: 'Condivisione', dataSource: [
34
+ { value: SharingModes.Private, display: LocalizeSharingModes(SharingModes.Private) },
35
+ { value: SharingModes.Public, display: LocalizeSharingModes(SharingModes.Public) },
36
+ { value: SharingModes.Shared, display: LocalizeSharingModes(SharingModes.Shared) }
37
+ ], value: formData?.sharingMode, isModifiedWhen: formData?.sharingMode !== formDataOrig?.sharingMode, onValueChanged: (newValue) => setFormData({ ...formData, sharingMode: newValue }) }) }), _jsx(TMLayoutItem, { children: _jsx(TMUserChooser, { allowMultipleSelection: true, values: formData?.sharingUserIDs, label: SDKUI_Localizator.UserName, placeHolder: SDKUI_Localizator.NoneSelection, disabled: formData?.sharingMode !== SharingModes.Shared,
38
+ // isModifiedWhen={!MiscHelper.IntArraysAreEquals(value?.tiDs, valueOrig?.tiDs)}
39
+ onValueChanged: (newValue) => setFormData({ ...formData, sharingUserIDs: newValue }) }) })] }) }) }) }));
40
+ };
41
+ export default TMSavedQueryForm;
@@ -0,0 +1,16 @@
1
+ import React from 'react';
2
+ import { SavedQueryDescriptor } from '@topconsultnpm/sdk-ts';
3
+ export declare const getTooltipBySqd: (sqd: SavedQueryDescriptor | undefined) => import("react/jsx-runtime").JSX.Element | null;
4
+ interface ITMSavedQuerySelectorProps {
5
+ height?: string;
6
+ items?: SavedQueryDescriptor[];
7
+ selectedId?: number;
8
+ allowShowSearch?: boolean;
9
+ manageDefault?: boolean;
10
+ onItemClick?: (sqd: SavedQueryDescriptor) => void;
11
+ onDeleted?: (sqd: SavedQueryDescriptor) => void;
12
+ onFavoritesAdded?: (sqd: SavedQueryDescriptor) => void;
13
+ onRefreshData?: () => void;
14
+ }
15
+ declare const TMSavedQuerySelector: React.MemoExoticComponent<({ items, selectedId, allowShowSearch, height, manageDefault, onItemClick, onDeleted, onFavoritesAdded, onRefreshData }: ITMSavedQuerySelectorProps) => import("react/jsx-runtime").JSX.Element>;
16
+ export default TMSavedQuerySelector;