@sync-in/server 1.7.0 → 1.8.0

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 (269) hide show
  1. package/CHANGELOG.md +164 -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 +16 -15
  7. package/server/app.bootstrap.js +1 -0
  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/services/files-content-manager.service.js +6 -6
  18. package/server/applications/files/services/files-content-manager.service.js.map +1 -1
  19. package/server/applications/files/services/files-manager.service.js +4 -4
  20. package/server/applications/files/services/files-manager.service.js.map +1 -1
  21. package/server/applications/files/services/files-methods.service.js +5 -3
  22. package/server/applications/files/services/files-methods.service.js.map +1 -1
  23. package/server/applications/files/services/files-only-office-manager.service.js +2 -2
  24. package/server/applications/files/services/files-only-office-manager.service.js.map +1 -1
  25. package/server/applications/files/services/files-parser.service.js +6 -3
  26. package/server/applications/files/services/files-parser.service.js.map +1 -1
  27. package/server/applications/files/services/files-scheduler.service.js +51 -3
  28. package/server/applications/files/services/files-scheduler.service.js.map +1 -1
  29. package/server/applications/files/services/files-search-manager.service.js +4 -0
  30. package/server/applications/files/services/files-search-manager.service.js.map +1 -1
  31. package/server/applications/files/utils/doc-textify/adapters/pdf.js +10 -1
  32. package/server/applications/files/utils/doc-textify/adapters/pdf.js.map +1 -1
  33. package/server/applications/notifications/i18n/de.js +56 -0
  34. package/server/applications/notifications/i18n/de.js.map +1 -0
  35. package/server/applications/notifications/i18n/es.js +52 -0
  36. package/server/applications/notifications/i18n/es.js.map +1 -0
  37. package/server/applications/notifications/i18n/hi.js +52 -0
  38. package/server/applications/notifications/i18n/hi.js.map +1 -0
  39. package/server/applications/notifications/i18n/index.js +73 -8
  40. package/server/applications/notifications/i18n/index.js.map +1 -1
  41. package/server/applications/notifications/i18n/it.js +52 -0
  42. package/server/applications/notifications/i18n/it.js.map +1 -0
  43. package/server/applications/notifications/i18n/ja.js +52 -0
  44. package/server/applications/notifications/i18n/ja.js.map +1 -0
  45. package/server/applications/notifications/i18n/ko.js +52 -0
  46. package/server/applications/notifications/i18n/ko.js.map +1 -0
  47. package/server/applications/notifications/i18n/pl.js +52 -0
  48. package/server/applications/notifications/i18n/pl.js.map +1 -0
  49. package/server/applications/notifications/i18n/pt.js +52 -0
  50. package/server/applications/notifications/i18n/pt.js.map +1 -0
  51. package/server/applications/notifications/i18n/pt_br.js +52 -0
  52. package/server/applications/notifications/i18n/pt_br.js.map +1 -0
  53. package/server/applications/notifications/i18n/ru.js +52 -0
  54. package/server/applications/notifications/i18n/ru.js.map +1 -0
  55. package/server/applications/notifications/i18n/tr.js +52 -0
  56. package/server/applications/notifications/i18n/tr.js.map +1 -0
  57. package/server/applications/notifications/i18n/zh.js +52 -0
  58. package/server/applications/notifications/i18n/zh.js.map +1 -0
  59. package/server/applications/notifications/mails/models.js +6 -7
  60. package/server/applications/notifications/mails/models.js.map +1 -1
  61. package/server/applications/notifications/services/notifications-manager.service.js.map +1 -1
  62. package/server/applications/shares/dto/create-or-update-share.dto.js +11 -0
  63. package/server/applications/shares/dto/create-or-update-share.dto.js.map +1 -1
  64. package/server/applications/shares/interfaces/share-props.interface.js.map +1 -1
  65. package/server/applications/shares/schemas/share.interface.js.map +1 -1
  66. package/server/applications/shares/schemas/shares.schema.js +9 -0
  67. package/server/applications/shares/schemas/shares.schema.js.map +1 -1
  68. package/server/applications/shares/services/shares-manager.service.js +46 -17
  69. package/server/applications/shares/services/shares-manager.service.js.map +1 -1
  70. package/server/applications/shares/services/shares-queries.service.js +24 -5
  71. package/server/applications/shares/services/shares-queries.service.js.map +1 -1
  72. package/server/applications/spaces/constants/cache.js +4 -0
  73. package/server/applications/spaces/constants/cache.js.map +1 -1
  74. package/server/applications/spaces/dto/create-or-update-space.dto.js +5 -0
  75. package/server/applications/spaces/dto/create-or-update-space.dto.js.map +1 -1
  76. package/server/applications/spaces/guards/space.guard.js +3 -3
  77. package/server/applications/spaces/guards/space.guard.js.map +1 -1
  78. package/server/applications/spaces/models/space-props.model.js.map +1 -1
  79. package/server/applications/spaces/models/space.model.js.map +1 -1
  80. package/server/applications/spaces/schemas/space.interface.js.map +1 -1
  81. package/server/applications/spaces/schemas/spaces.schema.js +1 -0
  82. package/server/applications/spaces/schemas/spaces.schema.js.map +1 -1
  83. package/server/applications/spaces/services/spaces-browser.service.js.map +1 -1
  84. package/server/applications/spaces/services/spaces-manager.service.js +34 -31
  85. package/server/applications/spaces/services/spaces-manager.service.js.map +1 -1
  86. package/server/applications/spaces/services/spaces-queries.service.js +23 -7
  87. package/server/applications/spaces/services/spaces-queries.service.js.map +1 -1
  88. package/server/applications/spaces/services/spaces-scheduler.service.js +21 -20
  89. package/server/applications/spaces/services/spaces-scheduler.service.js.map +1 -1
  90. package/server/applications/spaces/spaces.controller.js +4 -2
  91. package/server/applications/spaces/spaces.controller.js.map +1 -1
  92. package/server/applications/spaces/utils/paths.js +14 -16
  93. package/server/applications/spaces/utils/paths.js.map +1 -1
  94. package/server/applications/sync/services/sync-manager.service.js +4 -3
  95. package/server/applications/sync/services/sync-manager.service.js.map +1 -1
  96. package/server/applications/sync/services/sync-paths-manager.service.js +1 -1
  97. package/server/applications/sync/services/sync-paths-manager.service.js.map +1 -1
  98. package/server/applications/sync/services/sync-paths-manager.service.spec.js +1 -1
  99. package/server/applications/sync/services/sync-paths-manager.service.spec.js.map +1 -1
  100. package/server/applications/sync/sync.controller.js +2 -1
  101. package/server/applications/sync/sync.controller.js.map +1 -1
  102. package/server/applications/users/constants/routes.js +5 -0
  103. package/server/applications/users/constants/routes.js.map +1 -1
  104. package/server/applications/users/constants/user.js +0 -16
  105. package/server/applications/users/constants/user.js.map +1 -1
  106. package/server/applications/users/dto/user-properties.dto.js +10 -0
  107. package/server/applications/users/dto/user-properties.dto.js.map +1 -1
  108. package/server/applications/users/models/user.model.js.map +1 -1
  109. package/server/applications/users/schemas/user.interface.js.map +1 -1
  110. package/server/applications/users/schemas/users.schema.js +3 -2
  111. package/server/applications/users/schemas/users.schema.js.map +1 -1
  112. package/server/applications/users/services/admin-users-manager.service.js +1 -0
  113. package/server/applications/users/services/admin-users-manager.service.js.map +1 -1
  114. package/server/applications/users/services/admin-users-manager.service.spec.js +2 -1
  115. package/server/applications/users/services/admin-users-manager.service.spec.js.map +1 -1
  116. package/server/applications/users/services/users-manager.service.js +8 -2
  117. package/server/applications/users/services/users-manager.service.js.map +1 -1
  118. package/server/applications/users/services/users-manager.service.spec.js +1 -0
  119. package/server/applications/users/services/users-manager.service.spec.js.map +1 -1
  120. package/server/applications/users/services/users-queries.service.js +18 -4
  121. package/server/applications/users/services/users-queries.service.js.map +1 -1
  122. package/server/applications/users/users.controller.js +15 -0
  123. package/server/applications/users/users.controller.js.map +1 -1
  124. package/server/applications/users/utils/test.js +2 -2
  125. package/server/applications/users/utils/test.js.map +1 -1
  126. package/server/applications/webdav/constants/routes.js +2 -2
  127. package/server/applications/webdav/constants/routes.js.map +1 -1
  128. package/server/applications/webdav/constants/webdav.js +2 -2
  129. package/server/applications/webdav/constants/webdav.js.map +1 -1
  130. package/server/applications/webdav/filters/webdav.filter.js +2 -2
  131. package/server/applications/webdav/filters/webdav.filter.js.map +1 -1
  132. package/server/applications/webdav/filters/webdav.filter.spec.js +2 -2
  133. package/server/applications/webdav/filters/webdav.filter.spec.js.map +1 -1
  134. package/server/applications/webdav/services/webdav-methods.service.js +3 -2
  135. package/server/applications/webdav/services/webdav-methods.service.js.map +1 -1
  136. package/server/applications/webdav/utils/webdav.js +1 -2
  137. package/server/applications/webdav/utils/webdav.js.map +1 -1
  138. package/server/authentication/auth.config.js +2 -2
  139. package/server/authentication/auth.config.js.map +1 -1
  140. package/server/authentication/guards/auth-basic.strategy.js +2 -2
  141. package/server/authentication/guards/auth-basic.strategy.js.map +1 -1
  142. package/server/common/i18n.js +52 -0
  143. package/server/common/i18n.js.map +1 -0
  144. package/server/common/image.js +49 -33
  145. package/server/common/image.js.map +1 -1
  146. package/server/common/interfaces.js.map +1 -1
  147. package/server/common/shared.js +5 -2
  148. package/server/common/shared.js.map +1 -1
  149. package/server/configuration/config.validation.js +3 -3
  150. package/server/configuration/config.validation.js.map +1 -1
  151. package/server/infrastructure/cache/adapters/mysql-cache.adapter.js +8 -6
  152. package/server/infrastructure/cache/adapters/mysql-cache.adapter.js.map +1 -1
  153. package/server/infrastructure/cache/adapters/redis-cache.adapter.js +22 -17
  154. package/server/infrastructure/cache/adapters/redis-cache.adapter.js.map +1 -1
  155. package/server/infrastructure/cache/cache.e2e-spec.js +1 -0
  156. package/server/infrastructure/cache/cache.e2e-spec.js.map +1 -1
  157. package/server/infrastructure/cache/cache.module.js +1 -14
  158. package/server/infrastructure/cache/cache.module.js.map +1 -1
  159. package/server/infrastructure/cache/services/cache.service.js.map +1 -1
  160. package/server/infrastructure/database/database.module.js +20 -1
  161. package/server/infrastructure/database/database.module.js.map +1 -1
  162. package/server/infrastructure/database/utils.js +48 -0
  163. package/server/infrastructure/database/utils.js.map +1 -1
  164. package/server/infrastructure/scheduler/scheduler.module.js +1 -1
  165. package/server/infrastructure/scheduler/scheduler.module.js.map +1 -1
  166. package/server/infrastructure/websocket/adapters/cluster.adapter.js +1 -3
  167. package/server/infrastructure/websocket/adapters/cluster.adapter.js.map +1 -1
  168. package/static/3rdpartylicenses.txt +137 -137
  169. package/static/chunk-2KLC4T2Z.js +1 -0
  170. package/static/chunk-373XVRXW.js +1 -0
  171. package/static/chunk-3GMLWAFZ.js +1 -0
  172. package/static/chunk-3XVM35O2.js +1 -0
  173. package/static/chunk-3YVRP3VM.js +2 -0
  174. package/static/chunk-5NMSIIQB.js +1 -0
  175. package/static/chunk-AF24EYXU.js +1 -0
  176. package/static/chunk-AKQVEHO6.js +2 -0
  177. package/static/{chunk-PTGDOWV3.js → chunk-AY2SZ3G6.js} +1 -1
  178. package/static/chunk-BCVX464U.js +2 -0
  179. package/static/{chunk-IPAC4VAF.js → chunk-BIKLW4YS.js} +1 -1
  180. package/static/chunk-C36MW4ME.js +562 -0
  181. package/static/chunk-CHJ64RJM.js +1 -0
  182. package/static/chunk-DKSEQTMX.js +1 -0
  183. package/static/chunk-DM4NXKEP.js +1 -0
  184. package/static/chunk-DPUVSXRB.js +1 -0
  185. package/static/chunk-DSWEWLXJ.js +1 -0
  186. package/static/chunk-FJE6BOFL.js +1 -0
  187. package/static/chunk-FZ3JPGYZ.js +1 -0
  188. package/static/chunk-GUGNR5TF.js +3 -0
  189. package/static/chunk-H6NE33VX.js +1 -0
  190. package/static/{chunk-DJYJ66UF.js → chunk-HAS5ZOTR.js} +1 -1
  191. package/static/chunk-HNQRZALS.js +1 -0
  192. package/static/chunk-JPT5WEAT.js +1 -0
  193. package/static/{chunk-QNJFQVYI.js → chunk-JSWCNGXJ.js} +1 -1
  194. package/static/chunk-KFJIQIGR.js +1 -0
  195. package/static/chunk-LNTUR3GU.js +1 -0
  196. package/static/chunk-LVM4QB22.js +1 -0
  197. package/static/chunk-M3XVNQZQ.js +1 -0
  198. package/static/{chunk-EVIE5F2U.js → chunk-MFLIJH6T.js} +1 -1
  199. package/static/{chunk-IQOALFYU.js → chunk-MSUHTBB2.js} +1 -1
  200. package/static/chunk-N3U6637P.js +1 -0
  201. package/static/chunk-NNV4OXSB.js +1 -0
  202. package/static/chunk-NO2LTNW3.js +1 -0
  203. package/static/chunk-OOGP4WSH.js +2 -0
  204. package/static/chunk-PB4AIT7O.js +1 -0
  205. package/static/chunk-PCWDQPOM.js +2 -0
  206. package/static/chunk-PGZZP5W3.js +1 -0
  207. package/static/chunk-PVDHBQRM.js +1 -0
  208. package/static/chunk-Q5KM7LTX.js +1 -0
  209. package/static/chunk-QHC6ZPQ4.js +1 -0
  210. package/static/chunk-QO6BTONN.js +1 -0
  211. package/static/chunk-QZU2S5CV.js +1 -0
  212. package/static/chunk-SBZ572Q4.js +2 -0
  213. package/static/chunk-SHIVUDP3.js +1 -0
  214. package/static/chunk-SLHTEGRU.js +1 -0
  215. package/static/{chunk-SH5EVL4E.js → chunk-SSFF27P2.js} +1 -1
  216. package/static/chunk-TPYBFZS5.js +1 -0
  217. package/static/chunk-UEQCWMXD.js +1 -0
  218. package/static/chunk-UG5DMXYO.js +1 -0
  219. package/static/chunk-UJPPR4MX.js +1 -0
  220. package/static/chunk-UNCPXHHT.js +1 -0
  221. package/static/chunk-URHTCJ7G.js +1 -0
  222. package/static/chunk-V3AT2BKP.js +1 -0
  223. package/static/chunk-VKK5BSLX.js +1 -0
  224. package/static/{chunk-SIPE37PA.js → chunk-VM4YX6Q7.js} +1 -1
  225. package/static/chunk-WJW7CT6G.js +27 -0
  226. package/static/{chunk-7ITZXYYJ.js → chunk-WLMNXRBS.js} +1 -1
  227. package/static/chunk-X5XGK6T7.js +4 -0
  228. package/static/chunk-YEKR5OPO.js +1 -0
  229. package/static/chunk-YW57T2PF.js +1 -0
  230. package/static/chunk-Z5J5F5SX.js +1 -0
  231. package/static/chunk-ZIJQRARU.js +1 -0
  232. package/static/chunk-ZPF2DSQV.js +1 -0
  233. package/static/chunk-ZTCRGJ6Y.js +7 -0
  234. package/static/index.html +2 -2
  235. package/static/main-VOL6OMJ5.js +9 -0
  236. package/static/scripts-WRDOQIU5.js +24 -0
  237. package/static/{styles-A5VYX3CE.css → styles-2C2UNCNB.css} +1 -1
  238. package/server/applications/spaces/interfaces/space-quota.interface.js +0 -10
  239. package/server/applications/spaces/interfaces/space-quota.interface.js.map +0 -1
  240. package/static/chunk-22EANI6R.js +0 -1
  241. package/static/chunk-3GFGJYMK.js +0 -1
  242. package/static/chunk-4YGJGZZZ.js +0 -1
  243. package/static/chunk-5K7HEX3C.js +0 -27
  244. package/static/chunk-5KLMS6A4.js +0 -1
  245. package/static/chunk-ATP3BFHV.js +0 -562
  246. package/static/chunk-BB4G55KE.js +0 -1
  247. package/static/chunk-EWKSX76T.js +0 -1
  248. package/static/chunk-FHLACA7V.js +0 -1
  249. package/static/chunk-GCATNU55.js +0 -1
  250. package/static/chunk-GYODPCIE.js +0 -1
  251. package/static/chunk-HZTFYLM5.js +0 -1
  252. package/static/chunk-JSUKJT6Z.js +0 -1
  253. package/static/chunk-JXZCNFW7.js +0 -1
  254. package/static/chunk-LTGFCQR7.js +0 -1
  255. package/static/chunk-LV3PYKWO.js +0 -1
  256. package/static/chunk-N2WFNW6M.js +0 -7
  257. package/static/chunk-ORMRCEGT.js +0 -1
  258. package/static/chunk-OUTBJSMW.js +0 -1
  259. package/static/chunk-RS2PX32L.js +0 -1
  260. package/static/chunk-RSSWH3S2.js +0 -1
  261. package/static/chunk-RTRJ3KFH.js +0 -1
  262. package/static/chunk-TKTCBDOG.js +0 -1
  263. package/static/chunk-V6K2N46L.js +0 -1
  264. package/static/chunk-XLCCZSQL.js +0 -4
  265. package/static/chunk-YPEH66GG.js +0 -1
  266. package/static/chunk-YPOIUQ57.js +0 -1
  267. package/static/chunk-ZKCFO2OA.js +0 -4
  268. package/static/main-MZ7HWZXO.js +0 -9
  269. package/static/scripts-VZVAP2P4.js +0 -30
