@sync-in/server 1.7.0 → 1.8.1

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 (275) hide show
  1. package/CHANGELOG.md +173 -58
  2. package/environment/environment.dist.yaml +6 -3
  3. package/migrations/0003_giant_luckman.sql +6 -0
  4. package/migrations/meta/0003_snapshot.json +2463 -0
  5. package/migrations/meta/_journal.json +7 -0
  6. package/package.json +19 -17
  7. package/server/app.bootstrap.js +5 -2
  8. package/server/app.bootstrap.js.map +1 -1
  9. package/server/app.constants.js +0 -4
  10. package/server/app.constants.js.map +1 -1
  11. package/server/app.service.js +7 -6
  12. package/server/app.service.js.map +1 -1
  13. package/server/applications/files/constants/only-office.js +12 -0
  14. package/server/applications/files/constants/only-office.js.map +1 -1
  15. package/server/applications/files/files.config.js +5 -0
  16. package/server/applications/files/files.config.js.map +1 -1
  17. package/server/applications/files/files.controller.js +12 -4
  18. package/server/applications/files/files.controller.js.map +1 -1
  19. package/server/applications/files/files.controller.spec.js +18 -4
  20. package/server/applications/files/files.controller.spec.js.map +1 -1
  21. package/server/applications/files/services/files-content-manager.service.js +6 -6
  22. package/server/applications/files/services/files-content-manager.service.js.map +1 -1
  23. package/server/applications/files/services/files-manager.service.js +4 -4
  24. package/server/applications/files/services/files-manager.service.js.map +1 -1
  25. package/server/applications/files/services/files-methods.service.js +4 -7
  26. package/server/applications/files/services/files-methods.service.js.map +1 -1
  27. package/server/applications/files/services/files-only-office-manager.service.js +2 -2
  28. package/server/applications/files/services/files-only-office-manager.service.js.map +1 -1
  29. package/server/applications/files/services/files-parser.service.js +6 -3
  30. package/server/applications/files/services/files-parser.service.js.map +1 -1
  31. package/server/applications/files/services/files-scheduler.service.js +51 -3
  32. package/server/applications/files/services/files-scheduler.service.js.map +1 -1
  33. package/server/applications/files/services/files-search-manager.service.js +4 -0
  34. package/server/applications/files/services/files-search-manager.service.js.map +1 -1
  35. package/server/applications/files/utils/doc-textify/adapters/pdf.js +6 -8
  36. package/server/applications/files/utils/doc-textify/adapters/pdf.js.map +1 -1
  37. package/server/applications/notifications/i18n/de.js +56 -0
  38. package/server/applications/notifications/i18n/de.js.map +1 -0
  39. package/server/applications/notifications/i18n/es.js +52 -0
  40. package/server/applications/notifications/i18n/es.js.map +1 -0
  41. package/server/applications/notifications/i18n/hi.js +52 -0
  42. package/server/applications/notifications/i18n/hi.js.map +1 -0
  43. package/server/applications/notifications/i18n/index.js +73 -8
  44. package/server/applications/notifications/i18n/index.js.map +1 -1
  45. package/server/applications/notifications/i18n/it.js +52 -0
  46. package/server/applications/notifications/i18n/it.js.map +1 -0
  47. package/server/applications/notifications/i18n/ja.js +52 -0
  48. package/server/applications/notifications/i18n/ja.js.map +1 -0
  49. package/server/applications/notifications/i18n/ko.js +52 -0
  50. package/server/applications/notifications/i18n/ko.js.map +1 -0
  51. package/server/applications/notifications/i18n/pl.js +52 -0
  52. package/server/applications/notifications/i18n/pl.js.map +1 -0
  53. package/server/applications/notifications/i18n/pt.js +52 -0
  54. package/server/applications/notifications/i18n/pt.js.map +1 -0
  55. package/server/applications/notifications/i18n/pt_br.js +52 -0
  56. package/server/applications/notifications/i18n/pt_br.js.map +1 -0
  57. package/server/applications/notifications/i18n/ru.js +52 -0
  58. package/server/applications/notifications/i18n/ru.js.map +1 -0
  59. package/server/applications/notifications/i18n/tr.js +52 -0
  60. package/server/applications/notifications/i18n/tr.js.map +1 -0
  61. package/server/applications/notifications/i18n/zh.js +52 -0
  62. package/server/applications/notifications/i18n/zh.js.map +1 -0
  63. package/server/applications/notifications/mails/models.js +6 -7
  64. package/server/applications/notifications/mails/models.js.map +1 -1
  65. package/server/applications/notifications/services/notifications-manager.service.js.map +1 -1
  66. package/server/applications/shares/dto/create-or-update-share.dto.js +11 -0
  67. package/server/applications/shares/dto/create-or-update-share.dto.js.map +1 -1
  68. package/server/applications/shares/interfaces/share-props.interface.js.map +1 -1
  69. package/server/applications/shares/schemas/share.interface.js.map +1 -1
  70. package/server/applications/shares/schemas/shares.schema.js +9 -0
  71. package/server/applications/shares/schemas/shares.schema.js.map +1 -1
  72. package/server/applications/shares/services/shares-manager.service.js +46 -17
  73. package/server/applications/shares/services/shares-manager.service.js.map +1 -1
  74. package/server/applications/shares/services/shares-queries.service.js +24 -5
  75. package/server/applications/shares/services/shares-queries.service.js.map +1 -1
  76. package/server/applications/spaces/constants/cache.js +4 -0
  77. package/server/applications/spaces/constants/cache.js.map +1 -1
  78. package/server/applications/spaces/dto/create-or-update-space.dto.js +5 -0
  79. package/server/applications/spaces/dto/create-or-update-space.dto.js.map +1 -1
  80. package/server/applications/spaces/guards/space.guard.js +3 -3
  81. package/server/applications/spaces/guards/space.guard.js.map +1 -1
  82. package/server/applications/spaces/models/space-props.model.js.map +1 -1
  83. package/server/applications/spaces/models/space.model.js.map +1 -1
  84. package/server/applications/spaces/schemas/space.interface.js.map +1 -1
  85. package/server/applications/spaces/schemas/spaces.schema.js +1 -0
  86. package/server/applications/spaces/schemas/spaces.schema.js.map +1 -1
  87. package/server/applications/spaces/services/spaces-browser.service.js.map +1 -1
  88. package/server/applications/spaces/services/spaces-manager.service.js +34 -31
  89. package/server/applications/spaces/services/spaces-manager.service.js.map +1 -1
  90. package/server/applications/spaces/services/spaces-queries.service.js +23 -7
  91. package/server/applications/spaces/services/spaces-queries.service.js.map +1 -1
  92. package/server/applications/spaces/services/spaces-scheduler.service.js +21 -20
  93. package/server/applications/spaces/services/spaces-scheduler.service.js.map +1 -1
  94. package/server/applications/spaces/spaces.controller.js +4 -2
  95. package/server/applications/spaces/spaces.controller.js.map +1 -1
  96. package/server/applications/spaces/utils/paths.js +14 -16
  97. package/server/applications/spaces/utils/paths.js.map +1 -1
  98. package/server/applications/sync/services/sync-manager.service.js +4 -3
  99. package/server/applications/sync/services/sync-manager.service.js.map +1 -1
  100. package/server/applications/sync/services/sync-paths-manager.service.js +1 -1
  101. package/server/applications/sync/services/sync-paths-manager.service.js.map +1 -1
  102. package/server/applications/sync/services/sync-paths-manager.service.spec.js +1 -1
  103. package/server/applications/sync/services/sync-paths-manager.service.spec.js.map +1 -1
  104. package/server/applications/sync/sync.controller.js +2 -1
  105. package/server/applications/sync/sync.controller.js.map +1 -1
  106. package/server/applications/users/constants/routes.js +5 -0
  107. package/server/applications/users/constants/routes.js.map +1 -1
  108. package/server/applications/users/constants/user.js +0 -16
  109. package/server/applications/users/constants/user.js.map +1 -1
  110. package/server/applications/users/dto/user-properties.dto.js +10 -0
  111. package/server/applications/users/dto/user-properties.dto.js.map +1 -1
  112. package/server/applications/users/models/user.model.js.map +1 -1
  113. package/server/applications/users/schemas/user.interface.js.map +1 -1
  114. package/server/applications/users/schemas/users.schema.js +3 -2
  115. package/server/applications/users/schemas/users.schema.js.map +1 -1
  116. package/server/applications/users/services/admin-users-manager.service.js +1 -0
  117. package/server/applications/users/services/admin-users-manager.service.js.map +1 -1
  118. package/server/applications/users/services/admin-users-manager.service.spec.js +2 -1
  119. package/server/applications/users/services/admin-users-manager.service.spec.js.map +1 -1
  120. package/server/applications/users/services/users-manager.service.js +7 -2
  121. package/server/applications/users/services/users-manager.service.js.map +1 -1
  122. package/server/applications/users/services/users-manager.service.spec.js +1 -0
  123. package/server/applications/users/services/users-manager.service.spec.js.map +1 -1
  124. package/server/applications/users/services/users-queries.service.js +18 -4
  125. package/server/applications/users/services/users-queries.service.js.map +1 -1
  126. package/server/applications/users/users.controller.js +15 -0
  127. package/server/applications/users/users.controller.js.map +1 -1
  128. package/server/applications/users/users.gateway.js +6 -0
  129. package/server/applications/users/users.gateway.js.map +1 -1
  130. package/server/applications/users/utils/test.js +2 -2
  131. package/server/applications/users/utils/test.js.map +1 -1
  132. package/server/applications/webdav/constants/routes.js +2 -2
  133. package/server/applications/webdav/constants/routes.js.map +1 -1
  134. package/server/applications/webdav/constants/webdav.js +2 -2
  135. package/server/applications/webdav/constants/webdav.js.map +1 -1
  136. package/server/applications/webdav/filters/webdav.filter.js +2 -2
  137. package/server/applications/webdav/filters/webdav.filter.js.map +1 -1
  138. package/server/applications/webdav/filters/webdav.filter.spec.js +2 -2
  139. package/server/applications/webdav/filters/webdav.filter.spec.js.map +1 -1
  140. package/server/applications/webdav/services/webdav-methods.service.js +3 -2
  141. package/server/applications/webdav/services/webdav-methods.service.js.map +1 -1
  142. package/server/applications/webdav/utils/webdav.js +1 -2
  143. package/server/applications/webdav/utils/webdav.js.map +1 -1
  144. package/server/authentication/auth.config.js +2 -2
  145. package/server/authentication/auth.config.js.map +1 -1
  146. package/server/authentication/guards/auth-basic.strategy.js +2 -2
  147. package/server/authentication/guards/auth-basic.strategy.js.map +1 -1
  148. package/server/common/i18n.js +52 -0
  149. package/server/common/i18n.js.map +1 -0
  150. package/server/common/image.js +63 -43
  151. package/server/common/image.js.map +1 -1
  152. package/server/common/interfaces.js.map +1 -1
  153. package/server/common/shared.js +5 -2
  154. package/server/common/shared.js.map +1 -1
  155. package/server/configuration/config.validation.js +3 -3
  156. package/server/configuration/config.validation.js.map +1 -1
  157. package/server/infrastructure/cache/adapters/mysql-cache.adapter.js +8 -6
  158. package/server/infrastructure/cache/adapters/mysql-cache.adapter.js.map +1 -1
  159. package/server/infrastructure/cache/adapters/redis-cache.adapter.js +22 -17
  160. package/server/infrastructure/cache/adapters/redis-cache.adapter.js.map +1 -1
  161. package/server/infrastructure/cache/cache.e2e-spec.js +1 -0
  162. package/server/infrastructure/cache/cache.e2e-spec.js.map +1 -1
  163. package/server/infrastructure/cache/cache.module.js +1 -14
  164. package/server/infrastructure/cache/cache.module.js.map +1 -1
  165. package/server/infrastructure/cache/services/cache.service.js.map +1 -1
  166. package/server/infrastructure/database/database.module.js +20 -1
  167. package/server/infrastructure/database/database.module.js.map +1 -1
  168. package/server/infrastructure/database/utils.js +48 -0
  169. package/server/infrastructure/database/utils.js.map +1 -1
  170. package/server/infrastructure/scheduler/scheduler.module.js +1 -1
  171. package/server/infrastructure/scheduler/scheduler.module.js.map +1 -1
  172. package/server/infrastructure/websocket/adapters/cluster.adapter.js +1 -3
  173. package/server/infrastructure/websocket/adapters/cluster.adapter.js.map +1 -1
  174. package/static/3rdpartylicenses.txt +137 -163
  175. package/static/chunk-2KLC4T2Z.js +1 -0
  176. package/static/chunk-2VMSXRCB.js +12 -0
  177. package/static/chunk-3GMLWAFZ.js +1 -0
  178. package/static/chunk-3OHSRRKH.js +4 -0
  179. package/static/chunk-3R4WKOHQ.js +1 -0
  180. package/static/{chunk-7ITZXYYJ.js → chunk-3R74L4UU.js} +1 -1
  181. package/static/chunk-3XVM35O2.js +1 -0
  182. package/static/chunk-3YVRP3VM.js +2 -0
  183. package/static/chunk-5NMSIIQB.js +1 -0
  184. package/static/chunk-5UKZLU5H.js +1 -0
  185. package/static/chunk-AF24EYXU.js +1 -0
  186. package/static/chunk-AKQVEHO6.js +2 -0
  187. package/static/chunk-BCVX464U.js +2 -0
  188. package/static/chunk-BQV4FRM6.js +1 -0
  189. package/static/{chunk-EVIE5F2U.js → chunk-CETH7UYS.js} +1 -1
  190. package/static/chunk-CHJ64RJM.js +1 -0
  191. package/static/chunk-DIT6W7VM.js +562 -0
  192. package/static/chunk-DKSEQTMX.js +1 -0
  193. package/static/chunk-DM4NXKEP.js +1 -0
  194. package/static/chunk-DPUVSXRB.js +1 -0
  195. package/static/chunk-DSWEWLXJ.js +1 -0
  196. package/static/chunk-FJE6BOFL.js +1 -0
  197. package/static/chunk-FZ3JPGYZ.js +1 -0
  198. package/static/chunk-IQSKQXC3.js +1 -0
  199. package/static/chunk-ITUFI2BJ.js +1 -0
  200. package/static/chunk-JPT5WEAT.js +1 -0
  201. package/static/chunk-LCTZJ537.js +1 -0
  202. package/static/chunk-LK2UCQJ6.js +1 -0
  203. package/static/chunk-LNTUR3GU.js +1 -0
  204. package/static/chunk-LP5TBXEN.js +7 -0
  205. package/static/{chunk-IPAC4VAF.js → chunk-LVSNIS5P.js} +1 -1
  206. package/static/{chunk-SIPE37PA.js → chunk-MTVSJTIW.js} +1 -1
  207. package/static/chunk-N3U6637P.js +1 -0
  208. package/static/chunk-NNV4OXSB.js +1 -0
  209. package/static/chunk-O6FYXVHI.js +1 -0
  210. package/static/chunk-OOGP4WSH.js +2 -0
  211. package/static/chunk-PB4AIT7O.js +1 -0
  212. package/static/chunk-PCWDQPOM.js +2 -0
  213. package/static/chunk-PNR6M34W.js +1 -0
  214. package/static/chunk-PVDHBQRM.js +1 -0
  215. package/static/chunk-Q5KM7LTX.js +1 -0
  216. package/static/chunk-QHC6ZPQ4.js +1 -0
  217. package/static/chunk-QMRBZHE4.js +1 -0
  218. package/static/chunk-QO6BTONN.js +1 -0
  219. package/static/chunk-QSJRY3TF.js +1 -0
  220. package/static/chunk-QUUIRSYT.js +1 -0
  221. package/static/chunk-RFH46UW3.js +1 -0
  222. package/static/{chunk-PTGDOWV3.js → chunk-RSXHRKM5.js} +1 -1
  223. package/static/chunk-RV3VZJPZ.js +1 -0
  224. package/static/{chunk-QNJFQVYI.js → chunk-S7HNXVRB.js} +1 -1
  225. package/static/chunk-SBZ572Q4.js +2 -0
  226. package/static/chunk-SJR5R3Y4.js +1 -0
  227. package/static/chunk-SLHTEGRU.js +1 -0
  228. package/static/{chunk-SH5EVL4E.js → chunk-SSFF27P2.js} +1 -1
  229. package/static/chunk-UNCPXHHT.js +1 -0
  230. package/static/chunk-URHTCJ7G.js +1 -0
  231. package/static/chunk-V3LHHZYN.js +1 -0
  232. package/static/{chunk-DJYJ66UF.js → chunk-VJTXJ43D.js} +1 -1
  233. package/static/chunk-VQQKMY2C.js +1 -0
  234. package/static/{chunk-IQOALFYU.js → chunk-WSSU2HXE.js} +1 -1
  235. package/static/chunk-XDZGW64M.js +3 -0
  236. package/static/chunk-XTRDKGKG.js +1 -0
  237. package/static/chunk-YLWTEC3X.js +1 -0
  238. package/static/chunk-Z5J5F5SX.js +1 -0
  239. package/static/chunk-ZIJQRARU.js +1 -0
  240. package/static/index.html +2 -2
  241. package/static/main-4H5BJY3J.js +9 -0
  242. package/static/scripts-WRDOQIU5.js +24 -0
  243. package/static/{styles-A5VYX3CE.css → styles-2C2UNCNB.css} +1 -1
  244. package/server/applications/spaces/interfaces/space-quota.interface.js +0 -10
  245. package/server/applications/spaces/interfaces/space-quota.interface.js.map +0 -1
  246. package/static/chunk-22EANI6R.js +0 -1
  247. package/static/chunk-3GFGJYMK.js +0 -1
  248. package/static/chunk-4YGJGZZZ.js +0 -1
  249. package/static/chunk-5K7HEX3C.js +0 -27
  250. package/static/chunk-5KLMS6A4.js +0 -1
  251. package/static/chunk-ATP3BFHV.js +0 -562
  252. package/static/chunk-BB4G55KE.js +0 -1
  253. package/static/chunk-EWKSX76T.js +0 -1
  254. package/static/chunk-FHLACA7V.js +0 -1
  255. package/static/chunk-GCATNU55.js +0 -1
  256. package/static/chunk-GYODPCIE.js +0 -1
  257. package/static/chunk-HZTFYLM5.js +0 -1
  258. package/static/chunk-JSUKJT6Z.js +0 -1
  259. package/static/chunk-JXZCNFW7.js +0 -1
  260. package/static/chunk-LTGFCQR7.js +0 -1
  261. package/static/chunk-LV3PYKWO.js +0 -1
  262. package/static/chunk-N2WFNW6M.js +0 -7
  263. package/static/chunk-ORMRCEGT.js +0 -1
  264. package/static/chunk-OUTBJSMW.js +0 -1
  265. package/static/chunk-RS2PX32L.js +0 -1
  266. package/static/chunk-RSSWH3S2.js +0 -1
  267. package/static/chunk-RTRJ3KFH.js +0 -1
  268. package/static/chunk-TKTCBDOG.js +0 -1
  269. package/static/chunk-V6K2N46L.js +0 -1
  270. package/static/chunk-XLCCZSQL.js +0 -4
  271. package/static/chunk-YPEH66GG.js +0 -1
  272. package/static/chunk-YPOIUQ57.js +0 -1
  273. package/static/chunk-ZKCFO2OA.js +0 -4
  274. package/static/main-MZ7HWZXO.js +0 -9
  275. package/static/scripts-VZVAP2P4.js +0 -30
@@ -0,0 +1,2 @@
1
+ import"./chunk-N3U6637P.js";var o="Autenticazione",a="Nome utente",n="Password",t="Conferma",r="Annulla",s="Chiudi",l="Filtra",c="Filtri",d="cerca",p="Cerca",u="Vedi",m="Nessuna attivit\xE0",g="{{ nb }} attivit\xE0 completata",h="{{ nb }} attivit\xE0 completate",f="{{ nba }} attivit\xE0 in corso su {{ nb }}",z="{{ nba }} attivit\xE0 in corso su {{ nb }}",v="{{nb}} elemento/i",b="{{nb}} azione/i",y="{{ nb }} nuovo messaggio",w="{{ nb }} nuovi messaggi",S="{{ nb }} notifica non letta",C="{{ nb }} notifiche non lette",A="Applicazione",N="applicazione",T="Notifica",k="Notifiche",L="Evento",I="File",D="File",P="Personali",E="Esterno",_="Gruppi",M="Gruppo",x="gruppo",U="gruppi",G="Visibile",R="Privato",F="Isolato",q="Aggiungi",V="Amministratore",O="Amministrazione",Q="Utente",Y="utente",W="Utenti",H="utenti",j="account",B="Account",K="Email",J="Stato",X="Ruolo",Z="IP",$="Visto",ee="Connessione",ie="Connessioni",oe="Spazio disponibile basso ( {{ nb }}% )",ae="online",ne="Illimitato",te="membro",re="membri",se="Membro",le="Membri",ce="Gestore",de="gestore",pe="Gestori",ue="Genera",me="Importa",ge="Configurazione",he="Applicazioni",fe="applicazioni",ze="Avatar",ve="Aggiorna",be="Lingua",ye="Home",we="Recenti",Se="recenti",Ce="Cestino",Ae="Condivisioni",Ne="Condividi",Te="condivisioni",ke="condiviso",Le="Accesso allo spazio personale",Ie="Accesso agli spazi",De="Amministrazione degli spazi",Pe="Accesso alle condivisioni",Ee="Amministrazione delle condivisioni",_e="Amministrazione degli ospiti",Me="Amministrazione dei gruppi personali",xe="Accesso dall\u2019app desktop",Ue="Sincronizzazione dall\u2019app desktop",Ge="Accesso WebDAV",Re="WebDAV",Fe="Spazio",qe="Spazi",Ve="spazi",Oe="ha ancorato",Qe="ha disancorato",Ye="Posizione",We="Ancorato",He="Impostazioni",je="Opzioni",Be="Nome",Ke="Scarica",Je="Sposta",Xe="Copia",Ze="Rinomina",$e="Modifica",ei="Rimuovi",ii="Appunti",oi="Aggiorna",ai="Svuota",ni="Elenco",ti="Visualizzazione",ri="Vuoi spostare <b>{{arg}}</b> nel cestino?",si="Vuoi eliminare definitivamente <b>{{arg}}</b>?",li="Vuoi spostare questi <b>{{arg}} file</b> nel cestino?",ci="Vuoi eliminare definitivamente questi <b>{{arg}} file</b>?",di="sincronizzazione",pi="Sincronizzazione",ui="Sincronizzazioni",mi="Sincronizza",gi="Sync",hi="Sincronizzato",fi="Comprimi",zi="Decomprimi",vi="Informazione",bi="Informazioni",yi="Informazioni",wi="Dimensione",Si="Modificato",Ci="modificato",Ai="Attivit\xE0",Ni="Testo",Ti="Elementi",ki="Nuovo",Li="Cartella",Ii="cartella",Di="file",Pi="file",Ei="directory",_i="directory",Mi="Totale",xi="nessun elemento selezionato",Ui="{{ nb }} elemento selezionato",Gi="{{ nb }} elementi selezionati",Ri="elemento",Fi="elementi",qi="creare",Vi="scrivere",Oi="spostare",Qi="eliminare",Yi="modificare",Wi="condivisione",Hi="Link",ji="link",Bi="Link",Ki="link",Ji="Ospite",Xi="Ospiti",Zi="ospite",$i="ospiti",eo="Scaduto",io="scaduto",oo="nessuno",ao="Permessi",no="Proprietario",to="Io",ro="Condiviso",so="Creato",lo="Data",co="Percorso",po="attivo",uo="Attivo",mo="sospeso",go="Tipo",ho="Descrizione",fo="Visibilit\xE0",zo="Sconosciuto",vo="Scadenza",bo="Accesso",yo="Acceduto",wo="Commenta",So="Commenti",Co="commenti",Ao="ha commentato",No="s\xEC",To="no",ko="Cliente",Lo="Clienti",Io="disponibile",Do="occupato",Po="assente",Eo="offline",_o="Vedi",Mo="esci",xo="giorni",Uo="giorno",Go="Elimina",Ro="Pianificatore",Fo="parallelo",qo="sequenziale",Vo="Trasferimenti",Oo="Simula",Qo="Reimposta",Yo="Sfoglia",Wo="Azione",Ho="Aggiunto",jo="Rimosso",Bo="Copiato",Ko="Spostato",Jo="Filtrato",Xo="Errore",Zo="Server",$o="Direzione",ea="Conflitto",ia="recente",oa="Origine",aa="Destinazione",na="Modalit\xE0",ta="Sequenzialmente",ra="In parallelo",sa="veloce",la="sicuro",ca="abilitato",da="Abilita",pa="disabilitato",ua="Disabilita",ma="ore",ga="minuti",ha="giorni",fa="entrambi",za="mai",va="Procedura guidata",ba="Avanti",ya="Indietro",wa="Fatto",Sa="verso",Ca="Repository",Aa="pubblico",Na="locale",Ta="remoto",ka="Sito web",La="Documentazione",Ia="Versioni",Da="Sicurezza",Pa="Gestisci",Ea={"Sign-in to your account":"Accedi al tuo account","Wrong login or password":"Nome utente o password errati","Authentication service error":"Errore del servizio di autenticazione","Account locked":"Account bloccato","Account is not allowed":"Account non autorizzato","Account matching error":"Errore di corrispondenza dell\u2019account",Authentication:o,"Sign in":"Accedi",Login:a,Password:n,"Login or Email":"Nome utente o email","Login already used":"Nome utente gi\xE0 utilizzato","You are already logged in":"Hai gi\xE0 effettuato l\u2019accesso","Name already used":"Nome gi\xE0 utilizzato","Token has expired":"Il token \xE8 scaduto",Confirm:t,Cancel:r,Close:s,"Server connection error":"Errore di connessione al server",Filter:l,Filters:c,search:d,Search:p,"Search for content":"Cerca contenuti","Search for files":"Cerca file","Full-text search":"Ricerca full-text","Full-text search is disabled":"La ricerca full-text \xE8 disabilitata","Type to search for users or groups to add":"Digita per cercare utenti o gruppi da aggiungere","Type to search for groups to add":"Digita per cercare gruppi da aggiungere","Type to search for users to add":"Digita per cercare utenti da aggiungere","Type to search for managers to add":"Digita per cercare gestori da aggiungere","Member since":"Membro dal","Windows Manager":"Gestore di finestre","Mark as read":"Segna come letto",See:u,no_task:m,one_task:g,nb_tasks:h,one_active_task:f,nb_active_tasks:z,nb_elements:v,nb_actions:b,one_message:y,nb_messages:w,one_notification:S,nb_notifications:C,Application:A,application:N,"application and email":"applicazione ed email",Notification:T,Notifications:k,Event:L,File:I,Files:D,"Personal files":"File personali","for personal files":"per i file personali",Personal:P,External:E,"Share status":"Stato della condivisione","Share description":"Descrizione della condivisione","No recent files":"Nessun file recente",Groups:_,Group:M,group:x,"New personal group":"Nuovo gruppo personale","Edit personal group":"Modifica gruppo personale","personal group":"gruppo personale","Personal group":"Gruppo personale","Personal groups":"Gruppi personali",groups:U,"Parent group":"Gruppo padre","Group updated":"Gruppo aggiornato","Group created":"Gruppo creato","Group not found":"Gruppo non trovato","Group error":"Errore del gruppo","Set as group manager":"Imposta come gestore del gruppo","As a manager, the user will be able to manage the group and its members.":"Come gestore, l\u2019utente potr\xE0 gestire il gruppo e i suoi membri.","As a manager, the user will be able to manage group members but not group properties.":`Come gestore, l\u2019utente potr\xE0 gestire i membri del gruppo ma non le propriet\xE0 del gruppo.
2
+ `,Visible:G,Private:R,Isolated:F,"Select the parent group":"Seleziona il gruppo padre","from the group":"del gruppo","New group":"Nuovo gruppo","Edit group":"Modifica gruppo","Leave group":"Lascia il gruppo","Delete group":"Elimina gruppo","Remove from group":"Rimuovi dal gruppo","Group must have at least one manager":"Il gruppo deve avere almeno un gestore","The group was left":"Il gruppo \xE8 stato abbandonato","The group was not left":"Il gruppo non \xE8 stato abbandonato","will be left, you will no longer be a member of this group":"verr\xE0 abbandonato, non sarai pi\xF9 membro di questo gruppo","All users can see this group.":"Tutti gli utenti possono vedere questo gruppo.","Users who are not members of this group cannot see it.":"Gli utenti che non sono membri di questo gruppo non possono vederlo.","The group is not visible, its members cannot see it and cannot see each other.":"Il gruppo non \xE8 visibile, i suoi membri non possono vederlo n\xE9 vedersi tra loro.",Add:q,"Add members":"Aggiungi membri","See members":"Vedi membri",Administrator:V,Administration:O,User:Q,user:Y,Users:W,users:H,"New user":"Nuovo utente",account:j,Account:B,"Account status":"Stato dell\u2019account",Email:K,"Email already used":"Email gi\xE0 utilizzata","First name":"Nome","Last name":"Cognome","Full name":"Nome e cognome",Status:J,Role:X,IP:Z,"IP Addresses":"Indirizzi IP",Seen:$,Connection:ee,Connections:ie,"Confirm deletion":"Conferma eliminazione","Confirm permanent deletion of data":"Conferma l\u2019eliminazione definitiva dei dati","Space and data will be deleted in":"Lo spazio e i dati verranno eliminati tra","Space is disabled":"Lo spazio \xE8 disabilitato","Storage Space":"Spazio di archiviazione","Storage Quota":"Quota di archiviazione","Storage Usage":"Utilizzo dell\u2019archiviazione","Space status":"Stato dello spazio","Storage quota exceeded":"Quota di archiviazione superata","Storage quota will be exceeded":"La quota di archiviazione verr\xE0 superata","No more space available":"Nessuno spazio disponibile",available_space_is_low:oe,online:ae,"Online users":"Utenti online",Unlimited:ne,member:te,members:re,Member:se,Members:le,Manager:ce,manager:de,Managers:pe,"At least one manager is required":"\xC8 richiesto almeno un gestore",Generate:ue,Import:me,Configuration:ge,Applications:he,applications:fe,"Permissions inherited from groups":"Permessi ereditati dai gruppi","Only the group will be deleted, the members will no longer be part of it.":"Verr\xE0 eliminato solo il gruppo, i membri non ne faranno pi\xF9 parte.",Avatar:ze,Update:ve,"current password":"password attuale","new password":"nuova password","Change me !":"Cambiami!","Current password missing !":"Password attuale mancante!","New password missing !":"Nuova password mancante!","New password must have 8 characters minimum":"La nuova password deve avere almeno 8 caratteri","Current password does not match":"La password attuale non corrisponde","Password has been updated":"La password \xE8 stata aggiornata","Unable to update password":"Impossibile aggiornare la password","Bad password":"Password errata","too many login attempts":"troppi tentativi di accesso",Language:be,"Language updated":"Lingua aggiornata","Unable to update language":"Impossibile aggiornare la lingua","Notification preference updated":"Preferenze di notifica aggiornate","Full-text search preference updated":"Preferenza di ricerca full-text aggiornata","Unable to update notification preference":"Impossibile aggiornare la preferenza di notifica","Unable to update full-text search preference":"Impossibile aggiornare la preferenza di ricerca full-text","Unable to open document":"Impossibile aprire il documento",Home:ye,Recents:we,recents:Se,Trash:Ce,"trash bins":"cestini",Shares:Ae,Share:Ne,shares:Te,shared:ke,personal_space:Le,spaces_access:Ie,spaces_admin:De,shares_access:Pe,shares_admin:Ee,guests_admin:_e,personal_groups_admin:Me,desktop_app_access:xe,desktop_app_sync:Ue,webdav_access:Ge,"Create share":"Crea condivisione","Edit share":"Modifica condivisione","Delete share":"Elimina condivisione","Child shares":"Condivisioni figlie",webdav:Re,"Share is disabled":"La condivisione \xE8 disabilitata",Space:Fe,Spaces:qe,spaces:Ve,"Space name":"Nome dello spazio","New space":"Nuovo spazio","Create a new space":"Crea un nuovo spazio","Create space":"Crea spazio","Edit space":"Modifica spazio","Delete space":"Elimina spazio","Create a new share":"Crea una nuova condivisione","Type to search for space to select":"Digita per cercare lo spazio da selezionare","Anchor to a space":"Ancora a uno spazio","Anchor files to a space":"Ancora i file a uno spazio","You have been invited to join this space":"Sei stato invitato a unirti a questo spazio","You have been invited to join this share":"Sei stato invitato a unirti a questa condivisione","Shared with others":"Condiviso con altri","With others":"Con altri","Shared with me":"Condiviso con me","With me":"Con me","Shared via links":"Condiviso tramite link","Via links":"Tramite link","Shared from":"Condiviso da","share with you this":"condivide con te questo","shared with you":"ha condiviso con te","no longer share with you":"non condivide pi\xF9 con te","You now have access to the space":"Ora hai accesso allo spazio","You no longer have access to the space":"Non hai pi\xF9 accesso allo spazio","This space has been permanently deleted":"Questo spazio \xE8 stato eliminato definitivamente","You now have access to the share":"Ora hai accesso alla condivisione","You no longer have access to the share":"Non hai pi\xF9 accesso alla condivisione","You are no longer a member of the parent share, your child share has been deleted":"Non sei pi\xF9 membro della condivisione padre, la tua condivisione figlia \xE8 stata eliminata",anchored:Oe,unanchored:Qe,"Share not found":"Condivisione non trovata","Go to":"Vai a",Location:Ye,"Name and location are required":"Nome e posizione sono obbligatori","Parent location already exists in files":"La posizione padre esiste gi\xE0 nei file","Check the location":"Verifica la posizione","Location not found":"Posizione non trovata","Forbidden resource":"Posizione non autorizzata","Resource already exists":"L\u2019elemento esiste gi\xE0","The location does not exist":"La posizione non esiste","The location is not readable":"La posizione non \xE8 leggibile","The location is not writeable":"La posizione non \xE8 scrivibile","The location is a directory":"La posizione \xE8 una directory","The file is locked":"Il file \xE8 bloccato","This share is protected by a password":"Questa condivisione \xE8 protetta da password","You do not have share permission":"Non hai il permesso di condividere","You can not share a space":"Non puoi condividere uno spazio","You can not remove an anchored file":"Non puoi rimuovere un file ancorato","You are not allowed to write here":"Non sei autorizzato a scrivere qui","You are not allowed to do this action":"Non sei autorizzato a eseguire questa azione","You can not move an anchored file":"Non puoi spostare un file ancorato","You can not move a locked file":"Non puoi spostare un file bloccato",Anchored:We,"Anchored by":"Ancorato da","Manage my anchored files":"Gestisci i miei file ancorati","You have no files anchored on this space":"Non hai file ancorati su questo spazio","An anchored file already has this name":"Un file ancorato ha gi\xE0 questo nome",Settings:He,Options:je,Name:Be,Download:Ke,"Download done":"Download completato","Download failed":"Download non riuscito","Upload done":"Caricamento completato","Upload failed":"Caricamento non riuscito","Copy/Move":"Copia/Sposta",Move:Je,"Move done":"Spostamento completato","Move failed":"Spostamento non riuscito","Deletion done":"Eliminazione completata","Deletion failed":"Eliminazione non riuscita","Creation failed":"Creazione non riuscita",Copy:Xe,"Copy done":"Copia completata","Copy failed":"Copia non riuscita","Copy-Paste":"Copia-Incolla","Cut-Paste":"Taglia-Incolla",Rename:Ze,Edit:$e,"Share inside":"Condividi internamente","Share outside":"Condividi esternamente",Remove:ei,Clipboard:ii,"Send to Clipboard":"Invia agli appunti","will be removed":"verr\xE0 rimosso",Refresh:oi,Empty:ai,List:ni,Display:ti,"Sort by":"Ordina per",trash_one_file:ri,delete_one_file:si,trash_multiple_files:li,delete_multiple_files:ci,"Moving to trash":"Spostamento nel cestino","Permanent deletion":"Eliminazione definitiva","Would you like to empty the trash ?":"Vuoi svuotare il cestino?","All items will be permanently deleted":"Tutti gli elementi saranno eliminati definitivamente","Actions will be performed in the current folder":"Le azioni saranno eseguite nella cartella corrente","The client will no longer have permission to access your account and will no longer be able to synchronize.":"Il client non avr\xE0 pi\xF9 il permesso di accedere al tuo account e non potr\xE0 pi\xF9 sincronizzare.","The access expires":"L\u2019accesso scade","The access has expired":"L\u2019accesso \xE8 scaduto","Never expires":"Non scade mai",synchronization:di,Synchronization:pi,Synchronizations:ui,Synchronize:mi,Sync:gi,"Stop synchronization":"Interrompi sincronizzazione","Synchronize all":"Sincronizza tutto","Stop synchronizations":"Interrompi sincronizzazioni",Synced:hi,"Sync already exists":"La sincronizzazione esiste gi\xE0","Sync was reset":"Sincronizzazione reimpostata","Sync deleted":"Sincronizzazione eliminata","This client":"Questo client","You are no longer synchronizing":"Non stai pi\xF9 sincronizzando",Compress:fi,Decompress:zi,"Compress and Download":"Comprimi e scarica","Compress and Save":"Comprimi e salva","Enable compression":"Abilita compressione","Compression done":"Compressione completata","Compression failed":"Compressione non riuscita","Decompression done":"Decompressione completata","Decompression failed":"Decompressione non riuscita","(this may take longer)":"(potrebbe richiedere pi\xF9 tempo)","Save in the current directory":"Salva nella directory corrente","This name is already used":"Questo nome \xE8 gi\xE0 utilizzato",Information:vi,Informations:bi,Infos:yi,Size:wi,Modified:Si,modified:Ci,Tasks:Ai,"Download from URL":"Scarica da URL","Upload files":"Carica file","Upload folders":"Carica cartelle","Folder name":"Nome della cartella","New folder":"Nuova cartella","Document name":"Nome del documento","New document":"Nuovo documento","File name":"Nome del file","File permissions":"Permessi del file",Text:Ni,"Rich Text Format":"Formato di testo RTF","Forbidden characters":"Caratteri non consentiti",Elements:Ti,"Malformed URL":"URL malformato",New:ki,Folder:Li,folder:Ii,file:Di,files:Pi,directory:Ei,directories:_i,Total:Mi,no_selection:xi,one_selection:Ui,nb_selections:Gi,"Archive name":"Nome dell\u2019archivio","Drag and drop your files here":"Trascina e rilascia qui i tuoi file","The destination already exists":"La destinazione esiste gi\xE0","This item is already selected":"Questo elemento \xE8 gi\xE0 selezionato","Parent item is already selected":"L\u2019elemento padre \xE8 gi\xE0 selezionato","This file contains binary data that can not be read":"Questo file contiene dati binari che non possono essere letti","Navigation Tree":"Albero di navigazione",item:Ri,items:Fi,create:qi,write:Vi,move:Oi,delete:Qi,modify:Yi,"Delete user":"Elimina utente","Delete all user files":"Elimina tutti i file dell\u2019utente",share:Wi,"Share name":"Nome della condivisione","New share":"Nuova condivisione","New share link":"Nuovo link di condivisione","New link":"Nuovo link","Edit children shares":"Modifica condivisioni figlie",Link:Hi,link:ji,Links:Bi,links:Ki,"Link copied":"Link copiato","Link created":"Link creato","Link deleted":"Link eliminato","Link error":"Errore del link","Copy link":"Copia link","Edit link":"Modifica link","Guest Link":"Link ospite","Guest name":"Nome dell\u2019ospite","Guest email":"Email dell\u2019ospite","Guest language":"Lingua dell\u2019ospite",Guest:Ji,Guests:Xi,guest:Zi,guests:$i,"New guest":"Nuovo ospite","Edit guest":"Modifica ospite","Guest created":"Ospite creato","Guest deleted":"Ospite eliminato","Guest updated":"Ospite aggiornato","Guest error":"Errore ospite","Add an external location":"Aggiungi una posizione esterna","External location":"Posizione esterna","Select a file":"Seleziona un file","The link is expired":"Il link \xE8 scaduto","The link is disabled":"Il link \xE8 disabilitato","The link was not found":"Il link non \xE8 stato trovato",Expired:eo,expired:io,none:oo,"The maximum number of access allowed to the link is exceeded":"\xC8 stato superato il numero massimo di accessi consentiti al link","Set a password":"Imposta una password","Enter your password":"Inserisci la tua password",Permissions:ao,"No permissions":"Nessun permesso",Owner:no,Me:to,Shared:ro,Created:so,"Created & Modified":"Creato e modificato","Creation date":"Data di creazione","Modification date":"Data di modifica","Deactivation date":"Data di disattivazione",Date:lo,Path:co,active:po,Active:uo,suspended:mo,"Unable to rename user space":"Impossibile rinominare lo spazio utente","Unable to delete user space":"Impossibile eliminare lo spazio utente","Unable to update user":"Impossibile aggiornare l\u2019utente","Unable to update user groups":"Impossibile aggiornare i gruppi dell\u2019utente","User created":"Utente creato","User updated":"Utente aggiornato","User not found":"Utente non trovato","Edit user":"Modifica utente","Impersonate identity":"Impersona identit\xE0",Type:go,Description:ho,Visibility:fo,"Unknown error !":"Errore sconosciuto!",Unknown:zo,Expiration:vo,"Limit access":"Limita accessi","Current access count":"Numero di accessi attuale",Access:bo,Accessed:yo,"Last access":"Ultimo accesso","Last accesses":"Ultimi accessi",Comment:wo,Comments:So,comments:Co,commented:Ao,"No recent comments":"Nessun commento recente","Write a comment ...":"Scrivi un commento ...",yes:No,no:To,Client:ko,Clients:Lo,available:Io,busy:Do,absent:Po,offline:Eo,View:_o,"Session has expired":"La sessione \xE8 scaduta","Please sign in":"Per favore, accedi",logout:Mo,days:xo,day:Uo,Delete:Go,Scheduler:Ro,async:Fo,seq:qo,Transfers:Vo,Simulate:Oo,Reset:Qo,Browse:Yo,Action:Wo,Added:Ho,Removed:jo,Copied:Bo,Moved:Ko,Filtered:Jo,Error:Xo,Server:Zo,Direction:$o,Conflict:ea,"Show filtered files":"Mostra i file filtrati",recent:ia,Source:oa,Destination:aa,Mode:na,Sequentially:ta,Asynchronously:ra,fast:sa,secure:la,enabled:ca,Enable:da,disabled:pa,Disable:ua,scheduler_unit_hour:ma,scheduler_unit_minute:ga,scheduler_unit_day:ha,"You must have permission to modify the server folder to choose a different sync mode":"Devi avere il permesso di modificare la cartella del server per scegliere una modalit\xE0 di sincronizzazione diversa","upload only":"solo caricamento","download only":"solo download",both:fa,never:za,"Clear events":"Cancella eventi","Events from":"Eventi da","All syncs":"Tutte le sincronizzazioni","All events":"Tutti gli eventi","will be cleared":"verranno cancellati","No differences":"Nessuna differenza","Select a folder":"Seleziona una cartella","The files containing":"I file contenenti","The files starting":"I file che iniziano","The files ending":"I file che finiscono","Expert (Regexp)":"Esperto (Regexp)","click on the browse button":"fai clic sul pulsante sfoglia","with a name or pattern":"per nome o modello","with the extension ('.mp3', '.avi', '.mov' ...)":"con l\u2019estensione ('.mp3', '.avi', '.mov' ...)",Wizard:va,Next:ba,Previous:ya,Done:wa,"This wizard will help you synchronize a directory on your computer with a Sync-in directory.":"Questa procedura guidata ti aiuter\xE0 a sincronizzare una directory del tuo computer con una directory di Sync-in.","To begin, select a folder on your computer.":"Per iniziare, seleziona una cartella sul tuo computer.",'You can drag the folder into the area below or click on the "Select" button.':'Puoi trascinare la cartella nell\u2019area sottostante o fare clic sul pulsante "Seleziona".',"Drop folder here":"Rilascia qui la cartella","This directory is already synced":"Questa directory \xE8 gi\xE0 sincronizzata","The parent directory is already synced":"La directory padre \xE8 gi\xE0 sincronizzata","This folder already exists":"Questa cartella esiste gi\xE0","This file already exists":"Questo file esiste gi\xE0","This directory is not accessible":"Questa directory non \xE8 accessibile","This directory is read-only, you will not be able to modify it":"Questa directory \xE8 di sola lettura, non potrai modificarla","Please select the server directory to sync, if it doesn't exist you can create it.":"Seleziona la directory del server da sincronizzare; se non esiste, puoi crearla.","Double click to browse directories":"Fai doppio clic per sfogliare le directory","The data will be synchronized from":"I dati saranno sincronizzati da","the client folder":"la cartella client","the server folder":"la cartella server","(One-Way)":"(unidirezionale)","(Two-Way)":"(bidirezionale)",to:Sa,"and from":"e da","All files created or modified in":"Tutti i file creati o modificati in","will be ignored and deleted":"saranno ignorati ed eliminati","In case of conflict,":"In caso di conflitto,","the most recent files will be kept":"verranno mantenuti i file pi\xF9 recenti","the client\u2019s files take precedence":"i file del client hanno la precedenza","the server\u2019s files take precedence":"i file del server hanno la precedenza","the files in":"i file in","will be preferred":"saranno preferiti","Loading...":"Caricamento...","No results":"Nessun risultato","Download ARM64 version":"Scarica la versione ARM64","Download Apple Silicon ARM64 version":"Scarica la versione Apple Silicon ARM64","Download tar.gz version":"Scarica la versione tar.gz",Repository:Ca,public:Aa,local:Na,remote:Ta,"System requirements":"Requisiti di sistema","Feature not enabled":"Funzionalit\xE0 non abilitata","Check the settings":"Controlla le impostazioni",Website:ka,Documentation:La,Versions:Ia,Security:Da,"Recovery code":"Codice di recupero","Use a recovery code":"Usa un codice di recupero","Authentication code":"Codice di autenticazione","Secret copied":"Segreto copiato","Recovery codes copied":"Codici di recupero copiati","Invalid code":"Codice non valido","Incorrect code or password":"Codice o password errati","Application Passwords":"Password delle applicazioni","Generate a new app password":"Genera una nuova password per l\u2019applicazione","Generated password":"Password generata","This password will only be shown once after it is generated":"Questa password verr\xE0 mostrata solo una volta dopo la generazione","Password name":"Nome della password",Manage:Pa,"Manage app passwords":"Gestisci le password delle applicazioni","Password Authentication":"Autenticazione tramite password","Two-Factor Authentication":"Autenticazione a due fattori","Two-Factor Authentication is enabled":"L\u2019autenticazione a due fattori \xE8 abilitata","Two-Factor Authentication is disabled":"L\u2019autenticazione a due fattori \xE8 disabilitata","Scan this QR code using your authenticator app.":"Scansiona questo codice QR con la tua app di autenticazione.","(Such as FreeOTP, Proton Authenticator etc.)":"(Come FreeOTP, Proton Authenticator, ecc.)","Or enter this secret manually":"Oppure inserisci questo segreto manualmente","Valid with your TOTP code":"Conferma con il tuo codice TOTP","The secret has expired":"Il segreto \xE8 scaduto","Keep these codes in a safe place. They will allow you to access your account if you lose access to your two-factor authentication.":"Conserva questi codici in un luogo sicuro. Ti permetteranno di accedere al tuo account se perdi l\u2019accesso alla tua autenticazione a due fattori.","These recovery codes are for one-time use only and will only be displayed here once.":"Questi codici di recupero sono monouso e verranno mostrati qui una sola volta."};export{bo as Access,yo as Accessed,B as Account,Wo as Action,uo as Active,q as Add,Ho as Added,O as Administration,V as Administrator,We as Anchored,A as Application,he as Applications,ra as Asynchronously,o as Authentication,ze as Avatar,Yo as Browse,r as Cancel,ko as Client,Lo as Clients,ii as Clipboard,s as Close,wo as Comment,So as Comments,fi as Compress,ge as Configuration,t as Confirm,ea as Conflict,ee as Connection,ie as Connections,Bo as Copied,Xe as Copy,so as Created,lo as Date,zi as Decompress,Go as Delete,ho as Description,aa as Destination,$o as Direction,ua as Disable,ti as Display,La as Documentation,wa as Done,Ke as Download,$e as Edit,Ti as Elements,K as Email,ai as Empty,da as Enable,Xo as Error,L as Event,vo as Expiration,eo as Expired,E as External,I as File,D as Files,l as Filter,Jo as Filtered,c as Filters,Li as Folder,ue as Generate,M as Group,_ as Groups,Ji as Guest,Xi as Guests,ye as Home,Z as IP,me as Import,vi as Information,bi as Informations,yi as Infos,F as Isolated,be as Language,Hi as Link,Bi as Links,ni as List,Ye as Location,a as Login,Pa as Manage,ce as Manager,pe as Managers,to as Me,se as Member,le as Members,na as Mode,Si as Modified,Je as Move,Ko as Moved,Be as Name,ki as New,ba as Next,T as Notification,k as Notifications,je as Options,no as Owner,n as Password,co as Path,ao as Permissions,P as Personal,ya as Previous,R as Private,we as Recents,oi as Refresh,ei as Remove,jo as Removed,Ze as Rename,Ca as Repository,Qo as Reset,X as Role,Ro as Scheduler,p as Search,Da as Security,u as See,$ as Seen,ta as Sequentially,Zo as Server,He as Settings,Ne as Share,ro as Shared,Ae as Shares,Oo as Simulate,wi as Size,oa as Source,Fe as Space,qe as Spaces,J as Status,gi as Sync,hi as Synced,pi as Synchronization,ui as Synchronizations,mi as Synchronize,Ai as Tasks,Ni as Text,Mi as Total,Vo as Transfers,Ce as Trash,go as Type,zo as Unknown,ne as Unlimited,ve as Update,Q as User,W as Users,Ia as Versions,_o as View,fo as Visibility,G as Visible,ka as Website,va as Wizard,Po as absent,j as account,po as active,Oe as anchored,N as application,fe as applications,Fo as async,Io as available,oe as available_space_is_low,fa as both,Do as busy,Ao as commented,Co as comments,qi as create,Uo as day,xo as days,Ea as default,Qi as delete,ci as delete_multiple_files,si as delete_one_file,xe as desktop_app_access,Ue as desktop_app_sync,_i as directories,Ei as directory,pa as disabled,ca as enabled,io as expired,sa as fast,Di as file,Pi as files,Ii as folder,x as group,U as groups,Zi as guest,$i as guests,_e as guests_admin,Ri as item,Fi as items,ji as link,Ki as links,Na as local,Mo as logout,de as manager,te as member,re as members,Ci as modified,Yi as modify,Oi as move,b as nb_actions,z as nb_active_tasks,v as nb_elements,w as nb_messages,C as nb_notifications,Gi as nb_selections,h as nb_tasks,za as never,To as no,xi as no_selection,m as no_task,oo as none,Eo as offline,f as one_active_task,y as one_message,S as one_notification,Ui as one_selection,g as one_task,ae as online,Me as personal_groups_admin,Le as personal_space,Aa as public,ia as recent,Se as recents,Ta as remote,ha as scheduler_unit_day,ma as scheduler_unit_hour,ga as scheduler_unit_minute,d as search,la as secure,qo as seq,Wi as share,ke as shared,Te as shares,Pe as shares_access,Ee as shares_admin,Ve as spaces,Ie as spaces_access,De as spaces_admin,mo as suspended,di as synchronization,Sa as to,li as trash_multiple_files,ri as trash_one_file,Qe as unanchored,Y as user,H as users,Re as webdav,Ge as webdav_access,Vi as write,No as yes};
@@ -0,0 +1 @@
1
+ import{b as R,c as ft}from"./chunk-LK2UCQJ6.js";import{a as ue,b as z,c as Te,d as vt}from"./chunk-LP5TBXEN.js";import{a as Ct}from"./chunk-WSSU2HXE.js";import{a as ht,b as gt,c as bt}from"./chunk-VJTXJ43D.js";import{a as S,b as Y,c as tt,e as _t}from"./chunk-MTVSJTIW.js";import{a as _e,b as pt,c as ct,d as ut,h as dt}from"./chunk-3OHSRRKH.js";import{a as Ge,b as Se,c as lt,d as st,e as mt}from"./chunk-3R4WKOHQ.js";import"./chunk-PNR6M34W.js";import{b as Me,d as Pe}from"./chunk-RV3VZJPZ.js";import{m as rt,q as at}from"./chunk-VQQKMY2C.js";import{A as K,B as et,I as H,Nb as xe,Sb as ye,Va as ve,Za as de,r as je,va as it,wa as nt,xa as ot,yb as V,z as Ze}from"./chunk-XDZGW64M.js";import{$a as E,$c as Re,Ab as A,Af as ze,Cf as Ye,Db as _,Dd as re,E as be,Ed as M,Fb as u,Fd as Ke,Ha as J,He as se,Hf as ce,Jb as Q,Jc as te,Jf as Je,Kb as q,Kd as ae,L as O,Lb as W,Na as s,Nb as Ce,Ob as U,Pa as I,Pb as k,Pd as He,Qb as m,Rb as C,Sb as $,Se as qe,Tb as Ee,Ub as X,Vb as Z,Ve as We,Vf as Xe,Wb as ee,Yb as Ae,Zb as De,_c as Ve,ae as le,bd as Fe,dd as L,eb as w,ec as v,ed as Ue,eg as P,fc as D,fd as ke,gc as T,hd as j,ia as x,id as ie,kb as h,lb as g,md as Oe,na as y,nd as Ie,oa as G,ob as B,od as Be,pb as N,pd as Ne,pf as me,qb as c,qd as $e,rb as r,sb as a,tb as d,wd as ne,xd as Le,xf as pe,yd as oe,ye as Qe}from"./chunk-DIT6W7VM.js";import"./chunk-DM4NXKEP.js";import"./chunk-ZIJQRARU.js";import{a as he,b as ge}from"./chunk-N3U6637P.js";var xt=(()=>{let l=class l{constructor(){this.currentMemberIds=[],this.hasChanges=new I,this.layout=x(V),this.newMembers=[],this.submitted=!1,this.icons={faUserPlus:se},this.adminService=x(R)}searchMembers(n){let o={search:n,onlyUsers:!0,usersRole:this.parentGroup.type===ue.USER?Ze.USER:void 0,ignoreUserIds:[...this.currentMemberIds,...this.newMembers.map(e=>e.id)]};return this.adminService.searchMembers(o)}onSubmit(){this.submitted=!0,this.adminService.addUsersToGroup(this.parentGroup.id,this.newMembers.map(n=>n.id)).subscribe({next:()=>{this.hasChanges.emit(!0),this.layout.sendNotification("success","Add members",this.newMembers.map(n=>n.name).join("<br>"),null,{enableHtml:!0}),this.layout.closeDialog()},error:n=>{this.submitted=!1,this.layout.sendNotification("error","Add members",this.newMembers.map(o=>o.name).join("<br>"),n,{enableHtml:!0})}})}};l.\u0275fac=function(o){return new(o||l)},l.\u0275cmp=E({type:l,selectors:[["app-admin-group-add-users-dialog"]],inputs:{parentGroup:"parentGroup",currentMemberIds:"currentMemberIds"},outputs:{hasChanges:"hasChanges"},decls:16,vars:7,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],[1,"me-2",3,"icon"],[1,"modal-title","ms-auto"],["l10nTranslate",""],["aria-label","Close","type","button",1,"btn-close","btn-close-white","ms-2",3,"click"],[1,"modal-body"],[3,"membersChange","members","withPermissions","customPlaceholder","searchFunction"],[1,"modal-footer"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-primary",3,"click","disabled"]],template:function(o,e){o&1&&(r(0,"div",0)(1,"h4",1),d(2,"fa-icon",2),r(3,"span"),m(4),a()(),r(5,"h4",3)(6,"span",4),m(7,"Add members"),a()(),r(8,"button",5),_("click",function(){return e.layout.closeDialog()}),a()(),r(9,"div",6)(10,"app-user-search",7),ee("membersChange",function(f){return Z(e.newMembers,f)||(e.newMembers=f),f}),a()(),r(11,"div",8)(12,"button",9),_("click",function(){return e.layout.closeDialog()}),m(13,"Cancel"),a(),r(14,"button",10),_("click",function(){return e.onSubmit()}),m(15," Confirm "),a()()),o&2&&(s(2),c("icon",e.icons.faUserPlus),s(2),C(e.parentGroup.name),s(6),X("members",e.newMembers),c("withPermissions",!1)("customPlaceholder","Type to search for users to add")("searchFunction",e.searchMembers.bind(e)),s(4),c("disabled",e.submitted||!e.newMembers.length))},dependencies:[P,M,dt],encapsulation:2});let t=l;return t})();function wt(t,l){if(t&1&&d(0,"img",9),t&2){let i=u();c("src",i.member.avatarUrl,J)}}function Et(t,l){if(t&1&&d(0,"fa-icon",15),t&2){let i=u();k(i.member.isPersonalGroup?"circle-purple-icon":"circle-primary-icon"),c("icon",i.icons.GROUPS)}}function At(t,l){if(t&1&&(r(0,"div",7)(1,"span",16),m(2,"from the group"),a(),r(3,"span",11),m(4),v(5,"capitalize"),a()()),t&2){let i=u();s(4),C(D(5,1,i.parentGroup.name))}}function Dt(t,l){t&1&&(r(0,"small",4),m(1,"Only the group will be deleted, the members will no longer be part of it."),a())}var yt=(()=>{let l=class l{constructor(){this.wasDeleted=new I,this.submitted=!1,this.icons={GROUPS:H.GROUPS,faMinus:ae,faUserMinus:pe},this.layout=x(V),this.adminService=x(R)}onSubmit(){this.submitted=!0;let n=this.member.isUser?"Remove from group":"Delete group";(this.member.isUser?this.adminService.removeUserFromGroup(this.parentGroup.id,this.member.id):this.adminService.deleteGroup(this.member.id)).subscribe({next:()=>{this.wasDeleted.emit(!0),this.layout.sendNotification("success",n,this.member.name),this.onClose()},error:e=>{this.submitted=!1,this.layout.sendNotification("error",n,this.member.name,e)}})}onClose(){this.wasDeleted.emit(!1),this.layout.closeDialog()}};l.\u0275fac=function(o){return new(o||l)},l.\u0275cmp=E({type:l,selectors:[["app-admin-group-delete-dialog"]],inputs:{parentGroup:"parentGroup",member:"member"},outputs:{wasDeleted:"wasDeleted"},decls:26,vars:10,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],[1,"me-2",3,"icon"],[1,"modal-title","ms-auto"],["l10nTranslate",""],["aria-label","Close","type","button",1,"btn-close","btn-close-white","ms-2",3,"click"],[1,"modal-body"],[1,"d-flex","align-items-center"],[1,"d-flex","align-items-center","avatar","me-2"],["alt","",1,"avatar-img",3,"src"],[3,"icon","class"],[1,"fw-bold","me-1"],[1,"modal-footer"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-danger",3,"click","disabled"],[3,"icon"],["l10nTranslate","",1,"mx-1"]],template:function(o,e){o&1&&(r(0,"div",0)(1,"h4",1),d(2,"fa-icon",2),r(3,"span"),m(4),a()(),r(5,"h4",3)(6,"span",4),m(7),a()(),r(8,"button",5),_("click",function(){return e.onClose()}),a()(),r(9,"div",6)(10,"div",7)(11,"div",8),h(12,wt,1,1,"img",9)(13,Et,1,3,"fa-icon",10),a(),r(14,"span",11),m(15),v(16,"capitalize"),a(),r(17,"span",4),m(18,"will be removed"),a(),h(19,At,6,3,"div",7),a(),h(20,Dt,2,0,"small",4),a(),r(21,"div",12)(22,"button",13),_("click",function(){return e.onClose()}),m(23,"Cancel"),a(),r(24,"button",14),_("click",function(){return e.onSubmit()}),m(25," Remove "),a()()),o&2&&(s(2),c("icon",e.member.isUser?e.icons.faUserMinus:e.icons.faMinus),s(2),C(e.member.name),s(3),C(e.member.isUser?"Remove from group":"Delete group"),s(5),g(e.member.isUser?12:13),s(3),C(D(16,8,e.member.name)),s(4),g(e.member.isUser?19:-1),s(),g(e.member.isGroup?20:-1),s(4),c("disabled",e.submitted))},dependencies:[P,M,_t],encapsulation:2});let t=l;return t})();var Mt=(t,l)=>l.value;function Pt(t,l){if(t&1&&(d(0,"fa-icon",31),r(1,"span"),m(2),a()),t&2){let i=u();c("icon",i.icons.faPen),s(2),C(i.group.name)}}function Vt(t,l){if(t&1&&(d(0,"fa-icon",31),r(1,"span",23),m(2,"New group"),a()),t&2){let i=u();c("icon",i.icons.faPlus)}}function Rt(t,l){t&1&&(r(0,"h4",2)(1,"span",23),m(2,"Edit group"),a()())}function Ft(t,l){if(t&1&&(d(0,"fa-icon",32),r(1,"span",33),m(2,"Settings"),a()),t&2){let i=u();c("icon",i.icons.faCog)}}function Ut(t,l){if(t&1&&(r(0,"option",21),m(1),a()),t&2){let i=l.$implicit;c("ngValue",i.value),s(),C(i.key)}}function kt(t,l){t&1&&(r(0,"span",23),m(1,"All users can see this group."),a())}function Ot(t,l){t&1&&(r(0,"span",23),m(1,"Users who are not members of this group cannot see it."),a())}function It(t,l){t&1&&(r(0,"span",23),m(1,"The group is not visible, its members cannot see it and cannot see each other."),a())}function Bt(t,l){if(t&1&&(r(0,"div",24)(1,"div",18)(2,"label",34),m(3,"Creation date"),a(),r(4,"div",35),m(5),v(6,"amDateFormat"),a()(),r(7,"div",36)(8,"label",37),m(9,"Modification date"),a(),r(10,"div",38),m(11),v(12,"amDateFormat"),a()()()),t&2){let i=u();s(5),C(D(6,2,i.group.createdAt)),s(6),C(D(12,4,i.group.modifiedAt))}}function Nt(t,l){if(t&1&&(d(0,"fa-icon",32),r(1,"span",33),m(2,"Permissions"),a()),t&2){let i=u();c("icon",i.icons.faShieldHalved)}}var we=(()=>{let l=class l{constructor(){this.group=null,this.parentGroup=null,this.groupChange=new I,this.locale=x(oe),this.layout=x(V),this.icons={GROUPS:H.GROUPS,faPen:me,faPlus:ce,faCog:qe,faShieldHalved:Ye},this.submitted=!1,this.originalOrderKeyValue=de,this.allVisibilities={Visible:z.VISIBLE,Private:z.PRIVATE,Isolated:z.ISOLATED},this.adminService=x(R)}ngOnInit(){this.groupForm=new ke({name:new j(this.group?.name||"",Fe.required),description:new j(this.group?.description||""),visibility:new j(this.group?.visibility||z.VISIBLE),applications:new j(this.group?.applications||[]),parent:new j(this.parentGroup)})}updateApplications(n){this.groupForm.controls.applications.setValue(n),this.groupForm.controls.applications.markAsDirty()}onSetParent(n){this.groupForm.controls.parent.setValue(n?{id:n.id,name:n.name}:null),this.groupForm.controls.parent.markAsDirty()}searchGroups(n){let o={search:n,onlyGroups:!0,excludePersonalGroups:!0,ignoreGroupIds:this.groupForm.value.parent?[this.groupForm.value.parent.id]:[]};return this.adminService.searchMembers(o,!0)}onSubmit(){if(this.submitted=!0,this.group?.id){let n=this.makeDto();this.adminService.updateGroup(this.group.id,n).subscribe({next:o=>{this.groupChange.emit(["update",o]),this.layout.sendNotification("success","Group updated",this.groupForm.value.name),this.layout.closeDialog()},error:o=>this.onError(o)})}else{let n=this.makeDto(!0);this.adminService.createGroup(n).subscribe({next:o=>{this.groupChange.emit(["add",o]),this.layout.sendNotification("success","Group created",this.groupForm.value.name),this.layout.closeDialog()},error:o=>this.onError(o)})}}makeDto(n=!1){let o;n?o=Object.fromEntries(Object.keys(this.groupForm.controls).map(e=>[e,this.groupForm.controls[e].value])):o=Object.fromEntries(Object.keys(this.groupForm.controls).filter(e=>this.groupForm.controls[e].dirty).map(e=>[e,this.groupForm.controls[e].value]));for(let e in o)switch(e){case"applications":o.permissions=o[e].join(et),delete o.applications;break;case"parent":o.parentId=o[e]?o[e].id:null,delete o.parent;break}return o}onError(n){this.layout.sendNotification("error","Group error",this.groupForm.value.name,n),this.submitted=!1}};l.\u0275fac=function(o){return new(o||l)},l.\u0275cmp=E({type:l,selectors:[["app-admin-group-dialog"]],inputs:{group:"group",parentGroup:"parentGroup"},outputs:{groupChange:"groupChange"},decls:50,vars:24,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],[1,"modal-title","ms-auto"],["aria-label","Close","type","button",3,"click"],[1,"modal-body","form-validation",3,"formGroup"],["type","pills",3,"justified"],[1,"my-3"],["customClass","tab-dialog form-validation",3,"selectTab"],["tabHeading",""],[1,"d-flex","flex-column"],[1,"d-flex","col-12","pb-3"],[1,"flex-fill","col-6","pe-4"],["for","name","l10nTranslate",""],["id","name","appAutofocus","","formControlName","name","autocomplete","off","type","text",1,"form-control","form-control-sm",3,"autoSelect"],[1,"flex-fill","col-6","ps-4"],["for","description","l10nTranslate",""],["id","description","formControlName","description","autocomplete","off","type","text",1,"form-control","form-control-sm"],[1,"d-flex","flex-column","align-items-start","col-12","pb-3"],[1,"col-6","pe-4"],["for","visibility","l10nTranslate",""],["id","visibility","formControlName","visibility",1,"form-control","form-select","form-select-sm"],["l10nTranslate","",3,"ngValue"],[1,"d-none","d-sm-block","fst-italic","fs-xxs"],["l10nTranslate",""],[1,"d-flex","align-items-start","col-12","pb-3"],["for","parent","translate",""],["id","parent",3,"data","searchFunction","active","itemIcon","placeholder"],[3,"permissionsChange","permissions"],[1,"modal-footer"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-primary",3,"click","disabled"],[1,"me-2",3,"icon"],[3,"icon"],["l10nTranslate","",1,"ms-2"],["for","created","l10nTranslate",""],["id","created"],[1,"d-flex","flex-column","align-items-end","col-6","ps-4"],["for","modified","l10nTranslate",""],["id","modified"]],template:function(o,e){if(o&1&&(r(0,"div",0)(1,"h4",1),h(2,Pt,3,2)(3,Vt,3,1),a(),h(4,Rt,3,0,"h4",2),r(5,"button",3),_("click",function(){return e.layout.closeDialog()}),a()(),r(6,"div",4)(7,"tabset",5),d(8,"hr",6),r(9,"tab",7),_("selectTab",function(){return e.tabView=null}),w(10,Ft,3,1,"ng-template",8),r(11,"div",9)(12,"div",10)(13,"div",11)(14,"label",12),m(15,"Name"),a(),d(16,"input",13),a(),r(17,"div",14)(18,"label",15),m(19,"Description"),a(),d(20,"input",16),a()(),r(21,"div",17)(22,"div",18)(23,"label",19),m(24,"Visibility"),a(),r(25,"select",20),B(26,Ut,2,2,"option",21,Mt),v(28,"keyvalue"),a()(),r(29,"div",22),h(30,kt,2,0,"span",23)(31,Ot,2,0,"span",23)(32,It,2,0,"span",23),a()(),r(33,"div",24)(34,"div",18)(35,"label",25),m(36,"Parent group"),a(),r(37,"app-select",26),v(38,"translate"),_("data",function(f){return e.onSetParent(f)}),a()()(),h(39,Bt,13,6,"div",24),a()(),r(40,"tab",7),_("selectTab",function(){return e.tabView="permissions"}),w(41,Nt,3,1,"ng-template",8),r(42,"div",9)(43,"div",10)(44,"app-admin-permissions",27),_("permissionsChange",function(f){return e.updateApplications(f)}),a()()()()()(),r(45,"div",28)(46,"button",29),_("click",function(){return e.layout.closeDialog()}),m(47,"Cancel"),a(),r(48,"button",30),_("click",function(){return e.onSubmit()}),m(49," Confirm "),a()()),o&2){let p;s(2),g(e.group?2:3),s(2),g(e.group?4:-1),s(),k(Ae("btn-close btn-close-white ",e.group?"ms-2":"ms-auto"," ms-2")),s(),c("formGroup",e.groupForm),s(),c("justified",!0),s(9),U("is-invalid",e.groupForm.controls.name.invalid),c("autoSelect",!1),s(10),N(T(28,18,e.allVisibilities,e.originalOrderKeyValue)),s(4),g((p=e.groupForm.value.visibility)===e.allVisibilities.Visible?30:p===e.allVisibilities.Private?31:p===e.allVisibilities.Isolated?32:-1),s(7),c("searchFunction",e.searchGroups.bind(e))("active",e.groupForm.value.parent)("itemIcon",e.icons.GROUPS)("placeholder",T(38,21,"Select the parent group",e.locale.language)),s(2),g(e.group?39:-1),s(5),c("permissions",e.groupForm.value.applications),s(4),c("disabled",e.submitted||e.groupForm.invalid)}},dependencies:[P,M,Le,Ne,$e,Re,Be,L,Ue,Oe,Ie,rt,ft,vt,ct,ut,pt,te,re,_e],encapsulation:2});let t=l;return t})();var St=(()=>{let l=class l{constructor(){this.layout=x(V),this.submitted=!1,this.isManager=!1,this.USER_GROUP_ROLE=K,this.icons={faUserPen:Qe,faKey:le},this.adminService=x(R)}ngOnInit(){this.isManager=this.user.isGroupManager}onSubmit(){if(this.submitted=!0,this.user.isGroupManager===this.isManager){this.layout.closeDialog();return}let n=this.isManager?K.MANAGER:K.MEMBER;this.adminService.updateUserFromGroup(this.parentGroup.id,this.user.id,{role:n}).subscribe({next:()=>{this.user.setGroupRole(n),this.layout.sendNotification("success","Edit user",this.user.name),this.layout.closeDialog()},error:o=>{this.submitted=!1,this.layout.sendNotification("error","Edit user",this.user.name,o)}})}};l.\u0275fac=function(o){return new(o||l)},l.\u0275cmp=E({type:l,selectors:[["app-admin-group-edit-user-dialog"]],inputs:{parentGroup:"parentGroup",user:"user"},decls:25,vars:5,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],[1,"me-2",3,"icon"],[1,"modal-title","ms-auto"],["l10nTranslate",""],["aria-label","Close","type","button",1,"btn-close","btn-close-white","ms-2",3,"click"],[1,"modal-body"],[1,"d-flex","align-items-center"],[1,"form-check","form-switch","form-check-inline"],[1,"d-flex"],[1,"form-check-label"],["type","checkbox",1,"form-check-input",3,"ngModelChange","ngModel"],[1,"ms-1",3,"icon"],[1,"modal-footer"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-primary",3,"click","disabled"]],template:function(o,e){o&1&&(r(0,"div",0)(1,"h4",1),d(2,"fa-icon",2),r(3,"span"),m(4),a()(),r(5,"h4",3)(6,"span",4),m(7,"Edit user"),a()(),r(8,"button",5),_("click",function(){return e.layout.closeDialog()}),a()(),r(9,"div",6)(10,"div",7)(11,"div",8)(12,"div",9)(13,"label",10)(14,"input",11),ee("ngModelChange",function(f){return Z(e.isManager,f)||(e.isManager=f),f}),a(),r(15,"span",4),m(16,"Set as group manager"),a(),d(17,"fa-icon",12),a()()()(),r(18,"small",4),m(19,"As a manager, the user will be able to manage group members but not group properties."),a()(),r(20,"div",13)(21,"button",14),_("click",function(){return e.layout.closeDialog()}),m(22,"Cancel"),a(),r(23,"button",15),_("click",function(){return e.onSubmit()}),m(24," Confirm "),a()()),o&2&&(s(2),c("icon",e.icons.faUserPen),s(2),C(e.user.name),s(10),X("ngModel",e.isManager),s(3),c("icon",e.icons.faKey),s(6),c("disabled",e.submitted))},dependencies:[P,M,ne,Ve,L,ie],encapsulation:2});let t=l;return t})();var $t=["MainContextMenu"],Lt=["TargetContextMenu"],Tt=(t,l)=>l.key,jt=(t,l)=>l.mid;function Kt(t,l){if(t&1){let i=A();r(0,"ul",26)(1,"li",27)(2,"a",28),_("click",function(){y(i);let o=u();return G(o.openDialog(!0))}),r(3,"span",14),d(4,"fa-icon",7),m(5),a()()(),r(6,"li",27)(7,"a",28),_("click",function(){y(i);let o=u();return G(o.addUserToGroupDialog())}),r(8,"span",14),d(9,"fa-icon",7),m(10,"Add members"),a()()()()}if(t&2){let i=u();s(2),U("disabled",!!i.currentGroup&&i.personalGroupsView),s(2),c("icon",i.icons.GROUPS),s(),$(" ",i.personalGroupsView?"Personal group":"Group"),s(2),U("disabled",!i.currentGroup),s(2),c("icon",i.icons.faUserPlus)}}function Ht(t,l){if(t&1&&d(0,"fa-icon",31),t&2){let i=u(3);c("icon",i.sortTable.sortParam.asc?i.icons.faArrowDown:i.icons.faArrowUp)("fixedWidth",!1)}}function Qt(t,l){if(t&1){let i=A();r(0,"th",30),_("click",function(){y(i);let o=u().$implicit,e=u();return G(e.sortBy(o.key))}),m(1),h(2,Ht,1,2,"fa-icon",31),a()}if(t&2){let i=u().$implicit,n=u();k(i.value.class),Ce("width",i.value.width,"%"),U("text-align-center",i.value.textCenter)("cursor-pointer",i.value.sortable),s(),$(" ",i.value.label," "),s(),g(n.sortTable.sortParam.column===i.key?2:-1)}}function qt(t,l){if(t&1&&h(0,Qt,3,10,"th",29),t&2){let i=l.$implicit;g(i.value.show?0:-1)}}function Wt(t,l){if(t&1&&d(0,"img",36),t&2){let i=u(4).$implicit;c("src",i.avatarUrl,J)}}function zt(t,l){if(t&1&&d(0,"fa-icon",7),t&2){let i=u(4).$implicit,n=u();k(i.isPersonalGroup?"circle-purple-icon":"circle-primary-icon"),c("icon",n.icons.GROUPS)}}function Yt(t,l){if(t&1&&d(0,"fa-icon",39),t&2){let i=u(5);c("icon",i.icons.faKey)}}function Jt(t,l){if(t&1&&(r(0,"div",34),h(1,Wt,1,1,"img",36)(2,zt,1,3,"fa-icon",37),r(3,"div",35)(4,"span",38),m(5),h(6,Yt,1,1,"fa-icon",39),a(),r(7,"span",40),m(8),a()()()),t&2){let i=u(3).$implicit;s(),g(i.isUser?1:2),s(4),$(" ",i.name," "),s(),g(i.isUser&&i.isGroupManager?6:-1),s(2),C(i.description)}}function Xt(t,l){if(t&1&&(r(0,"span"),m(1),v(2,"joinCounts"),a()),t&2){let i=u(4).$implicit;s(),C(D(2,1,i.counts))}}function Zt(t,l){if(t&1&&h(0,Xt,3,3,"span"),t&2){let i=u(3).$implicit;g(i.isGroup?0:-1)}}function ei(t,l){t&1&&(r(0,"span",14),m(1,"manager"),a())}function ti(t,l){if(t&1&&(r(0,"span",14),m(1),a()),t&2){let i=u(4).$implicit;s(),C(i.type)}}function ii(t,l){if(t&1&&h(0,ei,2,0,"span",14)(1,ti,2,1,"span",14),t&2){let i=u(3).$implicit;g(i.isUser&&i.isGroupManager?0:1)}}function ni(t,l){if(t&1&&(r(0,"div"),m(1),v(2,"amDateFormat"),a()),t&2){let i=u(4).$implicit;s(),C(D(2,1,i.modifiedAt))}}function oi(t,l){if(t&1&&(r(0,"div",35)(1,"div"),m(2),v(3,"amDateFormat"),a(),h(4,ni,3,3,"div"),a()),t&2){let i=u(3).$implicit;s(2),C(D(3,2,i.createdAt)),s(2),g(i.modifiedAt?4:-1)}}function ri(t,l){if(t&1&&(r(0,"td"),h(1,Jt,9,4,"div",34)(2,Zt,1,1)(3,ii,2,1)(4,oi,5,4,"div",35),a()),t&2){let i,n=u().$implicit,o=u().$implicit;k(De("",n.value.class," ",n.value.newly?"prop-newly-"+o[n.value.newly]:"")),Ce("width",n.value.width,"%"),U("text-align-center",n.value.textCenter),s(),g((i=n.key)==="name"?1:i==="members"?2:i==="type"?3:i==="createdAndModified"?4:-1)}}function ai(t,l){if(t&1&&h(0,ri,5,9,"td",33),t&2){let i=l.$implicit;g(i.value.show?0:-1)}}function li(t,l){if(t&1){let i=A();r(0,"tr",32),_("click",function(){let o=y(i).$implicit,e=u();return G(e.onSelect(o))})("contextmenu",function(o){let e=y(i).$implicit,p=u();return G(p.onTargetContextMenu(o,e))})("appTap",function(){let o=y(i).$implicit,e=u();return G(e.browse(o))}),B(1,ai,1,1,null,null,Tt),v(3,"keyvalue"),a()}if(t&2){let i=l.$implicit,n=u();U("selected",i.mid===(n.selected==null?null:n.selected.mid)),s(),N(T(3,2,n.tableHeaders,n.originalOrderKeyValue))}}function si(t,l){if(t&1&&(r(0,"span",14),d(1,"fa-icon",7),m(2),a()),t&2){let i=u(2);s(),c("icon",i.icons.faPlus),s(),$(" ",i.personalGroupsView?"Personal group":"Group")}}function mi(t,l){if(t&1){let i=A();w(0,si,3,2,"ng-template",25),_("execute",function(){y(i);let o=u();return G(o.openDialog(!0))})}}function pi(t,l){if(t&1&&(r(0,"span",14),d(1,"fa-icon",7),m(2,"Add members"),a()),t&2){let i=u(2);s(),c("icon",i.icons.faUserPlus)}}function ci(t,l){if(t&1){let i=A();w(0,pi,3,1,"ng-template",25),_("execute",function(){y(i);let o=u();return G(o.addUserToGroupDialog())})}}function ui(t,l){}function di(t,l){if(t&1&&(r(0,"span",14),d(1,"fa-icon",7),m(2,"Refresh"),a()),t&2){let i=u();s(),c("icon",i.icons.faArrowRotateRight)}}function _i(t,l){if(t&1&&(r(0,"span",14),d(1,"fa-icon",7),m(2),a()),t&2){let i=u(2);s(),c("icon",i.icons.faPen),s(),$(" ",i.selected.isGroup?"Edit group":"Edit user")}}function fi(t,l){if(t&1&&(r(0,"span",14),d(1,"fa-icon",7),m(2,"Delete group"),a()),t&2){let i=u(3);s(),c("icon",i.icons.faMinus)}}function hi(t,l){if(t&1){let i=A();w(0,fi,3,1,"ng-template",25),_("execute",function(){y(i);let o=u(2);return G(o.openDialog(!1,!0))})}}function gi(t,l){if(t&1&&(r(0,"span",14),d(1,"fa-icon",7),m(2,"Remove from group"),a()),t&2){let i=u(3);s(),c("icon",i.icons.faUserMinus)}}function bi(t,l){if(t&1){let i=A();w(0,gi,3,1,"ng-template",25),_("execute",function(){y(i);let o=u(2);return G(o.openDialog(!1,!0))})}}function Ci(t,l){if(t&1){let i=A();w(0,_i,3,2,"ng-template",25),_("execute",function(){y(i);let o=u();return G(o.openDialog())}),h(1,hi,1,0,null,23)(2,bi,1,0,null,23)}if(t&2){let i=u();s(),g(i.selected.isGroup?1:2)}}var ao=(()=>{let l=class l{constructor(){this.locale=x(oe),this.originalOrderKeyValue=de,this.icons={GROUPS:H.GROUPS,faRotate:Ke,faPlus:ce,faMinus:ae,faPen:me,faArrowDown:Xe,faArrowUp:We,faKey:le,faUserPlus:se,faUserMinus:pe,faArrowRotateRight:Je,faToggleOn:ze,faToggleOff:He},this.tableHeaders={name:{label:"Name",width:30,textCenter:!1,class:"",show:!0,sortable:!0},type:{label:"Type",width:10,textCenter:!0,class:"",show:!0,sortable:!0},members:{label:"Members",width:10,class:"",textCenter:!0,show:!0},createdAndModified:{label:"Created & Modified",width:12,textCenter:!0,class:"d-none d-lg-table-cell",newly:"newly",show:!0,sortable:!0}},this.personalGroupsView=!1,this.loading=!1,this.selected=null,this.members=[],this.router=x(Pe),this.activatedRoute=x(Me),this.layout=x(V),this.adminService=x(R),this.sortSettings={default:[{prop:"name",type:"string"}],name:[{prop:"name",type:"string"}],type:[{prop:"type",type:"string"}],createdAndModified:[{prop:"modifiedAt",type:"date"},{prop:"createdAt",type:"date"}]},this.sortTable=new mt(this.constructor.name,this.sortSettings),this.activatedRoute.data.subscribe(n=>{this.personalGroupsView=n.type===ue.PERSONAL,this.setEnv(n.routes)}),this.activatedRoute.queryParams.subscribe(n=>this.focusOnSelect=n.select),this.layout.setBreadcrumbIcon(tt.GROUPS)}onPersonalGroupsView(n){this.personalGroupsView=n,this.router.navigate([S.BASE,n?S.PGROUPS:S.GROUPS]).catch(console.error)}refresh(){this.loadGroups(this.currentGroup?.name)}browse(n){n.isGroup&&this.router.navigate([n.name],{relativeTo:this.activatedRoute}).catch(console.error)}onSelect(n=null){this.selected=n}onContextMenu(n){n.preventDefault(),n.stopPropagation(),this.layout.openContextMenu(n,this.mainContextMenu)}onTargetContextMenu(n,o){n.preventDefault(),n.type==="contextmenu"&&n.stopPropagation(),this.onSelect(o),this.layout.openContextMenu(n,this.targetContextMenu)}sortBy(n,o=!0,e){this.members=this.sortTable.sortBy(n,o,e||this.members)}addUserToGroupDialog(){this.layout.openDialog(xt,"md",{initialState:{parentGroup:this.currentGroup,currentMemberIds:this.members.filter(o=>o.isUser).map(o=>o.id)}}).content.hasChanges.pipe(be(o=>o),O(1)).subscribe(()=>this.refresh())}openDialog(n=!1,o=!1){n?this.personalGroupsView?this.layout.openDialog(Te,"md").content.groupChange.pipe(O(1)).subscribe(p=>{let[f,b]=p;f==="add"&&(b.setGroupRole(K.MANAGER),b.counts={users:1},this.sortBy(this.sortTable.sortParam.column,!1,this.members.concat(b)),this.onSelect(b))}):this.layout.openDialog(we,"md",{initialState:{parentGroup:this.currentGroup}}).content.groupChange.pipe(O(1)).subscribe(p=>{let[f,b]=p;if(f==="add")if(!this.currentGroup&&!b?.parent||b.parent.id===this.currentGroup.id){let F=new ye(ge(he({},b),{type:xe.GROUP}));this.sortBy(this.sortTable.sortParam.column,!1,this.members.concat(new ye(ge(he({},b),{type:xe.GROUP})))),this.onSelect(F)}else this.router.navigate([`${S.BASE}/${S.GROUPS}`,b.parent?.id?b.parent.name:""],{queryParams:{select:b.name}}).catch(console.error)}):o?this.layout.openDialog(yt,"md",{initialState:{parentGroup:this.currentGroup,member:this.selected}}).content.wasDeleted.pipe(be(p=>p),O(1)).subscribe(()=>{this.currentGroup?this.selected.counts?.groups?this.loadGroups(this.currentGroup.name):(this.sortBy(this.sortTable.sortParam.column,!1,this.members.filter(p=>this.selected.mid!==p.mid)),this.onSelect()):this.loadGroups()}):this.selected.isGroup?this.personalGroupsView?this.layout.openDialog(Te,"md",{initialState:{originalGroup:this.selected}}).content.groupChange.pipe(O(1)).subscribe(p=>{let[f,b]=p;f==="update"&&(this.selected=Object.assign(this.selected,{name:b.name,description:b.description,modifiedAt:b.modifiedAt}))}):this.adminService.getGroup(this.selected.id).subscribe({next:e=>{this.layout.openDialog(we,"md",{initialState:{group:e,parentGroup:this.currentGroup}}).content.groupChange.pipe(O(1)).subscribe(f=>{let[b,F]=f;b==="update"&&(!this.currentGroup&&!F?.parent||F.parent.id===this.currentGroup.id?this.selected=Object.assign(this.selected,F):this.router.navigate([`${S.BASE}/${S.GROUPS}`,F.parent?.id?F.parent.name:""],{queryParams:{select:F.name}}).catch(console.error))})},error:e=>this.layout.sendNotification("error","Edit group",this.selected.name,e)}):this.layout.openDialog(St,"md",{initialState:{user:this.selected,parentGroup:this.currentGroup}})}setEnv(n){let o;n.length?(o=n[n.length-1].path,this.layout.setBreadcrumbNav({url:this.personalGroupsView?`/${S.BASE}/${S.PGROUPS}${ve(n)}`:`/${S.BASE}/${S.GROUPS}${ve(n)}`,firstLink:`/${S.BASE}/${S.GROUPS}`,splicing:1,translating:!0,sameLink:!1,mutateLevel:{0:{setTitle:this.personalGroupsView?Y.PGROUPS:Y.GROUPS,translateTitle:!0}}})):this.layout.setBreadcrumbNav({url:this.personalGroupsView?`/${S.BASE}/${S.PGROUPS}/${Y.PGROUPS}`:`/${S.BASE}/${S.GROUPS}/${Y.GROUPS}`,splicing:2,translating:!0,sameLink:!0}),this.loadGroups(o)}loadGroups(n){this.loading=!0,this.onSelect(),this.adminService.browseGroup(n,this.personalGroupsView).subscribe({next:o=>{this.currentGroup=o.parentGroup,this.sortBy(this.sortTable.sortParam.column,!1,o.members),this.focusOnSelect?this.focusOn(this.focusOnSelect):this.scrollView.scrollInto(-1),this.loading=!1},error:o=>{this.members=[],this.layout.sendNotification("error","Groups",o.error.message),this.onSelect(),this.loading=!1}})}focusOn(n){let o=this.members.find(e=>e.name===n);o&&(setTimeout(()=>this.scrollView.scrollInto(o),100),this.onSelect(o))}};l.\u0275fac=function(o){return new(o||l)},l.\u0275cmp=E({type:l,selectors:[["app-admin-groups"]],viewQuery:function(o,e){if(o&1&&(Q(Se,5),Q(Ge,7),Q($t,7),Q(Lt,7)),o&2){let p;q(p=W())&&(e.scrollView=p.first),q(p=W())&&(e.inputFilter=p.first),q(p=W())&&(e.mainContextMenu=p.first),q(p=W())&&(e.targetContextMenu=p.first)}},decls:48,vars:42,consts:[["MainContextMenu",""],["TargetContextMenu",""],[1,"app-top-menu"],["container","body","type","button",1,"btn","btn-sm","btn-secondary","me-1",3,"click","tooltip"],[3,"icon","animation"],["dropdown","",1,"btn-group","btn-group-sm","me-1"],["dropdownToggle","","container","body","type","button",1,"btn","btn-sm","btn-secondary","dropdown-toggle",3,"tooltip"],[3,"icon"],["class","dropdown-menu","role","menu",4,"dropdownMenu"],["container","body","type","button",1,"btn","btn-sm","btn-secondary","me-1",3,"click","disabled","tooltip"],[1,"ms-auto"],["btnCheckbox","","type","button",1,"btn","btn-sm","btn-custom","me-1",3,"ngModelChange","ngModel"],[1,"d-flex","align-items-center"],[1,"me-2",3,"icon"],["l10nTranslate",""],[1,"btn-group","btn-group-sm"],[1,"d-none","d-sm-block"],[1,"app-table"],[3,"contextmenu","bufferAmount","items"],["tabindex","-1"],[3,"selected"],[1,"app-foot-menu"],[1,"mx-auto"],["contextMenuItem",""],["contextMenuItem","",3,"divider"],["contextMenuItem","",3,"execute"],["role","menu",1,"dropdown-menu"],["role","menuitem"],[1,"dropdown-item",3,"click"],["l10nTranslate","",3,"width","text-align-center","cursor-pointer","class"],["l10nTranslate","",3,"click"],[3,"icon","fixedWidth"],[3,"click","contextmenu","appTap"],[3,"width","text-align-center","class"],[1,"d-flex","align-items-center","avatar"],[1,"d-flex","flex-column"],["alt","",1,"avatar-img",3,"src"],[3,"icon","class"],["draggable","false",1,"no-pointer-events"],[1,"m-0",3,"icon"],["draggable","false",1,"no-pointer-events","text-muted","fs-xxxs"]],template:function(o,e){if(o&1){let p=A();r(0,"div",2)(1,"button",3),v(2,"translate"),_("click",function(){return y(p),G(e.refresh())}),d(3,"fa-icon",4),a(),r(4,"div",5)(5,"button",6),v(6,"translate"),d(7,"fa-icon",7),a(),w(8,Kt,11,7,"ul",8),a(),r(9,"button",9),v(10,"translate"),_("click",function(){return y(p),G(e.openDialog(!1,!0))}),d(11,"fa-icon",7),a(),r(12,"button",9),v(13,"translate"),_("click",function(){return y(p),G(e.openDialog())}),d(14,"fa-icon",7),a(),r(15,"div",10)(16,"button",11),_("ngModelChange",function(b){return y(p),G(e.onPersonalGroupsView(b))}),r(17,"div",12),d(18,"fa-icon",13),r(19,"span",14),m(20,"Personal groups"),a()()(),r(21,"div",15),d(22,"app-input-filter",16),a()()(),r(23,"table",17)(24,"thead")(25,"tr"),B(26,qt,1,1,null,null,Tt),v(28,"keyvalue"),a()()(),r(29,"app-virtual-scroll",18),v(30,"searchFilter"),_("contextmenu",function(b){return y(p),G(e.onContextMenu(b))}),r(31,"table",17)(32,"tbody",19),B(33,li,4,5,"tr",20,jt),a()()(),r(35,"div",21)(36,"span",22),m(37),v(38,"translate"),a()(),r(39,"context-menu",null,0),h(41,mi,1,0,null,23),h(42,ci,1,0,null,23),w(43,ui,0,0,"ng-template",24)(44,di,3,1,"ng-template",25),_("execute",function(){return y(p),G(e.refresh())}),a(),r(45,"context-menu",null,1),h(47,Ci,3,1),a()}o&2&&(s(),c("tooltip",T(2,21,"Refresh",e.locale.language)),s(2),c("icon",e.icons.faRotate)("animation",e.loading?"spin":null),s(2),c("tooltip",T(6,24,"New",e.locale.language)),s(2),c("icon",e.icons.faPlus),s(2),c("disabled",!e.selected)("tooltip",T(10,27,e.selected!=null&&e.selected.isUser?"Remove from group":"Delete group",e.locale.language)),s(2),c("icon",e.icons.faMinus),s(),c("disabled",!e.selected)("tooltip",T(13,30,e.selected!=null&&e.selected.isGroup?"Edit group":"Edit user",e.locale.language)),s(2),c("icon",e.icons.faPen),s(2),c("ngModel",e.personalGroupsView),s(2),c("icon",e.personalGroupsView?e.icons.faToggleOn:e.icons.faToggleOff),s(8),N(T(28,33,e.tableHeaders,e.originalOrderKeyValue)),s(3),c("bufferAmount",5)("items",T(30,36,e.members,e.inputFilter.search())),s(4),N(e.scrollView==null?null:e.scrollView.viewPortItems),s(4),Ee("",e.members.length," ",T(38,39,"groups",e.locale.language)),s(4),g(e.currentGroup&&!e.personalGroupsView||!e.currentGroup&&e.personalGroupsView?41:-1),s(),g(e.currentGroup?42:-1),s(),c("divider",!0),s(4),g(e.selected?47:-1))},dependencies:[ot,nt,it,P,M,Ge,Se,je,ht,bt,gt,at,ne,L,ie,lt,te,re,st,Ct,_e],encapsulation:2});let t=l;return t})();export{ao as AdminGroupsComponent};
@@ -1 +1 @@
1
- import{x as xe,z as Se}from"./chunk-5K7HEX3C.js";import{a as be}from"./chunk-5KLMS6A4.js";import{g as ge}from"./chunk-ZKCFO2OA.js";import{g as Ce}from"./chunk-4YGJGZZZ.js";import{q as fe,r as _e}from"./chunk-EWKSX76T.js";import{Aa as le,Fa as ce,Kb as de,Mb as ue,Sb as he,_a as pe,eb as y,v as te,w as ie,zb as me}from"./chunk-XLCCZSQL.js";import{Ad as J,Cb as h,Eb as r,Ga as V,Gc as Q,Gd as Z,Hd as ee,Ib as $,Jb as L,Jf as re,Kb as W,L as j,Ma as s,Nb as I,Ob as M,Pb as d,Qa as N,Qb as g,Tb as K,Ub as H,Vb as X,Xa as R,Xb as k,Za as U,_c as F,bb as T,dc as C,ec as q,ef as ne,f as A,fc as x,fd as z,ha as b,jb as f,kb as _,kd as Y,ma as S,na as v,nb as w,nf as oe,ob as P,pb as p,qb as l,rb as c,rf as ae,sb as m,ya as B,yd as G,yf as se,zb as E}from"./chunk-ATP3BFHV.js";import{a as O,b as D}from"./chunk-RTRJ3KFH.js";var ye=(()=>{let o=class o{constructor(){this.inputField="name",this.fullWidth=!1,this.textCenter=!1,this.disableOnBlur=!0,this.disableFocus=!1,this.disableKeyboard=!1,this.updateObject=new T(!0),this.renamingInProgress=new T(!0),this.elementRef=b(B),this.renderer=b(N),this.dangerColor="#dd4b39",this.primaryColor="#3c8dbc"}ngOnInit(){this.initStyles(),this.renamingInProgress.emit(!0),this.elementRef.nativeElement.value=this.inputObject[this.inputField],setTimeout(()=>{this.setParentDraggable("false"),this.disableFocus||(this.elementRef.nativeElement.focus(),this.elementRef.nativeElement.select())},5)}onBlur(){this.disableOnBlur&&this.disableEdit()}onEnter(){this.disableKeyboard||(this.elementRef.nativeElement.value?this.elementRef.nativeElement.value===this.inputObject[this.inputField]?(this.setCorrectForm(),this.disableEdit()):(this.setCorrectForm(),this.updateObject.next({object:this.inputObject,name:this.elementRef.nativeElement.value}),this.disableEdit()):this.setIncorrectForm())}onEscape(){this.disableKeyboard||this.disableEdit()}initStyles(){this.renderer.setStyle(this.elementRef.nativeElement,"display","inline"),this.renderer.setStyle(this.elementRef.nativeElement,"height","100%"),this.renderer.setStyle(this.elementRef.nativeElement,"min-height","20px"),this.renderer.addClass(this.elementRef.nativeElement,"form-control"),this.renderer.addClass(this.elementRef.nativeElement,"form-control-sm"),this.textCenter?(this.renderer.addClass(this.elementRef.nativeElement,"text-center"),this.renderer.setStyle(this.elementRef.nativeElement,"padding","0")):this.renderer.setStyle(this.elementRef.nativeElement,"padding","2px"),this.fullWidth?this.renderer.addClass(this.elementRef.nativeElement,"w-100"):this.renderer.addClass(this.elementRef.nativeElement,"w-75")}setIncorrectForm(){this.renderer.addClass(this.elementRef.nativeElement,"is-invalid"),this.renderer.setStyle(this.elementRef.nativeElement,"border-color",this.dangerColor)}setCorrectForm(){this.renderer.removeClass(this.elementRef.nativeElement,"is-invalid"),this.renderer.setStyle(this.elementRef.nativeElement,"border-color",this.primaryColor)}disableEdit(){this.setParentDraggable("true"),this.renamingInProgress.emit(!1),setTimeout(()=>this.inputObject.isRenamed=!1,100)}setParentDraggable(e){this.renderer.setAttribute(this.elementRef.nativeElement.parentElement,"draggable",e)}};o.\u0275fac=function(t){return new(t||o)},o.\u0275dir=U({type:o,selectors:[["","appInputEdit",""]],hostBindings:function(t,a){t&1&&h("blur",function(){return a.onBlur()})("keyup.enter",function(){return a.onEnter()})("keyup.esc",function(){return a.onEscape()})},inputs:{inputObject:"inputObject",inputField:"inputField",fullWidth:"fullWidth",textCenter:"textCenter",disableOnBlur:"disableOnBlur",disableFocus:"disableFocus",disableKeyboard:"disableKeyboard"},outputs:{updateObject:"updateObject",renamingInProgress:"renamingInProgress"}});let i=o;return i})();var Ee=["InputRename"],Fe=(i,o)=>o.alias,Te=(i,o)=>o.key;function we(i,o){if(i&1&&m(0,"app-user-avatar",14)(1,"div",9),i&2){let n=r().$implicit;p("user",n.owner)}}function Pe(i,o){if(i&1){let n=E();l(0,"input",15,0),h("updateObject",function(t){S(n);let a=r(2);return v(a.onRenameRoot(t))}),c()}if(i&2){let n=r().$implicit;p("inputObject",n)("fullWidth",!0)}}function Ie(i,o){if(i&1&&(l(0,"span"),d(1),c()),i&2){let n=r(2).$implicit;s(),g(n.externalPath)}}function Me(i,o){if(i&1&&(l(0,"span"),d(1),C(2,"pathSlice"),c()),i&2){let n=r(2).$implicit;s(),g(x(2,1,n.file.path,-2))}}function ke(i,o){if(i&1&&(l(0,"div",16)(1,"span"),d(2),c()(),l(3,"div",17),f(4,Ie,2,1,"span")(5,Me,3,4,"span"),c()),i&2){let n=r().$implicit,e=r();s(2),g(n.name),s(2),_(e.user.isAdmin&&n.externalPath?4:5)}}function Oe(i,o){if(i&1&&(l(0,"div",7)(1,"div",18),d(2),c(),l(3,"div",18),d(4),C(5,"amTimeAgo"),c()()),i&2){let n=r().$implicit;s(2),g(n.alias),s(2),g(q(5,2,n.createdAt))}}function De(i,o){if(i&1){let n=E();l(0,"button",21),C(1,"translate"),X("ngModelChange",function(t){S(n);let a=r().$implicit,u=r().$implicit;return H(u.hPerms[a.key],t)||(u.hPerms[a.key]=t),v(t)}),h("ngModelChange",function(){S(n);let t=r(2).$implicit,a=r();return v(a.onPermissionChange(t))}),m(2,"fa-icon",22),c()}if(i&2){let n=r().$implicit,e=r().$implicit,t=r();M(k("btn btn-sm btn-custom ",!e.isDir&&(n.key==="a"||n.key==="d")?"disabled":"")),K("ngModel",e.hPerms[n.key]),p("tooltip",x(1,6,t.SPACES_PERMISSIONS_TEXT[n.key].text,t.locale.language)),s(2),p("icon",t.SPACES_PERMISSIONS_TEXT[n.key].icon)}}function Ae(i,o){if(i&1&&(l(0,"button",23),C(1,"translate"),m(2,"fa-icon",22),c()),i&2){let n=r().$implicit,e=r().$implicit,t=r();I("active",e.hPerms[n.key]),p("tooltip",x(1,4,t.SPACES_PERMISSIONS_TEXT[n.key].text,t.locale.language)),s(2),p("icon",t.SPACES_PERMISSIONS_TEXT[n.key].icon)}}function je(i,o){if(i&1&&f(0,De,3,9,"button",19)(1,Ae,3,7,"button",20),i&2){let n=r().$implicit,e=r();_(!(n.owner!=null&&n.owner.id)&&e.user.isAdmin||(n.owner==null?null:n.owner.id)===e.user.id?0:1)}}function Be(i,o){if(i&1){let n=E();l(0,"div",1)(1,"div",2)(2,"div",3),f(3,we,2,1),m(4,"img",4),l(5,"div",5),f(6,Pe,2,2,"input",6)(7,ke,6,2),c()(),f(8,Oe,6,4,"div",7),l(9,"div",8),m(10,"div",9),w(11,je,2,1,null,null,Te),C(13,"keyvalue"),m(14,"div",10),l(15,"button",11),C(16,"translate"),h("click",function(){let t=S(n).$implicit,a=r();return v(a.setRenamed(t))}),m(17,"fa-icon",12),c(),l(18,"button",13),C(19,"translate"),h("click",function(){let t=S(n).$implicit,a=r();return v(a.removeRoot(t))}),m(20,"fa-icon",12),c()()()()}if(i&2){let n=o.$implicit,e=r();s(3),_(e.showUsers?3:-1),s(),I("cursor-pointer",!!n.file.path),p("src",n.file.mimeUrl,V)("tooltip",n.file.path),s(2),_(n.isRenamed?6:7),s(2),_(e.showInfos?8:-1),s(3),P(x(13,14,n.hPerms,e.originalOrderKeyValue)),s(4),M(k("btn btn-sm ",n.isRenamed?"btn-success":"btn-custom"," me-2")),p("tooltip",x(16,17,"Rename",e.locale.language)),s(2),p("icon",e.icons.faPen),s(),p("tooltip",x(19,20,"Remove",e.locale.language)),s(2),p("icon",e.icons.faTimes)}}var Re=(()=>{let o=class o{constructor(){this.showInfos=!0,this.showUsers=!0,this.addRootFile=null,this.locale=b(J),this.icons={faTimes:oe,faPen:ae},this.SPACES_PERMISSIONS_TEXT=ue,this.originalOrderKeyValue=pe,this.subscription=null}ngOnInit(){this.addRootFile&&(this.subscription=this.addRootFile.subscribe(e=>this.addRoot(e)))}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}addRoot(e){let t={id:0,alias:y(e.name,"alias",this.space.roots).toLowerCase(),name:y(e.name,"name",this.space.roots),permissions:"",createdAt:new Date};e.externalPath?(t.externalPath=e.externalPath,t.owner={id:null,login:null,email:null,fullName:null},t.file={id:0,path:null,mime:null}):(t.externalPath=null,t.owner={id:this.user.id,login:this.user.login,email:this.user.email,fullName:this.user.fullName},t.file={id:e.id,path:e.path,mime:e.mime}),this.space.addRoot(t,!0)}removeRoot(e){this.space.roots=this.space.roots.filter(t=>e.alias!==t.alias)}onRenameRoot(e){let t=e.object;t.alias=y(ce(e.name,!0),"alias",this.space.roots.filter(a=>a.id!==t.id)).toLowerCase(),t.name=y(e.name.replace(le,""),"name",this.space.roots.filter(a=>a.id!==t.id))}onPermissionChange(e){e.permissions=he(e.hPerms)}setRenamed(e){e.isRenamed?(this.onRenameRoot({object:e,name:this.inputRename.nativeElement.value}),e.isRenamed=!1):e.isRenamed=!0}};o.\u0275fac=function(t){return new(t||o)},o.\u0275cmp=R({type:o,selectors:[["app-space-manage-roots"]],viewQuery:function(t,a){if(t&1&&$(Ee,5),t&2){let u;L(u=W())&&(a.inputRename=u.first)}},inputs:{space:"space",user:"user",showInfos:"showInfos",showUsers:"showUsers",addRootFile:"addRootFile"},decls:2,vars:0,consts:[["InputRename",""],[1,"bg-theme","mb-1","p-2",2,"border-radius","4px"],[1,"d-flex","align-items-center","text-truncate","no-select","fs-xs",2,"height","32px"],[1,"d-flex","align-items-center","text-truncate","me-auto"],["draggable","false","height","30","width","30","alt","",3,"src","tooltip"],[1,"d-flex","flex-column","text-truncate","ms-2"],["appInputEdit","","type","text","required","",3,"inputObject","fullWidth"],[1,"d-flex","flex-column","fs-xxxs","text-muted","d-none","d-lg-block","ms-3"],[1,"d-flex","no-select"],[1,"vr","mx-2"],[1,"vr","ms-1","me-2"],["type","button",3,"click","tooltip"],[3,"icon"],["type","button",1,"btn","btn-sm","btn-danger",3,"click","tooltip"],["tooltipPlacement","bottom",3,"user"],["appInputEdit","","type","text","required","",3,"updateObject","inputObject","fullWidth"],[1,"text-truncate"],[1,"d-none","d-lg-block","fs-xxxs","text-truncate"],[1,"d-flex","justify-content-end"],["btnCheckbox","","type","button",3,"ngModel","tooltip","class"],["type","button",1,"btn","btn-sm","btn-custom","disabled",3,"tooltip","active"],["btnCheckbox","","type","button",3,"ngModelChange","ngModel","tooltip"],["size","lg",3,"icon"],["type","button",1,"btn","btn-sm","btn-custom","disabled",3,"tooltip"]],template:function(t,a){t&1&&w(0,Be,21,23,"div",1,Fe),t&2&&P(a.space.roots)},dependencies:[_e,fe,F,be,ie,te,G,z,Y,ye,Q,Z,ge,xe],encapsulation:2});let i=o;return i})();function Ve(i,o){if(i&1&&m(0,"fa-icon",3),i&2){let n=r();p("icon",n.icons.faSpinner)}}function Ne(i,o){i&1&&(l(0,"span",5),d(1,"You have no files anchored on this space"),c())}var wt=(()=>{let o=class o{constructor(){this.layout=b(me),this.addRootFileEvent=new A,this.icons={faAnchor:se,faPlus:re,faSpinner:ne,SPACES:de.SPACES},this.submitted=!1,this.loading=!1,this.spacesService=b(Ce)}ngOnInit(){this.space?.roots.length&&(this.space.roots=[]),this.spacesService.getUserSpaceRoots(this.space.id).subscribe({next:e=>this.setSpaceRoots(e),error:e=>{this.layout.sendNotification("error","Manage my anchored files",e.error.message)}})}openSelectRootDialog(){this.layout.openDialog(Se,"xl",{initialState:{currentRoots:this.space.roots.filter(t=>t.owner.id===this.user.id)}}).content.submitEvent.pipe(j(1)).subscribe(t=>this.addRootFileEvent.next(t))}onSubmit(){this.loading=!0,this.submitted=!0,this.spacesService.updateUserSpaceRoots(this.space.id,this.space.roots.map(e=>({id:e.id,alias:e.alias,name:e.name,permissions:e.permissions,file:{id:e.file.id,path:e.file.path,mime:e.file.mime}}))).subscribe({next:e=>{this.setSpaceRoots(e),this.layout.closeDialog()},error:e=>{this.layout.sendNotification("error","Manage my anchored files",e.error.message),this.submitted=!1,this.loading=!1}})}setSpaceRoots(e){this.space.roots=[];for(let t of e)this.space.addRoot(D(O({},t),{owner:this.user}),!0);this.space.counts.roots=this.space.roots.length}};o.\u0275fac=function(t){return new(t||o)},o.\u0275cmp=R({type:o,selectors:[["app-space-user-anchors-dialog"]],inputs:{space:"space",user:"user"},decls:22,vars:11,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],[1,"me-2",3,"icon"],["animation","spin","size","sm",1,"ms-2",3,"icon"],[1,"modal-title","ms-auto"],["l10nTranslate",""],["aria-label","Close","type","button",1,"btn-close","btn-close-white","ms-2",3,"click"],[1,"modal-body"],[3,"space","user","showUsers","addRootFile"],[1,"modal-footer"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-success",3,"click"],[3,"icon"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-primary",3,"click","disabled"]],template:function(t,a){t&1&&(l(0,"div",0)(1,"h4",1),m(2,"fa-icon",2),l(3,"span"),d(4),c()(),f(5,Ve,1,1,"fa-icon",3),l(6,"h4",4)(7,"span",5),d(8,"Manage my anchored files"),c()(),l(9,"button",6),h("click",function(){return a.layout.closeDialog()}),c()(),l(10,"div",7),m(11,"app-space-manage-roots",8),f(12,Ne,2,0,"span",5),c(),l(13,"div",9)(14,"button",10),h("click",function(){return a.openSelectRootDialog()}),m(15,"fa-icon",11)(16,"fa-icon",11),d(17," File "),c(),l(18,"button",12),h("click",function(){return a.layout.closeDialog()}),d(19,"Cancel"),c(),l(20,"button",13),h("click",function(){return a.onSubmit()}),d(21," Confirm "),c()()),t&2&&(s(2),p("icon",a.icons.SPACES),s(2),g(a.space.name),s(),_(a.loading?5:-1),s(6),p("space",a.space)("user",a.user)("showUsers",!1)("addRootFile",a.addRootFileEvent),s(),_(a.space.roots.length?-1:12),s(3),p("icon",a.icons.faPlus),s(),p("icon",a.icons.faAnchor),s(4),p("disabled",a.submitted))},dependencies:[F,ee,Re],encapsulation:2});let i=o;return i})();export{ye as a,Re as b,wt as c};
1
+ import{x as xe,z as Se}from"./chunk-2VMSXRCB.js";import{a as be}from"./chunk-XTRDKGKG.js";import{g as ge}from"./chunk-3OHSRRKH.js";import{g as Ce}from"./chunk-SJR5R3Y4.js";import{q as fe,r as _e}from"./chunk-VQQKMY2C.js";import{Ea as ce,Jb as de,Lb as ue,Rb as he,Za as pe,db as y,r as te,s as ie,yb as me,za as le}from"./chunk-XDZGW64M.js";import{$a as R,Ab as E,Db as h,Dd as Z,Ed as ee,Fb as r,Ha as V,Hf as re,Jb as $,Jc as Q,Kb as L,L as j,Lb as W,Na as s,Ob as I,Pa as T,Pb as M,Qb as d,Rb as g,Ub as K,Va as N,Vb as H,Wb as X,Yb as k,bb as U,cf as ne,dd as z,ec as C,eg as F,f as A,fc as q,gc as x,ia as b,id as Y,kb as f,lb as _,lf as oe,na as S,oa as v,ob as w,pb as P,pf as ae,qb as p,rb as l,sb as c,tb as m,wd as G,wf as se,yd as J,za as B}from"./chunk-DIT6W7VM.js";import{a as O,b as D}from"./chunk-N3U6637P.js";var ye=(()=>{let o=class o{constructor(){this.inputField="name",this.fullWidth=!1,this.textCenter=!1,this.disableOnBlur=!0,this.disableFocus=!1,this.disableKeyboard=!1,this.updateObject=new T(!0),this.renamingInProgress=new T(!0),this.elementRef=b(B),this.renderer=b(N),this.dangerColor="#dd4b39",this.primaryColor="#3c8dbc"}ngOnInit(){this.initStyles(),this.renamingInProgress.emit(!0),this.elementRef.nativeElement.value=this.inputObject[this.inputField],setTimeout(()=>{this.setParentDraggable("false"),this.disableFocus||(this.elementRef.nativeElement.focus(),this.elementRef.nativeElement.select())},5)}onBlur(){this.disableOnBlur&&this.disableEdit()}onEnter(){this.disableKeyboard||(this.elementRef.nativeElement.value?this.elementRef.nativeElement.value===this.inputObject[this.inputField]?(this.setCorrectForm(),this.disableEdit()):(this.setCorrectForm(),this.updateObject.next({object:this.inputObject,name:this.elementRef.nativeElement.value}),this.disableEdit()):this.setIncorrectForm())}onEscape(){this.disableKeyboard||this.disableEdit()}initStyles(){this.renderer.setStyle(this.elementRef.nativeElement,"display","inline"),this.renderer.setStyle(this.elementRef.nativeElement,"height","100%"),this.renderer.setStyle(this.elementRef.nativeElement,"min-height","20px"),this.renderer.addClass(this.elementRef.nativeElement,"form-control"),this.renderer.addClass(this.elementRef.nativeElement,"form-control-sm"),this.textCenter?(this.renderer.addClass(this.elementRef.nativeElement,"text-center"),this.renderer.setStyle(this.elementRef.nativeElement,"padding","0")):this.renderer.setStyle(this.elementRef.nativeElement,"padding","2px"),this.fullWidth?this.renderer.addClass(this.elementRef.nativeElement,"w-100"):this.renderer.addClass(this.elementRef.nativeElement,"w-75")}setIncorrectForm(){this.renderer.addClass(this.elementRef.nativeElement,"is-invalid"),this.renderer.setStyle(this.elementRef.nativeElement,"border-color",this.dangerColor)}setCorrectForm(){this.renderer.removeClass(this.elementRef.nativeElement,"is-invalid"),this.renderer.setStyle(this.elementRef.nativeElement,"border-color",this.primaryColor)}disableEdit(){this.setParentDraggable("true"),this.renamingInProgress.emit(!1),setTimeout(()=>this.inputObject.isRenamed=!1,100)}setParentDraggable(e){this.renderer.setAttribute(this.elementRef.nativeElement.parentElement,"draggable",e)}};o.\u0275fac=function(t){return new(t||o)},o.\u0275dir=U({type:o,selectors:[["","appInputEdit",""]],hostBindings:function(t,a){t&1&&h("blur",function(){return a.onBlur()})("keyup.enter",function(){return a.onEnter()})("keyup.esc",function(){return a.onEscape()})},inputs:{inputObject:"inputObject",inputField:"inputField",fullWidth:"fullWidth",textCenter:"textCenter",disableOnBlur:"disableOnBlur",disableFocus:"disableFocus",disableKeyboard:"disableKeyboard"},outputs:{updateObject:"updateObject",renamingInProgress:"renamingInProgress"}});let i=o;return i})();var Ee=["InputRename"],Fe=(i,o)=>o.alias,Te=(i,o)=>o.key;function we(i,o){if(i&1&&m(0,"app-user-avatar",14)(1,"div",9),i&2){let n=r().$implicit;p("user",n.owner)}}function Pe(i,o){if(i&1){let n=E();l(0,"input",15,0),h("updateObject",function(t){S(n);let a=r(2);return v(a.onRenameRoot(t))}),c()}if(i&2){let n=r().$implicit;p("inputObject",n)("fullWidth",!0)}}function Ie(i,o){if(i&1&&(l(0,"span"),d(1),c()),i&2){let n=r(2).$implicit;s(),g(n.externalPath)}}function Me(i,o){if(i&1&&(l(0,"span"),d(1),C(2,"pathSlice"),c()),i&2){let n=r(2).$implicit;s(),g(x(2,1,n.file.path,-2))}}function ke(i,o){if(i&1&&(l(0,"div",16)(1,"span"),d(2),c()(),l(3,"div",17),f(4,Ie,2,1,"span")(5,Me,3,4,"span"),c()),i&2){let n=r().$implicit,e=r();s(2),g(n.name),s(2),_(e.user.isAdmin&&n.externalPath?4:5)}}function Oe(i,o){if(i&1&&(l(0,"div",7)(1,"div",18),d(2),c(),l(3,"div",18),d(4),C(5,"amTimeAgo"),c()()),i&2){let n=r().$implicit;s(2),g(n.alias),s(2),g(q(5,2,n.createdAt))}}function De(i,o){if(i&1){let n=E();l(0,"button",21),C(1,"translate"),X("ngModelChange",function(t){S(n);let a=r().$implicit,u=r().$implicit;return H(u.hPerms[a.key],t)||(u.hPerms[a.key]=t),v(t)}),h("ngModelChange",function(){S(n);let t=r(2).$implicit,a=r();return v(a.onPermissionChange(t))}),m(2,"fa-icon",22),c()}if(i&2){let n=r().$implicit,e=r().$implicit,t=r();M(k("btn btn-sm btn-custom ",!e.isDir&&(n.key==="a"||n.key==="d")?"disabled":"")),K("ngModel",e.hPerms[n.key]),p("tooltip",x(1,6,t.SPACES_PERMISSIONS_TEXT[n.key].text,t.locale.language)),s(2),p("icon",t.SPACES_PERMISSIONS_TEXT[n.key].icon)}}function Ae(i,o){if(i&1&&(l(0,"button",23),C(1,"translate"),m(2,"fa-icon",22),c()),i&2){let n=r().$implicit,e=r().$implicit,t=r();I("active",e.hPerms[n.key]),p("tooltip",x(1,4,t.SPACES_PERMISSIONS_TEXT[n.key].text,t.locale.language)),s(2),p("icon",t.SPACES_PERMISSIONS_TEXT[n.key].icon)}}function je(i,o){if(i&1&&f(0,De,3,9,"button",19)(1,Ae,3,7,"button",20),i&2){let n=r().$implicit,e=r();_(!(n.owner!=null&&n.owner.id)&&e.user.isAdmin||(n.owner==null?null:n.owner.id)===e.user.id?0:1)}}function Be(i,o){if(i&1){let n=E();l(0,"div",1)(1,"div",2)(2,"div",3),f(3,we,2,1),m(4,"img",4),l(5,"div",5),f(6,Pe,2,2,"input",6)(7,ke,6,2),c()(),f(8,Oe,6,4,"div",7),l(9,"div",8),m(10,"div",9),w(11,je,2,1,null,null,Te),C(13,"keyvalue"),m(14,"div",10),l(15,"button",11),C(16,"translate"),h("click",function(){let t=S(n).$implicit,a=r();return v(a.setRenamed(t))}),m(17,"fa-icon",12),c(),l(18,"button",13),C(19,"translate"),h("click",function(){let t=S(n).$implicit,a=r();return v(a.removeRoot(t))}),m(20,"fa-icon",12),c()()()()}if(i&2){let n=o.$implicit,e=r();s(3),_(e.showUsers?3:-1),s(),I("cursor-pointer",!!n.file.path),p("src",n.file.mimeUrl,V)("tooltip",n.file.path),s(2),_(n.isRenamed?6:7),s(2),_(e.showInfos?8:-1),s(3),P(x(13,14,n.hPerms,e.originalOrderKeyValue)),s(4),M(k("btn btn-sm ",n.isRenamed?"btn-success":"btn-custom"," me-2")),p("tooltip",x(16,17,"Rename",e.locale.language)),s(2),p("icon",e.icons.faPen),s(),p("tooltip",x(19,20,"Remove",e.locale.language)),s(2),p("icon",e.icons.faTimes)}}var Re=(()=>{let o=class o{constructor(){this.showInfos=!0,this.showUsers=!0,this.addRootFile=null,this.locale=b(J),this.icons={faTimes:oe,faPen:ae},this.SPACES_PERMISSIONS_TEXT=ue,this.originalOrderKeyValue=pe,this.subscription=null}ngOnInit(){this.addRootFile&&(this.subscription=this.addRootFile.subscribe(e=>this.addRoot(e)))}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}addRoot(e){let t={id:0,alias:y(e.name,"alias",this.space.roots).toLowerCase(),name:y(e.name,"name",this.space.roots),permissions:"",createdAt:new Date};e.externalPath?(t.externalPath=e.externalPath,t.owner={id:null,login:null,email:null,fullName:null},t.file={id:0,path:null,mime:null}):(t.externalPath=null,t.owner={id:this.user.id,login:this.user.login,email:this.user.email,fullName:this.user.fullName},t.file={id:e.id,path:e.path,mime:e.mime}),this.space.addRoot(t,!0)}removeRoot(e){this.space.roots=this.space.roots.filter(t=>e.alias!==t.alias)}onRenameRoot(e){let t=e.object;t.alias=y(ce(e.name,!0),"alias",this.space.roots.filter(a=>a.id!==t.id)).toLowerCase(),t.name=y(e.name.replace(le,""),"name",this.space.roots.filter(a=>a.id!==t.id))}onPermissionChange(e){e.permissions=he(e.hPerms)}setRenamed(e){e.isRenamed?(this.onRenameRoot({object:e,name:this.inputRename.nativeElement.value}),e.isRenamed=!1):e.isRenamed=!0}};o.\u0275fac=function(t){return new(t||o)},o.\u0275cmp=R({type:o,selectors:[["app-space-manage-roots"]],viewQuery:function(t,a){if(t&1&&$(Ee,5),t&2){let u;L(u=W())&&(a.inputRename=u.first)}},inputs:{space:"space",user:"user",showInfos:"showInfos",showUsers:"showUsers",addRootFile:"addRootFile"},decls:2,vars:0,consts:[["InputRename",""],[1,"bg-theme","mb-1","p-2",2,"border-radius","4px"],[1,"d-flex","align-items-center","text-truncate","no-select","fs-xs",2,"height","32px"],[1,"d-flex","align-items-center","text-truncate","me-auto"],["draggable","false","height","30","width","30","alt","",3,"src","tooltip"],[1,"d-flex","flex-column","text-truncate","ms-2"],["appInputEdit","","type","text","required","",3,"inputObject","fullWidth"],[1,"d-flex","flex-column","fs-xxxs","text-muted","d-none","d-lg-block","ms-3"],[1,"d-flex","no-select"],[1,"vr","mx-2"],[1,"vr","ms-1","me-2"],["type","button",3,"click","tooltip"],[3,"icon"],["type","button",1,"btn","btn-sm","btn-danger",3,"click","tooltip"],["tooltipPlacement","bottom",3,"user"],["appInputEdit","","type","text","required","",3,"updateObject","inputObject","fullWidth"],[1,"text-truncate"],[1,"d-none","d-lg-block","fs-xxxs","text-truncate"],[1,"d-flex","justify-content-end"],["btnCheckbox","","type","button",3,"ngModel","tooltip","class"],["type","button",1,"btn","btn-sm","btn-custom","disabled",3,"tooltip","active"],["btnCheckbox","","type","button",3,"ngModelChange","ngModel","tooltip"],["size","lg",3,"icon"],["type","button",1,"btn","btn-sm","btn-custom","disabled",3,"tooltip"]],template:function(t,a){t&1&&w(0,Be,21,23,"div",1,Fe),t&2&&P(a.space.roots)},dependencies:[_e,fe,F,be,ie,te,G,z,Y,ye,Q,Z,ge,xe],encapsulation:2});let i=o;return i})();function Ve(i,o){if(i&1&&m(0,"fa-icon",3),i&2){let n=r();p("icon",n.icons.faSpinner)}}function Ne(i,o){i&1&&(l(0,"span",5),d(1,"You have no files anchored on this space"),c())}var wt=(()=>{let o=class o{constructor(){this.layout=b(me),this.addRootFileEvent=new A,this.icons={faAnchor:se,faPlus:re,faSpinner:ne,SPACES:de.SPACES},this.submitted=!1,this.loading=!1,this.spacesService=b(Ce)}ngOnInit(){this.space?.roots.length&&(this.space.roots=[]),this.spacesService.getUserSpaceRoots(this.space.id).subscribe({next:e=>this.setSpaceRoots(e),error:e=>{this.layout.sendNotification("error","Manage my anchored files",e.error.message)}})}openSelectRootDialog(){this.layout.openDialog(Se,"xl",{initialState:{currentRoots:this.space.roots.filter(t=>t.owner.id===this.user.id)}}).content.submitEvent.pipe(j(1)).subscribe(t=>this.addRootFileEvent.next(t))}onSubmit(){this.loading=!0,this.submitted=!0,this.spacesService.updateUserSpaceRoots(this.space.id,this.space.roots.map(e=>({id:e.id,alias:e.alias,name:e.name,permissions:e.permissions,file:{id:e.file.id,path:e.file.path,mime:e.file.mime}}))).subscribe({next:e=>{this.setSpaceRoots(e),this.layout.closeDialog()},error:e=>{this.layout.sendNotification("error","Manage my anchored files",e.error.message),this.submitted=!1,this.loading=!1}})}setSpaceRoots(e){this.space.roots=[];for(let t of e)this.space.addRoot(D(O({},t),{owner:this.user}),!0);this.space.counts.roots=this.space.roots.length}};o.\u0275fac=function(t){return new(t||o)},o.\u0275cmp=R({type:o,selectors:[["app-space-user-anchors-dialog"]],inputs:{space:"space",user:"user"},decls:22,vars:11,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],[1,"me-2",3,"icon"],["animation","spin","size","sm",1,"ms-2",3,"icon"],[1,"modal-title","ms-auto"],["l10nTranslate",""],["aria-label","Close","type","button",1,"btn-close","btn-close-white","ms-2",3,"click"],[1,"modal-body"],[3,"space","user","showUsers","addRootFile"],[1,"modal-footer"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-success",3,"click"],[3,"icon"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-primary",3,"click","disabled"]],template:function(t,a){t&1&&(l(0,"div",0)(1,"h4",1),m(2,"fa-icon",2),l(3,"span"),d(4),c()(),f(5,Ve,1,1,"fa-icon",3),l(6,"h4",4)(7,"span",5),d(8,"Manage my anchored files"),c()(),l(9,"button",6),h("click",function(){return a.layout.closeDialog()}),c()(),l(10,"div",7),m(11,"app-space-manage-roots",8),f(12,Ne,2,0,"span",5),c(),l(13,"div",9)(14,"button",10),h("click",function(){return a.openSelectRootDialog()}),m(15,"fa-icon",11)(16,"fa-icon",11),d(17," File "),c(),l(18,"button",12),h("click",function(){return a.layout.closeDialog()}),d(19,"Cancel"),c(),l(20,"button",13),h("click",function(){return a.onSubmit()}),d(21," Confirm "),c()()),t&2&&(s(2),p("icon",a.icons.SPACES),s(2),g(a.space.name),s(),_(a.loading?5:-1),s(6),p("space",a.space)("user",a.user)("showUsers",!1)("addRootFile",a.addRootFileEvent),s(),_(a.space.roots.length?-1:12),s(3),p("icon",a.icons.faPlus),s(),p("icon",a.icons.faAnchor),s(4),p("disabled",a.submitted))},dependencies:[F,ee,Re],encapsulation:2});let i=o;return i})();export{ye as a,Re as b,wt as c};
@@ -0,0 +1 @@
1
+ import{n as e}from"./chunk-DM4NXKEP.js";import"./chunk-ZIJQRARU.js";import"./chunk-N3U6637P.js";var a={name:"pt",weekdays:"domingo_segunda-feira_ter\xE7a-feira_quarta-feira_quinta-feira_sexta-feira_s\xE1bado".split("_"),weekdaysShort:"dom_seg_ter_qua_qui_sex_sab".split("_"),weekdaysMin:"Do_2\xAA_3\xAA_4\xAA_5\xAA_6\xAA_Sa".split("_"),months:"janeiro_fevereiro_mar\xE7o_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),ordinal:function(_){return _+"\xBA"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [\xE0s] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [\xE0s] HH:mm"},relativeTime:{future:"em %s",past:"h\xE1 %s",s:"alguns segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um m\xEAs",MM:"%d meses",y:"um ano",yy:"%d anos"}};e.locale(a,null,!0);var r=a;export{r as default};