@@ -0,0 +1 @@
1
+ import{b as Ct,c as ht}from"./chunk-MFLIJH6T.js";import{A as ft,C as gt,z as ut}from"./chunk-WJW7CT6G.js";import{a as _t}from"./chunk-JSWCNGXJ.js";import{a as re}from"./chunk-AY2SZ3G6.js";import{c as Xe,f as ct}from"./chunk-UEQCWMXD.js";import{a as it}from"./chunk-TPYBFZS5.js";import{a as pt}from"./chunk-MSUHTBB2.js";import"./chunk-HAS5ZOTR.js";import{a as et,b as nt,c as ot,d as at,e as rt,g as lt,h as st}from"./chunk-X5XGK6T7.js";import{a as oe,b as ae,c as Je,d as Ze,e as tt}from"./chunk-H6NE33VX.js";import{e as dt}from"./chunk-V3AT2BKP.js";import{f as mt,g as ie}from"./chunk-VKK5BSLX.js";import"./chunk-3XVM35O2.js";import"./chunk-BIKLW4YS.js";import"./chunk-SHIVUDP3.js";import{b as Se,d as xe}from"./chunk-UJPPR4MX.js";import{m as Ye,p as te}from"./chunk-HNQRZALS.js";import{C as Oe,Ib as je,Jb as R,Kb as ne,Ma as He,Tb as Ge,Za as Qe,mb as ze,nb as O,qb as Z,r as Me,s as Pe,va as Ue,wa as $e,xa as qe,yb as ee}from"./chunk-GUGNR5TF.js";import{$a as $,$b as Ce,Ab as x,Cd as De,Db as f,Dd as K,Ed as Ae,Ef as Le,Fb as c,Gf as G,Ic as he,If as Be,Jb as B,Kb as N,L,Lb as W,Na as a,Nb as F,Ob as U,Pa as de,Pb as I,Qb as m,Rb as D,Re as Fe,Sb as T,Tb as ue,Ub as M,Ue as Ie,Uf as Ne,Vb as P,Wb as A,Yb as H,Zb as fe,Zc as be,_c as ye,_f as We,bf as Re,cb as q,cd as ve,dg as J,eb as w,ec as b,f as me,fc as Q,fg as Ke,gc as y,hc as ge,hd as we,ia as v,jb as _e,kb as C,lb as g,na as h,oa as S,ob as V,of as j,pb as k,pe as Ve,qb as p,rb as l,rd as Te,sb as s,se as ke,tb as u,vd as Ee,vf as Y,xd as z}from"./chunk-C36MW4ME.js";import{n as X}from"./chunk-DM4NXKEP.js";import"./chunk-ZIJQRARU.js";import{a as ce,b as pe}from"./chunk-N3U6637P.js";var St=(()=>{let r=class r{transform(n,o,i){if(typeof o>"u"||typeof o=="number"&&typeof i>"u")throw new Error("TimeAddPipe: missing required arguments");return X(n).add(o,i)}};r.\u0275fac=function(o){return new(o||r)},r.\u0275pipe=q({name:"amAdd",type:r,pure:!0});let e=r;return e})();var xt=(()=>{let r=class r{transform(n,o){if(!o)throw new Error("TimeDurationPipe: missing required time unit argument");return X.duration({[o]:n}).humanize()}};r.\u0275fac=function(o){return new(o||r)},r.\u0275pipe=q({name:"amDuration",type:r,pure:!1});let e=r;return e})();function Et(e,r){if(e&1&&(l(0,"span"),m(1),s()),e&2){let t=c();a(),D(t.space.name)}}function Dt(e,r){e&1&&(l(0,"span",3),m(1,"Create a new space"),s())}function Mt(e,r){if(e&1&&u(0,"fa-icon",4),e&2){let t=c();p("icon",t.icons.faSpinner)}}function Pt(e,r){e&1&&(l(0,"h4",5)(1,"span",3),m(2,"Edit space"),s()())}function At(e,r){if(e&1&&(u(0,"fa-icon",47),l(1,"span",48),m(2,"Settings"),s()),e&2){let t=c();p("icon",t.icons.faCog)}}function Vt(e,r){if(e&1&&(l(0,"div",22)(1,"label",49),m(2,"Storage Usage"),s(),u(3,"app-storage-usage",50),s()),e&2){let t=c();a(3),p("item",t.space)}}function kt(e,r){e&1&&(l(0,"small",36),m(1,"At least one manager is required"),s())}function Ft(e,r){if(e&1&&(l(0,"div",57)(1,"label",58),m(2,"Deactivation date"),s(),l(3,"div",59),m(4),b(5,"amDateFormat"),s()()),e&2){let t=c(2);a(4),D(Q(5,1,t.space.disabledAt))}}function It(e,r){if(e&1&&(l(0,"div",37)(1,"div",51)(2,"label",52),m(3,"Creation date"),s(),l(4,"div",53),m(5),b(6,"amDateFormat"),s()(),l(7,"div",54)(8,"label",55),m(9,"Modification date"),s(),l(10,"div",56),m(11),b(12,"amDateFormat"),s()(),C(13,Ft,6,3,"div",57),s()),e&2){let t=c();a(5),D(Q(6,3,t.space.createdAt)),a(6),D(Q(12,5,t.space.modifiedAt)),a(2),g(t.space.disabledAt&&!t.space.enabled?13:-1)}}function Rt(e,r){if(e&1&&(u(0,"fa-icon",47),l(1,"span",60),m(2,"Files"),s(),l(3,"span"),m(4),s()),e&2){let t=c();p("icon",t.icons.faAnchor),a(4),T("(",(t.space.roots==null?null:t.space.roots.length)||0,")")}}function Lt(e,r){if(e&1&&(u(0,"fa-icon",47),l(1,"span",60),m(2,"Members"),s(),l(3,"span"),m(4),s()),e&2){let t=c();p("icon",t.icons.faUsers),a(4),T("(",t.space.members.length,")")}}function Bt(e,r){if(e&1&&(u(0,"fa-icon",47),l(1,"span",60),m(2,"Links"),s(),l(3,"span"),m(4),s()),e&2){let t=c();p("icon",t.icons.LINKS),a(4),T("(",t.space.links.length,")")}}function Nt(e,r){if(e&1&&(l(0,"span"),m(1),b(2,"amAdd"),b(3,"amTimeAgo"),s()),e&2){let t=c(3);a(),T("\xA0",y(3,5,ge(2,1,t.space.disabledAt,t.SPACE_MAX_DISABLED_DAYS,"days"),!0))}}function Wt(e,r){if(e&1&&(l(0,"span"),m(1),b(2,"amDuration"),s()),e&2){let t=c(3);a(),T("\xA0",y(2,1,t.SPACE_MAX_DISABLED_DAYS,"days"))}}function Ot(e,r){if(e&1&&(l(0,"div",62)(1,"span",3),m(2,"Space and data will be deleted in"),s(),l(3,"span",63),C(4,Nt,4,8,"span")(5,Wt,3,4,"span"),s()()),e&2){let t=c(2);a(4),g(t.space.disabledAt?4:5)}}function Ut(e,r){if(e&1){let t=x();l(0,"button",61),f("click",function(){h(t);let o=c();return S(o.confirmDeletion=!0)}),m(1," Remove "),s(),C(2,Ot,6,1,"div",62)}if(e&2){let t=c();p("disabled",t.confirmDeletion),a(2),g(t.space.enabled?-1:2)}}function $t(e,r){if(e&1){let t=x();l(0,"button",64),f("click",function(){h(t);let o=c();return S(o.openCreateLinkDialog())}),u(1,"fa-icon",47)(2,"fa-icon",47),m(3," Link "),s()}if(e&2){let t=c();a(),p("icon",t.icons.faPlus),a(),p("icon",t.icons.LINKS)}}function qt(e,r){if(e&1){let t=x();l(0,"button",66),f("click",function(){h(t);let o=c(2);return S(o.openAdminRootDialog())}),u(1,"fa-icon",47)(2,"fa-icon",47),m(3," External location "),s()}if(e&2){let t=c(2);a(),p("icon",t.icons.faPlus),a(),p("icon",t.icons.faUserShield)}}function Ht(e,r){if(e&1){let t=x();l(0,"button",64),f("click",function(){h(t);let o=c();return S(o.openSelectRootDialog())}),u(1,"fa-icon",47)(2,"fa-icon",47),m(3," File "),s(),C(4,qt,4,2,"button",65)}if(e&2){let t=c();a(),p("icon",t.icons.faPlus),a(),p("icon",t.icons.faAnchor),a(2),g(t.user.isAdmin?4:-1)}}var se=(()=>{let r=class r{constructor(){this.space=new mt({id:0,name:"",createdAt:new Date,enabled:!0,storageUsage:0,storageQuota:null}),this.spaceChange=new de,this.locale=v(z),this.layout=v(ee),this.icons={SPACES:R.SPACES,LINKS:R.LINKS,faPen:j,faAnchor:Y,faUserShield:ke,faPlus:G,faSpinner:Re,faCog:Fe,faUsers:Ve},this.SPACE_MAX_DISABLED_DAYS=30,this.addRootFileEvent=new me,this.allowedLinkPermissions=[O.ADD,O.DELETE,O.MODIFY],this.editManagers=!1,this.confirmDeletion=!1,this.loading=!1,this.submitted=!1,this.userService=v(te),this.user=this.userService.user,this.spacesService=v(ie),this.linksService=v(dt)}ngOnInit(){this.space.id||this.space.managers.unshift(Ge(this.user,Z.IS_MANAGER))}searchManagers(n){let o={search:n,ignoreUserIds:[...this.space.managers.map(i=>i.id),...this.space.members.filter(i=>i.isUser).map(i=>i.id)],onlyUsers:!0};return this.userService.searchMembers(o)}searchMembers(n){let o={search:n,ignoreUserIds:[...this.space.managers.map(i=>i.id),...this.space.members.filter(i=>i.isUser).map(i=>i.id)],ignoreGroupIds:this.space.members.filter(i=>i.isGroup).map(i=>i.id)};return this.userService.searchMembers(o)}openSelectRootDialog(){this.layout.openDialog(ut,"xl",{initialState:{currentRoots:this.space.roots.filter(o=>o.owner.id===this.user.id)}}).content.submitEvent.pipe(L(1)).subscribe(o=>this.addRootFileEvent.next(o))}openAdminRootDialog(){this.layout.openDialog(ft,null,{initialState:{currentRoots:this.space.roots.filter(o=>o.externalPath)}}).content.submitEvent.pipe(L(1)).subscribe(o=>this.addRootFileEvent.next(o))}openEditLinkDialog(n){this.linksService.editLinkDialog(n,this.space,Ke.SPACE)}openCreateLinkDialog(){this.linksService.createLinkDialog(this.space)}onCancel(){this.confirmDeletion?this.confirmDeletion=!1:this.layout.closeDialog()}onSubmit(){this.loading=!0,this.submitted=!0,this.confirmDeletion?(this.space.id===0&&this.layout.closeDialog(),this.spacesService.deleteSpace(this.space.id,{deleteNow:!0}).subscribe({next:()=>{this.loading=!1,this.spaceChange.emit(["delete",this.space]),this.layout.closeDialog()},error:n=>{this.onError(),this.layout.sendNotification("error","Delete space",this.space.name,n)}})):this.space.id===0?this.spacesService.createSpace(this.space).subscribe({next:n=>{this.loading=!1,this.space=n,this.spaceChange.emit(["add",n]),this.layout.closeDialog()},error:n=>{this.onError(),this.layout.sendNotification("error","Create space",this.space.name,n)}}):this.spacesService.updateSpace(this.space).subscribe({next:n=>{this.loading=!1,n?(this.space=n,this.spaceChange.emit(["update",n])):this.spaceChange.emit(["delete",this.space]),this.layout.closeDialog()},error:n=>{this.onError(),this.layout.sendNotification("error","Edit space",this.space.name,n)}})}cantSubmit(){return this.submitted||!this.space.name||!this.space.managers.length}onError(){this.confirmDeletion=!1,this.submitted=!1,this.loading=!1}};r.\u0275fac=function(o){return new(o||r)},r.\u0275cmp=$({type:r,selectors:[["app-space-dialog"]],inputs:{space:"space"},outputs:{spaceChange:"spaceChange"},decls:70,vars:48,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],[1,"me-2",3,"icon"],["l10nTranslate",""],["animation","spin","size","sm",1,"ms-2",3,"icon"],[1,"modal-title","ms-auto"],["aria-label","Close","type","button",3,"click"],[1,"modal-body"],["type","pills",3,"justified"],[1,"my-3"],["customClass","tab-dialog form-validation",3,"selectTab"],["tabHeading",""],[1,"d-flex","col-12"],[1,"d-flex","flex-column","col-6","pe-2"],[2,"max-width","85%"],[1,"mb-3","px-0"],["for","name","l10nTranslate",""],["id","name","type","text","appAutofocus","","required","",3,"ngModelChange","ngModel"],["for","description","l10nTranslate",""],["id","description","type","text",1,"form-control","form-control-sm",3,"ngModelChange","ngModel"],[1,"d-flex","flex-column","align-items-start","mb-3"],[1,"w-100",3,"quotaChange","quota","fullWidth"],[1,"d-flex","flex-column","mb-3"],[1,"d-flex","justify-content-between"],["for","switchStatus","l10nTranslate",""],[1,"d-flex","align-items-center","form-check","form-switch","cursor-pointer"],["id","switchStatus","type","checkbox","role","button",1,"form-check-input",3,"ngModelChange","ngModel"],["for","switchStatus","l10nTranslate","",1,"form-check-label","mb-0","ms-2"],["for","switchFullText","l10nTranslate",""],["id","switchFullText","type","checkbox","role","button",1,"form-check-input",3,"ngModelChange","ngModel"],["for","switchFullText","l10nTranslate","",1,"form-check-label","mb-0","ms-2"],[1,"d-flex","flex-column","col-6"],["type","button",3,"click"],["for","editManagers","l10nTranslate","",1,"no-select-pointer"],["id","editManagers",1,"ms-1",3,"icon"],[3,"membersChange","members","searchFunction","editMode","hideInput","customPlaceholder"],["l10nTranslate","",1,"text-danger"],[1,"d-flex","d-none","d-lg-flex","mt-auto"],["customClass","tab-dialog",3,"selectTab"],[1,"col-12"],[3,"space","user","addRootFile"],[3,"membersChange","members","withPermissions","searchFunction"],[3,"membersChange","members","filterPermissions","allowedPermissions","withPermissions","editFunction","hideInput"],[1,"modal-footer"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-success"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",3,"click","disabled"],[3,"icon"],["l10nTranslate","",1,"ms-2"],["for","storage","l10nTranslate",""],["id","storage",3,"item"],[1,"d-flex","flex-column","align-items-start","col-4","px-0"],["for","created","l10nTranslate",""],["id","created"],[1,"d-flex","flex-column","align-items-center","col-4","px-0"],["for","modified","l10nTranslate",""],["id","modified"],[1,"d-flex","flex-column","align-items-end","col-4","text-danger","px-0"],["for","disabled","l10nTranslate",""],["id","disabled"],["l10nTranslate","",1,"ms-2","me-1"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-danger",3,"click","disabled"],[1,"text-danger","white-space-truncate","fs-sm","mx-auto"],[1,"fw-bold"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-success",3,"click"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-warning"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-warning",3,"click"]],template:function(o,i){o&1&&(l(0,"div",0)(1,"h4",1),u(2,"fa-icon",2),C(3,Et,2,1,"span")(4,Dt,2,0,"span",3),C(5,Mt,1,1,"fa-icon",4),s(),C(6,Pt,3,0,"h4",5),l(7,"button",6),f("click",function(){return i.layout.closeDialog()}),s()(),l(8,"div",7)(9,"tabset",8),u(10,"hr",9),l(11,"tab",10),f("selectTab",function(){return i.tabView=null}),w(12,At,3,1,"ng-template",11),l(13,"div",12)(14,"div",13)(15,"div",14)(16,"div",15)(17,"label",16),m(18," Space name "),s(),l(19,"input",17),A("ngModelChange",function(d){return P(i.space.name,d)||(i.space.name=d),d}),s()(),l(20,"div",15)(21,"label",18),m(22," Description "),s(),l(23,"input",19),A("ngModelChange",function(d){return P(i.space.description,d)||(i.space.description=d),d}),s()(),l(24,"div",20)(25,"app-storage-quota",21),A("quotaChange",function(d){return P(i.space.storageQuota,d)||(i.space.storageQuota=d),d}),s()(),C(26,Vt,4,1,"div",22),l(27,"div",23)(28,"div")(29,"label",24),m(30,"Space status"),s(),l(31,"div",25)(32,"input",26),A("ngModelChange",function(d){return P(i.space.enabled,d)||(i.space.enabled=d),d}),s(),l(33,"label",27),m(34),s()()(),l(35,"div")(36,"label",28),m(37,"Full-text search"),s(),l(38,"div",25)(39,"input",29),A("ngModelChange",function(d){return P(i.space.storageIndexing,d)||(i.space.storageIndexing=d),d}),s(),l(40,"label",30),m(41),s()()()()()(),l(42,"div",31)(43,"div",32),f("click",function(){return i.editManagers=!i.editManagers}),l(44,"label",33),m(45,"Managers"),s(),u(46,"fa-icon",34),s(),l(47,"app-user-search",35),A("membersChange",function(d){return P(i.space.managers,d)||(i.space.managers=d),d}),s(),C(48,kt,2,0,"small",36),C(49,It,14,7,"div",37),s()()(),l(50,"tab",38),f("selectTab",function(){return i.tabView="roots"}),w(51,Rt,5,2,"ng-template",11),l(52,"div",39),u(53,"app-space-manage-roots",40),s()(),l(54,"tab",38),f("selectTab",function(){return i.tabView="members"}),w(55,Lt,5,2,"ng-template",11),l(56,"div",9)(57,"app-user-search",41),A("membersChange",function(d){return P(i.space.members,d)||(i.space.members=d),d}),s()()(),l(58,"tab",38),f("selectTab",function(){return i.tabView="links"}),w(59,Bt,5,2,"ng-template",11),l(60,"div",9)(61,"app-user-search",42),A("membersChange",function(d){return P(i.space.links,d)||(i.space.links=d),d}),s()()()()(),l(62,"div",43),C(63,Ut,3,2),C(64,$t,4,2,"button",44),C(65,Ht,5,3),l(66,"button",45),f("click",function(){return i.onCancel()}),m(67,"Cancel"),s(),l(68,"button",46),f("click",function(){return i.onSubmit()}),m(69),s()()),o&2&&(a(2),p("icon",i.icons.SPACES),a(),g(i.space.id?3:4),a(2),g(i.loading?5:-1),a(),g(i.space.id?6:-1),a(),I(H("btn-close btn-close-white ",i.space.id?"ms-2":"ms-auto"," ms-2")),a(2),p("justified",!0),a(10),I(H("form-control form-control-sm ",i.space.name?"":"is-invalid")),M("ngModel",i.space.name),a(4),M("ngModel",i.space.description),a(2),M("quota",i.space.storageQuota),p("fullWidth",!0),a(),g(i.space.storageUsage?26:-1),a(6),M("ngModel",i.space.enabled),a(2),T(" ",i.space.enabled?"enabled":"disabled"," "),a(5),M("ngModel",i.space.storageIndexing),a(2),T(" ",i.space.storageIndexing?"enabled":"disabled"," "),a(5),p("icon",i.icons.faPen),a(),M("members",i.space.managers),p("searchFunction",i.searchManagers.bind(i))("editMode",i.editManagers)("hideInput",!i.editManagers)("customPlaceholder","Type to search for managers to add"),a(),g(i.space.managers.length?-1:48),a(),g(i.space.id?49:-1),a(4),p("space",i.space)("user",i.user)("addRootFile",i.addRootFileEvent),a(4),M("members",i.space.members),p("withPermissions",!0)("searchFunction",i.searchMembers.bind(i)),a(4),M("members",i.space.links),p("filterPermissions",!0)("allowedPermissions",i.allowedLinkPermissions)("withPermissions",!0)("editFunction",i.openEditLinkDialog.bind(i))("hideInput",!0),a(2),g(!i.tabView&&i.space.id&&i.user.isAdmin?63:-1),a(),g(i.tabView==="links"?64:-1),a(),g(i.tabView==="roots"?65:-1),a(3),I(H("btn btn-sm ",i.confirmDeletion?"btn-danger":"btn-primary")),p("disabled",i.cantSubmit()),a(),T(" ",i.confirmDeletion?"Confirm permanent deletion of data":"Confirm"," "))},dependencies:[K,J,rt,ot,nt,at,Ee,ye,be,ve,Te,we,Ye,ct,st,Ct,Xe,lt,St,xt,et],encapsulation:2});let e=r;return e})();var Qt=["MainContextMenu"],zt=["TargetContextMenu"],Kt=()=>["roots","shares"],bt=(e,r)=>r.id,yt=(e,r)=>r.mid,vt=(e,r)=>r.key;function jt(e,r){if(e&1){let t=x();l(0,"button",3),b(1,"translate"),f("click",function(){h(t);let o=c();return S(o.openSpaceDialog(!0))}),u(2,"fa-icon",7),s()}if(e&2){let t=c();p("tooltip",y(1,2,"New space",t.locale.language)),a(2),p("icon",t.icons.faPlus)}}function Yt(e,r){if(e&1&&(l(0,"span",29),m(1),s()),e&2){let t=c().$implicit,n=c(2);F("font-size",n.galleryMode.textSize,"px"),a(),D(t.hTimeAgo)}}function Gt(e,r){if(e&1&&u(0,"app-user-avatar",30),e&2){let t=r.$implicit,n=c(4);p("user",t)("isMember",!0)("height",n.galleryMode.dimensions/3)("width",n.galleryMode.dimensions/3)}}function Xt(e,r){if(e&1&&(l(0,"span",26),V(1,Gt,1,4,"app-user-avatar",30,yt),s()),e&2){let t=c().$implicit;a(),k(t.managers)}}function Jt(e,r){if(e&1){let t=x();l(0,"div",21),f("click",function(){let o=h(t).$implicit,i=c(2);return S(i.onSelect(o))})("contextmenu",function(o){let i=h(t).$implicit,_=c(2);return S(_.onTargetContextMenu(o,i))})("appTap",function(){let o=h(t).$implicit,i=c(2);return S(i.browse(o))}),l(1,"div",22),u(2,"fa-icon",23),l(3,"span",24),C(4,Yt,2,3,"span",25),s(),C(5,Xt,3,0,"span",26),s(),l(6,"div",27)(7,"span",28),m(8),s()()()}if(e&2){let t=r.$implicit,n=r.$index,o=c(2);F("height",o.galleryMode.dimensions,"px")("width",o.galleryMode.dimensions,"px"),U("disabled",!t.enabled)("selected",t.id===(o.selected==null?null:o.selected.id)),a(),_e("rowIndex",n),a(),F("min-width",o.galleryMode.image,"px")("min-height",o.galleryMode.image,"px")("font-size",o.galleryMode.faSize,"px"),p("icon",o.icons.SPACES),a(2),g(t.newly?4:-1),a(),g(t.managers.length?5:-1),a(2),F("font-size",o.galleryMode.textSize,"px"),a(),D(t.name)}}function Zt(e,r){if(e&1){let t=x();l(0,"div",12)(1,"app-virtual-scroll",18),b(2,"searchFilter"),f("contextmenu",function(o){h(t);let i=c();return S(i.onContextMenu(o))}),l(3,"div",19),V(4,Jt,9,21,"div",20,bt),s()()()}if(e&2){let t=c();a(),p("childHeight",t.galleryMode.dimensions)("childWidth",t.galleryMode.dimensions)("items",y(2,5,t.spaces,t.inputFilter.search()))("galleryMode",!0)("resizeOffset",110),a(3),k(t.scrollView==null?null:t.scrollView.viewPortItems)}}function ei(e,r){if(e&1&&u(0,"fa-icon",37),e&2){let t=c(4);p("icon",t.sortTable.sortParam.asc?t.icons.faArrowDown:t.icons.faArrowUp)("fixedWidth",!1)}}function ti(e,r){if(e&1){let t=x();l(0,"th",36),f("click",function(){h(t);let o=c().$implicit,i=c(2);return S(i.sortBy(o.key))}),m(1),C(2,ei,1,2,"fa-icon",37),s()}if(e&2){let t=c().$implicit,n=c(2);I(t.value.class),F("width",t.value.width,"%"),U("text-align-center",t.value.textCenter)("cursor-pointer",t.value.sortable),a(),T(" ",t.value.label," "),a(),g(n.sortTable.sortParam.column===t.key?2:-1)}}function ii(e,r){if(e&1&&C(0,ti,3,10,"th",35),e&2){let t=r.$implicit;g(t.value.show?0:-1)}}function ni(e,r){if(e&1&&(l(0,"div",40),u(1,"fa-icon",41),l(2,"div",42)(3,"span",28),m(4),s(),l(5,"span",43),m(6),s()()()),e&2){let t=c(3).$implicit,n=c(2);a(),p("icon",n.icons.SPACES)("fixedWidth",!1),a(3),D(t.name),a(2),D(t.description)}}function oi(e,r){if(e&1&&u(0,"app-user-avatar",44),e&2){let t=r.$implicit;p("user",t)("isMember",!0)}}function ai(e,r){if(e&1&&V(0,oi,1,2,"app-user-avatar",44,yt),e&2){let t=c(3).$implicit;k(t.managers)}}function ri(e,r){if(e&1&&(l(0,"span"),m(1),b(2,"joinCounts"),s()),e&2){let t=c(3).$implicit;a(),D(y(2,1,t.counts,Ce(4,Kt)))}}function li(e,r){if(e&1){let t=x();l(0,"span",47),f("click",function(){h(t);let o=c(6);return S(o.openSpaceRootsDialog())}),u(1,"fa-icon",7),m(2),s()}if(e&2){let t=c(4).$implicit,n=c(2);a(),p("icon",n.icons.faAnchor),a(),T("\xA0",t.counts.roots," ")}}function si(e,r){if(e&1){let t=x();l(0,"span",48),f("click",function(){h(t);let o=c(4).$implicit,i=c(2);return S(i.openChildShareDialog(o))}),u(1,"fa-icon",49),l(2,"span"),m(3),s()()}if(e&2){let t=c(4).$implicit,n=c(2);a(),p("icon",n.icons.SHARED),a(2),D(t.counts.shares)}}function ci(e,r){if(e&1&&(C(0,li,3,2,"span",45),C(1,si,4,2,"span",46)),e&2){let t=c(3).$implicit,n=c(2);g(t.counts!=null&&t.counts.roots?0:-1),a(),g(t.role===n.SPACE_ROLE.IS_MANAGER&&t.counts.shares?1:-1)}}function pi(e,r){if(e&1&&u(0,"app-file-permissions",50),e&2){let t=c(4).$implicit;p("permissions",t.hPerms)}}function mi(e,r){if(e&1&&C(0,pi,1,1,"app-file-permissions",50),e&2){let t=c(3).$implicit;g(t.permissions?0:-1)}}function di(e,r){if(e&1&&m(0),e&2){let t=c(3).$implicit;T(" ",t.hTimeAgo," ")}}function _i(e,r){if(e&1&&(l(0,"td"),C(1,ni,7,4,"div",40)(2,ai,2,0)(3,ri,3,5,"span")(4,ci,2,2)(5,mi,1,1)(6,di,1,1),s()),e&2){let t,n=c().$implicit,o=c().$implicit;I(fe("",n.value.class," ",n.value.newly?"prop-newly-"+o[n.value.newly]:"")),F("width",n.value.width,"%"),U("text-align-center",n.value.textCenter),a(),g((t=n.key)==="name"?1:t==="managers"?2:t==="members"?3:t==="infos"?4:t==="permissions"?5:t==="modified"?6:-1)}}function ui(e,r){if(e&1&&C(0,_i,7,9,"td",39),e&2){let t=r.$implicit;g(t.value.show?0:-1)}}function fi(e,r){if(e&1){let t=x();l(0,"tr",38),f("click",function(){let o=h(t).$implicit,i=c(2);return S(i.onSelect(o))})("contextmenu",function(o){let i=h(t).$implicit,_=c(2);return S(_.onTargetContextMenu(o,i))})("appTap",function(){let o=h(t).$implicit,i=c(2);return S(i.browse(o))}),V(1,ui,1,1,null,null,vt),b(3,"keyvalue"),s()}if(e&2){let t=r.$implicit,n=c(2);U("disabled",!t.enabled)("selected",t.id===(n.selected==null?null:n.selected.id)),a(),k(y(3,4,n.tableHeaders,n.originalOrderKeyValue))}}function Ci(e,r){if(e&1){let t=x();l(0,"table",31)(1,"thead")(2,"tr"),V(3,ii,1,1,null,null,vt),b(5,"keyvalue"),s()()(),l(6,"app-virtual-scroll",32),b(7,"searchFilter"),f("contextmenu",function(o){h(t);let i=c();return S(i.onContextMenu(o))}),l(8,"table",31)(9,"tbody",33),V(10,fi,4,7,"tr",34,bt),s()()()}if(e&2){let t=c();a(3),k(y(5,2,t.tableHeaders,t.originalOrderKeyValue)),a(3),p("bufferAmount",5)("items",y(7,5,t.spaces,t.inputFilter.search())),a(4),k(t.scrollView==null?null:t.scrollView.viewPortItems)}}function gi(e,r){if(e&1&&(l(0,"span",51),u(1,"fa-icon",7),m(2,"New space"),s()),e&2){let t=c(2);a(),p("icon",t.icons.faPlus)}}function hi(e,r){}function Si(e,r){if(e&1){let t=x();w(0,gi,3,1,"ng-template",15),f("execute",function(){h(t);let o=c();return S(o.openSpaceDialog(!0))}),w(1,hi,0,0,"ng-template",17)}e&2&&(a(),p("divider",!0))}function xi(e,r){if(e&1&&(l(0,"span",51),u(1,"fa-icon",7),m(2,"Refresh"),s()),e&2){let t=c();a(),p("icon",t.icons.faArrowRotateRight)}}function bi(e,r){if(e&1&&(l(0,"span",51),u(1,"fa-icon",7),m(2,"Edit space"),s()),e&2){let t=c(2);a(),p("icon",t.icons.faPen)}}function yi(e,r){if(e&1&&(l(0,"span",51),u(1,"fa-icon",7),m(2,"Edit children shares"),s()),e&2){let t=c(3);a(),p("icon",t.icons.SHARED)}}function vi(e,r){if(e&1){let t=x();w(0,yi,3,1,"ng-template",15),f("execute",function(){h(t);let o=c(2);return S(o.openChildShareDialog())})}}function wi(e,r){if(e&1){let t=x();w(0,bi,3,1,"ng-template",15),f("execute",function(){h(t);let o=c();return S(o.openSpaceDialog())}),C(1,vi,1,0,null,16)}if(e&2){let t=c();a(),g(t.selected!=null&&t.selected.counts.shares?1:-1)}}function Ti(e,r){if(e&1&&(l(0,"span",51),u(1,"fa-icon",7),m(2,"Manage my anchored files"),s()),e&2){let t=c(2);a(),p("icon",t.icons.faAnchor)}}function Ei(e,r){if(e&1){let t=x();w(0,Ti,3,1,"ng-template",15),f("execute",function(){h(t);let o=c();return S(o.openSpaceRootsDialog())})}}function Di(e,r){}function Mi(e,r){e&1&&w(0,Di,0,0,"ng-template",17),e&2&&p("divider",!0)}function Pi(e,r){if(e&1&&(l(0,"span",51),u(1,"fa-icon",7),m(2,"Informations"),s()),e&2){let t=c();a(),p("icon",t.icons.faCircleInfo)}}var Yn=(()=>{let r=class r{constructor(){this.locale=v(z),this.layout=v(ee),this.SPACE_ROLE=Z,this.originalOrderKeyValue=Qe,this.TAB_MENU=He,this.icons={SPACES:R.SPACES,SHARED:R.SHARED_WITH_OTHERS,faAnchor:Y,faArrowDown:Ne,faArrowUp:Ie,faRotate:Ae,faArrowRotateRight:Be,faUpload:Le,faPlus:G,faPen:j,faCircleInfo:We},this.tableHeaders={name:{label:"Name",width:30,textCenter:!1,class:"",show:!0,sortable:!0},managers:{label:"Managers",width:10,class:"d-none d-md-table-cell",textCenter:!0,show:!0,sortable:!0},members:{label:"Members",width:20,class:"d-none d-md-table-cell",textCenter:!1,show:!0},infos:{label:"Infos",width:15,textCenter:!0,class:"d-none d-md-table-cell",show:!0},permissions:{label:"Permissions",width:10,textCenter:!0,class:"d-none d-lg-table-cell",show:!0,sortable:!0},modified:{label:"Modified",width:10,textCenter:!0,class:"d-none d-lg-table-cell",newly:"newly",show:!0,sortable:!0}},this.btnSortFields={name:"Name",managers:"Managers",permissions:"Permissions",modified:"Modified"},this.loading=!1,this.spaces=[],this.selected=null,this.canCreateSpace=!1,this.canEditSpace=!1,this.canManageRoots=!1,this.router=v(xe),this.activatedRoute=v(Se),this.spacesService=v(ie),this.store=v(ze),this.userService=v(te),this.sortSettings={default:[{prop:"name",type:"string"}],name:[{prop:"name",type:"string"}],managers:[{prop:"managers",type:"length"}],permissions:[{prop:"permissions",type:"length"}],modified:[{prop:"modified",type:"date"}]},this.sortTable=new tt(this.constructor.name,this.sortSettings),this.loadSpaces(),this.canCreateSpace=this.userService.userHavePermission(Oe.SPACES_ADMIN),this.layout.setBreadcrumbIcon(R.SPACES),this.layout.setBreadcrumbNav({url:`/${ne.SPACES}/${je.SPACES}`,translating:!0,sameLink:!0}),this.activatedRoute.queryParams.subscribe(n=>this.focusOnSelect=n.select)}ngOnInit(){this.galleryMode=this.btnNavigationView.currentView()}loadSpaces(){this.loading=!0,this.onSelect(),this.spacesService.listSpaces().subscribe({next:n=>{this.sortBy(this.sortTable.sortParam.column,!1,n),this.loading=!1,this.focusOnSelect?this.focusOn(this.focusOnSelect):this.scrollView.scrollInto(-1)},error:n=>{this.spaces=[],this.loading=!1,this.layout.sendNotification("error","Spaces",n.error.message)}})}browse(n){n.enabled?this.router.navigate([ne.FILES,n.alias],{relativeTo:this.activatedRoute}).catch(console.error):this.layout.sendNotification("warning",n.name,"Space is disabled")}onSelect(n=null){n?(this.selected=n,this.canEditSpace=!!n.managers.find(o=>o.id===this.userService.user.id),this.canManageRoots=this.canEditSpace||n.havePermission(O.SHARE_INSIDE)):(this.selected=null,this.canEditSpace=!1,this.canManageRoots=!1),this.store.spaceSelection.set(this.selected)}sortBy(n,o=!0,i){this.spaces=this.sortTable.sortBy(n,o,i||this.spaces)}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)}openSpaceDialog(n=!1){n?this.layout.openDialog(se,"xl").content.spaceChange.pipe(L(1)).subscribe(i=>{let[_,d]=i;_==="add"&&(this.sortBy(this.sortTable.sortParam.column,!1,this.spaces.concat(d)),this.onSelect(d))}):this.selected&&this.canEditSpace&&this.spacesService.getSpace(this.selected.id).subscribe({next:o=>{this.layout.openDialog(se,"xl",{initialState:{space:o}}).content.spaceChange.pipe(L(1)).subscribe(_=>{let[d,E]=_;d==="update"?(this.selected.name=E.name,this.selected.alias=E.alias,this.selected.description=E.description,this.selected.counts=pe(ce({},E.counts),{shares:this.selected.counts.shares}),this.selected.modifiedAt=E.modifiedAt,this.selected.enabled=E.enabled,this.selected.managers=[...E.managers]):d==="delete"&&(this.onSelect(),this.sortBy(this.sortTable.sortParam.column,!1,this.spaces.filter(wt=>wt.id!==E.id)))})},error:o=>this.layout.sendNotification("error","Edit space",this.selected.name,o)})}openSpaceRootsDialog(){setTimeout(()=>{this.layout.openDialog(ht,"md",{initialState:{space:this.selected,user:this.userService.user}})},this.selected?0:100)}openChildShareDialog(n){n&&this.onSelect(n),this.layout.openDialog(gt,null,{initialState:{space:this.selected}}).content.sharesCountEvent.subscribe(i=>this.selected.counts.shares=i)}focusOn(n){let o=this.spaces.find(i=>i.name===n);o&&(setTimeout(()=>this.scrollView.scrollInto(o),100),this.onSelect(o))}};r.\u0275fac=function(o){return new(o||r)},r.\u0275cmp=$({type:r,selectors:[["app-spaces"]],viewQuery:function(o,i){if(o&1&&(B(ae,5),B(oe,7),B(re,7),B(Qt,7),B(zt,7)),o&2){let _;N(_=W())&&(i.scrollView=_.first),N(_=W())&&(i.inputFilter=_.first),N(_=W())&&(i.btnNavigationView=_.first),N(_=W())&&(i.mainContextMenu=_.first),N(_=W())&&(i.targetContextMenu=_.first)}},decls:34,vars:37,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"],["container","body","type","button",1,"btn","btn-sm","btn-secondary","me-1",3,"tooltip"],["container","body","type","button",1,"btn","btn-sm","btn-secondary","me-1",3,"click","disabled","tooltip"],[3,"icon"],[1,"ms-auto"],[1,"btn-group","btn-group-sm","me-1"],[1,"d-none","d-sm-block"],[3,"sortBy","switchView","sortParams","sortFields"],[1,"app-thumbs"],[1,"app-foot-menu"],[1,"mx-auto"],["contextMenuItem","",3,"execute"],["contextMenuItem",""],["contextMenuItem","",3,"divider"],[3,"contextmenu","childHeight","childWidth","items","galleryMode","resizeOffset"],["tabindex","-1",1,"row","g-0"],[1,"card",3,"disabled","selected","height","width"],[1,"card",3,"click","contextmenu","appTap"],[1,"card-body"],[1,"circle-primary-icon",3,"icon"],[1,"label-top-right"],[1,"badge","rounded-pill","bg-warning",3,"font-size"],[1,"label-bottom-left"],[1,"card-footer","text-center","text-truncate","p-1"],["draggable","false",1,"no-pointer-events"],[1,"badge","rounded-pill","bg-warning"],[3,"user","isMember","height","width"],[1,"app-table"],[3,"contextmenu","bufferAmount","items"],["tabindex","-1"],[3,"disabled","selected"],["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"],[1,"circle-primary-icon",3,"icon","fixedWidth"],[1,"d-flex","flex-column","text-truncate"],["draggable","false",1,"no-pointer-events","text-muted","fs-xxxs"],[3,"user","isMember"],[1,"badge","rounded-pill","bg-primary","cursor-pointer","me-1"],[1,"badge","rounded-pill","bg-purple","cursor-pointer","me-1"],[1,"badge","rounded-pill","bg-primary","cursor-pointer","me-1",3,"click"],[1,"badge","rounded-pill","bg-purple","cursor-pointer","me-1",3,"click"],[1,"me-1",3,"icon"],["tooltipPlacement","auto",3,"permissions"],["l10nTranslate",""]],template:function(o,i){if(o&1){let _=x();l(0,"div",2)(1,"button",3),b(2,"translate"),f("click",function(){return h(_),S(i.loadSpaces())}),u(3,"fa-icon",4),s(),C(4,jt,3,5,"button",5),l(5,"button",6),b(6,"translate"),f("click",function(){return h(_),S(i.openSpaceDialog())}),u(7,"fa-icon",7),s(),l(8,"button",6),b(9,"translate"),f("click",function(){return h(_),S(i.openChildShareDialog())}),u(10,"fa-icon",7),s(),l(11,"button",6),b(12,"translate"),f("click",function(){return h(_),S(i.openSpaceRootsDialog())}),u(13,"fa-icon",7),s(),l(14,"div",8)(15,"div",9),u(16,"app-input-filter",10),s(),l(17,"app-navigation-view",11),f("sortBy",function(E){return h(_),S(i.sortBy(E))})("switchView",function(E){return h(_),S(i.galleryMode=E)}),s()()(),C(18,Zt,6,8,"div",12)(19,Ci,12,8),l(20,"div",13)(21,"span",14),m(22),b(23,"translate"),s()(),l(24,"context-menu",null,0),C(26,Si,2,1),w(27,xi,3,1,"ng-template",15),f("execute",function(){return h(_),S(i.loadSpaces())}),s(),l(28,"context-menu",null,1),C(30,wi,2,1),C(31,Ei,1,0,null,16),C(32,Mi,1,1,null,17),w(33,Pi,3,1,"ng-template",15),f("execute",function(){return h(_),S(i.layout.showRSideBarTab(i.TAB_MENU.SELECTION))}),s()}o&2&&(a(),p("tooltip",y(2,22,"Refresh",i.locale.language)),a(2),p("icon",i.icons.faArrowRotateRight)("animation",i.loading?"spin":null),a(),g(i.canCreateSpace?4:-1),a(),p("disabled",!i.canEditSpace)("tooltip",y(6,25,"Edit space",i.locale.language)),a(2),p("icon",i.icons.faPen),a(),p("disabled",!i.canEditSpace||!(i.selected!=null&&i.selected.counts.shares))("tooltip",y(9,28,"Edit children shares",i.locale.language)),a(2),p("icon",i.icons.SHARED),a(),p("disabled",!i.canManageRoots)("tooltip",y(12,31,"Manage my anchored files",i.locale.language)),a(2),p("icon",i.icons.faAnchor),a(4),p("sortParams",i.sortTable.sortParam)("sortFields",i.btnSortFields),a(),g(i.galleryMode!=null&&i.galleryMode.enabled?18:19),a(4),ue("",i.spaces.length," ",y(23,34,"spaces",i.locale.language)),a(4),g(i.canCreateSpace?26:-1),a(4),g(i.canEditSpace?30:-1),a(),g(i.canManageRoots?31:-1),a(),g(i.canEditSpace||i.canManageRoots?32:-1))},dependencies:[K,J,it,ae,Pe,Me,qe,$e,Ue,re,oe,_t,Je,he,pt,De,Ze],encapsulation:2});let e=r;return e})();export{Yn as SpacesComponent};
@@ -0,0 +1 @@
1
+ import{$ as y,$a as Tr,A as He,Db as Pr,E as G,G as J,I as se,Ib as _r,Ja as br,K as Dt,Kb as xr,L as ae,Lb as Lr,O as Ve,P as W,Pa as X,Q as Nt,R as fr,V as pr,Va as xt,Wa as _,Wc as Fr,Xa as Ir,Y as gr,Z as T,Za as Ar,_ as Ut,_a as Lt,a as ar,aa as S,b as ur,ba as vr,bb as Ie,c as cr,d as Tt,da as C,e as Et,f as z,fa as mr,fb as Er,g as M,ga as D,gb as Or,ha as Ge,hb as Mr,ia as d,ib as Dr,ja as Rr,jb as Nr,jc as jr,k as F,la as ue,lc as Q,ma as P,o as I,oc as kr,p as h,pa as yr,pc as $r,q as we,r as lr,ra as Sr,s as hr,sa as We,sc as Ke,tb as Ur,ua as Qe,uc as Ye,v,va as Cr,w as Ot,wa as be,wc as zr,x as A,xa as Pt,xc as Ze,y as Mt,ya as wr,z as dr,za as _t}from"./chunk-C36MW4ME.js";import{a as l,b as U}from"./chunk-N3U6637P.js";var f="primary",$e=Symbol("RouteTitle"),Ft=class{params;constructor(n){this.params=n||{}}has(n){return Object.prototype.hasOwnProperty.call(this.params,n)}get(n){if(this.has(n)){let e=this.params[n];return Array.isArray(e)?e[0]:e}return null}getAll(n){if(this.has(n)){let e=this.params[n];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}};function re(t){return new Ft(t)}function Kr(t,n,e){let r=e.path.split("/");if(r.length>t.length||e.pathMatch==="full"&&(n.hasChildren()||r.length<t.length))return null;let i={};for(let o=0;o<r.length;o++){let s=r[o],a=t[o];if(s[0]===":")i[s.substring(1)]=a;else if(s!==a.path)return null}return{consumed:t.slice(0,r.length),posParams:i}}function Ln(t,n){if(t.length!==n.length)return!1;for(let e=0;e<t.length;++e)if(!j(t[e],n[e]))return!1;return!0}function j(t,n){let e=t?qt(t):void 0,r=n?qt(n):void 0;if(!e||!r||e.length!=r.length)return!1;let i;for(let o=0;o<e.length;o++)if(i=e[o],!Yr(t[i],n[i]))return!1;return!0}function qt(t){return[...Object.keys(t),...Object.getOwnPropertySymbols(t)]}function Yr(t,n){if(Array.isArray(t)&&Array.isArray(n)){if(t.length!==n.length)return!1;let e=[...t].sort(),r=[...n].sort();return e.every((i,o)=>r[o]===i)}else return t===n}function Zr(t){return t.length>0?t[t.length-1]:null}function H(t){return lr(t)?t:Or(t)?I(Promise.resolve(t)):h(t)}var jn={exact:Xr,subset:en},Jr={exact:kn,subset:$n,ignored:()=>!0};function qr(t,n,e){return jn[e.paths](t.root,n.root,e.matrixParams)&&Jr[e.queryParams](t.queryParams,n.queryParams)&&!(e.fragment==="exact"&&t.fragment!==n.fragment)}function kn(t,n){return j(t,n)}function Xr(t,n,e){if(!ee(t.segments,n.segments)||!et(t.segments,n.segments,e)||t.numberOfChildren!==n.numberOfChildren)return!1;for(let r in n.children)if(!t.children[r]||!Xr(t.children[r],n.children[r],e))return!1;return!0}function $n(t,n){return Object.keys(n).length<=Object.keys(t).length&&Object.keys(n).every(e=>Yr(t[e],n[e]))}function en(t,n,e){return tn(t,n,n.segments,e)}function tn(t,n,e,r){if(t.segments.length>e.length){let i=t.segments.slice(0,e.length);return!(!ee(i,e)||n.hasChildren()||!et(i,e,r))}else if(t.segments.length===e.length){if(!ee(t.segments,e)||!et(t.segments,e,r))return!1;for(let i in n.children)if(!t.children[i]||!en(t.children[i],n.children[i],r))return!1;return!0}else{let i=e.slice(0,t.segments.length),o=e.slice(t.segments.length);return!ee(t.segments,i)||!et(t.segments,i,r)||!t.children[f]?!1:tn(t.children[f],n,o,r)}}function et(t,n,e){return n.every((r,i)=>Jr[e](t[i].parameters,r.parameters))}var $=class{root;queryParams;fragment;_queryParamMap;constructor(n=new g([],{}),e={},r=null){this.root=n,this.queryParams=e,this.fragment=r}get queryParamMap(){return this._queryParamMap??=re(this.queryParams),this._queryParamMap}toString(){return qn.serialize(this)}},g=class{segments;children;parent=null;constructor(n,e){this.segments=n,this.children=e,Object.values(e).forEach(r=>r.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return tt(this)}},K=class{path;parameters;_parameterMap;constructor(n,e){this.path=n,this.parameters=e}get parameterMap(){return this._parameterMap??=re(this.parameters),this._parameterMap}toString(){return nn(this)}};function zn(t,n){return ee(t,n)&&t.every((e,r)=>j(e.parameters,n[r].parameters))}function ee(t,n){return t.length!==n.length?!1:t.every((e,r)=>e.path===n[r].path)}function Fn(t,n){let e=[];return Object.entries(t.children).forEach(([r,i])=>{r===f&&(e=e.concat(n(i,r)))}),Object.entries(t.children).forEach(([r,i])=>{r!==f&&(e=e.concat(n(i,r)))}),e}var ze=(()=>{class t{static \u0275fac=function(r){return new(r||t)};static \u0275prov=C({token:t,factory:()=>new ne,providedIn:"root"})}return t})(),ne=class{parse(n){let e=new Ht(n);return new $(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(n){let e=`/${Ae(n.root,!0)}`,r=Vn(n.queryParams),i=typeof n.fragment=="string"?`#${Bn(n.fragment)}`:"";return`${e}${r}${i}`}},qn=new ne;function tt(t){return t.segments.map(n=>nn(n)).join("/")}function Ae(t,n){if(!t.hasChildren())return tt(t);if(n){let e=t.children[f]?Ae(t.children[f],!1):"",r=[];return Object.entries(t.children).forEach(([i,o])=>{i!==f&&r.push(`${i}:${Ae(o,!1)}`)}),r.length>0?`${e}(${r.join("//")})`:e}else{let e=Fn(t,(r,i)=>i===f?[Ae(t.children[f],!1)]:[`${i}:${Ae(r,!1)}`]);return Object.keys(t.children).length===1&&t.children[f]!=null?`${tt(t)}/${e[0]}`:`${tt(t)}/(${e.join("//")})`}}function rn(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Je(t){return rn(t).replace(/%3B/gi,";")}function Bn(t){return encodeURI(t)}function Bt(t){return rn(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function rt(t){return decodeURIComponent(t)}function Br(t){return rt(t.replace(/\+/g,"%20"))}function nn(t){return`${Bt(t.path)}${Hn(t.parameters)}`}function Hn(t){return Object.entries(t).map(([n,e])=>`;${Bt(n)}=${Bt(e)}`).join("")}function Vn(t){let n=Object.entries(t).map(([e,r])=>Array.isArray(r)?r.map(i=>`${Je(e)}=${Je(i)}`).join("&"):`${Je(e)}=${Je(r)}`).filter(e=>e);return n.length?`?${n.join("&")}`:""}var Gn=/^[^\/()?;#]+/;function jt(t){let n=t.match(Gn);return n?n[0]:""}var Wn=/^[^\/()?;=#]+/;function Qn(t){let n=t.match(Wn);return n?n[0]:""}var Kn=/^[^=?&#]+/;function Yn(t){let n=t.match(Kn);return n?n[0]:""}var Zn=/^[^&#]+/;function Jn(t){let n=t.match(Zn);return n?n[0]:""}var Ht=class{url;remaining;constructor(n){this.url=n,this.remaining=n}parseRootSegment(){return this.consumeOptional("/"),this.remaining===""||this.peekStartsWith("?")||this.peekStartsWith("#")?new g([],{}):new g([],this.parseChildren())}parseQueryParams(){let n={};if(this.consumeOptional("?"))do this.parseQueryParam(n);while(this.consumeOptional("&"));return n}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(this.remaining==="")return{};this.consumeOptional("/");let n=[];for(this.peekStartsWith("(")||n.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),n.push(this.parseSegment());let e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let r={};return this.peekStartsWith("(")&&(r=this.parseParens(!1)),(n.length>0||Object.keys(e).length>0)&&(r[f]=new g(n,e)),r}parseSegment(){let n=jt(this.remaining);if(n===""&&this.peekStartsWith(";"))throw new S(4009,!1);return this.capture(n),new K(rt(n),this.parseMatrixParams())}parseMatrixParams(){let n={};for(;this.consumeOptional(";");)this.parseParam(n);return n}parseParam(n){let e=Qn(this.remaining);if(!e)return;this.capture(e);let r="";if(this.consumeOptional("=")){let i=jt(this.remaining);i&&(r=i,this.capture(r))}n[rt(e)]=rt(r)}parseQueryParam(n){let e=Yn(this.remaining);if(!e)return;this.capture(e);let r="";if(this.consumeOptional("=")){let s=Jn(this.remaining);s&&(r=s,this.capture(r))}let i=Br(e),o=Br(r);if(n.hasOwnProperty(i)){let s=n[i];Array.isArray(s)||(s=[s],n[i]=s),s.push(o)}else n[i]=o}parseParens(n){let e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){let r=jt(this.remaining),i=this.remaining[r.length];if(i!=="/"&&i!==")"&&i!==";")throw new S(4010,!1);let o;r.indexOf(":")>-1?(o=r.slice(0,r.indexOf(":")),this.capture(o),this.capture(":")):n&&(o=f);let s=this.parseChildren();e[o]=Object.keys(s).length===1&&s[f]?s[f]:new g([],s),this.consumeOptional("//")}return e}peekStartsWith(n){return this.remaining.startsWith(n)}consumeOptional(n){return this.peekStartsWith(n)?(this.remaining=this.remaining.substring(n.length),!0):!1}capture(n){if(!this.consumeOptional(n))throw new S(4011,!1)}};function on(t){return t.segments.length>0?new g([],{[f]:t}):t}function sn(t){let n={};for(let[r,i]of Object.entries(t.children)){let o=sn(i);if(r===f&&o.segments.length===0&&o.hasChildren())for(let[s,a]of Object.entries(o.children))n[s]=a;else(o.segments.length>0||o.hasChildren())&&(n[r]=o)}let e=new g(t.segments,n);return Xn(e)}function Xn(t){if(t.numberOfChildren===1&&t.children[f]){let n=t.children[f];return new g(t.segments.concat(n.segments),n.children)}return t}function Y(t){return t instanceof $}function an(t,n,e=null,r=null){let i=un(t);return cn(i,n,e,r)}function un(t){let n;function e(o){let s={};for(let u of o.children){let c=e(u);s[u.outlet]=c}let a=new g(o.url,s);return o===t&&(n=a),a}let r=e(t.root),i=on(r);return n??i}function cn(t,n,e,r){let i=t;for(;i.parent;)i=i.parent;if(n.length===0)return kt(i,i,i,e,r);let o=ei(n);if(o.toRoot())return kt(i,i,new g([],{}),e,r);let s=ti(o,i,t),a=s.processChildren?Ee(s.segmentGroup,s.index,o.commands):hn(s.segmentGroup,s.index,o.commands);return kt(i,s.segmentGroup,a,e,r)}function nt(t){return typeof t=="object"&&t!=null&&!t.outlets&&!t.segmentPath}function De(t){return typeof t=="object"&&t!=null&&t.outlets}function kt(t,n,e,r,i){let o={};r&&Object.entries(r).forEach(([u,c])=>{o[u]=Array.isArray(c)?c.map(p=>`${p}`):`${c}`});let s;t===n?s=e:s=ln(t,n,e);let a=on(sn(s));return new $(a,o,i)}function ln(t,n,e){let r={};return Object.entries(t.children).forEach(([i,o])=>{o===n?r[i]=e:r[i]=ln(o,n,e)}),new g(t.segments,r)}var it=class{isAbsolute;numberOfDoubleDots;commands;constructor(n,e,r){if(this.isAbsolute=n,this.numberOfDoubleDots=e,this.commands=r,n&&r.length>0&&nt(r[0]))throw new S(4003,!1);let i=r.find(De);if(i&&i!==Zr(r))throw new S(4004,!1)}toRoot(){return this.isAbsolute&&this.commands.length===1&&this.commands[0]=="/"}};function ei(t){if(typeof t[0]=="string"&&t.length===1&&t[0]==="/")return new it(!0,0,t);let n=0,e=!1,r=t.reduce((i,o,s)=>{if(typeof o=="object"&&o!=null){if(o.outlets){let a={};return Object.entries(o.outlets).forEach(([u,c])=>{a[u]=typeof c=="string"?c.split("/"):c}),[...i,{outlets:a}]}if(o.segmentPath)return[...i,o.segmentPath]}return typeof o!="string"?[...i,o]:s===0?(o.split("/").forEach((a,u)=>{u==0&&a==="."||(u==0&&a===""?e=!0:a===".."?n++:a!=""&&i.push(a))}),i):[...i,o]},[]);return new it(e,n,r)}var he=class{segmentGroup;processChildren;index;constructor(n,e,r){this.segmentGroup=n,this.processChildren=e,this.index=r}};function ti(t,n,e){if(t.isAbsolute)return new he(n,!0,0);if(!e)return new he(n,!1,NaN);if(e.parent===null)return new he(e,!0,0);let r=nt(t.commands[0])?0:1,i=e.segments.length-1+r;return ri(e,i,t.numberOfDoubleDots)}function ri(t,n,e){let r=t,i=n,o=e;for(;o>i;){if(o-=i,r=r.parent,!r)throw new S(4005,!1);i=r.segments.length}return new he(r,!1,i-o)}function ni(t){return De(t[0])?t[0].outlets:{[f]:t}}function hn(t,n,e){if(t??=new g([],{}),t.segments.length===0&&t.hasChildren())return Ee(t,n,e);let r=ii(t,n,e),i=e.slice(r.commandIndex);if(r.match&&r.pathIndex<t.segments.length){let o=new g(t.segments.slice(0,r.pathIndex),{});return o.children[f]=new g(t.segments.slice(r.pathIndex),t.children),Ee(o,0,i)}else return r.match&&i.length===0?new g(t.segments,{}):r.match&&!t.hasChildren()?Vt(t,n,e):r.match?Ee(t,0,i):Vt(t,n,e)}function Ee(t,n,e){if(e.length===0)return new g(t.segments,{});{let r=ni(e),i={};if(Object.keys(r).some(o=>o!==f)&&t.children[f]&&t.numberOfChildren===1&&t.children[f].segments.length===0){let o=Ee(t.children[f],n,e);return new g(t.segments,o.children)}return Object.entries(r).forEach(([o,s])=>{typeof s=="string"&&(s=[s]),s!==null&&(i[o]=hn(t.children[o],n,s))}),Object.entries(t.children).forEach(([o,s])=>{r[o]===void 0&&(i[o]=s)}),new g(t.segments,i)}}function ii(t,n,e){let r=0,i=n,o={match:!1,pathIndex:0,commandIndex:0};for(;i<t.segments.length;){if(r>=e.length)return o;let s=t.segments[i],a=e[r];if(De(a))break;let u=`${a}`,c=r<e.length-1?e[r+1]:null;if(i>0&&u===void 0)break;if(u&&c&&typeof c=="object"&&c.outlets===void 0){if(!Vr(u,c,s))return o;r+=2}else{if(!Vr(u,{},s))return o;r++}i++}return{match:!0,pathIndex:i,commandIndex:r}}function Vt(t,n,e){let r=t.segments.slice(0,n),i=0;for(;i<e.length;){let o=e[i];if(De(o)){let u=oi(o.outlets);return new g(r,u)}if(i===0&&nt(e[0])){let u=t.segments[n];r.push(new K(u.path,Hr(e[0]))),i++;continue}let s=De(o)?o.outlets[f]:`${o}`,a=i<e.length-1?e[i+1]:null;s&&a&&nt(a)?(r.push(new K(s,Hr(a))),i+=2):(r.push(new K(s,{})),i++)}return new g(r,{})}function oi(t){let n={};return Object.entries(t).forEach(([e,r])=>{typeof r=="string"&&(r=[r]),r!==null&&(n[e]=Vt(new g([],{}),0,r))}),n}function Hr(t){let n={};return Object.entries(t).forEach(([e,r])=>n[e]=`${r}`),n}function Vr(t,n,e){return t==e.path&&j(n,e.parameters)}var Oe="imperative",m=(function(t){return t[t.NavigationStart=0]="NavigationStart",t[t.NavigationEnd=1]="NavigationEnd",t[t.NavigationCancel=2]="NavigationCancel",t[t.NavigationError=3]="NavigationError",t[t.RoutesRecognized=4]="RoutesRecognized",t[t.ResolveStart=5]="ResolveStart",t[t.ResolveEnd=6]="ResolveEnd",t[t.GuardsCheckStart=7]="GuardsCheckStart",t[t.GuardsCheckEnd=8]="GuardsCheckEnd",t[t.RouteConfigLoadStart=9]="RouteConfigLoadStart",t[t.RouteConfigLoadEnd=10]="RouteConfigLoadEnd",t[t.ChildActivationStart=11]="ChildActivationStart",t[t.ChildActivationEnd=12]="ChildActivationEnd",t[t.ActivationStart=13]="ActivationStart",t[t.ActivationEnd=14]="ActivationEnd",t[t.Scroll=15]="Scroll",t[t.NavigationSkipped=16]="NavigationSkipped",t})(m||{}),O=class{id;url;constructor(n,e){this.id=n,this.url=e}},ie=class extends O{type=m.NavigationStart;navigationTrigger;restoredState;constructor(n,e,r="imperative",i=null){super(n,e),this.navigationTrigger=r,this.restoredState=i}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}},L=class extends O{urlAfterRedirects;type=m.NavigationEnd;constructor(n,e,r){super(n,e),this.urlAfterRedirects=r}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}},w=(function(t){return t[t.Redirect=0]="Redirect",t[t.SupersededByNewNavigation=1]="SupersededByNewNavigation",t[t.NoDataFromResolver=2]="NoDataFromResolver",t[t.GuardRejected=3]="GuardRejected",t[t.Aborted=4]="Aborted",t})(w||{}),Ne=(function(t){return t[t.IgnoredSameUrlNavigation=0]="IgnoredSameUrlNavigation",t[t.IgnoredByUrlHandlingStrategy=1]="IgnoredByUrlHandlingStrategy",t})(Ne||{}),k=class extends O{reason;code;type=m.NavigationCancel;constructor(n,e,r,i){super(n,e),this.reason=r,this.code=i}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}},q=class extends O{reason;code;type=m.NavigationSkipped;constructor(n,e,r,i){super(n,e),this.reason=r,this.code=i}},fe=class extends O{error;target;type=m.NavigationError;constructor(n,e,r,i){super(n,e),this.error=r,this.target=i}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}},Ue=class extends O{urlAfterRedirects;state;type=m.RoutesRecognized;constructor(n,e,r,i){super(n,e),this.urlAfterRedirects=r,this.state=i}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},ot=class extends O{urlAfterRedirects;state;type=m.GuardsCheckStart;constructor(n,e,r,i){super(n,e),this.urlAfterRedirects=r,this.state=i}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},st=class extends O{urlAfterRedirects;state;shouldActivate;type=m.GuardsCheckEnd;constructor(n,e,r,i,o){super(n,e),this.urlAfterRedirects=r,this.state=i,this.shouldActivate=o}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}},at=class extends O{urlAfterRedirects;state;type=m.ResolveStart;constructor(n,e,r,i){super(n,e),this.urlAfterRedirects=r,this.state=i}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},ut=class extends O{urlAfterRedirects;state;type=m.ResolveEnd;constructor(n,e,r,i){super(n,e),this.urlAfterRedirects=r,this.state=i}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},ct=class{route;type=m.RouteConfigLoadStart;constructor(n){this.route=n}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}},lt=class{route;type=m.RouteConfigLoadEnd;constructor(n){this.route=n}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}},ht=class{snapshot;type=m.ChildActivationStart;constructor(n){this.snapshot=n}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},dt=class{snapshot;type=m.ChildActivationEnd;constructor(n){this.snapshot=n}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},ft=class{snapshot;type=m.ActivationStart;constructor(n){this.snapshot=n}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},pt=class{snapshot;type=m.ActivationEnd;constructor(n){this.snapshot=n}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}};var Pe=class{},pe=class{url;navigationBehaviorOptions;constructor(n,e){this.url=n,this.navigationBehaviorOptions=e}};function si(t){return!(t instanceof Pe)&&!(t instanceof pe)}function ai(t,n){return t.providers&&!t._injector&&(t._injector=Lt(t.providers,n,`Route: ${t.path}`)),t._injector??n}function x(t){return t.outlet||f}function ui(t,n){let e=t.filter(r=>x(r)===n);return e.push(...t.filter(r=>x(r)!==n)),e}function me(t){if(!t)return null;if(t.routeConfig?._injector)return t.routeConfig._injector;for(let n=t.parent;n;n=n.parent){let e=n.routeConfig;if(e?._loadedInjector)return e._loadedInjector;if(e?._injector)return e._injector}return null}var gt=class{rootInjector;outlet=null;route=null;children;attachRef=null;get injector(){return me(this.route?.snapshot)??this.rootInjector}constructor(n){this.rootInjector=n,this.children=new Re(this.rootInjector)}},Re=(()=>{class t{rootInjector;contexts=new Map;constructor(e){this.rootInjector=e}onChildOutletCreated(e,r){let i=this.getOrCreateContext(e);i.outlet=r,this.contexts.set(e,i)}onChildOutletDestroyed(e){let r=this.getContext(e);r&&(r.outlet=null,r.attachRef=null)}onOutletDeactivated(){let e=this.contexts;return this.contexts=new Map,e}onOutletReAttached(e){this.contexts=e}getOrCreateContext(e){let r=this.getContext(e);return r||(r=new gt(this.rootInjector),this.contexts.set(e,r)),r}getContext(e){return this.contexts.get(e)||null}static \u0275fac=function(r){return new(r||t)(Ge(ue))};static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),vt=class{_root;constructor(n){this._root=n}get root(){return this._root.value}parent(n){let e=this.pathFromRoot(n);return e.length>1?e[e.length-2]:null}children(n){let e=Gt(n,this._root);return e?e.children.map(r=>r.value):[]}firstChild(n){let e=Gt(n,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(n){let e=Wt(n,this._root);return e.length<2?[]:e[e.length-2].children.map(i=>i.value).filter(i=>i!==n)}pathFromRoot(n){return Wt(n,this._root).map(e=>e.value)}};function Gt(t,n){if(t===n.value)return n;for(let e of n.children){let r=Gt(t,e);if(r)return r}return null}function Wt(t,n){if(t===n.value)return[n];for(let e of n.children){let r=Wt(t,e);if(r.length)return r.unshift(n),r}return[]}var E=class{value;children;constructor(n,e){this.value=n,this.children=e}toString(){return`TreeNode(${this.value})`}};function le(t){let n={};return t&&t.children.forEach(e=>n[e.value.outlet]=e),n}var _e=class extends vt{snapshot;constructor(n,e){super(n),this.snapshot=e,tr(this,n)}toString(){return this.snapshot.toString()}};function dn(t){let n=ci(t),e=new M([new K("",{})]),r=new M({}),i=new M({}),o=new M({}),s=new M(""),a=new B(e,r,o,s,i,f,t,n.root);return a.snapshot=n.root,new _e(new E(a,[]),n)}function ci(t){let n={},e={},r={},o=new te([],n,r,"",e,f,t,null,{});return new xe("",new E(o,[]))}var B=class{urlSubject;paramsSubject;queryParamsSubject;fragmentSubject;dataSubject;outlet;component;snapshot;_futureSnapshot;_routerState;_paramMap;_queryParamMap;title;url;params;queryParams;fragment;data;constructor(n,e,r,i,o,s,a,u){this.urlSubject=n,this.paramsSubject=e,this.queryParamsSubject=r,this.fragmentSubject=i,this.dataSubject=o,this.outlet=s,this.component=a,this._futureSnapshot=u,this.title=this.dataSubject?.pipe(v(c=>c[$e]))??h(void 0),this.url=n,this.params=e,this.queryParams=r,this.fragment=i,this.data=o}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=this.params.pipe(v(n=>re(n))),this._paramMap}get queryParamMap(){return this._queryParamMap??=this.queryParams.pipe(v(n=>re(n))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}};function mt(t,n,e="emptyOnly"){let r,{routeConfig:i}=t;return n!==null&&(e==="always"||i?.path===""||!n.component&&!n.routeConfig?.loadComponent)?r={params:l(l({},n.params),t.params),data:l(l({},n.data),t.data),resolve:l(l(l(l({},t.data),n.data),i?.data),t._resolvedData)}:r={params:l({},t.params),data:l({},t.data),resolve:l(l({},t.data),t._resolvedData??{})},i&&pn(i)&&(r.resolve[$e]=i.title),r}var te=class{url;params;queryParams;fragment;data;outlet;component;routeConfig;_resolve;_resolvedData;_routerState;_paramMap;_queryParamMap;get title(){return this.data?.[$e]}constructor(n,e,r,i,o,s,a,u,c){this.url=n,this.params=e,this.queryParams=r,this.fragment=i,this.data=o,this.outlet=s,this.component=a,this.routeConfig=u,this._resolve=c}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=re(this.params),this._paramMap}get queryParamMap(){return this._queryParamMap??=re(this.queryParams),this._queryParamMap}toString(){let n=this.url.map(r=>r.toString()).join("/"),e=this.routeConfig?this.routeConfig.path:"";return`Route(url:'${n}', path:'${e}')`}},xe=class extends vt{url;constructor(n,e){super(e),this.url=n,tr(this,e)}toString(){return fn(this._root)}};function tr(t,n){n.value._routerState=t,n.children.forEach(e=>tr(t,e))}function fn(t){let n=t.children.length>0?` { ${t.children.map(fn).join(", ")} } `:"";return`${t.value}${n}`}function $t(t){if(t.snapshot){let n=t.snapshot,e=t._futureSnapshot;t.snapshot=e,j(n.queryParams,e.queryParams)||t.queryParamsSubject.next(e.queryParams),n.fragment!==e.fragment&&t.fragmentSubject.next(e.fragment),j(n.params,e.params)||t.paramsSubject.next(e.params),Ln(n.url,e.url)||t.urlSubject.next(e.url),j(n.data,e.data)||t.dataSubject.next(e.data)}else t.snapshot=t._futureSnapshot,t.dataSubject.next(t._futureSnapshot.data)}function Qt(t,n){let e=j(t.params,n.params)&&zn(t.url,n.url),r=!t.parent!=!n.parent;return e&&!r&&(!t.parent||Qt(t.parent,n.parent))}function pn(t){return typeof t.title=="string"||t.title===null}var gn=new D(""),rr=(()=>{class t{activated=null;get activatedComponentRef(){return this.activated}_activatedRoute=null;name=f;activateEvents=new X;deactivateEvents=new X;attachEvents=new X;detachEvents=new X;routerOutletData=$r(void 0);parentContexts=d(Re);location=d(Ir);changeDetector=d(Ke);inputBinder=d(Ct,{optional:!0});supportsBindingToComponentInputs=!0;ngOnChanges(e){if(e.name){let{firstChange:r,previousValue:i}=e.name;if(r)return;this.isTrackedInParentContexts(i)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(i)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(e){return this.parentContexts.getContext(e)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;let e=this.parentContexts.getContext(this.name);e?.route&&(e.attachRef?this.attach(e.attachRef,e.route):this.activateWith(e.route,e.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new S(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new S(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new S(4012,!1);this.location.detach();let e=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(e.instance),e}attach(e,r){this.activated=e,this._activatedRoute=r,this.location.insert(e.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(e.instance)}deactivate(){if(this.activated){let e=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(e)}}activateWith(e,r){if(this.isActivated)throw new S(4013,!1);this._activatedRoute=e;let i=this.location,s=e.snapshot.component,a=this.parentContexts.getOrCreateContext(this.name).children,u=new Kt(e,a,i.injector,this.routerOutletData);this.activated=i.createComponent(s,{index:i.length,injector:u,environmentInjector:r}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static \u0275fac=function(r){return new(r||t)};static \u0275dir=Ie({type:t,selectors:[["router-outlet"]],inputs:{name:"name",routerOutletData:[1,"routerOutletData"]},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],features:[be]})}return t})(),Kt=class{route;childContexts;parent;outletData;constructor(n,e,r,i){this.route=n,this.childContexts=e,this.parent=r,this.outletData=i}get(n,e){return n===B?this.route:n===Re?this.childContexts:n===gn?this.outletData:this.parent.get(n,e)}},Ct=new D("");var nr=(()=>{class t{static \u0275fac=function(r){return new(r||t)};static \u0275cmp=Tr({type:t,selectors:[["ng-component"]],exportAs:["emptyRouterOutlet"],decls:1,vars:0,template:function(r,i){r&1&&Ur(0,"router-outlet")},dependencies:[rr],encapsulation:2})}return t})();function ir(t){let n=t.children&&t.children.map(ir),e=n?U(l({},t),{children:n}):l({},t);return!e.component&&!e.loadComponent&&(n||e.loadChildren)&&e.outlet&&e.outlet!==f&&(e.component=nr),e}function li(t,n,e){let r=Le(t,n._root,e?e._root:void 0);return new _e(r,n)}function Le(t,n,e){if(e&&t.shouldReuseRoute(n.value,e.value.snapshot)){let r=e.value;r._futureSnapshot=n.value;let i=hi(t,n,e);return new E(r,i)}else{if(t.shouldAttach(n.value)){let o=t.retrieve(n.value);if(o!==null){let s=o.route;return s.value._futureSnapshot=n.value,s.children=n.children.map(a=>Le(t,a)),s}}let r=di(n.value),i=n.children.map(o=>Le(t,o));return new E(r,i)}}function hi(t,n,e){return n.children.map(r=>{for(let i of e.children)if(t.shouldReuseRoute(r.value,i.value.snapshot))return Le(t,r,i);return Le(t,r)})}function di(t){return new B(new M(t.url),new M(t.params),new M(t.queryParams),new M(t.fragment),new M(t.data),t.outlet,t.component,t)}var ge=class{redirectTo;navigationBehaviorOptions;constructor(n,e){this.redirectTo=n,this.navigationBehaviorOptions=e}},vn="ngNavigationCancelingError";function Rt(t,n){let{redirectTo:e,navigationBehaviorOptions:r}=Y(n)?{redirectTo:n,navigationBehaviorOptions:void 0}:n,i=mn(!1,w.Redirect);return i.url=e,i.navigationBehaviorOptions=r,i}function mn(t,n){let e=new Error(`NavigationCancelingError: ${t||""}`);return e[vn]=!0,e.cancellationCode=n,e}function fi(t){return Rn(t)&&Y(t.url)}function Rn(t){return!!t&&t[vn]}var pi=(t,n,e,r)=>v(i=>(new Yt(n,i.targetRouterState,i.currentRouterState,e,r).activate(t),i)),Yt=class{routeReuseStrategy;futureState;currState;forwardEvent;inputBindingEnabled;constructor(n,e,r,i,o){this.routeReuseStrategy=n,this.futureState=e,this.currState=r,this.forwardEvent=i,this.inputBindingEnabled=o}activate(n){let e=this.futureState._root,r=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,r,n),$t(this.futureState.root),this.activateChildRoutes(e,r,n)}deactivateChildRoutes(n,e,r){let i=le(e);n.children.forEach(o=>{let s=o.value.outlet;this.deactivateRoutes(o,i[s],r),delete i[s]}),Object.values(i).forEach(o=>{this.deactivateRouteAndItsChildren(o,r)})}deactivateRoutes(n,e,r){let i=n.value,o=e?e.value:null;if(i===o)if(i.component){let s=r.getContext(i.outlet);s&&this.deactivateChildRoutes(n,e,s.children)}else this.deactivateChildRoutes(n,e,r);else o&&this.deactivateRouteAndItsChildren(e,r)}deactivateRouteAndItsChildren(n,e){n.value.component&&this.routeReuseStrategy.shouldDetach(n.value.snapshot)?this.detachAndStoreRouteSubtree(n,e):this.deactivateRouteAndOutlet(n,e)}detachAndStoreRouteSubtree(n,e){let r=e.getContext(n.value.outlet),i=r&&n.value.component?r.children:e,o=le(n);for(let s of Object.values(o))this.deactivateRouteAndItsChildren(s,i);if(r&&r.outlet){let s=r.outlet.detach(),a=r.children.onOutletDeactivated();this.routeReuseStrategy.store(n.value.snapshot,{componentRef:s,route:n,contexts:a})}}deactivateRouteAndOutlet(n,e){let r=e.getContext(n.value.outlet),i=r&&n.value.component?r.children:e,o=le(n);for(let s of Object.values(o))this.deactivateRouteAndItsChildren(s,i);r&&(r.outlet&&(r.outlet.deactivate(),r.children.onOutletDeactivated()),r.attachRef=null,r.route=null)}activateChildRoutes(n,e,r){let i=le(e);n.children.forEach(o=>{this.activateRoutes(o,i[o.value.outlet],r),this.forwardEvent(new pt(o.value.snapshot))}),n.children.length&&this.forwardEvent(new dt(n.value.snapshot))}activateRoutes(n,e,r){let i=n.value,o=e?e.value:null;if($t(i),i===o)if(i.component){let s=r.getOrCreateContext(i.outlet);this.activateChildRoutes(n,e,s.children)}else this.activateChildRoutes(n,e,r);else if(i.component){let s=r.getOrCreateContext(i.outlet);if(this.routeReuseStrategy.shouldAttach(i.snapshot)){let a=this.routeReuseStrategy.retrieve(i.snapshot);this.routeReuseStrategy.store(i.snapshot,null),s.children.onOutletReAttached(a.contexts),s.attachRef=a.componentRef,s.route=a.route.value,s.outlet&&s.outlet.attach(a.componentRef,a.route.value),$t(a.route.value),this.activateChildRoutes(n,null,s.children)}else s.attachRef=null,s.route=i,s.outlet&&s.outlet.activateWith(i,s.injector),this.activateChildRoutes(n,null,s.children)}else this.activateChildRoutes(n,null,r)}},yt=class{path;route;constructor(n){this.path=n,this.route=this.path[this.path.length-1]}},de=class{component;route;constructor(n,e){this.component=n,this.route=e}};function gi(t,n,e){let r=t._root,i=n?n._root:null;return Te(r,i,e,[r.value])}function vi(t){let n=t.routeConfig?t.routeConfig.canActivateChild:null;return!n||n.length===0?null:{node:t,guards:n}}function ye(t,n){let e=Symbol(),r=n.get(t,e);return r===e?typeof t=="function"&&!mr(t)?t:n.get(t):r}function Te(t,n,e,r,i={canDeactivateChecks:[],canActivateChecks:[]}){let o=le(n);return t.children.forEach(s=>{mi(s,o[s.value.outlet],e,r.concat([s.value]),i),delete o[s.value.outlet]}),Object.entries(o).forEach(([s,a])=>Me(a,e.getContext(s),i)),i}function mi(t,n,e,r,i={canDeactivateChecks:[],canActivateChecks:[]}){let o=t.value,s=n?n.value:null,a=e?e.getContext(t.value.outlet):null;if(s&&o.routeConfig===s.routeConfig){let u=Ri(s,o,o.routeConfig.runGuardsAndResolvers);u?i.canActivateChecks.push(new yt(r)):(o.data=s.data,o._resolvedData=s._resolvedData),o.component?Te(t,n,a?a.children:null,r,i):Te(t,n,e,r,i),u&&a&&a.outlet&&a.outlet.isActivated&&i.canDeactivateChecks.push(new de(a.outlet.component,s))}else s&&Me(n,a,i),i.canActivateChecks.push(new yt(r)),o.component?Te(t,null,a?a.children:null,r,i):Te(t,null,e,r,i);return i}function Ri(t,n,e){if(typeof e=="function")return e(t,n);switch(e){case"pathParamsChange":return!ee(t.url,n.url);case"pathParamsOrQueryParamsChange":return!ee(t.url,n.url)||!j(t.queryParams,n.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Qt(t,n)||!j(t.queryParams,n.queryParams);case"paramsChange":default:return!Qt(t,n)}}function Me(t,n,e){let r=le(t),i=t.value;Object.entries(r).forEach(([o,s])=>{i.component?n?Me(s,n.children.getContext(o),e):Me(s,null,e):Me(s,n,e)}),i.component?n&&n.outlet&&n.outlet.isActivated?e.canDeactivateChecks.push(new de(n.outlet.component,i)):e.canDeactivateChecks.push(new de(null,i)):e.canDeactivateChecks.push(new de(null,i))}function Fe(t){return typeof t=="function"}function yi(t){return typeof t=="boolean"}function Si(t){return t&&Fe(t.canLoad)}function Ci(t){return t&&Fe(t.canActivate)}function wi(t){return t&&Fe(t.canActivateChild)}function bi(t){return t&&Fe(t.canDeactivate)}function Ii(t){return t&&Fe(t.canMatch)}function yn(t){return t instanceof hr||t?.name==="EmptyError"}var Xe=Symbol("INITIAL_VALUE");function ve(){return T(t=>Ot(t.map(n=>n.pipe(ae(1),gr(Xe)))).pipe(v(n=>{for(let e of n)if(e!==!0){if(e===Xe)return Xe;if(e===!1||Ai(e))return e}return!0}),G(n=>n!==Xe),ae(1)))}function Ai(t){return Y(t)||t instanceof ge}function Ti(t,n){return A(e=>{let{targetSnapshot:r,currentSnapshot:i,guards:{canActivateChecks:o,canDeactivateChecks:s}}=e;return s.length===0&&o.length===0?h(U(l({},e),{guardsResult:!0})):Ei(s,r,i,t).pipe(A(a=>a&&yi(a)?Oi(r,o,t,n):h(a)),v(a=>U(l({},e),{guardsResult:a})))})}function Ei(t,n,e,r){return I(t).pipe(A(i=>Pi(i.component,i.route,e,n,r)),W(i=>i!==!0,!0))}function Oi(t,n,e,r){return I(n).pipe(se(i=>dr(Di(i.route.parent,r),Mi(i.route,r),Ui(t,i.path,e),Ni(t,i.route,e))),W(i=>i!==!0,!0))}function Mi(t,n){return t!==null&&n&&n(new ft(t)),h(!0)}function Di(t,n){return t!==null&&n&&n(new ht(t)),h(!0)}function Ni(t,n,e){let r=n.routeConfig?n.routeConfig.canActivate:null;if(!r||r.length===0)return h(!0);let i=r.map(o=>He(()=>{let s=me(n)??e,a=ye(o,s),u=Ci(a)?a.canActivate(n,t):P(s,()=>a(n,t));return H(u).pipe(W())}));return h(i).pipe(ve())}function Ui(t,n,e){let r=n[n.length-1],o=n.slice(0,n.length-1).reverse().map(s=>vi(s)).filter(s=>s!==null).map(s=>He(()=>{let a=s.guards.map(u=>{let c=me(s.node)??e,p=ye(u,c),R=wi(p)?p.canActivateChild(r,t):P(c,()=>p(r,t));return H(R).pipe(W())});return h(a).pipe(ve())}));return h(o).pipe(ve())}function Pi(t,n,e,r,i){let o=n&&n.routeConfig?n.routeConfig.canDeactivate:null;if(!o||o.length===0)return h(!0);let s=o.map(a=>{let u=me(n)??i,c=ye(a,u),p=bi(c)?c.canDeactivate(t,n,e,r):P(u,()=>c(t,n,e,r));return H(p).pipe(W())});return h(s).pipe(ve())}function _i(t,n,e,r){let i=n.canLoad;if(i===void 0||i.length===0)return h(!0);let o=i.map(s=>{let a=ye(s,t),u=Si(a)?a.canLoad(n,e):P(t,()=>a(n,e));return H(u)});return h(o).pipe(ve(),Sn(r))}function Sn(t){return ur(y(n=>{if(typeof n!="boolean")throw Rt(t,n)}),v(n=>n===!0))}function xi(t,n,e,r){let i=n.canMatch;if(!i||i.length===0)return h(!0);let o=i.map(s=>{let a=ye(s,t),u=Ii(a)?a.canMatch(n,e):P(t,()=>a(n,e));return H(u)});return h(o).pipe(ve(),Sn(r))}var je=class{segmentGroup;constructor(n){this.segmentGroup=n||null}},ke=class extends Error{urlTree;constructor(n){super(),this.urlTree=n}};function ce(t){return we(new je(t))}function Li(t){return we(new S(4e3,!1))}function ji(t){return we(mn(!1,w.GuardRejected))}var Zt=class{urlSerializer;urlTree;constructor(n,e){this.urlSerializer=n,this.urlTree=e}lineralizeSegments(n,e){let r=[],i=e.root;for(;;){if(r=r.concat(i.segments),i.numberOfChildren===0)return h(r);if(i.numberOfChildren>1||!i.children[f])return Li(`${n.redirectTo}`);i=i.children[f]}}applyRedirectCommands(n,e,r,i,o){return ki(e,i,o).pipe(v(s=>{if(s instanceof $)throw new ke(s);let a=this.applyRedirectCreateUrlTree(s,this.urlSerializer.parse(s),n,r);if(s[0]==="/")throw new ke(a);return a}))}applyRedirectCreateUrlTree(n,e,r,i){let o=this.createSegmentGroup(n,e.root,r,i);return new $(o,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(n,e){let r={};return Object.entries(n).forEach(([i,o])=>{if(typeof o=="string"&&o[0]===":"){let a=o.substring(1);r[i]=e[a]}else r[i]=o}),r}createSegmentGroup(n,e,r,i){let o=this.createSegments(n,e.segments,r,i),s={};return Object.entries(e.children).forEach(([a,u])=>{s[a]=this.createSegmentGroup(n,u,r,i)}),new g(o,s)}createSegments(n,e,r,i){return e.map(o=>o.path[0]===":"?this.findPosParam(n,o,i):this.findOrReturn(o,r))}findPosParam(n,e,r){let i=r[e.path.substring(1)];if(!i)throw new S(4001,!1);return i}findOrReturn(n,e){let r=0;for(let i of e){if(i.path===n.path)return e.splice(r),i;r++}return n}};function ki(t,n,e){if(typeof t=="string")return h(t);let r=t,{queryParams:i,fragment:o,routeConfig:s,url:a,outlet:u,params:c,data:p,title:R}=n;return H(P(e,()=>r({params:c,data:p,queryParams:i,fragment:o,routeConfig:s,url:a,outlet:u,title:R})))}var Jt={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function $i(t,n,e,r,i){let o=Cn(t,n,e);return o.matched?(r=ai(n,r),xi(r,n,e,i).pipe(v(s=>s===!0?o:l({},Jt)))):h(o)}function Cn(t,n,e){if(n.path==="**")return zi(e);if(n.path==="")return n.pathMatch==="full"&&(t.hasChildren()||e.length>0)?l({},Jt):{matched:!0,consumedSegments:[],remainingSegments:e,parameters:{},positionalParamSegments:{}};let i=(n.matcher||Kr)(e,t,n);if(!i)return l({},Jt);let o={};Object.entries(i.posParams??{}).forEach(([a,u])=>{o[a]=u.path});let s=i.consumed.length>0?l(l({},o),i.consumed[i.consumed.length-1].parameters):o;return{matched:!0,consumedSegments:i.consumed,remainingSegments:e.slice(i.consumed.length),parameters:s,positionalParamSegments:i.posParams??{}}}function zi(t){return{matched:!0,parameters:t.length>0?Zr(t).parameters:{},consumedSegments:t,remainingSegments:[],positionalParamSegments:{}}}function Gr(t,n,e,r){return e.length>0&&Bi(t,e,r)?{segmentGroup:new g(n,qi(r,new g(e,t.children))),slicedSegments:[]}:e.length===0&&Hi(t,e,r)?{segmentGroup:new g(t.segments,Fi(t,e,r,t.children)),slicedSegments:e}:{segmentGroup:new g(t.segments,t.children),slicedSegments:e}}function Fi(t,n,e,r){let i={};for(let o of e)if(wt(t,n,o)&&!r[x(o)]){let s=new g([],{});i[x(o)]=s}return l(l({},r),i)}function qi(t,n){let e={};e[f]=n;for(let r of t)if(r.path===""&&x(r)!==f){let i=new g([],{});e[x(r)]=i}return e}function Bi(t,n,e){return e.some(r=>wt(t,n,r)&&x(r)!==f)}function Hi(t,n,e){return e.some(r=>wt(t,n,r))}function wt(t,n,e){return(t.hasChildren()||n.length>0)&&e.pathMatch==="full"?!1:e.path===""}function Vi(t,n,e){return n.length===0&&!t.children[e]}var Xt=class{};function Gi(t,n,e,r,i,o,s="emptyOnly"){return new er(t,n,e,r,i,s,o).recognize()}var Wi=31,er=class{injector;configLoader;rootComponentType;config;urlTree;paramsInheritanceStrategy;urlSerializer;applyRedirects;absoluteRedirectCount=0;allowRedirects=!0;constructor(n,e,r,i,o,s,a){this.injector=n,this.configLoader=e,this.rootComponentType=r,this.config=i,this.urlTree=o,this.paramsInheritanceStrategy=s,this.urlSerializer=a,this.applyRedirects=new Zt(this.urlSerializer,this.urlTree)}noMatchError(n){return new S(4002,`'${n.segmentGroup}'`)}recognize(){let n=Gr(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(n).pipe(v(({children:e,rootSnapshot:r})=>{let i=new E(r,e),o=new xe("",i),s=an(r,[],this.urlTree.queryParams,this.urlTree.fragment);return s.queryParams=this.urlTree.queryParams,o.url=this.urlSerializer.serialize(s),{state:o,tree:s}}))}match(n){let e=new te([],Object.freeze({}),Object.freeze(l({},this.urlTree.queryParams)),this.urlTree.fragment,Object.freeze({}),f,this.rootComponentType,null,{});return this.processSegmentGroup(this.injector,this.config,n,f,e).pipe(v(r=>({children:r,rootSnapshot:e})),J(r=>{if(r instanceof ke)return this.urlTree=r.urlTree,this.match(r.urlTree.root);throw r instanceof je?this.noMatchError(r):r}))}processSegmentGroup(n,e,r,i,o){return r.segments.length===0&&r.hasChildren()?this.processChildren(n,e,r,o):this.processSegment(n,e,r,r.segments,i,!0,o).pipe(v(s=>s instanceof E?[s]:[]))}processChildren(n,e,r,i){let o=[];for(let s of Object.keys(r.children))s==="primary"?o.unshift(s):o.push(s);return I(o).pipe(se(s=>{let a=r.children[s],u=ui(e,s);return this.processSegmentGroup(n,u,a,s,i)}),pr((s,a)=>(s.push(...a),s)),Dt(null),fr(),A(s=>{if(s===null)return ce(r);let a=wn(s);return Qi(a),h(a)}))}processSegment(n,e,r,i,o,s,a){return I(e).pipe(se(u=>this.processSegmentAgainstRoute(u._injector??n,e,u,r,i,o,s,a).pipe(J(c=>{if(c instanceof je)return h(null);throw c}))),W(u=>!!u),J(u=>{if(yn(u))return Vi(r,i,o)?h(new Xt):ce(r);throw u}))}processSegmentAgainstRoute(n,e,r,i,o,s,a,u){return x(r)!==s&&(s===f||!wt(i,o,r))?ce(i):r.redirectTo===void 0?this.matchSegmentAgainstRoute(n,i,r,o,s,u):this.allowRedirects&&a?this.expandSegmentAgainstRouteUsingRedirect(n,i,e,r,o,s,u):ce(i)}expandSegmentAgainstRouteUsingRedirect(n,e,r,i,o,s,a){let{matched:u,parameters:c,consumedSegments:p,positionalParamSegments:R,remainingSegments:N}=Cn(e,i,o);if(!u)return ce(e);typeof i.redirectTo=="string"&&i.redirectTo[0]==="/"&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>Wi&&(this.allowRedirects=!1));let V=new te(o,c,Object.freeze(l({},this.urlTree.queryParams)),this.urlTree.fragment,Wr(i),x(i),i.component??i._loadedComponent??null,i,Qr(i)),b=mt(V,a,this.paramsInheritanceStrategy);return V.params=Object.freeze(b.params),V.data=Object.freeze(b.data),this.applyRedirects.applyRedirectCommands(p,i.redirectTo,R,V,n).pipe(T(Z=>this.applyRedirects.lineralizeSegments(i,Z)),A(Z=>this.processSegment(n,r,e,Z.concat(N),s,!1,a)))}matchSegmentAgainstRoute(n,e,r,i,o,s){let a=$i(e,r,i,n,this.urlSerializer);return r.path==="**"&&(e.children={}),a.pipe(T(u=>u.matched?(n=r._injector??n,this.getChildConfig(n,r,i).pipe(T(({routes:c})=>{let p=r._loadedInjector??n,{parameters:R,consumedSegments:N,remainingSegments:V}=u,b=new te(N,R,Object.freeze(l({},this.urlTree.queryParams)),this.urlTree.fragment,Wr(r),x(r),r.component??r._loadedComponent??null,r,Qr(r)),oe=mt(b,s,this.paramsInheritanceStrategy);b.params=Object.freeze(oe.params),b.data=Object.freeze(oe.data);let{segmentGroup:Z,slicedSegments:At}=Gr(e,N,V,c);if(At.length===0&&Z.hasChildren())return this.processChildren(p,c,Z,b).pipe(v(Be=>new E(b,Be)));if(c.length===0&&At.length===0)return h(new E(b,[]));let _n=x(r)===o;return this.processSegment(p,c,Z,At,_n?f:o,!0,b).pipe(v(Be=>new E(b,Be instanceof E?[Be]:[])))}))):ce(e)))}getChildConfig(n,e,r){return e.children?h({routes:e.children,injector:n}):e.loadChildren?e._loadedRoutes!==void 0?h({routes:e._loadedRoutes,injector:e._loadedInjector}):_i(n,e,r,this.urlSerializer).pipe(A(i=>i?this.configLoader.loadChildren(n,e).pipe(y(o=>{e._loadedRoutes=o.routes,e._loadedInjector=o.injector})):ji(e))):h({routes:[],injector:n})}};function Qi(t){t.sort((n,e)=>n.value.outlet===f?-1:e.value.outlet===f?1:n.value.outlet.localeCompare(e.value.outlet))}function Ki(t){let n=t.value.routeConfig;return n&&n.path===""}function wn(t){let n=[],e=new Set;for(let r of t){if(!Ki(r)){n.push(r);continue}let i=n.find(o=>r.value.routeConfig===o.value.routeConfig);i!==void 0?(i.children.push(...r.children),e.add(i)):n.push(r)}for(let r of e){let i=wn(r.children);n.push(new E(r.value,i))}return n.filter(r=>!e.has(r))}function Wr(t){return t.data||{}}function Qr(t){return t.resolve||{}}function Yi(t,n,e,r,i,o){return A(s=>Gi(t,n,e,r,s.extractedUrl,i,o).pipe(v(({state:a,tree:u})=>U(l({},s),{targetSnapshot:a,urlAfterRedirects:u}))))}function Zi(t,n){return A(e=>{let{targetSnapshot:r,guards:{canActivateChecks:i}}=e;if(!i.length)return h(e);let o=new Set(i.map(u=>u.route)),s=new Set;for(let u of o)if(!s.has(u))for(let c of bn(u))s.add(c);let a=0;return I(s).pipe(se(u=>o.has(u)?Ji(u,r,t,n):(u.data=mt(u,u.parent,t).resolve,h(void 0))),y(()=>a++),Nt(1),A(u=>a===s.size?h(e):F))})}function bn(t){let n=t.children.map(e=>bn(e)).flat();return[t,...n]}function Ji(t,n,e,r){let i=t.routeConfig,o=t._resolve;return i?.title!==void 0&&!pn(i)&&(o[$e]=i.title),He(()=>(t.data=mt(t,t.parent,e).resolve,Xi(o,t,n,r).pipe(v(s=>(t._resolvedData=s,t.data=l(l({},t.data),s),null)))))}function Xi(t,n,e,r){let i=qt(t);if(i.length===0)return h({});let o={};return I(i).pipe(A(s=>eo(t[s],n,e,r).pipe(W(),y(a=>{if(a instanceof ge)throw Rt(new ne,a);o[s]=a}))),Nt(1),v(()=>o),J(s=>yn(s)?F:we(s)))}function eo(t,n,e,r){let i=me(n)??r,o=ye(t,i),s=o.resolve?o.resolve(n,e):P(i,()=>o(n,e));return H(s)}function zt(t){return T(n=>{let e=t(n);return e?I(e).pipe(v(()=>n)):h(n)})}var or=(()=>{class t{buildTitle(e){let r,i=e.root;for(;i!==void 0;)r=this.getResolvedTitleForRoute(i)??r,i=i.children.find(o=>o.outlet===f);return r}getResolvedTitleForRoute(e){return e.data[$e]}static \u0275fac=function(r){return new(r||t)};static \u0275prov=C({token:t,factory:()=>d(In),providedIn:"root"})}return t})(),In=(()=>{class t extends or{title;constructor(e){super(),this.title=e}updateTitle(e){let r=this.buildTitle(e);r!==void 0&&this.title.setTitle(r)}static \u0275fac=function(r){return new(r||t)(Ge(Fr))};static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Se=new D("",{providedIn:"root",factory:()=>({})}),qe=new D(""),An=(()=>{class t{componentLoaders=new WeakMap;childrenLoaders=new WeakMap;onLoadStartListener;onLoadEndListener;compiler=d(jr);loadComponent(e,r){if(this.componentLoaders.get(r))return this.componentLoaders.get(r);if(r._loadedComponent)return h(r._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(r);let i=H(P(e,()=>r.loadComponent())).pipe(v(En),T(On),y(s=>{this.onLoadEndListener&&this.onLoadEndListener(r),r._loadedComponent=s}),Ve(()=>{this.componentLoaders.delete(r)})),o=new Et(i,()=>new z).pipe(Tt());return this.componentLoaders.set(r,o),o}loadChildren(e,r){if(this.childrenLoaders.get(r))return this.childrenLoaders.get(r);if(r._loadedRoutes)return h({routes:r._loadedRoutes,injector:r._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(r);let o=Tn(r,this.compiler,e,this.onLoadEndListener).pipe(Ve(()=>{this.childrenLoaders.delete(r)})),s=new Et(o,()=>new z).pipe(Tt());return this.childrenLoaders.set(r,s),s}static \u0275fac=function(r){return new(r||t)};static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function Tn(t,n,e,r){return H(P(e,()=>t.loadChildren())).pipe(v(En),T(On),A(i=>i instanceof Ar||Array.isArray(i)?h(i):I(n.compileModuleAsync(i))),v(i=>{r&&r(t);let o,s,a=!1;return Array.isArray(i)?(s=i,a=!0):(o=i.create(e).injector,s=o.get(qe,[],{optional:!0,self:!0}).flat()),{routes:s.map(ir),injector:o}}))}function to(t){return t&&typeof t=="object"&&"default"in t}function En(t){return to(t)?t.default:t}function On(t){return h(t)}var bt=(()=>{class t{static \u0275fac=function(r){return new(r||t)};static \u0275prov=C({token:t,factory:()=>d(ro),providedIn:"root"})}return t})(),ro=(()=>{class t{shouldProcessUrl(e){return!0}extract(e){return e}merge(e,r){return e}static \u0275fac=function(r){return new(r||t)};static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Mn=new D("");var Dn=new D(""),Nn=(()=>{class t{currentNavigation=Qe(null,{equal:()=>!1});currentTransition=null;lastSuccessfulNavigation=null;events=new z;transitionAbortWithErrorSubject=new z;configLoader=d(An);environmentInjector=d(ue);destroyRef=d(Sr);urlSerializer=d(ze);rootContexts=d(Re);location=d(Ze);inputBindingEnabled=d(Ct,{optional:!0})!==null;titleStrategy=d(or);options=d(Se,{optional:!0})||{};paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly";urlHandlingStrategy=d(bt);createViewTransition=d(Mn,{optional:!0});navigationErrorHandler=d(Dn,{optional:!0});navigationId=0;get hasRequestedNavigation(){return this.navigationId!==0}transitions;afterPreactivation=()=>h(void 0);rootComponentType=null;destroyed=!1;constructor(){let e=i=>this.events.next(new ct(i)),r=i=>this.events.next(new lt(i));this.configLoader.onLoadEndListener=r,this.configLoader.onLoadStartListener=e,this.destroyRef.onDestroy(()=>{this.destroyed=!0})}complete(){this.transitions?.complete()}handleNavigationRequest(e){let r=++this.navigationId;Q(()=>{this.transitions?.next(U(l({},e),{extractedUrl:this.urlHandlingStrategy.extract(e.rawUrl),targetSnapshot:null,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null,abortController:new AbortController,id:r}))})}setupNavigations(e){return this.transitions=new M(null),this.transitions.pipe(G(r=>r!==null),T(r=>{let i=!1;return h(r).pipe(T(o=>{if(this.navigationId>r.id)return this.cancelNavigationTransition(r,"",w.SupersededByNewNavigation),F;this.currentTransition=r,this.currentNavigation.set({id:o.id,initialUrl:o.rawUrl,extractedUrl:o.extractedUrl,targetBrowserUrl:typeof o.extras.browserUrl=="string"?this.urlSerializer.parse(o.extras.browserUrl):o.extras.browserUrl,trigger:o.source,extras:o.extras,previousNavigation:this.lastSuccessfulNavigation?U(l({},this.lastSuccessfulNavigation),{previousNavigation:null}):null,abort:()=>o.abortController.abort()});let s=!e.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl(),a=o.extras.onSameUrlNavigation??e.onSameUrlNavigation;if(!s&&a!=="reload")return this.events.next(new q(o.id,this.urlSerializer.serialize(o.rawUrl),"",Ne.IgnoredSameUrlNavigation)),o.resolve(!1),F;if(this.urlHandlingStrategy.shouldProcessUrl(o.rawUrl))return h(o).pipe(T(u=>(this.events.next(new ie(u.id,this.urlSerializer.serialize(u.extractedUrl),u.source,u.restoredState)),u.id!==this.navigationId?F:Promise.resolve(u))),Yi(this.environmentInjector,this.configLoader,this.rootComponentType,e.config,this.urlSerializer,this.paramsInheritanceStrategy),y(u=>{r.targetSnapshot=u.targetSnapshot,r.urlAfterRedirects=u.urlAfterRedirects,this.currentNavigation.update(p=>(p.finalUrl=u.urlAfterRedirects,p));let c=new Ue(u.id,this.urlSerializer.serialize(u.extractedUrl),this.urlSerializer.serialize(u.urlAfterRedirects),u.targetSnapshot);this.events.next(c)}));if(s&&this.urlHandlingStrategy.shouldProcessUrl(o.currentRawUrl)){let{id:u,extractedUrl:c,source:p,restoredState:R,extras:N}=o,V=new ie(u,this.urlSerializer.serialize(c),p,R);this.events.next(V);let b=dn(this.rootComponentType).snapshot;return this.currentTransition=r=U(l({},o),{targetSnapshot:b,urlAfterRedirects:c,extras:U(l({},N),{skipLocationChange:!1,replaceUrl:!1})}),this.currentNavigation.update(oe=>(oe.finalUrl=c,oe)),h(r)}else return this.events.next(new q(o.id,this.urlSerializer.serialize(o.extractedUrl),"",Ne.IgnoredByUrlHandlingStrategy)),o.resolve(!1),F}),y(o=>{let s=new ot(o.id,this.urlSerializer.serialize(o.extractedUrl),this.urlSerializer.serialize(o.urlAfterRedirects),o.targetSnapshot);this.events.next(s)}),v(o=>(this.currentTransition=r=U(l({},o),{guards:gi(o.targetSnapshot,o.currentSnapshot,this.rootContexts)}),r)),Ti(this.environmentInjector,o=>this.events.next(o)),y(o=>{if(r.guardsResult=o.guardsResult,o.guardsResult&&typeof o.guardsResult!="boolean")throw Rt(this.urlSerializer,o.guardsResult);let s=new st(o.id,this.urlSerializer.serialize(o.extractedUrl),this.urlSerializer.serialize(o.urlAfterRedirects),o.targetSnapshot,!!o.guardsResult);this.events.next(s)}),G(o=>o.guardsResult?!0:(this.cancelNavigationTransition(o,"",w.GuardRejected),!1)),zt(o=>{if(o.guards.canActivateChecks.length!==0)return h(o).pipe(y(s=>{let a=new at(s.id,this.urlSerializer.serialize(s.extractedUrl),this.urlSerializer.serialize(s.urlAfterRedirects),s.targetSnapshot);this.events.next(a)}),T(s=>{let a=!1;return h(s).pipe(Zi(this.paramsInheritanceStrategy,this.environmentInjector),y({next:()=>a=!0,complete:()=>{a||this.cancelNavigationTransition(s,"",w.NoDataFromResolver)}}))}),y(s=>{let a=new ut(s.id,this.urlSerializer.serialize(s.extractedUrl),this.urlSerializer.serialize(s.urlAfterRedirects),s.targetSnapshot);this.events.next(a)}))}),zt(o=>{let s=a=>{let u=[];if(a.routeConfig?.loadComponent){let c=me(a)??this.environmentInjector;u.push(this.configLoader.loadComponent(c,a.routeConfig).pipe(y(p=>{a.component=p}),v(()=>{})))}for(let c of a.children)u.push(...s(c));return u};return Ot(s(o.targetSnapshot.root)).pipe(Dt(null),ae(1))}),zt(()=>this.afterPreactivation()),T(()=>{let{currentSnapshot:o,targetSnapshot:s}=r,a=this.createViewTransition?.(this.environmentInjector,o.root,s.root);return a?I(a).pipe(v(()=>r)):h(r)}),v(o=>{let s=li(e.routeReuseStrategy,o.targetSnapshot,o.currentRouterState);return this.currentTransition=r=U(l({},o),{targetRouterState:s}),this.currentNavigation.update(a=>(a.targetRouterState=s,a)),r}),y(()=>{this.events.next(new Pe)}),pi(this.rootContexts,e.routeReuseStrategy,o=>this.events.next(o),this.inputBindingEnabled),ae(1),Ut(new cr(o=>{let s=r.abortController.signal,a=()=>o.next();return s.addEventListener("abort",a),()=>s.removeEventListener("abort",a)}).pipe(G(()=>!i&&!r.targetRouterState),y(()=>{this.cancelNavigationTransition(r,r.abortController.signal.reason+"",w.Aborted)}))),y({next:o=>{i=!0,this.lastSuccessfulNavigation=Q(this.currentNavigation),this.events.next(new L(o.id,this.urlSerializer.serialize(o.extractedUrl),this.urlSerializer.serialize(o.urlAfterRedirects))),this.titleStrategy?.updateTitle(o.targetRouterState.snapshot),o.resolve(!0)},complete:()=>{i=!0}}),Ut(this.transitionAbortWithErrorSubject.pipe(y(o=>{throw o}))),Ve(()=>{i||this.cancelNavigationTransition(r,"",w.SupersededByNewNavigation),this.currentTransition?.id===r.id&&(this.currentNavigation.set(null),this.currentTransition=null)}),J(o=>{if(this.destroyed)return r.resolve(!1),F;if(i=!0,Rn(o))this.events.next(new k(r.id,this.urlSerializer.serialize(r.extractedUrl),o.message,o.cancellationCode)),fi(o)?this.events.next(new pe(o.url,o.navigationBehaviorOptions)):r.resolve(!1);else{let s=new fe(r.id,this.urlSerializer.serialize(r.extractedUrl),o,r.targetSnapshot??void 0);try{let a=P(this.environmentInjector,()=>this.navigationErrorHandler?.(s));if(a instanceof ge){let{message:u,cancellationCode:c}=Rt(this.urlSerializer,a);this.events.next(new k(r.id,this.urlSerializer.serialize(r.extractedUrl),u,c)),this.events.next(new pe(a.redirectTo,a.navigationBehaviorOptions))}else throw this.events.next(s),o}catch(a){this.options.resolveNavigationPromiseOnError?r.resolve(!1):r.reject(a)}}return F}))}))}cancelNavigationTransition(e,r,i){let o=new k(e.id,this.urlSerializer.serialize(e.extractedUrl),r,i);this.events.next(o),e.resolve(!1)}isUpdatingInternalState(){return this.currentTransition?.extractedUrl.toString()!==this.currentTransition?.currentUrlTree.toString()}isUpdatedBrowserUrl(){let e=this.urlHandlingStrategy.extract(this.urlSerializer.parse(this.location.path(!0))),r=Q(this.currentNavigation),i=r?.targetBrowserUrl??r?.extractedUrl;return e.toString()!==i?.toString()&&!r?.extras.skipLocationChange}static \u0275fac=function(r){return new(r||t)};static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function no(t){return t!==Oe}var Un=(()=>{class t{static \u0275fac=function(r){return new(r||t)};static \u0275prov=C({token:t,factory:()=>d(io),providedIn:"root"})}return t})(),St=class{shouldDetach(n){return!1}store(n,e){}shouldAttach(n){return!1}retrieve(n){return null}shouldReuseRoute(n,e){return n.routeConfig===e.routeConfig}},io=(()=>{class t extends St{static \u0275fac=(()=>{let e;return function(i){return(e||(e=Pt(t)))(i||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Pn=(()=>{class t{urlSerializer=d(ze);options=d(Se,{optional:!0})||{};canceledNavigationResolution=this.options.canceledNavigationResolution||"replace";location=d(Ze);urlHandlingStrategy=d(bt);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";currentUrlTree=new $;getCurrentUrlTree(){return this.currentUrlTree}rawUrlTree=this.currentUrlTree;getRawUrlTree(){return this.rawUrlTree}createBrowserPath({finalUrl:e,initialUrl:r,targetBrowserUrl:i}){let o=e!==void 0?this.urlHandlingStrategy.merge(e,r):r,s=i??o;return s instanceof $?this.urlSerializer.serialize(s):s}commitTransition({targetRouterState:e,finalUrl:r,initialUrl:i}){r&&e?(this.currentUrlTree=r,this.rawUrlTree=this.urlHandlingStrategy.merge(r,i),this.routerState=e):this.rawUrlTree=i}routerState=dn(null);getRouterState(){return this.routerState}stateMemento=this.createStateMemento();updateStateMemento(){this.stateMemento=this.createStateMemento()}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}resetInternalState({finalUrl:e}){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,e??this.rawUrlTree)}static \u0275fac=function(r){return new(r||t)};static \u0275prov=C({token:t,factory:()=>d(oo),providedIn:"root"})}return t})(),oo=(()=>{class t extends Pn{currentPageId=0;lastSuccessfulId=-1;restoredState(){return this.location.getState()}get browserPageId(){return this.canceledNavigationResolution!=="computed"?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}registerNonRouterCurrentEntryChangeListener(e){return this.location.subscribe(r=>{r.type==="popstate"&&setTimeout(()=>{e(r.url,r.state,"popstate")})})}handleRouterEvent(e,r){e instanceof ie?this.updateStateMemento():e instanceof q?this.commitTransition(r):e instanceof Ue?this.urlUpdateStrategy==="eager"&&(r.extras.skipLocationChange||this.setBrowserUrl(this.createBrowserPath(r),r)):e instanceof Pe?(this.commitTransition(r),this.urlUpdateStrategy==="deferred"&&!r.extras.skipLocationChange&&this.setBrowserUrl(this.createBrowserPath(r),r)):e instanceof k&&e.code!==w.SupersededByNewNavigation&&e.code!==w.Redirect?this.restoreHistory(r):e instanceof fe?this.restoreHistory(r,!0):e instanceof L&&(this.lastSuccessfulId=e.id,this.currentPageId=this.browserPageId)}setBrowserUrl(e,{extras:r,id:i}){let{replaceUrl:o,state:s}=r;if(this.location.isCurrentPathEqualTo(e)||o){let a=this.browserPageId,u=l(l({},s),this.generateNgRouterState(i,a));this.location.replaceState(e,"",u)}else{let a=l(l({},s),this.generateNgRouterState(i,this.browserPageId+1));this.location.go(e,"",a)}}restoreHistory(e,r=!1){if(this.canceledNavigationResolution==="computed"){let i=this.browserPageId,o=this.currentPageId-i;o!==0?this.location.historyGo(o):this.getCurrentUrlTree()===e.finalUrl&&o===0&&(this.resetInternalState(e),this.resetUrlToCurrentUrlTree())}else this.canceledNavigationResolution==="replace"&&(r&&this.resetInternalState(e),this.resetUrlToCurrentUrlTree())}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.getRawUrlTree()),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(e,r){return this.canceledNavigationResolution==="computed"?{navigationId:e,\u0275routerPageId:r}:{navigationId:e}}static \u0275fac=(()=>{let e;return function(i){return(e||(e=Pt(t)))(i||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function sr(t,n){t.events.pipe(G(e=>e instanceof L||e instanceof k||e instanceof fe||e instanceof q),v(e=>e instanceof L||e instanceof q?0:(e instanceof k?e.code===w.Redirect||e.code===w.SupersededByNewNavigation:!1)?2:1),G(e=>e!==2),ae(1)).subscribe(()=>{n()})}var so={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},ao={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"},Ce=(()=>{class t{get currentUrlTree(){return this.stateManager.getCurrentUrlTree()}get rawUrlTree(){return this.stateManager.getRawUrlTree()}disposed=!1;nonRouterCurrentEntryChangeSubscription;console=d(Er);stateManager=d(Pn);options=d(Se,{optional:!0})||{};pendingTasks=d(Cr);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";navigationTransitions=d(Nn);urlSerializer=d(ze);location=d(Ze);urlHandlingStrategy=d(bt);injector=d(ue);_events=new z;get events(){return this._events}get routerState(){return this.stateManager.getRouterState()}navigated=!1;routeReuseStrategy=d(Un);onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore";config=d(qe,{optional:!0})?.flat()??[];componentInputBindingEnabled=!!d(Ct,{optional:!0});currentNavigation=this.navigationTransitions.currentNavigation.asReadonly();constructor(){this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this).subscribe({error:e=>{this.console.warn(e)}}),this.subscribeToNavigationEvents()}eventsSubscription=new ar;subscribeToNavigationEvents(){let e=this.navigationTransitions.events.subscribe(r=>{try{let i=this.navigationTransitions.currentTransition,o=Q(this.navigationTransitions.currentNavigation);if(i!==null&&o!==null){if(this.stateManager.handleRouterEvent(r,o),r instanceof k&&r.code!==w.Redirect&&r.code!==w.SupersededByNewNavigation)this.navigated=!0;else if(r instanceof L)this.navigated=!0;else if(r instanceof pe){let s=r.navigationBehaviorOptions,a=this.urlHandlingStrategy.merge(r.url,i.currentRawUrl),u=l({browserUrl:i.extras.browserUrl,info:i.extras.info,skipLocationChange:i.extras.skipLocationChange,replaceUrl:i.extras.replaceUrl||this.urlUpdateStrategy==="eager"||no(i.source)},s);this.scheduleNavigation(a,Oe,null,u,{resolve:i.resolve,reject:i.reject,promise:i.promise})}}si(r)&&this._events.next(r)}catch(i){this.navigationTransitions.transitionAbortWithErrorSubject.next(i)}});this.eventsSubscription.add(e)}resetRootComponentType(e){this.routerState.root.component=e,this.navigationTransitions.rootComponentType=e}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),Oe,this.stateManager.restoredState())}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription??=this.stateManager.registerNonRouterCurrentEntryChangeListener((e,r,i)=>{this.navigateToSyncWithBrowser(e,i,r)})}navigateToSyncWithBrowser(e,r,i){let o={replaceUrl:!0},s=i?.navigationId?i:null;if(i){let u=l({},i);delete u.navigationId,delete u.\u0275routerPageId,Object.keys(u).length!==0&&(o.state=u)}let a=this.parseUrl(e);this.scheduleNavigation(a,r,s,o).catch(u=>{this.disposed||this.injector.get(We)(u)})}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return Q(this.navigationTransitions.currentNavigation)}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(e){this.config=e.map(ir),this.navigated=!1}ngOnDestroy(){this.dispose()}dispose(){this._events.unsubscribe(),this.navigationTransitions.complete(),this.nonRouterCurrentEntryChangeSubscription&&(this.nonRouterCurrentEntryChangeSubscription.unsubscribe(),this.nonRouterCurrentEntryChangeSubscription=void 0),this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(e,r={}){let{relativeTo:i,queryParams:o,fragment:s,queryParamsHandling:a,preserveFragment:u}=r,c=u?this.currentUrlTree.fragment:s,p=null;switch(a??this.options.defaultQueryParamsHandling){case"merge":p=l(l({},this.currentUrlTree.queryParams),o);break;case"preserve":p=this.currentUrlTree.queryParams;break;default:p=o||null}p!==null&&(p=this.removeEmptyProps(p));let R;try{let N=i?i.snapshot:this.routerState.snapshot.root;R=un(N)}catch{(typeof e[0]!="string"||e[0][0]!=="/")&&(e=[]),R=this.currentUrlTree.root}return cn(R,e,p,c??null)}navigateByUrl(e,r={skipLocationChange:!1}){let i=Y(e)?e:this.parseUrl(e),o=this.urlHandlingStrategy.merge(i,this.rawUrlTree);return this.scheduleNavigation(o,Oe,null,r)}navigate(e,r={skipLocationChange:!1}){return uo(e),this.navigateByUrl(this.createUrlTree(e,r),r)}serializeUrl(e){return this.urlSerializer.serialize(e)}parseUrl(e){try{return this.urlSerializer.parse(e)}catch{return this.console.warn(vr(4018,!1)),this.urlSerializer.parse("/")}}isActive(e,r){let i;if(r===!0?i=l({},so):r===!1?i=l({},ao):i=r,Y(e))return qr(this.currentUrlTree,e,i);let o=this.parseUrl(e);return qr(this.currentUrlTree,o,i)}removeEmptyProps(e){return Object.entries(e).reduce((r,[i,o])=>(o!=null&&(r[i]=o),r),{})}scheduleNavigation(e,r,i,o,s){if(this.disposed)return Promise.resolve(!1);let a,u,c;s?(a=s.resolve,u=s.reject,c=s.promise):c=new Promise((R,N)=>{a=R,u=N});let p=this.pendingTasks.add();return sr(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(p))}),this.navigationTransitions.handleNavigationRequest({source:r,restoredState:i,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:e,extras:o,resolve:a,reject:u,promise:c,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),c.catch(R=>Promise.reject(R))}static \u0275fac=function(r){return new(r||t)};static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function uo(t){for(let n=0;n<t.length;n++)if(t[n]==null)throw new S(4008,!1)}var It=(()=>{class t{router;route;tabIndexAttribute;renderer;el;locationStrategy;reactiveHref=Qe(null);get href(){return Q(this.reactiveHref)}set href(e){this.reactiveHref.set(e)}target;queryParams;fragment;queryParamsHandling;state;info;relativeTo;isAnchorElement;subscription;onChanges=new z;applicationErrorHandler=d(We);options=d(Se,{optional:!0});constructor(e,r,i,o,s,a){this.router=e,this.route=r,this.tabIndexAttribute=i,this.renderer=o,this.el=s,this.locationStrategy=a,this.reactiveHref.set(d(new kr("href"),{optional:!0}));let u=s.nativeElement.tagName?.toLowerCase();this.isAnchorElement=u==="a"||u==="area"||!!(typeof customElements=="object"&&customElements.get(u)?.observedAttributes?.includes?.("href")),this.isAnchorElement?this.setTabIndexIfNotOnNativeEl("0"):this.subscribeToNavigationEventsIfNecessary()}subscribeToNavigationEventsIfNecessary(){if(this.subscription!==void 0||!this.isAnchorElement)return;let e=this.preserveFragment,r=i=>i==="merge"||i==="preserve";e||=r(this.queryParamsHandling),e||=!this.queryParamsHandling&&!r(this.options?.defaultQueryParamsHandling),e&&(this.subscription=this.router.events.subscribe(i=>{i instanceof L&&this.updateHref()}))}preserveFragment=!1;skipLocationChange=!1;replaceUrl=!1;setTabIndexIfNotOnNativeEl(e){this.tabIndexAttribute!=null||this.isAnchorElement||this.applyAttributeValue("tabindex",e)}ngOnChanges(e){this.isAnchorElement&&(this.updateHref(),this.subscribeToNavigationEventsIfNecessary()),this.onChanges.next(this)}routerLinkInput=null;set routerLink(e){e==null?(this.routerLinkInput=null,this.setTabIndexIfNotOnNativeEl(null)):(Y(e)?this.routerLinkInput=e:this.routerLinkInput=Array.isArray(e)?e:[e],this.setTabIndexIfNotOnNativeEl("0"))}onClick(e,r,i,o,s){let a=this.urlTree;if(a===null||this.isAnchorElement&&(e!==0||r||i||o||s||typeof this.target=="string"&&this.target!="_self"))return!0;let u={skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state,info:this.info};return this.router.navigateByUrl(a,u)?.catch(c=>{this.applicationErrorHandler(c)}),!this.isAnchorElement}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){let e=this.urlTree;this.reactiveHref.set(e!==null&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(e))??"":null)}applyAttributeValue(e,r){let i=this.renderer,o=this.el.nativeElement;r!==null?i.setAttribute(o,e,r):i.removeAttribute(o,e)}get urlTree(){return this.routerLinkInput===null?null:Y(this.routerLinkInput)?this.routerLinkInput:this.router.createUrlTree(this.routerLinkInput,{relativeTo:this.relativeTo!==void 0?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}static \u0275fac=function(r){return new(r||t)(_(Ce),_(B),wr("tabindex"),_(xt),_(_t),_(zr))};static \u0275dir=Ie({type:t,selectors:[["","routerLink",""]],hostVars:2,hostBindings:function(r,i){r&1&&Pr("click",function(s){return i.onClick(s.button,s.ctrlKey,s.shiftKey,s.altKey,s.metaKey)}),r&2&&Nr("href",i.reactiveHref(),br)("target",i.target)},inputs:{target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",state:"state",info:"info",relativeTo:"relativeTo",preserveFragment:[2,"preserveFragment","preserveFragment",Ye],skipLocationChange:[2,"skipLocationChange","skipLocationChange",Ye],replaceUrl:[2,"replaceUrl","replaceUrl",Ye],routerLink:"routerLink"},features:[be]})}return t})(),lo=(()=>{class t{router;element;renderer;cdr;link;links;classes=[];routerEventsSubscription;linkInputChangesSubscription;_isActive=!1;get isActive(){return this._isActive}routerLinkActiveOptions={exact:!1};ariaCurrentWhenActive;isActiveChange=new X;constructor(e,r,i,o,s){this.router=e,this.element=r,this.renderer=i,this.cdr=o,this.link=s,this.routerEventsSubscription=e.events.subscribe(a=>{a instanceof L&&this.update()})}ngAfterContentInit(){h(this.links.changes,h(null)).pipe(Mt()).subscribe(e=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();let e=[...this.links.toArray(),this.link].filter(r=>!!r).map(r=>r.onChanges);this.linkInputChangesSubscription=I(e).pipe(Mt()).subscribe(r=>{this._isActive!==this.isLinkActive(this.router)(r)&&this.update()})}set routerLinkActive(e){let r=Array.isArray(e)?e:e.split(" ");this.classes=r.filter(i=>!!i)}ngOnChanges(e){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||queueMicrotask(()=>{let e=this.hasActiveLinks();this.classes.forEach(r=>{e?this.renderer.addClass(this.element.nativeElement,r):this.renderer.removeClass(this.element.nativeElement,r)}),e&&this.ariaCurrentWhenActive!==void 0?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this._isActive!==e&&(this._isActive=e,this.cdr.markForCheck(),this.isActiveChange.emit(e))})}isLinkActive(e){let r=ho(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return i=>{let o=i.urlTree;return o?e.isActive(o,r):!1}}hasActiveLinks(){let e=this.isLinkActive(this.router);return this.link&&e(this.link)||this.links.some(e)}static \u0275fac=function(r){return new(r||t)(_(Ce),_(_t),_(xt),_(Ke),_(It,8))};static \u0275dir=Ie({type:t,selectors:[["","routerLinkActive",""]],contentQueries:function(r,i,o){if(r&1&&_r(o,It,5),r&2){let s;xr(s=Lr())&&(i.links=s)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],features:[be]})}return t})();function ho(t){return!!t.paths}var fo=new D("");function po(t,...n){return Rr([{provide:qe,multi:!0,useValue:t},[],{provide:B,useFactory:go,deps:[Ce]},{provide:Mr,multi:!0,useFactory:vo},n.map(e=>e.\u0275providers)])}function go(t){return t.routerState.root}function vo(){let t=d(yr);return n=>{let e=t.get(Dr);if(n!==e.components[0])return;let r=t.get(Ce),i=t.get(mo);t.get(Ro)===1&&r.initialNavigation(),t.get(yo,null,{optional:!0})?.setUpPreloading(),t.get(fo,null,{optional:!0})?.init(),r.resetRootComponentType(e.componentTypes[0]),i.closed||(i.next(),i.complete(),i.unsubscribe())}}var mo=new D("",{factory:()=>new z}),Ro=new D("",{providedIn:"root",factory:()=>1});var yo=new D("");export{ut as a,B as b,rr as c,Ce as d,It as e,lo as f,po as g};
@@ -0,0 +1 @@
1
+ import{n as m}from"./chunk-DM4NXKEP.js";import"./chunk-ZIJQRARU.js";import"./chunk-N3U6637P.js";var a="\u044F\u043D\u0432\u0430\u0440\u044F_\u0444\u0435\u0432\u0440\u0430\u043B\u044F_\u043C\u0430\u0440\u0442\u0430_\u0430\u043F\u0440\u0435\u043B\u044F_\u043C\u0430\u044F_\u0438\u044E\u043D\u044F_\u0438\u044E\u043B\u044F_\u0430\u0432\u0433\u0443\u0441\u0442\u0430_\u0441\u0435\u043D\u0442\u044F\u0431\u0440\u044F_\u043E\u043A\u0442\u044F\u0431\u0440\u044F_\u043D\u043E\u044F\u0431\u0440\u044F_\u0434\u0435\u043A\u0430\u0431\u0440\u044F".split("_"),i="\u044F\u043D\u0432\u0430\u0440\u044C_\u0444\u0435\u0432\u0440\u0430\u043B\u044C_\u043C\u0430\u0440\u0442_\u0430\u043F\u0440\u0435\u043B\u044C_\u043C\u0430\u0439_\u0438\u044E\u043D\u044C_\u0438\u044E\u043B\u044C_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043D\u0442\u044F\u0431\u0440\u044C_\u043E\u043A\u0442\u044F\u0431\u0440\u044C_\u043D\u043E\u044F\u0431\u0440\u044C_\u0434\u0435\u043A\u0430\u0431\u0440\u044C".split("_"),s="\u044F\u043D\u0432._\u0444\u0435\u0432\u0440._\u043C\u0430\u0440._\u0430\u043F\u0440._\u043C\u0430\u044F_\u0438\u044E\u043D\u044F_\u0438\u044E\u043B\u044F_\u0430\u0432\u0433._\u0441\u0435\u043D\u0442._\u043E\u043A\u0442._\u043D\u043E\u044F\u0431._\u0434\u0435\u043A.".split("_"),l="\u044F\u043D\u0432._\u0444\u0435\u0432\u0440._\u043C\u0430\u0440\u0442_\u0430\u043F\u0440._\u043C\u0430\u0439_\u0438\u044E\u043D\u044C_\u0438\u044E\u043B\u044C_\u0430\u0432\u0433._\u0441\u0435\u043D\u0442._\u043E\u043A\u0442._\u043D\u043E\u044F\u0431._\u0434\u0435\u043A.".split("_"),M=/D[oD]?(\[[^[\]]*\]|\s)+MMMM?/;function f(r,_){var t=r.split("_");return _%10===1&&_%100!==11?t[0]:_%10>=2&&_%10<=4&&(_%100<10||_%100>=20)?t[1]:t[2]}function e(r,_,t){var d={mm:_?"\u043C\u0438\u043D\u0443\u0442\u0430_\u043C\u0438\u043D\u0443\u0442\u044B_\u043C\u0438\u043D\u0443\u0442":"\u043C\u0438\u043D\u0443\u0442\u0443_\u043C\u0438\u043D\u0443\u0442\u044B_\u043C\u0438\u043D\u0443\u0442",hh:"\u0447\u0430\u0441_\u0447\u0430\u0441\u0430_\u0447\u0430\u0441\u043E\u0432",dd:"\u0434\u0435\u043D\u044C_\u0434\u043D\u044F_\u0434\u043D\u0435\u0439",MM:"\u043C\u0435\u0441\u044F\u0446_\u043C\u0435\u0441\u044F\u0446\u0430_\u043C\u0435\u0441\u044F\u0446\u0435\u0432",yy:"\u0433\u043E\u0434_\u0433\u043E\u0434\u0430_\u043B\u0435\u0442"};return t==="m"?_?"\u043C\u0438\u043D\u0443\u0442\u0430":"\u043C\u0438\u043D\u0443\u0442\u0443":r+" "+f(d[t],+r)}var o=function(_,t){return M.test(t)?a[_.month()]:i[_.month()]};o.s=i;o.f=a;var n=function(_,t){return M.test(t)?s[_.month()]:l[_.month()]};n.s=l;n.f=s;var h={name:"ru",weekdays:"\u0432\u043E\u0441\u043A\u0440\u0435\u0441\u0435\u043D\u044C\u0435_\u043F\u043E\u043D\u0435\u0434\u0435\u043B\u044C\u043D\u0438\u043A_\u0432\u0442\u043E\u0440\u043D\u0438\u043A_\u0441\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0435\u0440\u0433_\u043F\u044F\u0442\u043D\u0438\u0446\u0430_\u0441\u0443\u0431\u0431\u043E\u0442\u0430".split("_"),weekdaysShort:"\u0432\u0441\u043A_\u043F\u043D\u0434_\u0432\u0442\u0440_\u0441\u0440\u0434_\u0447\u0442\u0432_\u043F\u0442\u043D_\u0441\u0431\u0442".split("_"),weekdaysMin:"\u0432\u0441_\u043F\u043D_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043F\u0442_\u0441\u0431".split("_"),months:o,monthsShort:n,weekStart:1,yearStart:4,formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0433.",LLL:"D MMMM YYYY \u0433., H:mm",LLLL:"dddd, D MMMM YYYY \u0433., H:mm"},relativeTime:{future:"\u0447\u0435\u0440\u0435\u0437 %s",past:"%s \u043D\u0430\u0437\u0430\u0434",s:"\u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E \u0441\u0435\u043A\u0443\u043D\u0434",m:e,mm:e,h:"\u0447\u0430\u0441",hh:e,d:"\u0434\u0435\u043D\u044C",dd:e,M:"\u043C\u0435\u0441\u044F\u0446",MM:e,y:"\u0433\u043E\u0434",yy:e},ordinal:function(_){return _},meridiem:function(_){return _<4?"\u043D\u043E\u0447\u0438":_<12?"\u0443\u0442\u0440\u0430":_<17?"\u0434\u043D\u044F":"\u0432\u0435\u0447\u0435\u0440\u0430"}};m.locale(h,null,!0);var Y=h;export{Y as default};
@@ -0,0 +1 @@
1
+ import{n as e}from"./chunk-DM4NXKEP.js";import"./chunk-ZIJQRARU.js";import"./chunk-N3U6637P.js";var _={name:"it",weekdays:"domenica_luned\xEC_marted\xEC_mercoled\xEC_gioved\xEC_venerd\xEC_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),weekStart:1,monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},relativeTime:{future:"tra %s",past:"%s fa",s:"qualche secondo",m:"un minuto",mm:"%d minuti",h:"un' ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},ordinal:function(o){return o+"\xBA"}};e.locale(_,null,!0);var n=_;export{n as default};
@@ -0,0 +1 @@
1
+ import{a as bt,c as Et,d as T,e as te,g as It}from"./chunk-VKK5BSLX.js";import{a as yt}from"./chunk-BIKLW4YS.js";import{b as vt}from"./chunk-SHIVUDP3.js";import{d as Y}from"./chunk-UJPPR4MX.js";import{l as dt,p as _t,q as kt,r as Ct}from"./chunk-HNQRZALS.js";import{$a as ct,Da as he,Ha as de,Ib as fe,J as rt,Jb as R,Kb as H,Lb as ht,M as st,Nb as ut,Oa as at,Pb as ft,Rb as St,Sb as gt,W as J,Za as lt,nb as L,qb as pt,r as Ge,s as Ze,v as Ye,w as Xe,x as ze,yb as B}from"./chunk-GUGNR5TF.js";import{$a as W,Ab as G,Cd as Q,Db as w,Dd as We,Fb as d,G as oe,Hd as Qe,Ic as Te,L as ve,Lf as ot,Na as l,Nb as we,Ob as K,Pa as re,Pb as x,Qa as Ie,Qb as p,Rb as $,Rc as Z,Sb as D,Tb as xe,Ub as le,Vb as ce,Wb as pe,Yb as O,Zc as De,_c as Ne,ac as Le,ad as X,ae as Je,cd as Re,ce as et,da as P,dd as Pe,dg as ee,ec as C,ed as me,eg as ue,f as ke,fg as mt,ga as ye,gc as v,gd as f,gg as N,ha as j,hd as Fe,ia as S,id as Me,jd as $e,kb as _,lb as k,ld as Oe,lf as it,mb as Ae,md as Be,na as F,nd as He,oa as M,ob as se,od as Ue,p as V,pb as ae,pd as Ve,qa as be,qb as m,qd as Ke,rb as s,sb as a,t as Ce,tb as u,te as tt,tf as nt,v as b,vd as qe,wa as Ee,wd as je,xd as z}from"./chunk-C36MW4ME.js";import{a as y,b as A,d as _e}from"./chunk-N3U6637P.js";function Mt(o,r){if(o&1&&u(0,"fa-icon",2),o&2){let i=d();x(i.repository.class),we("min-width",i.galleryMode.dimensions/3,"px")("min-height",i.galleryMode.dimensions/3,"px")("font-size",i.galleryMode.faSize/1.8,"px"),m("icon",i.repository.icon)}}function $t(o,r){if(o&1&&u(0,"fa-icon",5),o&2){let i=d(2);x(i.repository.class),m("icon",i.repository.icon)}}function Ot(o,r){if(o&1&&(p(0),C(1,"translate")),o&2){let i=d(2);D(" ",v(1,1,i.repository.label,i.locale.language)," ")}}function Bt(o,r){if(o&1&&p(0),o&2){let i=d(2);D(" ",i.repository.label," ")}}function Ht(o,r){if(o&1&&(s(0,"div",1),_(1,$t,1,3,"fa-icon",3),s(2,"span",4),_(3,Ot,2,4)(4,Bt,1,1),a()()),o&2){let i=d();l(),k(i.showIcon?1:-1),l(2),k(i.repository.translate?3:4)}}var At=(()=>{let r=class r{constructor(){this.showIcon=!0,this.showFullPath=!1,this.locale=S(z),this.layout=S(B),this.unknownRepository={icon:Qe,label:"",class:"circle-primary-icon",translate:!1}}ngOnInit(){this.setRepository()}ngOnChanges(){this.setRepository()}setRepository(){this.share.parent?.id||this.share.parent?.id===0?this.repository={icon:R.SHARES,label:this.share.parent.name,class:"circle-purple-icon",translate:!1}:this.share.file?.ownerId?this.repository={icon:R.PERSONAL,label:fe.PERSONAL_FILES,class:"circle-primary-icon",translate:!0}:this.share.file?.space?.alias?this.repository={icon:R.SPACES,label:`${this.share.file.space.name}`,class:"circle-primary-icon",translate:!1}:this.share.externalPath?this.repository={icon:R.EXTERNAL,label:"External",class:"circle-primary-icon",translate:!0}:this.repository=y({},this.unknownRepository),this.showFullPath&&this.setFullPath()}setFullPath(){if(!this.repository.label)return;let e=this.share.file?.path?this.share.file.path.split("/").filter(n=>n&&n!=="."):[];this.share.parent?.id&&!this.share.file?.id&&this.share.file?.path.indexOf("/")===-1?e.shift():this.share.file?.space?.alias&&this.share.file.space?.root?.alias&&(e.length?e.unshift(this.share.file.space.root.name):e.push(this.share.file.space.root.name)),this.repository.label===fe.PERSONAL_FILES&&(this.repository.label=this.layout.translateString(this.repository.label)),e.length&&(this.repository.label=`${this.repository.label}/${e.join("/")}`)}};r.\u0275fac=function(n){return new(n||r)},r.\u0275cmp=W({type:r,selectors:[["app-share-repository"]],inputs:{share:"share",galleryMode:"galleryMode",showIcon:"showIcon",showFullPath:"showFullPath"},features:[Ee],decls:2,vars:1,consts:[[3,"icon","class","min-width","min-height","font-size"],[1,"d-flex","align-items-center","overflow-wrap-and-whitespace"],[3,"icon"],[1,"me-2",3,"icon","class"],["draggable","false",1,"no-pointer-events"],[1,"me-2",3,"icon"]],template:function(n,t){n&1&&_(0,Mt,1,9,"fa-icon",0)(1,Ht,5,2,"div",1),n&2&&k(t.galleryMode?0:1)},dependencies:[ee,Q],encapsulation:2});let o=r;return o})();var h={BASE:`${J}/shares`,LIST:"list",CHILDREN:"children",LINKS:"links",LINKS_LIST:"links/list",LINKS_UUID:"links/uuid"},wt=`${h.BASE}/${h.LIST}`,q=`${h.BASE}/${h.LINKS}`,xt=`${h.BASE}/${h.LINKS_LIST}`,Lt=`${h.BASE}/${h.LINKS_UUID}`;var Tt=(()=>{let r=class r{constructor(){this.http=S(Z),this.router=S(Y)}getShare(e){return this.http.get(`${h.BASE}/${e}`).pipe(b(n=>new T(n)))}createShare(e){return this.http.post(h.BASE,e).pipe(b(n=>new T(n)))}updateShare(e){return this.http.put(`${h.BASE}/${e.id}`,e).pipe(b(n=>new T(n)))}deleteShare(e){return this.http.delete(`${h.BASE}/${e}`)}listShares(){return this.http.get(wt)}getShareChild(e,n){return this.http.get(`${h.BASE}/${e}/${h.CHILDREN}/${n}`).pipe(b(t=>new T(t)))}updateShareChild(e,n,t){return this.http.put(`${h.BASE}/${e}/${h.CHILDREN}/${n}`,t).pipe(b(c=>new T(c)))}deleteShareChild(e,n){return this.http.delete(`${h.BASE}/${e}/${h.CHILDREN}/${n}`)}listChildShares(e){return this.http.get(`${h.BASE}/${e}/${h.CHILDREN}`)}initShareFromFile(e,n,t=!1,c=!1){let g,E=null,I=y({id:0,name:"",createdAt:new Date,modifiedAt:new Date,storageIndexing:!0,enabled:!0},t?{parent:{id:0,ownerId:0,alias:n.space.alias,name:n.space.name}}:{});if(n){c&&(E=n.root.id);let ge=null;(n?.root?.owner.login===e.login||!n?.space?.alias)&&(n.space=null,ge=e.id),g=new T(A(y({},I),{name:n.name,file:A(y({},n),{path:c?".":at(n.path,2),ownerId:ge})}))}else g=new T(I);return[g,E]}goTo(e){if(!e.id)return Ce(V(!1));if(e.externalPath&&!e.parent?.id)return this.router.navigate([H.SPACES_SHARES],{queryParams:{select:e.name}});if(e.parent?.id&&!e.file?.id&&e.file?.path.indexOf("/")===-1)return this.router.navigate([H.SPACES_SHARES],{queryParams:{select:e.parent.name}});{let[n,t]=Et(e);return this.router.navigate([n],{queryParams:{select:t}})}}};r.\u0275fac=function(n){return new(n||r)},r.\u0275prov=P({token:r,factory:r.\u0275fac,providedIn:"root"});let o=r;return o})();var U={BASE:`${J}/link`,LINK:"link",VALIDATION:"validation",ACCESS:"access",AUTH:"auth"},Dt=`${U.BASE}/${U.VALIDATION}`,Se=`${U.BASE}/${U.ACCESS}`,Nt=`${U.BASE}/${U.AUTH}`;var Rt=new ye("WindowToken",typeof window<"u"&&window.document?{providedIn:"root",factory:()=>window}:{providedIn:"root",factory:()=>{}});var Pt=(()=>{class o{constructor(i,e,n){this.ngZone=i,this.document=e,this.window=n,this.copySubject=new ke,this.copyResponse$=this.copySubject.asObservable(),this.config={}}configure(i){this.config=i}copy(i){if(!this.isSupported||!i)return this.pushCopyResponse({isSuccess:!1,content:i});let e=this.copyFromContent(i);return e?this.pushCopyResponse({content:i,isSuccess:e}):this.pushCopyResponse({isSuccess:!1,content:i})}get isSupported(){return!!this.document.queryCommandSupported&&!!this.document.queryCommandSupported("copy")&&!!this.window}isTargetValid(i){if(i instanceof HTMLInputElement||i instanceof HTMLTextAreaElement){if(i.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');return!0}throw new Error("Target should be input or textarea")}copyFromInputElement(i,e=!0){try{this.selectTarget(i);let n=this.copyText();return this.clearSelection(e?i:void 0,this.window),n&&this.isCopySuccessInIE11()}catch{return!1}}isCopySuccessInIE11(){let i=this.window.clipboardData;return!(i&&i.getData&&!i.getData("Text"))}copyFromContent(i,e=this.document.body){if(this.tempTextArea&&!e.contains(this.tempTextArea)&&this.destroy(this.tempTextArea.parentElement||void 0),!this.tempTextArea){this.tempTextArea=this.createTempTextArea(this.document,this.window);try{e.appendChild(this.tempTextArea)}catch{throw new Error("Container should be a Dom element")}}this.tempTextArea.value=i;let n=this.copyFromInputElement(this.tempTextArea,!1);return this.config.cleanUpAfterCopy&&this.destroy(this.tempTextArea.parentElement||void 0),n}destroy(i=this.document.body){this.tempTextArea&&(i.removeChild(this.tempTextArea),this.tempTextArea=void 0)}selectTarget(i){return i.select(),i.setSelectionRange(0,i.value.length),i.value.length}copyText(){return this.document.execCommand("copy")}clearSelection(i,e){i&&i.focus(),e.getSelection()?.removeAllRanges()}createTempTextArea(i,e){let n=i.documentElement.getAttribute("dir")==="rtl",t;t=i.createElement("textarea"),t.style.fontSize="12pt",t.style.border="0",t.style.padding="0",t.style.margin="0",t.style.position="absolute",t.style[n?"right":"left"]="-9999px";let c=e.pageYOffset||i.documentElement.scrollTop;return t.style.top=c+"px",t.setAttribute("readonly",""),t}pushCopyResponse(i){this.copySubject.observers.length>0&&this.ngZone.run(()=>{this.copySubject.next(i)})}pushCopyReponse(i){this.pushCopyResponse(i)}}return o.\u0275fac=function(i){return new(i||o)(j(Ie),j(be),j(Rt,8))},o.\u0275prov=P({token:o,factory:o.\u0275fac,providedIn:"root"}),o})();var Ft=(()=>{let r=class r{constructor(){this.router=S(Y),this.http=S(Z),this.layout=S(B),this.authService=S(vt),this.clipboard=S(Pt)}shareLinksList(){return this.http.get(xt).pipe(b(e=>e.map(n=>new te(n))))}shareLink(e){return this.http.get(`${q}/${e}`).pipe(b(n=>new te(n)))}shareLinkChild(e,n){return this.http.get(`${q}/${e}/${h.CHILDREN}/${n}`).pipe(b(t=>new te(t)))}linkFromSpaceOrShare(e,n,t){return this.http.get(`${q}/${e}/${t}/${n}`)}linkValidation(e){return this.http.get(`${Dt}/${e}`).pipe(b(n=>n.ok?n.link:(n.error&&(n.error===ue.UNAUTHORIZED?this.router.navigate([`${N.LINK}/${e}/${N.AUTH}`]).catch(console.error):this.router.navigate([`${N.LINK}/${e}/${n.error}`]).catch(console.error)),!1)),oe(()=>(this.authService.logout(),V(!1))))}linkAccess(e,n){n.share?.isDir||n.space?.alias?this.http.get(`${Se}/${e}`).subscribe(t=>{this.authService.initUserFromResponse(t),n.space?this.router.navigate([H.SPACES],{queryParams:{select:n.space.name}}).catch(console.error):this.router.navigate([H.SPACES_SHARES],{queryParams:{select:n.share.name}}).catch(console.error)}):ct(`${Se}/${e}`)}linkAuthentication(e,n){return this.http.post(`${Nt}/${e}`,{password:n}).pipe(b(t=>(this.authService.initUserFromResponse(t),this.router.navigate([`${N.LINK}/${e}`]).catch(console.error),!0)),oe(t=>(t.error.message===ue.UNAUTHORIZED?this.layout.sendNotification("warning","Link","Bad password"):this.router.navigate([`${N.LINK}/${e}/${t.error.message}`]).catch(console.error),V(!1))))}copyLinkToClipboard(e){this.clipboard.copyFromContent(this.genLink(e))}genUUID(){return this.http.get(Lt).pipe(b(e=>e.uuid))}createLinkDialog(e){this.genUUID().subscribe(n=>{let t=this.layout.openDialog(ne,"md",{initialState:{link:{name:e.name,uuid:n,isActive:!0,nbAccess:0}}});this.subscribeToSubmitLinkModal(t,e)})}updateLinkFromSpaceOrShare(e,n,t,c){return this.http.put(`${q}/${e}/${t}/${n}`,c)}editLinkDialog(e,n,t){if(n.id===0||e?.linkSettings?.uuid){let c=this.layout.openDialog(ne,"md",{initialState:{link:e.linkSettings}});this.subscribeToSubmitLinkModal(c,n,e)}else this.linkFromSpaceOrShare(e.linkId,n.id,t).subscribe({next:c=>{let g=this.layout.openDialog(ne,"md",{initialState:{link:A(y({},c),{permissions:e.permissions})}});this.subscribeToSubmitLinkModal(g,n,e)},error:c=>this.layout.sendNotification("error","Link error",e.name||n.name,c)})}shareLinkGuestToMember(e,n,t){return new gt({id:e,linkId:n,name:t.name,description:t.email,createdAt:t.createdAt,permissions:t.permissions,type:ut.LINK,spaceRole:pt.IS_MEMBER,linkSettings:t},[L.SHARE_INSIDE,L.SHARE_OUTSIDE])}subscribeToSubmitLinkModal(e,n,t){e.content.submitEvent.pipe(ve(1)).subscribe(c=>{if(Object.keys(c).length){let g=Object.assign(e.content.link,c),E=this.shareLinkGuestToMember(g.userId||-(n.links.length+1),t?.linkId||-(n.links.length+1),g);E.linkId?n.links=[E,...n.links.filter(I=>I.linkId!==E.linkId)]:n.links=[E,...n.links]}e.content.layout.closeDialog()})}genLink(e){return`${document.location.origin}/#/${N.LINK}/${e}`}};r.\u0275fac=function(n){return new(n||r)},r.\u0275prov=P({token:r,factory:r.\u0275fac,providedIn:"root"});let o=r;return o})();var Vt=o=>({dateInputFormat:"YYYY-MM-DD",containerClass:"theme-dark-blue",returnFocusToInput:!0,minDate:o,showWeekNumbers:!1}),Kt=(o,r)=>r.key;function qt(o,r){o&1&&(s(0,"span",4),p(1,"Edit link"),a())}function jt(o,r){o&1&&(s(0,"span",4),p(1,"New link"),a())}function Wt(o,r){o&1&&u(0,"div",54)}function Gt(o,r){if(o&1){let i=G();s(0,"button",53),C(1,"translate"),pe("ngModelChange",function(n){let t=F(i).$implicit,c=d(3);return ce(c.permissions[t.key],n)||(c.permissions[t.key]=n),M(n)}),w("ngModelChange",function(){F(i);let n=d(3);return M(n.onPermissionChange())}),u(2,"fa-icon",50),a(),_(3,Wt,1,0,"div",54)}if(o&2){let i=r.$implicit,e=r.$index,n=r.$count,t=d(3);le("ngModel",t.permissions[i.key]),m("tooltip",v(1,4,t.SPACES_PERMISSIONS_TEXT[i.key].text,t.locale.language)),l(2),m("icon",t.SPACES_PERMISSIONS_TEXT[i.key].icon),l(),k(e===n-1?3:-1)}}function Zt(o,r){if(o&1&&(se(0,Gt,4,7,null,null,Kt),C(2,"keyvalue")),o&2){let i=d(2);ae(v(2,0,i.permissions,i.originalOrderKeyValue))}}function Yt(o,r){if(o&1&&(s(0,"div",51),u(1,"app-share-repository",55),a()),o&2){let i=d(2);l(),m("share",i.share)("showIcon",!0)("showFullPath",!0)}}function Xt(o,r){if(o&1){let i=G();s(0,"div",44),u(1,"fa-icon",45),s(2,"div",46)(3,"span"),p(4),a(),s(5,"span",47),p(6),a()(),s(7,"div",48),_(8,Zt,3,3),s(9,"button",49),C(10,"translate"),w("click",function(){F(i);let n=d();return M(n.toggleRequireAuth())}),u(11,"fa-icon",50),a(),s(12,"button",49),C(13,"translate"),w("click",function(){F(i);let n=d();return M(n.copyToClipboard())}),u(14,"fa-icon",50),a()()(),_(15,Yt,2,3,"div",51),u(16,"hr",52)}if(o&2){let i=d();l(),m("icon",i.icons.links),l(3),$(i.linkForm.value.name||i.linkForm.value.shareName),l(2),$(i.linkForm.value.email),l(2),k(i.share&&i.permissions?8:-1),l(),x(O("btn btn-sm ",i.linkForm.value.requireAuth?"btn-success":"btn-warning")),m("tooltip",v(10,15,"Password",i.locale.language)),l(2),m("icon",i.linkForm.value.requireAuth?i.icons.faLock:i.icons.faLockOpen),l(),x(O("btn btn-sm ms-2 ",i.linkWasCopied?"btn-info":"btn-secondary")),m("tooltip",v(13,18,"Copy link",i.locale.language)),l(2),m("icon",i.linkWasCopied?i.icons.faClipboardCheck:i.icons.faClipboard),l(),k(i.share?15:-1)}}function zt(o,r){if(o&1&&(s(0,"span"),p(1),a()),o&2){let i=d();x(O("badge rounded-pill ",(i.share?i.share.link.nbAccess:i.link.nbAccess)>=i.linkForm.value.limitAccess?"bg-danger":"bg-success")),l(),xe(" ",i.share?i.share.link.nbAccess:i.link.nbAccess,"/",i.linkForm.value.limitAccess," ")}}function Qt(o,r){if(o&1&&(s(0,"span",20),p(1),a()),o&2){let i=d();l(),$(i.share?i.share.link.nbAccess:i.link.nbAccess)}}function Jt(o,r){if(o&1&&(s(0,"div",27)(1,"label",56),p(2,"Share name"),a(),u(3,"input",57),C(4,"translate"),a(),s(5,"div",27)(6,"label",58),p(7,"Share description"),a(),u(8,"input",59),C(9,"translate"),a()),o&2){let i=d();l(3),K("is-invalid",i.linkForm.controls.shareName.invalid),m("placeholder",v(4,4,"Share name",i.locale.language)),l(5),m("placeholder",v(9,7,"Share description",i.locale.language))}}function ei(o,r){if(o&1&&(s(0,"option",30),p(1),a()),o&2){let i=r.$implicit,e=d();m("ngValue",i),l(),$(e.i18nLanguageText[i])}}function ti(o,r){if(o&1&&(s(0,"div",37),u(1,"app-password-strength-bar",60),a()),o&2){let i=d();l(),m("passwordToCheck",i.password)}}function ii(o,r){if(o&1){let i=G();s(0,"button",61),w("click",function(){F(i);let n=d();return M(n.confirmDeletion=!0)}),p(1," Remove "),a()}if(o&2){let i=d();m("disabled",i.confirmDeletion)}}var ne=(()=>{let r=class r{constructor(){this.layout=S(B),this.parentSpaceId=null,this.isSharesRepo=!1,this.inSharesList=!1,this.submitEvent=new re,this.shareChange=new re,this.locale=S(z),this.confirmDeletion=!1,this.submitted=!1,this.SPACES_PERMISSIONS_TEXT=ht,this.originalOrderKeyValue=lt,this.icons={faEye:Je,faEyeSlash:ot,links:R.LINKS,faClipboard:tt,faClipboardCheck:et,faLock:nt,faLockOpen:it},this.languages=this.layout.getLanguages(),this.minDate=he(),this.defaultPassword=this.layout.translateString(rt),this.passwordMinLength=8,this.password="",this.linkIsExpired=!1,this.linkIsHovered=!1,this.linkWasCopied=!1,this.i18nLanguageText=st,this.userService=S(_t),this.sharesService=S(Tt),this.linksService=S(Ft),this.spacesService=S(It),this.minDate.setDate(this.minDate.getDate()+1)}ngOnInit(){this.link?this.initLink():this.file?this.initFile():this.initShareLink(),this.linkForm.value.requireAuth&&(this.password=this.defaultPassword),this.linkForm.value.expiresAt&&this.isLinkIsExpired(this.share?this.share.link.expiresAt:this.link.expiresAt),this.linkForm.controls.expiresAt.valueChanges.subscribe(e=>this.isLinkIsExpired(e))}onPermissionChange(){let e=St(this.permissions);this.linkForm.controls.permissions.setValue(e),e!==this.share.link.permissions?this.linkForm.controls.permissions.markAsDirty():this.linkForm.controls.permissions.markAsPristine()}toggleRequireAuth(){this.linkForm.controls.requireAuth.setValue(!this.linkForm.value.requireAuth),this.linkForm.controls.requireAuth.markAsDirty()}copyToClipboard(){this.linksService.copyLinkToClipboard(this.share?this.share.link.uuid:this.link.uuid),this.linkWasCopied=!0,this.layout.sendNotification("info","Link copied",this.linkForm.value.name||this.linkForm.value.shareName),setTimeout(()=>this.linkWasCopied=!1,3e3)}onCancel(){this.confirmDeletion?this.confirmDeletion=!1:this.layout.closeDialog()}onSubmit(){if(this.submitted=!0,this.confirmDeletion){(this.parentSpaceId?this.spacesService.deleteSpaceShare(this.parentSpaceId,this.share.id):this.sharesService.deleteShare(this.share.id)).subscribe({next:()=>{this.layout.sendNotification("success","Link deleted",this.share.link.name||this.share.name),this.shareChange.emit(["delete",this.share]),this.layout.closeDialog()},error:c=>{this.layout.sendNotification("error","Delete share",this.share.name,c),this.layout.closeDialog()}});return}if(this.file?.id){let n=this.share,{link:t}=n,c=_e(n,["link"]),g=A(y(y({},t),this.linkForm.value),{password:this.mustIncludePassword()?this.password:void 0});c.name=de("shareName",g),c.description=de("shareDescription",g);let E=this.linksService.shareLinkGuestToMember(-1,-1,g);this.sharesService.createShare(A(y({},c),{type:bt.LINK,links:[E]})).subscribe({next:I=>{this.shareChange.emit(["add",I]),this.layout.sendNotification("success","Link created",t.name||I.name),this.layout.closeDialog()},error:I=>{this.layout.sendNotification("error","Link error",this.share.name,I),this.layout.closeDialog()}});return}let e={};for(let t in this.linkForm.controls)this.linkForm.controls[t].dirty&&(e[t]=this.linkForm.controls[t].value);if(this.mustIncludePassword()&&(e.password=this.password),this.share?.id){Object.keys(e).length&&this.linksService.updateLinkFromSpaceOrShare(this.share.link.id,this.share.id,mt.SHARE,e).subscribe({next:t=>{this.share.name=this.linkForm.value.shareName,this.share.description=this.linkForm.value.shareDescription,this.share.link=Object.assign(this.share.link,t),this.share.updateTimes(),this.share.updatePermission(),this.shareChange.emit(["update",this.share]),this.layout.closeDialog()},error:t=>{this.layout.sendNotification("error","Link error",this.share.link.name||this.share.name,t),this.layout.closeDialog()}}),this.layout.closeDialog();return}this.submitEvent.emit(e)}initFile(){let e=this.sharesService.initShareFromFile(this.userService.user,this.file,this.isSharesRepo,this.inSharesList)[0];this.share=A(y({},e),{link:{id:-1,userId:-1,uuid:"",isActive:!0,requireAuth:!1,permissions:"",nbAccess:0,limitAccess:0}}),this.linksService.genUUID().subscribe(n=>this.share.link.uuid=n),this.initShareLink(),this.onPermissionChange()}initShareLink(){this.linkForm=new me({shareName:new f(this.share.name,X.required),shareDescription:new f(this.share.description||""),name:new f(this.share.link?.name||""),email:new f(this.share.link?.email||"",X.email),language:new f(this.share.link.language||null),limitAccess:new f(this.share.link.limitAccess||null),expiresAt:new f(this.share.link.expiresAt||null),requireAuth:new f(this.share.link.requireAuth||!1),permissions:new f(this.share.link.permissions),isActive:new f(this.share.link.isActive)}),this.permissions=ft(this.share.file.permissions,this.share.link.permissions,[L.SHARE_INSIDE,L.SHARE_OUTSIDE,...this.share.file.isDir?[]:[L.DELETE,L.ADD]])}initLink(){this.linkForm=new me({shareName:new f(""),shareDescription:new f(""),name:new f(this.link.name||""),email:new f(this.link.email||"",X.email),language:new f(this.link.language||null),limitAccess:new f(this.link.limitAccess||null),expiresAt:new f(this.link.expiresAt||null),requireAuth:new f(this.link.requireAuth||!1),permissions:new f(this.link.permissions),isActive:new f(this.link.isActive)}),this.link.id||(this.linkForm.controls.name.markAsDirty(),this.linkForm.controls.isActive.markAsDirty())}isLinkIsExpired(e){if(e==null){if(this.linkIsExpired=!1,e===null)return;this.linkForm.controls.expiresAt.setValue(null)}this.linkIsExpired=he()>=e}mustIncludePassword(){return!!this.password.length&&this.password!==this.defaultPassword}};r.\u0275fac=function(n){return new(n||r)},r.\u0275cmp=W({type:r,selectors:[["app-link-dialog"]],inputs:{share:"share",parentSpaceId:"parentSpaceId",link:"link",file:"file",isSharesRepo:"isSharesRepo",inSharesList:"inSharesList"},outputs:{submitEvent:"submitEvent",shareChange:"shareChange"},decls:73,vars:52,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"],["autocomplete","off",3,"formGroup"],[1,"d-flex"],[1,"d-flex","flex-column","flex-grow-1"],[1,"d-flex","align-items-center","cursor-pointer","py-2",3,"mouseover","mouseleave","focus","click"],["for","link","l10nTranslate",""],["id","link",1,"ms-auto"],[1,"d-flex","align-items-center","py-2"],["for","state","l10nTranslate","",1,"cursor-pointer","me-auto"],[1,"d-flex","align-items-center","form-check","form-switch","cursor-pointer"],["id","state","formControlName","isActive","type","checkbox","role","button",1,"form-check-input"],["for","access","l10nTranslate",""],["id","access",1,"ms-auto"],[3,"class"],[1,"badge","rounded-pill","bg-success"],[1,"d-flex","align-items-center"],["for","guestName","l10nTranslate",""],["id","guestName","formControlName","name","type","text",1,"form-control","form-control-sm","ms-auto","w-50",3,"placeholder"],[1,"d-flex","align-items-center","justify-content-between","px-0"],["for","guestEmail","l10nTranslate",""],["id","guestEmail","autocomplete","off","formControlName","email","type","email",1,"form-control","form-control-sm","ms-auto","w-50",3,"placeholder"],[1,"d-flex","align-items-center","justify-content-between"],["for","guestLanguage","l10nTranslate",""],["id","guestLanguage","formControlName","language",1,"form-control","form-select","form-select-sm","ms-auto","w-50"],[3,"ngValue"],["for","limitAccess","l10nTranslate",""],["id","limitAccess","formControlName","limitAccess","min","1","type","number",1,"form-control","form-control-sm","ms-auto","w-50",3,"placeholder"],["for","expiration","l10nTranslate",""],["bsDatepicker","","id","expiration","formControlName","expiresAt","placement","left","type","text",1,"form-control","form-control-sm","ms-auto","w-50",3,"placeholder","bsConfig"],[1,"d-flex","align-items-center","px-0"],["for","requireAuth","translate","",1,"cursor-pointer","me-auto"],[1,"d-flex","align-items-center","d-none","d-sm-flex","mx-auto"],["id","requireAuth","formControlName","requireAuth","type","checkbox","role","button",1,"form-check-input"],["placeholder","Set a password",2,"width","45%",3,"passwordChange","isRequired","disabled","passwordMinLength","password","showGenerator"],[1,"modal-footer"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-danger",3,"disabled"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",3,"click","disabled"],[1,"d-flex","flex-fill","align-items-center"],[1,"circle-primary-icon","me-2",3,"icon"],[1,"d-flex","flex-column","overflow-wrap-and-whitespace","me-2"],[1,"fs-xxxs"],[1,"d-flex","ms-auto"],["container","body","type","button",3,"click","tooltip"],["size","lg",3,"icon"],[1,"d-flex","align-items-center","d-none","d-sm-flex","py-2"],[1,"my-2"],["btnCheckbox","","type","button",1,"btn","btn-sm","btn-custom","me-0","ms-2",3,"ngModelChange","ngModel","tooltip"],[1,"vr","mx-2"],["id","file",3,"share","showIcon","showFullPath"],["for","shareName","l10nTranslate",""],["id","shareName","formControlName","shareName","type","email",1,"form-control","form-control-sm","ms-auto","w-50",3,"placeholder"],["for","shareDescription","l10nTranslate",""],["id","shareDescription","formControlName","shareDescription","type","email",1,"form-control","form-control-sm","ms-auto","w-50",3,"placeholder"],[3,"passwordToCheck"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-danger",3,"click","disabled"]],template:function(n,t){n&1&&(s(0,"div",0)(1,"h4",1),u(2,"fa-icon",2),s(3,"span"),p(4),a()(),s(5,"h4",3),_(6,qt,2,0,"span",4)(7,jt,2,0,"span",4),a(),s(8,"button",5),w("click",function(){return t.layout.closeDialog()}),a()(),s(9,"div",6),_(10,Xt,17,21),s(11,"form",7)(12,"div",8)(13,"div",9)(14,"div",10),w("mouseover",function(){return t.linkIsHovered=!0})("mouseleave",function(){return t.linkIsHovered=!1})("focus",function(){return t.linkIsHovered=!0})("click",function(){return t.copyToClipboard()}),s(15,"label",11),p(16,"Link"),a(),s(17,"span",12),p(18),a()(),s(19,"div",13)(20,"label",14),p(21,"Active"),a(),s(22,"div",15),u(23,"input",16),s(24,"span"),p(25),C(26,"translate"),a()()(),s(27,"div",13)(28,"label",17),p(29,"Current access count"),a(),s(30,"span",18),_(31,zt,2,5,"span",19)(32,Qt,2,1,"span",20),a()(),_(33,Jt,10,10),s(34,"div",21)(35,"label",22),p(36,"Guest name"),a(),u(37,"input",23),C(38,"translate"),a(),s(39,"div",24)(40,"label",25),p(41,"Guest email"),a(),u(42,"input",26),C(43,"translate"),a(),s(44,"div",27)(45,"label",28),p(46,"Guest language"),a(),s(47,"select",29),se(48,ei,2,2,"option",30,Ae),a()(),s(50,"div",27)(51,"label",31),p(52,"Limit access"),a(),u(53,"input",32),C(54,"translate"),a(),s(55,"div",27)(56,"label",33),p(57,"Expiration"),a(),u(58,"input",34),C(59,"translate"),a(),s(60,"div",35)(61,"label",36),p(62,"Password"),a(),_(63,ti,2,1,"div",37),s(64,"div",15),u(65,"input",38),a(),s(66,"app-input-password",39),pe("passwordChange",function(g){return ce(t.password,g)||(t.password=g),g}),a()()()()()(),s(67,"div",40),_(68,ii,2,1,"button",41),s(69,"button",42),w("click",function(){return t.onCancel()}),p(70,"Cancel"),a(),s(71,"button",43),w("click",function(){return t.onSubmit()}),p(72),a()()),n&2&&(l(2),m("icon",t.icons.links),l(2),$(t.linkForm.value.name||t.linkForm.value.shareName),l(2),k(t.share!=null&&t.share.id||t.link!=null&&t.link.id?6:7),l(4),k(t.share||t.link?10:-1),l(),m("formGroup",t.linkForm),l(6),K("text-primary",t.linkIsHovered),l(),D(" ",t.share?t.share.link.uuid:t.link.uuid," "),l(6),x(O("badge rounded-pill ms-3 ",t.linkForm.value.isActive?"bg-primary":"bg-danger")),l(),D(" ",v(26,35,t.linkForm.value.isActive?"yes":"no",t.locale.language)," "),l(6),k(t.linkForm.value.limitAccess?31:32),l(2),k(t.share?33:-1),l(4),m("placeholder",v(38,38,"Guest name",t.locale.language)),l(5),K("is-invalid",t.linkForm.controls.email.invalid),m("placeholder",v(43,41,"Guest email",t.locale.language)),l(6),ae(t.languages),l(5),m("placeholder",v(54,44,"Unlimited",t.locale.language)),l(5),K("text-danger",t.linkIsExpired),m("placeholder",v(59,47,"Never expires",t.locale.language))("bsConfig",Le(50,Vt,t.minDate)),l(5),k(t.linkForm.value.requireAuth&&t.password!==t.defaultPassword?63:-1),l(3),m("isRequired",t.linkForm.value.requireAuth)("disabled",!t.linkForm.value.requireAuth)("passwordMinLength",t.passwordMinLength),le("password",t.password),m("showGenerator",!0),l(2),k(t.share!=null&&t.share.id?68:-1),l(3),x(O("btn btn-sm ",t.confirmDeletion?"btn-danger":"btn-primary")),m("disabled",t.linkForm.invalid||t.linkForm.controls.requireAuth.value&&t.password.length<t.passwordMinLength||t.submitted),l(),D(" ",t.confirmDeletion?"Confirm deletion":"Confirm"," "))},dependencies:[ee,We,ze,Ye,Xe,Ct,kt,qe,Me,Ue,Ve,Ne,$e,De,He,Re,Pe,Ke,Fe,dt,Ze,Ge,je,Oe,Be,At,yt,Te,Q],encapsulation:2});let o=r;return o})();export{Pt as a,At as b,Tt as c,ne as d,Ft as e};
@@ -0,0 +1 @@
1
+ import{c as a,d as I,h as E,m as $}from"./chunk-3XVM35O2.js";import{Cb as N,Db as C,Eb as k,Ha as c,Kb as p,Ob as U,Qb as h,Sa as d,Sb as A,Vb as u,kb as w,nb as m,qb as x,rb as b,zb as r}from"./chunk-GUGNR5TF.js";import{Rc as M,da as T,ia as _,v as n}from"./chunk-C36MW4ME.js";import{n as l}from"./chunk-DM4NXKEP.js";function R(i){i.file?.id?(i.file.isDir&&(i.file.mime=i.parent?.alias?I:a),i.mimeUrl=E(i.file.mime)):i.mimeUrl=E(i.parent?.alias?I:a)}function y(i){let e,o=i.file.path?i.file.path.split("/").filter(s=>s&&s!=="."):[];if(i.parent?.id){if(!o.length)return[p.SPACES_SHARES,i.parent.alias];e=`${p.SPACES_SHARES}/${i.parent.alias}`}else i.file.space?.alias?i.file.inTrash?e=`${p.SPACES_TRASH}/${i.file.space.alias}`:(e=`${p.SPACES_FILES}/${i.file.space.alias}`,i.file.space?.root?.alias&&(o.length?e=`${e}/${i.file.space.root.alias}`:o.push(i.file.space.root.name))):i.file?.ownerId?e=`${i.file.inTrash?p.PERSONAL_TRASH:p.PERSONAL_FILES}`:console.warn("unable to find the right file path",i);let t=o.pop();return e&&o.length&&(e=`${e}/${o.join("/")}`),[e,t]}var g=class{constructor(e){this.hTimeExpirationAgo=0,this.hPerms={},this.newly=0,Object.assign(this,e),R(this),this.updatePermission(),this.updateTimes()}fallBackMimeUrl(){this.mimeUrl=$}updatePermission(){this.hPerms=h(this.link.permissions)}updateTimes(){if(this.hTimeAccessAgo=l(this.link.currentAccess).fromNow(!0),this.newly=d(this.link.currentAccess),this.link.expiresAt){this.link.expiresAt=new Date(l(this.link.expiresAt).local().format("YYYY-MM-DD"));let e=Math.max(0,l(this.link.expiresAt).diff(l(),"hours"));e===0?this.hTimeExpirationAgo=0:e<=24?this.hTimeExpirationAgo=1:this.hTimeExpirationAgo=Math.round(e/24)+1}else this.hTimeExpirationAgo=0}};var B=(function(i){return i[i.COMMON=0]="COMMON",i[i.LINK=1]="LINK",i})(B||{}),D=Object.values(m).filter(i=>i!==m.SHARE_INSIDE).sort().join(":");var P=class{constructor(e){this.members=[],this.links=[],this.hPerms={},this.setMembers(c("members",e),e.externalPath||e.file?.isDir?[m.SHARE_INSIDE]:[]),Object.assign(this,e),R(this),this.checkFile(),this.setPermissions()}fallBackMimeUrl(){this.mimeUrl=$}setMembers(e,o){if(e)for(let t of e)t.linkId?this.links.push(new A(t,[...o,m.SHARE_OUTSIDE])):this.members.push(new A(t,o))}checkFile(){this.file&&(!this.file.path&&this.file.space.root?.name&&(this.file.path=this.file.space.root.name,this.file.name=this.file.space.root.name),this.file.permissions&&(this.file.permissions=this.file.permissions.split(":").filter(e=>e===m.SHARE_INSIDE||e===m.ADD&&this.file.id&&!this.file.isDir?!1:!(e===m.DELETE&&this.file.id&&!this.file.isDir)).join(":")))}setPermissions(){typeof this.file?.permissions=="string"?this.hPerms=h(this.file.permissions):this.externalPath&&(this.hPerms=h(D))}};var f=class{constructor(e){this.roots=[],this.managers=[],this.members=[],this.links=[],this.hPerms={},this.newly=0,this.hPerms=h(e.permissions),this.setMembers(c("members",e)),this.setRoots(c("roots",e)),Object.assign(this,e),this.hTimeAgo=l(this.modifiedAt).fromNow(!0),this.newly=d(this.modifiedAt),this.sort()}addRoot(e,o=!1){e.hPerms=U(e.permissions,[m.SHARE_INSIDE]),e.owner?.login&&(e.owner.avatarUrl=w(e.owner.login)),e.file.mimeUrl=E(e.file?.mime?e.file.mime:a),o?this.roots.unshift(e):this.roots.push(e),e.isDir=e.file.mime===a||!!e.externalPath}havePermission(e){return this.permissions.indexOf(e)>-1}setMembers(e){if(e)for(let o of e){let t=new A(o);t.isLink?this.links.push(t):t.spaceRole===x.IS_MANAGER?this.managers.push(t):this.members.push(t)}}setRoots(e){if(e)for(let o of e)this.addRoot(o)}sort(){u(this.roots,"createdAt",!1),u(this.managers,"createdAt",!1),u(this.members,"createdAt",!1),u(this.links,"createdAt",!1)}};var Oe=(()=>{let e=class e{constructor(){this.http=_(M)}listSpaces(){return this.http.get(N).pipe(n(t=>t.map(s=>new f(s))))}getSpace(t){return this.http.get(`${r.BASE}/${t}`).pipe(n(s=>new f(s)))}getUserSpaceRoots(t){return this.http.get(`${r.BASE}/${t}/${r.ROOTS}`)}createUserSpaceRoots(t,s){return this.http.post(`${r.BASE}/${t}/${r.ROOTS}`,s)}updateUserSpaceRoots(t,s){return this.http.put(`${r.BASE}/${t}/${r.ROOTS}`,s)}updateSpace(t){return this.http.put(`${r.BASE}/${t.id}`,t).pipe(n(s=>s?new f(s):null))}createSpace(t){return this.http.post(r.BASE,t).pipe(n(s=>(s.permissions=b,new f(s))))}deleteSpace(t,s){return this.http.request("delete",`${r.BASE}/${t}`,{body:s})}searchSpaces(t){return this.http.request("search",r.BASE,{body:t})}listSpaceShares(t){return this.http.get(`${r.BASE}/${t}/${r.SHARES}`)}getSpaceShare(t,s){return this.http.get(`${r.BASE}/${t}/${r.SHARES}/${s}`).pipe(n(S=>new P(S)))}updateSpaceShare(t,s){return this.http.put(`${r.BASE}/${t}/${r.SHARES}/${s.id}`,s).pipe(n(S=>new P(S)))}deleteSpaceShare(t,s){return this.http.delete(`${r.BASE}/${t}/${r.SHARES}/${s}`)}getSpaceShareLink(t,s){return this.http.get(`${r.BASE}/${t}/${r.LINKS}/${s}`).pipe(n(S=>new g(S)))}listTrashBins(){return this.http.get(C)}checkSpaceRootPath(t){return this.http.post(k,{path:t})}};e.\u0275fac=function(s){return new(s||e)},e.\u0275prov=T({token:e,factory:e.\u0275fac,providedIn:"root"});let i=e;return i})();export{B as a,R as b,y as c,P as d,g as e,f,Oe as g};
@@ -1 +1 @@
1
- import{Ja as U}from"./chunk-XLCCZSQL.js";import{Te as o,Tf as E,Wf as p,_a as n}from"./chunk-ATP3BFHV.js";var t={BASE:"admin",USERS:"users",GUESTS:"guests",GROUPS:"groups",PGROUPS:"personal_groups"},i={ADMIN:"Administration",USERS:"Users",GROUPS:"Groups",GUESTS:"Guests",PGROUPS:"Personal groups"},s={BASE:o,USERS:p,GROUPS:E},c={title:i.ADMIN,link:`${t.BASE}/${t.USERS}`,icon:s.BASE,matchLink:new RegExp(`^${t.BASE}`),level:12,checks:[{prop:"user",value:"isAdmin"}],submenus:[{title:i.USERS,icon:s.USERS,link:`${t.BASE}/${t.USERS}`,matchLink:RegExp(`^${t.BASE}/${t.USERS}$|^${t.BASE}/${t.GUESTS}$`)},{title:i.GROUPS,icon:s.GROUPS,link:`${t.BASE}/${t.GROUPS}`,matchLink:RegExp(`^${t.BASE}/${t.GROUPS}|^${t.BASE}/${t.PGROUPS}`)}]};var $=(()=>{let S=class S{transform(r){return r&&U(r)}};S.\u0275fac=function(a){return new(a||S)},S.\u0275pipe=n({name:"capitalize",type:S,pure:!0});let e=S;return e})();export{t as a,i as b,s as c,c as d,$ as e};
1
+ import{Ia as U}from"./chunk-GUGNR5TF.js";import{Qe as o,Qf as E,Tf as p,cb as n}from"./chunk-C36MW4ME.js";var t={BASE:"admin",USERS:"users",GUESTS:"guests",GROUPS:"groups",PGROUPS:"personal_groups"},i={ADMIN:"Administration",USERS:"Users",GROUPS:"Groups",GUESTS:"Guests",PGROUPS:"Personal groups"},s={BASE:o,USERS:p,GROUPS:E},c={title:i.ADMIN,link:`${t.BASE}/${t.USERS}`,icon:s.BASE,matchLink:new RegExp(`^${t.BASE}`),level:12,checks:[{prop:"user",value:"isAdmin"}],submenus:[{title:i.USERS,icon:s.USERS,link:`${t.BASE}/${t.USERS}`,matchLink:RegExp(`^${t.BASE}/${t.USERS}$|^${t.BASE}/${t.GUESTS}$`)},{title:i.GROUPS,icon:s.GROUPS,link:`${t.BASE}/${t.GROUPS}`,matchLink:RegExp(`^${t.BASE}/${t.GROUPS}|^${t.BASE}/${t.PGROUPS}`)}]};var $=(()=>{let S=class S{transform(r){return r&&U(r)}};S.\u0275fac=function(a){return new(a||S)},S.\u0275pipe=n({name:"capitalize",type:S,pure:!0});let e=S;return e})();export{t as a,i as b,s as c,c as d,$ as e};